zoukankan      html  css  js  c++  java
  • 机器学习笔记之监督学习与无监督学习的一些初步总结

    1、通俗解释版 
      这个问题可以回答得很简单:是否有监督(supervised),就看输入数据是否有标签(label)。输入数据有标签,则为有监督学习,没标签则为无监督学习。 
      首先看什么是学习(learning)?一个成语就可概括:举一反三。此处以高考为例,高考的题目在上考场前我们未必做过,但在高中三年我们做过很多很多题目,懂解题方法,因此考场上面对陌生问题也可以算出答案。机器学习的思路也类似:我们能不能利用一些训练数据(已经做过的题),使机器能够利用它们(解题方法)分析未知数据(高考的题目)?

      最简单也最普遍的一类机器学习算法就是分类(classification)。对于分类,输入的训练数据有特征(feature),有标签(label)。所谓的学习,其本质就是找到特征和标签间的关系(mapping)。这样当有特征而无标签的未知数据输入时,我们就可以通过已有的关系得到未知数据标签。

      在上述的分类过程中,如果所有训练数据都有标签,则为有监督学习(supervised learning)。如果数据没有标签,显然就是无监督学习(unsupervised learning)了,也即聚类(clustering)。

    但有监督学习并非全是分类,还有回归(regression))

      目前分类算法的效果普遍还是不错的(研究者们每天都在outperform其他人……),相对来讲,聚类算法就有些惨不忍睹了。(聚类:这不是我的错嘤嘤嘤嘤└(T_T;)┘)确实,无监督学习本身的特点使其难以得到如分类一样近乎完美的结果。这也正如我们在高中做题,答案(标签)是非常重要的,假设两个完全相同的人进入高中,一个正常学习,另一人做的所有题目都没有答案,那么想必第一个人高考会发挥更好,第二个人会发疯。

      这时各位可能要问,既然分类如此之好,聚类如此之不靠谱(分类<( ̄︶ ̄)/,聚类└(T_T;)┘),那为何我们还可以容忍聚类的存在?因为在实际应用中,标签的获取常常需要极大的人工工作量,有时甚至非常困难。例如在自然语言处理(NLP)中,Penn Chinese Treebank在2年里只完成了4000句话的标签……

      这时有人可能会想,难道有监督学习和无监督学习就是非黑即白的关系吗?有没有灰呢?Good idea。灰是存在的。二者的中间带就是半监督学习(semi-supervised learning)。对于半监督学习,其训练数据的一部分是有标签的,另一部分没有标签,而没标签数据的数量常常极大于有标签数据数量(这也是符合现实情况的)。隐藏在半监督学习下的基本规律在于:数据的分布必然不是完全随机的,通过一些有标签数据的局部特征,以及更多没标签数据的整体分布,就可以得到可以接受甚至是非常好的分类结果。(此处大量忽略细节( ̄ε ̄;))

      因此,learning家族的整体构造是这样的: 
    有监督学习(分类,回归) 
    半监督学习(分类,回归),transductive learning(不懂怎么翻译,直推式学习?)(分类,回归) 
    半监督聚类(有标签数据的标签不是确定的,类似于:肯定不是xxx,很可能是yyy) 
    无监督学习(聚类)

    2、另一种解释 

      有监督学习(Supervised Learning):我们有一个数据集,如果对于每一个单一的数据根据它的特征向量我们要去判断它的标签(算法的输出值),那么就是有监督学习。通俗的说,有监督学习就是比无监督学习多了一个可以表达这个数据特质的标签。

      我们再来看有监督学习,分为两个大类:

      (1) 回归分析(Regression Analysis):回归分析,其数据集是给定一个函数和它的一些坐标点,然后通过回归分析的算法,来估计原函数的模型,求出一个最符合这些已知数据集的函数解析式。然后它就可以用来预估其它未知输出的数据了,你输入一个自变量它就会根据这个模型解析式输出一个因变量,这些自变量就是特征向量,因变量就是标签。 而且标签的值是建立在连续范围的。 
      (2) 分类(Classification):其数据集,由特征向量和它们的标签组成,当你学习了这些数据之后,给你一个只知道特征向量不知道标签的数据,让你求它的标签是哪一个?结果是离散的。

      无监督学习(Unsupervised Learning):所有数据只有特征向量没有标签,但是可以发现这些数据呈现出聚群的结构,本质是一个相似的类型的会聚集在一起。把这些没有标签的数据分成一个一个组合,就是聚类(Clustering)。比如Google新闻,每天会搜集大量的新闻,然后把它们全部聚类,就会自动分成几十个不同的组,每个组内新闻都具有相似的内容结构。

      无监督学习还有一个典型的例子就是鸡尾酒会问题(声音的分离),在这个酒会上有两种声音,被两个不同的麦克风在不同的地方接收到,而可以利用无监督学习来分离这两种不同的声音。注意到这里是无监督学习的原因是,事先并不知道这些声音中有哪些种类(这里的种类就是标签的意思)。

    参考资料: 
    知乎—监督学习与无监督学习 
    监督学习和无监督学习 
    半监督学习 
    聚类(序)——监督学习与无监督学习

  • 相关阅读:
    火狐 http://localhost:8080自动跳转到http://www.localhost.com:8080
    Windows下搭建PHP开发环境
    对帝国cms、dedecms、phpcms等负载测试总结
    System.ExecutionEngineException: Attempting to JIT compile method System.Linq.Enumerable
    SQLCMD Mode: give it one more chance
    transition状态下Mecanim动画的跳转
    Lua库-bit32库
    C语言输入输出函数总结
    Lua库-table
    Lua中的数据结构
  • 原文地址:https://www.cnblogs.com/zlslch/p/6972057.html
Copyright © 2011-2022 走看看