1. 什么是监督学习
监督学习(supervised learning),通俗来说,就是学习一个模型,使模型对任意给定的输入值,给出一个贴近相应真实输出的预测值。
主要由以下三个重要部分组成:模型、参数、目标函数。
2. 模型
简单来说,可以理解为定义一个明确的公式,表示输入和输出之间的关系。在已知输入后,能计算得到固定的输出。举例如下:
假设所用模型为常见的线性模型,则有预测值的加权求和公式:
其中,,为第
个特征的权重。
,为第
个样本的第
个特征。
,为第
个样本的预测值。
对于不同类型的任务,预测值有不同的解释:
- 若解决的是分类问题(二分类,0/1),则为Logistic回归(Logistic regression),实际输出
,表示该样本为正例的概率。
- 若解决的是回归问题,则为线性回归(Linear regression),实际输出
,表示预测值。
3. 参数
在上述线性模型的例子中,对于新的输入,能计算得到
的前提是:权重
已知。
因此,权重集合,即为模型需要预先从已知
和真实
的样本中学习得到的参数。
4. 目标函数
那么,如何从已知的样本中学习到合适的参数呢?需要我们定义一个目标函数,并求其最小化的解。
目标函数通常包含两部分:训练误差、正则化项,即:
其中,,为训练误差,表示模型对于训练数据的拟合程度,拟合程度越高则误差越小。
,为正则化项,也称惩罚项,表示模型复杂度,值越大则模型复杂度越高。
因此,目标函数的最小化,表示寻求训练误差和正则化项的同时小,即,模型对于训练数据的拟合程度较好,同时模型又尽量简单,泛化能力强(对于未知的数据,依然能保持较好的预测效果,而非对训练数据过拟合)。
对于训练误差/损失函数,可进一步表示为:
其中,,为第个样本的真实值。
,为预测值。
,为损失函数,表示如何计算真实值与预测值之间的误差。
为训练样本的个数。
常用的正则化项包括:
L1正则化(L1范数),,即权重向量
中,各元素的绝对值之和
L2正则化(L2范数),,即权重向量
中,各元素的平方和再求平方根