神经网络的常用名词

 原文由Kailash AhiwarMate Labs联合创始人兼CTO )发表于hackernoon。文中还有个亮点:如何在5min训练一个机器学习模型。本文仅翻译主要部分,并且尽量不改变原文的行文结构,详细内容可查看原文。

 神经元(节点)-该结构为神经网络的基本单元(可理解为神经网络中单层feature map上的像素)。它可以接收一定量的输入和一个bias值,经过运算后得到输出。工作过程如下:每个输入对应乘以一个权重值,将乘积与bias值累加,然后经过非线性函数得到神经元的输出。权重值可以在训练时进行调整。具体公式和图例如下。

 连接- 该结构的作用是将不同层或同层的神经元进行连接,连接的方式是通过权重值,网络训练的目的也是通过修改这些连接的权重值来减少训练误差。

 偏置 - Bias(Offset)为神经元的额外输入,其值总是为1,并且有独立的连接权重b。它的存在保证了即使神经元没有输入(输入全部为0),和它连接的神经元仍然有激活值。

 激活函数- 该单元的功能是为神经元引入非线性部分,并且将神经元的输出值压缩在一个较小的范围。

图片来源:http://prog3.com/sbdm/blog/cyh_24/article/details/50593400

 输入层 - 神经网络的第一层,该层接收输入信号,如图中X1,X2,X3,X4,然后将输入信号直接向下一层进行传递,没有权重值和偏置项对输入信号进行处理。

 隐层 - 该结构的主要功能是对输入数据进行不同的转换。垂直方向的神经元构成一个隐层,如图中共5个隐层,从左至右每个隐层的神经元个数分别为:4、5、6、4、3。最后一个隐层将结果传递给输出层。另外,隐层中的每个神经元和前一层及后一层的神经元均有连接,称这种情况为全连接的隐层。

 输出层 - 神经网络的最后一层,该层将输出限制在一定范围,并且得到期望的输出个数。如图中最后获得3个输出值。

 输入形状 - 传递给输入层的输入信号矩阵的形状。上图网络的输入层共4个神经元,即输入层期望1个样本的4个值,网络理想的输入形状为(1, 4, 1),若对于100个样本而言,输入形状将是(100, 4, 1)。不同库有不同格式的输入形状。(此处最后一维的1不知道什么含义)

 权重(参数) - 权重表示不同单元连接的强度。如果节点1到节点2有较大的值,则意味着1节点对2节点有较大影响。权重减小了输入值的重要性,对于接近于0的权重,输入的改变不会影响输出的变化;负权重意味着,增加输入而输出会减小。权重决定了输入对输出影响的大小。

 前向传播- 该过程是将输入值传递给神经网络,得到一个称之为预测结果的输出值。有时也将该过程成为inference。当把输入值传递给网络的第一层时,数据向后传递,没有进行任何运算。第二层从第一层获得数据,然后执行乘法,加法,激活运算,并将数据传递给下一层。接下来的几层执行相同的操作,最后从网络的最后一层得到输出值。

 反向传播 - 前向传播后得到一个预测值。为计算偏差,我们将预测值和真实值进行比较,并使用损失函数计算偏差值。然后计算偏差值相对于网络中的每个权重的导数。反向传播使用微积分中的链式法则。在链式法则中,首先计算相对于最后一层偏差值的导数,我们称这些导数为梯度,使用这些梯度值计算导数第二层的梯度。然后重复该过程直到得到网络中所有权重的梯度。接着用权重值减去梯度值来减小误差值。通过这种方式,我们可以接近局部最小值(即最小损失)。

 学习率- 训练神经网络时,通常使用梯度下降法来优化权重。每次迭代时,使用反向传播计算损失函数相对于每个权重的导数,并将权重减去其对应的导数。学习率决定了更新权重(参数)值的快慢,因此,高的学习率能是网络快速收敛,同时使用小的学习率使网络找到损失函数的局部极小值。

 准确率 - 测量值接近标准值或已知值的程度。

 精确率 - 意味着两个或者更多测量值中彼此接近的程度,表示测量的重复性和可再现性。

 召回率(敏感度) - 表示所有的相关实例中被检索出的相关实例的比例。

 混淆矩阵- 如wiki中介绍的,在机器学习,尤其是统计分类的问题中,混淆矩阵(也称为误差矩阵)是算法性能的可视化表,典型的应用于监督学习中(非监督学习中称为匹配矩阵)。矩阵的每一行表示预测的实例,每一列表示实际的实例(反之亦然)。名字的由来也是基于系统是否容易将两个类别混淆(即将一个类别误认为是另一个类别)。

 收敛 - 是指随着迭代的进行,输出值越来越接近某个特定值。

 正则化- 常用于克服过拟合问题。具体做法,是将损失函数添加基于权重向量(给定算法学习到的参数)的L1或L2范数的惩罚项。 

 L(Loss function) + λN(w)  - λ为正则化系数,N(w) 是L1或L2范数。

 归一化 - 数据归一化是将其中的一个或多个属性值限制在[0,1]的区间。当数据分布未知或数据分布不是高斯分布(钟形曲线)时,数据归一化是一个好的技术,能很好的加快训练过程。

 全连接层 - 当某层所有节点的激活值传递到下一层中每个节点,第L层的所有节点连接到(L+1)层的全部节点时,我们称这些层为全连接层。

 损失函数/代价函数 - 损失函数用于计算单一训练样本的误差。代价函数是整个训练集的损失函数的平均。

 mse 均方误差;

 binary_crossentropy 二分类对数损失

 categorical_crossentropy 多分类对数损失

 模型优化器 - 是一种用于更新模型权重的搜索技术。

 SGD 随机梯度下降法,支持动量参数。

 RMSprop 由Geoff Hinton提出的自适应学习率优化方法。

 Adam 自适应矩估计也使用了自适应学习率

 性能指标- 用于评估神经网络的性能。这些指标包括但不限于准确率,损失值,验证准确率,验证损失,平均绝对误差,精确率,召回率,F1分数。

 批大小 - 一次前向或反向传播时训练样本的数目,批量越大,意味着需要更多的内存。

 训练epochs - 模型在整个训练集上重复训练的次数。

 一次epoch- 所有训练样本进行一次前向和反向传播。

 

参考文献:

 https://hackernoon.com/everything-you-need-to-know-about-neural-networks-8988c3ee4491

 https://www.jianshu.com/p/31b71f4526e6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值