Lesson-10
感知机
- 完成二分类问题
- 无法拟合 XOR 问题
多层感知机
学习 XOR: 实现了分类:
单隐藏层结构如下,其中数据的特征维度和数据的类别数是固定的,但是隐藏层的大小是可以设置的超参数:
具体流程如下:
- 输入\(X \in R^n\)
- 隐藏层\(W_1 \in R^{m \times n}\),\(b_1 \in R^m\),其中\(m\)就是隐藏层的大小
- 输出层\(w_2 \in R^m\),\(b_2 \in R\)
- 计算公式如下:\(h = \sigma(W_1X+b_1)\),\(h \in R^m\);输出\(o = h^Tw_2+b\),\(o \in R\)
- \(\sigma\)是按元素的激活函数,为什么需要非线性的激活函数?如果没加,还是线性模型
- 常用的激活函数有: (1)sigmoid:\(sigmoid(x) = \frac{1}{1+\exp(-x)}\) (2)tanh:\(tanh(x) = \frac{1-\exp(-2x)}{1+\exp(-2x)}\) (3)ReLU:\(ReLU(x) = \max(0,x)\)
隐藏层的数目也是超参数,可以做多隐藏层,每个隐藏层的大小也是超参数:
\[h_1 = \sigma(W_1X+b_1),h_2 = \sigma(W_2h_1+b_2),...,o = W_nh_{n_1}+b_n\]
面对复杂的分类问题: 我们可以选择很大的单隐藏层,也可以做很深的多隐藏层。多隐藏层的大小一般是递减的。
对于上面神经网络的图: 我的理解是:每一个箭头实际上代表的是一对(权重,偏移),而hidden layer中的每一个神经元代表的是一次激活函数的应用。
本页面最近更新:,更新历史
发现错误?想一起完善? 在 GitHub 上编辑此页!
本页面贡献者:OI-wiki
本页面的全部内容在 协议之条款下提供,附加条款亦可能应用