91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用tensorflow做線性回歸

發布時間:2021-12-23 15:34:49 來源:億速云 閱讀:191 作者:柒染 欄目:大數據

本篇文章給大家分享的是有關如何用tensorflow做線性回歸,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

01

Tensorflow做線性回歸

前面實現過最小二乘法的線性回歸算法,梯度下降求解過程,詳見文章:

機器學習之線性回歸:算法兌現為python代碼

那么,借助tensorflow如何實現最小二乘法的線性回歸呢?基本的思路,首先生成擬合的數據集,然后構建線性回歸的Graph,最后在Session中迭代train器,得到擬合的參數w和b,畫出擬合曲線。

1.1 生成擬合的數據集,數據集只含有一個特征,注意誤差項需要滿足高斯分布,其分布的代碼如下,首先導入3個庫,

import numpy as np

import tensorflow as tf

import matplotlib.pyplot as plt

#數據點100個

num_points = 100

vectors_set = []

for i in range(num_points):

    x1 = np.random.normal(0.,0.55)

    y1 = x1 * 0.1 + 0.3 + np.random.normal(0.0,0.03)

    vectors_set.append([x1,y1])

 #特征x   

x_data = [v[0] for v in vectors_set]

#標簽值y

y_data = [v[1] for v in vectors_set]


plt.scatter(x_data,y_data,c='b')

plt.show()

產生的數據分布如下所示:

如何用tensorflow做線性回歸

1.2 構建線性回歸的Graph

w = tf.Variable(tf.random_uniform([1],-1.,1.),name='myw')

b = tf.Variable(tf.zeros([1]),name='myb')

#經過計算得出預估值

y = w * x_data + b

#以預估值y和實際值y_data之間的均方差作為損失

loss = tf.reduce_mean(tf.square(y-y_data,name='mysquare'), name='myloss')

#采用梯度下降法來優化參數

optimizer = tf.train.GradientDescentOptimizer(0.5)

train = optimizer.minimize(loss,name='mytrain')

1.3 在Session中運行構建好的Graph

#global_variables_initializer初始化Variable等變量

sess = tf.Session()

init = tf.global_variables_initializer()

sess.run(init)

print("w=", sess.run(w),"b=",sess.run(b),sess.run(loss))

#迭代20次train

for step in range(20):

    sess.run(train)

    print("w=", sess.run(w),"b=",sess.run(b),sess.run(loss))

#寫入磁盤,提供tensorboard在瀏覽器中展示用

writer = tf.summary.FileWriter("./mytmp",sess.graph)

打印下w和b,損失值的變化情況,可以看到損失值從0.24降到0.0008.

如何用tensorflow做線性回歸

1.4繪制擬合曲線

plt.scatter(x_data,y_data,c='b')

plt.plot(x_data,sess.run(w)*x_data+sess.run(b))

plt.show()

如何用tensorflow做線性回歸


02

Tensorboard展示Graph

關于如何在tensorboard中展示構建好的Graph,請參考文章,不再贅述,直接分析tensorflow繪制的graph.

TensorFlow筆記|Get Started

得到的Graph界面如下所示:

如何用tensorflow做線性回歸

Main Graph視圖放大版,數據從底部是如何經過Operators,流動到頂部的,大家可以順一下。

如何用tensorflow做線性回歸


以上就是如何用tensorflow做線性回歸,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

曲沃县| 稷山县| 二连浩特市| 宁晋县| 宝兴县| 巩义市| 林西县| 宣汉县| 霍林郭勒市| 贡山| 岑溪市| 河北省| 若尔盖县| SHOW| 盖州市| 玛多县| 娄烦县| 阿城市| 威信县| 石棉县| 波密县| 习水县| 枣阳市| 清远市| 宜都市| 武义县| 西青区| 佛坪县| 五华县| 交口县| 旬邑县| 濮阳市| 东乡| 阿拉善左旗| 仙居县| 英超| 屏山县| 屏边| 罗江县| 高碑店市| 和平县|