【李白104: 孤岛禁忌,还是残坑过继找萝卜?】

李:
老话题,中文句式 “NP1 NP2 Vt …”中,谁(逻辑)主语,谁宾语呢?

“这帮饿鬼一席好菜吃得盆干碗净”
“一席好菜这帮饿鬼吃得盆干碗净”

白:
两个左填坑,多清晰。非要在大小主语和逻辑主宾语的标签之间纠缠干啥?

深究的话,两个左填坑是填向同一个动词的,还是一个填向核心动词另一个填向残坑的,这才是需要区别的。但就算是填残坑的,也不必然是大小主语这种很局限的概念所能容纳的。

“小提琴他梁祝拉得最好。”

这是大小宾语夹着逻辑主语。小提琴和梁祝,都跟谓语动词相谐,可坑只有一个。所以另一个只能降格。

“胡子他从来不刮鬓角。”
“胡子他鬓角从来不刮。”

“鱼他从来不吃头。”
“鱼他头从来不吃。”

这是填残坑。如果允许任意私拉飞线,发现属性或部件关系不是问题。但若仅限“邻对”才能建立二元关系,技术上就有的扯了。私拉飞线的代价就是复杂性上升到平方级。

“部队的战友他只跟张三来往。”
“部队的战友他只有张三还有来往。”

“一起去旅游的朋友他只知道张三的下落。”
“一起去旅游的朋友他只有张三知道下落。”

李:
决定私拉还是决定相邻 没有来自UG的理据 主要是语言本身的特点。

白:
语言本身的特点应该词汇自带

李:
短语结构必须相邻 是一种偶然的约定。赶巧从英语出发,发现有所便利。不过,短语结构的分析路线客观上杜绝了交叉的可能性。这里面貌似有一些逻辑上防止思维紊乱的好处在。也就是说,短语结构的左右边界的约束使得交叉二元关系成为不可能。这符合绝大多数的语言事实。但缺点是,例外在这个框架里面很难容纳。

在 abcd 中,如果a与c发生关系 b和d就不可能发生关系,这是犯了“交叉禁忌”。从短语结构来看 这是必然排除的:(abc) d 或 a(bcd)。

有括号大墙挡着 交叉不被允许:*(a[bc)d]

其实我想说的是,交叉禁忌作为逻辑追求清晰的天性,也许的确具有超出语言本身的普世理据,但是,利用短语结构的形式约束来实现或贯彻这个理据。第一是太死板,没有给例外留下容纳的余地。第二,感觉上短语结构这种等价于打括号的做法,也不是实现这种约束最精简的机制。

交叉禁忌与最大跨度类似 都是原则,都有人类的思维逻辑里面某种共同的要求,都在语言事实上有统计意义的反映,但都不是铁律。

白:
这个括号类比有一个bug,主导词(坑)和跟随词(萝卜)以及修饰词(萝卜皮)的区别没有了,只剩下左右。这大错。一个词既可以释放坑,又可以同时释放萝卜的特性没有了。关联不一定是边界。关联会引起辖域变化,但不一定是自家辖域。a和b关联,引起c辖域的变化。因为c是head,管着b,但b的辖域就那样了。不会因为新增关联而扩张。

李:
那是一个比喻。短语结构两个要素:一个是左右边界,即括号。还有一个是头词的确立。等价于依存中的父节点代表。

白:
所以一个位置,可能会出现既填坑又被填坑、既修饰又被修饰的复杂情况,岂是一个只能在左右之间选一的括号所能代表。比如,“小张把眼睛哭肿了”的“肿”。它的辖域归顺了“哭”以后就不再扩张,但它的残坑一直蠢蠢欲动,直到遇见“眼睛”才消停。有点像基金,你有所有权,但你赎回之前没有处置权。是基金经理在处置你的资产。关系是你的,但辖域不是你的。代表辖域处置你的残坑的,是head。这样既避免了飞线的复杂性,又扩展了二元关系的可能范围。正所谓合则两利。同时,卧底是你派的,打赢了地盘归我,这好事哪个head不愿意干啊……

