交叉验证是一种常用的模型选择的方法
一般如果样本充足,会随机地将数据集切成三个部分,分别为训练集(用来训练模型),验证集(用来模型的选择),测试集(用于最终对学习方法的评估)。
1 简单交叉验证
随机地将已知数据分为两部分,一部分用于训练,一部分用于测试,然后用训练集得到在各种条件下的训练模型,再在测试集上评估各个模型的测试误差,选出测试误差最小的模型。
2 S折交叉验证
S-fold cross validation ,首先随机地将已给数据切分为S个互不相交的大小相同的子集,然后利用S-1个子集的数据训练模型,利用余下的子集测试模型;将这一个过程对可能的S种选择重复进行,最后选出S次评测中平均测试误差最小的模型
3 留一交叉验证
S折交叉验证的特殊情况是S=N
监督学习的生成模型与判别模型
监督学习的任务就是学习一个模型,可分为生成模型和判别模型
生成模型 :由联合概率密度P(X,Y)求出条件概率分别P(Y|X)作为预测模型,
P(Y|X)=P(X,Y)/P(X)
这样的方法成为生成方法,典型的生成模型有朴素贝叶斯法,隐马尔科夫模型等
判别模型由数据直接学习决策函数f(x)或条件概率分布 P(Y|X)作为预测模型,典型的判别模型有 k近邻法,感知机,决策树,逻辑回归,最大熵模型,支持向量机,条件随机场等
二分类问题的评价指标,分类器在测试数据集上的预测或正确或不正确,有四种情况:
TP-----将正类预测为正类数
FN-----将正类预测为负类数
FP-----将负类预测为正类数
TN-----将负类预测为负类数
precision P=TP/(TP+FP)
recall R=TP/(TP+FN)
F是precision和recall的调和均值:2/F =1/P+1/R
回归(regression)
用于预测输入变量和输出变量之间的关系,回归模型正是表示从输入变量到输出变量之间映射关系的函数。回归问题的学习等价于函数拟合,选择一跳函数曲线使其很好地拟合已知数据并能很好地预测未知数据。
K近邻
给定一个训练数据集,对新的输入实例,在训练数据集中找到与该实例最临近的k个实例,这k个实例的多数属于某个类,就把该输入是咧分为这个类。
k近邻使用的模型实际上对应于对特征空间的划分,模型由三个基本要素-----距离度量,k值选择,分类决策规则决定。