近年来,随着AlphaGo、无人驾驶汽车、医学影像智慧辅助诊疗、ImageNet竞赛等热点事件的发生,人工智能迎来了新一轮的发展浪潮。尤其是深度学习技术,在许多行业都取得了颠覆性的成果。另外,近年来,Pytorch深度学习框架受到越来越多科研人员的关注和喜爱。
本次内容在掌握深度学习的基础知识,与经典机器学习算法的区别与联系,以及最新的迁移学习、循环神经网络、长短时记忆神经网络、时间卷积网络、对抗生成网络、Yolo目标检测算法、自编码器等算法的原理及其Pytorch编程实现方法。
【方式】:直播+永久回放+长期答疑群辅助+全套课件资料
【专家】:郁磊副教授:长期从事Python、MATLAB、Pytorch机器学习及深度学习等研究工作,具备良好的数学及信号处理基础,熟悉如神经网络、支持向量机、决策树、随机森林等,以及群优化算法,如遗传算法、蚁群算法、蝙蝠算法等,近些年一直在对深度学习核心技术进行研究,主持参与多项相关重点项目研发及基金项目,且精通多种编程工具,如 MATLAB、Python、 C++、C#、VB、Java、Qt 等。熟悉各种时域、频域和非线性分析方法,如傅里叶变换、小波变换、李雅普诺夫指数、 多尺度熵、压缩感知等,以及各种特征选择与降维方法,如主成分分析、随机投影、互信息、 非负矩阵分解、稀疏优化等。 熟悉数据库及网络编程,擅长 Apache + MySQL + PHP 架构开发,以及移动端 Android App 开发等。 熟悉可穿戴设备硬件系统的开发,具备心电、肌电、血压、血氧饱和度、惯性传感器等 生理信号采集系统的开发经验。同时,熟悉常用的无线传感器网络通信协议,如 ZigBee、 Wifi、Bluetooth 等。开展Python相关课程多大百余场,发布多篇论文并著有《MATLAB神经网络 43 个案例分析》和《MATLAB智能算法 30 个案例分析(第二版)》等。
【导师随行】:
建立导师助学交流群,长期进行答疑及经验分享,辅助学习及应用。
学习结束后不定期召开线上答疑交流,辅助学习巩固工作实践问题处理交流
后期可邀请导师进驻团队/课题组开展一对一的团队建设、人才培养、学术交流、学术报告、问题诊断、纵横向项目合作等多种形式的合作。
【内容介绍】:
《第一章、Python基础知识串讲 》:
Python环境搭建(Python软件下载、安装与版本选择;PyCharm下载、安装;Python之Hello World;第三方模块的安装与使用;Python 2.x与Python 3.x对比)
Python基本语法(Python变量命名规则;Python基本数学运算;Python常用变量类型的定义与操作;Python程序注释)
Python流程控制(条件判断;for循环;while循环;break和continue关键字;嵌套循环与可变循环)
Python函数与对象(函数的定义与调用;函数的参数传递与返回值;变量作用域与全局变量;对象的创建与使用)
Matplotlib的安装与图形绘制(设置散点、线条、坐标轴、图例、注解等属性;绘制多图;图的嵌套)
科学计算模块库(Numpy的安装;ndarray类型属性与数组的创建;数组索引与切片;Numpy常用函数简介与使用;Pandas常用函数简介与使用)
《第二章、PyTorch简介与环境搭建 》:
深度学习框架概述(PyTorch、Tensorflow、Keras等)
PyTorch简介(PyTorch的版本、动态计算图与静态计算图、PyTorch的优点)
PyTorch的安装与环境配置(Pip vs. Conda包管理方式、验证是否安装成功、CPU版与GPU版的安装方法)
《第三章、PyTorch编程入门与进阶 》:
张量(Tensor)的定义,以及与标量、向量、矩阵的区别与联系)
张量(Tensor)的常用属性与方法(dtype、device、layout、requires_grad、cuda等)
张量(Tensor)的创建(直接创建、从numpy创建、依据数值创建、依据概率分布创建)
张量(Tensor)的运算(加法、减法、矩阵乘法、哈达玛积(element wise)、除法、幂、开方、指数与对数、近似、裁剪)
张量(Tensor)的索引与切片
PyTorch的自动求导(Autograd)机制与计算图的理解
PyTorch常用工具包及API简介(torchvision(transforms、datasets、model)、torch.nn、torch.optim、torch.utils(Dataset、DataLoader))
《第四章、PyTorch前向型神经网络 》:
BP神经网络的基本原理(人工神经网络的分类有哪些?有导师学习和无导师学习的区别是什么?BP神经网络的拓扑结构和训练过程是怎样的?什么是梯度下降法?BP神经网络建模的本质是什么?)
BP神经网络的Python代码实现(怎样划分训练集和测试集?为什么需要归一化?归一化是必须的吗?什么是梯度爆炸与梯度消失?)
PyTorch代码实现神经网络的基本流程(Data、Model、Loss、Gradient)及训练过程(Forward、Backward、Update)
案例演示:Linear模型、Logistic模型、Softmax函数输出、BP神经网络
实操练习
值得研究的若干问题(隐含层神经元个数、学习率、初始权值和阈值等如何设置?什么是交叉验证?过拟合(Overfitting)与欠拟合(Underfitting)、泛化性能评价指标的设计、样本不平衡问题、模型评价与模型选择(奥卡姆剃刀定律)等)
《 第五章、PyTorch卷积神经网络 》:
深度学习简介(深度学习大事记:Model + Big Data + GPU + AlphaGo)
深度学习与传统机器学习的区别与联系(神经网络的隐含层数越多越好吗?深度学习与传统机器学习的本质区别是什么?)
卷积神经网络的基本原理(什么是卷积核、池化核?CNN的典型拓扑结构是怎样的?CNN的权值共享机制是什么?CNN提取的特征是怎样的?)
卷积神经网络的进化史:LeNet、AlexNet、Vgg-16/19、GoogLeNet、ResNet等经典深度神经网络的区别与联系
利用PyTorch构建卷积神经网络(Convolution层、Batch Normalization层、Pooling层、Dropout层、Flatten层等)
卷积神经网络调参技巧(卷积核尺寸、卷积核个数、移动步长、补零操作、池化核尺寸等参数与特征图的维度,以及模型参数量之间的关系是怎样的?)
案例讲解:
(1)CNN预训练模型实现物体识别
(2)利用卷积神经网络抽取抽象特征
(3)自定义卷积神经网络拓扑结构
实操练习
《 第六章、PyTorch迁移学习 》:
迁移学习算法的基本原理(为什么需要迁移学习?为什么可以迁移学习?迁移学习的基本思想是什么?)
基于深度神经网络模型的迁移学习算法
案例讲解:猫狗大战(Dogs vs. Cats)
实操练习
《 第七章、PyTorch生成式对抗网络 》:
生成式对抗网络GAN(什么是对抗生成网络?为什么需要对抗生成网络?对抗生成网络可以帮我们做什么?GAN给我们带来的启示)
GAN的基本原理及GAN进化史
案例讲解:GAN的PyTorch代码实现(手写数字生成)
实操练习
《第八章、PyTorch RNN与LSTM 》:
循环神经网络RNN的基本工作原理
长短时记忆网络LSTM的基本工作原理
案例讲解:时间序列预测(北京市污染物预测)
实操练习
《 第九章、时间卷积网络(Temporal Convolutional Network, TCN)》:
时间卷积网络(TCN)的基本原理
TCN与1D CNN、LSTM的区别与联系
案例讲解:
(1)时间序列预测:新冠肺炎疫情预测
(2)序列-序列分类:人体动作识别
《第十章、基于深度学习的视频分类案例实战 》:
基于深度学习的视频分类基本原理
读取视频流文件并抽取图像帧
利用预训练CNN模型提取指定层的特征图
自定义构建LSTM神经网络模型
案例讲解:HMDB51数据集视频分类
《 第十一章、PyTorch目标检测 》:
什么是目标检测?目标检测与目标识别的区别与联系
YOLO模型的工作原理,YOLO模型与传统目标检测算法的区别
案例讲解:
(1)利用预训练好的YOLO模型实现目标检测(图像检测、视频检测、摄像头实时检测)
(2)数据标注演示(LabelImage使用方法介绍)
(3)训练自己的目标检测数据集
实操练习
《第十二章、自编码器 》:
什么是自编码器(Auto-Encoder, AE)?
经典的几种自编码器模型原理介绍(AE、Denoising AE, Masked AE)
案例讲解:
(1)基于自编码器的噪声去除
(2)基于自编码器的手写数字特征提取与重构
(3)基于掩码自编码器的缺失图像重构
实操练习
《第十三章、复习与答疑讨论 》:
课程相关资料拷贝与分享
答疑与讨论(大家提前把问题整理好)