以“王冕死了父亲”为例:“王冕”是“父亲”的卧底,“父亲”在内战中已经归顺“死”,于是在“王冕”的地盘和“死”的地盘交上火了以后,“父亲”就可以通过这一层卧底关系,招安“王冕”到“死”的地盘中来。处置权和所有权分离,辖域主人和二元关系当事人分离,是这一切的关键所在。

更何况,“死”自己已经给不出未饱和坑,只能靠“父亲”这个加盟店带来的残坑凑数了。典型的“羊毛出在猪身上”。谁让猪加盟了呢。所以我说括号的比喻有bug,bug就在把辖域的所有权和二元关系的所有权做了多此一举的捆绑。其实,辖域都是我的了,我管辖范围之内的残坑归我支配有什么大不了的?只要有支配权,这局棋就走得下去,二元关系的所有权只是个名份,给出去有什么要紧?

李:
残坑的说法也可能有问题。所谓修饰语被头词吃掉以后,把自己的坑带给了头词成为残坑。等于是说,本来的短语黑箱子又变透明了。

语言学里面有个 island constraint 说的就是黑箱子性质。被包裹起来的内在元素,从外面是看不见的。到底看得见看不见?感觉上,两边的证据都有。包有包的理由,过继有过继的理由,都不足以涵盖全部事实。

白:
这恰恰是要质疑的。拿黑箱子论证不交叉,感觉是自说自话。这俩如果都不对,就塌了。

李:
例如,“他做了三例心脏手术。”  谁的心脏?

白:
患者的。

李:
这个问题不存在,或者说,这个坑被包住了,不能过继。为什么?因为它在NP最里面。从 x bar 理论来说,第一层是 NG,“心脏”就被吃了。第二层是 NP,“心脏”就被裹进去两个括号,完全看不见了。自然谈不上去找萝卜了。如果硬找,八成是错的。“他” 更可能是大夫。

白:
我的观点是,已经过继了,外面萝卜不相谐或者有歧义,那是另外的问题,不应该跟有没有过继连在一起。跟几个括号不应该有关系,硬不硬找都不是关键。不找是本份,输出是义务。

李:
“患者的心脏”,那不是语言。那是本体。 静态常识。说了白说。

白:
不是抽象患者,是具体患者,可以落地那种,只是没有外部名字,内部是有id的。就是三个id当中分配了一个。

李:
问题是落不了地,也不该落地。因为埋藏太深了。

白:
“他做了三例心脏手术,其中一位患者出现异常反应。” 怎么连起来的?“心脏”给那位异常反应者。

李:
这是硬要去联系,不是语言理解所需要。“患者” 与 “手术” 有直接关系。这是语言理解需要的。“患者” 与 “心脏”的联系,最多是间接的,不是理解所需要的。“心脏”就是限制“手术”,表明手术种类。“心脏”没有落地的必要性。

白:
需要的时候给不出来就是失职啊。但也引入了待定事项。

“他做了三例心脏手术,其中一位植入了人工瓣膜。”

李:
咱们推向极端,把句法进一步推向词法,这个道理就更清楚了。“心脏病”,听到这个合成词,没有人感觉需要了解谁的心脏。要了解的是,谁的病?虽然逻辑上,可以推理出来,谁的病,就是谁的心脏。但是这个填坑 没有语言信息表达 传输和理解的必要性,不增加有效信息。

白:
心脏没限定功能,“的”有限定功能。有个载体是明确的,x而已。

有备无患,萝卜来了就是有效信息,萝卜没来就是潜在信息。萝卜也不一定是落地实体,可以是逻辑算子。所有、全部、某些、某个、特定,都是一种落地方式。

