比较零散,自用。

1.1引言

“学习”的概念

机器学习的概念:致力于研究图和通过计算的手段,利用经验(历史样本)来改善自身的性能。

1.2基本术语

数据集:属性

属性值

记录/对象/样本/示例/特征向量




pytorch五折交叉验证分类代码_pytorch五折交叉验证分类代码


学习:从数据中学的模型的过程

训练集:参与模型训练的样本

测试:学的模型后,使用其样本进行预测的过程

测试集:被预测的样本集合

假设:学的模型对应的关于书的某种潜在规律

分类:输出结果是离散的

回归:输出结果是连续的

监督学习:训练样本有标记

无监督学习:训练样本无标记

泛化能力:学的模型适用于型样本的能力

独立同分布:样本空间的全体样本服从一个位置的分布,且相互独立

1.3假设空间

假设空间

归纳与演绎——归纳:从特殊到一半的“泛化”:从样本中学习

演绎:从一般到特殊的

版本空间:与训练集一致的假设空间集合称为“版本集合”

归纳偏好

学习算法必有偏好

归纳偏好原则一:奥卡姆剃刀(简单优先)

2.1经验误差与过拟合

误差:模型输出与样本真实值支架的呢差异

错误率:分类错误样本数占样本数的比例

精度:1-错误率

训练误差:模型在训练集上的误差

泛化误差:模型在新样本上的误差

目标:得到泛化误差小的模型/学习器

实际:新样本未知

以经验误差来代表泛化误差

模型从训练样本学的适用于所有潜在样本的规律

过拟合:用力过猛

欠拟合:用力不足

2.2评估方法

训练集与测试集

目标:对于模型/学习器的泛化误差进行评估

专家样本:训练集+测试机

训练集:训练误差

测试集:测试误差

用测试误差近似于泛化误差

测试误差与泛化误差

留出法:训练集+测试集:互斥互补

合理划分,保持比例

单词留出多次留出

交叉验证法:k折交叉验证法:将专家样本等划分为k个数据集,轮流的用k-1个用于训练,1个用于测试训练集与测试集


pytorch五折交叉验证分类代码_泛化_02


自助法:留出法与交叉验证法的训练集数据少于样本数据

给定m个样本的数据集D,从D中有放回的随机去m次数据,形成训练集D‘

用D中不包含D'的样本作为测试集

D中某个样本不被抽到的概率:


pytorch五折交叉验证分类代码_pytorch五折交叉验证分类代码_03


测试集数据量:


pytorch五折交叉验证分类代码_交叉验证_04


缺点:改变据集的分了初始数据的数布

2.3性能度量

回归任务的评价标准:均方误差


pytorch五折交叉验证分类代码_数据集_05


错误率:分类错误样本数占总样本数比例


pytorch五折交叉验证分类代码_k折交叉验证法python实现_06


精度:1-错误率

查准率和查全率


pytorch五折交叉验证分类代码_交叉验证_07


查准率:P=TP/(TP+FP)

查全率:R=TP/(TP+FN)

F1系数

综合查准率和查全率:


pytorch五折交叉验证分类代码_泛化_08


更一般的形式:


pytorch五折交叉验证分类代码_泛化_09


其中β为整数,度量了查全率对查准率的相对重要性:


pytorch五折交叉验证分类代码_pytorch五折交叉验证分类代码_10


多次训练/测试时的F1系数

先分后总:先分别计算各混淆矩阵的查准率和查全率,再以均值汇总:


pytorch五折交叉验证分类代码_泛化_11


先总后分:先将各混淆矩阵的对应元素(TPFPTNFN)进行汇总平均,再求P


pytorch五折交叉验证分类代码_数据集_12


2.4性能度量python实现

性能度量


fromsklearn.metricsimportprecision_score
fromsklearn.metricsimportconfusion_matrix
fromsklearn.metricsimportclassification_report
y_true=[1,0,1,1,0]#样本实际值
y_pred=[1,0,1,0,0]#模型预测值
res=precision_score(y_true,y_pred,average=None)#查准率
res=confusion_matrix(y_true,y_pred)
res=classification_report(y_true,y_pred)
print(res)