赞
踩
神经网络是对线性模型的升级,使之能对线性不可分的数据集达到好的分类效果。
在线性模型中,利用矩阵乘法得到由图像像素到分值向量的映射,图像的像素被拉伸成一个输入行向量,参数是矩阵,输出是分值向量,其维数是类别的数量。
相比于线性模型,神经网络的核心是引入非线性激活函数和多层结构。
在同一个网络中一般使用同一种激活函数,而不混合使用多种激活函数
在目前的实践中,推荐使用 ReLU 激活函数。
tanh理论上不如ReLU, 不推荐使用tanh
每次线性变换的输出向量都需要进行非线性变换。注意:最后一次的线性变换不需要进行非线性变换,因为最后的输出y多用于表示分值(分类),可以是任意的实数值,或者是实数值的目标值的回归。
例如:三次变换的公式为:
h1=f(xW1) h2=f(h1W2) y=h2W3
s1=x1W+b
s2=x2W+b
...
sn=xnW+b
得到
S=XW+B
每个样本的分值向量组成分值矩阵S的一行,每个样本属性向量组成样本属性矩阵X的一行。矩阵X也称为数据矩阵,偏置矩阵B的每行都是偏置向量b, W为输入各向量对应的权重,都一样。
代码: 线性模型(定义)
import numpy as np
D=784 # 数据维度
K=10 # 类别数
N=128 # 样本数量
X=np.random.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。