前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Facebook 开源文本分类工具,不用深度学习也可以又快又准

Facebook 开源文本分类工具,不用深度学习也可以又快又准

作者头像
新智元
发布2018-03-23 11:37:00
7800
发布2018-03-23 11:37:00
举报
文章被收录于专栏:新智元新智元新智元

【新智元导读】作为最大的社交网站,每天Facebook上,用户分享的信息超过几十亿。为了利用这些数据,Facebook使用了各种各样的工具来对文本进行分类。传统的分类方法,比如深度神经网络,准确率虽高,但是却需要较长的训练时间。今天,Facebook AI实验室FAIR 宣布将把其研发的文本分析工具fastText进行开源。fastText 既可以用于文本分类,又能用于学习词汇向量表征。在文本分类的准确率上,fastText与一些常用的深度学习工具不相上下,但是在时间上却快很多:模型训练时间从几天减少到几秒。据介绍,文本分类最有用的领域目前是辨别钓鱼网站、诱导链接以及垃圾邮件过滤等。

更快更好的文本分类

对于人工智能研究者来说,让机器理解人类所说的话或者在键盘上敲出的字,目前仍然最大技术难题之一。但这又是一个基本要素,是自动文本处理是每天与计算机进行交互的一个关键,从网页搜索到内容排名,再到垃圾邮件过滤,这都是不可或缺的组成部分。当这种技术运行良好的时候,它几乎是隐形的。随着线上数据增多,现在人们需要一个更加灵活的工具,来更好地理解非常大型数据库中的内容,这也对更精确的分类结果提出了要求。

为了满足这种需求,Facebook AI 研究室 (FAIR)开源了fastText——一个用于建立可扩展文本表征和分类的解决方案的数据库。这是FAIR在分享代码以外,对建立更有合作和共享精神的开发者社区所做的贡献之一。

FastText 包含了自然语言处理和机器学习社区在过去几十年引入的最成功的一些概念。其中包括拥有数个n-grams的表征句子,以及通过隐藏的表征使用从属词信息并在不同的分类类别间分享信息。FAIR还采用了一个分层softmax,利用不同类别的不平衡分布,来加速计算。

这些不同的概念都被用于两个不同的任务:高效文本分类以及学习词语向量表征。

高效文本分类

深度神经网络最近在文本处理中变得非常流行。随着这些模型在快速的实验中有非常好的表现,可以通过放缓速度,进行训练和测试,找到在非常大型的数据库中使用时会受到哪些局限。

FastText很好地解决了这个问题。为了在拥有众多分类的超大型数据库中实现高效率,它使用了一个阶层式分类器取代常用的扁平结构,在这个分类器中,不同的种类被用树形结构来组织(二叉树而不是列表)。这减少了从线性到算法训练和测试文本分类中的时间难题,即使在类型比较多的情况下。

FastText 还利用了分类不平衡的这一事实(一些类别出现的频率要高于其他),通过使用Huffman算法,来建立用于代表种类的树形结构。树型机构上频率较高的种类的通道因而会比频率较低的那些更小,这会让进一步的计算更有效率。

FastText 通过一个低维度的向量还代表了一个文本,这是通过汇总代表文本中的词汇向量来获得的。在FastText 中,低纬度向量与词汇表中的每一个单词都是相互联系的。这些隐藏的表征由不同种类的分类器共享,让关于某个种类的习得词汇信息可用被种类使用。这种表征,称为词袋(bag of Words),不考虑词语的顺序。在FastText中,我们也使用了向量来代表词语n-gram,来考虑局部词汇顺序的影响,这对学过文本分类难题来说也是很重要的。

我们的实验显示,fastText在准确率上,与深度学习分类方法不相上下,并且,在训练和评估上要快好几个数量级。有了fastText,我们通常能够把训练时间从好几天减少到几秒,并且在许多标准问题上,获得最一流的表现,比如情感分析或者标签预测。

fastText与深度学习方法的比较

在商业领域中,拥有一个专用的文本分类工具是非常重要的,垃圾邮件和欺骗链接过滤也许是最常见的例子。现在有一些工具可以为普通分类问题设计模型(比如Vowpal Wabbit 或libSVM),但是 fastText 是专门针对文本分类设计的。

这使得在非常大的数据库中训练模型成为可能。FARI的研究员曾使用一个标准的多核CPU在超过10亿个词汇数据库中,以不到10分钟的时间训练了一个模型。 fastText 还能在少于5分钟的时间内,对涉及30万个种类、超过50万个句子进行分类。

多语言工作

除了文本分类,fastText也能被用于学习词语的向量表征。通过利用各种语言的词态结构,它已经在多种语言上发挥作用,其中包括英语、德语、西班牙语、法语和捷克语。fastText使用了一个简单但是有效的方法,来把从属词的信息进行融合,这一技术在词态丰富的语言,比如捷克语上效果很好。FastText比现在常用的Word2vec,或其他的一些最先进的词态表征工具表现要得多。

fastText 与几种最先进的词态表征工具在不同语言中的性能比较

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-08-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 新智元 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档