7处理多维输入
输入有多个特征
每一行被叫做一个样本
00:01:22.739

meiyili
每一列被称为特征
excel常用空格 tab ,进行分割
一组一组的运算转换成矩阵运算(向量化的运算)
为什么要变换:
因为可以并行计算,这个样利用cpu或者gpu的并行计算能力
00:15:14.284


上图是上节课的
可以用于与这节课的图片进行对比
把多层logist回归相连就可以构建多层神将网路
00:17:28.402
这里列的数量对应特征00:17:50.766

这样可以再接一层,让2维的再降到1维
我们的目标是8d->1d的非线性变换函数
00:23:26.486

可以维度一直下降
也可以维度一直上升
中间的隐层越多,学习能力越强
如果学习能力太强就会导致把数据中的噪声也学到了。导致模型泛化性太差
数据读取
最好使用float32,因为n卡gpu只支持32位的浮点数
[:,:,-1]
所有行 从第一列开始,最后一列不要
[:,[-1]]
这里的[-1]表示生成的是一个矩阵

这里的激活函数不同
和上节课的进行对比,这里的两个sigmoid不一样,上节课是 function.sigmoid
这节课是 nn.Sigmoid 这是个模块
都是继承自modle
(这里其实不是很懂
这样的一串,最好就使用一个变量,减少麻烦
00:39:25.724

再计算损失和优化器的地方没有多少区别
00:39:40.720

循环训练
这里其实没有没有使用mini-batch(也就是让一部分使用 随机梯度下降算法来更新w)
00:40:18.536

比较不同的激活函数
下面这两个就是使用了不同的激活函数
sigmoid是激活函数,而下面的两个不一样

00:42:14.062

可以比较收敛的速度
修改激活函数只需要修改这里的一句话
这里有个风险,如果self.linear3(x)生成的是小于0的数
就会导致x为0,可以看下面手绘的图来解释。因为后面有可能会使用ln之类的函数,所以存在风险
00:43:23.613













