李沐深度学习 4 月 10 日课程笔记
作者:互联网
4 月 10 日课程笔记
讲课大纲
感知机(历史模型)
感知机的模型为:
\[o = \sigma(\langle w,x \rangle + b) \]- \(w\) 权重
- \(x\) 输入
- \(b\) 偏移
- \(\sigma\) 符号函数(对正数输入,输出 1,否则输出 -1)
- \(o\) 输出
训练感知机的算法(用 python 伪代码表示):
w, b = 0, 0
while True:
for x, y in zip(features, labels):
if y * (dot(w, x) + b) <= 0:
w, b = w + y * x, b + y
if all_classified_correctly:
break
等价于使用批量大小为 1 的梯度下降,并使用损失函数:\(l(y, x, w) = \max (0,-y\langle w,x \rangle)\)。
感知机存在收敛定理:在某些条件下能够保证在一定步数之后收敛。
单层感知机不能拟合 XOR 问题(Minsky & Papert, 1969),它只能产生线性分割面。
可能会疑惑为什么不能用二次函数之类的激活函数,以前的查阅找到的大概答案是:因为这超出了原始的单层感知机概念:每个神经元都是线性分类器(其实多层感知机的每个神经元也都是线性分类器)。但是这个答案其实并不能让人满意,这的确是一个问题(留待阅读 Minsky 的 Perceptron 原文再来回答这个问题吧)。
多层感知机
softmax 回归加上一层隐藏层就成为了多层感知机的多类分类。
现在出现了两组超参数:隐藏层数和每层隐藏层的大小。
为什么通常层数是逐层减少的,是认为提取出来的特征(维度)越来越少。
多层感知机的实现
见书上和 jupyter notebook 了。
标签:10,函数,线性,多层,分类器,感知机,笔记,李沐,rangle 来源: https://www.cnblogs.com/autotranslator/p/15894833.html