教程总体简介:机器学习(常用科学计算库的使用)基础定位、目标 定位 目标 1.1 人工智能概述 学习目标 1 人工智能应用场景 2 人工智能小案例 3 人工智能发展必备三要素: 4 人工智能、机器学习和深度学习 4 小结 机器学习概述 1.4 机器学习工作流程 1 什么是机器学习 Pandas 5.8 高级处理-数据离散化 1 为什么要离散化 2 什么是数据的离散化 3 股票的涨跌幅离散化 3.1 读取股票的数据 3.2 将股票涨跌幅数据进行分组 3.3 股票涨跌幅分组数据变成one-hot编码 5.10 高级处理-交叉表与透视表 1 交叉表与透视表什么作用 2 案例分析 2.1 数据准备 2.2 查看效果 2.3 使用pivot_table(透视表)实现 5.12 案例 1 需求 2 实现 2.1 问题一: 完整机器学习项目的流程(拓展阅读) 独立同分布IID(independent and identically distributed) 1.独立同分布(i.i.d.) 2.简单解释 — 独立、同分布、独立同分布 3.机器学习领域的重要假设 4.目前发展 拓展阅读 1.6 模型评估 2 回归模型评估 3 拟合 1.7 Azure机器学习模型搭建实验 Azure平台简介 1.8 深度学习简介 1 深度学习 —— 神经网络简介 2 深度学习各层负责内容 2.1 库的安装 小结 机器学习基础环境安装与使用 2.2 Jupyter Notebook使用 一级标题 4 Jupyter Notebook中自动补全代码等相关功能拓展【了解】 3.1 Matplotlib之HelloWorld 1 什么是Matplotlib 3 实现一个简单的Matplotlib画图 — 以折线图为例 3.2 图形绘制流程: 3.3 折线图绘制与显示 4 认识Matplotlib图像结构(了解) 3.2 基础绘图功能 — 以折线图为例 1 完善原始折线图 — 给图形添加辅助功能 1.1 准备数据并画出初始折线图 1.2 添加自定义x,y刻度 1.3 中文显示问题解决 1.4 添加网格显示 1.5 添加描述信息 1.6 图像保存 2 在一个坐标系中绘制多个图像 2.1 多次plot 2.2 设置图形风格 2.3 显示图例 2.4 练一练 3 多个坐标系显示— plt.subplots(面向对象的画图方法) 4 折线图的应用场景 3.3 常见图形绘制 1 常见图形种类及意义 2 散点图绘制 4.1 Numpy优势 2 ndarray介绍 3 ndarray与Python原生list运算效率对比 Numpy 4.2 N维数组-ndarray 4.3 基本操作 1 生成数组的方法 1.1 生成0和1的数组 1.2 从现有数组生成 2 数组的索引、切片 3 形状修改 3.1 ndarray.reshape(shape, order) 4 类型修改 4.2 ndarray.tostring([order])或者ndarray.tobytes([order]) 4.3 jupyter输出太大可能导致崩溃问题【了解】 5 数组的去重 5.1 np.unique() 4.5 数组间运算 1 数组与数的运算 4.6 数学:矩阵 1 矩阵和向量 1.1 矩阵 1.2 向量 2 加法和标量乘法 3 矩阵向量乘法 5 矩阵乘法的性质 6 逆、转置 7 矩阵运算 7.1 矩阵乘法api: 5.2 Pandas数据结构 1.Series 2.DataFrame 3.MultiIndex与Panel 3.2 Panel 5.6 文件读取与存储 1 CSV 1.1 read_csv 2 HDF5 2.1 read_hdf与to_hdf 3 JSON 3.2 read_josn 案例 3.3 to_json
完整笔记资料代码:gitee.com/yinuo112/AI…
感兴趣的小伙伴可以自取哦~
全套教程部分目录:
部分文件图片:
机器学习基础环境安装与使用
学习目标
-
完成机器学习基础阶段的环境安装
-
学会使用jupyter notebook平台完成代码编写运行
2.2 Jupyter Notebook使用
学习目标
-
目标
- 学会使用Jupyter Notebook
1 Jupyter Notebook介绍
Jupyter项目是一个非盈利的开源项目,源于2014年的ipython项目,因为它逐渐发展为支持跨所有编程语言的交互式数据科学和科学计算
- Jupyter Notebook,原名IPython Notbook,是IPython的加强网页版,一个开源Web应用程序
- 名字源自Julia、Python 和 R(数据科学的三种开源语言)
- 是一款程序员和科学工作者的编程/文档/笔记/展示软件
- .ipynb文件格式是用于计算型叙述的JSON文档格式的正式规范
2 为什么使用Jupyter Notebook?
-
传统软件开发:工程/目标明确
- 需求分析,设计架构,开发模块,测试
-
数据挖掘:艺术/目标不明确
- 目的是具体的洞察目标,而不是机械的完成任务
- 通过执行代码来理解问题
- 迭代式地改进代码来改进解决方法
实时运行的代码、叙事性的文本和可视化被整合在一起,方便使用代码和数据来讲述故事
对比Jupyter Notebook和Pycharm
- 画图
- 数据展示
-
总结:Jupyter Notebook 相比 Pycharm 在画图和数据展示方面更有优势。
3 Jupyter Notebook的使用-helloworld
3.1 界面启动、创建文件
-
3.1.1 界面启动
环境搭建好后,本机输入jupyter notebook命令,会自动弹出浏览器窗口打开Jupyter Notebook
# 进入虚拟环境
workon ai
# 输入命令
jupyter notebook
本地notebook的默认URL为:[
想让notebook打开指定目录,只要进入此目录后执行命令即可
-
3.1.2 新建notebook文档
- notebook的文档格式是
.ipynb
- notebook的文档格式是
-
3.1.3 内容界面操作-helloworld
**标题栏:**点击标题(如Untitled)修改文档名
编辑栏:
3.2 cell操作
-
什么是cell?
- cell:一对In Out会话被视作一个代码单元,称为cell
- cell行号前的 * ,表示代码正在运行
Jupyter支持两种模式:
-
编辑模式(Enter)
- 命令模式下
回车Enter
或鼠标双击
cell进入编辑模式 - 可以操作cell内文本或代码,剪切/复制/粘贴移动等操作
- 命令模式下
-
命令模式(Esc)
-
按
Esc
退出编辑,进入命令模式 -
可以操作cell单元本身进行剪切/复制/粘贴/移动等操作
-
3.2.1 鼠标操作
3.2.2 快捷键操作
-
两种模式通用快捷键
Shift+Enter
,执行本单元代码,并跳转到下一单元Ctrl+Enter
,执行本单元代码,留在本单元
-
命令模式:按ESC进入
-
Y
,cell切换到Code模式 -
M
,cell切换到Markdown模式 -
A
,在当前cell的上面添加cell -
B
,在当前cell的下面添加cell
-
-
其他(了解)
-
双击D
:删除当前cell -
Z
,回退 -
L
,为当前cell加上行号 <!-- -
Ctrl+Shift+P
,对话框输入命令直接运行 -
快速跳转到首个cell,
Crtl+Home
-
快速跳转到最后一个cell,
Crtl+End
-->
-
-
编辑模式:按Enter进入
-
补全代码:变量、方法后跟
Tab键
-
为一行或多行代码添加/取消注释:
Ctrl+/
(Mac:CMD+/)
-
-
其他(了解):
-
多光标操作:
Ctrl键点击鼠标
(Mac:CMD+点击鼠标) -
回退:
Ctrl+Z
(Mac:CMD+Z) -
重做:
Ctrl+Y
(Mac:CMD+Y)
-
3.3 markdown演示
掌握标题和缩进即可
一级标题
二级标题
三级标题
四级标题
五级标题
-
缩进
-
二级缩进
-
三级缩进
-
-
4 Jupyter Notebook中自动补全代码等相关功能拓展【了解】
效果展示: