课程简介
机器学习(深度学习)算法和应用
目标收益
幻灯片算法讲解,结合代码分析,剖析算法原理;实际应用举例和和业界趋势分析;成熟开源框架介绍和实例(Numpy, Pandas, Sklearn, Keras, TensorFlow,)。
内容分7大部分:DNN 入门和基本模型;模型评估、调参和优化;卷积神经网络 CNN 原理和实践;循环神经网络RNN原理和实践;GAN;无监督学习;增强学习。
完成课程后,学员能够了解深度学习的流程步骤;理解用深度学习方法解决实际问题的方法和思路;初步掌握基础深度学习的算法和实现方法,并应用于多种项目中。
培训对象
对深度学习算法原理和应用感兴趣,具有一定编程(Python)和数学基础(线性代数、微积分、概率论)的技术人员。
课程大纲
PART I: 入门和基本 DNN 模型 |
1. 深度学习概要 什么是深度学习 & 与机器学习的异同 2. 多层感知器模型 Multi-Layer Perceptron – MLP 神经元 权重和激活 Neurons Weight Activation 神经元网络 Neuron Networks 训练网络 Training Networks Back-propagation 算法和计算图 多种自适应学习率算法 Adaptive Learning Rate 3. 用 Keras 搭建 MLP 载入数据 定义-编译-训练-测试模型 |
PART II: 评估、调参和优化模型 |
4. 评估深度学习模型的性能 切分数据集合 Data Splitting 手工 k-fold cross validation 5. 通用深度学习工具集 Keras + Scikit-Learn 用 cross-validation 评估模型用 grid-search 微调超参数 6. 项目:用 MLP 进行多元分类 – 植物品种分类 7. 项目:用 MLP 进行二元分类 – 声呐探测物体信号分析 8. 项目:用 MLP 进行回归 – Boston 房屋价格预测 9. 序列化保存模型 10. 通过 check point 机制获取最佳模型 11. 通过绘制模型历史理解训练行为 12. 通过 dropout regularization 降低模型过拟合 13. 选取不同的 Learning Rate Schedule 提升模型性能 |
PART III: 卷积神经网络 CNN |
14. 卷积神经网络 Convolutional Neural Network 14.1 CNN 原理和构造: - 核 Filter 和卷积运算 Convolutional Layer - 特征图 Feature Maps - 池化层 Pooling - 全连接层 Full Connected Layer - Dropout 和 Batch Normalization - CNN 最佳实践 14.2 CNN 实践 - 项目:用 CNN 进行手写体识别 - 练习:在 CNN 图像识别中通过 Image Augmentation 技术提升模型性能 - 项目:用 CNN 进行图片物体识别 - 项目:用 CNN 电影评论情绪预测 - 项目:用 CNN 进行图像 segmentation |
PART IV: 循环神经网络 Recurrent Neural Networks – RNN |
15. 循环神经网络 Recurrent Neural Networks 15.1 RNN 原理一:基本 RNN - 处理序列(Sequence)数据的神经网络 - 循环神经网 RNN 架构 - RNN 训练:如何在训练中获得稳定的梯度下降 - RNN 网络演化历史:RNN,LSTM,GRU 结构比较和分析 15.2 RNN 实践一:RNN 回归 - 项目:用 MLP 进行时间序列预测 - 项目:用长短记忆网络(Long-Short Term Memory, LSTM)进行时间序列预测 子项目 1) 用 LSTM 进行回归 子项目 2)用 LSTM 序列窗口(Window method)进行回归 子项目 3) 用 LSTM 时间步长(Time Step)进行回归 子项目 4) 用 LSTM 记忆(Memory)进行回归 & Stacked LSTM 15.3 RNN 实践二:RNN 分类 - 项目:对电影评论进行序列分类 Sequence Classification - 项目:使用 dropout LSTM - 项目:结合使用 CNN 和 RNN 进行序列分类15.4 RNN 实践三:用 RNN 进行文本生成 – one char - 项目:用 LSTM 进行 one-char 生成 - 项目:用 LSTM feature-window 进行 one-char 生成 - 项目:用 LSTM time-step 进行 one-char 生成 - 项目:用 LSTM 批内样本间保持状态进行 one-char 生成 - 项目:有状态 LSTM 进行 one-char 生成 - 项目:变长输入 LSTM 15.5 RNN 实践四:RNN 进行文本生成 – sequence - 项目:用 LSTM 生成文本序列 - 项目:深度 LSTM 生成文本 - 讨论:如何进一步提高模型 performance 15.6 更多 RNN 模型(可选)例如: - image captioning 图像字幕 - machine translation 机器翻译 - dialogue generation 对话生成 |
PART V: CV与NLP前沿介绍 |
16. 计算机视觉 CV 前沿:对抗生成网络(Generative Adversarial Network,GAN)介绍 17. 自然语言处理 NLP 前沿:变形金刚(Transformer)及其变种介绍 |
PART I: 入门和基本 DNN 模型 1. 深度学习概要 什么是深度学习 & 与机器学习的异同 2. 多层感知器模型 Multi-Layer Perceptron – MLP 神经元 权重和激活 Neurons Weight Activation 神经元网络 Neuron Networks 训练网络 Training Networks Back-propagation 算法和计算图 多种自适应学习率算法 Adaptive Learning Rate 3. 用 Keras 搭建 MLP 载入数据 定义-编译-训练-测试模型 |
PART II: 评估、调参和优化模型 4. 评估深度学习模型的性能 切分数据集合 Data Splitting 手工 k-fold cross validation 5. 通用深度学习工具集 Keras + Scikit-Learn 用 cross-validation 评估模型用 grid-search 微调超参数 6. 项目:用 MLP 进行多元分类 – 植物品种分类 7. 项目:用 MLP 进行二元分类 – 声呐探测物体信号分析 8. 项目:用 MLP 进行回归 – Boston 房屋价格预测 9. 序列化保存模型 10. 通过 check point 机制获取最佳模型 11. 通过绘制模型历史理解训练行为 12. 通过 dropout regularization 降低模型过拟合 13. 选取不同的 Learning Rate Schedule 提升模型性能 |
PART III: 卷积神经网络 CNN 14. 卷积神经网络 Convolutional Neural Network 14.1 CNN 原理和构造: - 核 Filter 和卷积运算 Convolutional Layer - 特征图 Feature Maps - 池化层 Pooling - 全连接层 Full Connected Layer - Dropout 和 Batch Normalization - CNN 最佳实践 14.2 CNN 实践 - 项目:用 CNN 进行手写体识别 - 练习:在 CNN 图像识别中通过 Image Augmentation 技术提升模型性能 - 项目:用 CNN 进行图片物体识别 - 项目:用 CNN 电影评论情绪预测 - 项目:用 CNN 进行图像 segmentation |
PART IV: 循环神经网络 Recurrent Neural Networks – RNN 15. 循环神经网络 Recurrent Neural Networks 15.1 RNN 原理一:基本 RNN - 处理序列(Sequence)数据的神经网络 - 循环神经网 RNN 架构 - RNN 训练:如何在训练中获得稳定的梯度下降 - RNN 网络演化历史:RNN,LSTM,GRU 结构比较和分析 15.2 RNN 实践一:RNN 回归 - 项目:用 MLP 进行时间序列预测 - 项目:用长短记忆网络(Long-Short Term Memory, LSTM)进行时间序列预测 子项目 1) 用 LSTM 进行回归 子项目 2)用 LSTM 序列窗口(Window method)进行回归 子项目 3) 用 LSTM 时间步长(Time Step)进行回归 子项目 4) 用 LSTM 记忆(Memory)进行回归 & Stacked LSTM 15.3 RNN 实践二:RNN 分类 - 项目:对电影评论进行序列分类 Sequence Classification - 项目:使用 dropout LSTM - 项目:结合使用 CNN 和 RNN 进行序列分类15.4 RNN 实践三:用 RNN 进行文本生成 – one char - 项目:用 LSTM 进行 one-char 生成 - 项目:用 LSTM feature-window 进行 one-char 生成 - 项目:用 LSTM time-step 进行 one-char 生成 - 项目:用 LSTM 批内样本间保持状态进行 one-char 生成 - 项目:有状态 LSTM 进行 one-char 生成 - 项目:变长输入 LSTM 15.5 RNN 实践四:RNN 进行文本生成 – sequence - 项目:用 LSTM 生成文本序列 - 项目:深度 LSTM 生成文本 - 讨论:如何进一步提高模型 performance 15.6 更多 RNN 模型(可选)例如: - image captioning 图像字幕 - machine translation 机器翻译 - dialogue generation 对话生成 |
PART V: CV与NLP前沿介绍 16. 计算机视觉 CV 前沿:对抗生成网络(Generative Adversarial Network,GAN)介绍 17. 自然语言处理 NLP 前沿:变形金刚(Transformer)及其变种介绍 |