随机决策森林[1986]是决策树的集成。分支节点基于特征向量的特定特征值f[i](即下图中判断图片上/下部分是否为蓝色)根据阈值 τ i \tau_i τi执行二元分类,每个叶子存储最终标签。每棵树独立预测,最终使用多数投票方案用于预测特征向量的最终标签。
训练:
搜索最好的f[i]和 τ i \tau_i τi以获得最大的信息增益。
将数据集Q划分为左分区 Q l Q_l Ql和 Q r Q_r Qr之后的信息熵为:
H ( Q ∣ f [ i ] , τ i ) = ∣ Q l ∣ ∣ Q ∣ H ( Q l ) + ∣ Q r ∣ ∣ Q ∣ H ( Q r ) H(Q|{f[i], \tau_i})={|Q_l|\over|Q|}H(Q_l)+{|Q_r|\over|Q|}H(Q_r) H(Q∣f[i],τi)=∣Q∣∣Ql∣H(Ql)+∣Q∣∣Qr∣H(Qr)
分类:
p ( c ∣ x j ) = 1 T ∑ t = 1 T p t ( c ∣ x j ) p(c|x_j)={1\over{T}}\sum_{t=1}^{T}p_t(c|x_j) p(c∣xj)=T1∑t=1Tpt(c∣xj)
样本 x j x_j xj,类别 c ∈ c\in c∈ c k c_k ck,决策树个数T
定义:正在处理的信息的随机性的度量。也称香农熵,熵越高,信息量越低。
公式:信息熵 H ( X ) = − ∑ i = 1 n P ( x i ) ∗ l o g 2 P ( x i ) H(X)=-\sum_{i=1}^{n}P(x_i)*log_{2}P(x_i) H(X)=−∑i=1nP(xi)∗log2P(xi)
其中随机变量X={x1,x2,x3,…,xn},概率质量函数P(X)。
举例:抛硬币 H ( X ) = − P ( “ 正 面 向 上 ” ) l o g 2 P ( “ 正 面 向 上 ” ) − P ( “ 反 面 向 上 ” ) l o g 2 P ( “ 反 面 向 上 ” ) H(X)=-P(“正面向上”)log_{2}P(“正面向上”)-P(“反面向上”)log_{2}P(“反面向上”) H(X)=−P(“正面向上”)log2P(“正面向上”)−P(“反面向上”)log2P(“反面向上”)
若正反面概率均为1/2时,二元信息熵最大,随机性最强;反之,若概率为0或1,信息熵最小为0,即完全确定。
公式: G ( Q ∣ t ) = H ( Q ) − H ( Q ∣ t ) G(Q|t)=H(Q)-H(Q|t) G(Q∣t)=H(Q)−H(Q∣t)
1. 前向网络:例如MLP和CMAC(小脑神经网络),下图(a)。
2. 反馈网络:即每一个输入节点都有可能接受来自外部输入和其他神经元输出的反馈。例如RNN,下图(b)。
3. 相互结合网络:在任意两个神经元之间都有可能存在连接,也属于一种有反馈的网络,信息在神经元之间反复往返传递。例如HNN(Hopfield)和bolzman机,下图(c)。
4. 混合网络:层次性结构(前向网络)和网状结构(反馈网络)的结合。下图(d).
5. 自组织网络:例如Kohonen和ART。
(图片来源:《智能控制技术(第2版)》 韦巍 著)
1. 相关学习:仅根据连接间的激活水平改变权重系数。Hebbian学习、相关学习法。
2. 纠错学习:感知机学习、delta、Widrow-Holf学习规则(当输出单元为线性单元等时的Delta特例).
3. 无监督学习
当网络很深,学习过程可能会遭受梯度消失或梯度爆炸。
例如,sigmoid函数取值范围为[0,1],为了更新初始层根据链式规则连续乘以导数,然后以指数方式衰减反向传播。例深度为5,sigmoid最大可能梯度0.25,衰减因子为 ( 0.25 ) 5 = 0.0009 (0.25)^5=0.0009 (0.25)5=0.0009,产生梯度消失问题。
ReLU函数,梯度为1, 1 L = 1 1^L=1 1L=1避免了梯度消失和爆炸的问题。
RNN是一种***反馈网络***,包含循环,允许处理时序数据。图(b)信息流随时间发生,不同层代表不同时刻的计算输出。
可变长度输入:例如不同单词数量的句子,RNN结构长度取决于输入序列的长度,12个单词组成的句子展开的RNN结构也有12层。
隐藏状态:RNN在内部保存先前计算的存储,每一个时间步,考虑其先前值和当前输入值: h t = f ( A x t + B h t − 1 ) h_t=f(Ax_t+Bh_{t-1}) ht=f(Axt+Bht−1).
可变长度输出:输出序列长度可以与输入序列长度不同。例如:输入起始单词,RNN预测句子中的下一个可能单词,所有可能的单词都可能包含在输出中。 y t = f ( C h t ) y_t=f(Ch_t) yt=f(Cht).
共享参数:图(b)中A、B、C在所有层共享。
缺点:基于时间的反向传播(BPTT)算法不允许学习序列中的长时关系,因为在长序列的误差计算上存在困难。当迭代次数增加,BPTT受到梯度消失和爆炸的困扰。无法记住序列中的长时关系。改进:长短时记忆网络(LSTM)、门控递归单元(GRU)、双向RNN(B-RNN)和神经图灵机(NTM)。
问题:RNN只能包含一个隐形层吗?只有一个隐形层的RNN算不算深度学习?
A:(引用一个知乎大佬的回答)RNN的深度体现在时间层面上。
均值减法: x ′ = x − x ^ , 其 中 x ^ = 1 N ∑ i = 1 N x i x'=x-\hat{x},其中\hat{x}={1\over{N}}\sum_{i=1}^{N}x_i x′=x−x^,其中x^=N1∑i=1Nxi
归一化: x ′ ′ = x ′ ∑ i = 1 N ( x i − x ^ ) 2 N − 1 x''={x'\over{\sqrt{\sum_{i=1}^{N}(x_i-\hat{x})^2\over{N-1}}}} x′′=N−1∑i=1N(xi−x^)2x′
PCA白化:减少不同数据维度之间的相关性。同时会放大噪声。
局部对比归一化(LCN)
滤波器(卷积核):离散数字的网格ff,下图4.3中为22的滤波器。学习过程中,在每次迭代中调整滤波器的权重。一般选用小尺寸卷积核33,55,7*7,原因:1. 可学习参数数量减少;2. 确保从局部区域学习提取不同的模式。
卷积层在滤波器和该层的输入之间进行卷积(二维矩阵点乘运算)。滤波器沿输入特征图的高度和宽度滑动,下图4.3步辐为1,图4.5步辐为2。
图4.5输入特征图周围应用零填充:
有效卷积:不涉及零填充,滤波器始终保持在输入特征图的有效位置。
同尺寸卷积:确保输入和输出有相同尺寸的特征图。步幅为1时填充为 p = [ f 2 ] p=[{f\over2}] p=[2f],所以也称半卷积。
全尺寸卷积:对输入特征图应用最大可能填充,即填充f-1个零,使得在极端角落处,卷积中也包括一个有效值。
感受野:(下图4.7中橙色部分)卷积神经网络每一层输出特征图(feature map)上的像素点在输入图片上映射的区域大小。网络深度越深感受野越大性能越好,确保决策时没有忽略重要信息。
计算: R F e f f n = R F e f f n − 1 + ( ( f n − 1 ) ∗ ∏ i = 1 n − 1 s i ) RF_{eff}^{n}=RF_{eff}^{n-1}+((f_n-1)*\prod_{i=1}^{n-1}s_i) RFeffn=RFeffn−1+((fn−1)∗∏i=1n−1si),其中 s i s_i si表示前一层步幅。
扩展感受野:扩张卷积(空洞卷积),引入空洞参数d,在原滤波器每个元素之间扩展d-1个空格,中间用零扩充(见图4.7中第二层和第三层),将尺寸为 f ∗ f f*f f∗f的滤波器放大到 f + ( d − 1 ) ∗ ( f − 1 ) f+(d-1)*(f-1) f+(d−1)∗(f−1)
p.s卷积和互相关的区别
ML中,卷积和互相关等效,上述例图中均为二维互相关操作。
需指定池化区域大小和步幅大小。下图4.8为最大池化操作。(莫烦python)卷积尽量不压缩长宽,保留更多的信息,压缩的工作交给池化,以提高准确性。
y = f ( W T x + b ) y=f(W^Tx+b) y=f(WTx+b)
从空间低分辨率特征图到高分辨率的更大输出的特征图。
两种方法:1. 将核(滤波器)扩展成托普利兹矩阵K, y = K T x y=K^Tx y=KTx。2. 零填充(图4.10)。