找回密码
 立即注册

手机号码,快捷登录

基于Go的语义解析开源库FMR,“屠榜”模型外的NLP利器

小盈| 2019-9-24 19:39 阅读 3295 评论 0

如何合理地表示语言的内在意义?这是自然语言处理业界中长久以来悬而未决的一个命题。
 在 2013 年分布式词向量表示(Distributed Representation)出现之前,one-hot 是最常用的字词数值表示形式。在这样的词袋模型下,语言被表示为极其稀疏的向量形式,词之间的相互关系完全独立,语言深刻的内在含义被简化成 0-1 关系。

 而之后出现的一系列预训练词向量(如 Word2Vec、Glove 等),在一定程度上解决了词袋模型的稀疏性,对大部分NLP任务的表现都带来了一定程度的提升,但其仍无法对如组合性,多义性、照应性、依赖性等复杂语言现象进行合理的表示。到了 2018 年,随着一系列在大规模语料上训练的深度语言模型的出现,以阅读理解为代表的一大批 NLP 任务的榜单屡被刷新,人工智能在语言上的理解能力超过人类的言论一度甚嚣尘上。但当我们回过头来仔细思考,在真实的“自然语言理解”业务场景中,这一轮“技术革新”带来的利好似乎乏善可陈。
 
那么,对大规模语料的暴力拟合是不是真的能让模型理解语言的语义呢?
 
2019 年出现的 GTP2 模型参数数量达到了惊人的 15 亿之巨,由它生成的新闻甚至能骗过专业的记者。但值得玩味的是,今年早些时候台湾成功大学的几位研究者发现,BERT 更多地学到了语言中的统计线索,而不是理解文本当中的真正逻辑。当我们用同样的模型对武侠小说进行学习之后,在其生成的文本中我们看到“三柄长剑断作两截”这样的“statistically impeccable but logically wrong"的句子,让我们进一步验证基于人工神经网络的大规模语言模型对语言的深度理解仍然有限。
 
其实,对于语言表示的问题,在统计学派兴起之前的 20 世纪初期,以索绪尔为代表的一批符号学派语言学家就开始系统地研究了。到了六十年代末期,随着逻辑学家和语言学家之间的屏障开始被打破,一批理论语言学家们着手为自然语言寻求一套完整的语义理论模式,来对语义进行完整的表示。美国逻辑学家理查德·蒙塔古是其中的佼佼者,他认为自然语言与形式语言在基本文法逻辑上是一致的,他提出的“蒙太古语法”也为之后的语义表示研究奠定了基础。
 
> There is in my opinion no important theoretical difference between natural languages and the artificial languages of logicians; indeed I consider it possible to comprehend the syntax and semantics of both kinds of languages with a single natural and mathematically precise theory. (Montague 1970c, 222)
 
 
在语义解析这个领域,语义表示早期的工作几乎都是符号学派为主的,例如一阶逻辑表达式和lambda计算式。举个例子,对于:
 
 
这样一个自然语言,利用一阶逻辑表达式可以简单地表达为:
 
 
但这些早期的逻辑表达式有一些限制条件。例如,在一阶逻辑中,量词只能用于个体变元,取消这一限制条件,允许量词也可用于命题变元和谓词变元,由此构造起来的谓词逻辑就是高阶逻辑。FMR(Functional Meaning Representation)就是利用高阶函数来做意义表达,将语义(函数声明的调用)和语用(函数具体实现逻辑,函数体)的实现解耦合,让模块的复用性和实用性更好。
 
也有一些研究者希望用有向无环图来更完备地表达语义,例如由帕尔默等人提出的AMR(Abstract Meaning Representation)。近年来,一些工业界机构也根据自己的业务场景提出了满足各自需求的多种语义表示方法,例如亚马逊的 Alexa 语音助手就采用了同样基于有向无环图的AMRL(Alexa Meaning Representation Language)来表示以对话为主的自然语言。
 
还有一些研究者倾向于把自然语言直接转化为像 Python、SQL 一样的程序语言,使之能够直接被执行。由于程序语言天然地倾向于消除歧义,这样的方法在某些特定领域有着很强的实用性。
 
我们也一直在探索一种实用性强、扩展性好的落地方案。面对实际业务问题,能够基于坚实的基础研发产品进行快速的行业适配,摆脱传统方法对数据标注的依赖。同时,又能无缝衔接先进通用模型带给我们的技术利好,有机地把行业内的专家知识与自然语言学界的前沿成果结合起来。
 
