溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Tensorflow實(shí)現(xiàn)酸奶銷(xiāo)量預(yù)測(cè)分析

發(fā)布時(shí)間:2020-09-29 17:59:07 來(lái)源:腳本之家 閱讀:157 作者:卡卡羅特的爸爸 欄目:開(kāi)發(fā)技術(shù)

本文實(shí)例為大家分享了Tensorflow酸奶銷(xiāo)量預(yù)測(cè)分析的具體代碼,供大家參考,具體內(nèi)容如下

# coding:utf-8
# 酸奶成本為1元,利潤(rùn)為9元
# 預(yù)測(cè)少了相應(yīng)的損失較大,故不要預(yù)測(cè)少
# 導(dǎo)入相應(yīng)的模塊
import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt
 
BATCH_SIZE=8
SEED=23455
COST=3
PROFIT=4
 
rdm=np.random.RandomState(SEED)
X=rdm.randn(100,2)
Y_=[[x1+x2+(rdm.rand()/10.0-0.05)] for (x1,x2) in X]
 
# 定義神經(jīng)網(wǎng)絡(luò)的輸入、參數(shù)和輸出,定義向前傳播過(guò)程
x=tf.placeholder(tf.float32,shape=(None,2))
y_=tf.placeholder(tf.float32,shape=(None,1))
w1=tf.Variable(tf.random_normal([2,1],stddev=1,seed=1))
y=tf.matmul(x,w1)
 
# 定義損失函數(shù)和反向傳播過(guò)程
loss=tf.reduce_sum(tf.where(tf.greater(y,y_),(y-y_)*COST,(y_-y)*PROFIT)) #損失函數(shù)要根據(jù)不同的模型進(jìn)行變換
train_step=tf.train.GradientDescentOptimizer(0.001).minimize(loss)
 
# sess=tf.Session()
# STEPS=20000
# init_op=tf.global_variables_initializer()
# sess.run(init_op)
# for i in range(STEPS):
#  start=(i*BATCH_SIZE)%32
#  end=start+BATCH_SIZE
#  sess.run(train_step,feed_dict={x:X[start:end],y_:Y[start:end]})
#  if i%500==0:
#
#   print("After %d steps,w1 is %f",(i,sess.run(w1)))
 
sess=tf.Session()
init_op=tf.global_variables_initializer()
sess.run(init_op)
STEPS=20000
for i in range(STEPS):
 start=(i*BATCH_SIZE)%100
 end=start+BATCH_SIZE
 sess.run(train_step,feed_dict={x:X[start:end],y_:Y_[start:end]})
 if i%500==0:
  print("After %d steps"%(i))
  # print(sess.run(loss_mse))
  # print("Loss is:%f",sess.run(loss_mse,feed_dict={y_:Y_,y:Y_}))
  print("w1 is:",sess.run(w1))
 print("Final is :",sess.run(w1))
 
xx,yy=np.mgrid[-3:3:.01,-3:3:.01]
grid=np.c_[xx.ravel(),yy.ravel()]
probs=sess.run(y,feed_dict={x:grid})
probs=probs.reshape(xx.shape)
 
plt.scatter(X[:,0],X[:,1],c=np.squeeze(Y_))
plt.contour(xx,yy,probs,[.9])
plt.show()

通過(guò)改變COST和PROFIT的值近而可以得出,當(dāng)COST=1,PROFIT=9時(shí),基于損失函數(shù),模型的w1=1.02,w2=1.03說(shuō)明模型會(huì)往多了預(yù)測(cè);當(dāng)COST=9,PROFIT=1時(shí)模型的w1=0.96,w2=0.97說(shuō)明模型在往少了預(yù)測(cè)。

Tensorflow實(shí)現(xiàn)酸奶銷(xiāo)量預(yù)測(cè)分析

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI