郁磊副教授,主要从事MATLAB 编程、机器学习与数据挖掘、数据可视化和软件开发、人工智能近红外光谱分析、生物医学系统建模与仿真,具有丰富的实战应用经验,主编《MATLAB智能算法30个案例分析》、《MATLAB神经网络43个案例分析》相关著作。已发表多篇高水平的国际学术研究论文。
Python入门基础【理论讲解与案例演示实操练习】
1、Python环境搭建( 下载、安装与版本选择)。
2、如何选择Python编辑器?(IDLE、Notepad++、PyCharm、Jupyter…)
3、Python基础(数据类型和变量、字符串和编码、list和tuple、条件判断、循环、函数的定义与调用等)
4、常见的错误与程序调试
5、第三方模块的安装与使用
6、文件读写(I/O)
7、实操练习
Python进阶与提高【理论讲解与案例演示实操练习】
1、Numpy模块库(Numpy的安装;ndarray类型属性与数组的创建;数组索引与切片;Numpy常用函数简介与使用)
2、Pandas模块库(DataFrame数据结构、表格的变换、排序、拼接、融合、分组操作等)
3、Matplotlib基本图形绘制(线形图、柱状图、饼图、气泡图、直方图、箱线图、散点图等)
4、图形的布局(多个子图绘制、规则与不规则布局绘制、向画布中任意位置添加坐标轴)
5、Scikit-Learn模块库简介、下载与安装
6、实操练习
多元线性回归及其在近红外光谱分析中的应用【理论讲解与案例演示实操练习】
1、多元线性回归模型(工作原理、最小二乘法)
2、岭回归模型(工作原理、岭参数k的选择、用岭回归选择变量)
3、LASSO模型(工作原理、特征选择、建模预测、超参数调节)
4、Elastic Net模型(工作原理、建模预测、超参数调节)
5、多元线性回归、岭回归、LASSO、Elastic Net的Python代码实现
6、案例演示:近红外光谱回归拟合建模
BP神经网络及其在近红外光谱分析中的应用【理论讲解与案例演示实操练习】
1、BP神经网络的基本原理(人工智能发展过程经历了哪些曲折?人工神经网络的分类有哪些?BP神经网络的拓扑结构和训练过程是怎样的?什么是梯度下降法?BP神经网络建模的本质是什么?)
2、怎样划分训练集和测试集?为什么需要归一化?归一化是必须的吗? BP神经网络的常用激活函数有哪些?如何查看模型的参数?
3、BP神经网络参数的优化(隐含层神经元个数、学习率、初始权值和阈值等如何设置?什么是交叉验证?)
4、值得研究的若干问题(欠拟合与过拟合、泛化性能评价指标的设计、样本不平衡问题等)
5、极限学习机(Extreme Learning Machine, ELM)的基本原理(ELM的基本算法,“极限”体现在哪些地方?ELM 与 BP 神经网络的区别与联系)
6、BP神经网络、极限学习机的Python代码实现
7、案例演示:
1)近红外光谱回归拟合建模;
2)近红外光谱分类识别建模
支持向量机(SVM)及其在近红外光谱分析中的应用【理论讲解与案例演示实操练习】
1、SVM的基本原理(什么是经验误差最小和结构误差最小?SVM的本质是解决什么问题?SVM的四种典型结构是什么?核函数的作用是什么?什么是支持向量?)
2、SVM扩展知识(如何解决多分类问题?SVM除了建模型之外,还可以帮助我们做哪些事情?SVM的启发:样本重要性的排序及样本筛选)
3、SVM的Python代码实现
4、案例演示:近红外光谱分类识别建模
决策树、随机森林、Adaboost、XGBoost和LightGBM及其在近红外光谱分析中的应用【理论讲解与案例演示实操练习】
1、决策树的基本原理(微软小冰读心术的启示;什么是信息熵和信息增益?ID3算法和C4.5算法的区别与联系)
2、决策树的启发:变量重要性的排序及变量筛选
3、随机森林的基本原理与集成学习框架(为什么需要随机森林算法?广义与狭义意义下的“随机森林”分别指的是什么?“随机”提现在哪些地方?随机森林的本质是什么?)
4、Bagging与Boosting集成策略的区别
5、Adaboost算法的基本原理
6、Gradient Boosting Decision Tree (GBDT)模型的基本原理
7、XGBoost与LightGBM简介
8、决策树、随机森林、Adaboost、XGBoost与LightGBM的Python代码实现
9、案例演示:近红外光谱回归拟合建模
遗传算法及其在近红外光谱分析中的应用【理论讲解与案例演示实操练习】
1、群优化算法概述
2、遗传算法(Genetic Algorithm)的基本原理(什么是个体和种群?什么是适应度函数?选择、交叉与变异算子的原理与启发式策略)
3、遗传算法的Python代码实现
4、案例演示:基于二进制遗传算法的近红外光谱波长筛选
变量降维与特征选择算法及其在近红外光谱分析中的应用【理论讲解与案例演示实操练习】
1、主成分分析(PCA)的基本原理
2、偏最小二乘(PLS)的基本原理(PCA与PLS的区别与联系;PCA除了降维之外,还可以帮助我们做什么?)
3、近红外光谱波长选择算法的基本原理(Filter和Wrapper;前向与后向选择法;区间法;无信息变量消除法等)
4、PCA、PLS的Python代码实现
5、特征选择算法的Python代码实现
6、案例演示:
Pytorch环境搭建与编程入门【理论讲解与案例演示实操练习】
1、深度学习框架概述(PyTorch、Tensorflow、Keras等)
2、PyTorch简介(动态计算图与静态计算图机制、PyTorch的优点)
3、PyTorch的安装与环境配置(Pip vs. Conda包管理方式、验证是否安装成功)
4、张量(Tensor)的定义,以及与标量、向量、矩阵的区别与联系)
5、张量(Tensor)的常用属性与方法(dtype、device、requires_grad、cuda等)
6、张量(Tensor)的创建(直接创建、从numpy创建、依据概率分布创建)
7、张量(Tensor)的运算(加法、减法、矩阵乘法、哈达玛积(element wise)、除法、幂、开方、指数与对数、近似、裁剪)
8、张量(Tensor)的索引与切片
9、PyTorch的自动求导(Autograd)机制与计算图的理解
10、PyTorch常用工具包及API简介(torchvision(transforms、datasets、model)、torch.nn、torch.optim、torch.utils(Dataset、DataLoader)
卷积神经网络及其在近红外光谱分析中的应用【理论讲解与案例演示实操练习】
1、深度学习与传统机器学习的区别与联系(神经网络的隐含层数越多越好吗?深度学习与传统机器学习的本质区别是什么?)
2、卷积神经网络的基本原理(什么是卷积核?CNN的典型拓扑结构是怎样的?CNN的权值共享机制是什么?CNN提取的特征是怎样的?)
3、卷积神经网络参数调试技巧
4、卷积神经网络的Python代码实现
5、案例演示:基于卷积神经网络的近红外光谱建模
迁移学习及其在近红外光谱分析中的应用【理论讲解与案例演示实操练习】
1、迁移学习算法的基本原理(为什么需要迁移学习?为什么可以迁移学习?迁移学习的基本思想是什么?)
2、常用的迁移学习算法简介(基于实例、特征和模型,譬如:TrAdaboost算法)
3、基于卷积神经网络的迁移学习算法
4、迁移学习的Python代码实现
5、案例演示:基于迁移学习的近红外光谱的模型传递(模型移植)
自编码器及其在近红外光谱分析中的应用【理论讲解与案例演示实操练习】
1、自编码器(Auto-Encoder的工作原理)
2、常见的自编码器类型简介(降噪自编码器、深度自编码器、掩码自编码器等)
3、自编码器的Python代码实现
4、案例演示:
1)基于自编码器的近红外光谱数据预处理
2)基于自编码器的近红外光谱数据降维与有效特征提取
复习与答疑讨论
1、课程复习与总结(知识点梳理)
2、资料分享(图书、在线课程资源、源代码等)
3、科研与创新方法总结(如何利用Google Scholar、Sci-Hub、ResearchGate等工具查阅文献资料、配套的数据和代码?如何更好地撰写论文的Discussion部分?如果在算法层面上难以做出原创性的工作,如何结合实际问题提炼与挖掘创新点?)
4、答疑与讨论(大家提前把问题整理好)
最新PyTorch机器学习与深度学习技术方法与案例实践应用
近年来,随着AlphaGo、无人驾驶汽车、医学影像智慧辅助诊疗、ImageNet竞赛等热点事件的发生,人工智能迎来了新一轮的发展浪潮。尤其是深度学习技术,在许多行业都取得了颠覆性的成果。另外,近年来,Pytorch深度学习框架受到越来越多科研人员的关注和喜爱。因此,为了帮助广大科研人员更加系统地学习深度学习的基础理论知识及对应的Pytorch代码实现方法,Ai尚研修特举办“最新PyTorch机器学习与深度学习技术方法与案例实践应用”,旨在帮助学员掌握深度学习的基础知识,与经典机器学习算法的区别与联系,以及最新的迁移学习、循环神经网络、长短时记忆神经网络、时间卷积网络、对抗生成网络、Yolo目标检测算法、自编码器等算法的原理及其Pytorch编程实现方法。采用“理论讲解+案例实战+动手实操+讨论互动”相结合的方式,抽丝剥茧、深入浅出分析深度学习在应用时需要掌握的经验及编程技巧。
详情: 第一章、Python基础知识串讲
1、Python环境搭建(Python软件下载、安装与版本选择;PyCharm下载、安装;Python之Hello World;第三方模块的安装与使用;Python 2.x与Python 3.x对比)
2、Python基本语法(Python变量命名规则;Python基本数学运算;Python常用变量类型的定义与操作;Python程序注释)
3、Python流程控制(条件判断;for循环;while循环;break和continue关键字;嵌套循环与可变循环)
4、Python函数与对象(函数的定义与调用;函数的参数传递与返回值;变量作用域与全局变量;对象的创建与使用)
5、Matplotlib的安装与图形绘制(设置散点、线条、坐标轴、图例、注解等属性;绘制多图;图的嵌套)
6、科学计算模块库(Numpy的安装;ndarray类型属性与数组的创建;数组索引与切片;Numpy常用函数简介与使用;Pandas常用函数简介与使用)
第二章、PyTorch简介与环境搭建
1、深度学习框架概述(PyTorch、Tensorflow、Keras等)
2、PyTorch简介(PyTorch的版本、动态计算图与静态计算图、PyTorch的优点)
3、PyTorch的安装与环境配置(Pip vs. Conda包管理方式、验证是否安装成功、CPU版与GPU版的安装方法)
第三章、PyTorch编程入门与进阶
1、张量(Tensor)的定义,以及与标量、向量、矩阵的区别与联系)
2、张量(Tensor)的常用属性与方法(dtype、device、layout、requires_grad、cuda等)
3、张量(Tensor)的创建(直接创建、从numpy创建、依据数值创建、依据概率分布创建)
4、张量(Tensor)的运算(加法、减法、矩阵乘法、哈达玛积(element wise)、除法、幂、开方、指数与对数、近似、裁剪)
5、张量(Tensor)的索引与切片
6、PyTorch的自动求导(Autograd)机制与计算图的理解
7、PyTorch常用工具包及API简介(torchvision(transforms、datasets、model)、torch.nn、torch.optim、torch.utils(Dataset、DataLoader))
第四章、PyTorch前向型神经网络
1、BP神经网络的基本原理(人工神经网络的分类有哪些?有导师学习和无导师学习的区别是什么?BP神经网络的拓扑结构和训练过程是怎样的?什么是梯度下降法?BP神经网络建模的本质是什么?)
2、BP神经网络的Python代码实现(怎样划分训练集和测试集?为什么需要归一化?归一化是必须的吗?什么是梯度爆炸与梯度消失?)
3、PyTorch代码实现神经网络的基本流程(Data、Model、Loss、Gradient)及训练过程(Forward、Backward、Update)
4、案例演示:Linear模型、Logistic模型、Softmax函数输出、BP神经网络
5、实操练习
6、值得研究的若干问题(隐含层神经元个数、学习率、初始权值和阈值等如何设置?什么是交叉验证?过拟合(Overfitting)与欠拟合(Underfitting)、泛化性能评价指标的设计、样本不平衡问题、模型评价与模型选择(奥卡姆剃刀定律)等)
第五章、PyTorch卷积神经网络
1、深度学习简介(深度学习大事记:Model + Big Data + GPU + AlphaGo)
2、深度学习与传统机器学习的区别与联系(神经网络的隐含层数越多越好吗?深度学习与传统机器学习的本质区别是什么?)2、卷积神经网络的基本原理(什么是卷积核、池化核?CNN的典型拓扑结构是怎样的?CNN的权值共享机制是什么?CNN提取的特征是怎样的?)
3、卷积神经网络的进化史:LeNet、AlexNet、Vgg-16/19、GoogLeNet、ResNet等经典深度神经网络的区别与联系
4、利用PyTorch构建卷积神经网络(Convolution层、Batch Normalization层、Pooling层、Dropout层、Flatten层等)
5、卷积神经网络调参技巧(卷积核尺寸、卷积核个数、移动步长、补零操作、池化核尺寸等参数与特征图的维度,以及模型参数量之间的关系是怎样的?)
6、案例讲解:
(1)CNN预训练模型实现物体识别
(2)利用卷积神经网络抽取抽象特征
(3)自定义卷积神经网络拓扑结构7、实操练习
第六章、PyTorch迁移学习
1、迁移学习算法的基本原理(为什么需要迁移学习?为什么可以迁移学习?迁移学习的基本思想是什么?)
2、基于深度神经网络模型的迁移学习算法
3、案例讲解:猫狗大战(Dogs vs. Cats)4、实操练习
第七章、PyTorch生成式对抗网络
1、生成式对抗网络GAN(什么是对抗生成网络?为什么需要对抗生成网络?对抗生成网络可以帮我们做什么?GAN给我们带来的启示)
2、GAN的基本原理及GAN进化史
3、案例讲解:GAN的PyTorch代码实现(手写数字生成)
4、实操练习
第八章、PyTorch RNN与LSTM
1、循环神经网络RNN的基本工作原理
2、长短时记忆网络LSTM的基本工作原理
3、案例讲解:时间序列预测(北京市污染物预测)
4、实操练习
第九章、时间卷积网络(Temporal Convolutional Network, TCN)
1、时间卷积网络(TCN)的基本原理
2、TCN与1D CNN、LSTM的区别与联系
3、案例讲解: 1)时间序列预测:新冠肺炎疫情预测 2)序列-序列分类:人体动作识别
4、实操练习
第十章、基于深度学习的视频分类案例实战
1、基于深度学习的视频分类基本原理
2、读取视频流文件并抽取图像帧
3、利用预训练CNN模型提取指定层的特征图
4、自定义构建LSTM神经网络模型
5、案例讲解:HMDB51数据集视频分类
6、实操练习
第十一章、PyTorch目标检测
1、什么是目标检测?目标检测与目标识别的区别与联系
2、YOLO模型的工作原理,YOLO模型与传统目标检测算法的区别
3、案例讲解:
(1)利用预训练好的YOLO模型实现目标检测(图像检测、视频检测、摄像头实时检测)
2)数据标注演示(LabelImage使用方法介绍)
(3)训练自己的目标检测数据集
4、实操练习
第十二章、自编码器
1、什么是自编码器(Auto-Encoder, AE)?
2、经典的几种自编码器模型原理介绍(AE、Denoising AE, Masked AE)
3、案例讲解:
(1)基于自编码器的噪声去除
(2)基于自编码器的手写数字特征提取与重构
(3)基于掩码自编码器的缺失图像重构
4、实操练习
第十三章、复习与答疑讨论
1、课程相关资料拷贝与分享
2、答疑与讨论(大家提前把问题整理好)