![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
深度学习入门
ShuaS2020
不要绝望总会慢慢变强
展开
-
用np.loadtxt()函数读取Excel文件
首先将Excel文件转化为csv格式import numpy as np#1.从文件中读取数据集xy=np.loadtxt('C:\\Users\\82019\\Desktop\\稿件\\Excel.csv',delimiter=',',dtype=np.float32) #文件读取 文件名 间隔符 逗号隔开 类型32位浮点型x_data=xy[:,:-1] #所有行 列数到倒数第2列y_data=xy[:,[-1]]print(xy)...原创 2021-05-01 21:26:05 · 4598 阅读 · 0 评论 -
torch.max(input, dim)使用解释
在深度学习的多分类神经网络统计预测正确的个数1.函数结构torch.max(input, dim)input是一个softmax函数输出的tensor(当然,如果用CrossEntropyLoss(),最后一层是一个全连接层)dim是max函数索引的维度 0或1 0是每列的最大值,1是每行的最大值2.函数输出torch.max(input, dim=1)此函数输出两个tensor1.第一个tensor是每行的最大概率2.第二个tensor是每行最大概率的索引由于我们不需要获取最大概率的值原创 2021-04-08 10:32:47 · 2348 阅读 · 0 评论 -
pytorch中模型参数的保存与读取
对训练好的模型,有两种保存方法:1.直接将训练好的神经网络进行保存,但是速度会比较慢2.将训练好的神经网络参数,保存到文件当中,然后进行文件的读取,再将读出的参数赋给新建好的模型,要求新建好的模型与之前的模型相同这里用第二种方法:import torchimport torch.nn as nnfrom torchvision import transformsfrom torchvision import datasetsfrom torch.utils.data import DataL原创 2021-04-07 20:55:19 · 1437 阅读 · 0 评论 -
多分类:CrossEntroploss()损失函数的简单实操:Mini-Batch:batch_size=3
import torchcriterion=torch.nn.CrossEntropyLoss()Y=torch.LongTensor([2,0,1]) #交叉熵损失函数要求标签y的值为LongTensorY_pred1=torch.Tensor([[0.1,0.2,0.9], [1.1,0.1,0.2], [0.2,2.1,0.1]])Y_pred2=torch.Tensor([[0.1,0.2,0.9],原创 2021-03-01 10:49:07 · 553 阅读 · 0 评论 -
捋一捋二分类和多分类中的交叉熵损失函数
二分类:用sigmoid函数【1/1+e(x)】作为激活函数,将线性变换的输出值映射到0 1之间。通过矩阵变换,将最后的输出值定为1维0 1之间的数值,再用BCEloss函数(二分类交叉熵损失函数)构建计算图多分类:隐藏层用激活sigmoid函数处理线性变换后的值,最后一层用softmax函数【e(x)/∑e(x)】算出输出层 每个维度的输出值 所占的比例(softmax函数保证了处理后的结果是大于零,且和为1),再用NLLLoss作为损失函数作为损失值,由于pytorch的封装性,CrossEntr原创 2021-03-01 01:12:19 · 1424 阅读 · 3 评论 -
简单的线性回归(一维输入,一维输出)
import torchimport torch.nn.functional as Fimport matplotlib.pylab as pltimport torch.nn as nn#1.构建数据集 y=x+1x=torch.tensor([[1.0], [2.0], [3.0]])y=torch.tensor([[2.0], [3.0], [4.0]])p原创 2021-03-01 00:09:12 · 361 阅读 · 0 评论 -
简单的多层感知机(二维输入,一维输出,一层隐藏层)
import torchimport torch.nn.functional as Fimport numpy as npimport matplotlib.pylab as plt#1.构建数据集x=torch.tensor([[1.0,1.0],#注意是二维的 [2.0,2.0], [3.0,3.0]])y=torch.tensor([[3.0], [5.0], [7.0]原创 2021-03-01 00:07:43 · 1039 阅读 · 5 评论 -
神经网络搭建的两种常用方法
import torchimport matplotlib.pyplot as pltimport torch.nn.functional as F # 激励函数都在这# 假数据n_data = torch.ones(100, 2) # 数据的基本形态x0 = torch.normal(2 * n_data, 1) # 类型0 x data (tensor), shape=(100, 2)y0 = torch.zeros(100) # 类型0 y data (tensor), shap原创 2021-03-01 00:05:36 · 310 阅读 · 0 评论 -
多层感知机(包含隐藏层的神经网络)
import torchimport numpy as npfrom matplotlib import pylab as pltimport torch.nn.functional as F#构造数据x =torch.unsqueeze(torch.linspace(-1,1,100),dim=1)y = pow(x,2)+0.2*torch.rand(x.size())#plt.scatter(x,y)#plt.show()#搭建神经网络class Net(torch.nn.Mod原创 2021-03-01 00:02:14 · 712 阅读 · 4 评论 -
LogisticRegressionModel二分类概率问题
import torchimport torch.nn.functional as Fimport matplotlib.pylab as pltimport torch.nn as nnimport numpy as np#1.构建数据集 y=x+1x=torch.tensor([[1.0], [2.0], [3.0]])y=torch.tensor([[0.0], [0.0],原创 2021-02-28 23:58:37 · 347 阅读 · 0 评论 -
二分类:糖尿病患病概率(多维输入X(N),一维输出P(y=1))
import torchimport torch.nn.functional as Fimport matplotlib.pylab as pltimport numpy as npimport torch.nn as nn#1.从文件中读取数据集xy=np.loadtxt('D:\迅雷下载\diabetes.csv.gz',delimiter=',',dtype=np.float32) #文件读取 文件名 间隔符 逗号隔开 类型32位浮点型x_data=torch.from_numpy(x原创 2021-02-28 23:52:51 · 308 阅读 · 0 评论 -
Dataset和DataLoader的使用
Dataset和DataLoader的使用:import torchfrom torch.utils.data import Datasetfrom torch.utils.data import DataLoaderimport torch.nn.functional as Fimport matplotlib.pylab as pltimport numpy as npimport torch.nn as nn#1.构建数据集class Dateset(Dataset):#因为dat原创 2021-02-28 23:47:38 · 463 阅读 · 1 评论 -
用TorchVision构建数据集
用TorchVision构建数据集mnistimport torchfrom torch.utils.data import DataLoaderfrom torchvision import transformsfrom torchvision import datasetstrain_dataset=datasets.MNIST(root='../dataset/mnist', train=True,原创 2021-02-28 23:39:37 · 304 阅读 · 0 评论