OpenAI公布了一项最新成果:一个无监督的系统,很好的学会了表征感情。尽管这个系统目前只用亚马逊商品的顾客评价做了训练,能预测评价文本中的下一个字。
这项研究还发现一个独特的“情感神经元”,包含几乎所有的情感信号。
而且OpenAI这个模型可以用来生成文本,还能直接控制结果文字的情感……所以可能网上的人工水军们,正面临失业的威胁……
使用这一方法的线性模型,在Stanford Sentiment Treebank上,实现了目前最强的情感分析精度:91.8%。Stanford Sentiment Treebank是一个小型数据库,但被广泛用于这列研究,其上之前最好的成绩是90.2%。这一精度可以与有监督系统匹敌,而且可以少用30-100倍的标记数据。
△ 为了让模型的两个变体(绿线和蓝线)能匹敌用6920个示例训练过的完全监督方法(灰色虚线),所需的有标注示例。OpenAI在亚马逊评论中以无监督的方式预训练的L1正则化模型,只需11个有标注示例就能达到multichannel CNN的水平,用232个有标注示例就能匹敌最先进的CT-LSTM Ensembles
OpenAI的模型本来是用于在亚马逊商品评价中预测下一个字,但是它学习了一个解释性(interpretable)的功能,还发现了情感概念。这让OpenAI的研究人员感到惊讶,他们认为,这不是他们模型所特有的现象,而是用来预测序列中的下一步或输入维度的大型神经网络的一般性质。
方法论
OpenAI首先在8200万亚马逊评论的语料库上用4,096个单位训练了multiplicative LSTM,以预测一小段文本中的下一个字。 训练在四个NVIDIA Pascal GPU上进行,花费了一个月,模型处理速度为每秒12,500个字符。
这4,096个单位(只是浮标的向量)可以被认为是表示模型读取的字符串的特征向量。 在训练mLSTM后,OpenAI通过采用这些单位的线性组合将模型转换为情感分类器,通过可用的监督数据学习组合的权重。
情感神经元
OpenAI这项研究还有一个独特的“情感神经元”,包含几乎所有的情感信号。
在用L1正则化训练线性模型的同时,研究人员注意到,它只用了很少的已学习单位。挖掘其原因的时候发现,实际上存在着一个对情感值有高度预测性的“情感神经元”。
△ 模型中的情感神经元可以将评论归为负面或正面,虽然模型仅是被训练来预测文本中的下一个字的
和类似模型一样,这个的模型可以用来生成文本。 与这些模型不同的是,它能直接控制结果文字的情感:只需覆盖情感神经元的值。
以上表格中所列的,是由已训练模型生成的合成文本的示例。OpenAI的研究人员在确定情感单位的值以确定评价的感情色彩后,从模型中选择随机样本。下面,他们还通过模型传递前缀“我无法弄清楚”,仅选择高似然样本。
举个例子
下图表示情感神经元的逐字符值,消极值为红色、积极值为绿色。 请注意,像“最好的”或“可怕”这样强烈的指示性词语会引起颜色的特别大变化。
△ 情绪神经元逐字调整取值
有趣的是,在完成句子和短语之后,系统仍会进行大量更新。 比如说“And about 99.8 percent of that got lost in the film”这个句子,即使“in the film”本身没有表达情感,系统还是在前面的“lost”之后、以及在句子结束后,将情感值向更消极的方向进行了更新。
无监督学习
目前,标签数据是机器学习的燃料。 收集数据很容易,但对数据进行可扩展的标注很难。只有在机器翻译,语音识别或自动驾驶这样的重要问题上,生成标签才能得到相应的回报。
开发无监督学习算法,学习数据集的良好表征,仅用少量标注数据解决问题,一直以来都是机器学习研究人员的梦想。
OpenAI的研究表明,在创建具有良好表征学习能力的系统时,简单地用大量数据训练一个大型的无监督下雨不预测模型,可能是一种很好的方法。