基于Keras的手写数字识别神经网络构建与优化
1. Keras基础代码示例
Keras的基本构建块是模型,最简单的模型是顺序模型(Sequential)。顺序Keras模型是神经网络层的线性管道(堆栈)。以下代码片段定义了一个具有12个人工神经元的单层,它期望有8个输入变量(也称为特征):
from keras.models import Sequential
model = Sequential()
model.add(Dense(12, input_dim=8, kernel_initializer='random_uniform'))
每个神经元可以用特定的权重进行初始化。Keras提供了几种选择,最常见的如下:
| 初始化方法 | 描述 |
| — | — |
| random_uniform | 权重初始化为(-0.05, 0.05)范围内均匀随机的小值。 |
| random_normal | 权重根据高斯分布初始化,均值为0,标准差为0.05。 |
| zero | 所有权重初始化为0。 |
完整列表可在 https://keras.io/initializations/ 查看。
2. 多层感知器(MLP)
历史上,感知器是指具有单个线性层的模型,如果有多个层,则称为多层感知器(MLP)。一个典型的神经网络包含一个输入层、一个中间层和一个输出层。
超级会员免费看
订阅专栏 解锁全文
9万+

被折叠的 条评论
为什么被折叠?



