Python与机器学习初步
Python与机器学习初步
1万+ 人选课
更新日期:2024/05/02
开课时间2020/09/15 - 2020/12/31
课程周期16 周
开课状态已结课
每周学时-
课程简介

       当前AI时代的核心是基于神经元网络的机器学习,而Python是应用机器学习的首选语言。

本课程通过案例学习,可以了解:

      (1)Python编程基础;

      (2)神经元网络的特点、原理和用途;

      (3)机器学习的发展现状和应用场景;

      (4)用Python和Keras、Tensorflow构建神经元网络,并在PC、iOS系统中实现图像识别的方法。

       本课程采用线上线下混合学习教学的活动安排:线下课堂教学以答疑解惑为主,针对网络课程中不明白,或者有疑问的地方进行解答;线上学习,则让学生根据网络上的视频以及对于练习题自主学习。

       完成课程后,学习者将对机器学习有比较具体的认识,有助于在中小学开展人工智能教学及在学习分析技术支持下的个性化教学。


课程大纲
Python基础速成
1、引言 - 准备开始
1.1、引言
1.2、安装Python开发环境
1.3、关于学习的建议
1.4、练习与讨论
2、Python用作计算器 - 编写最简单的程序
2.1、日常问题计算
2.2、屏幕输出格式控制
2.3、数据转换
2.4、科学问题计算
2.5、从键盘输入数据
2.6、分段输出结果
2.7、练习与讨论
3、输入/输出与流程控制
3.1、命令式编程思想
3.2、活动-编写温度转换程序
3.3、编写温度转换程序(一起动手编程序)
3.4、练习-输入姓名和年龄
3.5、练习-判断奇偶数
3.6、格式化输出
3.7、练习-检查密码字符串
3.8、活动-为温度转换程序增加功能
3.9、为温度转换程序增加功能(一起动手编程序)
3.10、PyCharm字体和PEP8格式
3.11、用PyCharm调试程序
3.12、了解:正则表达式检查字符串格式
3.13、练习与讨论
4、List和Tuple的操作
4.1、存放集合数据——列表、元组、字典(一起动手编程)
4.2、练习-创建列表
4.3、练习-Tuple
4.4、练习-Tuple和List存放数据
4.5、练习-过滤List
4.6、练习-两个List的交集
4.7、练习-List Comprehension
4.8、随机生成10个年龄
4.9、练习-随机生成List数据
4.10、练习-多人猜数字游戏
4.11、猜数字游戏效果样例
4.12、练习与讨论
5、Functions(函数)
5.1、案例 - 函数的作用
5.2、新建课程目录
5.3、练习-旱季和雨季
5.4、函数实现分段统计年龄
5.5、练习-编写旱季/雨季函数
5.6、练习-取List的头和尾
5.7、新建课程目录
5.8、练习-消除List重复项
5.9、Argument (函数参数)
5.10、新建课程目录
5.11、新建课程目录
5.12、List作为函数参数
5.13、Hangman猜字游戏
5.14、新建课程目录
5.15、练习-编写Hangman猜单词游戏
5.16、新建课程目录
5.17、Hangman游戏升级
5.18、练习-从文件读入词汇
5.19、清理词汇
5.20、去除换行符
5.21、练习-去除文件中不可用的词汇
5.22、Hangman的猜测
5.23、练习-编写辅助猜单词的程序
5.24、练习与讨论
数据预处理与可视化
6、Matplotlib作图
6.1、直方图(Bar Chart)
6.2、练习-第二次世界大战阵亡人数
6.3、练习-首字母单词数Bar Chart
6.4、散点图(Scatter Plot)
6.5、练习-绘制散点图
6.6、折线图(Line Plot)
6.7、练习-折线图
6.8、饼图(Pie Chart)
6.9、练习-绘制饼图
6.10、Histogram(条形分布图)
6.11练习-Histogram看数据分布
6.12、新建课程目录
6.13、pandas读取csv格式(数据准备)
6.14、pandas读取csv格式(代码实现)
6.15、练习-绘制某日气温和PM值的散点图
6.16、了解更多-中文显示
6.17、练习与讨论
7、Pandas数据清理
7.1、用pandas读取各种数据源
7.2、从硬盘读取文件信息
7.3、文件数据统计
7.4、练习-统计一个目录下的文件数量
7.5、按文件扩展名统计数量
7.6、练习-按文件扩展名统计文件数量
7.7、用Matplotlib显示文件数量
7.8、练习-用Bar Chart和Pie Chart,按扩展名展示文件数量
7.9、pandas统计文件数量
7.10、练习-用pandas的groupby统计文件数量
7.11、Matplotlib显示dataframe
7.12、微项目-图形化呈现文件所占空间
7.13、项目-图形显示各类文件所占容量
7.14、练习与讨论
8、多维度查看数据
8.1、问题背景和数据集编辑教学内容
8.2、显示所有列编辑教学内容
8.3、练习-加载数据集编辑教学内容
8.4、哪类客户消费更多?编辑教学内容
8.5、练习-交叉表汇总账单数量编辑教学内容
8.6、多维数据作图编辑教学内容
8.7、练习-图形显示交叉表数据编辑教学内容
8.8、项目1- 小费一般多少比例?编辑教学内容
8.9、sns.stripplot编辑教学内容
8.10、项目-餐饮小费比例分析编辑教学内容
8.11、项目2 – Titanic(泰坦尼克号的灾难)编辑教学内容
8.12、项目-泰坦尼克乘客数据分析编辑教学内容
8.13、了解更多-读取SQL Server数据库编辑教学内容
8..14、练习与讨论
Scikit-Learn机器学习
9、机器学习的基本流程
9.1、案例-泰坦尼克号幸存者模型
9.2、数据预处理
9.3、特征选择
9.4、多种算法的比较
9.5、数据管道实现自动化
9.6、模型参数调整
10、机器学习回归模型项目
10.1、问题背景与数据集
10.2、加载并清理数据
10.3、数据准备
10.4、评估算法精度
10.5、Ensemble方法提高精度
10.6、参数优化与调整
11、机器学习分类模型项目
11.1、问题背景与数据集
11.2、加载并清理数据
11.3、数据准备
11.4、评估算法精度
11.5、用Ensemble方法提高精度
11.6、参数优化与调整
深度学习神经元网络
12、手把手体验深度学习
12.1、怎样让机器自动学习——极简理论编辑教学内容
12.2、动手体验神经元网络(玩玩看)编辑教学内容
12.3、构造神经元网络需要的软件工具编辑教学内容
12.4、安装Tensorflow编辑教学内容
12.5、构造神经元网络识别手写数字—准备数据编辑教学内容
12.6、构建神经元网络模型编辑教学内容
12.7、训练神经元网络编辑教学内容
12.8、测试神经元网络模型编辑教学内容
12.9、练习与讨论
13、摄像头识别手写数字
13.1、引言编辑教学内容
13.2、练习-用opencv打开图片编辑教学内容
13.3、中心切割图片_Center Crop编辑教学内容
13.4、练习-Center Crop编辑教学内容
13.5、进一步处理图片编辑教学内容
13.6、练习-黑白翻转处理编辑教学内容
13.7、训练MNIST分类模型(DNN全连接)编辑教学内容
13.8、练习-训练MNIST模型,避免过度拟合编辑教学内容
13.9、识别手写数字编辑教学内容
13.10、练习-用MNIST模型识别手写数字照片
14、用CNN提高识别率
14.1、抓取图片特征编辑教学内容
14.2、练习-手动计算Convolution和Max Pooling编辑教学内容
14.3、构造CNN神经元网络编辑教学内容
14.4、练习-构造CNN网络编辑教学内容
14.5、加载训练数据_训练CNN模型编辑教学内容
14.6、练习-训练CNN模型编辑教学内容
14.7、了解-GPU提高训练速度编辑教学内容
14.8、测试CNN模型编辑教学内容
14.9、练习-测试CNN模型编辑教学内容
14.10、项目-CNN识别猫狗
15、迁移学习进一步提高识别率
15.1、小数据量和有限的硬件性能
15.2、迁移学习极简理论
15.3、微项目-VGG16模型提高猫狗识别率