Unsupervised learning
"在学习监督学习之后,使用最广泛的机器学习形式是无监督学习。"
引言
在实际工作中,我们经常会遇到这样一类问题:给机器输入大量的特征数据,并期望机器通过学习找到数据中存在的
某种共性特征或者结构
,亦或是数据之间
存在的某种关联
。
这类问题被称作"非监督学习"问题,它并不是像监督学习那样希望预测某种输出结果。相比于监督学习,无监督学习的输入数据没有任何标签信息,需要通过算法模型
来挖掘数据内在的结构和模式
。
分类
在监督学习中,数据同时带有输入x和输出y标签,而在无监督学习中,数据
仅带有输入x
而没有输出标签y
。 无监督学习可以大体分为三类
。
✨一类是常用的聚类算法
,它将相似的数据点组合在一起。
✨ 第二种是异常检测
,用于检测异常事件。例如,对于金融系统而言,异常事件、异常交易可能是欺诈的迹象,对于其他的很多应用程序也是如此。
✨第三种是降维
,降维可以使得我们将一个大数据集神奇地压缩成一个小得多的数据集,同时丢失尽可能少的信息。
聚类算法
我们首先以在监督学习中的肿瘤块举例,它是监督算法中的分类算法。
在监督学习的分类算法下,根据输入标签(x)肿瘤块大小(Tumor Size)和病人的年龄(Age),有一个相对应的输出标签(y)良性(Benign) and 恶性(Malignant)。
而若在无监督学习下,给定的数据和任何输出标签y无关,比如给定了有关患者以及肿瘤块大小和年龄的数据,但不管肿瘤是良性还是恶性的。
监督学习和无监督学习的对比如下图所示。
(在监督学习中,红色的叉和紫色的圆圈两种记号分别代表恶性和良性。)
在右图的无监督学习,我们的工作是试图找到一些相似的结构或者模式。
上面的数据集将会被分成两个特殊的集群或者组,称为聚类算法。
聚类算法的应用
Goole news
聚类经常应用在手机新闻中,比较典型的是一些聚合新闻网站,利用爬虫爬取新闻后对新闻进行分类的问题。比如谷歌新闻每天都在,收集非常多,非常多的新闻内容。机器将这些新闻分组,同一主题,显示到一起,组成有关联的新闻。
所以谷歌新闻做的就是搜索非常多的新闻事件,自动地把它们聚类到一起。
聚类遗传
对于不同的个体,根据不同的基因片段,我们可以运行聚类算法,将个体分组到不同的类别中。
不同类型的人具有某些特征,聚类算法可以自动在数据中找到结构。
客户信息数据库
许多公司都有庞大的客户信息数据库,根据这些数据,聚类算法可以自动把客户分成不同的细分市场。这样,可以使得我们更有效地为客户服务。
监督学习和无监督学习的区别
** 在一个典型的监督学习中,我们有一个有标签的训练集,我们的目标是找到能够区分正样本和负样本的决策边界,在这里的监督学习中,我们有一系列标签,我们需要据此拟合一个假设函数。与此不同的是,在非监督学习中,我们的数据没有附带任何标签。
以生活常识判断,监督学习相当于我们解答一本习题册,习题册后面有标准答案。所以解答时,我们可以根据答案分析解题步骤,推出类似问题的解答策略;无监督学习,就像是一本后面没有标准答案的习题册,无法知道自己正确与否,只能在做题过程中,大致得出相似类型题,更多靠自己摸索。**