基于 Go 语言的开源库FMR(Functional Meaning Representation)就是我们朝这个方向踏出的坚实一步。基于FMR框架,仅需要少量的工程师就能将有行业特殊性的语言逻辑快速转化为 FMR 框架可读的文法,快速满足行业定制化需求。另外,FMR 相比于传统的框架,可解释性强,误差可控,在部署便利性和技术的延展性上,都有着独特的优越性。
 
 
在传统自然语言的应用中,业界倾向于用一种 pipeline 的方式,包括分词、特征工程、建模等流程。这样的方式中的任何一个子流程的误差在整个过程中都会被传播甚至放大。
 
与传统流程不同的是,语义解析把自然语⾔的歧义性尽量当成特性⽽不是问题来进行处理,尽量保留所有符合语义的解析树,并结合上下文语境进行歧义消解。例如,在 FMR 中,对语句词的切分是依据 UnicodeStandardAnnex#29,并在此基础上根据文法进⾏解析,这极大程度规避了分词模型误差在 pipeline 中逐级传播。
 
另外,对于大部分自然语言模型框架,外部依赖繁杂,在业务部署过程中非常繁琐。相比之下,基于 Go 语言的 FMR 在部署时能够被编译成一个可以直接执行的二进制文件,给部署带来了极大的便利。
 
语言的歧义性与其解析难度是正相关的。正如刚才所说,大部分编程语言在设计的时候就把“消除歧义”作为设计原则之一,因此,大部分程序语言的解析复杂度都是 O(n)的。对于自然语言,由于其内在的歧义性,所用到的解析算法的复杂度(例如 CKY 和 Earley)都是O(N^3) 的。与编程语言相似的是,在金融、公安、法律等领域,文书的文法和词法在一定程度上会刻意避免歧义,以求准确表达。这正好大大降低了语言的歧义性,让语义解析在这些场景下能够发挥效用。
 
金融行业的票据审核正是这样一个和语义解析耦合性很强的场景。在这个场景下,语言的歧义性一定程度上被人为的避免,降低了语义解析的难度。票据中的语言表述精炼,几乎没有“上下文语境”,而这是大多深度学习模型所依赖的,所以这些屠榜的利器在这个场景下几乎没有用武之地。另外,金融行业对模型的可解释性和可控性要求极高,这也是语义解析能在这个行业落地的重要因素。在一览群智为金融行业打造的智能审单专家系统中,不论是对票据信息的抽取还是对条款语义的理解,语义解析扮演着举足轻重的角色。这个审单系统已经在多个银行的票据审核中投入使用,不仅给银行客户带来了业务效率的提升,也节省了银行大量的人力成本。
 
 
与金融行业类似,公安行业也存在着大量的零碎数据,分布在不同部门数据库中。以前,面对海量数据,很多业务需求,例如案件线索追踪和串并案发现,都极度依赖于专家的个人经验和大量人力比对。另外,由于公安行业的特殊性,其数据很难流通,这就给数据标注也带来了很大的困扰。针对公安行业的数据现状,我们研发了融合海量警情分析和案件关联分析的警情案情分析预警系统,在多地的公安系统中得到应用与好评。
 
 
正因为这些行业的文本数据分布与开放领域文本的分别存在偏移,导致很多通用的模型无法快速地适配到应用场景中。同时,这些模型算法中大多数依赖于短期内无法得到的大批量标注数据,面对没有标注数据的场景几乎无法冷启动。
 
著名学者杨乐村曾说过:如果把人工智能比作蛋糕,那监督学习和强化学习只是蛋糕上的点缀,只有非监督学习是蛋糕本体。在我们面临的大多数没有标注数据的场景中,也许语义解析就是那块蛋糕。自然语言处理和文本分析针对的场景往往是多个任务的集合,而语义解析与深度学习模型的综合使用,能够让自然语言处理和文本分析中的各项任务,按照最适合其特性的解决方法,得到综合的处理。
 
语义解析所依赖的所有语义解析语法是不是都需要人工编写呢?
 
