学习有意义且有效的文本(例如word
、document
)的 representation
,是许多机器学习任务(例如文本分类、文本聚类、文本检索)的关键前提条件。传统上,每个word
都相互独立地表示,并且每个document
都表示为 bag-of-words
。然而,这两种representation
都存在数据稀疏、多义性polysemy
、同义性synonymy
等问题,因为在这两种representation
中不同word
之间的语义相关性semantic relatedness
通常被忽略。
word
和document
的分布式representation
通过在低维空间中表达word
和document
,从而有效地解决了这个问题。在这个低维空间中,相似的word
/document
彼此紧密地嵌入。这些方法的基本思想来自于分布式假设 distributional hypothesis
:一个单词的意义是由它的使用环境所形成的 (you shall know a word by the company it keeps
)。 《Distributed representations of words and phrases and their compositionality》
提出了一种简单而优雅的 word embedding
模型,称作 SkipGram
。SkipGram
使用 target word
的 embedding
来预测局部窗口 local window
中每个单独的 context word
的 embedding
。《Distributed representations of sentences and documents》
进一步扩展了这一思想,并提出了 Paragraph Vector
从而嵌入任意的文本片段,例如sentence
和document
。其基本思想是:使用 sentence/document
的embedding
来预测 sentence/document
中word
的 embedding
。和也利用 word context
的分布式相似性distributional similarity
的其它经典方法(如布朗聚类 Brown clustering
、最近邻法)相比,这些 text embedding
方法已被证明是非常有效的,可以在单台机器上扩展到数百万个 document
。
由于采用无监督学习,通过这些 text embedding
模型学到的 representation
足够通用,可以应用于分类classification
、聚类clustering
、以及排序ranking
等各种任务。然而,和端到端的复杂的深度学习方法(如卷积神经网络)相比时,text embedding
的性能通常在特定任务上达不到要求。这毫不奇怪,因为深度神经网络在学习数据 representation
时充分利用了可用于任务的 label
信息。大多数 text embedding
方法在学习 representation
时都无法考虑 label
信息。只有在使用训练好的 representation
作为特征来训练分类器时,label
才会被使用。换句话讲,无监督的 text embedding
对于不同的任务是可泛化generalizable
的,但是对于特定任务的预测能力较弱。
尽管存在这一缺陷,但是和深度神经网络相比,text embedding
方法仍有相当大的优势。
GPU
或 CPU
集群。另一方面,像 SkipGram
这样的 text embedding
方法效率更高、更容易调优、并且天然地适应于未标记数据。
在论文 《PTE:Predictive Text Embedding through Large-scale Heterogeneous Text Networks》
中,作者通过提出 predictive text embedding: PTE
来填补这一空白。PTE
具有无监督 text embedding
的优点,但是在 representation learning
过程中自然地利用了标记信息。通过 PTE
,我们可以从有限的标记样本和大量的未标记样本中联合学习有效的低维 representation
。与无监督 embedding
相比,这种 representation
针对特定任务进行了优化,就像卷积神经网络所作的那样。即,PTE
学到的 representation
对特定的分类任务具有很强的预测能力。
PTE
自然地扩展了作者之前的无监督信息网络 embedding
工作(《Line: Large-scale information network embedding》
),并首先提出通过异质文本网络heterogeneous text networt
学习word
的低维 embedding
。该网络对 word-word
、word-document
、word-label
之间不同 level
的共现信息co-occurrence information
进行编码。该网络被嵌入到一个低维向量空间中,该空间保留了网络中顶点之间的二阶邻近性second-order proximity
。任意一段文本(例如 sentence
或 document
)的 representation
可以简单地推断为 word representation
的均值,结果证明这是非常有效的。整个优化过程仍然非常高效,在单台机器上可以扩展到数百万个 document
和数十亿个 token
。
论文对现实世界的文本语料库进行了广泛的实验,包括 long document
和 short document
。实验结果表明:PTE
在各种文本分类任务中显著优于 state-of-the-art
的无监督 embedding
。与用于文本分类的端到端卷积神经网络相比,PTE
在 long document
上表现更好、在 short document
上表现相当。与卷积神经网络相比,PTE
具有各种优势,因为它更高效、有效地利用大规模未标记数据,并且对模型超参数不太敏感。作者相信PTE
的探索指向了一个学习 text embedding
的方向,该方向可以在特定任务中与深度神经网络进行正面竞争。
总而言之,论文的贡献如下:
predictive text embedding
。未标记数据和标记信息被集成到一个异质文本网络中,该网络包含不同 level
的文本共现信息。PTE
,它通过将异质文本网络嵌入到低维空间中来学习文本的分布式 representation
。该算法非常有效,几乎没有需要调优的超参数。PTE
与无监督 text embedding
、卷积神经网络进行了比较。相关工作:我们的工作主要涉及分布式文本 representation learning
和信息网络 embedding
。
Distributed Text Embedding
:文本的分布式 representation
已被证明在许多自然语言处理任务中非常有效,例如单词类比 word analogy
、词性标注 POS tagging
、parsing
、语言建模 language modeling
、以及情感分析sentiment analysis
。现有的方法通常可以分为两类:无监督方法、监督方法。
local context
(例如 SkipGram
)或者 document
级别(例如 Paragraph Vector
),利用 word co-occurrence
来学习 word/document
的 embedding
。这些方法非常有效,可以扩展到数百万个 document
。recursive neural tensor network: RNTN
、convolutional neural network: CNN
。在 RNTN
中,每个 word
都嵌入到一个低维向量中,并且通过在 parse tree
中的子短语 sub-phrase
或者 word
上应用相同的、基于张量tensor-based
的组合函数composition function
来递归学习短语 phrase
的 embedding
。在 CNN
中,每个 word
也用一个向量来表示,并且在 sentence
的不同位置的上下文窗口上应用相同的卷积核,然后是一个最大池化层和一个全连接层。这两类方法之间的主要区别在于它们如何在 representation learning
阶段利用标记信息和未标记信息。无监督方法在 representation learning
时不包含标记信息,仅在将数据转换为学到的 representation
之后,才使用 label
来训练分类器。RNTN
和 CNN
将 label
直接结合到 representation learning
中,因此学到的 representation
特别针对分类任务进行了调优。然而,为了融合未标记的样本,这些神经网络通常必须使用间接方法,例如使用无监督方法预训练 word embedding
。和这两类方法相比,PTE
以半监督方式学习 text embedding
,representation learning
算法直接利用标记信息和大量的未标记数据。
与 predictive word embedding
类似的另一项工作是 《Learning word vectors for sentiment analysis》
,该工作学习特别针对情感分析调优的 word embedding
。然而,他们的方法无法扩展到数百万个 document
,也无法推广到其它分类任务。
Information Network Embedding
:我们的工作还与 network/graph embedding
问题有关,因为 PTE
的 word representation
是通过异质文本网络 heterogeneous text network
学到的。
将 network/graph
嵌入到低维空间,这在各种应用中非常有用,例如节点分类、链接预测。MDS
、IsoMap
、Laplacian eigenmap
等经典 graph embedding
算法不适用于嵌入包含数百万个顶点、数十亿条边的大型网络。
最近有一些工作试图嵌入非常大的现实世界网络。《Deepwalk: Online learning of social representations》
提出了一种叫做 DeepWalk
的 network embedding
模型,该模型在网络上使用截断的随机游走,并且仅适用于具有二元边的网络。我们先前的工作提出了一种新的大规模网络嵌入模型,称作 LINE
。LINE
适用于任意类型的信息网络,无向或有向、二元边或者带权边。LINE
模型优化了一个目标函数,该目标函数旨在保持局部网络结构 local network structure
和全局网络结构 global network structure
。DeepWalk
和 LINE
都是无监督的,只能处理同质网络homogeneous network
。PTE
使用的 network embedding
算法扩展了 LINE
从而处理异质网络(网络中存在多种类型的顶点和边)。
让我们从正式定义 predictive text embedding
问题(通过异质文本网络)来开始。与学习文本的通用语义representation
的无监督 text embedding
方法(包括 SkipGram
和 Paragraph Vector
)相比,我们的目标是学习针对给定文本分类任务优化的文本 representation
。换句话讲,我们期待 text embedding
对给定任务的性能具有很强的预测能力。基本思想是:在学习 text embedding
时结合标记信息和未标记信息。为了实现这一点,首先需要有一个统一的 representation
对这两类信息(标记的和未标记的)进行编码。在本文中,我们提出了不同类型的网络来实现这一点,包括 word-word co-occurrence network
、word-document network
、word-label network
。
word-word co-occurrence network
:word-word
共现网络表示为 local context
中的 word
共现信息。word
的词表 vocabulary
,word
之间的边的集合(共现关系)。word
word
在给定窗口大小的上下文窗口中同时出现的次数。
word-word
网络捕获局部上下文中的 word
共现,这是现有 word embedding
方法(如 SkipGram
)使用的基本信息。除了局部上下文之外,document level
的 word
共现也在经典的文本 representation
中被广泛探索,例如统计主题模型 statistical topic model
(如 latent Dirichlet allocation: LDA
)。为了捕获 document level
的 word
共现,我们引入了另一个网络,即 word-document
网络。
word-document network
: word-document
网络表示为二部图 document
的集合,word
的集合,word
到 document
的链接构成的边集合。word
document
word
document
word-word
网络和 word-document
网络对大规模语料库中的未标记信息进行编码,在局部上下文 level
和 document level
捕获 word
共现。为了对标记信息进行编码,我们引入了 word-label
网络,该网络在 category-level
捕获 word
共现。
word-label network
:word-label
网络表示为二部图 class
的集合,word
的集合,word
到 class
的链接构成边的集合。category-level
的 word
共现。word
class
document
word
document
class label
。
上述三种网络可以进一步融合为一个异质文本网络heterogeneous text network
(如下图所示)。
Heterogeneous Text Network
:异质文本网络是由标记文本数据和未标记文本数据共同构建的 word-word
网络、word-document
网络、word-label
网络的组合。它捕获不同 level
的 word
共现,并同时包含标记信息和未标记信息。
注意,异质文本网络的定义可以推广到融合其它类型的网络,例如 word-sentence
网络、word-paragraph
网络、document-label
网络等等。在这项工作中,我们使用三种类型的网络(word-word
、word-document
、word-label
)作为说明性示例。我们特别关注 word
网络,以便首先将 word
表示为低维空间。然后可以通过聚合 word representation
来计算其它文本单元(如 stentence
或 paragraph
)的 representation
。
子网的构建需要结合具体任务,并且对任务性能产生重大影响。但是论文并未给出子网构建的原则。可以借鉴的是:这里的
word-word
捕获局部共现、word-document
捕获全局共现。
最后,我们正式定义 predictive text embedding
问题如下:
Predictive Text Embedding
:给定具有标记信息和未标记信息的大量文本数据,predictive text embedding
问题旨在通过将由文本数据构建的异质文本网络嵌入到低维向量空间中从而学习 word
的低维 representation
。
接下来我们将介绍通过异质文本网络学习 predictive text embedding
的方法。我们的方法首先将异质文本网络嵌入到低维空间来学习 word
的向量 representation
,然后根据学到的 word embedding
推断 text embedding
。由于异质文本网络由三个二部图组成,我们首先介绍一种嵌入单个二部图的方法。
在我们之前的工作中,我们引入了 LINE
模型来学习大规模信息网络的 embedding
。LINE
主要是为同质网络而设计的,即具有相同类型节点的网络。LINE
无法直接应用于异质网络,因为不同类型边的权重不具有可比性。在这里,我们首先将 LINE
模型用于嵌入二部图。基本思想是:利用顶点之间的二阶邻近性,假设具有相似邻域的顶点彼此相似,因此应该在低维空间中紧密地表示。
对于二部图,假设顶点
和顶点 具有相似的邻域,则暗示了 和 的顶点类型相同。
给定一个二部图
其中:embedding
向量,embedding
向量。
对于 second-order proximity
可以由它们的条件分布
其中:
KL-divergence
函数。degree
:忽略常数项,则上述目标函数重写为:
我们可以采用带边采样edge sampling
和负采样 nagative sampling
的随机梯度下降法来求解该最优化问题。在梯度下降的每一步:
binary edge
edge sampling
。noise distribution
nagative sampling
。采样过程解决了学习 network embedding
中随机梯度下降的重大缺陷。详细的优化过程可以参考 LINE
的原始论文。
word-word
网络、word-document
网络、word-label
网络的 embedding
都可以通过上述模型来学习。注意,word-word
网络本质上是一个二部图,可以将每条无向边视为两条有向边,并且将 embedding
。
异质文本网络由三个二部图组成:word-word
网络、word-document
网络、word-label
网络,其中 word
顶点在三个网络之间共享。为了学习异质文本网络的 embedding
,一种直观的方法是共同嵌入三个二部图,这可以通过最小化以下目标函数来实现:
上述目标函数可以通过不同的方式进行优化,具体取决于如何使用标记信息(即 word-label
网络)。
word-word
网络和 word-document
网络)和标记数据训练模型。我们称这种方法为联合训练 joint training
。embedding
,然后使用 word-label
网络来微调 embedding
。这是受到深度学习文献中预训练和微调 pre-training and fine-tuning
思想的启发。在联合训练中,所有三种类型的网络一起使用。优化目标 edge sampling
(在每个 step
中对边进行采样从而进行模型更新,采样概率与边的权重成正比)。然而,当网络是异质的时候,不同类型顶点之间的边的权重是不可比的。更合理的解决方案是从三组边中交替采样。
PTE
联合训练算法:
输入:
输出:所有单词的 embedding
算法步骤:
循环迭代,直到迭代了 step
。迭代过程为:
word embedding
。word embedding
和 document embedding
。word embedding
和 label embedding
。PTE
预训练和微调算法:
输入:
输出:所有单词的 embedding
算法步骤:
预训练阶段:循环迭代,直到迭代了 step
。迭代过程为:
word embedding
。word embedding
和 document embedding
。微调阶段:循环迭代,直到迭代了 step
。迭代过程为:
word embedding
和 label embedding
。Text Embedding
:异质文本网络对不同 level
的 word co-occurrence
进行编码,这些编码是从未标记数据和特定分类任务的标记信息中提取的。因此,通过嵌入异质文本网络学习的 word representation
不仅更加鲁棒,而且针对该特定任务进行了优化。一旦学到了 word vector
,就可以通过简单地对这段文本中 word
的向量求均值来获得任意一段文本的 representation
。即,一段文本 representation
可以计算为:
其中 word
embedding
向量。
事实上,word embedding
的均值是最小化以下目标函数的最优解:
其中 word embedding
和 text embedding
之间的、欧式距离的损失函数。
与之相关的是 paragraph vector
的推断过程,它的目标函数相同但是具有不同的损失函数:
然而这个损失函数对应的目标函数没有闭式解close form solution
,因此必须通过梯度下降算法来优化。
数据集:我们选择了长文document
、短document
两种类型的数据集:
长document
数据集:
20newsgroup
数据集:广泛使用的文本分类数据集,包含 20
个类别。wiki
数据集:2010
年 4
月的维基百科数据集,包含大约 200
万篇英文文章。我们仅保留 2010
年维基百科中出现的常见词汇。我们选择了七种不同类别,包括 Art, History, Human, Mathematics, Nature, Technology, Sports
。每种类别我们随机选择 9000
篇文章作为标记的document
来训练。Imdb
数据集:一个情感分类数据集。为避免训练数据和测试数据之间的分布偏差,我们随机混洗了训练数据和测试数据。RCV1
数据集:一个大型文本分类基准语料库。我们从数据集中抽取了四个子集,包括 Corporate, Economics, Government, Market
。在 RCV1
数据集中,文档已经被处理为 bag-of-word: BOW
的格式,因此 word
的顺序已经被丢失。短document
数据集:
DBLP
数据集:包含来自计算机科学领域论文的标题。我们选择了六个领域的论文,包括 database, articial intelligence, hardware, system, programming languages, theory
等。对于每个领域,我们选择该领域具有代表性的会议并收集该会议中发表的论文作为标记的 document
。MR
数据集:一个电影评论数据集,每条评论仅包含一个 sentence
。
Twitter
数据集:用于情感分类的 Tweet
语料库。我们从中随机抽取了 120
万 Tweets
然后拆分为训练集和测试集。 我们并没有在原始数据上执行进一步的文本归一化text normalization
,如删除停用词或者词干化。下表给出了数据集的详细统计信息。
baseline
方法:我们将 PTE
算法和其它的文本数据 representation learning
算法进行比较,包括经典的 BOW
算法、 state-of-the-art
的无监督 text embedding
、以及 state-of-the-art
的监督 text embedding
方法。
BOW
:经典的 BOW
方法。每篇文档使用一个 word
TFIDF
值。
SkipGram
:根据 SkipGram
训练得到 word embedding
,然后我们使用word embedding
的均值来作为 document embedding
。
PVDBOW
:一种 paragraph embedding
模型,其中document
内word
的顺序被忽略。
PVDM
:另一种paragraph embedding
模型,其中document
内word
的顺序被考虑。
LINE
:我们之前的工作提出的大规模信息网络 embedding
模型。我们使用 LINE
模型分别学习 word-word
网络和 word-dococument
网络,分别记作 word-word
网络和 word-document
网络,记作
CNN
:基于卷积神经网络 CNN
模型来监督学习 text embedding
。尽管原始论文用于建模sentence
,我们这里将其改编为适用于长文本在内的一般word
序列。尽管CNN
通常适用于完全标记的 documnet
,但是它也可以通过无监督的 word embedding
从而对模型进行预训练来利用未标记数据,这被记作 CNN(pretrain)
。
PTE
:我们提出的、学习predictive text embedding
的方法。PTE
有多种变体,它们使用 word-word
、word-document
、word-label
的不同组合。
word-label
的版本。word-word
和 word-label
的版本。word-document
和 word-label
的版本。word-word
、word-document
进行无监督训练,然后使用 word-label
来微调的版本。PTE(joint)
为联合训练异质文本网络的版本。实验配置:
SkipGram, PVDBOW, PVDM, PTE, PTE
模型:
mini-batch size
设为 1
。T
为总的迭代步数,K=5
。SkipGram, PVDBOW, PVDM, PTE
模型:word-word
网络共现窗口大小为 5
。
CNN
模型:我们使用 《Convolutional neural networks for sentence classication》
中的 CNN
结构。该结构使用一个卷积层,然后是最大池化层和全连接层。卷积层的窗口大小设为 3
,feature map
数量设为 100
,随机选择训练集的 1%
作为验证集来执行早停。
所有embedding
模型的词向量维度为 100
。
注意:对于 PTE
模型,默认情况下在不同数据集上,超参数均按照上述设置。唯一需要调整的超参数的边采样中的样本数
评估方式:一旦构建或学习了 document
的向量representation
,我们就会使用相同的训练数据集应用相同的分类过程。具体而言,训练集中的所有文档都用于 representation learning
阶段和classifier learning
阶段。
embedding
方法,则在 representation learning
阶段不使用 document
的类别标签,仅在classifier learning
阶段使用类别标签。predictive embedding
方法,则同时在这两个阶段都使用类别标签。对于测试数据集,我们在这两个阶段都留出 hold-out
标签数据和 document
文本。
注意:在
representation learning
阶段保留所有测试数据,即这一阶段模型看不到测试数据的标签、也看不到测试数据的文本。
在分类阶段,我们使用 LibLinear package
中的 one-vs-rest
逻辑回归模型,并评估 micro-F
和 macro-F1
指标。每一种配置我们都执行十次,并报告指标的均值和方差。
我们在 20NG,Wiki,IMDB
数据集上的长文本效果对比如下。
首先我们比较无监督 text embedding
方法,可以看到:
document-level
的 word
共现的 embedding
中表现最好。PVDM
性能不如 PVDBOW
,这和原始论文中的结论不同。不幸的是我们始终无法得出他们的结论。然后我们比较 predictive embedding
方法,可以看到:
PTE(joint)
效果最好。word-label
网络PTE
方法都超越了对应的无监督方法(即 LINE
模型),这表明了在监督学习下 predictive text embedding
的强大能力。PTE(joint)
超越了 PTE(joint)
也超越了PTE(pretrain)
,这表明联合训练未标记数据和标记数据,要比将它们分别独立训练并微调更有效。embedding
来对 CNN
进行预训练,然后使用 label
信息对其进行微调。出乎意料的是:预训练 CNN
在 20NG
和 IMDB
数据集上显著提高,并且在 Wiki
上几乎保持不变。这意味着训练良好的无监督 embedding
对 CNN
进行预训练非常有用。CNN
,其性能仍然不如 PTE(joint)
。这可能的因为 PTE
模型可以联合训练标记数据和未标记数据,而 CNN
只能通过预训练和微调两阶段来各自独立的使用标记数据和未标记数据。PTE(joint)
也始终优于经典的 BOW
模型,尽管 PTE(joint)
的 embedding
向量维度远小于 BOW
的向量维度。我们在 RCV1
数据集上的长文本效果对比如下。由于word
之间的顺序丢失,因此要求保留word
顺序信息的 embedding
方法不适用。这里我们观察到了类似的结论:
predictive embedding
方法超越了无监督 embedding
。PTE(joint)
方法比 PTE(pretrain)
方法更有效。我们比较了 CNN
和 PTE(joint)
在 IMDB
数据集上的训练实践。我们采用异步随机梯度下降算法,在 1T
内存、2.0G HZ
的 40
核 CPU
上执行。平均而言 PTE(joint)
要比 CNN
快 10
倍以上。当使用 pretrain
时,CNN
虽然训练速度加快,但是仍然比 PTE(joint)
慢 5倍以上。
我们在短文本上比较了模型性能如下。
首先我们比较无监督 text embedding
方法,可以看到:
document-level
和local-context level
的 word
共现的 word
共现的 document
级别 word
共现的 document
级别的 word
共现非常稀疏。我们在主题模型中也观察到了类似的结果。PVDM
性能仍然不如 PVDBOW
性能,这和长文本中结论一致。然后我们比较 predictive embedding
方法,可以看到:
PTE
在 DBLP,MR
数据集上性能最佳,CNN
在 Twitter
数据集上性能最好。
融合了word-label
网络的 PTE
方法超越了对应的无监督embedding
方法(即 LINE
模型),这和长文本中结论一致。
PTE(joint)
超越了
PTE(joint)
超越了 PTE(pretrain)
,这证明了对标记数据和未标记数据联合训练的优势。
我们观察到 PTE(joint)
并不能始终超越 CNN
。原因可能是单词歧义 ambiguity
问题,这类问题在短文本中更为严重。
CNN
通过在卷积核中使用局部上下文的word
顺序来减少单词歧义问题,而 PTE
抛弃了word
顺序。我们相信:如果利用了word
顺序,则 PTE
还有很大提升空间。
我们考察标记样本规模的变化对 CNN
和 PTE
的影响。我们考虑两种模式:
CNN
。PTE(joint)
、CNN
等。在半监督学习中,我们还比较了经典的半监督方法:带 EM
的朴素贝叶斯NB+EM
、标签传播算法 label propagation:LP
。
可以看到:
CNN
和 PTE
随着标记数据规模的增加,性能持续改善。CNN
和 CNN
或可与 CNN
媲美。CNN(pretrain)
和 PTE(joint)
之间,PTE(joint)
始终优于 CNN(pretrain)
。PTE(joint)
还始终优于经典的 NB+EM
和 LP
方法。另外我们还注意到:
embedding
的预训练 CNN
非常有效,尤其是在短文本上。当训练样本太少时,它甚至优于所有的 PTE
。CNN
并不总是能够改善其性能,如 DBLP
和 MR
数据集。SkipGram
模型,增加标记数据规模几乎不会进一步改善其性能。DBLP
数据集上,当标记样本太少时 PTE
性能甚至不如 SkipGram
。原因是当标记数据太少时,word-label
网络的噪音太多。PTE
将 word-label
网络与噪音较少的 word-word, word-document
网络同等对待。一种解决办法是:在标签数据不足时,调整 word-label, word-word, word-document
网络的采样概率。我们考察未标记数据规模的变化对 CNN(pretrain)
和 PTE
的影响。由于篇幅有限,这里我们仅给出 20NG
和 DBLP
数据集的效果。对于 CNN
,未标记数据可用于预训练。对于 PTE
,未标记数据可用于预训练或联合训练。
在 20NG
数据集上,我们使用 10%
文档作为标记数据,剩余文档作为未标记数据;在 DBLP
数据集上,我们随机抽取其它会议发表的 20
万篇论文的标题作为未标记数据。
我们使用 CNN
的预训练模型。可以看到:
CNN
和 PTE
性能都有改善。PTE
模型,未标记数据和标记数据联合训练的效果要优于“预训练和微调”的方式。PTE
模型除了训练步数 T
之外,大多数超参数对于不同训练集都是不敏感的(如学习率、batch size
),所以可以使用默认配置。
我们在 20NG
和 DBLP
数据集上考察了 PTE(joint)
对于参数 T
的敏感性。可以看到:当 T
足够大时,PTE(joint)
性能会收敛。
实际应用中,我们可以将 T
的数量设置称足够大。经验表明:T
的合理范围是异质文本网络中所有边的数量的几倍。
我们给出了无监督 embedding
(以 predictive embedding
(以 20NG
数据集上采用 tSNE
可视化的结果。
我们对训练集和测试集的文档均进行了可视化,其中 document embedding
为document
内所有word embedding
的均值。可以看到:在训练集和测试集上,predictive embedding
均比无监督 embedding
更好地区分了不同的类别。这直观表明了 predictive embedding
在文本分类任务中的强大能力。
无监督 embedding
使用的基本信息是局部上下文级别或者document
级别的word
共现。
document
级别的word
共现比局部上下文级别的word
共现效果更好,并且二者的结合并不能进一步改善效果。word
共现比document
级别的word
共现效果更好,并且二者的结合可以进一步改善效果。这是因为document
级别的word
共现受到文本长度太短的困扰,即文本太稀疏。predictive embedding
中:
与 PTE
相比, CNN
模型可以更有效地处理标记信息,尤其是在短文本上。这是因为 CNN
的模型结构比 PTE
复杂得多,尤其时 CNN
可以在局部上下文中利用词序从而解决word
的歧义问题。因此,在标记数据非常稀疏的情况下,CNN
可以超越 PTE
,尤其是在短文本上。但是这个优势是以大量的计算、详尽的超参数调优为代价的。
与 CNN
相比,PTE
训练速度更快、超参数调整更容易(几乎没有需要调整的超参数)。当标记数据更为丰富时,PTE
的性能至少和 CNN
一样好并且通常更好。
PTE
模型的一个明显优势是它可以联合训练标记数据和未标记数据。相比之下 CNN
只能通过预训练来间接利用未标记数据。当标记数据非常丰富时,这种预训练并不总是有帮助的。
实践指南:基于上述讨论,我们提供以下实践指南。
当没有标记数据时:
text embedding
。text embedding
。当只有少量标记数据时:
PTE
来学习text embedding
。CNN(pretrain)
,其中预训练采用 当有大量标记数据时:
PTE(joint)
来学习 text embedding
。PTE(joint)
、CNN
或者 CNN(pretrain)
三者之间选择,其中主要考虑训练效率和模型效果之间的平衡。未来方向:PTE
中考虑 word
的词序。
向量化的 data representation
经常出现在许多数据挖掘 application
中。向量化的 data representation
更容易处理,因为每个数据都可以被视为驻留在欧式空间中的一个 point
。因此,可以通过一个合适的指标来直接衡量不同 data point
之间的相似性,从而解决分类、聚类、检索等传统任务。如 《Data Classification: Algorithms and Applications》
所示,学习良好的 representation
是数据挖掘和 web
搜索中的基本问题之一。与设计更复杂的模型相比,学习良好的 representation
对任务效果的影响通常更大。
不幸的是,许多network
数据源(如 Facebook, YouTube, Flickr, Twitter
)无法自然地表示为向量化的输入。这些社交网络和社交媒体数据通常以图数据 graph data
和关系数据 relational data
二者组合的形式来表示。当前的研究集中在预定义pre-defined
的特征向量、或者复杂的 graph-based
的算法来解决底层任务。人们在各种主题上完成了大量的研究,例如协同分类 collective classification
、社区检测community detection
、链接预测link prediction
、社交推荐social recommendation
、定向广告targeted advertising
等等。对于内容和链接而言,网络数据network data
以 embedding
形式开发的 unified representation
非常重要。 unified representation
的基本假设是:一旦获得向量化的 representation
,网络挖掘任务就可以很容易地通过现有的机器学习算法来解决。
然而,网络数据的 feature learning
并不是一项简单的任务,因为网络数据具有许多特有的特性,例如网络的规模、动态性、噪声、以及异质性heterogeneity
。首先,社交网站上的多媒体数据量呈指数级增长。到 2011
年年中,Facebook
上的照片估计数量已达 1000
亿张,并且每天上传的新照片数量高达 3.5
亿张。其次,鉴于用户的不同背景background
,社交媒体往往噪音很大。而且研究人员注意到,垃圾邮件发送者产生的数据比合法用户更多,这使得网络挖掘更加困难。最后,社交媒体数据包含多样diverse
的、异质的信息。例如,当事件发生时,不同类型的媒体数据都会进行报道。如下图所示,当在谷歌中搜索 “马航 MH17
” 时,相关结果中不仅包含文本文档,还包含图像和视频。
此外,社交媒体数据不是孤立存在的,而是由各种类型的数据组合而成的。这些交互可以通过它们之间的链接显式或隐式地形成。例如,在同一网页中同时出现的图像和文本提供了它们之间的显式链接,而文本到文本的链接是通过不同 web document
之间的超链接显式形成的。另一方面,用户的交互活动可以被视为隐式反馈,它链接了不同的社交媒体部分social media component
。如果用户以相似的标签tag
描述多张图像,那么一个合理的假设是:这些图像之间存在语义关系。很明显,如此庞大的数据量导致了复杂的异质网络,这给学习 uniform representation
带来了巨大的挑战。
为了应对上述挑战,论文 《Heterogeneous Network Embedding via Deep Architectures》
提出了一种关于 network representation learning
的新思想,称作 Heterogeneous Network Embedding: HNE
。HNE
同时考虑了内容信息 content information
和关系信息relational information
。HNE
将不同的异质对象映射到一个统一unified
的潜在空间中,以便可以直接比较来自不同空间的对象。
与传统的线性 embedding
模型不同,HNE
将 feature learning
过程分解为深层的多个非线性层。HNE
通过迭代求解关于 feature learning
和 objective minimization
的问题,从而协调并相互加强这两个部分。HNE
同时建模了底层网络的全局链接结构global linkage structure
和局部链接结构local linkage structure
,这使得它在捕获网络链接方面比浅层 embedding
方案更强大,特别是当链接信息在揭示不同对象之间的语义相关性方面起关键作用时。沿着这个研究方向,论文利用网络链接来设计一个损失函数,从而迫使网络中存在链接的不同对象在 embedding
空间是相似的。network-preserved embedding
的思想如下图所示。
事实上根据
HNE
的模型公式,HNE
仅建模了局部链接结构(即,保留一阶邻域),并未建模全局链接结构。
HNE
框架的主要优点如下:
HNE
探索不同异质对象之间的全局一致性 global consistency
,从而学习由网络结构指导 guide
的unified feature representation
。HNE
是无监督并且独立于任务的,这使其适用于许多面向网络的数据挖掘 application
。out-of-sample
:HNE
能够处理 out-of-sample
问题(即 unseen
顶点)。这解决了动态网络相关的挑战,其中随着时间的推移可能会在网络中添加新顶点。相关工作:
Network Embedding
:feature embedding
的一个分支是由网络中的协同过滤和链接预测等 application
所推动的。这些 application
根据潜在属性对实体之间的关系进行建模。这些模型通常将问题迁移 transfer
为学习实体的 embedding
,这在数学上对应于对观察到的关系矩阵的矩阵分解问题。
《Combining content and link for classification using matrix factorization》
提出了一种在链接邻接矩阵linkage adjacency matrix
和 document-term frequency
矩阵上联合分解的方法,从而用于网页分类。《Structure preserving embedding》
提出了一种 structure preserving
的 embedding
框架,该框架将图嵌入到低维欧式空间中,并保持了全局拓扑属性。DeepWalk
从截断的随机游走中学习网络中顶点的潜在 representation
。然而,这些模型仅关注单一关系single relation
,这无法应用于异质网络。而且这些模型中的大多数很难泛化到 unseen sample
(即训练期间未见过的顶点)。
这些方法对异质网络的自然扩展是将多个关系矩阵堆叠在一起,然后应用传统的张量分解。这种 multi-relational embedding
的缺点是不同 term
之间共享参数,这无法扩展到大型网络。《Latent feature learning in social media network》
提出的非线性 embedding
模型使用 Restricted Boltzmann Machine: RBM
进行跨模型链接分析 crossmodel link analysis
。但是,它没有利用原始数据中的所有社交信息,这导致了次优的解决方案。此外,计算机视觉和语音方面的工作表明,与 DNN
和 CNN
相比,layer-wise
的 RBM
训练对于大规模数据而言效率低下。
深度学习:近年来,机器学习研究已经从基于人工制作的特征显著转向为基于原始数据学到的特征,这主要归功于深度学习的成功。深度学习模型在语音识别、图像识别/检测、以及最近的自然语言处理中变得越来越重要。深度学习技术是通用函数的逼近器approximator
。然而,从历史上来看,训练具有两层以上隐层的深度神经网络很难成功。困难在于高维的参数空间、以及高度非凸的目标函数,这使得基于梯度的方法受到局部极小值的困扰。
深度学习的最新进展得益于多种因素的推动,例如大规模数据集的使用、算力的增长、以及无监督和监督训练算法的进步。
pre-training
),借助大量可用的未标记数据来提供鲁棒的初始化和正则化。例如,《Reducing the dimensionality of data with neural networks》
首次使用 RBM
对深度神经网络进行 layer-wise
初始化。《Greedy layer-wise training of deep network》
也提出了类似的方法,采用自编码器来进行权重初始化。dropout
的方法已经展示出特别的前景。《Imagenet classification with deep convolutional neural networks》
提出的七层卷积神经网络在 ImageNet
大规模视觉识别挑战赛上取得了 state-of-the-art
的性能。该挑战赛是计算机视觉中最具挑战性的任务之一。来自这个七层卷积神经网络的中间层的特征,后来被证明是其它计算机视觉任务(如对象检测object detection
)的良好的 feature representation
。在深度学习架构的背景下,人们对利用来自多模态multiple modalities
的数据越来越感兴趣。自编码器和 RBM
等无监督深度学习方法被部署并联合重建(部分共享的网络partially shared network
)音频和视频来执行 feature learning
,从而成功应用于多模态任务multimodal task
。另一种方案,也有人努力学习具有多个任务的联合 representation
。对于图像和文本,一种特别有用的场景是通过将语义上有意义的 embedding
空间与图像 label
相结合,从而实现对 unseen
的 label
进行图像分类的 zero-shot learning
。
据我们所知,之前很少有人尝试利用网络中的链接结构进行 representation learning
。在《A deep learning approach to link prediction in dynamic network》
中,它使用条件conditional
的动态 temporary
的 RBM
对网络链接的动态性进行建模,主要任务是使用历史数据预测未来的链接。与我们最相似的工作是 《Latent feature learning in social media network》
,其中它在多媒体链接数据上训练一个 content RBM
。我们在几个方面与他们的工作不同:我们在无监督环境中使用监督学习的方案,我们的方法可以扩展到大规模数据集,我们执行多任务学习从而融合来自不同模态的形式。
异质网络 heterogeneous network
指的是具有不同类型对象、和/或具有不同类型链接的网络。从数学上讲,我们定义一个无向图
此外,图
网络的异质性分别由集合 heterogeneous
的。否则网络是异质heterogeneous
的。下图说明了一个异质网络的示例,其中包含两种对象类型和三种链接类型。为了进一步便于理解,我们将假设对象类型为 image: I
、text: T
。链接关系 image-to-image
(红色点虚线)、text-to-text
(绿色短虚线)、image-to-text
(蓝色实线),分别用 RII, RTT, RIT
表示。因此,在这种情况下,我们有
因此,任何顶点 unique
的内容信息。具体而言:
例如,图像的内容是 RGB
颜色空间中的原始像素格式,文本的内容是文档的 Term Frequency - Inverse Document Frequency: TF-IDF
得分。我们将链接关系表示为一个对称的邻接矩阵
注意,这里的邻接矩阵元素取值为
{+1, -1}
,这和经典的{+1, 0}
不同。这是为了后面的损失函数服务,给 “负边”(即,未链接的顶点对)一个非零值可以在损失函数中引入 “负边” 的信息。虽然这种邻接矩阵是完全稠密的矩阵,但是我们可以仅存储“正边”,从而仍然存储一个稀疏版本的邻接矩阵。
接下来,我们首先引入一种新的损失函数来衡量跨网络的相关性,并以数学方式展示我们的 HNE
框架。本质上,embedding
过程为每个对象同时将异质内容和异质链接编码到一个 representation
中。
然后我们提出了一种 linkage-guided
的深度学习框架,从而同时对潜在空间 embedding
和 feature learning
进行联合建模。这可以通过使用反向传播技术有效地求解。
最后,我们讨论了将 HNE
算法直接扩展到多于两种对象类型的一般情况。
异质 embedding
任务的主要目标是学习映射函数,从而将不同模态的数据映射到公共空间,以便直接衡量对象之间的相似性。假设与图像顶点相关联的原始内容 representation
feature machine
。值得一提的是,
我们使用两个线性变换矩阵 represetnation
分别为
尽管图像和文本可能在不同维度的空间中表示,但是变换矩阵 data point
之间的相似性可以表示为投影空间中的内积,即:
注意,由于嵌入到公共空间,不同类型对象(如文本和图像)之间也可以进行相似度计算,即:
这里
潜在 embedding
与文献 《Learning locally-adaptive decision functions for person verification》
中已被广泛研究的相似性学习 similarity learning
和度量学习 metric learning
密切相关。即,两个顶点之间的相关性correlation
可以通过投影矩阵 application-specific
的方式来建模异质关系的灵活性。
对象之间的交互被表示为网络中的异质链接。我们假设:如果两个对象是连接的,则它们之间的相似性应该比孤立对象之间的相似性更大,从而反映这一事实(即,对象是连接的)。
注意,这里仅考虑一阶邻近性,即直接连接关系。
考虑两个图像 pairwise
决策函数
注意,要推断 in-sample
。这意味着该方法具有泛化能力从而嵌入 unseen
顶点。
这句话的意思是,
的计算仅与 和 本身有关,与链接权重无关、也与是否存在链接无关。对于 unseen
的顶点,我们也可以计算,从而预测它与其它顶点之间是否存在链接。
对于所有顶点 bias
值。则损失函数可以定义为:
这可以视为由网络链接引导 guided
的二元逻辑回归。text-text
损失函数和 image-text
损失函数也是类似的,只需要将 bias
值。
该损失函数仅捕获一阶邻近性(即局部网络结构),没有捕获高阶邻近性(既全局网络结构)。
该损失函数迫使相连的顶点之间的
embedding
是相似的、不相连的顶点之间的embedding
是不相似的。这就是为什么