神经网络概述

简述

人工神经网络,Artificial Neural Networks。它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。
一个神经网络可以表示为一个人工神经元的图,或者说节点和有向边,用来对突触建模。每个神经元是一个处理单元,它将连接到它的节点的输出作为输入。

损失函数, loss function, L(Y,f(X)).
在统计学中,损失函数用来衡量实际值与预测值之间的偏差程度。

网络结构

可以分为 :

  • 多层前馈神经网络
  • CNN
  • RNN
  • 各种网络拼接融合起来的复杂网络

激活函数

在人工神经元发出输出之前,先应用一个非线性激活函数,正因此, 神经网络具有对非线性关系进行建模的能力。

损失函数

也称代价函数,记为 L(y,f(x;θ)) L ( y , f ( x ; θ ) ) , where θ θ 是网络中的各种可学习参数,

θ=argminθL(y(i),f(x(i);θ)) θ = arg ⁡ min θ ∑ L ( y ( i ) , f ( x ( i ) ; θ ) )

优化方法

SGD及各种变种。

数据集

  • 训练集
    用于网络训练, 更新网络中的权重。
  • 验证集
    验证集并不是必须的, 它用于网络的训练阶段, 但并不参与权重的更新, 比如用于 early stopping。
    有时候, 随着训练epoch_num的增加,误差在训练集上逐渐降低,但在验证集上可能会再次上升。所以我们需要在训练的过程中定期评估验证集,在每次验证集误差有所改善后, 存储模型参数的副本。 当训练结束后, 返回保存的副本而非最终的参数。
  • 测试集
    评价模型的性能。
  • 预测集
    预测未标注的数据,这也是模型开始干活,发挥价值的时候。

过拟合应对

  • 早停
    early stopping。 当验证集上的误差在事先指定的循环次数内没有进一步改善时,训练就会终止。
    神经网络概述_第1张图片
  • batch_normalozation
  • dropout
    略。

3. 感知机举例

感知机由两层神经元组成, 是最简单的神经网络.
神经网络概述_第2张图片
此感知机对应的表达式为:

y1=i=12xiwiθ y 1 = ∑ i = 1 2 x i w i − θ

通过赋值恰当的参数, 可以完成 “或且非” 这样的逻辑判断. 0 is false, 1 is true.

功能 x1(举例) x2(举例) w1 w2 θ θ y1(对应举例的结果)
1 0 1 1 0.5 1
1 1 1 1 1.5 1
1 / -0.6 / -0.5 0

你可能感兴趣的:(神经网络概述)