机器学习之监督和无监督学习

这篇文章对吴恩达博士机器学习公开课中关于监督和无监督学习做了整理,以供学习。

一、监督学习(Supervised Learning)

首先课程中讲解了一个关于房屋价格预测的例子。

例1)预测房屋价格

根据实际的房屋价格和面积,我们已知了一定规模的数据集,如下图中红叉标注的,我们将其绘制到坐标平面。水平轴上,不同房屋的尺寸是平方英尺,竖直轴上,是不同房子的价格,单位时(千万$)。假设某人有一个面积为750平方英尺的房子,他要卖掉这栋房子,预计能卖多少钱?



那么机器学习算法能做的事是什么呢?我们可以根据已知标注的数据,用一条直线拟合数据。然后找到750英尺的横坐标,相应找到纵坐标,大概可能会卖150K美元。

当然,这不一定是唯一的学习算法,我们也可以使用一个二次函数或二阶多项式来拟合数据,这样效果可能会更好。在这种情况下,该房子可能会卖到200K美元。

再深入的学习可能就是如何选择算法,是用直线还是二次函数进行拟合。

以上是监督学习的一个很好的例子,监督学习是指我们给定一个已知的数据集,包含正确答案。对应到上述例子,也就是给定房屋数据集,在这个数据集中的每个房屋面积,我们都给出正确的价格,也即这个房子卖出的实际价格。算法的目的就是给定待售房屋的面积,尽可能给出相对正确的售价。这也被称为回归问题(Regression : Predict continuous value output——price)。之所以称为回归问题,是因为其预测连续的输出值,即价格。

例2)预估肿瘤性质

第二个例子,是预测乳腺癌是恶性的还是良性的。假设某人发现了一个乳腺瘤,即乳腺上的肿块,其中恶性瘤是危险的、有害的,良性瘤是无害的。

假设在数据集中,水平轴是瘤的尺寸,竖直轴是1或0,也可以是Y或N,表示是否是良性或者恶性。在已知肿瘤样例中,恶性的标为1,良性的标为0。根据已有的医疗记录,我们将相应尺寸的瘤和对应的是否良性、恶性标注在坐标轴上。其中蓝色的样例是良性的,红色的是恶性的。


假定某人得了乳腺癌,相应尺寸如图中紫红色箭头指示的位置,那么机器学习的任务就是预估该肿瘤是恶性的还是良性的概率。

这个例子就是属于分类问题(calssification problem)。
分类是指我们设法预测一个离散值输出,0或1,对应上述的恶性或良性。

实际上在分类问题中,可以有两个以上的输出值。在实际例子中,可能有三中类型的乳腺癌。因此,可能要预测离散值0,1,2,或3。其中0是良性的,即没有癌症,1、2、3分别表示第一种、第二种、第三种癌症。

在分类问题中,可以用另一种方法来绘制这些数据,用一组不同的符号来绘制这组数据。如果肿瘤的大小是用来预测恶性或良性的特征,可以用不同的符号表示良性或恶性,或者说阴性或阳性样本。

我们可以用圈来表示良性,继续用叉表示恶性肿瘤,只是把上面的数据集对应下来,映射到下面实线上,并且使用不同的符号,如下图。



在这个例子中,我们仅使用了一个特征或者说属性,即肿瘤的大小,来预测肿瘤是恶性的还是良性的。在其他的机器学习中,可能会有多个特征或者属性。

再看一个例子,假设我们不仅知道肿瘤的大小,还知道病人的年纪,我们还是用圈表示良性,叉表示恶性,根据已有数据绘制如下的数据集。



假设某人得了肿瘤,根据年龄和肿瘤大小,位于紫色的位置。因此在给定的数据集上,机器学习算法能做的就是在数据上画出一条直线,设法将恶性瘤和良性瘤分开,用这样的直线来分离两类瘤,我们就可以通过这个判断肿瘤类型,如下图。



二、无监督学习(Unsupervised Learning)

在监督学习当中,每个样本都被标为阳性样本或阴性样本,即良性或恶性。对于监督学习的样本,我们已经知道了所谓的“正确答案”,即他们是良性还是恶性。


而在无监督学习中,我们所用的数据和之前不同,如下图,没有任何标签,都具有相同的标签或者都没有标签。我们有一个数据集,但不知道能用它来做什么,也不知道每个数据点究竟是什么。无监督学习的任务是从给定的数据集中,把数据分成两个不同的簇。


对于上图中的数据,无监督学习算法可能将其分为两类,这就是聚类算法(Clustering Algorithm)。其中一个应用聚类算法的例子就是谷歌新闻,谷歌新闻所做的就是每天去网络上收集到成千上万的新闻,然后将它们组合成一个个新闻专题,相同主题的新闻被放到一起。



无监督学习也可以应用在基因组学中,以下是一个DNA微阵列数据的例子,基本的思想是给定一组不同的个体,对于每个个体,检查他们是否拥有某个特定的基因,也就是特定基因的表达程度。运行一个聚类算法,将不同的个体归入不同的类。这些红、绿、灰等颜色展示了不同的个体,拥有特定基因的程度。



我们有一堆数据,不知道这些数据有什么类型,也没有把数据集的正确答案给算法,希望算法能自动找出可能的类型,并自动将其分类。

以下还有其他应用场景:



左上角用于管理计算机集群,在一个计算机管理中心,找出哪些计算机在进行着协同工作,就可以让数据中心更高效的工作。

右上角用于社交网络的分析,如果可以得知你email最频繁的联系人,或者知道你的Facebook好友或者Google+圈,我们是否可以自动识别同属一个圈子的朋友,判断哪些人互相认识?就能知道哪些好友是一个好友组,哪些仅仅是互相认识的好友。

左下角用于市场细分,许多公司拥有庞大的客户信息数据库,对于一个客户数据集,能否自动找出不同的市场分割,并自动将客户分到不同的细分市场中,从而能够自动高效地在不同的细分市场中进行销售?

右下角用于天文数据分析,这些聚类算法带来了星系形成理论。

聚类算法是无监督学习的一种,当然还有其他的算法,比如吴恩达博士介绍的鸡尾酒会问题,感兴趣的可以在公开课中看到。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

充电实践

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值