SpinalNet:一种模仿人类神经系统的深度神经网络
2020-09-04 15:25:17来源:阅读:-
一种模仿人类神经系统的神经网络。
AI寒冬并不是由于想象力陷阱,而是由于缺乏想象力。想象力使得混乱中有秩序。深度学习和深度想象是通向人工智能的春天和秋天的路线图。
在过去的一段时间里,深度神经网络(DNNs)领域的进步帮助我们实现了许多里程碑。DNN使机器的性能更接近人类。
使用DNNs有许多优点,但也有一些问题正在被解决,而且在未来也将被解决。DNNs通常有大量的输入特征,考虑更多的参数通常会提高预测的准确性。第一个隐藏层的大小至关重要。较小的第一隐层不能正确地传播所有的输入特征,而较大的第一隐层则会急剧增加权值的数量。传统DNNs的另一个限制是消失梯度。当层数较多时,输出附近神经元的梯度较高,而输入附近神经元的梯度则可以忽略不计。由于梯度消失问题,DNN的训练变得困难。
1. 介绍
- 人类的大脑从身体的不同部位接收到很多信息。大脑感知压力、热量、振动、复杂的结构、硬度、物质状态等。
- 人的脊髓从不同部位的不同位置接收触觉。
- 下一个图是简化后的人类触觉传感器和脊髓之间的粗略连接。
图1: 人体脊髓的连接
- 新提出的SpinalNet架构的原理是逐步输入,通过这种方式,脊髓和人脑中的类似行为可以通过神经网络实现。
- SpinalNet试图克服深度神经网络中更多的计算量、梯度消失、连接数量和层数太高的问题,这些问题可以通过使用SpinalNet来解决。
2. 理论背景
2.1 人体躯体感觉系统和脊髓
- SpinalNet的作者试图模仿人类躯体感觉系统的一些属性,因为这个系统仍然没有被很好地理解。
- SpinalNet试图模仿下面的动作
—— 渐进输入和神经丛
—— 自愿和非自愿行为
—— 疼痛强度注意力
- 感觉神经元通过一个复杂的网络到达脊髓,被称为神经丛。
- 下图是神经丛的一部分。
图2: 神经丛
- 单个椎骨不能接收到所有的信息。触觉感知网络由数百万个传感器组成。
- 此外,我们的触觉系统比视觉或听觉系统更稳定,因为“触觉失灵”的病人的数目比失明的数目少得多。
- 神经丛网络逐渐将所有的触觉信号发送到脊髓。脊髓的不同部位可以承受腿和手的疼痛。
- 椎骨中的神经元将触觉传递到大脑,并可能采取一些行动。
- 我们的大脑可以控制脊髓神经元,增加或减少疼痛强度。
- 感觉神经元也可以在得到大脑指令之前将信息传递给低运动神经元。这被称为非自主运动,或反射运动。
3. 提出的SpinalNet
- SpinalNet与人类脊髓的工作有共同之处。
- 相似之处如下:
—— 逐步输入
——局部输出以及全局概率影响
——训练期间重新配置权重
- 类似于大脑的功能,SpinalNet是逐步接收输入信息的。
- 所提出的模型的所有层都对局部输出作出贡献,可以与反射进行比较,而输入的一个调制部分被发送到全局输出,可以与大脑进行比较。
- 下图是提出的SpinalNet架构。
图3: SpinalNet结构
- 提出的架构包括输入行、中间行及输出行。
- 首先,将输入内容分开发送到中间行。这个中间行由不同的多个隐藏层组成。
- 在上面的模型中,每个中间行隐含层由两个神经元组成,输出行隐含层也由两个神经元组成。
- 中间神经元的数目和每层输入的数目通常保持较小,以减少乘法的数目。由于每层输入的数量和中间隐藏神经元的数量通常较低,网络可能存在拟合不足。
- 为了克服上述问题,每一层从前一层接收输入。通过重复输入,如果一个重要的特征不影响一个隐藏层的输出,它可能会影响以后隐藏层的输出。
- 中间行隐含层具有非线性激活函数,输出行隐含层具有线性激活函数。
4. 提出的SpinalNet的普遍逼近
普遍逼近定理:神经网络的目标是将属性(x)映射到输出(y),数学上可以表示为函数y= f(x)。函数f(x)可以是任何复杂函数,但应该有助于将x映射到y。普遍逼近定理指出,对于任何属性(x),总有一个神经网络可以将f(x)映射到输出y,具有任意数量的输入和输出。
- 用下面的方法可以证明SpinalNet的普遍逼近定理。
1、大宽度单隐层神经网络是一种通用逼近器
2、如果我们能证明大深度的SpinalNet可以等价于大宽度的单隐含层神经网络,则证明了通用逼近
图4: SpinalNet的简化版本
- 上图是为了展示如何将SpinalNet的一个简单版本转换成一个单一的隐含层NN。
- 在图4(a)中,将第一层神经元简化为线性函数。所以第一层只取输入的x1到x5的加权和。
- 现在,从第一层,输出只会送到对应的第二层的神经元中。两层神经元之间的所有交叉连接和与输出层的连接通过权值为零来断开。
- 第二层接收x6到x10的加权和作为一个输入,并接收第一层输出的x1到x5的加权和。
- 因此,第二层执行的激活函数等效于一起对x1到x10的数据点一起应用激活。这两层的组合可以等效为一个包含单个隐含层,有两个神经元的神经网络,如图4(b)所示。
- 图4(d)显示了由4个隐层组成的SpinalNet的简化版本,每层包含2个神经元。同样,SpinalNet也相当于一个隐含层的神经网络,包含4个神经元。
- 从上面讨论的几点,我们可以得出结论,大深度的SpinalNet可以等同于包含大量神经元的单一隐含层的NN。
- 同样,由于含有大量神经元的单一隐含层的神经网络可以实现普遍逼近,类似的,具有大深度的SpinalNet也可以实现普遍逼近。
5. 结果
- ”SpinalNet: Deep Neural Network with Gradual Input.“的作者在classification和regression问题中有效验证了SpinalNet。
- 常用的MNIST和CIFAR数据集用于分类问题。
- 传统的NN有大约300个隐藏神经元,SpinalNet也有300个隐藏神经元。但是乘法次数下降了35.5%。
- 在传统的NN中,需要21700次乘法,而在SpinalNet中,相同数量的神经元需要14000次乘法。
图5: SpinalNet结构2
- 上图是第二个提出的架构,使用了3个SpinalNets,用作分类问题的模型。
图6: SpinalNet分类结果
- 上述表格包括数据集、基础模型、SpinalNet模型规格、epochs、准确率和相对于state-of-the-art模型的准确率增减。
- SpinalNet在论文的Section-3 Results中提供了关于哪个模型在哪个数据集上优于SpinalNet的更详细的描述。
图7: 将传统隐层转换为Spinal隐层
6. SpinalNet 的未来的前景
- 作者对SpinalNet的前景提出很少,因为这是关于SpinalNet的第一篇论文。
- 以下是SpinalNet的前景,这些主题的简要理论参见论文第4节
- 自动降维
- 迁移学习
- 更深的神经网络
- Spinal隐层
- 更好的准确率以及新数据集
- 神经网络集成和投票
7. 总结
- 人的神经系统和脊髓有一种独特的方式来感知信息和定位它的来源。
- SpinalNet网被提出,其想法是模仿大脑和脊髓的功能,最终帮助深度神经网络以更少的计算和更快的反应工作。