【语义计算:没有语言学的计算语言学,NLP的亚健康现状】

我:
大而言之,实词(对应概念)之间,只要发生句法关系,逻辑语义上就有个说法。
作为总原则去操作,句法标签总带着一个逻辑语义标签的做法,是有益无害的(最多是逻辑语义那边不增加新的信息,给个 dummy 的逻辑符号,assuming 句法标签对于语义落地足够了)。
但反过来,我们都知道,有不少逻辑语义是建立在没有句法直接联系的实词之间的 所谓 hidden args, 语义中间件的主要任务就是挖掘出这些 hidden 的逻辑语义关系来。
还有一个突出的区别:对于句法 dependency,大体上要遵循一个老子的原则。而对于逻辑 dependency,这一条就废了:一个儿子有多个老子,对于逻辑是天经地义。因此这树形图也就变得诡异了。

白:
定语从句就是多个老子,用坑的话说,就是填一送一

我:
定语从句的老子儿子相互循环,直接对抗 acyclic 的天条,那是 DG(Dependency Grammar) 的 formalism 引起的。DG 有一万个好,在这一点上还是露出了皮袍下面的“小”来。不过虽然君臣父子乱套,看上去挺窝心的,实际操作使用上也无大碍。要是单单为了这一点就采纳了叠床架屋的短语结构,不值得。

白:
我不认为树或者DAG是动不得的天条。语义那头已经是这样了,句法why not

我:
我无异议。不过多数语言学家和逻辑学家看不惯乱伦。

白:
而且我现在的填坑体系里根本就没有树。天生允许多爹,允许loop

我:
总得有个数据结构 某种 internal representation 作为 output。我的老印搭档在实现这个 graph 的时候,遇到 loop,以前是 error,系统罢工。后来改成 warning。实践中我发现,这个 warning 对于 debug 还是有用的。遇到定语从句这种 loop by design 就忽略警告。但很多时候,那个警告帮助指出了多层规则系统的不合理之处。人的脑子蛮可怜,再有经验的语言学家,也看不过三步。因此在编码规则的时候,容易陷入局部思维。看到 warning 时候“回溯”,往往恍然大悟,原来全局上看,有些东西是不合理的,需要协调。

biao:
哥儿几个在这死磕语法似乎很难看到什么时候是出头之日。

liang:
据说,我们都是乘着“计算”这趟历史快车。跟着时代走。

白:
做股票可不是这样说哦,都是在讲“抄底”。

这要回归到一个老问题,状态机的学习。从非确定有限状态自动机到RNN只有半步之遥。从正则表达式直接编译到RNN的路径是畅通的。所以,规则和学习两条路都可以到达RNN。说得清的用规则,说不清的用学习,谁也不碍着谁。

我:
有数据的用学习 缺乏数据的用规则。

另外 说语法没有出头之日 是小看了咱语言学家。等到 dl 先打败我的 parser 再说不迟。想起奥巴马与希拉里当年党内初选,希拉里老说奥巴马做副手不赖,可以与她搭档跟共和党竞争。奥巴马笑说,你一路输在我后面,说什么呢?当然,这些与潮流相左的话没人当真。一律当成妄人或民科的鼓噪而已。好在在应用现场,最终还是系统说话。

白:
对标注来说,上量,和自洽,是同一个问题的两面。

我:
我信服dl的power 但文本标注和domain化的挑战 貌似没看到根本的突破。知识瓶颈 kills a cat。

白:
对我来说不存在两条路线竞赛不竞赛的问题。那个东西该长什么样是更重要的,这点一旦定下来,怎么弄成那个样都行。比如说,肯定不是树。所以树库再庞大也那个。

我:
端对端的理念是不要那个:不要结构 不要语言学。

白:
那只是表象 只不过把问题转化为中间黑盒子长什么样而已。

我:
问题是 结构的目的 是帮助克服domain化的挑战。没有结构 每一个nlp的应用就是一个独立的问题,就需要无止境的带标数据,到哪里去克服这个知识瓶颈呢?一千个应用需要一千种带标大数据。在我这里不需要 因为结构化了;我只要少量的数据样本 让我知道任务的定义即可。专家天生懂得举一反n,谁叫我们是人呢,linguists,domain specialists ……

白:
这真的是表象
因为黑盒子不是仅仅学习可以得到,对规则进行编译一样可以得到。

张:
李白的discourse 省略太多,求Wei的分析

白:
所以关键是黑盒子本质上有没有容纳结构的能力。黑盒子长的模样不对,容纳结构就不力。之所以一任务一标注一训练,是因为不了解黑盒子容纳结构的通用能力。
也是因为这样拆分有利于持续发论文

wang:
白老师今天高见,“句法关系不是树结构”,领教!但是常规大部分句子,用树结构表示还是可以表达清晰的,除非您列出的那些刁钻的句子。我认为那是语言学家功课还没有做好,这些看似异类的句子(其实是现实合法句),还没有语言学家的事先分类归属。我现在的观点(也许以后会改变),句法处理过程中可以不是树结构,但是最终结果还是树,而不能出现环。

我:
无所谓啦。
社会网络里 任何人都可能与任何人发生关系 何况语词?

白:
环必然会出现
定语从句在汉语中是个并非偏门的表达方式

我:
他喜欢的女孩
什么女孩? — 他喜欢的女孩
他喜欢谁? — 喜欢女孩

