标签:模型 多个 lims 完整 问题 都对 全连接 line 应用
神经网络方面的研究很早就已出现,今天“神经网络”已是一个相当大的、多学科交叉的学科领域。神经网络中最基本的成分是神经元模型。
上图中每个圆圈都是一个神经元,每条线表示神经元之间的连接。我们可以看到,上面的神经元被分成了多层,层与层之间的神经元有连接,而层内之间的神经元没有连接。
为了理解神经网络,我们应该先理解神经网络的组成单元——神经元。神经元也叫做感知器。还记得之前的线性回归模型中权重的作用吗?每一个输入值与对应权重的乘积之和得到的数据或通过激活函数来进行判别。下面我们看一下感知器:
可以看到,一个感知器有如下组成部分:
我们了解过sigmoid函数是这样,在之前的线性回归中它对于 二类分类 问题非常擅长。所以在后续的多分类问题中,我们会用到其它的激活函数
那么我们继续往后看,神经网络是啥?
神经网络其实就是按照一定规则连接起来的多个神经元。
那么我们以下面的例子来看一看,图上已经标注了各种输入、权重信息。
对于每一个样本来说,我们可以得到输入值x_1,x_2,x_3x?1??,x?2??,x?3??,也就是节点1,2,3的输入值,那么对于隐层每一个神经元来说都对应有一个偏置项bb,它和权重一起才是一个完整的线性组合
{a_4}{=}sigmoid\left({W_{41}* x_1}{+}{W_{42}* x_2}{+}{W_{43}* x_3}{+}{W_{4b}}\right)a?4??=sigmoid(W?41???x?1??+W?42???x?2??+W?43???x?3??+W?4b??)
{a_5}{=}sigmoid\left({W_{51}* x_1}{+}{W_{52}* x_2}{+}{W_{53}* x_3}{+}{W_{5b}}\right)a?5??=sigmoid(W?51???x?1??+W?52???x?2??+W?53???x?3??+W?5b??)
{a_6}{=}sigmoid\left({W_{61}* x_1}{+}{W_{62}* x_2}{+}{W_{63}* x_3}{+}{W_{6b}}\right)a?6??=sigmoid(W?61???x?1??+W?62???x?2??+W?63???x?3??+W?6b??)
{a_7}{=}sigmoid\left({W_{71}* x_1}{+}{W_{72}* x_2}{+}{W_{73}* x_3}{+}{W_{7b}}\right)a?7??=sigmoid(W?71???x?1??+W?72???x?2??+W?73???x?3??+W?7b??)
这样得出隐层的输出,也就是输出层的输入值.
矩阵表示
同样,对于输出层来说我们已经得到了隐层的值,可以通过同样的操作得到输出层的值。那么重要的一点是,分类问题的类别个数决定了你的输出层的神经元个数
我们可以说神经网络是一个模型,那么这些权值就是模型的参数,也就是模型要学习的东西。然而,一个神经网络的连接方式、网络的层数、每层的节点数这些参数,则不是学习出来的,而是人为事先设置的。对于这些人为设置的参数,我们称之为超参数。
神经网络的训练类似于之前线性回归中的训练优化过程。前面我们已经提到过梯度下降的意义,我们可以分为这么几步:
计算结果误差
通过梯度下降找到误差最小
更新权重以及偏置项
这样我们可以得出每一个参数在进行一次计算结果之后,通过特定的数学理论优化误差后会得出一个变化率\alphaα
就是说通过误差最小得到新的权重等信息,然后更新整个网络参数。通常我们会指定学习的速率\lambdaλ(超参数),通过 变化率和学习速率 率乘积,得出各个权重以及偏置项在一次训练之后变化多少,以提供给第二次训练使用
在使用梯度下降时候,一般需要指定学习速率
tf.train.GradientDescentOptimizer(0.5)
init
构造一个新的梯度下降优化器
__init__(
learning_rate,
use_locking=False,
name=‘GradientDescent‘
)
minimize
添加操作以更新最小化loss,这种方法简单结合调用compute_gradients()和 apply_gradients()(这两个方法也是梯度下降优化器的方法)。如果要在应用它们之前处理梯度,则调用compute_gradients()和apply_gradients()显式而不是使用此函数。
minimize(
loss,
global_step=None,
var_list=None,
gate_gradients=GATE_OP,
aggregation_method=None,
colocate_gradients_with_ops=False,
name=None,
grad_loss=None
)
标签:模型 多个 lims 完整 问题 都对 全连接 line 应用
原文地址:https://www.cnblogs.com/alexzhang92/p/10069518.html