表示学习_表示学习是什么 - CSDN
精华内容
参与话题
  • 表示学习(Representation Learning)

    万次阅读 多人点赞 2019-05-10 18:05:05
    2013年,Bengio等人发表了关于表示学习的综述。最近拜读了一下,要读懂这篇论文还有很多文献需要阅读。组会上正好报了这篇,所以在此做一个总结。 二、表示学习发展由来 当我们学习一个复杂概念时,总想有一条...

     一、前言

            2013年,Bengio等人发表了关于表示学习的综述。最近拜读了一下,要读懂这篇论文还有很多文献需要阅读。组会上正好报了这篇,所以在此做一个总结。

    二、表示学习发展由来

            当我们学习一个复杂概念时,总想有一条捷径可以化繁为简。机器学习模型也不例外,如果有经过提炼的对于原始数据的更好表达,往往可以使得后续任务事倍功半。这也是表示学习的基本思路,即找到对于原始数据更好的表达,以方便后续任务(比如分类)。人工智能——>机器学习——>深度学习发展经历了一个波折上升的过程,越来越多的模型被发明出来,但想要好的表示效果,还得看数据,数据质量好,数据特征好才是王道。

    1. 赫布于1949年基于神经心理的提出了一种学习方式,该方法被称之为赫布学习理论。2、1952,IBM科学家亚瑟·塞缪尔开发了一个跳棋程序。该程序能够通过观察当前位置,并学习一个隐含的模型,从而为后续动作提供更好的指导。提出机器学习。3、伟博斯在1981年的神经网络反向传播(BP)算法中具体提出多层感知机模型。重新点燃机器学习之火。4、神经网络研究领域领军者Hinton在2006年提出了神经网络Deep Learning算法,使神经网络的能力大大提高,向支持向量机发出挑战。

    “数据决定了机器学习的上限,而算法只是尽可能逼近这个上限”,这里的数据指的就是经过特征工程得到的数据。特征工程就是一个把原始数据转变成特征的过程,这些特征可以很好的描述这些数据,并且利用它们建立的模型在未知数据上的表现性能可以达到最优(或者接近最佳性能)。从数学的角度来看,特征工程就是去设计输入变量X。

    在机器学习时代,我们如果需要对汽车进行表示,往往依靠的是领域专家手工提取特征并表示;在深度学习时代,我们直接将汽车输入模型,汽车将自动转换成高效有意义的表示。  

    2019年3月27日 ——ACM宣布,深度学习的三位创造者Yoshua Bengio, Yann LeCun, 以及Geoffrey Hinton获得了2019年的图灵奖。

    三、论文结构

    本文回顾非监督特征学习和深度学习领域的一些近期工作,包括概率模型的发展、自动编码机、流行学习和深度网络。

    定义:Learning representations of the data that make it easier to extract useful information when building classifiers or other predictors。翻译:表示学习以便在构建分类器或其他预测器时更容易提取有用的信息。

    分布式表示(distributed representation). 这是深度学习最重要的性质。举一个非常简单的例子,假设我们的词典上有16个词,如果用传统的bag-of-words 的表示方法,我们可以用16维的向量来表示每个词,向量的每一位代表某个词的出现与否。然而,如果我们用分布式表示的思想,我们也可以用四维的向量来代表每一个词,例如(0,0,0,1), (0,0,1,0),..., (1,1,1,1) 。 这个简单的例子其实用来说明:对同一个输入,我们可以有不同的配置(configuration)。

    四、三种单层表示学习方法

     

          概率图模型中的术语图指的是图论,也就是带有边和点的数学对象。确切地说,概率图模型(Probabilistic Graphical Models,PGM)是指:你想描述不同变量之间的关系,但是,你又对这些变量不太确定,只有一定程度的相信或者一些不确定的知识。

           贝叶斯概率图模型是有向图,因此可以解决有明确单向依赖的建模问题,而马尔可夫概率图模型是无向图,可以适用于实体之间相互依赖的建模问题。这两种模型以及两者的混合模型应用都非常广泛。条件随机场(CRF)广泛应用于自然语言处理(如词性标注,命名实体识别)。

    在马尔科夫链中,每一个圆圈代表相应时刻的状态,有向边代表了可能的状态转移,权值表示状态转移概率。 HMM,隐马尔可夫模型,是一种有向图模型。由1阶马尔可夫模型演变而来,不同之处在于我们能够观测到的量不是过程本身,而是与其有一定关系的另一些量。那HMM中的隐体现在哪呢?这里“隐”指的是马尔科夫链中任意时刻的状态变量不可见,也就是说状态序列Y1,Y2,...,,...,Yt无法直接观测到。但是HMM中每时刻有一个可见的观测值Xt与之对应.隐马尔可夫模型(HMM)是语音识别的支柱模型.

    玻尔兹曼机是一大类的神经网络模型,但是在实际应用中使用最多的则是受限玻尔兹曼机(RBM)。受限玻尔兹曼机(RBM)能学习并发现数据的复杂规则分布,将多个RBM堆叠就构成了深度置信网络(deep belief network, DBN),从而可以从更加复杂的高维输入数据中抽取维数更低、区别度较高的特征。https://blog.csdn.net/u013631121/article/details/76652647

    自动编码器文章:https://blog.csdn.net/u011584941/article/details/72673260

    如上图,我们将input输入一个encoder编码器,就会得到一个code,这个code也就是输入的一个表示,那么我们怎么知道这个code表示的就是input呢?我们加一个decoder解码器,这时候decoder就会输出一个信息,那么如果输出的这个信息和一开始的输入信号input是很像的(理想情况下就是一样的),那很明显,我们就有理由相信这个code是靠谱的。所以,我们就通过调整encoder和decoder的参数,使得重构误差最小,这时候我们就得到了输入input信号的第一个表示了,也就是编码code了。因为是无标签数据,所以误差的来源就是直接重构后与原输入相比得到。

    1、稀疏自编码:减小编码后隐藏层神经元个数。2栈式自编码神经网络是一个由多层稀疏自编码器组成的神经网络,其前一层自编码器的输出作为其后一层自编码器的输入。采用逐层贪婪训练法进行训练,获取栈式自编码神经网络参数。3去噪自动编码器DA是在自动编码器的基础上,训练数据加入噪声,所以自动编码器必须学习去去除这种噪声而获得真正的没有被噪声污染过的输入。所以他的泛化能力强。4DAE是通过对输入添加随机噪声,经过编码解码来获得健壮的重构;而CAE对扰动的健壮性是通过惩罚 雅克比矩阵F范数各元素的和得到。CAE抓住内部因素提高特征提取健壮性,DAE通过外部因素提高特征提取健壮性。

    “流形”是在局部与欧式空间同胚的空间,换言之,它在局部具有欧式空间的性质,能用欧氏距离来进行距离计算。这给降维方法带来了很大的启发:若低维流形嵌入到高维空间中,则数据样本在高维空间的分布虽然看上去非常复杂,但是在局部上仍具有欧式空间的性质,因此,可以容易地在局部建立姜维映射关系,然后在设法将局部映射关系推广到全局。当维数被将至二维或三维时,能对数据进行可视化展示,因此流行学习也可以被用于可视化。直观上来讲,一个流形好比是一个 d 维的空间,在一个 m 维的空间中 (m > d) 被扭曲之后的结果。广义相对论似乎就是把我们的时空当作一个四维流(空间三维加上时间一维)形来研究的,引力就是这个流形扭曲的结果。

     

    不过是在不同的 pose 和光照下拍摄的,如果把 pose (上下和左右)当作两个自由度,而光照当作一个自由度,那么这些图片实际只有三个自由度,换句话说,存在一个类似于球面一样的参数方程(当然,解析式是没法写出来的),给定一组参数(也就是上下、左右的 pose 和光照这三个值),就可以生成出对应的 4096 维的坐标来。换句话说,这是一个嵌入在 4096 维欧氏空间中的一个 3 维流形。

    展开全文
  • 通过网络的权值来捕捉外界输入模式的特征,并且通过网络连接方式来组合这些特征从而提取出更加高层特征,采用这种方法逐级从大量的输入数据中学习到对于输入模式有效的特征表示,然后再把学习到的特征用于分类、回归...

    一、深度学习网络的表达方式汇总及模型分类方法

    人的大脑会对眼睛捕捉到的外界事物进行逐级抽象,逐渐提取出抽象的语义信息,以便为人脑所理解。深度学习从这一科学发现得到启发,通过网络的权值来捕捉外界输入模式的特征,并且通过网络连接方式来组合这些特征从而提取出更加高层特征,采用这种方法逐级从大量的输入数据中学习到对于输入模式有效的特征表示,然后再把学习到的特征用于分类、回归和信息检索。深度学习能够提取输入数据的特征,降低输入数据的维数和复杂度,逼近复杂的函数。

        为了使得深度网络结构变得更加容易训练,并且强化深度网络的特征提取和函数逼近能力,需要对深度学习网络采用更高效的网络表达方式。网络的表达方式是指网络采用何种结构上的连接方式来抽象表达输入模式的内部结构,或表示输入样本之间的关系。深度学习网络的表达方式有局部表达、分布式表达和稀疏表达3种。深度网络的网络结构是指网络神经元之间连接关系的确定原理,分为区分型网络结构和生成型网络结构两类。

    1、局部表达、分布式表达和稀疏表达

        局部表达是一种基于局部模板匹配的表达方式。先通过一个局部核函数对输入样本进行映射,然后再采用一个线性组合对局部核函数的输出进行组合,得到期望的输出。

        分布式表达和稀疏表达思想来源于人脑的视觉机理,人脑通过逐层抽象表示外界事物来最终感知事物,这种抽象表示往往是通过一系列分散的神经元来实现的,这些神经元之间相互依赖,各自分散;同时,这种抽象表示也是稀疏的,在特定的时刻,只有1-4%神经元同时处于激活状态。分布式表达是分散的,能更有效地提取输入数据的特征,减少了对于样本的需求量;此外,分布式表达通过逐层降低输入模式的维度,解决高维输入模式引起的维度灾难问题。

        稀疏表达约束深度网络大部分神经元节点处于抑制状态,即输出值为0;只有少数神经元处于活跃状态,输出值非0。稀疏表示的目的就是希望通过少量的神经元来辨识出输入模式内部的驱动要素,在提取出驱动要素的过程中降低网络的计算复杂度。

    2、判别模型与生成模型

        模型参数训练有两种方法,即判别方法和生成方法,参数训练后产生的模型分别称为判别模型和生成模型。在进行模型参数训练时给定一组输入X=(x1,x2,….xn),对应也会在模型的输出端得到一组输出Y=(y1,y2,....yn)。在已知输出Y的情况下,一定存在一组最优的输入X*使得条件概率P(X|Y)的值达到最大。由贝叶斯公式和全概率公式可得:

    其中,P(Y|X)称为先验概率,P(X|Y)成为后验概率。生成方法是先对先验概率P(Y|X)建模,然后再求最优的输入参数。当输出Y已知时,P(Y) = 1,即X* = argmax P(Y|X),因此生成模型认为模型的输出Y可以看作是由输入X生成的。判别方法则是直接对后验概率P(X|Y)进行建模,在给定输出Y的状态下寻找最优的输入X*,因此判别模型认为模型的输入X是由模型的输出Y决定的。

        根据采用参数训练方法不同,深度网络分为生成型深度网络和判别型深度网络两类。深度学习常用模型有堆叠自动编码器、卷积网络和深度信念网络。其中,堆叠自动编码器和卷积网络属于生成型深度网络;深度信念网络属于判别型深度网络。此外,还有一些混合网络,如卷积网络和自动编码器组成卷积自动编码器,限制玻尔兹曼机和卷积网络组成卷积深度信念网络。深度学习应用最为广泛的有卷积网络、深度信念网络和堆叠自动编码器三种网络,这三种网络有各自的网络结构。

    3、参考文献

    [1]   孙志军, 薛雷, 许阳明, 王正. 深度学习研究综述[J]. 计算机应用研究, 2012, 29(8):2806-2810.

    [2]   刘建伟, 刘媛, 罗雄麟. 深度学习研究进展[J]. 计算机应用研究, 2014, 31(7):1921-1942.

    [3]   T. N. Sainath,B. Kingsbury, A. R. Mohamed. Learning filter banks within a deep neural network framework[C]. IEEE Workshop on Automatic Speech Recognition and Understanding (ASRU), Olomouc, 2013.

    [4] G. E. Hinton and R. R. Salakhutdinov. Reducing the dimensionality of data with neural networks[J]. Science, 2006:504–507.

    [5]  Y. LeCun, L. Bottou, Y. Bengio, P. Haffner, Gradient_based Learning Applied to Document Rerognition[J]. PROC. OF THE IEEE, 1998:1-46.

     

    二、深度学习中的表示学习_Representation Learning

     在前面指出了深度学习中常用的三种表示数据的方式,即局部表达、稀疏表达和分布式表达。深度学习强大建模和知识抽取的能力,主要原因之一是它对观测样本X采用了有效的表达方式。

     数据的表达方式为什么如此重要?

        有效的表达方式可以简化我们处理问题的难度。比如,在NLP领域中,采用word2vec把词语表示成向量(vector)形式,要比采用one-hot形式表示词语具有很多优势:

        1、可以基于vector直接计算词与词之间的相似程度,one-hot表达形式不可以;

        2、word2vec表示的向量可以描述词与词之间的依赖关系,one-hot表达形式也不可以;

         3、vector不存在one-hot中的高纬问题,计算效率更高。

    表示(表达)学习(Representation Learning)是什么?为什么表示的概念有助于深度学习框架的设计?

        表示学习,又称学习表示。在深度学习领域内,表示是指通过模型的参数,采用何种形式、何种方式来表示模型的输入观测样本X。表示学习指学习对观测样本X有效的表示。

    表示学习有很多种形式,比如CNN参数的有监督训练是一种有监督的表示学习形式,对自动编码器和限制玻尔兹曼机参数的无监督预训练是一种无监督的表示学习形式,对DBN参数-先进性无监督预训练,再进行有监督fine-tuning-是一种半监督的共享表示学习形式。

    表示学习中最关键的问题是:如何评价一个表示比另一个表示更好?

        表示的选择通常通常取决于随后的学习任务,即一个好的表示应该使随后的任务的学习变得更容易。以基于CNN的图像分类任务为例。模型可以分为基于CNN的特征抽取和基于softmax回归的线性分类两个部分。通过模型参数有监督的训练,通过CNN,从线性不可分的图片里抽取出线性可分表示(特征),softmax线性分类器可以基于抽取的线性可分的表示进行分类。

    表示学习中最有趣的一种形式是涉及多个任务的共享表示学习。为什么?

        以无监督和有监督结合的共享表示学习为例。在深度学习任务中,我们通常有大量的无标签的训练样本和少量的有标签的训练样本。只在有限的有标签的训练样本上学习,会导致模型存在严重过拟合问题。共享表示具体来说,可以从大量无标签的观测样本中通过无监督的方法,学习出很好的表示,然后基于这些表示,采用少量有标签的观测样本来得到好的模型参数,缓解监督学习中的过拟合问题。

        共享表示学习涉及多个任务,多个任务之间共享一定相同的因素,比如相同的分布(distribution)、观测样本X来自相同的领域(domain)等。共享表示学习有多种表示形式。假设共享表示学习中采用训练样本A进行无监督学习,训练样本B进行有监督学习。样本A和样本B可能来自相同的领域,也可能来自不同的领域;可能任务服从相同的分布,也可能服从不同的分布。

        共享表示学习相关的机器学习技术有很多:迁移学习(Transfer Lear)、多任务学习(Multitask Learning)、领域适应性(Domain Adaptation)(One Shot Learning、Zero Shot learning)等。深度学习技术具有很强的特征抽取、知识表达的能力,是共享表示学习的利器,它可以有效抽取多个人任务之间共享的因素、知识或特征。因此,现在出现了很多将深度学习技术用于迁移学习、多任务学习技术中的研究。

     

    展开全文
  • 表示学习(representation learning)是深度学习领域中一个比较重要的方面,本文则提供对表示学习的一个定性理解。 1 什么是表示? 要清楚什么是表示(representation)学习,就得先知道什么是representation。在《deep ...

    0 写在前面

    表示学习(representation learning)是深度学习领域中一个比较重要的方面,本文则提供对表示学习的一个定性理解。

    1 什么是表示?

    要清楚什么是表示(representation)学习,就得先知道什么是representation。在《deep learning with
    python》一书的1.1.3节中是这么定义的,At its core, it’s a different way to look at data—to represent or encode data。这个字面上理解就是表示或者编码数据的一种形式。举个例子,一张图片可以表示为RGB形式也可以表示为HSV形式,这就是对同一数据(data)的两种不同表示。在不同的任务中采取合适的表示会使得任务变得简单一点,比如如果要选取图片中的红色像素点,我们就可以采取RGB形式,如果想让图片更加饱和(saturated),那么采取HSV形式更加简单。又比如说我们要辨别一种鸟类,我们可以使用它的眼睛颜色-羽毛颜色-尾巴形状(这些特征是笔者随便想的,不一定能实际用于分类)作为它的数据,也可以使用脚趾形状-羽毛颜色-尾巴形状作为数据,而眼睛颜色等也是鸟的特征,所以表示学习又叫特征学习(feature learning)。

    2 表示学习?

    为了更好地理解什么是表示学习?可以参考知乎的一篇回答。如下:
    在这里插入图片描述
    即稍微入门一点机器学习的都知道传统地做法都人为地设计特征或者说使用已经完全标记好的数据来试图接近最好的分类效果。但实际上很多未标记的或者说标记相对较少的训练数据,我们当然可以人为标记,但也可以自动地筛选出比较重要的特征,有点类似于**PCA(主成分分析)**的思路,这就是表示学习或者说特征学习。

    表示学习虽然从结构上讲只是数据的一个预处理手段,但是正如“工欲善其事,必先利其器”一样,它的出现提供了进行无监督学习和半监督学习的一种方法。其重要性不言而喻,以至于在花书中被单独列出来作为一章。表示学习一个比较典型的方法就是自编码器,有兴趣的可以自查。

    3 参考资料

    [1] 知乎
    [2] repesentation learning维基百科
    [3] deep learning with python, François Chollet
    [4] 深度学习(中文版),伊恩*古德费洛

    展开全文
  • 表示学习

    2019-04-18 15:59:21
    表示学习 表示:将输入信息转换为有效的特征 表示学习:自动地学习出有效的特征,并提高最终机器学习模型的性能。 语义鸿沟:输入数据的底层特征和高层语义信息之间的不一致性和差异性。 表示学习的关键是解决...

    表示学习

    表示:将输入信息转换为有效的特征

    表示学习:自动地学习出有效的特征,并提高最终机器学习模型的性能。

    语义鸿沟:输入数据的底层特征和高层语义信息之间的不一致性和差异性。

    表示学习的关键是解决语义鸿沟。+

    好的表示:

    • 一个好的表示应该具有很强的表示能力,即同样大小的向量可以表示更多信息。
    • 一个好的表示应该使后续的学习任务变得简单,即需要包含更高层的语义信息。
    • 一个好的表示应该具有一般性,是任务或领域独立的。虽然目前的大部分表示学习方法还是基于某个任务来学习,但我们期望其学到的表示可以比较容易的迁移到其他任务上。

    在传统机器学习中,我们经常使用两种方式来表示特征:局部表示(LocalRepresentation)和分布式表示(Distributed Representation)。

    局部表示通常可以表示为one-hot向量的形式。

    局部表示的不足:

    1)one-hot向量维度很高,且不能扩展。2)不同属性直接相似度为0.

    分布式表示:低维的稠密向量。如,表示颜色使用RGB值来表示即为分布式表示。

    嵌入:将一个度量空间中的一些对象映射到另一个低维的度量空间中,并尽可能保持不同对象之间的拓扑关系。

    要学习到一种好的高层语义表示(一般为分布式表示),通常需要从底层特征开始,经过多步非线性转换才能得到。

    一个深层结构的优点是可以增加特征的重用性,从而指数级地增加表示能力

    展开全文
  • 知识表示学习研究进展

    万次阅读 2018-05-10 13:41:04
    Paper: 刘知远 2016 知识表示学习研究进展 计算机研究与发展 1. 表示学习旨在将研究对象的语义信息表示为稠密低维表示向量;而知识表示学习则面向知识库中的实体和关系进行表示学习;该技术可以在低维空间中高效...
  • representation learning 表示学习

    万次阅读 多人点赞 2017-12-20 15:18:21
    representation learning
  • 文章目录表示学习特征工程与表示学习深度学习的表示学习注:深度学习不等于多层神经网络什么时候用「手工提取」什么时候用「表示学习」?关于特征表示学习的算法参考资料 表示学习 表示学习的基本思路,是找到对于...
  • 字典学习/稀疏表示学习笔记

    万次阅读 多人点赞 2016-02-24 16:10:58
    首先向大家安利一下南大周志华老师写的《机器学习》这本书,作为一个对此一窍不通的人看了都觉得很有意思,受益匪浅。语言平实却又干货十足,比某些故弄玄虚泛泛而谈的其它国内教材高到不知哪里去了。 最近看的...
  • Word Representation1. one-hot representation ...互相正交,难以表示词语之间的相似性 2. distributed representation(词向量) 稠密、实值、低维的向量 便于Deep Learning 相似度用距离表示 word2vec ki
  • 无监督算法只处理“特征”,不操作监督信号。监督和无监督算法之间的区别没有规范严格的定义,因为没有客观的判断来区分监督者提供的...通俗地说,无监督学习的大多数尝试是指从不需要人为注释的样本的分布中抽取信息。
  • 我们在前面的《模型汇总_9 深度学习网络的表达方式汇总及模型分类方法》这篇文章中,指出了深度学习中常用的三种表示数据的方式,即局部表达、稀疏表达和分布式表达。深度学习强大建模和知识抽取的能力,主要原因之...
  • 网络表示学习(Graph Embedding)简述

    千次阅读 2018-09-08 17:43:22
     网络表示学习又称图嵌入(Graph Embedding),主要目的是将一个网络中的节点基于网络的特点映射成一个低维度向量,这样可以定量的衡量节点之间的相似度,更加方便的应用。 3、Deepwalk  该网络表示学习方法主要...
  • 本文旨在解释一些深度学习中的基本概念,并通过一些实践...表示学习(representation learning)  表示学习是机器学习中的一项重要任务,又称学习表示。即用何种机器能够理解的表示方法来标表示数据。例如在NLP领...
  • 知识图谱之知识表示

    千次阅读 2018-08-05 19:54:14
    表示学习旨在将研究对象的语义信息表示为稠密低维实值向量,知识表示学习主要是面向知识图谱中的实体和关系进行表示学习。使用建模方法将实体和向量表示在低维稠密向量空间中,然后进行计算和推理。” 知识表示的...
  • 稀疏表示与字典学习

    万次阅读 2017-04-21 22:20:41
    三字典学习及应用Dictionary learning一、稀疏性表示与分类(Sparse representation) 二、压缩感知(Compressed sensing)如果信号在某一个正交空间具有稀疏性(即可压缩性),就能以较低的频率采样该信号,并可能以...
  • 稀疏表示学习

    万次阅读 2017-04-25 21:22:42
    1.提出问题:什么是稀疏表示 假设我们用一个M*N的矩阵表示数据集X,每一行代表一个样本,每一列代表样本的一个属性,一般而言,该矩阵是稠密的,即大多数元素不为0。 稀疏表示的含义是,寻找一个系数矩阵A(K*N...
  • 稀疏表示和字典学习的简单理解

    千次阅读 2019-02-20 16:28:51
    稀疏表示和字典学习的简单理解特征分类稀疏表示字典学习 特征分类 相关特征:对当前有用的属性 冗余特征:所包含的信息有时能从其他特征中推演出来。如若某个冗余特征恰好对应了学习任务所需“中间概念”,有时可以...
  • 当知识图谱“遇见”深度学习

    万次阅读 2017-05-04 13:36:18
    当知识图谱“遇见”深度学习 知识图谱 深度学习 阅读2714  作者:肖仰华,复旦大学计算机科学技术学院,副教授,博士生导师,上海市互联网大数据工程技术中心副主任。主要研究方向...
  • 程序分析:(a>b)?a:b这是条件运算符的基本例子。 代码如下:public class Prog5{ public static void main(String[] args){ int n = 70; grade(n); } //成绩等级计算 private static void grade(int n){
  • 随着深度学习的发展与应用,我们期望采用一种更为简单的方式表示,那就是【向量】,采用向量形式可以方便我们进行之后的各种工作,比如:推理,所以,我们现在的目标就是把每条简单的三元组< subject, ...
1 2 3 4 5 ... 20
收藏数 1,442,868
精华内容 577,147
关键字:

表示学习