PyTorch深度学习实践06
生活随笔
收集整理的這篇文章主要介紹了
PyTorch深度学习实践06
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Logistic Regression
邏輯回歸但是做分類
import os import os os.environ["KMP_DUPLICATE_LIB_OK"]="TRUE" import torch import matplotlib.pyplot as plt import torch.nn.functional as F import numpy as npx_data=torch.Tensor([[1.0],[2.0],[3.0]]) y_data=torch.Tensor([[0],[0],[1]])#二分類問題class LogisticRegressionModel(torch.nn.Module):def __init__(self):super(LogisticRegressionModel, self).__init__()self.linear=torch.nn.Linear(1,1)#初始話w和b 實現xw+bdef forward(self,x):y_pred=F.sigmoid(self.linear(x))return y_predmodel =LogisticRegressionModel()criterion=torch.nn.BCELoss(size_average=False) optimizer=torch.optim.SGD(model.parameters(),lr=0.01)for epoch in range(1000):y_pre=model(x_data)#計算y_preloss=criterion(y_pre,y_data)#計算lossprint(epoch,loss.item())optimizer.zero_grad()#在backward之前先清零loss.backward()#求loss對w的導數optimizer.step()#更新wx=np.linspace(0,10,200)#x軸 在0-10小時 取200個點 x_t=torch.Tensor(x).view((200,1))#變成200行 1列的矩陣 view相當于numpy中的reshape y_t=model(x_t)#得到預測值 y_temp y=y_t.data.numpy() plt.plot(x,y) plt.plot([0,10],[0.5,0.5],c='r') plt.xlabel=('Hours') plt.ylabel=('Probability of pass') plt.grid() plt.show()總結
以上是生活随笔為你收集整理的PyTorch深度学习实践06的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PyTorch深度学习实践05
- 下一篇: PyTorch深度学习实践07