2020/01/23
《百面
机器学习-算法工程师带你去面试》读书笔记
《No.22: p198~p208》第九章 前向
神经网络
Q72 多层感知机表示异或逻辑是最少需要几个隐含层?(仅考虑二元输入)
1. 零个隐藏层无法精确学习出一个输出为异或的模型表示。
2. 至少需要一个隐藏层。一个隐藏层,若给予足够数量的隐藏单元,可以任意精度近似任何从一个有限维度空间到另一个有限维空间的波莱尔可测函数。
Q73 如果只使用一个隐藏层,需要多少隐藏点能够实现包含n元输入的任意布尔函数?
n元布尔函数的吸取范式最多包含2^(n-1)个不可规约的合取范式,对于单隐层的感知机,需要2^(n-1)隐藏点实现。
Q74 考虑多隐层的情况,实现包含n元输入的任意布尔函数最少需要多少个网络节点和网络层?
根据二分思想,每层节点俩俩分组进行异或运算,需要的最少网络层数为2log2N(向上取整)
Q74 写出常用激活函数及其导数
需了解三个激活函数及其导数,包括Sigmoid、Tanh、ReLU
Q75 为何Sigmoid和Tanh激活函数会导致梯度消失的现象?
1. 当激活函数的导数会趋近于0时,就会造成梯度消失。
2. 此两个激活函数的导数,在f(z),z值很大或很小时,都会让导数趋近于0。
3. Tanh的激活函数相当于Sigmoid的平移。