小学生也能懂AI——白话监督学习
前几周的文章,对机器学习的历史、应用和相关八卦都做了一些介绍,有没有越来越感兴趣、越来越想深入了解下呢?这篇文章使用尽量简单的描述,带大家对机器学习进行稍稍深入的了解。不需要任何高级的数学知识或计算机知识就可以看懂哟。有一定基础的同学,可参考括号中的数学表达式,如果不感兴趣,所有数学公式完全可以忽略。赶快来看下吧!
机器学习主要用来做预测,也就是从已有的数据推测出新数据所具有的属性。预测有很多不同的方法,今天就带大家来了解下一种最常用的方法——监督学习。既然有监督学习,那自然也有无监督学习,更详细点,还有半监督学习。它们直接主要的区别,就在于是否有标注。什么是标注呢?举个萌萌的例子。
你的院子里生活着一些可爱的猫咪,它们长的各不相同,有胖的,有瘦的,有花的。你很关心哪些猫咪比较亲人,可以让你随意撸。通过观察,你记录下了每一只猫咪的脾性:小黑猫——高冷;胖花猫——给吃就给撸;小白猫——粘人……这就是标注,给已有的数据打好标签或分好类。监督学习便会使用这些已经标注的数据。
而相对的,无监督学习就是没有对数据打标签的,你是不知道小黑猫高冷小白猫粘人这样的对应信息的。你只是根据这些猫咪可能有价值的共同点将它们聚在一起而已,因此无监督学习也会被称为聚类。从实际应用上来说,因为目的性不强,无监督学习的效果比监督学习要差很多。但由于监督学习所需的标注成本,在某些情况下很高,因此无监督的方法还是具有存在的意义的。
监督学习分为两个步骤:学习过程和预测过程,而将这两个过程联系起来的,则是所谓的『模型』。学习过程就是使用标注好的数据,通过某些方法,得到模型。之后当对新的数据进行预测的时候,则可使用学习过程中获得的模型,将新数据作为输入,将得到的输出作为预测结果。
还拿猫咪举例子。在学习过程中,首先要获得带标注的数据,而这一步很多情况下是需要人来参与的。比如你需要自己去观察记录猫咪的性格特点,并将这些数据整理为学习用数据集,即训练数据,表示为:
训练数据={{小黑猫,高冷},{胖花猫,给吃就给撸},{小白猫,粘人}}
(T={{x1,y1},{x2,y2}…{xN,yN})
而每只猫咪身上,又会包含多种属性(N维特征向量),可以表示为:
猫咪属性={身材,花色,年纪}(x={x(1), x(2)…x(n)})
将属性对应到具体猫身上,便为:
小黑猫={瘦,黑,5岁}(x1={x1(1),x1(2)…x1(n))
当我们拥有了这些数据,就可以计算出『模型』。而所谓的『模型』,一般来说是一个决策函数(y=f(x))或一个条件概率(p(y|x))。对于猫咪事件来说,就是类似『年纪小的猫粘人』或『当猫的年纪小于2岁时,66%的概率是粘人的』这样的判断句。
当得到这样的结论(模型)后,就可以进入预测过程了。当新的小花猫跑入院内,你发现它年纪小于2岁,那么就可以认为它大概率是粘人的。这也说明,很多情况下,预测往往只是提供一个概率,一个最可能的情况,而非一个准确的判断。
错误衡量的方式(损失函数)有很多种,最简单的方法是,当判断错误了,记为1,当判断正确了,记为0。那么用5只猫来测试,使用『年纪小的猫粘人』这个模型判断,有4只都符合这个结论,1只不符合,那么错误率就是1/5;使用『花色浅的猫粘人』这个模型判断,有3只符合2只不符合,那么错误率是2/5,大于『年纪小的猫粘人』的错误率,因此『年纪小的猫粘人』为最优的模型。常见的损失函数如下:
1)0-1损失函数
2)平方损失函数
3)绝对损失函数
4)对数损失函数
在更一般的情况下,每一组数据的损失和这组数据发生的概率也是相关的,需要在考虑数据发生概率的情况下,将所有结果累积起来,最终的结果,
才是全部数据的整体误差,即损失期望(如下)当此值越小,则说明模型越优。
这里不得不提到所谓的『泛化能力』。在学习过程中,使用训练数据作为输入与输出,可以获得与模型相关的代表错误程度的值。而在预测过程中,也可以得到这样一个值。由于机器学习的目的就是为了进行预测,因此是预测中的错误程度值越小越好,而非学习过程中的。而泛化能力就是描述预测过程中错误程度的。预测过程误差越小,泛化能力越大。而评估泛化能力,一般是考虑损失期望的上界,而此与训练数据集的平均误差密切相关。
而在选择最优模型的过程中很容易出现『过拟合』的问题,也就是过于追求模型在训练数据中的准确度,模型和训练数据太过匹配从而无法对新的数据进行预测。试想,在猫咪例子中,将模型定为『小白猫粘人』,那么对于已有的所有猫咪(训练数据),这个模型的准确度为100%。但是其完全无法进行任何预测,因为其只针对小白猫,而无法处理大部分其他种类的猫。
这种情况一般通过在损失期望后增加『惩罚值』来避免,惩罚值和模型的复杂度密切相关,也就是如果模型过于细致,如相关条件已经精确到『小白猫』的程度了,那么惩罚值会更大,从而增加损失期望,以此来降低模型的优越程度。
以上就是监督学习的基本过程,获得最优模型后就可以进行预测了。
参考文献:《统计学习方法》李航
------------------------------------------------------------------------------------------------------
我们致力于推广普及人工智能(AI), 让AI走进每个人的生活~
欢迎分享AI相关的人物轶事、工业应用、科普常识、动态前沿~
投稿邮箱:[email protected]
——《万众AI》 2017年第五期