Python完整教程

 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完整教程【从零基础入门到精通,看完这一篇就够了】icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzU0MDQ3MDk3NA==&mid=2247558999&idx=4&sn=5fa6701855357cb2f9027de4fda42c80&chksm=fb3b1c86cc4c95905005671e60a65d3724065d0953ad2268974a4aa9c19f0bfd81e4404e6fc3&token=148639736&lang=zh_CN#rd

你可能感兴趣的:(Python,python,经验分享)