您的位置:首页 > 理论基础 > 计算机网络

神经网络学习——有监督vs无监督

2016-12-18 18:13 375 查看

1. 分类(有监督vs无监督)

根据学习环境不同,神经网络的学习方式可分为监督学习和非监督学习。

1. 有监督

所谓监督型数据集,即每条数据都有一个对应的标签。比如流行的 ImageNet 数据集,有一百万张人为标记的图像。一共有 1000 个类,每个类有 1000 张图像。创建这样的数据集需要花费大量的精力,同时也需要很多的时间。

1.1 反向传播算法

反向传播算法(BP)是最常见的神经网络学习算法。

学习规则是使用梯度下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层(input)、隐层(hidden layer)和输出层(output layer)。

1.2 特点

对训练数据中的错误有很好的健壮性

训练时间长

1.3 不足

通过梯度下降方法在训练过程中修正权重使得网络误差最小)在层次深的情况下性能变得很不理想(传播时容易出现所谓的梯度弥散Gradient Diffusion或称之为梯度消失,根源在于非凸目标代价函数导致求解陷入局部最优,且这种情况随着网络层数的增加而更加严重,即随着梯度的逐层不断消散导致其对网络权重调整的作用越来越小),所以只能转而处理浅层结构(小于等于3),从而限制了性能。

于是,20世纪90年代,有更多各式各样的浅层模型相继被提出,比如只有一层隐层节点的支撑向量机(SVM,Support Vector Machine)和Boosting,以及没有隐层节点的最大熵方法(例如LR,Logistic Regression)等,在很多应用领域取代了传统的神经网络。

更重要的是,浅层模型有一个特点,就是需要依靠人工来抽取样本的特征。然而,手工地选取特征是一件非常费力的事情,能不能选取好很大程度上靠经验和运气。

2. 无监督

无监督学习研究的主要目标是预训练一个模型(称作「识别」或「编码」)网络,供其他任务使用。编码特征通常能够用到分类任务中:例如在 ImageNet 上训练会表现出很好的结果,这与监督模型非常接近。

迄今为止,监督模型总是比无监督的预训练模型表现的要好。其主要原因是监督模型对数据集的特性编码的更好。

3. 深度学习

既然手工选取特征不太好,那么能不能自动地学习一些特征呢?

答案是能!深度学习框架将特征和分类器结合到一个框架中,自动地从海量大数据中去学习特征,在使用中减少了手工设计特征的巨大工作量。看它的一个别名:无监督特征学习(Unsupervised Feature Learning),就可以顾名思义了。

无监督(Unsupervised)学习的意思就是不需要通过人工方式进行样本类别的标注来完成学习。因此,深度学习是一种可以自动地学习特征的方法。

深度学习通过学习一种深层非线性网络结构,只需简单的网络结构即可实现复杂函数的逼近,并展现了强大的从大量无标注样本集中学习数据集本质特征的能力。

深度学习能够获得可更好地表示数据的特征,同时由于模型的层次深(通常有5层、6层,甚至10多层的隐层节点,“深”的好处是可以控制隐层节点的数目为输入节点数目的多项式倍而非多达指数倍)、表达能力强,因此有能力表示大规模数据。对于图像、语音这种特征不明显(需要手工设计且很多没有直观的物理含义)的问题,深度模型能够在大规模训练数据上取得更好的效果。尤其是在语音识别方面,深度学习使得错误率下降了大约30%,取得了显著的进步。

相比于传统的神经网络,深度神经网络作出了重大的改进,在训练上的难度(如梯度弥散问题)可以通过“逐层预训练”来有效降低。注意,深度学习不是万金油,像很多其他方法一样,它需要结合特定领域的先验知识,需要和其他模型结合才能得到最好的结果。当然,还少不了需要针对自己的项目去仔细地调参数,这也往往令人诟病。

此外,类似于神经网络,深度学习的另一局限性是可解释性不强,像个“黑箱子”一样不知为什么能取得好的效果,以及不知如何有针对性地去具体改进,而这有可能成为产品升级过程中的阻碍。

值得一提的是,深度学习的诞生并非一帆风顺。虽然Yahn Lecun在1993年提出的卷积神经网络(Convolutional Neural Network:CNN)是第一个真正成功训练多层网络结构的学习算法,但应用效果一直欠佳。直到2006年,Geoffrey Hinton基于深度置信网(Deep Belief Net:DBN)——其由一系列受限波尔兹曼机(Restricted Boltzmann Machine:RBM)组成,提出非监督贪心逐层训练(Layerwise Pre-Training)算法,应用效果才取得突破性进展,其与之后Ruslan Salakhutdinov提出的深度波尔兹曼机(Deep Boltzmann Machine:DBM)重新点燃了人工智能领域对于神经网络(Neural Network)和波尔兹曼机(Boltzmann Machine)的热情,才由此掀起了深度学习的浪潮。从目前的最新研究进展来看,只要数据足够大、隐层足够深,即便不加“Pre-Training”预处理,深度学习也可以取得很好的结果,反映了大数据和深度学习相辅相成的内在联系。此外,虽说非监督(如DBM方法)是深度学习的一个优势,深度学习当然也可用于带监督的情况(也即给予了用户手动标注的机会),实际上带监督的CNN方法目前就应用得越来越多,乃至正在超越DBM。

参考:

http://blog.sciencenet.cn/blog-4099-785174.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  神经网络
相关文章推荐