Python_AI
Python_AI
一、基础知识
1 基本概念
人工智能包含机器学习和深度学习,机器学习包含深度学习。
基本名词:
泛化:通用性。
非泛化:特殊性。
NFL定理:某些问题 model_a 优于 model_b,那么存在另一些问题 model_b 优于 model_a。
泛化误差:未来误差。
经验误差:训练集上的误差。
经验误差并非越小越好,会导致过拟合。
过拟合:限制条件太多。
欠拟合:限制条件太少。(比如所有绿色的都是树叶)
集合(测试集应与训练集互斥):
- 留出法:留出训练集的一部分用于测试。(20%左右)
- 交互验证:用 90% 进行训练,剩下 10%进行测试,循环 10 次。
- 自助采样:有放回的采样测试。
流程名词:
- 算法参:人为设定的参数,也叫超参数。
- 模型参:学习的参数。
- 流程:训练集——测试集——验证集。
- 算法参确定后用:训练集 + 验证集测试。
- 查全率:所有的好西瓜中有多少比例被算法挑了出来。
- 查准率:算法挑出来的西瓜中有多少比例是好西瓜。
2 机器学习
定义:机器学习好似从数据中自动分析获得模型,并利用模型对未知数据进行预测。
数据集构成:特征值 + 目标值(也可以没有目标值,直接进行分类)。
算法:
监督学习(supervised learning)(预测):输入数据是由输入特征值和目标值所组成。函数的输出可以是一个连续的值(称为回归),或是输出是有限个离散值(称作分类):
- 分类:k-近邻算法、贝叶斯分类、决策树与随机森林、逻辑回归。
- 回归:线性回归、岭回归。
无监督学习(unsupervised learning):
- 定义:输入数据是由输入特征值所组成。
- 聚类:k-means。
目标值:
- 类别 —— 分类问题。(监督学习)
- 连续型数据 —— 回归问题。(监督学习)
- 无 —— 聚类。(无监督学习)
流程:
- 获得数据。
- 数据预处理。
- 特征工程。(将数据处理成机器可以识别的数据:特征值 + 目标值)
- 机器训练。
- 模型评估。
- 应用。
深入学习:
- 机器学习——“西瓜书”——周志华
- 统计学习方法——李航
- 深度学习——“花书”
3 特征工程
定义:
- 数据集:数据集,数据接口:内部。
- 学习数据集:
分类算法:
回归与聚类算法:
4 Scikit-learn
返回值继承自字典的,datasets.base.Bunch,键如下:
- data:特征数据数组,是[n_samples * n_features]的二维numpy.ndarray 数组。
- target:标签数组,是n_samples的一维numpy.ndarray数组。
- DESCR:数据描述。
- feature_names:特征名,新闻数据,手写数字、回归数据集没有。
- target_names:标签名。
调用:
dict["key"] || dict.key
# 基本操作 |
# 数据集 |
二、算法实现
1 bp神经网络
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Magialeaf的小窝!