今天想写一些关于机器学习--监督学习的内容。
监督学习分为分类和回归两大问题。
一、分类
1、最简单的,0/1分类。
输入是训练集,输出是0/1。通过训练,计算机得到输入-输出的关系,确定一个假设类H(存在多种假设h(x))。假设h(x)对实例x做出预测,根据预测结果得到假设h的误差。计算机要在这个假设类中找到最接近真实输出的假设(误差最小)。
这里要考虑一个泛化的问题,即我们的假设对不在训练集中的未来实例的分类准确率如何。
VC维:假定一个数据集包含N个点。这N个点可以用2的N次方种方法标记为正例(1)和负例(0)。因此,这N个数据点可以定义2的N次方中不同的学习问题。如果对于这些问题中的如何一个,我们能够找到一个假设h(属于H)将正例和负例分开,则我们就称H散列(shatter)N个点。
VC维度量的是假设类H的学习能力。
2、学习多类
输入训练集,输出有K个类,K>2
二、回归
根据输入-输出的映射关系,找到合适的假设模型,对未来的数据进行预测。
噪声:存在我们无法观测到的额外隐藏变量(训练集中没有的变量)。
1、模型选择。要求:假设的复杂性与潜在数据的函数的复杂性相当。
若假设复杂性 高于 函数的复杂性:过拟合。六次多项式拟合三次多项式
若假设复杂性 低于 函数的复杂性:欠拟合。直线拟合三次多项式
建立训练集、验证集、检验集
训练集:得到不同阶数的假设函数
验证集:求出所有假设函数中损失函数最小的那个假设函数(检验假设的泛化能力)
检验集:试验。
2、损失函数
预测值和真实值的差值的平方之和。也有绝对值之和
3、最优化过程
使损失函数最小化的过程。(梯度下降法、模拟退火、遗传算法)