• Facebook文字理解引擎DeepText技术解析
  • 浪牛三刀 发表于 2016/7/7 13:19:00 | 分类标签: DeepText技术 文字引擎
  • 文字是人们在互联网上进行联系的一种主要方式。为了改善用户体验,了解用户对产品的想法,或检测出垃圾信息等不必要的内容,很多公司在研究对文字内容的自动化理解和分析方法。Facebook开发的DeepText就是这样一种基于深度学习技术的文字理解引擎,可以非常精确地理解文字的上下文情境,目前可支持超过20种语言。

    DeepText中包含多种深度神经网络体系结构,可实现文字级别和字符级别的学习。在模型的训练方面,该技术使用了FbLearner Flow和Torch,训练好的模型可通过FBLearner Predictor平台运行,这是一种可扩展,高可靠的分布式基础结构。

    为何使用深度学习技术

    文字的理解设计多种任务,首先需要通过常规分类确定每段文字的主题(例如是在谈论一场足球赛),随后需要识别出文字所涉及的实体(例如球员姓名、比赛结果等信息)。但为了实现更近似于人类的理解程度,还需要让计算机懂得不同的俚语、语境,以及多义词,例如,假设有人说“我喜欢黑莓”,他指的到底是“黑莓”这种水果还是“黑莓”手机?

    对于Facebook这种规模的公司,文字的理解还需要考虑到对于扩展性和多语言的支持。借助深度学习技术可以更好地了解不同语言的文字,并能更高效地使用标签化的数据。

    更快速理解多种语言

    作为一家全球化公司,Facebook需要能够理解尽可能多的语言。更麻烦的是,很多语言存在不同的变体,例如各种俚语或者双关语,甚至同一个词汇在表达不同含义时会使用不同的拼写方法。 
    借助深度学习技术,这套系统可以在只需要很少预处理,甚至完全无需预处理,就能在不具备有关特定语言相关知识的情况下理解文字的含义。这样即可在将开发工作量降至最低的同时更快速地理解各种语言。

    深度学习促进更深入的理解

    传统的自然语言处理技术需要将文字转换为计算机算法可以学习的格式。举例来说,“兄弟”这个词可能会被分配一个整数ID,例如4598,而“老兄”这个词可能会分配另一个整数,例如986665。这种方法使得系统只能将拼写方式完全一致的词语当作同一个含义来理解。

    通过使用深度学习技术,可以借助“文字嵌入”这种数学概念保留不同词语之间的语义关系。经过恰当的计算,就可以让计算机知道“兄弟”和“老兄”在语义上是相近的,借此可以更深入地了解不同词语的语义。

    借助这种文字嵌入技术,还可以更好地理解多种语言中不同呈现方式所表达的相同含义。例如在英语和西班牙语中,“happy birthday”和“feliz cumpleaños”就包含了非常相近的含义,通过将不同的单词和短语映射到同一个通用的嵌入式语义空间,DeepText将能建立与语言无关的模型。

    DeepText的实践运用

    DeepText已经用在了Facebook的一些服务中,例如在Messenger中,Facebook的AML对话理解团队会通过DeepText更好地理解某人在什么时候可能想去什么地方。随后即可将这些信息用于决策工作,例如当有人说“我刚下出租车”,可以知道此人并不需要搭乘出租车,而如果有人说“我要出发了”,可能意味着此人也许需要打车。

    Facebook还在尝试通过高精确度的多语言DeepText模型帮助用户找到满足特定目的所需的恰当工具。举例来说,有人发布了这样一条信息:“我想把我的旧自行车以200块钱卖掉,有人感兴趣吗?”随后DeepText可以检测到这个用户希望卖掉某样东西,并从发布的内容中提取有价值的信息,例如具体要卖什么东西,价格多少,随后就可以建议此人使用Facebook提供的不同服务顺利完成交易。

    通过更好地理解用户发布的信息,从中提取用户意图、情绪和实体(例如人员、地点、活动),DeepText还可以进一步改善Facebook的用户体验。现在有很多名人和公众人物会使用Facebook与大家进行交流,这些交流通常可能获得数百条,甚至上千条评论。在多种语言发布的内容中找出最相关的评论,同时确保评论始终维持较高质量,这一点实现起来非常难。此时就可以借助DeepText找出相关性或质量最高的评论。

    更好地理解用户兴趣

    为了向用户提供个性化体验,Facebook会推荐与用户兴趣有关的内容。为此必须首先能够将特定文字与特定话题关联在一起,这一过程需要处理海量标签化的数据。

    这类标签化的数据集很难手工生成,而Facebook目前正在测试通过半人工方式的标签技术针对公共页面生成所需数据。这些公共页面上发布的内容通常都是针对特定话题的,例如“匹兹堡钢人”的公共页面上通常会发布有关橄榄球队的信息。通过这些内容,Facebook训练了一个名为PageSpace的通用兴趣分类程序,该程序就用到了DeepText技术。

    对文字和可视内容的联合理解

    有时人们会在发布照片或视频的同时通过相关文字描述自己所发布的内容。很多情况下,若要理解用户意图,必须同时理解这些文字和可视内容。例如,某个用户可能发布一张新生儿照片并使用“第25天”作为文字描述。通过照片和文字的结合,很容易可以知道该用户的意图是分享自己家里的最新近况。Facebook内部不同团队正在合作构建新的深度学习体系结构,以便可以将文字和其他可视内容结合在一起理解。
  • 请您注意

    ·自觉遵守:爱国、守法、自律、真实、文明的原则

    ·尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规

    ·严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的作品

    ·承担一切因您的行为而直接或间接导致的民事或刑事法律责任

    ·您在编程中国社区新闻评论发表的作品,本网站有权在网站内保留、转载、引用或者删除

    ·参与本评论即表明您已经阅读并接受上述条款

  • 感谢本文作者
  • 作者头像
  • 昵称:浪牛三刀
  • 加入时间:2013/7/12 0:00:00
  • TA的签名
  • 这家伙很懒,虾米都没写
  • +进入TA的空间
  • 以下内容也很赞哦
分享按钮