李:
谈心脏病,追问谁的心脏,这不是常人的思维和信息需求。这是一种干扰,干扰了真正需要理解的信息。换句话说,保持不定状态对于有效的语言表达和理解,也许与填坑落地 同样重要。Keep it unspecified as a necessary and natural part of communication, 这就好比大脑。大脑的遗忘与大脑的记忆功能 同样重要。如果一个人一辈子只记忆 不遗忘 想来是非常可怕的。

该填的萝卜没填上与本来就不该填的坑,硬要去填, 这二者需要区别。区别在于某种程度的 孤岛限制。

白:
最多可以说,它的输出不活跃、被动,区别于活动的和主动的,但绝不是没有输出。一旦有萝卜就能填,和有了萝卜也无坑可填,也是需要区别的,或者说更是需要区别的。

分三档我也没意见:一定不用、default不用但可用,default用。但把中间一档去掉我不同意。微结构不打开就不用,打开就可用。

李:
赞成。

词法、“短语法”、句法,、是三个台阶。每一个台阶 都带有某种黑箱子味道。就是那种防止坑变成残坑的趋向。

白:
词法归词法,微结构毕竟可以不打开。但是非词法的部分,特别是自由组合的部分,一定是default可用的。而且从default可用,过渡到default不用但可用,我也不同意取决于残坑的嵌套深度。

很多嵌套是修饰语的叠加,基本上没什么衰减。每次残坑转移衰减一次我赞同。就是换一次干爹衰减一次。

“小提琴他梁祝拉得最好。”
“胡子他从来不刮鬓角。”
“胡子他鬓角从来不刮。”
“鱼他从来不吃头。”
“鱼他头从来都不吃。”

“这个会所我二楼从来不去”

“二号楼”没坑,“二楼”有坑。所以刀郎唱的“八楼”很让人困惑。汽车怎么会停在某建筑物的八楼,还是公交车,原来人家是专名。

与属性/部件相关的语义理解,不是难在语义描述本身上,而是难在穿插变幻的语序上。打开语序的约束(邻对),就要handle满天的飞线;不打开语序的约束,就会漏掉交叉现象。所以我们研究把语序约束开一条小缝,控制住飞线,同时又能捕捉交叉。语义本身的描述是结果,handle语序是过程。看结果,只看得见“正确”与否,看不见“可行”与否。所以,HowNet告诉我们语义长什么样是一回事,通过一个可行的过程把握语序,最后搞成那样子,是另一回事。

李:
说得很好。关键是这条缝怎么开了。

漏掉交叉现象,以前不认为是问题。至少在英语解析中,从来都认为是天经地义的。没人愿意违反交叉禁忌原则。这个问题成为问题,主要还是到了中文以后。中文表达里面,“违反原则”的事儿不少。不得不有个应对。这才有开一条门缝的说法。才有依存关系图优于短语结构句法树的论证,因为前者的表现力更加丰富自由,没有那么多原则和禁忌。

白:
回到辖域代表权和二元关系落地权之间捆绑还是松绑的问题。这是两件事。在不交叉“原则”的背后,有一个观念认为应该捆绑。中国人的语言实践则说明二者可以松绑。松绑无害。

李:
但是,另一方面来看,尽管中文违反原则的事儿并不难寻,但隐隐约约感觉,英语中有效的那些原则,包括反对交叉原则,实际上在中文也有一定的影响力。

白老师经常举一些奇奇怪怪的违反原则的例子。好多例子听起来有一种不同程度的“别扭”。别扭在人类的句法原则和语义原则发生了冲突,给人感觉怪怪的,到底是合法非法,界限模糊了。

白:
那是你在英语世界呆久了。交叉不影响相谐,反而利用相谐。句法说的结构只是辖域之间的包含结构。只是针对这一种形式关系,不应扩大化。辖域代表权和二元关系落地权可以拆离。

李:
语义原则就是从本体来的萝卜填坑的“相谐”性,句法原则就包括结构不允许交叉依存。

