本文转载自微信公众号「志斌的python笔记」,作者安可。转载本文请联系志斌的python笔记公众号。
大家好,我是志斌~
今天来跟大家分享一些人工神经网络基础的知识~
深度学习(DL)在搜索技术,数据挖掘,机器学习,机器翻译,自然语言处理,多媒体学习,语音,推荐和个性化技术,以及其他相关领域都取得了很多成果。使得人工智能相关技术取得了很大进步。要学习深度学习,那么首先要熟悉神经网络(Neural Networks)的一些基本概念,人工神经网络的基本思想是仿生学。
1.神经元模型
人工神经网络是受到人类大脑结构的启发而创造出来的。如图
神经网络算法正是模仿了上面的网络结构。下面是一个人工神经网络的构造图。每一个圆代表着一个神经元,他们连接起来构成了一个网络。
人类大脑神经元细胞的树突接收来自外部的多个强度不同的刺激,并在神经元细胞体内进行处理,然后将其转化为一个输出结果。人工神经元也有类似的工作原理,如图:
上图中,x是神经元的输入,相当于树突接收的多个外部刺激。w是每个输入对应的权重,它影响着每个输入x的刺激强度;b表示阈值,用来影响预测结果;z是预测结果。
2.MP模型
01激活函数
What(是什么):激活函数(Activation functions)在神经元中,输入的数据通过加权求和后,还被作用了一个函数,这个函数就是激活函数。
Why(为什么用):引入激活函数是为了增加神经网络模型的非线性。没有激活函数的每层都相当于矩阵相乘。引入了非线性因素,使得神经网络可以任意逼近任何非线性函数,这样神经网络就可以应用到众多的非线性模型中。
常见的激活函数:
①Sigmoid函数:
常被用作神经网络的阈值函数,将变量映射到0,1之间,公式如下:
它的图像如下:
②Tanh函数
Tanh()为双曲正切由基本双曲函数双曲正弦和双曲余弦推导而来。公式如下:
它的图像如图:
③ReLU函数
用于隐层神经元输出。公式如下:
它的图像如下:
02MP模型
参数解释:将外部刺激模拟为;将每个树突对输入的刺激加工过程模拟为以某个权重()对输入进行加权;将细胞核对输入的处理模拟为一个带有偏置的求和过程(),用激活函数()对求和的结果进行非线性变换得出y。
公式表示如下:
向量形式如下:
数学理解:设神经元的输出y是输入的函数;
公式解释:对f(X1,X2,...,Xm)进行泰勒展开,后边依次为二阶三阶偏导,相当于一阶泰勒近似。
3.小结
- 人工神经网络与人脑一样,网络越复杂它就越强大;层数越多,构造的神经网络越复杂。
- 用来训练的数据越多,就需要层数非常多的网络来实现。
- 本文仅是自己对于人工神经网络的见解,如有不妥之处请指出~