在特定领域中,由于语法规则的制定带有很多人工的先验知识,需要人为的来制定。例如在数字解析中,“一打”的指的是“12”,这样的规则就是机器学不来的。但对于大部分语法规则来说,我们是可以通过统计和机器学习等数据驱动方法,从语⾔数据中学习,从而获得规律。在极端的数据驱动⽅方法中,甚至可以完全不使用⼈工手写语法,所有规则都是从数据中学习⽽而获得的。
 
语义解析是否就是正则表达式匹配或者槽位填充呢?⾃然语言具有语义组合性和递归性的特点,槽位填充实现了部分的组合性。而对于语义的递归性,不论是正则表达式匹配还是槽位填充都无法体现。
 
在标注数据充足的情况下,符号化语义解析是否仍有优势呢?基于神经网络的一些模型在很多特定的任务上取得了鼓舞人心的评测结果,但与语义解析框架不同的是,这些模型算法更像是太上老君的丹炉,模型的优劣是实验规律总结得到,很难得到理论上的解释性。正如张钹院士所说:“现在的人工智能没有自知之明”。
 
数据驱动的方法做出来的人工智能系统,是很危险的。即使对于SOTA模型,我们只知道在很大概率上,模型的结果是正确的,但我们无法确定很小概率的那部分在哪里。举例来说,对于一个简单的自然语言描述数字转换成阿拉伯数字问题,即使模型精度达到了99%,但在如票据审核这样容错率极低的场景下,即使是1%的错误率,但模型无法确定性的直接给出到底是哪 1% 是错误的,这样也会带来无法接受的后果。
 
总而言之,我们当然对真正的强人工智能喜闻乐见,但受限于当前的技术发展,“全心全意”地相信深度学习模型并不是一种负责任的选择,更不用说在很多场景下,由于标注数据的匮乏,可选模型乏善可陈。相比之下,语义解析似乎是我们在这个阶段上的一个局部最优解。若干年后,假使真的出现对语言理解胜于人类的智能产物,人们也不会忘记语义解析在人工智能发展的长河中浓墨重彩的一笔。(转自刘占亮 )
评论 0
推荐资讯

深入理解区块链二层扩展方案Rollup:为什么Vitalik对该方案大加赞赏?

背景最近,以太坊创始人 Vitalik Buterin 在一篇题为“混合式二层协议的曙光” 的文章里对 Rollup 方案大加赞赏,认为它为智能合约的可扩展性打开了大门。那么什么是 Rollup ?它包括哪些主流方案?这些方案各自有什么优缺点?它们未来发展前景怎么样?为了找到这些问题的答案,笔者对相关项目做了一番调研,将收集到的信息整理成下面这篇文章。Rollup 的出现最近两年,以太坊二层(Layer-2)扩容技术得到突飞猛进的发展。所谓二层技术,就是将一部分资金存储在主链上的智能合约内作为,在保证足够
陈丹
03-06
阅读3194 评论0

为符合央行新规,国内的区块链金融项目需要国密和监管改造

