日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Pytorch(一) --线性模型

發(fā)布時(shí)間:2023/12/15 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Pytorch(一) --线性模型 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

最終還是要學(xué)Pytorch,Tensorflow也很好,不過對于做研究來講,還是有些許的不足,這算是Pytorch的一個(gè)入門吧。
針對y=w*x這樣一個(gè)線性模型,利用窮舉法去線性的模擬這個(gè)直線。雖然這一章并沒有真的用到Pytorch的具體內(nèi)容,不過這算是深度學(xué)習(xí)的一個(gè)入門。
代碼如下:

import numpy as np import matplotlib.pyplot as plt #y = 2*x x_data = [1.0,2.0,3.0] y_data = [2.0,4.0,6.0]def forward(x):#根據(jù)窮舉出來的w,計(jì)算在該w的情況下得到的y'return x*w def loss(x,y):#根據(jù)得到的y',計(jì)算loss值y_pred = forward(x)return (y-y_pred)**2 #窮舉法 w_list = [] mse_list = [] for w in np.arange(0.0,4.1,0.1):#以0.1為間隔,窮舉wprint("w=",w)l_sum=0for x_val,y_val in zip(x_data,y_data):y_pred_val = forward(x_val)loss_val = loss(x_val,y_val)l_sum+=loss_valprint('\t',x_val,y_val,y_pred_val,loss_val)print('MSE=',l_sum/3)w_list.append(w)mse_list.append(l_sum/3) plt.plot(w_list,mse_list) plt.ylabel('Loss') plt.xlabel('w') plt.show()

最終得到的結(jié)果如下:

在w=2的時(shí)候,Loss值達(dá)到最小。
課后作業(yè):
針對y=w*x+b,同樣利用上述方法,得到一個(gè)近似的線性模型。
代碼如下(參考鏈接):

import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D#假設(shè)函數(shù)為y=2x+3 x_data = [1.0,2.0,3.0] y_data = [5.0,7.0,9.0]def forward(x):return x*w+b def loss(x,y):y_pred = forward(x)return (y_pred-y)**2mse_list = [] W = np.arange(0.0,4.1,0.1) B = np.arange(0.0,4.1,0.1) [w,b] = np.meshgrid(W,B)l_sum = 0 for x_val,y_val in zip(x_data,y_data):loss_val = loss(x_val,y_val)l_sum+=loss_valfig = plt.figure() ax = Axes3D(fig) ax.plot_surface(w,b,l_sum/3) plt.show()

對代碼有疑問的,可以查看一下np.meshgrid這個(gè)函數(shù)的用法。它的返回值是兩個(gè)矩陣,在本樣例中就是兩個(gè)41*41的矩陣。在后面的運(yùn)算中也都是矩陣在運(yùn)算.
最終結(jié)果如下所示:

努力加油a啊

總結(jié)

以上是生活随笔為你收集整理的Pytorch(一) --线性模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。