Python由荷兰国家数学与计算机科学研究中心的吉多·范罗苏姆于1990年代初设计,作为一门叫作ABC语言的替代品。
[1] Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言,
[2] 随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。
[3] Python在各个编程语言中比较适合新手学习,Python解释器易于扩展,可以使用C、C++或其他可以通过C调用的语言扩展新的功能和数据类型。
[4] Python也可用于可定制化软件中的扩展程序语言。
Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器码。
第一天
模块一、编程入门与进阶提高
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、图形的布局(多个子图绘制、规则与不规则布局绘制、向画布中任意位置添加坐标轴) 6、高级图形绘制(3D图、等高线图、棉棒图、哑铃图、漏斗图、树状图、华夫饼图等) 7、坐标轴高阶应用(共享绘图区域的坐标轴、坐标轴刻度样式设置、控制坐标轴的显示、移动坐标轴的位置) 8、实操练习 |
作业:
根据给定的图像处理算法,编写相应的Python程序,实现图像的读取、处理和结果存储等功能。
第二天
模块二、科研数据可视化
Seaborn图形绘制 | 1、Seaborn简介与安装 2、Seaborn基本图像的绘制(统计关系、分类数据、数据集分布等) 3、Seaborn风格与颜色管理 4、Seaborn多图的绘制 5、实操练习 |
Pyecharts图形绘制 | 1、Pyecahrts简介与安装 2、Pyecharts基础知识(快速绘制图表、认识图表类、配置项、渲染图表) 3、常用图表的绘制(折线图、饼图、圆环图、散点图、柱状图、漏斗图、桑基图等) 4、组合图表的绘制(并行多图、顺序多图、选项卡多图、时间线轮播多图等) 5、实操练习 |
作业:
对给定的原始数据进行基本的统计分析,并以可视化的方式将分析结果予以呈现。
模块三、信息检索与常用科研工具
信息检索与常用科研工具 | 1、如何无障碍地访问Google、YouTube等网站?(谷歌访问助手、VPN等) 2、如何查阅文献资料?怎样能够保证对最新论文的追踪? 3、Google Scholar、ResearchGate的使用方法 4、应该去哪些地方查找与论文配套的数据和代码? 5、文献管理工具的使用(Endnote、Zotero等) 6、当代码出现错误时,应该如何高效率解决? 7、实操练习 |
作业:
检索自己的研究方向内,国内外做的最好的各五个团队,列出同行专家姓名、最相关的代表性论文10篇。
第三天
模块四、科技论文写作与技巧
科技论文写作与技巧 | 1、科技论文结构解析(Title、Abstract、Keywords、Introduction、Materials & Methods、Results、Discussion、Conclusion、References) 2、如何高效率撰写专业论文? 3、SCI不同分区的论文差别在哪些地方? 4、从审稿人的角度看,SCI期刊论文需要具备哪些要素?(审稿人关注的点有哪些?如何回应审稿人提出的意见?) 5、如何提炼与挖掘创新点?(如果在算法层面上难以做出原创性的工作,如何结合自己的实际问题提炼与挖掘创新点?) 6、实操练习 |
作业:
自拟一个选题(或根据给定的选题),搭建论文初步框架,并完成Introduction部分的撰写(包括对国内外相关文献的综述)。
模块五、数据预处理与特征工程
数据预处理与特征工程 | 1、描述性统计分析(数据的频数分析:统计直方图;数据的集中趋势分析:算数平均值标准差;数据的分布可视化;数据的相关分析:相关系数) 2、Model-Centric AI与Data Centric AI的本质区别与联系 3、数据异常值、缺失值处理 4、数据离散化及编码处理 5、手动生成新特征 6、数据标准化与归一化(为什么需要标准化与归一化?) 7、实操练习 |
作业:
对给定的原始数据进行预处理与特征工程处理,并以可视化的方式将处理结果予以呈现。
模块六、多元线性回归
多元线性回归 | 1、多元线性回归模型(回归参数的估计、回归方程的系数) 2、岭回归模型(工作原理、岭参数k的选择、用岭回归选择变量) 3、LASSO模型(工作原理、特征选择、建模预测、超参数调节) 4、Elastic Net模型(工作原理、建模预测、超参数调节) 5、案例实践 6、实操练习 |
作业:
以“数据为中心”为原则,对给定的数据集进行建模,建模方法统一用随机森林,着重对数据预处理、特征提取、数据增强等建模前步骤的分析,以及对建模结果的深入分析讨论与优化,撰写研究报告一份。
第四天、
模块七、机器学习
前向型神经网络 | 1、BP神经网络的基本原理(人工神经网络的分类有哪些?BP神经网络的拓扑结构和训练过程是怎样的?什么是梯度下降法?) 2、BP神经网络的Python代码实现(怎样划分训练集和测试集?为什么需要归一化?归一化是必须的吗?什么是梯度爆炸与梯度消失?) 3、BP神经网络参数的优化(隐含层神经元个数、学习率、初始权值和阈值等如何设置?什么是交叉验证?) 4、值得研究的若干问题(欠拟合与过拟合、泛化性能评价指标的设计等) 5、案例演示一:近红外光谱汽油辛烷值预测(回归拟合) 6、案例演示二:MNIST手写数字识别(分类识别) 7、实操练习 |
支持向量机、决策树、随机森林、XGBoost和LightGBM | 1、SVM的基本原理(SVM的本质是解决什么问题?SVM的四种典型结构是什么?核函数的作用是什么?什么是支持向量?) 2、SVM扩展知识(如何解决多分类问题?SVM除了建模型之外,还可以帮助我们做哪些事情?) 3、决策树的基本原理(微软小冰读心术的启示;什么是信息熵和信息增益?ID3算法和C4.5算法的区别与联系);决策树除了建模型之外,还可以帮我们做什么事情? 4、随机森林的基本原理(为什么需要随机森林算法?广义与狭义意义下的“随机森林”分别指的是什么?“随机”提现在哪些地方?随机森林的本质是什么?)怎样可视化、解读随机森林的结果? 5、Bagging与Boosting的区别与联系 6、AdaBoost vs. Gradient Boosting的工作原理 7、 常用的GBDT算法框架(XGBoost、LightGBM) 8、SVM、决策树、随机森林、XGBoost和LightGBM的Python代码实现 9、案例实践一:乳腺癌肿瘤诊断 10、案例实践二:混凝土强度预测 11、实操练习 |
第五天
群优化算法 | 1、遗传算法(Genetic Algorithm, GA)的基本原理(以遗传算法为代表的群优化算法的基本思想是什么?目前国内外的研究热点在哪些方面?) 2、遗传算法的Python代码实现 3、案例实践一:一元函数的寻优计算(极大值与极小值) 4、案例实践二:离散变量的寻优计算(基于遗传算法的特征变量筛选) 5、实操练习 |
变量降维 特征选择 | 1、变量降维与特征选择在概念上的区分 2、主成分分析(PCA)、偏最小二乘(PLS)的基本原理(PCA与PLS的区别与联系;PCA除了降维之外,还可以帮助我们做什么?) 3、常见的特征选择方法(优化搜索、Filter和Wrapper等;前向与后向选择法;区间法;无信息变量消除法;正则稀疏优化方法等) 4、案例实践:变量降维与特征选择的Python代码实现 5、实操练习 |
第六天
模块八、深度学习
卷积神经网络 | 1、深度学习与传统机器学习的区别与联系(隐含层数越多越好吗?深度学习与传统机器学习的本质区别是什么?) 2、卷积神经网络的基本原理(什么是卷积核?CNN的典型拓扑结构是怎样的?CNN的权值共享机制是什么?CNN提取的特征是怎样的?) 3、LeNet、AlexNet、Vgg-16/19、GoogLeNet、ResNet 等经典深度神经网络的区别与联系 4、Pytorch深度学习框架简介、PyTorch的安装与环境配置 5、PyTorch常用工具包及API简介:张量Tensor的定义、属性、创建、运算、索引与切片、torchvision(transforms、datasets、model)、torch.nn、torch.optim、torch.utils(Dataset、DataLoader) 6、预训练模型(Alexnet、Vgg-16/19、GoogLeNet、ResNet 等) 7、案例讲解: (1)CNN 预训练模型实现物体识别 (2)利用卷积神经网络抽取抽象特征 (3)自定义卷积神经网络拓扑结构 (4)1D CNN 模型解决回归拟合预测问题 8、实操练习 |
网络优化 调参技巧 | 1、网络拓扑结构优化 2、优化算法(梯度下降、随机梯度下降、小批量随机梯度下降、动量法、 Adam 等) 3、调参技巧(参数初始化、数据预处理、数据扩增、批量归一化、超参数优化、网络正则化等) 4、案例讲解:卷积神经网络模型优化 5、实操练习 |
作业:
自拟选题(或根据给定的选题),利用深度学习方法建立模型,并对模型参数进行优化,撰写研究报告一份。
第七天
迁移学习 | 1、迁移学习算法的基本原理(为什么需要迁移学习?为什么可以迁移学习?迁移学习的基本思想是什么?) 2、基于深度神经网络模型的迁移学习算法 3、案例讲解:猫狗大战(Dogs vs. Cats) 4、实操练习 |
循环神经网络 长短时记忆神经网络 | 1、循环神经网络(RNN)的基本原理 2、长短时记忆神经网络(LSTM)的基本原理 3、RNN与LSTM的区别与联系 4、案例讲解: 1)时间序列预测:新冠肺炎疫情预测 2)序列-序列分类:人体动作识别 5、实操练习 |
生成式对抗网络 | 1、生成式对抗网络 GAN(什么是对抗生成网络?为什么需要对抗生成网络?对抗生成网络可以帮我们做什么?GAN 给我们带来的启示) 2、GAN 的基本原理 3、案例讲解:GAN 的 Python 代码实现(向日葵花图像的自动生成) 4、实操练习 |
自编码器 | 1、自编码器的组成及基本工作原理 2、自编码器的变种(栈式自编码器、稀疏自编码器、去噪自编码器、卷积自编码器、掩码自编码器等)及其工作原理 3、案例讲解:基于自编码器的图像分类 4、实操练习 |
第八天
YOLO 目标检测算法 | 1、什么是目标检测?目标检测与目标识别的区别与联系 2、YOLO 模型的工作原理 3、案例讲解: (1)使用预训练模型实现图像、视频等实时目标检测 (2)训练自己的数据集:新冠疫情佩戴口罩识别 4、实操练习 |
模块九、答疑讨论
答疑讨论 | 1、相关学习资料分享与拷贝(图书推荐、在线课程推荐等) 2、建立微信群,便于后期的讨论与答疑 3、答疑讨论(提前把问题准备好) |
原文:Python完整教程【从零基础入门到精通,看完这一篇就够了】https://mp.weixin.qq.com/s?__biz=MzU0MDQ3MDk3NA==&mid=2247558999&idx=4&sn=5fa6701855357cb2f9027de4fda42c80&chksm=fb3b1c86cc4c95905005671e60a65d3724065d0953ad2268974a4aa9c19f0bfd81e4404e6fc3&token=148639736&lang=zh_CN#rd