读书笔记 | 《深度学习入门:基于Python的理论与实现》| (1)
复习感知机
激活函数 h(x):将 输入信号的总和 转换为 输出信号
先计算输入信号的加权总和,然后用激活函数转换这一总和
激活函数
神经网络中最常用 激活函数
三层神经网络的实现
矩阵表示
Q&A
补充
参考
感谢帮助!
《深度学习入门:基于Python的理论与实现》[日]斋藤康毅 著、 陆宇杰 译


简化,引入激活h(x)






阶跃函数
以阈值为界,一旦输入超过阈值,就切换输出。这样的函数称为“阶跃函数” 感知机 使用 阶跃函数 作为 激活函数

sigmoid函数


sigmoid函数 和 阶跃函数 的比较
平滑性
-
sigmoid 平滑曲线
阶跃函数 以 0 为 界 发生 急剧性变化
sigmoid函数的平滑性对神经网络的学习具有重要意义

返回值
-
阶跃函数 仅返 0或1
sigmoid函数 可返 0.731 ...、0.880 ...等实数
感知机 中神经元 之间流动的是 0或1的 二元信号,而 神经网络 中流动的是 连续的 实数值信号
共同点
-
越重要,输出越大; 越不重要,输出越小
不管输入信号有 多大,多小,输出信号始终在 0 - 1 间
非线性函数
阶跃函数 、sigmoid 函数 均属于 非线性函数 神经网络 的 激活函数 必须使用 非线性函数 Q: 为什么不能使用线性函数呢? A:-
因为使用线性函数的话,加深神经网络的层数就没有意义了
线性函数的问题在于,不管如何加深层数,总是存在与之等效的“无隐藏层的神经网络”。
举例:
把线性函数 h(x) = cx 作为激活函数,把y(x) = h(h(h(x)))的运算对应3层神经网络
y(x) = c × c × c × x
但是同样的处理可以由
y(x) = ax(注意,a = c^3)
这一次乘法运算(即没有隐藏层的神经网络)来表示
ReLU函数
ReLU(Rectified Linear Unit)函数



符号的确认

各层间信号传递的实现
从输入层到第1层的第1个神经元的信号传递过程



