无监督学习是一类用于在数据中寻找模式的机器学习技术。无监督学习算法使用的输入数据都是没有标注过的,这意味着数据只给出了输入变量(自变量 X)而没有给出相应的输出变量(因变量)。在无监督学习中,算法本身将发掘数据中有趣的结构。人工智能研究的领军人物 Yann LeCun,解释道:无监督学习能够自己进行学习,而不需要被显式地告知他们所做的一切是否正确。
无监督学习主要是针对(有)监督学习和强化学习而言的,可以通过对输入的解释将强化学习、监督学习和无监督学习区分开来。我们可以通过描述它们学习的「东西」来说明它们的不同之处。
- 无监督学习:那东西就是这个样子的。(无监督学习算法学到了没有名字的事物之间的相似性,通过进一步的扩展,它们可以通过识别不寻常或者不相似的实例来发现相反或者执行异常检测)
- 监督学习:那个东西是一块「双层吉士汉堡」。(标签,联系名字和面孔……)这些监督学习算法学到了数据实体实例和它们的标签之间的关联;也就是说,监督学习算法需要有一个有标签的数据集。那些标签被用来「监督」和矫正算法,因为算法在预测标签的时候可能会做出错误的猜测。
- 强化学习:吃了这个东西,因为它味道蛮不错,而且可以让你活得更久。(基于短期和回报和长期回报的奖励,就相当于你摄入的卡路里或者你生存的时间一样。)强化学习可以被看做是在一个具有稀疏反馈的环境中的监督学习。
在监督学习中,系统试图从之前给出的示例中学习。(而在无监督学习中,系统试图从给定的示例中直接找到模式。)因此,如果数据集被标注过了,这就是一个监督学习问题;而如果数据没有被标注过,这就是一个无监督学习问题。
上图是一个监督学习的例子,它使用回归技术找到在各个特征之间的最佳拟合曲线。而在无监督学习中,根据特征对输入数据进行划分,并且根据数据所属的簇进行预测。
无监督学习算法有很多,比较常用的有:聚类算法(clustering)、主成分分析(PCA)、异常检测、 自编码器、深度信念网络、赫布型学习、生成对抗网络(GAN)和自组织映射等。
[图片及描述来源:https://lakshaysuri.wordpress.com/2017/03/19/machine-learning-supervised-vs-unsupervised-learning/]
[描述来源:强化学习的基本概念与代码实现|机器之心]
发展历史
作为流行的无监督算法之一,聚类分析的早期研究始于 60 年前——K-means算法的出现,它最初在1955年由Steinhaus提出,随后Stuart Lloyd 在 1957 年提出K-均值聚类算法。随后其一直受到青睐,并延伸出了凝聚分层算法(agglomerative hierarchical algorithm)和基于密度的空间聚类(Density-Based Spatial Clustering of Applications with Noise/DBSCAN) 等。主成分分析则由卡尔·皮尔逊于1901年发明,用于分析数据及建立数理模型。1930s由哈罗德·霍特林演进并命名。这也是一种十分成熟并且常用的无监督算法。
异常检测的发展历史则相对较晚一些,虽然统计界早在19世纪就已经研究了检测数据中的异常值或异常,但直到1986年,Dorothy Denning教授才系统的提出了入侵检测系统(IDS)的异常检测方法。
LeCun 等人 (2015) 预测了无监督学习在深度学习中的未来。Schmidthuber(2014) 也描述了无监督学习的神经网络。Deng 和 Yu(2014) 简要介绍了无监督学习的深度架构,并详细解释了深度自编码器。
无监督学习的另一大类——一系列神经网络也可以追溯到上世纪。1949年,Hebb发明了赫布学习规则,奠定了神经网络的基石,这是最古老的也是最简单的神经元学习规则。Rumelhart和Hinton等人在1986年通过使用输入数据作为引导来解决“没有引导的反向传播”问题而提出的模型是自动编码器最早的形式。1987年Ballard在提出了无监督自编码器模型的研究中首先研究了基于无监督学习的预训练的潜在好处。但直到本世纪初,这种思想才被广泛认可。自2000年初以来,深度学习的第一个重要成果就是使用Deep Belief Networks 来预训深层网络。
也是在这段时间,自组织映射(SOM)模型得到了研究,其起源于早期的神经网络模型,比如联想记忆和自适应学习模型。该模型源自解释大脑皮层功能的空间组织。但是,SOM并不是第一个模型。1973年由von der Malsburg提出的空间有序的线探测器模型,1980年由Amari提出的神经场模型都比SOM模型提出要早。然而,这些早期模型的自组织能力相当薄弱。1982年,Kohonen引入一个系统模型,该系统是由两个不同性质的相互作用子系统组成,正式提出了SOM。
2014年Kyunghyun Cho和Bart van Merrienboer提出了一种新的神经网络模型,称为RNN编码器 - 解码器(RNN Encoder-Decoder),由两个递归神经网络(RNN)组成。通过使用由RNN编码器 - 解码器计算的短语对的条件概率作为现有对数线性模型中的附加特征,他们发现统计机器翻译系统的性能得以改进。
同年,还在蒙特利尔读博士的Ian Goodfellow将生成对抗网络(Generative Adversarial Networks)引入深度学习领域。因为GAN是一种非监督形式的训练方法。随后GAN就在AI领域兴起了浪潮。2015年2015年的DCGAN试图使用在受监督的文献中常用的CNN架构来衡量GANs。并在广泛的模型探索之后,发现了一系列的体系结构,他们可以使得数据集的训练稳定,并允许训练更高的分辨率和更深层的生成模型。
2018年,Anurag Ranjan和Michael J. Black等人引入了一个促进神经网络竞争与协作的框架——对抗式协作,并将几个低级视觉中相关联的无监督学习问题(单目深度预测、摄像机运动估计、光流和在静态场景和动态场景中对视频进行分割)集成在该框架中进行解决。该方法在没有任何监督的情况下训练而成,在无监督学习的方法中达到了当时最优水平。自然语言处理领域一向面临着数据昂贵的问题,同年,Alec Radford等人在研究中表明通过在多个未标记文本语料库上对语言模型进行生成式预训练,然后有区别地对每个特定任务进行精调,可以在许多自然语言处理任务上取得很大的增益。他们不基于任务的模型超越了那些为每个任务特别设计架构而分别进行训练的模型,在研究的 12 项任务的 9 项中显著提高了当前最佳结果。
还是2018年,Dahua Lin等人受监督学习中的输出排序的启发,指出数据本身的表面相似性而非语义标签,使得某些类比其他类更加接近。他们据此提出了一种极端化的无监督学习方法,主要特点是非参数化训练、实例级判别(一个实例视为一个类)。在 ImageNet 上的实验结果表明,该方法在图像分类方面远超过最先进的无监督方法。若有更多的训练数据和更好的网络架构,该算法会持续提高测试结果。
主要事件
年份 | 事件 | 相关论文/Reference |
1901 | Karl Pearson发明主成分分析法 | Peason, K. (1901). On lines and planes of closest fit to systems of point in space. Philosophical Magazine, 2(11), 559-572. |
1933 | 哈罗德·霍特林正式命名主成分分析 | Hotelling, H. (1933). Analysis of a complex of statistical variables into principal components. Journal of educational psychology, 24(6), 417. |
1949 | Hebb提出了Hebbian Learning, 是神经网络学习的基础之一 | Hebb, D. O. (1949). The organization of behavior; a neuropsychological theory. |
1955 | K-means 算法的雏形由Steinhaus被提出 | Steinhaus, H. (1956). Sur la division des corps matériels en parties. Bull.acad.polon.sci.cl.iii, 801-804. |
1973 | 提出空间有序线探测器模型 | von der Malsburg, C. (1973). Self-organization of orientation sensitive cells in the striate cortex. Kybernetik, 14:85-100 |
1980 | 提出神经场模型 | Amari, S. (1980). Topographic organization of nerve fields. Bulletin of Mathematical Biology, 42:339-364. |
1982 | 提出SOM网络 | Kohonen, Teuvo (1982). "Self-Organized Formation of Topologically Correct Feature Maps". Biological Cybernetics. 43 (1): 59–69 |
1986 | Rumelhart和Hinton等人通过使用输入数据作为引导来解决“没有引导的反向传播”问题而提出的模型是自动编码器最早的形式 | Rumelhart, D.E.; Hinton, G. E. and Williams, R. J. (1989). Learning internal representations by error propagation. Parallel Distributed Processing. Vol 1: Foundations. MIT Press, Cambridge. |
1987 | Ballard提出的无监督自编码器模型应该是第一个研究基于基于无监督学习的预训练的潜在好处的学习 | Ballard, D. H. (1987). Modular learning in neural networks. AAAI. pp. 279–284. |
1987 | Dorothy Denning教授提出了入侵检测系统(IDS)的异常检测方法 | Denning, D. E. (1987). An Intrusion-Detection Model. IEEE Transactions on Software Engineering. SE-13 (2): 222–232. |
1992 | Vladimir Batagelj, Anuška Ferligoj, Patrick Doreian开发出改进过的重定位算法和改进过的凝聚分层算法(agglomerative hierarchical algorithm) | Batagelj, V.; Ferligoj, A.; Doreian, P. (1992). Direct and indirect methods for structural equivalence. Social Networks. 14(1–2): 63-90. |
1996 | Martin Ester, Hans-Peter Kriegel, Jörg Sander 及 Xiaowei Xu 提出有噪声应用的基于密度的空间聚类(Density-Based Spatial Clustering of Applications with Noise/DBSCAN) | Ester, M.; Kriegel, H.-P.; Sander, J.; Xu, X. (1996). A density-based algorithm for discovering clusters in large spatial databases with noise. Proceedings of the Second International Conference on Knowledge Discovery and Data Mining (KDD-96). |
2006 | Hinton等学者使用互补的先验,推导出一种快速,贪婪的算法,可以一次一层地学习深层的定向信仰网络 | Hinton, G. E.; Osindero, S. and Teh, Y. W. (2006). A fast learning algorithm for deep belief nets. Neural Computation, 18(7):1527–1554. |
2014 | Kyunghyun Cho和Bart van Merrienboer提出了一种新的神经网络模型,称为RNN编码器 - 解码器(RNN Encoder-Decoder) | Cho, K.; Merrienboer, B. V.; Gulcehre, C.; Bahdanau, D.; Bougares, F.; Schwenk, H. and Bengio, Y. (2014). Learning phrase representations using rnn encoder-decoder for statistical machine translation. arXiv preprint arXiv:1406.1078. |
2014 | Goodfellow, I将GAN引入AI领域 | Goodfellow, I., Pouget-Abadie, J., Mirza, M., Xu, B., Warde-Farley, D., Ozair, S., ... & Bengio, Y. (2014). Generative adversarial nets. In Advances in neural information processing systems (pp. 2672-2680). |
2015 | Radford, A., Metz, L.,提出非监督式的DCGANs | Radford, A., Metz, L., & Chintala, S. (2015). Unsupervised representation learning with deep convolutional generative adversarial networks. arXiv preprint arXiv:1511.06434. |
2018 | Alec Radford等人在研究中表明通过在多个未标记文本语料库上对语言模型进行生成式预训练,然后有区别地对每个特定任务进行精调 | Radford, A. et al. (2018). Improving Language Understanding by Generative Pre-Training. |
2018 | Dahua Lin等人受监督学习中的输出排序的启发,指出数据本身的表面相似性而非语义标签,使得某些类比其他类更加接近。他们据此提出了一种极端化的无监督学习方法 | Wu, Z. et al. (2018). Unsupervised Feature Learning via Non-Parametric Instance-level Discrimination. CVPR. |
发展分析
瓶颈
无监督学习虽然省去了数据标注的问题,但我们也因此很难控制模型学到了什么特征,因此,模型的有效性是一个需要特别注意的问题。此外,在模型表现上,不同模型的对比很困难,正如Yoshua Bengio 所说,“我们不知道什么样的表征才是好的表征…… 我们甚至对判定无监督学习工作好坏的合适的目标函数都没有一个明确的定义。”
未来发展方向
即使监督学习已经在很多任务上取得了出色的成绩,但目前学界还是有很多人相信无监督学习才是未来的趋势。在目前能够轻易获取海量数据但标注困难,和非结构化数据比例持续上升的背景下无监督学习的重要性在不断上升。
Contributor: Yuanyuan Li