从今天开始,谷歌给外界软件开发人员开放了自然语言算法, 并发布帮助开发者构建基于语言的应用和服务的工具,助力开发比经常产生误解聊天机器人更好的应用。
一个今天发布的工具,叫做 SyntaxNet,在有语境和常用注释的情况下,可以学会理解单词和短语的意思。这个工具使用了原先由谷歌发布叫 TensorFlow 的深学习框架。它是一个使用 TensorFlow 迄今构建的最复杂的部件。
谷歌还发布了预先训练的英语解析器,称为 Parsey McParseface。输入该英语解析器的文本将自动被分成句法组分如名词,动词,主题和对象。这使得计算机能容易地解析不明确的查询或命令。
谷歌通常依赖于数据和机器学习的方法,Facebook 就正在试图培养计算机解析语法, 通过输入大量未标注的数据(见“教学机器理解我们”)。但是,谷歌的语言理解项目,在网上的一篇论文中说,是基于专家的专业知识。八年多来,语言专家一直在努力为谷歌注释文本。而最近的进展是把这些标注数据输入大型深学习神经网络的结果。
理解语言对于计算机非常困难的,因为语言通常是模糊的。搜索简单的 “Find me cats in hats”,可以解释为戴帽子或猫坐在帽子。虽然人类使用一般知识来理解这样的句子,谷歌的技术采用机器学习。其深度学习系统,经过语法文字的训练,做出这句话的最有可能的正确结构的判断。在 “Find me cats in hats” 这句话的情况下,这个算法假定搜索者时尚前卫的猫科动物有兴趣。