* [ ] 用于让机器学习模型看到的不同样本彼此之间更加相似
**最常见的数据标准化**:将数据减去其平均值使其中心为0,然后将数据除以其标准差使其标准差为1。
* 这种做法假设数据服从正态分布(也叫高斯分布),并确保让该分布的中心为0,同时缩放到方差为1
`normalized_data=(data-np.mean(data,axis=...))/np.std(data,axis=...)`
**批标准化** (batch normalization)
* Ioffe 和 Szegedy 在 2015 年提出的一种层的类型
* 在 Keras 中是 `BatchNormalization`
* 在训练过程中均值和方差随时间发生变化,它也可以适应性地将数据标准化
* 工作原理 :
* 训练过程中在内部保存已读取每批数据均值和方差的指数移动平均值
* 作用:有助于梯度传播
**使用**
```
conv_model.add(layers.Conv2D(32,3,activation='relu')) #在卷积层之后使用
conv_model.add(layers.BatchNormalization())
dense_model.add(layers.Dense(32,activation='relu')) #在Dense层之后使用
dense_model.add(layers.BatchNormalization())
```
**参数`axis`**
* `BatchNormalization`层接收一个`axis`参数,它指定应该对哪个特征轴做标准化
* 参数的默认值是-1,即输入张量的最后一个轴
* 使用范围:Dense层、Conv1D层、RNN层、将data_format设为"channels_last"(通道在后)的Conv2D层
* 将data_format设为"channels_first"(通道在前)的Conv2D层,这时特征轴是编号为1的轴,取1
- 基础
- 张量tensor
- 整数序列(列表)=>张量
- 张量运算
- 张量运算的几何解释
- 层:深度学习的基础组件
- 模型:层构成的网络
- 训练循环 (training loop)
- 数据类型与层类型、keras
- Keras
- Keras 开发
- Keras使用本地数据
- fit、predict、evaluate
- K 折 交叉验证
- 二分类问题-基于梯度的优化-训练
- relu运算
- Dens
- 损失函数与优化器:配置学习过程的关键
- 损失-二分类问题
- 优化器
- 过拟合 (overfit)
- 改进
- 小结
- 多分类问题
- 回归问题
- 章节小结
- 机械学习
- 训练集、验证集和测试集
- 三种经典的评估方法
- 模型评估
- 如何准备输入数据和目标?
- 过拟合与欠拟合
- 减小网络大小
- 添加权重正则化
- 添加 dropout 正则化
- 通用工作流程
- 计算机视觉
- 卷积神经网络
- 卷积运算
- 卷积的工作原理
- 训练一个卷积神经网络
- 使用预训练的卷积神经网络
- VGG16
- VGG16详细结构
- 为什么不微调整个卷积基?
- 卷积神经网络的可视化
- 中间输出(中间激活)
- 过滤器
- 热力图
- 文本和序列
- 处理文本数据
- n-gram
- one-hot 编码 (one-hot encoding)
- 标记嵌入 (token embedding)
- 利用 Embedding 层学习词嵌入
- 使用预训练的词嵌入
- 循环神经网络
- 循环神经网络的高级用法
- 温度预测问题
- code
- 用卷积神经网络处理序列
- GRU 层
- LSTM层
- 多输入模型
- 回调函数
- ModelCheckpoint 与 EarlyStopping
- ReduceLROnPlateau
- 自定义回调函数
- TensorBoard_TensorFlow 的可视化框架
- 高级架构模式
- 残差连接
- 批标准化
- 批再标准化
- 深度可分离卷积
- 超参数优化
- 模型集成
- LSTM
- DeepDream
- 神经风格迁移
- 变分自编码器
- 生成式对抗网络
- 术语表