mnist数据集
00:01:43.327
image.png

手写数据的数据集

10个分类
00:02:24.593
image.png

判断y属于集合中的哪一个,这个叫做分类问题
00:06:02.081
image.png

表示他属于某一个类的概率,选择最大的

00:06:54.719
image.png

torchvison包含了一些典型的训练集
train=1-> train
train=0 ->test

00:09:23.751
image.png

00:10:34.118
image.png

y的值维0 或1
这个叫做二分类问题

00:13:38.275
image.png

00:14:36.865
image.png

00:16:18.710
image.png

00:16:31.844
image.png

00:17:54.518
image.png

左图被称为饱和函数
00:18:19.386
image.png

00:19:19.394
image.png

y^ 带入 σ(x) 就可以将 y^ 的范围限制在(0,1)

00:20:49.142
image.png
sigmid函数的条件:

  1. 函数值有极限
  2. 单调增函数
  3. 饱和函数
    logistic是sigmid中最典型的函数,所以约定俗成就用logistic代替sigmid,但实际上sigmid还有很多别的函数

00:22:28.274
image.png

经过 σ(x) 就保证输出值在(0,1)

00:25:08.171

00:25:38.325
image.png

我们输出的是一个分布,由于我们修改了模型
所以这里的损失计算公式也会发生变化
00:26:29.010
image.png

y^ 表示的就是class=1的概率
1y^ 就是class=0的概率
00:30:05.059
image.png

00:30:27.918
image.png

使用下面的公式表示两个分布之间差异性的大小
我们希望这个值越大约好,下面的公式加上了负号

00:31:46.124
image.png

loss越小越好,也就是log y^ 越小越好
00:32:26.518
image.png

00:32:52.795
image.png

00:33:41.907
image.png

00:34:01.805
image.png

00:34:47.811
image.png

00:35:04.162
image.png

mini-batch就是对上面的几个loss求均值

00:35:34.453
image.png

没有多大的区别
functional 中包含了 σ
其实也就是多个F.sigmoid的函数嵌套

00:36:35.566
image.png

00:36:50.600
image.png
损失计算这块的区别是
原来是使用mse
现在是使用bce(二分类的交叉熵)
size_average表示是否求均值 1N 这个可能会影响学习率的选择

00:38:37.348
image.png

00:39:21.759
image.png

这里回忆一下,model(x_data)这里是调用了call,实现了forward(前馈函数)

00:42:55.873
image.png

绘图
(0,10)个小时取200个点
变成200行1列的矩阵
调用numpy获取数据
然后画图

这个图非常想logist函数