怎样理解激活函数呢?如果你现在正在一个世界500强的大厂里敲代码,工作压力巨大,“996”已经成为常态,但是你思前想后,考虑这份工作的薪水(权重w1)、免费午餐和咖啡(权重w2)、你对编码的热爱(权重w3)、公司离家近(权重w4)、老婆对你工作的认可(权重w5)等因素,综合衡量后你决定忍了,或者说这一切并没有超出你忍耐的阈值,把你的忍耐“功能”看作一个函数,那么在这种场景下相当于你的函数输出为0,目前还处于没有被激活状态。但是事情总是向你意想不到的方向变化的,你发现“996”正在逐步变成“007”,或者免费咖啡变成免费白水了,再或者上述因素的权重开始调整了,比如你好像不太在乎老婆对你的工作是否认可了,你终于不忍了,这时函数输出超出了阈值,你把自己激活了,扬长而去。
1、一切的基础:M-P神经元
深度学习网络实质上是层数较多的神经网络,那什么是神经网络呢?简单来说是一种模仿动物神经网络行为特征,进行分布式并行处理信息的算法模型。人们总可以从万能的大自然中学习到很多,比如通过研究鸟儿的翅膀发明飞机,在研究蝙蝠时获得发明雷达的灵感,人们同样也希望效仿大脑神经网络而获得智能。
模仿大脑神经元的最早实例,是20世纪40年代提出并且一直沿用至今的“M-P神经元模型”,这个M-P是什么意思啊?这里有一段故事。
M-P神经元模型,最早源于发表于1943年的一篇论文,论文的两位作者分别是神经生理学家沃伦·麦克洛克(Warren McCulloch)和数学家沃尔特·皮茨(WalterPitts),论文首次实现了用一个简单电路(也就是未来大名鼎鼎的感知机)来模拟大脑神经元的行为。那时受《数学原理》的启发,麦克洛克正在尝试用戈特弗里德·莱布尼茨(微积分发明人)的逻辑演算来构建一个大脑模型,这是一件极富挑战性的事。麦克洛克猜想神经元的工作机制很可能类似于逻辑门电路,接受多个输入,产生单一的输出,而通过改变神经元的激发阈值以及神经元之间的连接程度,就可以让它执行“与、或、非”等功能。但是麦克洛克的强项是神经科学,他不擅长数学,难以形式化描述自己的想法。这时颇有数学才华的皮茨出场了,正好补其短板。当麦克洛克和皮茨完成他们的计算实验时,实际上构造了一个操作性非常强的机械型精神模型,后人就用二人名称的首字母称呼这个模型“M-P神经元模型”。基于他们的研究发现,麦克洛克和皮茨写了一篇学术文章,这篇文章就是神经网络的天下第一文《神经活动中思想内在性的逻辑演算》(A Logical Calculus ofIdeas Immanent in Nervous Activity),发表在著名期刊《数学生物物理学通报》。
沃伦·麦克洛克(Warren McCulloch)
沃尔特·皮茨(Walter Pitts)
2、神经网络被激活:激活函数
M-P神经元模型中,神经元接收来自n个其他神经元传递过来的输入信号。这些信号的表达通常通过神经元之间连接的权重(Weight)大小来表示,神经元将接收到的输入值按照某种权重叠加起来,汇集了所有其他外联神经元的输入,并将其作为一个结果输出。但这种输出并非直接输出,而是与当前神经元的阈值(θ就是阈值)进行比较,然后通过激活函数f(Activation Function)向外表达输出,y就是最终的输出。
怎样理解激活函数呢?如果你现在正在一个世界500强的大厂里敲代码,工作压力巨大,“996”已经成为常态,但是你思前想后,考虑这份工作的薪水(权重w1)、免费午餐和咖啡(权重w2)、你对编码的热爱(权重w3)、公司离家近(权重w4)、老婆对你工作的认可(权重w5)等因素,综合衡量后你决定忍了,或者说这一切并没有超出你忍耐的阈值,把你的忍耐“功能”看作一个函数,那么在这种场景下相当于你的函数输出为0,目前还处于没有被激活状态。但是事情总是向你意想不到的方向变化的,你发现“996”正在逐步变成“007”,或者免费咖啡变成免费白水了,再或者上述因素的权重开始调整了,比如你好像不太在乎老婆对你的工作是否认可了,你终于不忍了,这时函数输出超出了阈值,你把自己激活了,扬长而去
神经元的工作模型存在“激活->1”和“抑制->0”两种状态的跳变,理想的激活函数就应该是的阶跃函数,但在实际使用中,这类函数具有不光滑、不连续等众多不“友好”的特性, 于是Sigmoid激活函数,Tanh 激活函数,ReLU激活函数,Softmax激活函数等等加强版出现,根据不同需求各显神通。
3、神经网络的“Hello World”:感知机
感知机是由康奈尔航空实验室的心理学教授弗兰克·罗森布拉特(Frank Rosenblatt)在1957年提出的一种人工神经网络,也被视为一种形式最简单的前馈式人工神经网络,是一种二元线性分类器。罗森布拉特做了一个在当时看来非常令人“惊艳”的实验,实验的训练数据是50组图片,每组两幅,由一张标识向左和一张标识向右的图片组成。学着,学着,这部感知机就能“感知”出最佳的连接权值。然后,对于一个全新的图片,在没有任何人工干预的情况下,它能“独立”判定出图片标识为左还是为右。
下图为感知机在调试中
感知机是一切神经网络学习的起点,是神经网络学习“Hello World”。感知机也被称为“阈值逻辑单元”,我们在上文说“激活函数”时已经讲解过原理了。感知机有明确的结果导向性,比如下图感知机的实例,目的就是区分“西瓜和香蕉”,感知机的“学习”就是,就是通过不断的循环往复的试错,调整神经元之间的连接权值(w参数值)和神经元阈值(θ参数值)等规则,最终只要能达到良好的分类目的就是好的规则。
4、人工智能的寒冬:感知机的问题
聪慧的你可能发现,感知机很容易实现逻辑上的“与、或、非”等原子布尔函数,但是感知机难以实现常见的“异或”逻辑操作。1972年,明斯基出版了《感知机:计算几何简介》一书,在书中论述了感知机模型存在的两个关键问题,一是单层神经网络无法实现“异或门电路”等功能,第二是,即使使用当时最先进的计算机,也没有足够的计算能力去完成神经网络模型训练所需的超大的计算量(比如调整网络中的权重参数)。这篇文章把人工智能送进了长达二十年的“冬天”,由于看不到前景,人工智能研究获得的经费大幅度减少,不少研究人员也不得不转行。
那人工智能技术又是如何卧薪尝胆,熬过这个漫长冬天的?以后我们一起来学习
,