第一次打卡

Task01:
线性回归
模型:线性回归的假设:输出与各个输入之间是线性关系,求出最终的权重与偏置

损失函数:在训练过程中衡量价格预测值与真实值间的误差,单个样本时,使用平方误差;取小批量样本时,使用平方误差求平均。

优化:使用随机梯度下降,小批量随机梯度下降指先选取一组模型参数的初始值,如随机选取;接下来对参数进行多次迭代,使每次迭代都可能降低损失函数的值。

矢量计算:使用torch做矢量加法比使用标量加法更快。

使用Pytorch进行计算的一般流程:一般流程:初始化torch->读取数据集->定义模型->初始化模型参数->定义损失函数->定义优化函数->训练->得到结果

课后练习:(错题分析)
1、全连接层的输入形状是7×8,输出形状是7×1,当权重w为8×1时,根据矩阵的乘法,输入X*w形状为7×1,每一个输出的偏置时相同的,故偏置的形状为1×1
2、

def squared_loss(y_hat, y):
return (y_hat - y.view(y_hat.size())) ** 2 / 2
1
2
y_hat为预测的标签,y为真实的标签,y_hat的形状是[n, 1],而y的形状是[n]。
view()函数作用是改变tensor的形状,重构张量的维度,view中的-1是自适应的调整。-1这个位置由其他位置的数字来推断。
view(x,y)表示重构为x×y维的Tensor
torch.view(-1)则原张量会变成一维的结构
如果是torch.view(参数a,-1),则表示在参数b未知,参数a已知的情况下自动补齐列向量长度,参数a乘参数b等于tensor中的总元素数

tensor([[0, 1, 2],[1, 2, 3],[2, 3, 4]])
进行.view(-1)后
tensor([0, 1, 2, 1, 2, 3, 2, 3, 4])

进行.view(-1,1)
可将tensor从
tensor([0, 1, 2])#3
变为
tensor([[0],
[1],
[2]])#3×1
1
2
3
4
5
6
7
8
9
10
11
另外torch.shape可查看当前的tensor的形状

Softmax与分类模型
线性回归用于连续值预测
Softmax用于离散值预测

Softmax中输出值最大的即可判别为该类

使用交叉熵损失函数(离散值适用交叉熵损失函数)以更适合衡量两个概率分布差异的测量函数

Pytorch中使用torchvision.datasets来读取图像数据集

课后练习:(错题分析)
1、softmax([100, 101, 102])的结果等于softmax([-2 -1, 0])
2、在刚开始训练时,训练数据集上的准确率低于测试数据集上的准确率,原因是训练集上的准确率是在一个epoch的过程中计算得到的,测试集上的准确率是在一个epoch结束后计算得到的,后者的模型参数更优

多层感知机
多层感知机(multilayer perceptron,MLP):神经网络的基础架构
神经网络的激活函数:使得神经网络能够进行非线性变换,激活函数一定是非线性的,通常有ReLU函数、Sigmoid函数、tanh函数
激活函数的选择:
ReLu函数是一个通用的激活函数,目前在大多数情况下使用。但是,ReLU函数只能在隐藏层中使用。

用于分类器时,sigmoid函数及其组合通常效果更好。由于梯度消失问题,有时要避免使用sigmoid和tanh函数。

在神经网络层数较多的时候,最好使用ReLu函数,ReLu函数比较简单计算量少,而sigmoid和tanh函数计算量大很多。

在选择激活函数的时候可以先选用ReLu函数如果效果不理想可以尝试其他激活函数。

课后练习:(错题分析)
对于只含有一个隐藏层的多层感知机,输入是256×256的图片,隐藏单元个数是1000,输出类别个数是10,则模型的所有权重矩阵W的元素数量之和是
num_input=256*256
num_hidden=1000
num_output=10
隐藏层权重=num_input×num_hidden
输出层权重=num_hidden×num_output
故结果为65546000

Task02:
文本预处理
文本数据的常见预处理步骤:
通常包括四个步骤

读入文本
分词
建立字典,将每个词映射到一个唯一的索引(index)
将文本从词的序列转换为索引的序列
或者用spaCy和NLTK现成的分词工具对文本进行分词
课后练习:(错题分析)
建立词典时无需进行句子长度的统计

语言模型
n-gram模型:评估该序列是否合理
n-gram的缺陷:

参数空间过大
数据稀疏
时序数据的采样
随机采样:每次从数据里随机采样一个小批量,在随机采样中,每个样本是原始序列上任意截取的一段序列,相邻的两个随机小批量在原始序列上的位置不一定相毗邻。
相邻采样:在相邻采样中,相邻的两个随机小批量在原始序列上的位置相毗邻。

课后练习:(错题分析)
马尔科夫假设是指一个词的出现只与前面n个词相关
随机采样中前后批量中的数据是不连续的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值