白:
这个环形结构的思想大约在1998年就形成了。当时是在范畴语法的框架内表述的。后来一直想把范畴语法发展成可用的mechanism,遇到诸多困难。最近几年才转向,把当时的一些精华嫁接到依存语法中来,弄了个不伦不类没名没姓的坑论。@梁 @赵 都有涉及这项工作。看到伟哥也果断打破树结构,拥抱俩爹,非常欣慰!董老师的框架,箭头方向和我一致:萝卜指向坑,修饰语指向被修饰语。伟哥的方向,随依存体系,反过来的。伟哥省略了小词。而在我的坑论里面,小词负载很重要的结构,“的”是构成定语从句环路的最核心节点。不仅“的”,像“地”、“得”之类也负载结构,也挖坑。

wang:
看来白老师这是深酿多年的酒了哈!希望这理论能取个好听的名字。更希望早日形成系统,发挥应有力量。

我:
【坑论】,不蛮好?
环形不明白的 问利鹏 。他自从解雇了小蜜 就聘了自家领导做手下,并与新手下约法三章:一切服从领导。

我:
说到填坑,HPSG 里面有个说法:
对于 args,当然是 head 挖坑(subcat),期待(expect)那些 args 填坑。是 head 找 args。但对于 mods,一切反过来,不是 head 找 mods,而是 mod 去找 head。
所以对于词例化的 HPSG,修饰语的词也挖坑 挖的是让 head 去填的坑。

刘:
为什么mod不能做head而把动词作为arg?

我:
但实际上我自己在 parsing 的操作中,两条路线都走过:
做过 head 去找 mods,大不了多几层,或来个循环。也做过 mod 去找 head。

mod 做 head 从语义表达上,是本末倒置吧,至少人看着不舒服。真要做,也可以做,可是 mods 是数量不定的,除非是短语结构,一层一层嵌套上来,让最远的 mod 做总 head。否则 怎么表达多 mods 对于同一个 vp 的填坑要求呢?能想到的办法就是让同一个 vp 或 s 可以有 n 个 mods 的老子(说的是依存关系的表达)。总之,一般认为还是 谓词 做 head,既做 args 的 head 构成 arg structure 作为语义核心,也做 mods 的 head,表达边缘的语义(修饰限定)。

白:
这里有模糊地带。
比如,马上种树,必然种树,肯定种树,会种树。
副词和情态动词的边界 情态动词就被认为是动词填情态动词的坑

范畴语法就是mod做head,比如形容词是n/n,你喂给它一个n,它吐给你一个经过修饰了的n。

副词就被认为是给核心动词戴帽子。我曾经坚持了很长时间喂一个吐一个的思路处理修饰词,后来证明有害无益。后来把方向扭过来了。

我:
喂一个吐一个的做法 早早年我导师刘老师就是这么做的。所谓名词组抱团(就是我们说的 chunking),就是从head N 开始往左一个一个的吃。情态动词与副词 有类似也有不同。说情态动词是 head 后面的动词是 dependent,这种处理有其优点。主要是情态动词与主语往往有一致关系,而且也常带有谓语的时体信息
但副词不同,让副词做 head 就有些反客为主了。

白:
这个地方是范畴语法和依存语法的重大差别。

我:
情态动词与后面动词,谁主谁副,很有说头。从句法上,情态动词做主,因为上述理由,最合适。从语义上(谓词的ontology),当然是后面的动词,因为情态动词是功能词,反映的是语法意义,概念意义很虚。当主语与谓语需要check语法上的一致关系的时候, 应该 check 情态动词。而当主语与谓语需要 check 语义一致关系(最典型的是主谓搭配关系)的时候,就必须 check 后面的动词。这是两个矛盾的要求。一般都在一个体系内部协调解决,确保情态动词与后面动词的 acessibility,适应不同的需求。

有时候想,白老师这个群里交流的这些体会、经验、理论和实践,算不算 CL 和 NLP 方面的学问呢?要说是学问吧,好像这种学问没处发表。(语言学的刊物那边或许有一些 room,但掌管语言学的学者,对语义计算好奇多于了解和欣赏。)计算语言学这边吧,一律的学习啊学习,或者深度啊神经,根本没人拿这个学问当回事儿,或者也听不懂。

这真是一个有意思的怪象。
所以我说岂止是隔行如隔山 同行也隔山。锤子不同,虽然做的是同一个事儿,也还是隔锤如隔山。白老师这样两边都不隔的,绝对是熊猫。

这种亚健康状态,终有一天会被领域认识到。

【相关】

科学网—计算语言学的尴尬

【语义计算:从神经机器翻译谈起】

【科普随笔:NLP主流的傲慢与偏见】

【科普随笔:NLP主流最大的偏见,规则系统的手工性】

【NLP主流的反思:Church – 钟摆摆得太远(1):历史回顾】

【Church – 钟摆摆得太远(5):现状与结论】

中文处理

Parsing

【置顶:立委NLP博文一览】

《朝华午拾》总目录

发布者

liweinlp

立委博士,计算语言学家,多语言多领域自然语言处理(NLP)资深架构师。前弘玑首席科学家,聚焦RPA+AI的NLP低代码多领域落地,设计NLP核心引擎雕龙,落地多领域场景,包括金融、电力、航空、水利、客服等。前讯飞AI研究院副院长,研发支持对话的多语言平台,前京东主任科学家, 主攻深度解析和知识图谱及其应用。Netbase前首席科学家,期间指挥研发了18种语言的理解和应用系统。特别是汉语和英语,具有世界一流的解析(parsing)精度,并且做到鲁棒、线速,scale up to 大数据,语义落地到数据挖掘和问答产品。Cymfony前研发副总,曾荣获第一届问答系统第一名(TREC-8 QA Track),并赢得17个小企业创新研究的信息抽取项目(PI for 17 SBIRs)。立委NLP工作的应用方向包括大数据舆情挖掘、客户情报、信息抽取、知识图谱、问答系统、智能助理、语义搜索等等。

发表评论

您的电子邮箱地址不会被公开。

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据