【李白宋毛72:NLP的测不准与追求完美】

李:
这两天琢磨中文词的扩展中的交叉现象,很有意思:

1. 选择疑问句谓词(P)模式 【P 不 P】: 学不学; 能不能;好不好
2. 动补(V-Buyu)词的可能态模式 【V 得 B】:学得会;可能态否定式【V 不 B】:学不会

12交叉: 学不学得会 ?
回答是:学得会 / 学不会 (或者:能学会 / 不能学会)

上述两个扩展模式也可以倒过来交叉,于是我们有 21 交叉:

学好
–> 学得好; 学不好
–> 学得好不好?

回答是:
学得好,学得不好,而不是 学得好, 学不好

后一种交叉,实际上用的 更多的不是“得”而是“的”:

学的好不好?

谓语重心落在“好”上,而不是“学”上。这与前一种交叉不同。很有意思的现象。

白:
得字后面的补语,有定性定量之分。“接不接得住”可以,“接得住不住”不行;“打不打得倒”可以,“打得倒不倒”不行。所以“住”、“倒”是专司“定性”的,是一个二值的状态,没有程度之分。另一方面,“扎不扎得紧/扎得紧不紧”“拴不栓得牢/拴得牢不牢”都能说,但补语“紧、牢”对应的是一个连续度量,但又有一个预期的极化状态阈值。所以,面临可能补语与程度补语的句式竞争时,可能补语占优势。第三种情况是“长不长得高/长得高不高”,补语“高”并不见得一定是预期的极化状态,“高不高”只是一种关于程度的中性的疑问,这时,程度补语就反过来压制了可能补语。第一种,纯定性,只能是可能补语;第二种,强定性弱定量,可以是程度补语但是与可能补语紧耦合;第三种,弱定性强定量,程度补语与可能补语松耦合。

长不长得高,和长得高不高,完全两回事。

李:
长没长高
== 长高了没长高
== 长高了没有

但是: * 长没长得高

白:
长高,相对于自己;长得高,相对于平均水准。程度补语。

可能补语的“长得高”,对成年人是梦想,对小孩是废话,除非侏儒症。所以可能补语义微弱。否定形式“长不高”则信息量大。对小孩,形同诅咒。或者,是成人身份的一种变相认同。

“没”是现时的未然,程度补语无论肯定否定,都是现实的已然,语义上也不相谐。可能补语与“没”结合,参照时点一定移到了过去,如:“谈没谈得拢”。现时已经出结果了,只有过去某时点上这还属“潜在”。

所以,“学得好不好”本来是关于程度补语的疑问,到了“学没学得好”,就变成了关于可能补语的疑问了。

李:
分析得好 细致入理。

谈没谈得拢 只有天知道
谈不谈得拢 就看你本事了。

上次白老师说分词 (大意):分词不仅是切 还要粘。至理名言。
句子就跟西瓜似的 可以拿着刀🔪来切;但字就跟珍珠似的 也可以拿串子来粘它、串它(concatenation)。结果都是 词,我们建筑语言大厦的砖瓦。这砖瓦必须有来路出身 有档案背景,因此目标也算是明确,即,所谓词应该是“词典的词”。词典就是档案 背景全部可在其中绑架,才能支持语言理解。

最有意思的是离合词,因为离合词不仅要串,而且还要跳着串。“谈不谈得拢”, 这个 5-gram,需要分词分出 “谈拢” 来 才算分词到家。

谈不谈得拢 == 谈得拢谈不拢 == 能谈拢不能谈拢 == 能谈拢 还是 不能谈拢

说到底 都是围绕着动补词 “谈拢”。 其他的小词(function words)或重叠(reduplication)手段,不过是给这个核心谓词语义添加语法意义而已: 诸如 疑问(选择问句)、时体、情态。

宋:
年满18岁,具有本地户籍,在本地居住满十年者

汉语的现象说明,词不一定是单向连续的短字符串,不一定边界清楚。非词语素和词的界限并不是绝对的。

李:
这个quasi-后缀“者”, 以前论过,它要求的是 VP,而不是 V。严格说不是 VP,而是 谓语 Pred。如果主语 NP 后面接谓语 VP 的话,那么总可以把主语去掉,加上这个“后缀”,来构成一个带有定语从句的 NP:VP者 == VP的人,这个 “的” 带的是定语从句 VP 。

