Text2Image:一种新的NLP思路

作者: AI前线小组 译 2019-11-22 09:21:17

 与计算机视觉相比,自然语言处理 (NLP) 一直被认为是一个难以攻克的难题。本文寻找到了一种新的 NLP 处理方式,探索将 NLP 与计算机视觉处理结合,将文本绘制成图片。虽然目前的准确率还有待优化提高,但看起来很有应用前景。

问题点 

长期以来,自然语言处理 (NLP) 一直被认为是一个难以攻克的难题,至少与计算机视觉相比是这样。NLP 模型需要更长的运行时间,通常更难实现,并且需要更多的计算资源。另一方面,图像识别模型的实现变得更加简单,对 GPU 的负担也更小。这让我想到,我们可以把一个文本语料库转换成一个图像吗? 我们能把文本解释成图像吗? 事实证明,答案是肯定的,并带来了令人惊讶的结果!我们用这种方法来区分假新闻和真新闻。

在本文中,我们将详细探讨这种方法、结果、结论和接下来的改进。

简 介   

思路来源

将文本转换为图像的想法最初是受到 Gleb Esman 关于欺诈检测的这篇文章的启发。在这种方法中,他们将各种数据点,如鼠标移动的速度、方向、加速度等转换成彩色图像。然后在这些图像上运行一个图像识别模型,进而可以产生高度准确的结果。

数据

所有实验使用的数据是 George Mclntire 的假新闻数据集的子集。它包含大约 1000 篇假新闻和真实新闻的文章: https://github.com/cabhijith/Fake-News/blob/master/fake_or_real_news.csv.zip

Text2Image 的基本原理

让我们首先在一个较高的层次上讨论 Text2Image。其基本思想是将文本转换成我们可以绘制的热图。热图标识着每个单词的 TF-IDF 值。词频 - 逆文档频率 (TF-IDF) 是一种统计方法,用于确定一个单词相对于文档中其他单词的重要性。在基本的预处理和计算 TF-IDF 值之后,我们使用一些平滑的高斯滤波将它们绘制成对数尺度的热图。一旦热图绘制完成,我们使用 fast.ai 实现了一个 CNN,并尝试区分真实和虚假的热图。我们最终获得了大约 71% 的稳定准确率,这对于这种新方法来说是一个很好的开始。这里有一个关于我们的方法的小流程图:

Text2Image:一种新的NLP思路

还不太清楚?继续往下看。

Text2Image 详述

预处理

数据采用小写形式,删除所有特殊字符,并将文本和标题连接起来。文件中 85% 以上的文字也被删除。此外,要明确避免使用单词列表 (stopwords)。使用的是一份标准的停顿词列表,大部分是没有信息的重复词。特别是要对假新闻的断句进行修改,这是未来值得探索的一个领域,特别是可以为假新闻带来独特的写作风格。

计算 TF-IDF

为了对关键字进行评分和提取,Text2Image 使用了 tf-idf 的 scikit-learn 实现。对于假新闻语料库和真实新闻语料库,IDF 分别计算。与整个语料库的单个 IDF 分数相比,计算单独的 IDF 分数会导致准确性大幅提高。然后迭代计算每个文档的 tf-idf 分数。在这里,标题和文本不是分开评分的,而是一起评分的。

Text2Image:一种新的NLP思路

计算 Term 频率

Text2Image:一种新的NLP思路

计算 IDF

把它们相乘,就得到 tf-idf。我们对每个文档分别进行迭代。

处理 TF-IDF 值

对于每个文档,将提取具有最高 TF-IDF 值的 121 个单词。这些单词然后用于创建一个 11x11 数组。在这里,选择的单词数量就像一个超参数。对于更短、更简单的文本,可以使用更少的单词,而使用更多的单词来表示更长的、更复杂的文本。根据经验,11x11 是这个数据集的理想大小。将 TF-IDF 值按大小降序排列,而不是按其在文本中的位置映射。TF-IDF 值以这种方式映射,因为它看起来更能代表文本,并且为模型提供了更丰富的特性来进行训练。因为一个单词可以在一篇文章中出现多次,所以要考虑第一次出现的单词。

不按原样绘制 TF-IDF 值,而是按对数刻度绘制所有值。这样做是为了减少顶部和底部值之间的巨大差异。

Text2Image:一种新的NLP思路

在绘制时,由于这种差异,大多数热图不会显示任何颜色的变化。因此,它们被绘制在一个对数刻度上,以便更好地找出差异。

Text2Image:一种新的NLP思路

图 1(左) 显示了按原样绘制的 TF-IDF 值。图 2(右) 显示了在对数刻度上绘制的相同值