2月25日时,央行发布了《金融分布式账本技术安全规范》金融行业规范(以下简称规范),在密码算法、账本数据、身份管理、隐私保护等多方面,对金融领域的区块链机构、项目提出了更为正式的规范和要求,导致很多金融机构的,央行。因而,基于Fabric架构的区块链金融项目或需替换密码模块,以符合规范要求,以应对当前互联网安全的严峻考验。)安全审计基于Fabric的区块链金融项目,应二次开发以支持账本审计的需求。Fabric架构各审计功能(Fabric架构不符合要求。基于Fabric的项目如果无法这些隐私保护相关要求,则
邱月盈
03-02
阅读3077 评论0

从「模拟」理解零知识证明:平行宇宙与时光倒流

相信很多人都听说过零知识证明,但是只有极少数人听说过模拟,然而模拟是理解零知识的关键。我们在第一篇文章『初识「零知识」与「证明」』中介绍了一个简单的零知识交互系统:地图三染色问题。那么这个系统真的是零知识的吗?我们为什么要相信这个结论呢?有证明吗?在 Alice 与 Bob 的对话过程中,如果不零知识,Alice就被坑了。交互式系统的设计者「我」需要让 Alice 确信,这个对话确实是零知识的。如果从直觉主义角度解释,要证明一个交互系统中存在信息泄露,那么你只需要指证:第几个 bit 导致信息泄露即可;但
盈链科技
01-16
阅读3184 评论0

初识「零知识」与「证明」

引言我认为区块链很难称为一个“技术”。它更像是一个领域,包罗万象。或者形而上地说,区块链更像一个有机体,融合了各种不同的理论技术。零知识证明是构建信任的重要技术,也是区块链这个有机体中不可缺少的一环。零知识证明是打通链上数据与链下计算的关键技术,也是实现链上数据隐私保护的重要途径要解释「零知识证明」,我们需要先解释「证明」,然后解释什么是「知识」,最后再解释什么是「零知识」。"证明" 的前世今生什么是证明?很多人可能和我一样,看到这两个字,会不禁想起中学考卷中各种三角相似的几何图形,当
小盈
01-13
阅读3047 评论0

2020 焦点前瞻:公链的可扩展性到底如何解决?

大量明星公链即将在 2020 年上线,是时候全面看看可扩展性这个问题。比特币从设计上就是慢的。区块链并不一定是为了速度而创建。中本聪在设计比特币时,将安全性和去中心化置于首位,他也承认,在与中心化的竞争对手如主流信用卡网络竞争时,比特币系统将面临压力。而实际上,比特币的10 分钟出块时间和较小的区块却让它能够维护一个全球性的、无领导网络的共识,因为这样做减少了非故意的账本分叉的频率,又能维持节点运营的低成本和存储的低要求。比特币很慢:在过去一年中,它每秒处理的交易量(tps)还不到 4 次。而且比特币无法
链闻ChainNews
12-23
阅读3335 评论0

安永发布第三代零知识证明区块链技术,可通过批量处理降低交易成本

昨天,全球审计四巨头之一的安永宣布了其零知识证明(ZKP)技术的最新版本,该技术用于实现公有区块链上的私人交易。 这个被称为Nightfall开源协议于去年正式发布,侧重于区块链的可扩展性。来源:Pixabay像比特币和以太坊这样的公有区块链被设计成透明的,唯一的保护是用户身份是不透明的或假名的。但是事实证明,要识别用户很容易。缺乏隐私以及可扩展性和治理问题是企业采用公有区块链的重大障碍。零知识证明技术是用于解决隐私和可扩展性的关键隐私解决方案之一。它可以在不透露细节的情况下回答想要知道的答案。例如,一个
哈希链人
12-20
阅读3223 评论0

快讯

  • 目前BTC挖矿盈利为0.3384美元/天/THash/s

    据Bitinfocharts数据显示,当前BTC挖矿盈利为0.3384美元/天/THash/s;ETH挖矿盈利为0.
    2021-10-19
  • 西班牙国家警察警告加密货币相关骗局激增

    西班牙国家警察已就西班牙出现一波与加密货币相关的投资骗局发出警告。在国家警察最近
    2021-10-19
  • 波卡先行网Kusama通过开启定期、连续插槽拍

    Kusama理事会通过了Motion 377提案,开启Kusama网络的定期、连续拍卖。该提案计划在接
    2021-10-19
  • 以太坊无损彩票项目PoolTogether V4版本上

    以太坊无损彩票项目PoolTogether宣布V4版本上线,目前支持存入Polygon和以太坊上的USD
    2021-10-19
  • 数字资产交易所交易产品发行人Valour在法兰

    DeFi Technologies Inc.宣布其子公司Valour Inc.,一家数字资产交易所交易产品(“ETP
    2021-10-19
  • 加拿大央行重申其暂时没有推出数字货币的计

    加拿大央行重申其暂时没有推出数字货币的计划,但表示如果人们开始减少使用实物现金,
    2021-10-19
  • Uniswap V3在以太坊Layer 2上24小时交易量

    Uniswap创始人Hayden Adams发推称,Uniswap V3在以太坊Layer2(Arbitrum和Optimistic
    2021-10-19
  • 矿业公司Elite Mining Inc将移动挖矿设备的

    10月19日消息,Elite矿业公司(EMI)已于2021年9月将其总部迁至怀俄明州的夏延,EMI将
    2021-10-19
  • Michael Saylor:土耳其可以在央行国库中购

    根据个人财务比较网站Finder的报告,比特币将在2050年之前取代法定货币,处于 "超比特
    2021-10-19
  • 比特币矿企Bitfury首席执行官确认公司正在

    10月19日消息,Bitfury首席执行官Valery Vavilov证实,“随着Bitfury及其公司组合继续
    2021-10-19
浏览更多