当然实际语料的分布中,会发现 80%(?) 以上的“者”之前的 VP 其实就是一个 V ,所以把它当成英语的 -er (-or)一样看成是词的后缀,可能会带来一些便利,但必须留个 VP 的后门,来对付 定语从句的 VP 很长很复杂的状况。

宋:
手工业者

李:
“手工业者” 算是 另一个用法 看扩展性决定是细线条的规则 还是直接枚举入词典。

白:
者—N/S
关键是辖域、分配律。

李:
“者” 翻译成英语应该是 whoever+VP,不是简单成为 V-er 就可以顾全的。Whoever 是主语的形式,放在谓语前,与中文的结构关系类同,“者” 不过是放在谓语后而已:

年满18岁,具有本地户籍,在本地居住满十年者有资格报名。
–》
Whoever VP(年满18岁,具有本地户籍,在本地居住满十年) is qualified to sign on

白:
“子女不服管教者,配偶不在本地者”

不是主语,是领项,反填至N/N的残坑。

李:
fun,then,those who/whose

汉语的大主语(或 Topic 或“领项”)是一个中文里蛮独特的句法语用混杂的现象,对应英语的结构,错综复杂一些。

白:
其实从填坑角度看就是一个纯句法现象:一坨,有个坑,萝卜可填。至于这个坑怎么来的,最初长在谁身上,不重要。其实就是一个纯结构现象,无关语用。只要摆对解读结构的正确姿势,它就自然浮现。

李:
“子女不服管教”,这话听上去感觉不完整 虽然主谓齐全 因为有个坑没填萝卜:“【谁(的)】 子女不服管教?”

“心脏病不好治。”这话听上去感觉是完整的,虽然也可以问,【谁的】心脏病不好治?

白:
有隐含的logical quantifier

李:
“心脏病” 有坑没坑?还是说 这坑有强弱之别?
“子女”对 【human】 的坑,强过 “心脏病” 对 【human】 的坑,后者信息量也更大,更需要满足。

宋:
老王的子女不服管教。老王的子女不服管教者被老王打了一顿。

李:
这里,“老王的子女”是全集,“【其中】不服管教者”应该是个子集。

“子女都是不服管教的。” 这话就显得完整了: 因为全称小词“都”虽然 mod 的是 VP,但却作用于 NP“子女”,使得其坑显得没有必要填了,因为隐含的坑就是 “【所有人的】子女”,与 “心脏病” 同:“心脏病”的坑隐含的默认萝卜也是“所有人”。

老年人的心脏病不好治。
心脏病其实不难治,但老年人的心脏病除外。

上句的第一个分句,默认萝卜是 for all human;第二个分句 做了显式的限定,修改了默认值。

回到原问题:到底坑有没有必要区分强弱?

作为对照:及物动词肯定是有强弱的。有的必须要宾语(“善于”,“赢得”),有的最好有宾语(“喜欢”,“看见”),有的可有可无(“呼吸”,“诊断”),没有的话,大众心理就补足了一个默认值,从本体(ontology)来的默认: “呼吸【空气】”,“诊断【疾病】”。

白:
“心脏病不好治。心脏病不会治。心脏病不去治。” 谓语不同,对“心脏病”的坑有影响。第三个例子,最不完整。

李:
心脏病不去治,【你】不想活了? == 【你】心脏病不去治,不想活了?
心脏病不去治,【你】治啥?== 【你】心脏病不去治,治啥?

第一个【你】应该是病人,第二个【你】可以是医生。第一个【你】直接填“心脏病”的坑。第二个【你】作为医生,与“心脏病”的坑没一毛钱关系。

白:
是。对举可以削弱“萝卜的坑”。本来有一毛钱的入账,又有了两毛钱的债务。结果欠了一毛钱。成了别人家的坑

李:
最近想,退一步才好进两步,可谓真理。一辈子能够退一步的时机不多,总是忙忙碌碌,随波逐流,人在江湖,身不由己。如果因缘巧合遇到了退一步的机会,那么一定要惜缘。追求完美,不留遗憾,其实是常态生活的奢侈,但也可以是退一步的境界和机会。