缺点之一是在训练模型时大量的过度拟合。这可以归因于缺乏任何数据扩充,目前,似乎没有数据扩充的方法可以用于这个用例。因此,在整个数据集上使用高斯滤波来平滑这些图。虽然它确实降低了一点点准确性,但在过度拟合方面有显著的下降,尤其是在训练的初始阶段。

最终的热图

最终的热图尺寸为 11x11,用 seaborn 绘制。因为 x 轴和 y 轴以及颜色条在训练时都没有传达任何信息,所以我们删除了它们。使用的热图类型是“等离子体”,因为它显示了理想的颜色变化。尝试不同的颜色组合可能是未来探索的一个领域。下面是最终情节的一个例子。

Text2Image:一种新的NLP思路

热图最终形态

训练我们的模型

该模型使用 fast.ai 在 resnet34 上进行训练。识别出假新闻 489 篇,真新闻 511 篇。在不增加数据的情况下,在训练集和测试集之间采用标准的 80:20 分割。所有使用的代码都可以在这里找到: https://github.com/cabhijith/Text2Image/blob/master/Code.html

结果

Text2Image:一种新的NLP思路

总 结   

经过 9 轮迭代后,模型的准确率达到了 70% 以上。尽管对这个数据集来说还远远不够先进,但这种新方法似乎很有前景。以下是在训练过程中所做的一些观察结果:

这个模型超差了很多。增加数据对过拟合没有任何影响,这与我们的预期相反。进一步的训练或改变学习率没有任何效果。

增加绘图大小有助于准确性提升直到大小为 11x11,之后增加绘图大小会导致准确性下降。

在图上使用一定数量的高斯滤波有助于提高精度。

下一步计划

目前,我们正在致力于词性标记和手套词嵌入的可视化。我们也在考虑修改停止词,修改绘图的大小和颜色模式。我们将保持持续改进!

技术 研发 数据
上一篇:2684亿销售额背后的阿里AI技术全景图 下一篇:分析了自家150个ML模型之后,这家全球有名的旅行网站得出了6条经验教训
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

5个杰出的商业机器学习用例

现在是仔细研究ML的好时机,看看您如何将其应用到您的业务中。下面是企业将ML应用到产品和服务创新的5种方式。

物联网IoT996 ·  3天前
技术的本质:计算机如何塑造我们的社会?

技术伦理是个永恒的话题。笔者常常思考这样的问题,计算机科学家是如何将伦理内容与价值观编码到机器学习算法中的,机器学习设计师又该怎样更好地了解自己的设计会给社会带来的影响。

读芯术 ·  4天前
520快手送“男朋友”GAN生成对抗网络助力单身狗“顺利脱单”

“官宣官宣了,我男朋友帅吧”。昨天是520网络情人节,数万人在快手官宣脱单,这是怎么做到的?原来是快手上线了一款视频特效,让单身的小伙伴们瞬间甜蜜分身,“顺利脱单”。这是快手为用户准备的一系列520特效中的一款,受到用户欢迎。

佚名 ·  4天前
疫情之下这16大行业亟需技术升级

这场疫情已经造成了商业活动的中断,甚至某些情况这个世界都有些停滞不前了,导致几乎所有行业都在重新思考运转方式。对于某些企业而言,技术系统和运营所要做出改变远大于其他企业,如果你所在的公司正在面临疫情之后的重大变革,你就必须做好准备。

佚名 ·  4天前
如何使用支持向量机学习非线性数据集

什么是支持向量机呢?支持向量机是监督机器学习模型,可对数据进行分类分析。实际上,支持向量机算法是寻找能将实例进行分离的优秀超平面的过程。

不靠谱的猫 ·  4天前
Verdict宣布2020年第一季度Twitter排名前5的物联网趋势

我们非常想知道企业和专家对物联网的看法,但普通大众的看法呢?他们对物联网的哪些部分感到兴奋,最重要的是,他们在谈论什么?

iothome ·  2020-05-19 16:21:45
远程医疗市场预测2020年增长近65%

根据Frost&Sullivan的新远程医疗市场预测,在COVID-19大流行的推动下,今年远程医疗需求将增长64.3%。

佚名 ·  2020-05-19 11:31:02
机器学习的工作原理

机器学习是一种数据分析技术,可在数据集上构建预测模型,以提供有用的答案,这些答案可用于制定重要决策。 它利用统计概念和数学方法通过python和R等编码语言处理大数据。有多种机器学习技术。 但是,本文将介绍回归和分类。

闻数起舞 ·  2020-05-19 09:11:20
Copyright©2005-2020 51CTO.COM 版权所有 未经许可 请勿转载