三大经济圈宽度学习(BroadLearningSystem)
宽度学习(Broad Learning System)
2018-09-27 19:58:01 阅读数 10498 收藏⽂章标签:更多
分类专栏:
版权声明:本⽂为博主原创⽂章,遵循版权协议,转载请附上原⽂出处链接和本声明。
本⽂链接:
⼀、宽度学习的前世今⽣
宽度学习系统(BLS)⼀词的提出源于澳门⼤学科技学院院长和其学⽣于2018年1⽉发表在IEEE TRANSACTIONS ON NEURAL NETWORKS AND LEARNING SYSTEMS,VOL. 29, NO. 1的⼀篇⽂章,题⽬叫。⽂章的主旨⼗分明显,就是提出了⼀种可以和深度学习媲美的宽度学习框架。
如也是什么意思
为什么要提出宽度学习?众所周知,深度学习中最让⼈头疼之处在于其数量庞⼤的待优化参数,通常需要耗费⼤量的时间和机器资源来进⾏优化。
识拼音
宽度学习的前⾝实际上是已经被⼈们研究了很久的随机向量函数连接⽹络random vector functional-link neural network (RVFLNN),如图所⽰:会议速记
咋⼀看这⽹络结构没有什么奇特之处,其实也对,就是在单层前馈⽹络(SLFN)中增加了从输⼊层到输出层的直接连接。⽹络的第⼀层也叫输⼊层,第⼆层改名了,叫做增强层,第三层是输出层。具体来看,⽹络中有三种连接,分别是
(输⼊层 => 增强层)加权后有⾮线性变换
mc词(增强层 => 输出层)只有线性变换
(输⼊层 => 输出层)只有线性变换
所以在RVFLNN中只有增强层是真正意义上的神经⽹络单元,因为只有它带了激活函数,⽹络的其他部分均是线性的。下⾯我们将这个⽹络结构扭⼀扭:
当我们把增强层和输⼊层排成⼀⾏时,将它们视为⼀体,那⽹络就成了由 A(输⼊层+增强层)到 Y 的线性变换了!线性变换对应的权重矩阵 W 就是输⼊层加增强层到输出层之间的线性连接!!
这时你可能要问:那输⼊层到增强层之间的连接怎么处理/优化?我们的回答是:不管它我们给这些连接随机初始化,固定不变!
如果我们固定输⼊层到增强层之间的权重,那么对整个⽹络的训练就是求出 A 到 Y 之间的变换 W,⽽ W 的确定⾮常简单:W=A−1YW =
A^{-1}YW=A−1Y
输⼊ X 已知,就可以求出增强层 A;训练数据的标签已知,就知道了 Y。接下来的学习就是⼀步到位的事情了。
为什么可以这样做?
深度学习费了⽼劲把⽹络层数⼀加再加,就是为了增加模型的复杂度,能更好地逼近我们希望学习到的⾮线性函数,但是不是⾮线性层数越多越好呢?理论早就证明单层前馈⽹络(SLFN)已经可以作为函数近似器了,可见增加层数并不是必要的。RVFLNN也被证明可以⽤来逼近紧集上的任何连续函数,其⾮线性近似能⼒就体现在增强层的⾮线性激活函数上,只要增强层单元数量⾜够多,要多⾮线性有多⾮线性!
⼆、宽度学习系统(BLS)
之前介绍的是RVFLNN,现在来看BLS,它对输⼊层做了⼀点改进,就是不直接⽤原始数据作为输⼊层,⽽是先对数据做了⼀些变换,相当于特征提取,将变化后的特征作为原RVFLNN的输⼊层,这样
做的意义不是很⼤,只不过想告诉你:宽度学习可以利⽤别的模型提取到的特征来训练,即可以可别的机器学习算法组装。现在我们不把第⼀层叫做输⼊层,⽽是叫它特征层。
如何增强记忆力当给定了特征 Z,直接计算增强层 H,将特征层和增强层合并成 A=[Z|H],竖线表⽰合并成⼀⾏。由于训练数据的标签 Y 已知,计算权
重 W=A−1YW = A^{-1}YW=A−1Y 即可。实际计算时,使⽤岭回归来求解权值矩阵,即通过下⾯的优化问题来解W(其
中σ1=σ2=v=u=2\sigma_1=\sigma_2=v=u=2σ1=σ2=v=u=2):
解得
以上过程是⼀步到位,即当数据固定,模型结构固定,可以直接找到最优的参数 W。
然⽽在⼤数据时代,数据固定是不可能的,数据会源源不断地来。模型固定也是不现实的,因为时不时需要调整数据的维数,⽐如增加新的特征。这样⼀来,就有了针对以上⽹络的增量学习算法。注意,宽度学习的核⼼在其增量学习算法,因为当数据量上亿时,相当于矩
阵 Z 或 X 有上亿⾏,每次更新权重都对⼀个上⼀⾏的矩阵求伪逆是不现实的!
增量学习的核⼼就是,利⽤上⼀次的计算结果,和新加⼊的数据,只需少量计算就能得进⽽得到更新的权重。
泡椒鱼头例如:当我们发现初始设计的模型拟合能⼒不够,需要增加增强节点数量来减⼩损失函数。这时,我们给矩阵 A 增加⼀列 a,表⽰新增的增
强节点,得到[A|a],这时要计算新的权值矩阵,就需要求 [A∣a]−1[A|a]^{-1}[A∣a]−1,于是问题就转化成分块矩阵的⼴义逆问题,得到
了[A∣a]−1[A|a]^{-1}[A∣a]−1,则更新的权重为 Wnew=[A∣a]−1YW_{new} = [A|a]^{-1}YWnew=[A∣a]−1Y,具体解形式如下,可以看
到,Wn+1W_{n+1}Wn+1中⽤到了更新之前的权值矩阵WnW_{n}Wn,因⽽有效地减少了更新权重的计算量。
少年英雄哪吒第⼀次计算权值是⽤的是岭回归算法,因为有迭代过程,可能计算时间稍长。但是第⼆次、三次……计算时都只涉及矩阵的乘法,所以权值矩阵的更新是⾮常迅速。相⽐深度学习的反复训练,时常陷⼊局部最优⽆法⾃拔,宽度学习的优势⾮常明显