为什么退一步反而可以追求完美不留遗憾呢?因为在高歌猛进的人生中,没有时间喘息和反思,难有机会从根子上改造,肩负的是历史的负担。只有在退一步的时机,才有可能重起炉灶,把历史负担当成经验教训的积淀。虽然慢了一拍,但磨刀不误砍柴工,最终可以更加完满。历史上,苹果公司的操作系统就在乔布斯的指挥下重起炉灶大放异彩。可怜的微软就总没有这样的机会,补丁摞补丁过了一辈子。

胡乱感叹一哈。

量子力学有个测不准哲学,其实对于语言学很适用。语言作为交流的工具,宏观上的可理解性是没有问题的。但是,测不准原理表明:从本质上来讲语言学不能做出超越统计学范围的预测。语言理解系统无论怎样逼近,永远也不可能在微观上 capture everything。那天白老师给了一个很妙的例句,是:“马可波罗的海上旅行”,让通常认为非常坚固的 4-gram 词 “波罗的海” 被另一个 4-gram “马可波罗” 遮盖了。可以设想一个分词系统的第一版本是 assume 4-gram 词以上就是正确的(实践中,匹配上 tri-gram词就相当靠谱了,这可算是一个分词的经验公式 heuristic),可以 identify 词及其概念。但对于上例,这个系统从最左向右匹配,赶巧就对了;若从右向左走,就错了。

毛:
有道理。这个例子确实巧妙。

李:
咱们进一步扩大疆界来逼近真实,就算搞定了 6-gram “马可波罗/的/海” (Note: 前一篇李白对话【李白71:“上交所有不义之财!”】中说过,其实搞定 5-gram 就可以认为是搞定了汉语分词,因为 5-gram 几乎是 local context 的极限了),咱们这就突破这个极限看看……。我要说的是,我们总可以找到一个context,使得以前的任何分词(及其分析)无效。

“我的朋友生了个双胞胎,绰号很奇葩,先生出来的叫千里马,后出来的叫波罗的海。我告诉他绰号也是有讲究的,有的可有的断断不可。千里马可波罗的海不可!(Note: 千里马/可/波罗的海/不可)。”

“朋友问为什么,我说因为有个测不准原理。千里马本体毕竟是动物,与人不远,可用。波罗的海本体自然物体,无法联想到人,故不可用。”

“马可波罗”乍看何其强大,甚至大过“波罗的海”(毕竟里面藏了一个万能小词“的”,是它的硬伤),也逃不过测不准的限制。最后大胆假设一下,立委牌中文深度分析器(deep parser)神奇地利用 long distance 句法或 休眠唤醒机制 帮助突破 local context,搞定了“千里马/可/波罗的海/不可” 的分析理解,so what?总还是会有“测不准”在,譬如:

“我舰/日航千里/马可波罗/的/海/不可/阻挡。(或曰:固有波罗的海,哪里有什么马可波罗的海?曰:先生一叶障目,知其一不知其二。马可波罗的海,乃印度洋别称也。)”

牵强?然而场景合理,语句合法,概率不是0。

想一想测不准,咱们搞AI,搞NLP的,怪丧气的:系统完美,只在梦中。但反过来想,其实是对完美主义者的有益警示:追求系统的完美和静态高指标从来不(应该)是核心目标,领域化能力和动态指标才是系统打遍天下的硬通货。不要想完美的事儿,只是要问:给你领域大数据,你多快可以让系统进入角色,让它上线转起来服务业务,然后对于 bug reports 的反应和修复速度有多快,系统在使用中日臻完善,虽然永远不会完备。

所谓追求完美不留遗憾,正解应该是对于架构和formalism的近乎受虐的追求,为的是到用的时候,到领域化的时候,到修复 bugs 的时候,可以庖丁解牛游刃有余。

毛:
你这个事情的性质不属于测不准,而属于词法/句法的不完备。测不准是对每个粒子而言的,每个粒子的位置和速度都有测不准的问题。而你讲的这个情况,是说不管什么样的词法/句法都有对付不了的特例,这就是不完备的问题。

李:
资源的不完备(不可能完备),在我就是系统的测不准,貌似也就是原观测对象的不确定性。

白:
@毛 是进出不同层次没有违和感导致的。一个字当作一个字,和一个字当作语言中的词的部件,是处在不同层次的。人偏偏要搅和在一起玩。这样会闹出悖论的,不过,NLPer似乎并不关心。

【相关】

【李白71:“上交所有不义之财!”】

【立委科普:歧义parsing的休眠唤醒机制再探】

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

《朝华午拾》总目录

发布者

liweinlp

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

发表评论