学校里人工智能的课程,都会以神经网络作为入门,因此,也以神经网络(NNs)作为回顾和新的学习开始
首先来回忆几个概念
神经元
神经元是神经网络中的一个基本单元,作用是:求得输入向量与权向量的内积后,经一个非线性传递函数得到一个标量结果
这个非线性传递函数也称之为:激励函数(ReLu)
因此对于一个基本单位神经元,他的目的就是汇合其所有的输入(外界刺激),与该神经元上的所有权值相乘(神经敏感度),通过激励(激励函数)产生相应的反应(标量结果)
神经网络
神经网络由多个神经元组成,通过层的概念划分,可以分为输入层,隐含层和输出层。
神经元之间的信息传递强度,是通过权向量来定义的,结合一定的训练学习算法,权向量会不断的进行调整,即学习算法(learning algorithm)会不断的调整神经元的敏感度,让神经元在训练过程中产生不同的刺激反应
同时,神经网络结合学习算法,依赖于大量的数据来训练,每一次的训练都需要有一个评估方法,称之为成本函数(cost function),用来定量评估根据特定输入值, 计算出来的输出结果,离正确值有多远,结果有多靠谱,换句话说就是神经网络的反应与预期是否一致
为此,一个神经网络的基本可变关键因素就是:网络拓扑设计(输入层,隐含层和输出层的关系),学习算法(以何种方式来调整神经元敏感度),激励函数(神经元对外界刺激做出如何的反应),成本函数(衡量评估神经网络距离预期的差距),当然,随着深入的研究,神经网络还有许多高级可变因素,比如,dropout等
成果
- 最常用的两个激活函数:Sigmoid系(Logistic-Sigmoid、Tanh-Sigmoid)