DeepLearning 神经网络基础

参考资料

1. 神经元

神经元是神经网络的基本结构,是最小的神经网络。神经元有多个输入和一个输出

输入x:代表样本特征值,如 [房屋面积,房屋价格,社区评分]

连接(Connection)是图中的边。每一个连接上都有一个权重(Weight)

信号处理函数分为两部分

  1. 权重加权。每个输入信号x1, x2, x3,对应的权重分别为w1, w2, w3,对应相乘相加。再加上内部强度(也叫偏置bias),用 b 表示
  2. 激活函数。用 a=σ(z) 表示

计算公式为:

用向量表示为:

w可以解理为斜率,b可以解理为截距

z被代入到激活函数 a=σ(z) 得到神经元的输出,这里的 a 表示神经元的激活状态

注意到这里的σ(z)还没有具体展开。 σ(z)被称为激活函数,具体有很多种,在整个神经网络中不同层的神经元可以使用不同的激活函数

1.1. 多分类

单个神经元的决策边界是一条直线,只能解决二分类问题

如果想要解决三分类问题,就要两个神经元,因为两个神经元决策边界是两条直线

扩展w,w从向量变成了矩阵

2. 激活函数

σ(z)激活函数有好几种,常见的有以下几种:

sigmoid函数(知名度最高)

tanh双曲正切函数

ReLU(Rectified Linear Unit)线性整流函数

Leaky ReLu函数

先记住以下几点:

  • 几乎所有的情况下 Tanh 都要比 Sigmoid 要好
  • 默认用 ReLu 就很好

至于为什么是这样,需要阅读好多论文才能懂,暂时先记住

3. 神经网络

3.1. 什么是神经网络

定义:在机器学习和认知科学领域,人工神经网络(artificial neural network,缩写ANN),简称神经网络(neural network,缩写NN)或类神经网络,是一种模仿生物神经网络的结构和功能的计算模型,用于对函数进行估计或近似。

多个神经元组成的网络就是神经网络

一个神经网络的训练算法就是让权重的值调整到最佳,以使得整个网络的预测效果最好

3.2. 神经网络的特点

整个神经网络分为:输入层,隐藏层,输出层。一般说L层神经网络,指的是有L个隐层,输入层和输出层都不计算在内的

  • 输入层的神经元的个数取决于输入向量的维度(样本数)
  • 输出层的神经元的数量等于与每个输入相关联的输出的数量。例如手写数识别,每张图片只可能对应数字0~9,所以输出层神经元数量为10
  • 每个连接都有个权值
  • 同一层神经元之间没有连接
  • 第N层与第N-1层的所有神经元连接,也叫全连接(full connection)

3.3. 神经网络的种类

基础神经网络:单层感知器,线性神经网络,BP神经网络,Hopfield神经网络等

进阶神经网络:玻尔兹曼机,受限玻尔兹曼机,递归神经网络等

深度神经网络:深度置信网络,卷积神经网络,循环神经网络,LSTM网络等

3.4. 神经网络的组成

结构(Architecture)例如,神经网络中的变量可以是神经元连接的权重

激励函数(Activity Rule)大部分神经网络模型具有一个短时间尺度的动力学规则,来定义神经元如何根据其他神经元的活动来改变自己的激励值。

学习规则(Learning Rule)学习规则指定了网络中的权重如何随着时间推进而调整。(反向传播算法)

panchaoxin wechat
关注我的公众号
支持一下