多数现象二者没有矛盾。到了发生矛盾的时候,就是那种语言比较边缘的地带了,属于毛毛虫的毛刺部分。但对于解析来说,也还是要应对。而且人虽然感觉别扭,也还是听得懂。

套句马列主义课堂上学到的辩证法,原本是谈经济基础和上层建筑的。语义是决定性的,句法是非决定性的,但是句法对于语义有反作用。反作用的表现就是那些原则虽然可以违反,但是违反了感觉上不自然。

白:
多说几遍就没有反作用了。也许只是一种参数化的容忍度,有个体差异,阈值可调。

李:
哈,多说无数遍就成为成语黑箱子了,自然反作用也趋向于零了。

这里面有一个很长的灰色地带,或者说毛刺地带。有点像鸡肋,食之无味,扔之可惜。遇到社会媒体这种monster,还不得不对付。

白:
看这个:“这个会所我二楼从来不去”。念两遍,自然顺了。分析从宽,生成从严。分析不出来怪人违反原则,不是很健壮。

李:统计上应该有反映的。“这个会所二楼我从来不去”,“我从来不去这个会所二楼”,感觉上,会有多得多的人这么表达。

白:
统计有的扯,到底怎么采集就算平衡了。长尾难道该死。

分析不要管毛毛虫的实际边界,要管“外包络”。生成也不用管毛毛虫的实际边界,要管“内包络”。不踩线更安全。内外包络可以都是平滑的。在两个包络之间,如果有统计信息可以利用,可以走得更远。所以我现在在做理解的场合很少关注什么不能说,除非可以用来作为消岐的线索。

李:
内包络外包络的说法很好,不必踩线划线,在灰色地带做无意义没结果的争论。但是,灰色地带比起黑色地带,到底还有个分别。纯粹从语言工程上考量,也还是优先搞定黑色地带,灰色地带可以推后。这是其一。其二,灰色地带的难度相对大,收益相对小,也一般是事实。

白:
关键是方向。分析要从宽,包容性要大。说三遍就通的句子,要当作合法句子处理。可说可不说的,一律按可说处理。

如果一个机制能够罩住一堆长尾,但是同时也能罩住不是长尾的一堆胡说八道,只要统计上那些胡说八道的出现概率足够小,这个机制就是非常诱人的。如果落地的环节还有过滤那些胡说八道的第二道防线,那就更没什么担忧的了。

我们不是先有一个粗线条的机制罩住80%,再用另一个精细化的机制去罩住更多。我们是一开始就罩住很多,但胡说八道也会罩进来。搏的是胡说八道占比很低。所以不存在精细化环节带来的成本收益考量。毕竟难为我们也赚不了什么钱,为此在网上大肆制造胡说八道语料,得不偿失。

“学校我从来不从正门进。

“正门”绝对处于旁岔(介词宾语)。但是,它留下的残坑辗转换了两次干爹,每个干爹又各自扩充了地盘之后,在干爹“进”的带领下最终迎来了相谐的大萝卜——学校。

【相关】

【一日一析:表层句法形式变化,深层逻辑形式不变】

《一日一析系列》

【语义计算:李白对话录系列】

《朝华午拾》总目录

 

发布者

liweinlp

立委博士,自然语言处理(NLP)资深架构师,Principle Scientist, jd-valley, Netbase前首席科学家,期间指挥团队研发了18种语言的理解和应用系统。特别是汉语和英语,具有世界一流的分析(parsing)精度,并且做到鲁棒、线速,scale up to 大数据,语义落地到数据挖掘和问答产品。Cymfony前研发副总,曾荣获第一届问答系统第一名(TREC-8 QA Track),并赢得17个美国国防部的信息抽取项目(PI for 17 SBIRs)。立委NLP工作的应用方向包括大数据舆情挖掘、客户情报、信息抽取、知识图谱、问答系统、智能助理、语义搜索等等。

发表评论