【李白之43:谈谈绑定和回指】

白:

him为啥指he而不是the police officer?按照“最近提及原则”,the police officer在栈顶,“he”在次栈顶。但,语境(图片)表明,“he”在牢狱中,事理指向出狱(go)。事理决定了police officer可以决定he是否go,bribe可以左右police officer的决定。这些事理指向,一旦达到边界强度,可以压制最近提及原则的标配结果。

李:
"He bribed the police officer to let him go" is like "He requested the officer to find him". "him" cannot refer to "the officer", it has to be somebody else, either "He" or someone else.

cf: "He requested the officer to find himself"

"himself" refers to "the officer".

白老师的道理是说语境(事理)可以突破 heuristic。凡是 heuristic 都只是一种趋向,一种原则,也都有例外,都有被其他因素override 的可能。这个道理是对的。但这个案例,却不需要语境出场,这是句法绑定(binding)本身就决定了的。

"bribe" 的subcat 是:bribe sb to do sth, so "sb" is the (logical) subject of "to do",
the object of "to do" cannot refer back to the subject unless "self" is used following the Binding Theory.  So in the coreference list, "the police officer" is not even registered as a possible candidate.

句法就排除了这种可能,因此也就没有什么就近原则与语境发生冲突的故事了。这是乔姆斯基的绑定理论的一个典型表现。不确定绑定的是谁,而是确定不能绑定的是谁。

白:
穿透了

李:
显示了句法的有限但是有效的作用。

"She bribed the police officer to let him go", now the subject is "She", still "him" cannot refer to "the police officer". It has to be somebody else.

白:
him就是第三者,非反身性。

“John asked Bob to wash himself.”
“John promised Bob to wash himself.”

当年德国老师讲过这两个例子

李:
right.
this diff lies in the diff in subcat patterns. "promise" is not associated with the standard subcat "promise sb to do sth" when "sb" is the logical subjecct of "to do", it is instead associated with another subcat "promise to sb to do sth" when the logical subject of "to do" is the same as the subject of "promise".

所以句型不仅仅是形式序列: Input 形式背后作为output的逻辑语义也是句型的一个必要成分。上述两个形式相同的序列,在句型上被认为是两个。分别用不同的subcats 在词典里面标识。可见,subcat 虽然是一个句法范畴,里面却藏着通向语义的钥匙。

语言学里的subcat 差不多是大半部句法了,是极为重要的概念。词典主义被公认为最有效的自然语言策略就是基于subcat。这是语言学隐性形式手段的最漂亮的体现,是上帝的杰作。

白:
“我答应你离开他”,“我要求你离开他”。前者是“我”离开,后者是“你”离开。在“答应”和“离开”进行“合并”操作的时候,“离开”没有饱和的坑向“答应”的逻辑主语开放复用。在“要求”和“离开”进行“合并”操作的时候,“离开”没有饱和的坑向“要求”的逻辑宾语开放复用。这种在合并时可以对复用指向提出要求的禀赋,潜藏在词典里。平时看不见,合并时露峥嵘。

李:
正是。这是语言(学)的奇妙。由于subcat是一种词典分类或标注,是隐性形式,这似乎是创造语言的上帝给人类理解语言出了一个小小的难题。在人类(语言学家)没有发现subcat或自主利用subcat机制之前,语言处理注定是混沌的、粗线条的。但无论发现还是没发现,人类千百年来一直在潜意识里利用它,无障碍地交流。

白:
“面包我答应你吃掉了,牛奶你就别逼我喝了。” 即使填后面动词坑的萝卜移位到前面,这个关系依然成立。即使“你吃掉了”这么天衣无缝也不许结合。

李:
这个句子很妙。

白:
binding在汉语里会有更广阔的发挥空间,而且和“词负载结构”的理念是如此之契合。残坑就是一种变相的指代。

李:
但是,coreference主体是discourse范畴,binding不过是想利用句法提供一点帮助,它还是局限于句法本身的范围,句内。句内能搞定的只有self, 句内不能搞定但是可以排除句内candidate的,句法也有一些助益。再多,binding 就无能为力了。Coreference在 binding 之外,仍然有很多 discourse 的挑战。是一个公认的 NLP 难题了。

白:
“你我不允许走,他么可以商量。”---如果后面的动词是不及物的,即使逻辑宾语提前了仍然受到与在原位同样的约束。

李:
什么约束?

白:
走的不是我,虽然离得近。

“一个嫌犯我们也不允许放过”,“我们”似乎要通吃呀…… 难道“允许”是个双性恋?

李:
句型纠缠? 一个也不 Vt == 一个也不【被】Vt
“一个也不(被)买”,“一个嫌犯也不(被)放过。”

“一个嫌犯我们也不允许放过”
==“我们不允许放过一个嫌犯”
== “我们不允许【human】放过一个嫌犯”
== “我们不允许一个嫌犯(被)放过”

这个【human】是谁,不知道,也不必知道。这是一种命令,常识上这个【human】可以是任何人(在domain里可能指某些“手下”)。任何人也就可以包括“我们”自己,但这不是严格的回指,而是包含。

“我们也不允许自己或任何其他人放过一个嫌犯。”
“我们也不允许任何人包括我们自己放过一个嫌犯。”

 

【相关】

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

《朝华午拾》总目录

【李白之42:谈谈工具格的语言形式】

白:

“张三踢李四的两脚李四一直惦记着啥时候提回来呢。”

如果“两脚”填的不是标配的坑,这定语从句的反填就成了问题。目前我是把“两脚”这种动量词先处理成N,再升格成为+S,可以理解为一个自带宾语的虚拟后置修饰语。当对“两脚”使用定语从句修饰的时候,可以认为自带的宾语“两脚”与作为其母体的虚拟后置修饰语进行了某种分离:虚拟后置修饰语“+S/N”留在了定语从句内部,而它自带的宾语“N”则被甩到定语从句的外边,被修饰且可以反填残坑“/N”。同理,在“武松打死老虎的那三拳力道大得惊人”中,“三拳”也填不了“打”的标配的坑,只能理解为自带宾语的前置虚拟修饰成分(“打死”已经是述补结构不再能后置只修饰“打”的动量修饰成分,从而必须往“打”前面放)S+/N和动量结构N分离了。就是说,被定语从句修饰的动量词N,无法简单地升格为+S或S+,而必须要还原出一个带宾语坑虚拟修饰语+S/N或S+/N,把它推入定语从句。这恰恰才是N升格为+S或S+的本质。如果不是反填定语从句的要求苦苦相逼,这个本质差点儿被掩盖了。可以理解为先有“武松(凭借)三拳打死老虎”,而后有“武松(凭借)打死老虎的那三拳”,最后变成了“武松打死老虎的那三拳”。

说到“凭借”,想到了“借以”。后者是中间抽空了介词宾语的合成词。“武松借以打死老虎的那三拳”是“武松借(那三拳)以打死老虎”的定语从句形式。反填的坑,就在“借”和“以”之间。

李:
工具格,或 所凭借。

白:
有的时候,这个坑会显性化,“借之以”。
砍、剁、刺、砸等动作,工具格是标配。打、抢,工具格不是标配。非标配又不显性带介词的工具格,必须借升格处理之。

李:
工具格有搭配性与非搭配性两种:搭配性工具 因为其搭配 常常省略显性小词 如“凭借”、“用” 等。“打 两拳” 是搭配,“两拳”是工具。“用板凳 打”,则是非搭配性工具。

白:
“他抢银行的那把玩具枪”
意思是“他(用以)抢银行的那把玩具枪”

李:
“他抢银行的那个案底”

白:
“案底”是N/X,不需要反填,是动词填X。

李:
“他抢银行的那个同伙”

白:
“同伙”是N/N

李:

“他抢银行的那幢大楼”
“他抢银行的那个时间”
“他抢银行的那个缘由”
“他抢银行的那个后果”

白:
缘由、后果也是N/X。大楼、时间不是,但内置虚拟修饰语。必要时就分离出来,塞回定语从句。同伙、缘由、后果、案底,都带坑。时间、大楼、动量,则是内置一个随时可以分离的坑。或者叫虚拟小词。

李:
“他抢银行的那个x”
对于非搭配性(标配)的工具,也分为两种,一种是这个实体本身具有比较典型和普适的工具性。算是一个名词子类吧。另一个是不在这个子类的名词。对于后者 如果想表达工具这个逻辑语义,就必须用小词。否则它就没有证据或痕迹显示自己的工具角色。“他用希特勒主义去抢银行”。这个 “用” 不能省。因为 “希特勒主义” 第一不与 “抢银行” 有搭配,第二它自己也不属于工具子类。语言必须要用显性形式,譬如次动词“用”,或者俄语的工具格的词尾形式,来标记其逻辑语义,否则心里的语义无以传达。

白:
“抢银行”换成“治理国家”,“用”就可以省了。

李:
那是因为 “主义” 与 “治理” 有某种搭配的呼应。

白:
且不说逻辑语义,统计就支持这样的搭配

李:
没有统计的搭配不存在 除非说的不是大数据。

白:
不说“主义”,就说“那一套”,也可以省掉“用”,因为“希特勒”已经是足够强的搭配因素了。

李:
“他用那一套糊弄谁呀”
“是啊 那一套糊弄谁呀”

白:
“那一套”隐含“方法/无形工具”
所以,对于从名词反推虚拟修饰语的“升格-分离-反填”机制,形式规则只提供可能性,统计搭配才提供现实性。

上面说错了,“升格”都应改为“降格”。降格虽是普适的机制,但只能紧邻被修饰语使用。分离是受统计显著性搭配条件才激活的,只有成功分离,才能在后续纳入正常的反填渠道处理。

被定语从句修饰的中心语,N/N与N/X的区别。前者从N栈依次寻找搭配的词语填坑。后者从N和S混合栈里的依次寻找搭配的词语。二者都服从“最近提及原则(last mentioned principle)”,但针对的栈不同。因为都在定语从句辖域内,这些填坑的萝卜都是使用的免费额度,无论S还是N。

李:
在我的体系里,arg 降格为 mod,【工具主语】 降格为 【工具状语】。如果 topic 是人,subject 是工具,topic 可升格为逻辑主语 arg,工具 subject 则降格为状语 mod. “他一巴掌打了她”,“他”是逻辑主语,“一巴掌”是工具状语。

总之,逻辑语义虽然放之四海而皆准,自然语言却老在升格降格、显性隐性形式中变化多端。语言世界因此诡异而多彩。

白:
话头是宋老师“达成的一致”引发的。“一致”在宋老师的例子里确实是“升格”,但后续关于动量词的例子里,讨论的都是“降格”。N+到N、S+到S是升格;N、S到N+、S+或+N、+S是降格。一个是萝卜皮变成萝卜,一个是萝卜变成萝卜皮。

李:
“达成的一致” 就是 “洗的澡”

白:
?学的习
?高的考

李:
不好
有如 * “浏的览”

白:
洗的澡是自指,达成的一致是转指。

?收获的丰硕
?贪污的巨额

最后一个接近于能说。

取得的圆满

这个就完全没问题了。“圆满”基本可以类比宋老师例子里的“一致”。

赶过的时髦

“时髦”比“圆满、一致”还顺溜。几乎不是临时借用N而是固化的N了。

 

【相关】

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

《朝华午拾》总目录

《李白毛55: 漫谈中文NLP和数据流》

立委按:谈笑有鸿儒,泥沙龙写照也。毛白李三剑客,隔洋神交,日颠夜倒,天马行空,人生快事也。语言理解,人工智慧,软体硬件,万言不离其宗也。铿锵三人行,行迹可存,笔记于此,以飨同仁也。

白: 转:《夏洛特烦恼》我以为主角叫夏洛特 。原来男一号叫夏洛 ;接下来会不会有《郭敬明天见》《周立波很大》《吴奇隆胸记》《王宝强奸案》《郭富城会玩》《井柏然并卵》《黄秋生无可恋》《贾乃亮了》《奥巴马上来》《周润发财了》《权志龙虾壳》《金正恩仇录》。

李: 边界之争。夏洛特是词典一方 特+烦恼 是句法一方 作为一般原则 句法认输。所有的边界之争 你总可以找到一种语境 来支持任何一方,但是实际系统中 还是按原则办事(除非某特定语境出现频率大 而且可以形式化被捕捉作为原则的例外)。“郭敬明” 是词典,“明天”或“明天见”也是词典,词典与词典相争。 谁赢呢?要分不同情形。情形对应的是 heuristics。对于此情形,“明天见” 赢。因为有这么一条 heuristic:最少词数胜出。郭敬/明天见, 算两词。郭敬明/天/见 是三词。更深的理由是 音节数量的匀称的 heuristic:3 1 1 不如 2 3 匀称。

白: 无后坐力炮,经常被读成2 3节奏,按构词法,应该是1 3 1。可否不那么早定输赢,都打到上一层。

李:可,keep ambiguity untouched 的办法 也是一招,不过加大了后去 parsing 的搜索空间 也可能不妙。

白: 上层用Ngram也无所谓。看一个滑动窗口激活一个还是两个词袋。

李: 这就是拼积木,难的积木留在最后拼。拼积木ngram比cfg容易,没有爆炸的问题。

白: 正是。

李: 汉语的节奏对称还是很厉害的,举反例总会有,但是实际中发现,音节数的条件,比起其他的条件(词类、子类、语义分类)往往也很好用、可靠。另外一个相关的体会是排比句式,汉语(包括古汉语)排比句式的使用往往可以把本来占有统计劣势的 parse 变得有效起来。不过,至今没想到利用排比句式帮助消歧的好的实现办法。感觉排比的发现和使用是处于另一层,而且排比的 scope 不好事先确定。

毛: 对于汉语NLP, 二位觉得有什么好书可以推荐?不用很深,科普就行。

李: 我很多年不看书了,还是白老师推荐吧。最好的是白老师正在写的,这个无疑问,但你需要等。汉语 NLP 论文献,80% 谈的是切词,全领域走火入魔了,陷入细枝末节和烦琐哲学,很大程度上非常可惜的一种智力浪费。

毛: 等倒没关系,反正暂时也没时间看。其实我不太会有机会用到这方面的知识了,我这是“朝闻道夕死可也”。尼克,Unix的那些Utility,每个都是基于一个while主循环,这就是lambda的语义。Java8让你有一种简洁的方法来表达这种语义,然后它替你生成这样的循环。

白: 自然语言的语义,也有lambda的份儿。

毛: 是,所以我觉得数据流在 NLP 方面可以发挥一些作用。

白: 表函数、表关系、表部件的词(中点、姐夫、抽屉)都是。需要一个带坑的语义结构去定义。坑,就是约束变元。

李: semantic subcat?  Syntactic subcat specifies the form of roles in a frame,correspondingly, semantic subcat specifies the preferred semantic classes for the expected roles of a frame. 语义 subcat 都是必填的,虽然句法上还是可省略。

白: 坑有必填的和可选的两种。

李:如果加上可选的,那就超出了subcat,而进入 cat 了。因为可选的角色一般针对大类,而必填的才针对子类。

白: 这点商榷一下,时间地点等,往往不是必填的。

李: exactly,时间地点等边缘角色针对的是大类。所有的动作、行为都适用。它们都在时间与空间中存在。而一元谓词,还是二元谓词、三元谓词,甚至零元谓词,这些都是子类的区别。天气动词语义上是零元的,虽然句法上可以加一个:“It” is raining 、“老天”下雨了。世界语最接近逻辑,语义的零元,句法也是零元,就不用加这种无意义的主语:Pluvas。

毛: 我觉得最有前景的可能是并行多路的parsing。就如你们刚才说的“无后座力炮”,如果系统能立马分出两个数据流分支,按不同规则加以解析,然后由高一层的规则判断何者为优,那效率就高了。这在NLP方面不是什么新概念,问题在于能否搭出这么灵活而高效的系统。但是NLP所处理的原料不太可能是世界语的文本呀。

李: 只是说明语义和句法之间既对应,又不完全对应的情形。比较不同语言,这些不对应的部分反映了不同语言的应对策略,这是很有意思的对比。

白: 标签化的表达比函数式的表达,应对非必选的东东就灵活多了。

李: 英语用 it,谁知道这 it 是什么东西?汉语比较具体,用的是“老天”。

白: 相反吧,汉语不说。

李: 汉语也可以不说,“下雨了”。如果不说,那就与世界语一样逻辑了,躶体出境。

白: 不说不是省略,是比省略高明的模糊。

李:  这里不是省略,因为逻辑语义上没有这一元的地位。

白: 语义上就有0元谓词,但是句法上没有地位,于是搞了个貌似省略的充数。

李:”老天“ 直译过去就很可笑:The sky is raining, Mother Nature is raining, or, God is raining?

白: 比it还富有想象力.

高: 像黑格尔说的,Was ist Das.

毛: 可以用函数式的方式来处理标签,把二者结合起来。我相信在NLP这一边已经有了许多很好的概念和方法,问题在于怎样搭出好的系统来高效加以实现。所以数据流应该有用武之地。

李: 语言很有意思,可以从三层来看这种“坑”。Filmore 把这个叫做【格语法】,他写过 “Case for case”,许国璋教授翻的,叫《格辩》,得其神韵,很妙。《格辩》是与乔姆斯基唱对台戏,是反乔派中最有分量的历史文献了,高举的是语义大旗。对NLP有深远的影响。所以,“坑”(case)可以分三层来看。第一级是 morphology case,这是“格”的本来用法,主格、宾格、工具格等等的词尾形式所表达的。第二级是 syntactic case,刻画的是 subcat 对语言形式的条件要求,包括具体语言中每个 Role 的词序、介词等的要求。第三级是 semantic case,刻画的是输出框,这是各语言共同的,又叫深层格,是 Filmore 提出的概念,与乔姆斯基的逻辑形式(logical form)对应。要几个元(格)是由谓词的概念子类决定的,它反映的是自然的关系(可以包括本体常识)。可是每个语言在实现这些深层格的时候,会利用不同的句法或词法的形式,于是穿上了句法或词法的外衣。

毛: 好吧,你们先掐。

白: 毛老,函数式和标签式表达,只有一墙之隔。标签其实就是最高抽象类的里面的“准”全局变量,谁都可以继承来塞点私货。不塞也无妨。

毛: 所以,我认为应该重启五代机的研究。有人说现在神经元网络是六代机了,我认为不对,因为说到底总还是“人工智能机”。

李: AI机只是六代机的一个引擎?

毛: 至少是现在,通过图灵测试是计算机的上限,所以不应该有高于AI机的计算机了。

白: 把RNN、多层FSA、多层词袋这些东东做成硬件就是了。

毛: 神经元系统只是一种计算模型,它也要通过编程在计算机上实现。神经元网络的运转说到底还是程序的执行。

白: FPGA实现就很好,能做成NLP协处理器就更棒了,NPU。

毛: 对是对的,但是如果变化太多,硬件实现就太不经济了。另一方面,如果有很多这样的部件,那么如何灵活高效地加以调度,根据具体情况动态搭出合适的系统,这本身就是个问题,这就又要涉及数据流了。我们平时在碰到困难时说要 “换一个思路”, 实际上就是要换一种数据流。

白: 希望NLP能早日成熟到毛老可以对接上的水平。

毛: 我觉得很可能是反过来的, 搞系统的人何时能搭出适合于NLP的系统,NLP Oriented Systems。 问题是搞系统的人一般都不懂NLP。

白: 是NLP这边说不清楚。回头说格。 “把”在汉语里号称是宾格介词,但是遇到“把我累死了”这种例子,又找不到哪个谓词提供宾格的坑。实际上,“累”是“使累”,是一个使动用法。所以顺序很重要,先使动 ,后宾格,一切OK。先宾格,后使动,北都找不着。

毛: “我累” 怎么解析?

白: 主谓啊。但“我累死你”不是。

毛: 哦。那就是“我使你累死”

白:

虚线框内形成一个虚拟谓词(复合然后缩合而成),对于这个虚线框,“你”貌似它的宾语,所以也获得了使用“把”表示宾格的能力。在句法层面,“使”不见了,“把”却在横行。

毛: 那么这种“使动”的属性就作为标签加在“累”这个词上?

李: “累”和“死” 先合成,然后针对宾格的坑就出来了。“累死”这样的算是合成词,不过这种合成词是 productive 的。

白: 气糊涂,饿疯, 都一样, "忙晕", "乐坏".

毛: 累死 应该是 累到死 累到要死的程度 的意思,这个死是补语吧?

白: 是补语,语义上对应一个程度标签,非必选的,所以不算框的正式坑。加标签是随手做,填坑是大动静。所以正规军和游击队,待遇就是不一样。

李: 累死我了 --》 把我累死了。符合正常的位移转换(movement/transformation)方式。【累(V的某种子类)+死】就是一个造词小规则,是产生式合成词的规则。符合这个规则的合成词就带有如下特征:及物,具体说,是使动的及物,并有表示程度的结果(“死”,不是真死)在内。带“把”提前是及物的共性,不用管。只要这个规则成功的时候,subcat 标签加对了,后去就顺理成章,无需特别操作。

毛: 所以呀,面向NLP的系统应该很方便很灵活地让你动态挖个坑,而且是同时挖上好几个坑,可以并行去试试不同的坑。这样才好。

白: “这些馒头把我吃胖了”。这个复杂些,有主有宾,只是虚线框里面拧着,了的时态含义省略了。胖,有一个坑。使和吃,各有两个坑。复合后缩合的虚线框部分,只有两个坑,一主一宾。与“吃”相比,正好颠倒了。所以,这类补语不仅是表程度,而是具体表致使后果的程度。

毛: 期待白老师的科普书早日出来。你的书里会画这些图吗?

白: 会。一个框,本质上就是一个函数定义式,也就是lambda表达式。入矢代表输入(自变量),出矢代表输出(因变量)。复合的时候,正是玩lambda表达式的时候,而且都是带类型的。

毛: 对呀,我在想这些图应该能转化成DAG式的数据流。

白: 每个坑都有类型,譬如,吃,输入类型两个坑分别是有生命、食物,输出类型是事件。

李:对,坑有两个信息:一个是坑本身的类型(what role),一个是坑里面的东西的“格”条件。role 是坑的主人决定的(词典里面的 谓词 subcat 或者规则产出的 谓词 subcat),“格”其实也是  subcat 题中应有之意,规定好的。格是输入匹配条件,roles 是输出事件语义。

毛: 数据流,结合立委的多层 FSA 模型,如果能做成通用的系统,我觉得是个很好的进展。有没有统计过像这样的图大概有多少?(以复盖常用句型为度)

李: 常用句型几十个吧,10-100 的区间。

毛: 哦

李: 看定义的粗细,谓词 subcat 最多只有三元 (所谓 S【V】OC),元里面还可以细分,大体 < 100 可以搞定

毛: 这个就可以用上分层嵌套的方法。

李: 这段对话,毛老、白老师,要我整理出来么?你们定,如果要,我就整理成博文。这次是你们俩主唱,我只是敲边鼓的,纯粹语言学的边鼓。

毛: 那当然好啰,要从尼克提到lambda开始。

白: 没问题啊。

李: 我其实不懂数据流,函数式略懂皮毛。lambda 在学语义学的时候学过一点,但是一直没完全整明白过。

毛: 那是工具性的,NLP本身才是关键。

李: 不过 subcat 在产生式合成词中会有变换,是我在 Morphology 课上学过的,而且学过的案例相当多。复杂案例的变换也不少。白老师的后一个例子是复杂案例之一。语言学家很善于总结这些格框变换的模式。

毛: 尼克最喜欢搞锵锵三人行, 咱就来一下三人行。

李:毛老、白老师,想起一件可能与数据流相关的事来,先写在这里,省得忘了。信息抽取(IE)这个领域刚开创的时候(20年前,由 DARPA 主持推动的 MUC 启动了这个领域,是NLP的实用化努力,非常了不起的一个推动,把NLP从象牙塔拉了出来),主流统计派还没回过味来,因此IE领域中的规则系统并不少,因为规则简单直接好用。其中,规则系统中,比较有影响的是斯坦福研究中心(SRI)推出的所谓 Cascaded FSTs,现在想来就是毛老说的数据流了。虽然后来我领导的小组也一直做多层FSAs,有时也贴上 Cascade 的标签,二者区别是显著的,虽然本质相同。斯坦福做的 Cascaded FSTs(finite state transducers)是把每一层编译的 network 直接用“数据流”串起来的一体化流程,cascade 是编译(或运行?)内部的机制。而我们做的所谓 cascade 就是从外部叠加调用,这是传统软件项目中管式系统(pipeline)的模块化开发,然后在运行的时候,从外部来接口,是大路货的路线。

洪: 看看有没有modern Hadoop实现

李:  总之,昨天我还发懵,搞不清为什么谈多层NLP的时候,毛老非要强调数据流,今天醒过来,原来如此。不过,我个人的感觉是,那种内部数据流的 Cascaded FSTs 后来逐渐淡出视野,一定有它内在的局限或问题。而我走的外部pipeline系统的方法,却得心应手,开花结果了。尽管理论上,数据流的路线应该更容易高效,更容易固化,但是肯定是遇到了什么坎儿过不去。

白:关于数据流,一直感觉NLP涉及的比较细粒度,就算自动机的堆叠或者分层的词袋,仍然粒度过细,一个句子里就可能多次流动,更不要说RNN这种自己转着圈玩的了……把这么细粒度的流动用大数据处理的利器来玩,是不是有点高射炮打蚊子?请毛老指教。但是,自动机堆叠一个实现上重要的架构就是pipelining。底层边吃进输入,边产生阶段性的输出,又变成上一层的输入。这个pipelining的框架如何在系统层面优化实现,很有油水。还有,当数千个自动机协同工作时,它们当中一定有共享的数据结构和计算,如何进行优化,乃至硬件层面的优化,这里面大有文章可做。

毛: 白老师说的对,数据流运用于NLP有许多细节的问题,特别是粒度的问题,还要好好推敲,现在还只是个朦胧的方向。粒度的问题一方面取决于具体的业务逻辑,一方面也跟硬件有密切关系,例如有没有GPU这一点,就对数据流的粒度和形状都会有很大影响。

李: 毛老,这是 SRI 的 work,叫 FASTUS。我在找他们描述 implementation of casaced FSTs 的部分,好像言之不详。以前不求甚解,反正自己已经找到了一条顺风顺水的路子,管人家怎么实现的,用的啥数据流。

毛: 好,谢谢立委。Cascade肯定就是pipelining,这就是一维数据流。

李:这个数据流的概念上没有问题。我是想知道,他们是不是把一个模块的 network 与pipeline 线上的其他 networks 整合成一个 integrated 的 network?我想知道,是不是整个编译全系统,还是像我们一样,每个模块是单单编译,单单调用的?

白: 如果有同步的语义操作,我相信会的。

李: 我的印象是,他们是编译全系统的,所以我们一直承认自己是 external 的 cascade,我们只是外部连接。重点的重点是,里面有一个共同的数据结构,无论 Pipieline 怎么流,不外是对这个数据结构的更新而已。

毛: 所以立委和白老师得要多掐,我就在旁听着,边听边想数据流的事。

李: 唉,还是没看到实现细节,保不定他们所谓的 cascade 与我们的做法一致,不过是利用共同的数据结构作为粘合剂,一个模块一个模块的调用。早年的文献中,最原始最愚蠢的数据结构是 string 进 string 出,然后他们描述怎么在这个一维的string上加各种括号和标签。下一个模块必须在模式匹配的时候要跳过这些人为的括号与标签,才能更新信息,那个愚蠢透顶,不可思议。我还真照文献说的实现过一个prototype,一边做一边骂这帮傻老帽。那个玩意儿根本做不下去,超过两层的处理就焦头烂额了。后来有人(譬如英国著名的NLP平台 GATE)用 XML 作为模块间连接的标准接口,本质上也还是 string,不过是多了一些现成的工具,可以用来 parse 这样的数据成内部结构。当然,在不同系统对接的时候,开发者和使用者是不同的组织,XML 作为标准接口往往是最少扯皮的一种方案,因为内部的数据结构不具有这种传递性。然而对于一个系统内部的各模块,用 XML 做数据传输近乎胡闹。做个 prototype 也许可行,做应用肯定不好。

毛: 立委讲的外部连接和全编译的问题,我理解就是节点间动态局部连接的问题。全编译就是一次性把整个数据流搭好,以后就不变了。所谓外部连接,就是按需要把若干计算节点局部地临时连在一起,灵活可变。当然是后者更好,不过应该是全局框架中的局部变化。我说的要研究怎样根据NLP的特点灵活构筑合适的数据流,就是这个意思。

李: 全局框架的保证就是一个共同的丰富的可扩展的数据结构。只要保证这个数据结构的设计是合理的,一切就好办了。

毛: 昨天群主一声吆喝,立委说话的风格还真的就变了,马雅可夫斯基的调调不见了。

李: 从善如流嘛。
设计一个NLP专项平台,就包括数据结构的设计,NLP语言的设计,该语言的编译和执行,以及数据流流程的配置和优化。这几个环节都是相互联系的,没有丰富的经验根本玩不转。

毛: 在数据流、即函数式程序设计中,不会由多个节点对同一份数据结构进行修改,这就是输入是否immutable和有没有共享变量的问题。不过对于NLP来说这属于实现细节。

李: 为什么不会由多个节点对同一份数据结构进行修改?每个节点都是单向递进的,数据结构因此变得越来越丰富,分析越来越深入,是为 deep parsing。简单的设计允许数据结构信息的增量更新,不允许或者制约了对数据结构的破坏性操作。譬如,推翻一个内部结构,进行重构(因为 patching 的需要)。但是聪明的工程师在实现的时候,不认为破坏一个局部的内部结构有太严重的问题,不过就是实现费劲一点罢了,屁股总是可以擦干净的。所以我说,只有想不到的,没有做不到的,我才不管他内部怎么实现的,只要用起来顺手就好。只有在实现影响了速度的时候,我可以做让步,允许工程师对我的操作做一些限制。

毛: 如果允许,那就有同步等等的问题,不同节点之间就会互相牵制,而且这样的系统是最容易有bug的。而函数式程序设计,其基本的要求就是:每一个计算节点都是数学意义上的函数,都没有副作用,这就要求:1)没有共享变量,2)所有输入都是immutable。把数据流系统设想成一个供水系统,如果水管在一个点上分支,那么在其中的一个分支上投毒,是不会影响另一个分支的。

李: 照这么说,只允许增量式更新是管式系统开发的安全原则?一开始是增量式的,后来是我坚持要多给我一个做 patching 的手段,打破了这个限制。如果不做 patching,我就只剩下一个手段,那就是先扫除例外,后做一般规则。如果允许 patching,我就多了一条路子,先做大路货,然后遇到问题或例外,再做修补。表面上,这两个办法不过就是数据流中个性与共性操作的位置不同而已,但是实践中总是多一条路子,用起来顺手。其实,做破坏性操作,我开始是有担心的,总怕屁股擦不干净。但是,好像还是在可控范围内。

毛: 对,你所说的对工程师们的能力要求,问题就在于那种结构模式本来就是很不可靠的,得要非常高明的人才能对付,所以一般都尽量把同步、互斥这些事情移到操作系统和语言编译器中解决,因为那些都是真正的高手才玩得。但是即使如此,对于复杂的系统,如果不采用函数式即数据流的结构和方法,难度还是很大。

李: 原因可能是,破坏的结构不过是中间的局部结构,还没到要用它的时候,只要最后系统出来的结构是合理的,就似乎没有问题了。

毛: 你挺幸运,手下有几个高明的工程师,要不然恐怕还做不出那么些成果。

李: 因为我是他们的唯一顾客,顾客是上帝。我一直是这么说的。

毛: 端着人的饭碗,就得听人管。

李: 好在我不懂系统,否则可能不敢这么大手大脚。

毛: 但是,这是有限度的,问题再复杂一点,他们可能就会对付不了。这时候就得考虑模式的改变。不走邪路,也不走回头路,咱走正路。

李: 同意这里面有个度。另一方面,系统太漂亮了不顶用。上得厅堂,下得厨房,这个标准对做系统也一样。正路就是厅堂,厨房就是我这样的实用主义,以邓小平思想为指针。

【相关】

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

中文处理

Parsing

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

《朝华午拾》总目录

【李白之41:Gui冒VP的风险】

白:
“这些国家的统治者必须变革,不然就是在冒被一脚踢开的风险。”
1、“冒……风险”,离合词;
2、“风险”属于“N/S”型的名词,不反填定语从句;
3、“被”由N+升格为N,占“一脚踢开”提供的两个坑中的一个;
4、先行成分“这些国家的统治者”填“一脚踢开”提供的另一个坑。

李:

【冒VP的风险】

汉语离合词 是框式结构之一种,离合词里面的 XP 是啥 离合词本身决定。可以认为是由该词的subcat模板所规定。 这个case里面规定是要 VP。离合词“冒-险”(“冒-之|的 险|风险”)本身也是(动宾式)VP,于是我们赶上了内外两个 VPs:“Gui 冒杀头之险”。Subcat 如是说:

1 Gui 冒险。

2 Gui 杀头: 实际上是被杀头。“杀-头”本身也是离合词 里面应该是要的NP。NP外化就成了句法主语和逻辑宾语,也就是所谓隐式被动:Gui杀头 == Gui被杀头 == 把Gui杀头 == 杀Gui的头 == 对Gui杀头。这才叫语言学,微观语言学, subcat 执导。subcat 是语言个性与共性的接口

3 两个 VPs 之间的关系: 当然也由外面这个离合词“冒-险”来决定。具体说就是,内VP是外VP的同位语,是给外VP填充“冒险”的内容:冒什么险?杀头之险。这个同位语来源于内VP是外VP里宾语的定语这种形式,是随着离合词动态合成为动宾合成词,由宾语的同位语定语,捎带过来的(定语转状语,主子单位是变大了,但mod本性不变)。这个现象是动宾离合词的共性,再如:洗个痛快的澡 == 痛快洗澡.

4 剩下一些句法语义的鸡零狗碎 也仍然是外VP的subcat决定的:包括内VP是非谓语VP,因此不能用句法(或词法)的时体形式,语义上表达的是不定式。至于外VP,它当然是谓语VP, 譬如可以有进行体:“Gui正在冒杀头之险”。

总结一下:subcat 可以有很丰富的内容,很复杂的规定,它连接句法形式(模式s)与其对应的语义。好在 subcat 都是词典词条决定的,所以再复杂琐碎,在词典主义(lexicalist)看来也不难把控。

理论上 subcat 的这种复杂性最好由subcat的复杂特征结构(SUBCATT typed feature structure)来描述。上面举的例子及其相关句法语义的约束及其与逻辑语义的接口,可以非常从容、非常精细地在诸如 HPSG 的复杂特征结构里面透明地表达出来。如果是象牙塔玩符号逻辑,可说是进入了符号逻辑的天国:个性共性 词典grammar, 句法语义 燕舞莺歌,太平世界 同此凉热,在在美景 处处和谐。这就是我以前说的 玩 HPSG 可以入迷的原因。下面给几个HPSG 的复杂特征结构的图示,展现一下其叠床架屋背后的合一(unification)风采:

但我们终究还是抛弃了复杂特征结构,为了线速,为了简略,为了多层,为了模块化和易维护。总之是为了现世的便利,挥别了理想的符号天国。

 

【相关】

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

中文处理

Parsing

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

《朝华午拾》总目录

大数据淹没下的冰美人: 喜欢范冰冰的理由

最近两年“忽悠”大数据,常有网友问我:OK,我看到了,热点话题你是可以从大数据中挖掘出一些东东来,做成奇奇怪怪的词云来,蛮唬人的。可这些信息有什么价值?差不多都是我耳闻过的 rumors 。

Good question,说破大天去,挖掘出来的情报如果没有信息量(e.g.人所共知),或者只是进一步传谣,所谓大数据及其挖掘不过是浮云。大数据专家?饶了我吧。不如回家种红薯,或可产生些许价值。But wait,这个问题细究起来,绝对不是简单否定,就可解决的。至少可以从下面几个方面来看:

1. 对象和目的:回顾一下,我们的对象是海量增长的社会媒体大数据,我们的目的是透过这些 人一辈子也无法尽览的大数据,挖掘民意和舆情。这些舆情都是有统计意义的现实存在,而不是存在于个别人头脑里的天才思想,只要挖掘出来的情报具有代表性,这些情报是不是新颖,不影响我们为挖掘所设立的舆情目标。

2. 信息量问题:乍看,挖掘出来的情报都似有所闻,但其实挖掘还是增加了信息的价值。似有所闻并不奇怪,本来就是流传广泛的公共信息(open sources)。所增加的信息在于,作为个体,每个人的所闻都是零碎的,不可能具有大数据挖掘的全面。更重要的是,即便你是一个 人生即网网即人生 的无可救药的网虫,多数挖掘对你都不是新闻,你对这些信息也不可能具有量化的排序能力。就说你是冰美人死心塌地的粉丝,你也不可能给我们列出大众心目中的冰冰小姐随时间曲线的形象消长,也无法量化大家喜欢她或者不喜欢她的种种理由的分布。你也许可以蒙对几项,你绝不可能给出本文给出的结果。这些排序和分布就是附加的新信息。从另一个角度看这个问题,如果 90% 的挖掘结果不具有新闻价值,而只具有印证的意义(但也间接说明大数据挖掘是靠谱的),那也不坏。作为信息消费者,我们会自然把注意力集中到意想不到的情报上去,wow,原来还有这个啊。这些 surprise info 是你不借助大数据深度挖掘工具永远无法看到的信息,它被淹没在数据的海洋中。

3.  挖掘的情报价值:这个话题太大,不同的消费者,政府、企业或个人,可以看到和用到不同的价值,你觉得没有价值的结果,在有心者眼里可能具有决定的意义。一个企业愿意花百万美元去挖掘社煤大数据中的客户情报,他们必然是看到了一般人感觉不到的挖掘价值。手工民意调查的时代即将过去,因为大数据的挖掘会更加多快好省。如果你是范冰冰团队的策划人,下述挖掘对整个团队的市场化努力以及公关策略的调整,应该具有相当的参考价值。

回到冰美人的大数据挖掘来。前面的博文已经展示了舆情概貌,总之是冰小姐现在是如日中天,压倒性地被大众喜爱,甚至迷恋。那么喜欢她的理由呢?先看褒贬云图:

理由千千万,代表性的理由归纳列表如下:

Why like her Mentions
漂亮美艳 …… 6420
霸气 2493
火, 红 1208
范冰冰的胸 686
公益项目 684
时尚女王 446
武媚娘传奇 326
底妆白皙 298
年轻 232
时尚 229
敬业 133
范爷的皮肤 164
 

成功

130
愈挫愈勇 121
低调 121
大方 118
聪明 110
精湛 92
精致 87
合拍 84
成熟 75

我个人的理由也在其列呢:看来不少人与我一样,因为《武媚娘传奇》而喜欢她。我们择其几点,drill down  看看真实数据怎样表达的:

(1) 前两项压倒性的美丽和霸气,是喜欢的最大理由。

自动化所吴同...

范爷霸气

barbiewong

范冰冰靚到

sunnynoe

范冰冰最好看

奢享时光。

范爷好看

@janiceho96  范冰冰好美好美
lingwu01

还是范爷霸气威武

THE_MIST

范冰冰幾靚

奢享时光。F

范冰冰好漂亮

caotiantian9

还是喜欢范爷, 霸气

莫欺少年穷丶楠

范冰冰, 妖艳

(2) 公益项目:原来这条公益项目的新闻大体是同一个来源,被各大网站反复转载,至少说明冰小姐团队做得很成功。

这名字真的无语

12月11日, 吴亦凡参加《我们小区艺体能》“圣诞慈善篮球赛”,慈善赛的收入将在比赛结束后以冠军队的名义捐赠给福利机构, 用于帮助困难居民。 2014年6月, 吴亦凡加入范冰冰公益项目“爱里的心”捐赠队伍, 成为继李嘉诚后第二个捐助的人。

(3) 范冰冰的胸:女星被人评头论足,不足为怪。但范小姐的胸之所以跃升为好评前五,其实有两个原因。

一是冰美人的自身条件的优越(魔鬼身材)以及形象塑造的重点所致,性感女神,是很多人的由衷赞佩。

二是在传统社会与现代化过程的急剧变革时期,她的美胸展示不仅仅是粉丝喜爱的理由,也成为争议的焦点(事实上,后面还会提到,冰美人的胸不仅是喜爱的理由,也是不喜爱的理由,尺度太大,被某些人认为是伤风败俗)。有争议就会有卫护、有赞美:

节奏大师大手子

范冰冰的胸真的好美

野猪

谈谈法制晚报中青网新华社死磕毕福剑与不道德视频的播放 范冰冰的胸没有危害, 有危害的是你龌蹉的思想意识; 毕福剑的嘴没有危害, 有危害的是僵化教条、极端政治的思维方式。

其实,以范冰冰饰演的武媚娘为代表的唐代仕女式的袒胸露背,曾经被广电局严审,视为洪水猛兽,以致片子被勒令重新剪接,曾经引起社会媒体的轩然大波, 编剧李亚玲的痛心评论传遍全网:

烟入眼而落泪

此事件造成了颇为强烈的网络热议。 著名编剧李亚玲做出评论:“《武媚娘传奇》中的胸确实剪掉了! 真没想到21世纪的人会这么保守, 甚至不如千年前的唐人开放。

自由飞翔的鸟人

在停播的四天中, 片方解决了重大技术问题, 紧锣密鼓的将原有画面全部裁成了大头贴, 斥资千万的服装造型只剩下脸上的粉底...... 著名编剧李亚玲就此事做出评论:“《武媚娘传奇》中的胸确实剪掉了! 真没想到21世纪的人会这么保守, 甚至不如千年前的唐人开放。

Unknown

由于播出方湖南卫视在一官方微博中, 对于此次停播给出的“因技术原因”这一理由过于简单, 使网友在一头雾水的同时, 也对相关部门的管理水平提出质疑。 对此, 著名编剧李亚玲做出评论:“《武媚娘传奇》中的胸确实剪掉了! 真没想到21世纪的人会这么保守, 甚至不如千年前的唐人开放。

MJ浮生若梦

昨晚复播的三集中,“武媚娘”和其他众妃子宫女们的胸部镜头全部被剪, 画面仅呈现远景和肩膀以上的近景, 网友纷纷吐槽:“现在一个屏幕全是脸”、“满屏都是大头照”。 著名编剧李亚玲也表达了自己的看法:“《武媚娘传奇》中的胸确实剪掉了! 真没想到21世纪的人会这么保守, 甚至不如千年前的唐人开放。”

光明社区

我一个女性都看不下去了, 还我们原版。” 对此, 著名编剧李亚玲做出评论:“《武媚娘传奇》中的胸确实剪掉了! 真没想到21世纪的人会这么保守, 甚至不如千年前的唐人开放。

(3) 底妆白皙:地球人都明白,冰小姐代表了化妆艺术的巅峰。她的底妆衬托了她形象的明艳绝色。有老友说,我只爱化妆的冰冰。

Unknown

蕾哈娜 (Rihanna) 的阳光感卷发, 与健康的蜜糖棕色皮肤融为一体, 浓密卷翘的假睫毛塑造出迷人电眼。 鱼草网化妆猜你喜欢的文章: 范爷搪瓷底妆白皙胜雪 女星美妆花尽心思 泫雅红唇领衔4minute 秀冷傲别样风情 赵丽颖周冬雨戏内争宠 戏外淡妆拼清纯

503247463

【范冰冰搪瓷底妆白皙胜雪彩妆花尽心思】近日, 电影《一夜惊喜》在北京召开发布会。 主演范冰冰、蒋劲夫、李治廷、导演金依萌出席, 范冰冰当天搪瓷底妆展现如雪的肌肤, 纤长浓密的假睫毛是范爷明亮双眸的利器, 加上丰盈感十足的大波浪卷发, 俨然真实版芭比娃娃

(4)皮肤:光靠化妆是做不了影后的,赞美冰美人除了酥胸外,就是她凝脂般的雪肤了(她的脸相对比之下,则争议较多,有机会可以挖掘展示一下,总之是粉丝视若桃花,爱得要死,但也有横挑鼻子竖挑眼的嫌她面相不正):

博士一年级

范爷的皮肤真好

zahara蕾儿

这时皮肤吸收最好! 范爷的皮肤为什么这么好! 就是每日坚持一片面膜!

Unknown

难怪范爷的皮肤这么棒呢

幻雨不幻风

范爷的皮肤貌似一直都挺好的

ambrosia52

不过范爷的皮肤真心好啊·羡慕! 我都是懒, 嫌麻烦不敷面膜。

糖口香糖

范爷的皮肤真是没话说, 和林志玲有的一拼

关闭

范爷的皮肤真的好好哟, 哇,坚持15年每天用面膜呀, 向她看齐。

十世轮回阴阳间

范爷的皮肤一直都很好, 人家是纯天然的

Unknown

谢霆锋与范冰冰亲密合影 范爷的皮肤白皙细腻 在《锋味》中, 范冰冰真人出镜, 与谢霆锋暧昧互动。

康婕

我想想啊... 高圆圆, 范爷的皮肤不错, 范范也可以, 春哥, AG 虽然是整的· .... 不过他们的黑眼圈

总之,喜欢女星的理由,看来还是以貌取人为主,人之常情。其他品质(敬业、低调、聪明、成熟云云)也有提及,当无法与美胸美肤相比。那么不喜欢的理由呢?大约多与娱乐界的绯闻和流言蜚语有关,这方面挖掘下去近乎传谣了,不太好写,假语村言,点到为止,留待下篇博文拿捏分寸吧。

 

【相关】

【社煤挖掘:大数据女星排行榜】

【社煤挖掘:大数据男神排行榜】

【大数据淹没下的冰美人】的系列博文链接:

大数据淹没下的冰美人(之一)

大数据淹没下的冰美人(之二) 

大数据淹没下的冰美人(之四): 流言蜚语篇(慎入)

中文处理

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

《朝华午拾》总目录

 

【社煤挖掘:大数据女星排行榜】

Mirror mirror on the wall, who now is the fairest one of all?

自从毛委员开启新中国,半个多世纪以来影视娱乐界历经磨难起伏,如今迎来了百花齐放星光灿烂的黄金时代。被无数粉丝奉为当今中国影视女皇的范冰冰,在众多女星中究竟排名如何?我们让大数据说话,让社会媒体告诉你。

先比较一下据说当今PK范冰冰呼声最高的张馨予。

PK

张馨予天生丽质,比范冰冰更接地气,可惜她饰演的几位角色都是刁毒的坏女人,据说连带她也受牵累。下表是过去27个月社煤大数据挖掘的概览比较:

单看这概览便知,在大家心目中,张馨予还嫩了点,无法挑战范冰冰的影后地位。从人气上看,张小姐还不及范小姐的四分之一;褒贬指标 45% 虽然算是不错的媒体形象了,但也远远不及范冰冰的 62%。粉丝的狂热度也略逊一筹(70 pk 76)。下图是时间曲线。首先是热议度比较,可见出除了 2013 年十月前后,张馨予的热议度陡升外(为什么陡升,等空来细细挖掘看),过去两年多的其余时间均不及冰小姐。

反映媒体形象的褒贬指标(net-sentiment)的曲线表明,范冰冰差不多步步领先张馨予,而且评价度一直比较平稳。张馨予则起伏较大,只在四个时间点短暂超越范冰冰。

下面的情绪指标(passion intensity)也类似,不过两位更加接近(有三个时间点馨予短暂超越冰冰),说明各自都有一批狂热死忠的粉丝,争吵起来不惧激烈。

上述挖掘比较的结果,用我们创造的同时含有人气指标(品牌大小或泡泡的大小来表示),褒贬指标(net sentiment 横轴)和激情指标(passion intensity 纵轴)的多维品牌比较一览图 (Brand Passion Index,BPI) 独特图示如下:

张馨予不在话下,那么其他红星呢?请看:

哈,论人气,范冰冰稳居第一,比第二位的章子怡还要高出一倍。可论受欢迎的程度(褒贬度)这项硬指标,美丽大方接地气的高圆圆才是普罗百姓(也是笔者)心目中真正的无冕之后,高达 74 %,比范小姐高出 12 个点。

网民心目中的真正星后 高圆圆

(可惜的是,我所喜欢的徐静蕾风光不再,逐渐淡出女星圈,步入中年的她已经更多转型为导演了。)

高圆圆 pk 范冰冰是完胜。过去两年多除了几个短暂的时间点,圆圆是一路领先:

范冰冰只能说是话题女王或眼球女王,高圆圆才是网民心目中的真正皇后:

高圆圆为什么具有如此高的口碑成为网民的偶像呢?下面是圆圆的两张云图,可以提供一点insights:

最后把调查的六位当红女星的过去两年多的比较曲线一并提供如下,供大数据爱好者们研究参照:

 

【后记】

《圆冰之战花絮:泥沙龙笔记,核武器封喉篇》

我:
这个需要较真,为大数据正名。自摸、莫衷一是、粉丝之战都是有的,根子都是缺乏大数据的nlp,有了nlp,我们就坐在大数据之上,而不是被数据淹死,看不到真像,无论真像多么残酷。你冰的脑残粉多不多,当然不少,不独你一个,有图为证

大数据淹没下的冰美人(之三): 喜欢的理由

但是,世界上怕就怕大数据nlp和但是二词,与脑残粉一样巨多的是流言蜚语:大数据淹没下的冰美人(之四): 流言蜚语篇(慎入)。而事实上,流言蜚语对你冰的buzz的贡献巨大,你懂的,国人奏好这口。这些都是舆情,但只是舆情的一个片面,大象的耳朵或大腿而已。真正决定舆情的是大数据的褒贬比例(所谓 net sentiment),为此立委洋洋洒洒写了五大篇大数据调查的总结系列,对你冰算是仁至义尽了吧。

请看结论篇: 大数据淹没下的冰美人(之五): 星光灿烂谁为最?

比没文化更可怕的是没核武器。圆冰之战,该结束了吧

 

【大数据淹没下的冰美人】的系列博文链接:

大数据淹没下的冰美人(之一)
大数据淹没下的冰美人(之二)

大数据淹没下的冰美人(之三): 喜欢的理由

大数据淹没下的冰美人(之四): 流言蜚语篇

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

 

【社煤挖掘:大数据男神排行榜】

女弟子有花痴者,为心目中的男神排名争论不休。究竟大众舆论是怎样的呢?为女生谋福利,咱们大数据挖掘一把,也好增加她们的谈资。

以前为女星排名狠狠挖掘过一次(见篇末【相关博文】),结果甚合吾意,高圆圆是众望所归当之无愧的女皇,而范冰冰不过是炒作女神。

到了男星,就麻烦了,根本就记不住谁是谁,在我眼里,他们跟你我一样,都是一坨泥巴。于是专从女生中收集候选人,做了这次社会媒体的形象排名,叫做男神榜,供女生争论和消遣用。

无数女为你痴狂:男神榜首宁泽涛

初步排名结果如下。宁泽涛高居榜首。进一步的细节挖掘待后发布。

看看这张男星图,体育圈的宁泽涛出类拔萃,卓尔不群的样子。

男神对比图(Brand Passion Index)里三个维度,褒贬度(毁誉的比例),狂热度(就是脑残度),炒作度(背后往往有推手)。

炒作由圈的大小表示,决定于媒体中提及和眼球数的多寡。另外两个维度是 XY 坐标,X 是褒贬,Y 是热度。

这够一目了然了吧,这图是有专利的。

下表是中文社会媒体大数据过去两年半对这八位男星自动舆情挖掘排列出来的男神排行榜。

男神第二名:靳东

男神第三名:钟汉良

男神第四名:王凯

男神第五名:胡歌

男神第六名:林丹

男神第八名:霍建华

 

Download

impressions 是眼球数,与炒作度mentions基本一致。最重要的是 net-sentiment 褒贬指数,喜欢与不喜欢的比例,好话多于坏话就是零度以上,坏话多于好话就是零下。男神嘛,都在零上。50% 算是相当地受欢迎了。

竖线不是零度,竖线是被比较的几位的中值。

passion 是狂热度,情绪的烈度,数字越大,脑残越多。


Download

这是炒作度排名。黄晓明为最。估计是那场婚礼闹的,虽然他的受欢迎程度其实很一般,褒贬指数才 38。但以我男生的眼光,他确实有型,五官跟雕塑刀刻似的,而且也有胸肌。可你为啥着急娶了女神 Baby 呢。世纪婚礼究竟是给你涨了粉丝,还是碎了粉丝的心,下次大数据挖掘告诉你。

男神第七名黄晓明

 

【相关博文】

【李白董57:中文字驱动patterns初探】

白:
“再有背景的小孩也还是逃不过被大人喊出来表演节目的命运 ​​。”

李:

【再 Pred1 的 N 也/都(还) Pred2】

说到底就是这么个pattern, 汉语中此类patterns不少。里面的XP(这里是谓语 Pred, 可以是VP,也可以是AP,甚至某些特殊的NP)比较适合有限的自顶而上的识别,然后插入,就比较完美了。

谁 Pred1?
小孩: (哪怕)小孩再有能力

谁 Pred2?
小孩: 小孩(也)逃不过。。。命运。

既然Pattern是固定的,这些语义关系也就确定了。“逃不过” XP “的命运”, 也是一个 pattern,嵌在里面。“逃不过”的 subcat 也允许带 VP,但是,“逃不过被大人喊出来表演节目” 敌不过 “逃不过 VP 的命运”,后者不但更长,根据最大匹配原则,而且后者是“端对端”的强搭配(或框式结构),前者的 subcate没那么强。最后可以考察一下变式,就更加明白里面的语义关系应该怎样玩才让人类满意了:

再 Pred1 的 N 也/都(还) Pred2
== N 再 Pred1(,)也/都(还) Pred2
== 哪怕 N 再 Pred1(,)N 也/都(还) Pred2

背后的逻辑语义不是昭然若揭了吗?一个让步子句的状语,一个主句,逻辑主语是相同的实体。既然这类句式非常容易通过小词呼应来枚举,里面的填充项应该可以以局部parsing来收拾。

wang:
先小词划界卡位,再在小区间内处理,这确实容易不少。

李:
记得语文老师叫我们造句:请以 “再。。。也”造句, 其实就是上面的pattern的一个drill.  既然人是这么受训去学语言的,机器也可以这么学。

白:
“再有”为什么不能结合?“背景的小孩”为什么不能结合?如果结合,让步逻辑还看得见吗?在考虑“再有”的结合可能性的时候,“也”离它多远?“有背景”处在sentiment的一极,强化了“再”的让步色彩才是关键。而“背景的小孩”语义相谐性是有条件的,就是需要谈论图片、场景一类。

李:
如果是“学习”呢?“他再学习也赶不上”。“学习”可算是勉强的 weakly positive的行为了,也许。问题是,如果不管这些语义细节,那个pattern会有啥问题?有多少反例。直觉上那个pattern应该是蛮精准的。

白:
“再有学习的机会我去” “再有学习的机会给他也是白搭”

李:
套用这个特定pattern的话,应该是:“再有学习的机会我也去”: 让步的状语语义貌似还在。说的是这个pattern的反例:再Pred1 的N 也/都(还) Pred2。

白:
不是说pattern不精准,是说它后知后觉。在前面等不到的情况下,会被拐走。

李:
说的就是不要被拐走啊。如果是用小词pattern蹲点, 而不是让小词参与local parsing搅在一起。就避免了被拐的命运。

白:
“再有学习的机会我也去”
小词都在,解读不同,没有让步义

李:
“再有学习机会的我也要去”,这个才是正宗:
== 哪怕我再有机会,我也还是要去(疯玩)

白:
这里“有……机会”风头太强劲
“再有学习机会的我也要去”貌似不通

李:
再:1.(与 也\都 呼应,表示 让步);2. again
为什么不通?这句坚定表达了一定要去的决心,不惜错过学习的机会。这就是pattern的力量。

白:
机会、去,没完结,有“去利用机会”的潜在完形,但这与让步相冲突。
的,后面可以通过容错机制,脑补一个“的时候”“的话”什么的,来达成这个完形。这样的话,pattern就落空了。有完形在勾引,脑补就会启动,不要低估脑补的力量。而“……的我”,一般只出现在歌词里。与学习机会什么的,距离甚远。

(等到)再有学习机会的(时候),我也去。
(如果)再有学习机会的(话),我也去。

李: 即便不允许“的我”,让步的可能貌似也还在:

(即使)再有学习机会的(话),我也去。

时间 条件 让步。既然都是状语,既然语言中状语语义的小词省掉了,说话者裸奔,听话者“裸听”好了。以裸对裸。Unspecified -- 怎么听上去语言学开始带色了?

白:
去哪,不自足。去学习,自足。去利用学习机会,自足。不自足不是标配,需要特定语境。完形程度,是可以度量的。

李:
裸对裸 也不是一定都不穿衣,也可以穿一件零形式的衣,也就是所谓皇帝的新衣,这就是标配的用场。标配怎么得来?大数据? 或者常识?

回到字驱动,中文不仅虚字可以驱动不少句法关系的句型(syntactic pattern),以前说过的开放式成语也是字驱动构词法的代表(morphological pattern for open compounding),譬如:非NP莫属。这个成语是动词,通常充当谓语(带一个主语的坑),其中的NP是内嵌的宾语。这个NP虽然常常是,但不仅仅是,实体名(NE):如,“非李白莫属”。它也可以是一个很长的NP:“此一战役之指挥,非久经沙场南征北战且具有黄埔军校学历者莫属。我提议林彪,主席说。” 英语的对等物大约是:have to be no one but NP。

这类开放式成语或成语的活用,给语言带来了让人惊喜的新鲜感,理应在词典解决,但其中牵涉到句法的XP,因此必须有一个字驱动的词典与句法的灵活接口,这个机制上的要求,与分离词(如 “洗-澡”)是一样的。

董:
你这两天的小文章,我都看了。可以看到其后面的数十年的心血和积累。我真的感同身受。今天你说到了“非...莫属”,很对。我还没来得及处理这一类型的结构分析。离合词已经基本完成了。刚才试了试“莫属”。你看这样的结果好吗?

我用到的主要规则是:

莫属 0000 CN[*pos==`verb`,*def=={be|是:relevant={?}}];L1[*pos==`pron`/`noun`];L2[*expr==`非`]$CN[*pos==`verb`,*def=={?},*TempInfo==`abso`];L1[*log==`relevant`]@bind(L1,L2)@chunk(CN,L1). // 重拾山河非他莫属;非马英九莫属;

DefineVVV 0124 CN[*FH==` `,*ES==` `,*pos==`verb`];RS[*FH==` `,*ES==` `,*pos==`verb`,*expr==`莫属`,*son==`relevant`];Z1[*pos==`pron`/`noun`]$Z1[*DeepLog==`agent`]@DeepLink(CN,Z1). // 他们边假装下棋边用监控相机拍照录像。他们一边假装下棋一边用监控相机拍照录像。

李:
类成语“非x莫属”翻译成白话就是:不是x不行。
== 只能是 x == x, 只有 x (“人民,只有人民才是创造历史的动力”)

董老师处理成逻辑【施事(agent)】 很好。因为这个谓语的句法主语(arg的坑)实际上是逻辑谓语,而这个谓语里面的类宾语实际上是逻辑施事:

重整山河非老邓莫属
谁重整山河?老邓。

【非x莫属/不行/不可/不能为/不足以胜任】,这些idiomatic的用法都是一个意思。强调的是x,所以作为“中缀”的句法上的类宾语,需要被提出来,其他的那些驱动字词不过是点缀的形式,表达的是强调的意味(x and only x)而已。

汉语中这类现象很多,形式痕迹明显可靠,但因为字词驱动,显得琐碎。但词典本来就是琐碎的家园。不利用白不利用。关键是要有个合适的机制,让词典与句法互动起来。

董:
谢谢你又为我列出这么多,我可以照猫画虎写规则。我现在分析的结果,就是你指出的:“他”是“重拾”的深层的agent。

李:
前置词与后置词的框式搭配,也是具有明显的形式痕迹。
语言现象中,我归纳有这么几类:

(1)是“四肢着地”走路,就是 ngram 成语。这个当然进成语词典,无需与句法互动,成语就是一个枚举的黑箱子。里面该预埋什么句法语义的种子(features),就埋下什么,包括休眠唤醒的hidden ambiguity种子,与普通词条基本无异。(当然成语不见得都是词,也可能是短语或小句,只要词典设计允许表达语言学所谓“词”以上的单位特征就可以了。)

(2)第二种是带有变量的成语(习惯表达法)或离合词,我把它叫做两条腿走路,因为这些语言材料都有一个以上的落脚点,包括,“非x莫属”;“在x领导下”;“n日不见,如隔m秋”。

(3)一条腿走路:就是具体谓词的subcat了,那个驱动的谓词就是这条腿。

(4)不要腿走路(磁悬浮?):这就是feature(包括POS)为基础的规则了,概括性强,但不是词典驱动的,没有落地的词。

所谓lexcalist文法,就是尽量排除(4)的一种规则系统。

白:
“这件事非他莫属”,这种情况下“他”填谁的坑?

李:
填坑,从句法角度没有疑问,“这件事”是句法主语,“非他莫属”是谓语。如果主语是行为,采纳董老师的上述处理,把句法主语转为逻辑谓语,把句法谓语中的“他”提出来作为其逻辑语义的施事。如果主语不是行为,那么可以相应做一些逻辑语义表达(semantic representation)的调整,其中之一是,把该名词的“标配”动词作为省略成分提出来,“事儿”的标配就是“处理”或“做”(DO)。然后逻辑施事照旧。

“这件事非他莫属”
==(只有)他(能)DO(这件事儿)

这些个鸡零狗碎的处置,说到底都是自己跟自己玩儿。这里的所谓语义表达和语义落地,在pattern确定之后,我们其实心里都明白其涵义了,只不过需要用一种容易记忆容易处理的方式把“语义”表达出来,让人类看着舒服。其实这都是小事儿,属于parsing的side effects,怎么方便怎么来,无一定之规,系统内部自足即可。关键不在作为 side effects 的 output,而在于什么样的 pattern 、什么样的条件与 input 匹配合适,匹配完了既然并无歧义,总能找到一个语义表达的出路。后面的考量也就是为了“好看”而已(就好比软件工程中很多内部数据结构表达出来要pretty print一样)。

董:
知网里"事"的框架如下:

{fact|事情} {thing|万物:CoEvent={event|事件},{happen|发生:experiencer={~},time={time|时间:modifier={specific|特定}},location={space|空间:modifier={specific|特定}}},modifier={abstract|抽象}}

说的是“事”即CoEvent={event|事件}。这样它是可以充当施事的。

 

【相关】

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

中文处理

Parsing

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

《朝华午拾》总目录

【李白之37:分层与一锅煮的parsing机制探讨】

白:
话说,分层针对的是token间的二元关系,而token本身是不长眼睛的。所以一个token理论上可以喂给多层,此其一。随着各层的动态演化,可能会临时生出之前扫描不到的新的高优先级关系,甚至这种关系会把之前已经填好坑的萝卜再连根拔起。此其二。这样,虽然还可保持“线速”,但极端场景可能就是2N,而不是N。kick off的机制是一定要的。数理不一定等距,反而可以更细微地反映不等距。

李:
白老师今天的话起了个头,可以展开看看。其一其二说了分层面对的问题。但不足以否定分层。另外,2N有啥关系?可忽略不计吧。

分层多层是法宝。法宝到我其实不应该去宣扬,更不要去argue,自个儿得了好处一边偷着乐不好吗。粗话说,属于嘴欠。唯一的 catch 是,并不是承认或向往多层好处的人,都可以几刀就切干净。这时候语言学经验开始发力。

kick off机制点解?

白:
所谓kick off,可参见一排单摆,最后一个进来,第一个出去,其他纹丝不动。
“他死去多年的战友”“他死去多年的消息”前者启动kick off,后者不启动。“他不务正业、整天游手好闲的发小”;“他生前被人深深误解、死后被人广为称道的施政方针”。根本就不用勉强一定要看多远,远到不能错。先将错就错,占住坑再说,对的来了把我踢走就是了。可万一没错呢?再厉害的播音员也有buffer overflow的时候。“他不务正业、整天游手好闲的毛病”;“他生前被人深深误解、死后被人广为称道的传奇故事”。有kick off兜底,再长也不怕了。短的如“王冕死了父亲”也照用不误。当然,稍微加点条件就少一次折腾。lookahead什么的。

李:
嗯。
听上去就是休眠唤醒之一种。

白:
不是词法级,而是句法级。不预设无限大窗口,当前有限窗口里优先级最高的先处理掉。等到动态过程中优先级更高的来到,已处理的结果可以废掉。废掉是一对一的,不是全局性的redo。被set free的成分重新等待新的结合机会。具体到一个一个pair ,语言学知识的重要性毋庸置疑。但是local犯错误必须global来纠正的情况永远是存在的。这个时候,仍然寄希望于语言学知识来纠正,一定会按下葫芦起来瓢,而某种语言学无关的算法上的安排才是真正的出路。

李:
感觉主要还是语言学,不过是远距离的结构起作用罢了。句法级的休眠唤醒说到底就是修正local的关系(注意,local指的是短距离,不等于浅层关系,它可以在浅层,也可以在深层,可以是结构图的任意局部),对应的自然是局部修正 哪里化脓哪里上紫药水。所谓“推倒重来”就是除旧布新,最多是个 subtree,不会是全局革命。 全局推倒重来不 make sense,多层分层的路线决定了每一层绝大多数的关系是对的 要远距离唤醒和改正的必定是少数。如果不是大多数是对的 这只能说明层次的刀切错了 是语言学模块化的失败。模块化照顾的是步步为营多数受益的依存关系。在多层看来是一致的。

白:
语言学对与错都是数据的问题,不需要涉及算法。远距离唤醒需要的是算法而不是数据。算法不接受多数暴政。如果不想错得太难看,即使是小概率也要兜底。

李:
所谓远距离不过是顶层或接近顶层而已。到了接近顶层,再远距离 都变成 local tree.  天涯若比邻。

白:
分层和单向是两个概念,单向是不许后悔。分层不排斥后悔。

李:
对呀。
很多问题源自单层算法。多层以后 问题就没了。每一层的算法不必变,最多是增加一些 config而已 允许以可控的不同方式去处置。那是文法的running,不是文法的编译问题。

白:
如果在被语言学知识选中的pair之间加一些虚拟运算符,这个问题就像乘法比加法优先一样自然。

李:
哈。
怎么玩都可以。

白:
分层和算符优先是多么等价啊……

李:
分层更厉害。厉害就鲁莽。好在可以悔棋。因此多层与休眠唤醒是天然合作的。维持了线性,也维持了模块化和可维护。

白:
固定长度滑动窗口的算符优先,也需要悔棋配合。这是同样道理。而悔棋是一个算法问题,独立于具体的语言学知识。语言学知识都体现在算符里了。优先窗口计算算术表达式,也是会错的。窗口之外,是加号还是乘号,结果完全不同。有限窗口,加法乘法乘幂,这是领域知识。确定了谁比谁优先,这就是一个算法问题。限定了窗口有限,改错同样是一个算法问题。不是领域知识问题。不同点是,算术表达式中的算符是输入的一部分,而作为分析器输入的token序列中,没有算符。算符是local进行前后条件匹配后动态虚拟插入的。所以,对输入的扫描遍数不一样,极端情况下就是“两遍”。昨天说的2N就是这么来的。把语言学知识隐藏在算符后面,算法就可以一锅煮了。

李:
嘿嘿
算法机制化。不是要在算法上动手术 ,而是在算法的操作层面研究灵活性。

白:
所以,分层和算符优先真的是互通表里的。一锅煮不是错,一锅煮背后没有优先机制才是错。

李:
一锅煮要是等于单层 就难以恭维。

白:
优先机制中体现领域知识也是应有之义。有优先级的一锅煮等于变相分层。

李:
还是放不开,不够伸展。

白:
规则都没有了怎么会放不开

李:
而且优先级弄多了也麻烦,跟密电码似的,加强了规则之间的纠缠。

白:
跟层一样多就够了,又不是人去读

李:
规则与规则适度分开 是很讲分寸的

白:
不在一个优先级的pair不会纠缠。我们只看见pair,看不见规则。

李:
不是人去读?总得人调试呀。没有可读性 无法调试和维护。除非是神经。

白:
人调试,只需要调试一个优先级总表。语言学家完全看得懂,完全是数据。不是程序也不是算法,把算符搬来搬去而已。算符可以理解为特定类别的pair标签,比如<N+, N>这种pair,可能有几种,分别是什么标签,什么优先级,如此而已。单音节形容词修饰的定中结构、区别词修饰的定中结构、多音节形容词修饰的定中结构、的字结构修饰的定中结构、数量短语修饰的定中结构、核心角色介词(把、被、拿、将)构成的介词短语等等。它们的优先级不尽相同。有了这些做后盾,根本就不怕一锅煮。该先做的不会后做,因为窗口所限先做做错了的,随着窗口的滑动还会被踢掉,而且踢是点对点的,不会伤及无辜。语言学家完全不用关注kick off的实现,如果发生了kick off,语言学家是完全看得懂的。

总结一下观点:1、语言学知识用在局部;2、语言学知识转化为pair优先级、可作为虚拟算符纳入算符优先机制一锅煮;3、在窗口受限场景,可以引入kick off机制,支持句法级的休眠唤醒;4、因为输入token序列并不包含虚拟算符,虚拟算符的插入在极端情况下需要多浪费一遍扫描。

李:
虚拟算符是什么东东?

白:
可以理解为给一个二元关系在语言学上定性的标签。二元关系的两端token即使一样,语言学标签仍然可能不同,需要根据优先级区分和前后条件判据的需要加以细分。

李:
句法关系细类。

白:
我的大类只有填坑、合并、修饰、升格、降格,细分是必须的。但句法层面仅限于“控制优先顺序所必须”,绝不扩大化。五大类中,二元关系只有前三类,后两类只涉及自己,
一元。

所谓“绝不扩大化”,比如逻辑主谓,是不需要分的。但是萝卜来自坑的左方还是右方,这个区分可以有。因为,右方萝卜填谓词的坑,优先级高于左方。

白:
一个算术表达式,有加减,有乘除,有乘幂,还有括号。我们怎么确定对表达式的解析是一锅煮的还是分层的?在设定优先级的时候,事实上已经分层了,叫不叫分层纯属个人爱好。

李:
这个比喻贴切。

 

【相关】

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

【立委科普:结构歧义的休眠唤醒演义】

中文处理

Parsing

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

《朝华午拾》总目录

【语义计算:"被二奶搞成少数几个男的开会被嫌弃的车型"】

刘:
【在中国被二奶搞成少数几个男的开会被嫌弃的车型之一】哪个句法分析器能把这个长定语分析清楚我就服我自己都看了好半天才明白过来

董:
别说分析,这句子看着就已经服了。

梁:
我看了好半天也没明白。

白:
关键是“开会”分词错误会干扰。

董:
“知识图谱实际有国界说”的例子耶!我想在别处,没有那么多二奶的过度,就完全不理解了。所以是有国界的。就算没有了句法上的别扭,没有二奶的国度的人一定也会莫名其妙的。

白:
这句子的坑,一是分词错误的干扰,二是“开”与“车”的远距离强关联被紧密结合成词的“车型”所冲淡。

刘:
【在中国被二奶搞成少数几个男的开会被嫌弃的车型之一】几个陷阱:1.“开会”应该切开成两个词;2.“开“的受事是车,离得太远;3.”几个男的“,几个是指车型,跟男的没有关系;4."被嫌弃的车型”,被嫌弃的是男的,不是车型。
太复杂了。

白:
看见了“车型”,有多少分析器还能同时看见“车”?
还有一个干扰,就是男的被谁嫌弃。“二奶”是先行词,而且是“男的”的相对词,所以产生“男的被二奶嫌弃”的短暂错觉。其实句中的意思是,买了送二奶开简直成了标配,男的自己开反而成了异类,受到其他人的嫌弃,
各种干扰,谁攒出来的,牛啊

“在中国被丈母娘搞成少数几个男的不送房就结不成婚的大城市之一。”

刘:
微博上真实的语言例子

严:
@刘 【在中国被二奶搞成少数几个男的开会被嫌弃的车型之一】,除了你说的四个陷阱,此句在“车型”之前还达到了七块临界。1搞成2少数3几个4男的开5会6被7嫌弃8的

刘:
七块临界我理解是指理解句子的时候记忆负担的一个阈值,应该只是心理学上的经验值吧,不知道有没有理论依据?这个句子如果画依存树我怀疑可能是非投射的

严:
陆丙甫教我的,发现遵循得很好。那些难懂的法律条款常有此通病。

梁:
我体会翻译或写作时,应该尽量把长句子 breakdown 成若干短句子,尽量把头重脚轻的句子变成 balance 的,尽量把一层一层嵌套的从句简单化。 语言表达的简洁清晰,应该是一种追求。数学语言,无非是表达方式之美。文化基因,如果想让它们容易传播出去,一定是简单的和自明的。做科学传播的,也许应该注意这个。

白:
@严 “被”,和“嫌弃”,是可以结合的,被,在省略介宾的情况下直接做状语。所以数目可能没超。

Me:
数目超不超 那都是一个极端的例子 离开 “不是人话” 不远了 不值得花太大力气。

白:
一顺手就灭了也未可知

Me:
遇到此类句子 我通常采这个态度:

1 看看极端例子能有什么功能性启发
可以实现新功能或加强已有功能 但不必一定要灭了它

2 现有的parser 做一遍 结果错了 但错得 “有理” 就好。

所谓有理 是按照系统设计 所走路径 是预期之内。譬如“开会”的强搭配距离近,系统就不给远距离的“开-车(型)”以机会。这类“错误”就是预期中的正常表现,如果不这样“错”,反而要警觉了。总体来说,对这两个“人也觉得很绕”的句子,分析器表现要正常。原则上不需要为这些outliers特地去“改进”:不仅是费功问题,更主要的是要严防弄巧成拙。关键是 预期之外隐藏一种危险,无论结果好坏。其实很多乍看出乎预期的好的表现,其实还是预期内的,可预期性是符号系统的本性吧。狗屎运是玩笑话 多数狗屎运 心里明白不是狗屎 也不是运。稍微思索两分钟 其实还是在预期之内的。符号主义的实质是 系统可解析。不能解析的符号主义行为 表明系统处于失控的边缘。

姜:
请教一下李老师何谓“符号主义”?

Me:
nlp 是 ai 之一种,nlp 所谓规则系统,归类到ai的符号主义,当然 ai 里面有一个重要成分是推理,nlp 系统较少需要推理。另一个重大区别是,在貌似已经没落的 ai 逻辑符号派诸流中,多层nlp规则系统是少有的最接地气和靠谱,在不少nlp关键应用领域(譬如 named entity tagging, shallow parsing, deep parsing, information extraction, sentiment analysis and question answering)可以胜过或匹敌深度学习质量的流派,虽然已经不在学界主流的视野之中。

白:
这里面有这么一个方法论:1、站在后知后觉立场上,当这个谜底揭晓,它是一个在系统所依据的句法理论下合理的解析吗?2、如果是,那么它一定会被暴力搜索出来,没搜出来一定是系统做了剪枝,可以评估剪枝策略是否合理。3、如果不是,可以评估系统所依据的句法理论是否合理。4、如果改进句法理论,系统是否要推倒重来。
好的句法框架可以容纳这种改进,坏的句法框架容纳不下这种改进。我可以肯定地说,CFG容纳不下。

句子有“不确定性过剩”和“不确定性稀缺”两种情况。过剩时好使的剪枝策略,用在稀缺的场景,很可能会栽。为了应对稀缺,过剩时又搞不定了。所以好的剪枝策略应该是随着不确定性的程度而动态自适应的。不确定性稀缺时,并不害怕暴力搜索。

Me:
白老师说的极是。不愧为山中高人。

白:
“张三的分数和李四的分数的差是李四的分数的两倍。”
只有一个正解,其余都是伪歧义。这是不确定性过剩,大胆剪枝。但到了“人话”的边缘,如果还是人话,还是暴力搜索管用。

Me:
为难之处在于百利一弊的策略。因为百利 不能轻易动它 但是那一弊就是那啥脚后跟,一旦出现了 或者容忍它 或者补救它 终归不能动大手术。此句的关键在 “开会” 这个词条 是个伪词。一切传统的词典查询都是最大匹配,这就断了补救的路子。

在应对了离合词的系统,这个 “开-会” 倒是从词典层面被当成两个词,因为有 “开什么会”、 “开个鸟会”、 “会开得一塌糊涂” 等变式。这似乎给解决这个问题留下了可能性。但是,即便是内嵌了离合词处理的系统,也难以抵制把 “开会” 提早处理的诱惑(这就是白老师说的“剪枝”,排除了远距离“开车”的可能性)。这种诱惑是实用主义的,是的的确确的百利,但难免一弊。

白:
真凶在休眠

Me:
英雄所见。对,真要补救 机制上可以是休眠唤醒。“开-会” 作为动宾合成词,从词典得来,可保留。但词典内部可以预留被唤醒拆分的种子,这从休眠唤醒机制上可以实现。

董:
一句破小编写的破句子,让我们这么讨论,太抬举他了。

Me:
哈。而且还不像人话。
借题发挥罢。

白:
还是有启发。比如“车型”这样的复合词怎么承载词素“车”的特征,跟“开”远距离搭配,这样的机制应该不是个案。

“空客380是他这么多年来坐过的最豪华的机型。”

“坐”和“机型”。前两天说的“增长率超过了联想”,是相反方向的脑补。

Me: “开会” 的问题 是早已熟知的最大匹配原则的百利一弊 以及 hidden ambiguity 的休眠唤醒机制 的体现(如果真要解决的话)。

白:
“机型”是“飞机”的属性名,“车型”是“车”的属性名,“增长率”是“指标”的属性名,“指标”是“公司”的属性名。“联想”是“公司”的instance。空客380是“机型”的instance。如果“顺杆儿爬”或者“顺杆儿滑”能够找到相谐的搭配词,也是一种广义的相谐。早有人提过使用图而不是线性序列的方式作为分词的输出。如果输入是词图,WSD结合当前已分析结果和后续待分析词语,作出动态优选,比直接分词算法说了算,会进一步。

Mo是修饰关系,Ma是填坑关系,Me是合并关系,Up是升格(修饰语提升为被修饰语),Sh是shift(移进,暂不处理)。

这个分析结果还有一点不满意的地方,就是“车型”填了“嫌弃”的坑。按说“男的”填这个坑最理想。

Me:
“坐过” 与 “380” 相谐呀 无需借助“机型”,无论大数据 还是通过本体。再者 这里还有一个 等价结构:o 是 s vt 过的 n。

白:
坐-机型 vs 搭乘-机型,无关380

Me:
380 是我坐过的。
380 是我坐过的玩意儿
这澡是我洗过的最糟的
这澡是我洗过的最糟的一次体验

“坐过” 与 “玩意儿” 很难说 谐不谐 还是要落实到380。

白:
“我坐过的最豪华的机型非空客380莫属。”

Me:
一个道理。有些词 譬如 玩意儿 机型 体验,可以作为类似指代词,它要从抽象落实到具体 然后才可以验证本体关系的 appropriateness。

白:
从结构看不能绕过,而且具体不是必然具体:“这是他坐过的最豪华的机型”

Me:
这句擦边

白:
不能说“这”的相关性比“机型”还高。

Me:
严格说这句有点犯规 除非认为是 有类似 380 的实体被省略

白:
句法没毛病。这就是,不确定性稀缺,不相谐的猴子称大王 犯不上在稀缺的时候进行严格的相谐性检查。

Me:
所谓语义犯规 本来就可以是合乎句法的,不然就没有乔老爷的绿色思想了。

白:
1、句法OK。2、本体里顺杆儿爬可以爬到相谐的节点。3、相谐的节点是真正想要的。
这比绿色思想还有意义得多,“增长率超过了联想”也是同理。

Me:
逻辑上是:这个机型是他坐过的飞机中的属于最豪华的机型。
逻辑啰嗦的时候 语言就偷懒 走捷径,语言表达偷逻辑的懒 案例比比皆是。惰性是人类的基础本性。

白:
前提是稀缺,如果伪歧义密集,再偷懒,就要自讨苦吃了

“男的”和“车型”争夺“嫌弃”仅剩的一个坑的逻辑:“车型”是基于定语从句所修饰的名词的反填;“男的”是基于“会”作为情态动词对填入自己的谓词宾语“嫌弃”的穿透。通常穿透的是逻辑主语(我之前也是这么理解的),但是这个例子里,逻辑主语已经被“被”的无名介宾所捷足先登,实际是穿透到逻辑宾语,所以穿透踩空了。

看来穿透的只是一道墙,不要绑死在墙里面的特定标签上。如果墙里面两个坑,逻辑主语可以优先;如果墙里面只有一个坑,那就逮谁算谁。

这算语义?已经是言外之力的层次了。以言行事。
语言三境界:以言指事、以言行事、以言成事。

郭:
@白【在中国被二奶搞成少数几个男的开会被嫌弃的车型之一】 "我可以肯定地说,CFG容纳不下",可否展开说说? 很想知道那个G在你心目中的样子。也只有知道了那个G,才能判断是不是CFG。

你以前举过一个例子: “张三、李四、王五的年龄分别是25岁、32岁、27岁,出生地分别是武汉、成都、苏州”。

我理解你心目中的G是那有名的(a^n b^n c^n)for any n, which is well known to be outside of CFG。

同样的话,在@wei 那里,我理解就是三型文法有限状态机,因为他有个“事不过三” “超过三个就不是人话”的trick。就算三步太少,那个“七块临界”限制,也把那个G带回正则文法。总之,只要那个n有个上界,就可穷举。

白:
这里面被定语从句修饰的中心语反填回定语从句中的动词所挖之坑的机制,一个成分多个爹,首先它长的样子就不是树。既然不是树,就谈不上CFG了。反填其实造成了“环”,即:名词-动词-的-名词。七块是栈的深度限制。至于放在栈里的东西怎么用,不同的G差别很大。不是说它一被常数界定,就肯定是三型文法了。这套机制的外面,还有语义中间件,把基于subcat的和基于统计的相谐性检验封装起来。面对伪歧义,这个中间件会做出筛选。这个CFG也没有。

Me:
PCFG (probabilistic CFG)是不是就带有了中间件的意味?@白
那玩意儿一度呼声很高。从我的角度看 是大锅烩的一层parsing 还是多层 parsing才是关键。

白:
@wei 有点。

Me:
一层去做cfg 不仅爆炸 没有线性算法 而且很难做深。螺蛳壳里怎么做得出一个像样的道场来。

白:
分析结果长什么样决定了格局。在这个大框架下,数据改变不了格局。

Me:
parsing 的尴尬在 自然语言现象太复杂 千丝万缕 分而治之吧 不知道这几刀怎么切。一锅烩吧 根本就顾不过来周全。

白:
太松,伪歧义就溜进来;太紧,就不robust

Me:
分而治之是显然的上策 只是没有一点经验和功力 往往不会分。我觉得。伪歧义的问题在多层系统中几乎就不是挑战,原因就是 松紧掌控也被分而治之了。每一个可能的剪枝行为可单独去调,数据驱动 假以时间 偏差就会从一个一个局部解决 ,从而获得全局最优。

白:
话说,形容词向左做补语和向右做定语,在你那里谁优先?
比如“做好男人”:

Me:
除了 定中合成词在词典外,词典的下一层是 “一字”补语,再下一层才是定语,现在是这样切的刀。因此 假如 “好男人” 不进词典,目前的分析是 【做好 男人】,但是如果一字以上 就不了。

白:
到处可见标配-例外的逻辑。
补语与时态助词呢?“哭肿了”是“哭肿-了”还是“哭-肿了”?

Me:
无所谓。爱谁谁。

白:
同级?

Me:
我是说对这种不预先特别设计,赶上哪个算哪个。

白:
分层,了总有个落脚之处吧……

Me:
目前是 “哭肿” 在先,因为 汉语有双音趋势:

白:
又不做语音合成

Me:
两个汉字的组合 看成是词典的延伸 处于非常底层

白:
照此说来,“折腾惨了”就该是“折腾-惨了”?

Me:
没问题呀,但遇到小词的时候(譬如“惨-了”的“了”),也不绝对。然而,“哭-肿” chunk 成(open)合成词了,但“折腾”-“惨”则仅仅是补语联系,而不是合成词。

白:
有点以貌取人啊……

Me:
必须滴。这个世界有完全不以貌取人的吗?何况句法乃是关于形式的系统,以貌取人,理所当然。 只是在句法语义的理解过程中,“貌”占多大比重的问题。 句法当然不仅仅追求心灵美,心灵美理应是语义的追求。当然,句法的最终目标还是语义(理解),所以句法语义接口的时候,外表美与心灵美需要一个平衡才好顺利过渡到自然语言的理解。

白:
“东西放忘了地方”,合法吗?经常有人这么说。但是“放忘”似乎没有因二字组合而产生成词的倾向。东西-放-地方,忘-地方。忘了-地方。

Me:
成词的趋向在 只是这个 bigram 的频度还不够高,用的人多了 就成词了 。

白:
这个不是大问题,皆可。吃光、用光,俨然就是词了。动结式动词

Me:
不太一样:

放x忘y
吃x x 光

动结的逻辑宾语常常出现在主语位置 不需要用显式的被动小词 “被”,这是共性。不同的是 ............

白:
“打疼了手”
别人的手疼,“打疼”是紧组合;自己的手疼,“打疼“是松组合?如果打xx疼和打xy疼能决定这个区别的话.

Me:
“打疼了手”,默认是自己的手

打他打疼了手 不是他的手。
伤透了心 是自己的心
伤透了脑筋 也是自己的脑筋

除非“操中南海的心”。把标配给冲了。

白:
这个问题在于手、心、脑筋都是部件,有坑的

郭:
“这里面被定语从句修饰的中心语反填回定语从句中的动词所挖之坑的机制,一个成分多个爹,首先它长的样子就不是树。既然不是树,就谈不上CFG了。”“反填其实造成了“环”,即:名词-动词-的-名词。”

撇开“句法制导的语义分析”,也撇开具体的句法分析过程,就纯句法描述而言,这无非就是: X -: N V 的 N

具体的“相谐”判断,用基于挖坑填坑的一致,或基于特征的合一,或基于统计的搭配,或基于经验的标配,只有分析的颗粒度和精度的差别而已,无关语言表达力。有了 X -: N V 的 N,怎样画内部的依存结构,是个“句法制导的翻译”问题。我们大可以说“在这样这样的坑/特征/统计/搭配/标配下”“V既是N的儿子又是它的老爸”,但这都不影响这个N作为X的代表一致对外。

我想探讨的是,如果把过程性的具体剖析方法从语言表达分离开,这个“描述性的”“纯”语言长什么样子。我是在找类似上面的 (a^n b^n c^n),如果这里的n是个任意值,它就是上下文相关语言,如果n是一个有界的值,它就是一个正则语言。这是一个纯描述性的语言,无关其分析方法,也无关其语义解释。

白:
先说“分别”这件事,也有粗粒度的处理方法,就是使用“列表”。不管长度,只管收拢。收拢对收拢。还有,如果描述指的是大边界。里面的小细节都归功于语义,那我指定一个全集岂不更痛快?功夫全在细节啊。我这里用的不是句法制导的方法,而是词负载结构的方法。一条显性的句法规则都没有。还有,仅就{x^ny^nz^n}这个形式语言实例而言,它的判定可以有线速算法,跟一般二型语言的判定复杂度是完全不在一个量级的。

 

 

【相关】

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

中文处理

Parsing

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

《朝华午拾》总目录

 

【李白之36:汉语可以裸奔,不可能无法】

白:
“他拿了你不该拿的东西。”谁不该拿?

Me: 妙句。

他拿了他不该拿的东西。
他拿了人不该拿的东西。
他拿了不该拿的东西。

默认主语是 “人”, 其次是 “他”。这个 “人” 指的是 一般的人,正常的人,有底线的人 (decent human)。当默认主语的位置出现了 “你” 字,奇异的事儿发生了:

1 按照常理 “你” 取默认主语而代之, 这就造成了 “你” 与 默认的 decent human 或 “他” 的下意识比照。言下之意可以是:他拿了你不该拿(但他可以拿)的东西。这是一解,或可以想象的场景。

2 根据法律或规章面前人人平等的普世原则 上面的解读虽然合语言学的法 但不合现代社会的法。这就迫使默认主语 继续有效,“你” 于是不能雀占鸠巢, 不得不另寻他途。 于是“你”的定语角色 instead of 主语的可能进入理解:

他拿了你(的)不该拿的东西
== 他拿了他不该拿的属于你的东西。

3 一时想不通1与2的语义落地场景的人 会觉得这是个病句。

白:
其实,“拿”有三坑。谁,拿谁的,什么。
如果“你”进入定语从句,就少了一个萝卜,坑不饱和。所以,“完形优先”的策略会倾向于使坑饱和的分析结果。

Me:
我觉得“拿” 有两坑,通常不认为作为孙子的 “谁的” 可以提上来做儿子。

【谁】 拿 【什么】

【什么】有没有定语的坑 要看是什么名词。一般专名(如人名机构名) 材料(如 石头 钢铁)或产品种类(如智能手机 数字电视等)就无坑。但产品专名(如iPhone)可以有拥有者 算是有坑:“我拿石块”。石块不能算有坑,没有预期。如果强加了定语,那个定语是随机性的,不是语义必需的:“我拿了他家的石块”。

我拿iPhone7
默认是:我拿我的iPhone7。要是拿别人的,那可能就是窃了。

白:
拿人东西手短

Me:
还是有儿孙之别,长幼有序:

[human] take [thing]
[human] 's [thing]

“[human] take [human] 's [thing]” seems a bit too flat,cf: buy

[human] buy [thing]
I bought an iPhone7

of course we can say: I bought Apple's iPhone7,but Apple does not need to associate with "buy" directly

白:
表“取得”义有一大批动词,拿、捡、取、抢、夺、偷、窃、娶、借、买……,都有三个月坑,无需搞两层。间接宾语就是原所有者,逻辑主语就是新所有者。

Me:
定语一直很灰色(介于arg坑与随机mod之间)。如果这么说坑,也可以有四个坑五个坑:

【1 谁】 【2 从哪里】 拿 【3 谁的】 【4 什么】
【1 谁】 【2 从哪里】 拿 【3 谁的】 【4 什么】 【5 到哪里: 目标地】

白:
“所有”义由动词自带,无需借助其他手段。到哪里不是标配,谁的和哪里合并。给予类,给谁是标配。

Me:
从双宾 “给予” 开始,带两个实体的坑就逐渐处于灰色。“给予” 的 【接受者】 是公认的坑。到了另一种间接宾语 【为谁】 买 【什么】:
buy sb sth --》 buy sth for sb
就有点从arg的坑向mod的随机成分移动了。

白:
自洽、能产就好。

Me:
其他的实体角色几乎都可以或者看成是 mods,或者是孙子辈。arg struture,除了这两种间接宾语,宾语以外的坑通常是非谓语动词,也就是动词的右嵌套或者是形容词做补足语。当然这多少受欧洲语言句法框架的影响。如果超越句法,还是看 HowNet 的坑怎么定义的比较靠谱。这样一来,句法的args不过三,就需要突破了。

所谓“坑”,根子源自常识语义的本体,体现却在各个语言的句法。由于句法体系有个语言学共性,即我所谓args不过三的普世原则,结果,有些常识语义的“坑”在句法就被降格成 mods 了。这里面自有上帝造语言的玄机在,我以为。幸亏有上帝在,自然语言乱中有静,冥冥之中自有其不变之法。语言学家就是法师,可以直接与上帝对话,而普罗 native speakers 呢,只是下意识遵循,或试图不遵循:但也还是逃不过如来佛的手掌。你可以偶然违规,你不能永远违法,也不能连续不断地违规。语言可以灰色,但不可以黑色。社会媒体可以乱象丛生,但还是可以捕捉到舆情。中文可以裸奔,但不能无法。不管怎么裸奔,也还是个人形。无法的裸奔,那就成怪物了。汉语无文法论,可以休矣。无法,人如何把握,又如何能理解?

白:
怎么可能无法,最多就是一叶障目

 

【相关】

泥沙龙笔记:汉语就是一种“裸奔” 的语言
【李白之21:萝卜多坑不够咋办】 

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

中文处理

Parsing

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

《朝华午拾》总目录

【李白王56:与上帝同在和对话的学问】

【立委按】“真心说,语言学虽然不是显学,乍看颇落寞穷酸,但的确是最有趣的学问之一,是少有的能与上帝同在和对话的“科学”。要不世界几千年美国几百年不世出的千古学霸乔老爷能以此扬名立万呢。” 当然,乔老爷的天下无敌的引用数与崇高名声,只能说最多一半是语言学的功劳,另一半是他的左派社会主义的独立知识分子情怀及其犀利的现实批判精神。

王:
这本书把我看晕了。
这本书把我砸晕了。

N1 把 N2 V1 V2 了。

V2和哪个N发生语义关系、发生什么样的语义关系好像比较好确定;但是对V1来说,如果不看具体的句子,好像就不能确定,当N1 N2与V1结合后,各自的论元角色是什么。
李:
不确定这个句法树画得对不对……

白:
要用次范畴
但是,如果句法的目的仅仅是确定“谁跟谁有关系”而不在乎“是什么关系”,是主是宾,根本无须过问。“看”和“砸”都有两个坑,“我”填一个,剩下的N填另一个。句法的任务就完成了。所以这两句的分析在我的体系里长得没差别:

王:
谢谢白老师!下一步确定哪个萝卜进哪个坑,是不是就是知识本体的工作了。
就是您说的次范畴设计,是不是就是在词库里设定一些语义相谐的规则,萝卜只能进和它语义相谐的坑。

白老师,您的体系里只有两种pos tag?

白:
利用subcat可以确定“我看书”
但“书砸我”并不典型。
“我砸书”也不是不可以。
N、S、X 三种 X意思是“可N可S”。真正排除“我砸书”需要常识或者统计,subcat并不能做出这样的区分。通常是“硬砸软”而不会“软砸硬”,人体属于“标配软”,书则“标配硬”,也不排除硬的人体(冻僵了那种)和软的书(帛书)。

王:
谢谢白老师指点!

白:
语义相谐不一定要通过规则,也可以通过统计。
subcat只对词条标注,不对短语标注。
注意到我画的图里,“我”一个萝卜填了“看/砸”“晕”两个坑。这是因为补语动词并入谓语动词,相应的坑不占同一个萝卜的额度。

王:
对,李维老师上周推的文章里好像也说了,本体是人编的,知识图谱是统计出来的,都可以用来判断语义相谐。

李:
本体(ontology)也可以从大数据统计学出来 叫习得(acquisition),但跨领域的一般性本体不值得费劲儿去学。一来有现成的高质量的本体在 如董老师的 hownet,语义大师几十年打造的。跨领域跨语言的基本放之四海而皆准,仅次于上帝的工作。二来 学了半天 也难系统化 。但是 本体自动习得还是有一席之地,主要在,习得可以对领域 对数据有自动调适能力。更主要的是 习得可以包含本体常识的相谐的程度和或然性比较,这是人工标注 哪怕是大师的工作 所难以达到的。最终 常常是二者的结合。以专家本体框架为指导 以数据为对象 学出领域本体。

白:
相对标记,并不是每个本体都有的:“你打了他不该打的朋友。” 打,二价,但“朋友”自身仍有坑。

李:
当然 玩本体 这种 元层次语义 需要一些修为 非新手可玩 玩了也不会用 。但是 玩知识图谱这种 倒是相对人人可为 基本就是个力气活,砸的是人力和计算资源,不需要一定有语义全局的高度。

白:
标注种子词条,习得种子关联,推荐更多词条,推荐更多关联。所谓bootstrap。

李:
另外 所谓相谐(semantic coherence, or, attribute-value appropriateness) 是元知识 是本体的属性和功能 与一般的知识图谱无大干系。如果硬要 argue,在碎片化信息抽取整合成知识图谱的过程中,领域概念之间的相谐蕴含在图谱中,也不是没道理。但是关键在,相谐是作为一个软条件帮助语言分析理解,从而帮助抽取挖掘图谱的。图谱是结果,达到结果了 相谐已然过去式了。过河不必拆桥,但桥是为过河而设置,过了河就没桥什么事儿了。

另,“subcat只对词条标注,不对短语标注”,白老师这话不错。不过短语也可以继承词条的 subcat,继承的时候 已经填坑的要“折算”。换句话说 短语的 subcat 坑减少了。减少为0的时候 就功德圆满了 就没有了 subcat,譬如 s,那是最高的短语。

白:
坑的subcat没了,自身作为萝卜的还有

李:
当然 譬如右嵌套:s 可以作为子句 作宾语,是VP的右嵌套。这时候不圆满还不行 不圆满就做不了所要求的宾语子句。语言学理论里面 把这种条件叫做 configurational constraints, 也就是乔老爷的 x bar 的条件。如果这个条件要求的是尚未圆满(not fully saturated, or partially saturated) 的短语,就带着未填满的坑前行,各种好玩的语言逻辑的戏就开场了。

白:
如果词负载结构,这一切都在填坑中自然完成,无需另外的句法来“制导”。

李:
譬如 【书砸我】 还是 【我砸书】 这样的公案就出现了。到了 【书看我】 还是 【我看书】,本体常识或本体统计可以发力,当然 这种强搭配也可以不劳驾本体,而是当成词法或词典与句法的交互和接口,但是不强的搭配太柔软,句法就无计可施了,只能 identify 可能性 不能确认语义的唯一性。本体或反映本体的大数据 不得不上场。如果由于数据稀疏 上场了也不能解决 ,那只能保留歧义 有可能本来的语言表达就是双关。

真心说,语言学虽然不是显学,乍看颇落寞穷酸,但的确是最有趣的学问之一,是少有的能与上帝同在和对话的“科学”。要不世界几千年美国几百年不世出的千古学霸乔老爷能以此扬名立万呢。

 

【相关】

【语义网笔记:本体与知识图谱之辨】

语义三巨人

《泥沙龙笔记:知识习得对本体知识,信息抽取对知识图谱》

【泥沙龙笔记:再谈知识图谱和知识习得】

中文处理

Parsing

【立委科普:信息抽取】

【关于知识图谱】

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

《朝华午拾》总目录

【李白之35:句法分析 bottom up 为基础,可穿插 top down】

Bai:
“老李把手不听使唤的徒弟骂了一顿。”
看点1、“把手”分词错误
看点2、“把+手”介词短语错误
看点3:谁的手?谁的徒弟?
“不听招呼”是非自主性状,和“把”天然矛盾。

Me:
这种东西没做过统计 究竟有多严重。统计性 值得不值得投入资源做 先放一边。可以从这类问题得到什么启示?有一个启示就是 也许我们可以适当地引入自顶而下(top down)的处理策略。很多年来 我们尝尽了自底而上(bottom up)的好处 以至于把它视为理所当然。Note 这里说的自底而上与教科书上的算法有所不同,教科书上的算法,无论自底还是自顶,指的是一层 parsing,我们说的是多层的自底而上处理。自底而上层层parsing 的好处包括鲁棒稳妥 靠谱接地气。层层推进有利分层和模块化 也有利打补丁。这些都是复杂系统难能可贵的重要品质。Having said that, 上面这类含有某种远距离搭配或关系的 cases 却可以设想一个 top down 的策略:

骂(一顿)【human】
--》把【human】骂(一顿)
--》把【rel-s 的 human】骂(一顿)

这个optional的定语从句 rel-s,可以自顶而下扩展为 【Subj Pred】,如此等等。这样一来,“手 不听使唤” 就中招了。

当年我们反潮流 反对 top down,根本理由是 top down 与主题先行一样 主观主义严重,隐藏的假设是说出的话都是合法的,所谓规范的句子。那么 我们从非终结节点 S  出发 根据有限的句式层层下推 就可以囊括所有句子。这种 top down parsing 是教科书上经典路数,但我们面对实际语料的时候,很快就举步维艰。后来把各种 subcat patterns 嵌入到 VP 里面,用词典主义(lexicalist) 细线条( fine-grainedness)来缓和矛盾,但仍然捉襟见肘,直到探索出多层的自底而上的 parsing 路线,才柳暗花明。
但必须承认,自底而上虽然条分缕析细致入微,却带有与生俱来的见树不见林的缺陷,对于远距离的结构把握不好。于是我们用拼拼凑凑或者打补丁,甚至休眠唤醒推倒重来的各种方法对此缺陷予以补救。

也许到了认真考虑如何“巧妙”结合两种路线的时候,bottom up为基础,适当穿插 top down。

 

【相关】

【立委科普:结构歧义的休眠唤醒演义】 

【李白对话录:从“把手”谈起】 

中文处理

Parsing

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

《朝华午拾》总目录

【语义计算:绕开句法做语义不合适】

Jiang:
请教一下各位老师,“咱为什么不用接龙报名来招机器人班?”是否合乎语法规范?如果不合乎语法规范,为什么大家理解起来还没有问题?这个现象说明了什么?说明语法是人为的,不能用来约束鲜活的语言发展事实么?

Bai:
@姜博士 合语法呀,没看出什么问题

Jiang:
@白 嗯!我担心“招”和“班”从语法上来看搭配不妥。有您印证,我就大胆地这么说了。

Bai:
“班”是“招”的逻辑主语。

Me:
嗯!
“逻辑主语”概念挺好,和“主语”有何区别?

Bai:
就是以这个动词组成典型的、正常的、统计上占优的主谓句的话,应该在其中当主语的那个角色。

Me:
严格说来 最底层还不是逻辑主语

Jiang:
喔?

Me:
[human] [为...班级] 招 [human],“班” 是目的。第一个human是逻辑主语,第二个human是逻辑宾语。

Jiang:
您的意思“招”的宾语还是“human”!

Me:
对。"班" 是 "招" 的结果或目的,宾语表示结果在汉语不鲜见。

Jiang:
“招生”可以说,也易于理解。但“招班”虽然可以说,但理解起来要拐个弯,理解成“为班招人”!

Me:
招生成班。挖土 挖坑 挖土成坑,同理。

Jiang:
感觉引入“主谓宾定补状”等语法成分有用,可以用来分析描述语言现象。但如果为之所累,或者非要顾及合乎语法与否,会影响语言学的深入发展。

Me:
没有不合语法呀。
"挖坑" 一直存在, 没有语法规定宾语一定要是逻辑宾语。再如:吃饭 吃食堂 吃亏 ...... 宾语不是逻辑宾语很常见的。

Bai:
也许是“招人成班”,一个“经办人员”为“学校”招“人”成“班”。但是,经办人员不过是学校意志的代言人,学校是班的上位整体。这个办事人不需要强调的时候就融化在学校里 甚至可以说是学校的“工具”。招这个动作,真正的决策主体是“学校”。反而,办事人员如果大言不惭地说“我招了谁谁谁”,颇有贪天之功的嫌疑了。所以,学校是大主语,班是小主语,学生是宾语,办事人员是工具。工具偶尔升格为主语,但真正主语到来时必须让位。学校在出现显性介词(如“为”)时降格为介宾,与介词一起做状语。学校与班的关系,是整体与部分的关系。

Jiangg:
嗯!这么说来,这里边的关系挺不简单的。感觉“主语”这个语法概念和“工具”这个语义项概念粒度不一样。为了说清楚其语义,可以不借助语法概念。语法概念的引入把事情弄复杂了。

Bai:
语法自己还有打不清的架,又跟语义有说不清的纠缠,所以不能驾驭的建议干脆绕道,能驾驭的,从简为妙。

Jiang:
感觉语法体系是人凭感觉硬造的,在实际的语义分析中,不应过分依赖它或在意它。

Bai:
会用的可以借力。不会用的硬要用只会添麻烦。

Gong:
我在淘宝的经验是处理语法或语义不用照搬理论,解决实际问题即可。例如了点,我会认为是一个程度副词。

Bai:
不管语法语义,要回答的就两个问题:1、谁跟谁有关系;2、是什么关系。这两个问题回答清楚了就上了三楼。至于一楼二楼怎么分,最终应用不care。但是一楼二楼分好了,上三楼就可以有“利器”。

Me:
句法存在有几个理由:

1 句法的确有一定的概括性 只是汉语句法的概括性不如欧洲语言而已。

2 概括性的表现之一就是句法角色对逻辑语义的标配(default)映射,譬如 句法主语的标配映射是施事(逻辑主语),其次是逻辑宾语,第三位的映射是工具。标配以外的所有映射 都需要特别的条件。

3 句法关系比较简单:逻辑语义非专家不能 而且不容易达成一致。简单的直接体现就是数目,句法关系不过十个;逻辑语义可以到百。差了将近一个数量级,掌控起来 难度不同。如果做语言教学,“主谓宾定状补” 的说法 虽然仍难免捉襟见肘 但的确容易解说一些, 也大体抓住了关系的概貌。

4 其实更本质的理由还是语言共性的作用:无论汉语还是欧洲语言 语言学中的 subcat patterns 中的 args 不过三,这就为句法主宾补(补足语包括间接宾语,不仅仅是所谓【补语】),做了背书。至于这些主 宾,在深层不一定标配映射到语义的逻辑主语或逻辑宾语,那是另一层面的问题 是句法语义的接口问题 不宜混为一谈。所以白老师说句法做好 可以借力。欧洲语言的句法借力是很显然的 其实汉语中也有很多借力的地方。不过确实需要一点高度 才好玩这个句法语义接口的游戏。做直升飞机上三楼 固然是好 只怕更难。

以上几点是相互联系的 是不同角度的视点和论证。我的主张是 汉语研究不宜跳过句法 但汉语句法需要更大的张力和灵活变通才好。句法的框架设计 在解决“谁与谁发生关系”中 至关重要, 在解决“发生什么关系”上, 起了一个标配和桥梁的作用。

跳过句法可行否? 这个问题可以这样理解: 如果针对特定领域 特别是特定应用, 别说跳过句法, 就是跳过语义, 都是可能的。所谓端对端就是跳过了显性的语言学。但是对于 open domain 的语言分析应用的通用引擎 哪个环节都不宜跳过。跳过了 就难以深入和坚固。
自然语言(尤其汉语)是如此复杂 。语言学的几大部分已经是最起码的分野和分工了 还想要跳过,不对路呀。模块化多层处理是深度自然语言分析和理解的正道。

语言学的几大块是语言学多年研究传承的结晶 不宜轻言跳跃或抛弃,包括
Lexicon / Morphology  / Syntax  / Semantics / Discourse / Pragmatics,这几大块处于语言研究的不同层面。不能因为它们的接口复杂(尤其是汉语的词典与句法接口,句法和语义的接口),就否定或忽略了它们的层面不同。不少人希望破除繁琐哲学 要一锅烩,深度神经的端对端算是一个成功案例,但局限似乎在对带标大数据的要求上 还有就是连带的领域移植性问题。对于通用的语言分析理解 迄今没见成功案例 也不大可能。董老师说法 上帝不可欺。

Dong:
当年在农村插队落户,老农的一句话,我记了一辈子:种庄稼,你糊弄它一时,它糊弄你一年。科学研究,你糊弄它一时,它可就糊弄你一辈子。李维说的对,别以为有了语义,就可以绕过句法。语义离了句法,还如何处理语言呢?

Guo:
@wei 跟你抬个杠。

今天,深度神经不一定是端到端,机器学习不一定要带标大数据,语言处理多不是领域专用。

今天已知的“神经翻译”,第一步是word2vec,就是把“word”(不拘泥于词典词)转换成“vector”。这一步大家常用unsupervised方法独立做,没什么“端到端”,“带标大数据”,“领域专用”。

“神经翻译”常见的第二步,是seq2vec,就是把一个源语言"sentence"从一个“sequence of word vectors”转换成单一vector。这一步,也可以单独做,不用端到端带标大数据。

“神经翻译”常见的第三步,是vec2seq。这里需要端到端带标数据,但比想象中的“大”要小很多。

上面这两个vectors,如果要说成是对词和句的“深度理解”,免不了无尽的争执。但在神经计算的圈子里,他们的“通用性”性是显而易见的。同样一个句子的vector,人们不仅用它来生成不同语言的翻译或者产生对话,还有人用它来生成一幅画或者一段音乐。那个word vector,就更是无所不在了。

Me:
好问。

第一步 第二步 是一种 representation 的转换, 还是一个相对独立的知识训练?第一步对应的是什么知识?第二步又是什么知识?如果是对应某种知识, 那么 unsupervised 的训练如何反映这种知识或目标?

貌似第一步是 lexical semantics and ontology, 这个容易达成共识,无监督学习应该是可行的。第二步是 句法的模拟或逼近,理论上讲是难以无监督学会的。

Guo:
第三步vec2seq其实也是可以独立的。这就是为什么翻译出来的句子总是很顺的原因。

Me:
很顺的另一个说法是狗胆包天。哈
上次把肯定翻译成否定, 人是万万不敢的 除非自找炒鱿鱼。很顺的秘诀来源于大数据的特性,用词不当和语法错,连带棱角和独特性的语言表达,都被过滤掉了, 飘在上面的语言表达比人类表达的平均水平要 “高”。

Dong:
@Guo 学了不少东西。我一直纳闷的是,NMT有时会漏译、过度翻译等,那是怎样造成的呢?研发者知道原因,并知道如何去改进它吗?举个例子:

(英文)There was a very serious accident on the Beijing-Tangjin highway on Tuesday morning, resulting in a brutal jam. Victims say the traffic started to slow down around 4 o'clock Monday morning.

(谷歌):北京 - 唐津高速公路上星期二上午发生了严重事故,造成了残酷的果酱。受害人说,交通开始在周一上午4点左右减速。
(百度):在北京唐津高速公路上星期二上午非常严重的事故,造成一个残酷的果酱。受害者说星期一早上四点左右交通开始减速。

他们研发者发现后知道将来应该如何修改、提高呢?

Guo:
@董 翻译中的遗漏或者添油加醋,都是已知的问题,主要就是因为,那个中间的vector表达,没有在任何地方有显式的成分表达。

简单讲,这有点像口译,你先说一句话,别人听懂了,然后他把那句话用她自己的理解转述出来。如果不做笔记,口译的人是很难保证不增加或者减少内容的。但是他一定能说得很顺。

现在已提出些补救的办法。例如在谷歌的神经翻译中,就有一个所谓的,关注模型,希望输入的句子对输出的句子,能有一些比较直接的影响。但很显然,这个效果还是没能让人满意。

Dong:
没有在任何地方有显式的成分表达。"显式"是什么样的?那么为何不让它具有这个“显式”表达呢?是疏忽,环视技术上有障碍?@Guo 这是不是跟口译的情形还有点不同。口译是理解原文意思后的翻译复述,有着难免的变通。而NMT实际上是完全不是自觉的。大概有点像图像识别、语音识别,它在技术上完成了比较后,挑选了最“像”的结果。

Guo:
@董 现在常见的深度神经,无论是机器翻译,图像识别,语音识别,还是其他的应用,基本上都是先将输入转化为一个相对通用的一个中间表达(一般就是4096个数值),然后用这个中间表达,来完成具体的不同的任务。

这个中间表达,对不少深度神经的从业者而言,就是对原文的“深度理解”。当然,机器到底“理解”了什么,我们还说不清楚,但也不是一无所知。

 

【相关】

中文处理

Parsing

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

《朝华午拾》总目录

【语义计算:“他衣服要烫得笔挺才肯穿出门”】

白:
“他蔬菜要用清水泡过的才敢吃。”

这里面,“泡”的逻辑主语是不是“他”?保险策略:不做定论,悬在那里。激进策略:是,如有必要,拓展对“逻辑主语”的解释。“他”主导了“泡”的启动或者“泡过”的选择,即便不是亲手“泡”,也算是逻辑主语了。落地时可以有个开关,决定“算是”的逻辑主语是否映射为真实的施事或当事语义角色。个人认为激进策略也是可行的。

董:
我的语感是“他”是topic。说的是他这个人。而不是一个行为动作的事件。

白:
“他衣服总是穿得笔挺。”
“他衣服总是要穿得笔挺才敢出门。”

里面的“他”也不和“穿”挂钩吗?
这里的“穿”和那里的“泡”有何不同?

李:
转了弯的逻辑主谓

白:
董老师框架下要直接确定语义角色,我和伟哥是分阶段的。

李:
解析的目的何在?
能想到的好处是可以提供更多的案例 帮助挖掘本体知识。对于语句的语义 其实没啥意义。语句要表达的语义 大多不绕大弯。这也是为什么非谓语动词 常常有坑没萝卜,或者即便有萝卜 填坑不填坑无关宏旨。事实上即便填上了,也大多不是事实,不是发生的事儿的语言表达,而只是本体的潜在逻辑关系的语义相谐的一种体现,此所谓“非谓语”。

白:
绑上了放掉很容易。放掉了再绑上有点返工的感觉。在没有竞争候选的情况下,建议绑上。这是依据封闭世界假设。如此填上的萝卜,如果语境中有其他活跃萝卜,可以override。

李:
顺手的话 当然绑上。

白:
把link标记为“可覆盖”,就可以兼得。

李:
如果知道不十分确定,绑的时候做个标记,说这是个 candidate 不是绝对的。

白:
就是这样:soft hypothesis,遇到更hard的candidate,立马让贤。

“他衣服要烫得笔挺才肯穿出门。”

fallible reasoning,“僵尸萝卜”和“鲜活萝卜”结为兄弟

李:
这句子很绝。各种坑。可以列数一下
(1)possessive:他-衣服
(2)aux-V: 要-烫
(3)动宾:烫-衣服
(4)主谓:衣服-笔挺
(5)计划类V带动词宾语(也可以看成是 aux-V):肯-穿
(6)candidate 主谓:他-烫(衣服)
(7)主谓:他-肯穿
(8)主谓:他-出(门)
(9)动宾:出-门
(10)动宾:(肯)穿-衣服
(11)述补:穿-出(门)

还漏掉啥填坑关系?总之,短短一句,各种纠缠。

最后这个【述补】好像随机性强一些,预示性弱,就好比 【得字结构】 的补语:
“烫-得(笔挺)”,它们更像 adjuncts 不像 args。

白:
parser都要做,补语不是填坑,是坑共享萝卜,是动态确定的

李:
不需要词典subcat驱动,而是一般性规则。

白:
不是词典化的。坑共享萝卜的另一个说法就是坑的合并

李:
好,parse parse:

做到一半了没有?论句法,约莫八成;论全体逻辑语义,也就做了一半吧。

今儿较真一次,列数一下,看到底做了几层关系出来:

(1)Mod (possessive): 他-衣服
(2)句法主谓(其实是逻辑动宾:算是做了一半吧):要烫-衣服
(3)aux-V(表现在 vg chunking 里了): 要-烫
(4)大主语,又名 Topic(其实是逻辑主谓,也算做了一半吧):他-要烫
(5)主谓:他-肯
(6)V带动词宾语:肯-穿
(7)Next 耍了个流氓(算是做了一小半,至少直接联系是搭上了):肯-出门
(8)补语:要烫-笔挺

白:
很牛了

李:
自评: 是八成熟的 parser 吧,差强人意。偶尔露峥嵘。
关键是,这句没做任何微调,所见即所得。隐式的逻辑语义,譬如 “衣服-笔挺” 就没顾上了。隐式逻辑语义目前在语义模块只是做了个样子,没细究。

白:
我说的僵尸萝卜和鲜活萝卜,就是分别指“穿”和“出门”。

李:
句法细化为逻辑语义,也没做全。譬如,流氓 Topic 和 Next 还没教化。

白:
坑者有其萝卜,是NLPer的共同理想,就像耕者有其田一样

李:
哈。
为顺口,可以提这个口号:坑者有其苗。 跟植树造林似的。一个坑一棵苗,终成句法森林。双音语素 “萝卜” 不知怎么个来历 居然是黑匣子 无法缩略为单音节。还不如 “蝴蝶”, “蝴蝶” 略为 “蝶” 没啥问题。

【v者有其n】,这种成语句式 要求 v 和 n 都是单音节才好:

耕者有其田。
劳者有其工。
行者有其车。
食者有其鱼。
学者有其书。
棋者有其go (不是 alpha go)
nlp者有其tree

坑者有其萝卜??
赌者有其麻将??

“麻将” 也是双音节黑匣子 不好。牌九呢,也是双音语素,但似乎可缩略为 “牌”:

赌者有其牌

共产大同了 哈。

白:
“一切不拿自己当大数据入口的端设备都是耍流氓。”

董:
AI,也是智者千虑必有一失。

白:
拿……当……,句式没搞定。把“当”翻译成“when”,后面的都失去准星了。

白:

“机器人送快递还有多远?”

怎么知道这里的“远”实际指的是时间而不是空间?

宋:
时间空间常混淆。

梁:
时空一体

李:
词汇总是有歧义,有不歧义的。

“机器人送快递还有多久?”

多久 无歧义; 多远,有歧义,但标配是空间。结构也是如此,有歧义的,有不歧义的。形态丰富的语言,结构起来,就较少歧义。汉语就显得到处都是歧义。所以那些争论语言优劣的口水仗,缺少的是一个双方公认的测量标准。常常鸡同鸭讲。如果从较少歧义,以显性形式为主要手段来避免歧义这个角度看,汉语是劣质的,这个应该没有多少疑问。但是,歧义也好不歧义也好,现存语言都达到了人类交流的工具目的。不过是,歧义多的语言,人类在交流中下意识利用了常识或领域知识的帮助而已,而这种下意识,对人类一般不构成负担。既然知识在语言理解中的引入不够成负担,那么比较优劣当然还可以有其他的标准。譬如语言表达的灵活性、丰富性、微妙性,甚至模糊性。从这些角度考量,可以 argue 说汉语是世界上最牛逼的语言。

词汇的歧义(wsd)属于 hidden ambiguity,通常不影响结构分析。wsd 真要解决的话,绝大多数都可以在句法后的语义模块或语义落地模块去做。

wsd 和 hidden 歧义 通过上下文消歧 可以利用句法结构的帮助 也可以不用。但既然绝大多数这类歧义都可以留到句法后进行 不利用白不利用 两条腿走路总是更踏实。其所以wsd 研究 利用结构不为多数 不是因为大家不愿意两条腿走路 而是因为多数研究者缺乏得心应手的 parser 的支持 我以为。另一个原因是为模型的纯粹。两条腿一起来,在学习模型中,等于增加了另一维度的 heterogeneous 的 evidence,难缠。

从休眠唤醒的角度看 wsd 的多数都休眠了 常常也不用唤醒 如果落地语义无需聚焦到那里的话。到了需要唤醒的情形 譬如某个应用需要解读 多远 可不可能是说时间的话 结构条件加语义或常识就可以出场了。

“机器人 - 送外递” 这个主谓关系的行为 是一个热炒的话题 现实中很多家在尝试 但还没有成熟。这个知识介入了,才好确定 “多远” 是指向时间的。可这个知识如何搜集、表达和恰到好处地代入,目前看来还有不少挑战。

梁:
汉语比英语更高层次,你更简洁。

李:
简洁的另一说法就是裸奔。

本来穿衣主要不是避寒 而是为了体面,为了百分之五不到的避寒需求 每天都要穿得笔挺 的确显得麻烦。譬如 欧洲语言的一致关系在形态上的表现,主谓一致、形容词与头名词的一致(agreement),性数格人称等形态,看着就眼晕。 这些一致的形式有如西装革履,百分之九十五的场景就是摆设,因为没有穿戴它们 语义的相谐也不会让我们产生误解。但的确有不到百分之五的场景 就好比坏天气来了一样 没有穿戴 就会冻坏;没有一致关系 理解就发生困难。 汉语的简洁和裸奔,是以牺牲百分之五的理解畅达性作为代价的。这就是为什么汉语不如欧洲语言严谨,突出表现在写合同和法律文书的场景。欧洲语言之间 严谨性也有不同 大致都可以用穿衣的繁琐程度来度量。国人能省就省 很多小词(功能词)说没就没了,常裸奔到无语。

梁:
Okay, 更裸奔更放任自己,更让 Wei哥难受。

詹:
我常听到这样的说法,说英语的parsing都百分之九十多了,汉语差十个百分点云云。如果方法相同,分析结果总是差着这么多,是不是可以推测,汉语的模糊度就比英语高着十个百分点呢(相当于试题难度高了十个百分点)?

白:
连parse结果长什么样都糊涂呢,说什么多少个百分点?

李:
那天在linkedin上 有人建议:你不是parsing牛吗 打败谷歌 为什么不去用标准集做大规模测试对比?我说 你要说服CEO给我资源 我不妨一做。 往标准集上靠 工作量不小。本来那集就走歪了,非得把走正的 往歪去靠 。

宋:
不止是时空混淆,其他度量空间也有问题:“机票从7折变成8折”,折扣是升了还是降了?“人民币汇率从7.0升到6.0”,居然是升。纽约时间比北京时间早13个小时还是晚13个小时?

李:
宋老师对语言 眼真毒。
回@梁 汉语裸奔对我不是难受 而是福气。太好受了 人皆可做 我如何寻找存在感呢?语言不幸语言学家幸啊。

宋:
@wei 不是我眼毒,真的是说不清楚。涉及到出国的事情,解释两地时间差别,只能具体说:北京现在是25号凌晨1点,纽约是24号中午12点。各位老师,你们如何表达这个关系?也许可以这样说:北京时间减去13个小时是纽约时间。反正不能说早晚。

梁:
真是好问题,北京和纽约时差13个小时。我有时跟朋友说,"北京在纽约前13个小时。"我真不知道怎么说。

李:
自然语言会有些莫名其妙的表达 gap 存在的。譬如 汉语是 第几 和 老几 ,在英语就没有简明的对等物。理论上 不就是序数词的wh疑问式吗?应该是 *how many-th
但就是没有。遇到这类翻译 英文总是转弯抹角:

What is your place in blah blah 这类

梁:
不可翻译,只能解释的情形挺多的。

董:
什么测试集、标准集,什么召回、精确,还没玩够呀?汉语分词现在似乎没人玩了?那个正确率是怎么算的? 语言不是可以这么玩的。看看这个分词:中国力避朝鲜遭到致命打击。

百度翻译:China in stead of North Korea was a fatal blow.
Google翻译:China's efforts to avoid North Korea have been fatal blows.

对于这个句子,这个分词的错误率,就是100%。

汉语什么是“词”,词频统计能像英语一样吗?还要计算分词的正确率,还要测试,比赛,如何能靠谱?老外玩他们的语言,我们不一定要跟着玩。你玩扑克,我推牌九。

李:
如果没有标准集的话 可能一多半玩parsing的专家就抓瞎了。其中看不起或看不懂语言学的 不为少数。带标数据是他们的命根子,至于这个“标”合适不合适,靠谱吗,有多少用,他们不管。雾里看花,只要有个花的模样,就可以绘画比赛了。就是如此。

董:
前些日子,机译群在聊,说今年的ACL,是深度学习的一统天下。我想起了20年前,如今统计似乎已经风光不再了。30年河东,用不了30年就河西了。

张:
坚持原则的勇气是智慧的全部就是崇拜中

 

【相关】

【李白对话录系列】

中文处理

Parsing

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

《朝华午拾》总目录

【骨灰级语言学家开讲段子小品】

走在路上瞎琢磨,突然脑中冒出句俏皮话的段子:

天下无贼 贼有看头
why
好看啊
我是问 无贼 怎么有看头呢

白老师曰 相声的段子就是这么来的。

马:
"贼有看头",估计有人看不懂这句
想起一个段子。 一个人去东北出差,问东北人宾馆是否好找,答曰:东北宾馆贼多。于是吓得不敢去了。

哈 马老师这个更好。

今天有闲,侃侃这个即兴段子的语言学。这样的对话在语言学家眼中有些什么看点呢?

从语义计算的角度,并不是下述每一个点都那么容易形式化、模型化,但是人机对话要想逼近人类对话的高度,这些方方面面迟早要被 addressed。

看点 1. 专名与字面语义的纠缠:《天下无贼》

自从摈弃了上世纪30-40(?)年代流行过的书名号(一种括号)和专名号(下划直线或波浪线:据说后来嫌排版麻烦,就逐渐舍弃了)以后,这个纠缠就很 annoying。这是不同层次的纠缠,但没留下形式痕迹。通常的做法是指望有一部专名大辞典,搜罗进去的遵从 hidden ambiguity 的休眠原则。于是,“天下无贼”被词典识别为默认的电影专名,其内部的语义结构(小句结构)则被休眠。

2. 两个贼的纠缠

自然语言有一个广为人知的属于 discourse 范畴的 heuristic,叫做 one sense per token,说的是,一个token在同一个discourse里面重复出现,那么这个token的所指是相同的。有数据证明,这个 heuristic 的准确率非常高。于是,两个“贼”因为这个 heuristic,就埋下了一条伏线:同指(coreference)的 heuristic 一线与不同指的 heuristic 例外的一线。我们知道,凡 heuristic 一律有例外:再高的精确度,也有不灵光的时候。

其实,这个例外也有人研究过,例外里面还是有规则。规则就是,如果一个token隐藏在一个成语(计算语言学所谓成语包括术语、专名和其他的合成词)内部,那么这个token就不(必)遵循 one sense per token 的原则。

3. 贼的内部歧义

贼的标配定义就是 blah blah 的【human】。不知何时,好像是早先来自我们东北兄弟,开始用“贼”表达程度(副词),感觉贼形象、贼酷。这个用法显得别致、匪气、接地气,进而渐次推广到全国,尤其在网络用语里面。于是,贼的 hidden ambiguity 出现了,(i)默认的名词【human】和(ii) 程度副词。

4. “vt头”的语言学

(有).... 看头、吃头、玩头

这事儿咱从头说起。汉语是孤立语,一般认为没有欧洲语言的形态(词尾等),也没有严格意义的前缀后缀。如果n个词素(morphemes)组合成了一个词典单位,通常的说法就是合成词(compounding),而不是有明显主干枝叶之分的派生词(derivatives)。但语言是发展的,从古汉语甚至合成词都极少(这是“孤立语”的本义,孤立语的典型和极致是没有 morphology的)、一切都是 syntax,逐步发展到现代汉语,汉语的孤立特性在明显降低。有些所谓类语缀(quasi-affix)的语言学材料开始出现。换句话说,汉语有朝着印欧语言的方向演变的蛛丝马迹。

“头”就是一例。

“看头”,不是句法的动宾:看(了个啥)头
也不是通常的合成词的定中套路:(所)看(的)头
而是一个特别的后缀,其派生词的构词法与句法的接口,可以这样来做形式化的描述(by the way 我的博士论文专门有一节论汉语的类语缀现象):

NP 有/没有 Vt-头 ==》有/没有 VP{Vt NP} 的【value】,VP {Vt NP} 结构自然是典型的动宾式动词短语。

细究的话,这里面还有“学问”:

其一,Vt 不仅要求及物动词,而且要求是单语素(说白了就是一个汉字),两个汉字可能吗?也许由于灰色过渡的存在,可以找到个别的例子,但感觉不是很多:

? 这本书有学习头吗
? 这个课题没有研究头。
* 这个曲子有弹奏头。

到了二字以上,那就绝对违法了。(MD 想一个三字的及物动词还真不容易:汉语的双音化太突出了。算了,不想了。)

其二,这个搭配句式中的 有/没有 不是 “拥有” 的“有” 而是“存在”的“有”,相当于英语的 (there) be or (there) exist。因此这个 V  的唯一的 arg 前置到主语的位置和后置到宾语的位置,语义关系不变:

这本书有看头 ==》
(i)有看这本书的价值
(ii)看这本书的价值有。
(后者头重脚轻,稍微有些不顺,但句法上是可以自由语序的, cf:

(的确)存在看这本书的【价值】
看这本书的【价值】(的确)存在。

其他看点还有,譬如 “why” 和 “怎么”(字面意义是 how)的逻辑语义其实是一样的,问的是【原因】而不是【方式】。累了。歇了。只是记住一点:
自然语言里面的名堂,比我们每天说话的人想象的要丰富很多。希望年轻的 NLP 后学不要小看这门语言的学问。至于老人,那就不用指望了。傲慢与偏见,爱咋咋。

 

【相关】

【NLP主流的傲慢与偏见】 

【NLP主流的反思:Church - 钟摆摆得太远(1)】

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

中文处理

Parsing

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

《朝华午拾》总目录

 

 

【李白之34:汉语情态词和计划类动词的异同】

白:
“牛肉我要八分熟的。”
“他蔬菜要用清水泡过的才敢吃。”
“牛肉”和“八分熟”有subcat的相谐关系,但不是离合词。
“蔬菜”与“泡”的关系更加松散。

李:
前者主谓相谐。后者动宾相谐。“牛肉-熟”。“泡-蔬菜”。
顺便一提 先帝诗云 土豆烧熟了 再加牛肉。不知他老人家怎么想的。牛肉烧熟了 再加土豆 这是料理常识吧。反过来 土豆怕连泥都吃不着了。

白硕:
某次吃过韩风的凉拌生牛肉
@wei 做做看吧,不只是相谐那点玄机。

李:
好,先来一个难看的,等慢慢整形,看能不能成美人:

白:
水泡,名词

李:
改了。貌似好点儿:


白:
他和蔬菜没有mod关系啊
另外吃的逻辑主宾都没登场……

两句中的“要”,pos貌似是不同的。
前句向实,为动词(want之义);后句向虚,为连词(与“才”配对,表only if之义)。

李:
前者是 want+NP,后者是 want to + V,可以看成情态动词

白:
看成副词最方便,与“才”搭配,不一样。意思是,只有出现怎样的情况,才会如何如何。

李:
有些勉强。要+V 很常见。only if是 “要是”。

要用清水泡过的才敢吃。
用清水泡过的才敢吃。
要用清水泡才敢吃。
用清水泡才敢吃。
搭配性不强。

白:
“你到底要怎样才对他放手啊。”

李:
怎样 是 V 的疑问代表:

你要怎样?我又能怎样。

白:
雨要在旱天下才好。

李:
雨在旱天下才好
雨要是在旱天下才好
雨能在旱天下才好
雨得在旱天下才好

哈,原来。

白:
葛优的广告词:面要弹

雨是下的直接成分,不是“能、得、要”的直接成分,没有穿透继承关系,这种配置下的情态动词都可以当作副词。这时填坑关系少了一层,无比清爽。

It is preferred that S. S的内部填坑结构跟这个prefer一毛钱关系都没有。没有穿透,没有继承,完全就是松散的一顶帽子。用副词干这样的活儿最为顺理成章。It is possible that……同理。在逻辑上叫“模态算子”。但是,“他准备搭一个棚子”里面的“准备”不是这样。搭的过程中,“他”还要身体力行。这对谓词就是(外层)穿透(内层),对名词就是继承(施事角色)。不穿透的,当副词很好。

李:
情态词 是助动小词 与 副词 基本上是一个意思 尤其在汉语。只不过 副词 修饰 动在外 情态修饰在内 这在短语结构中 表达略有不同。从依存关系看 等价。副词总类太杂 情态单挑出来 有益。“洗个澡” 与 “【能洗】个澡”,搭配关系不变,因为“洗”是短语的 head,是 “澡” 的parent,而 “能” 实际被吃掉了。【能洗】作为 base 短语结构 与 【好书】作为名词短语,对 dg 是类似的 psg 表达的引入。x bar 理论上 前者比后者 少了一个杠。因此我们只好叫 vg (verb group)不叫 vp。后者指的是 动宾这类 saturated subcat patterns。基本短语因此是 三个p 一个g:np ap pp vg。(还有一个 rp 副词短语 有时也可以捎上, very rapidly 之类。)

白:
与副词唯一不同的是可被副词修饰:今天不会下雨吧?

李:


very 修饰的也是 副词 rapidly 呀。“不会” 就是情态词的否定式。情态词的肯定式 否定式,还有一个特别的中缀表达 在动补合成词里。

能睡着 和 不能睡着
睡得着 和 睡不着

这些统统是 vg,后者词典解决。用所谓 lexical rule 去扩展词典,把 head 确定在 “睡” 上面。

白:
我的意思是从句法上看,情态词可分两类,一类像副词没坑,另一类有坑而且有穿透性。在写pos标注的时候就是不同的:
“准备动手,进行动员……”
准备动手,head在“准备”

李:
计划 类一般不归入情态小词,而是动词的 subcat,带 vp:

当然 在汉语 情态小词 与 计划 类动词,有个模糊过渡地带。灰色地带的 靠哪边 系统内协调就好。在欧洲语言 界限是明确的。英语 plan 带不定式 加 to 的。can 后不加 to,possibly 与 can 语义同 但它是副词。到了汉语 这些界限都模糊了。

白:
准确说是带体谓两可:准备早饭,准备吃早饭

李:
一个词 有 n 个 subcat patteens,是 norm:

白:
能做,有可能做,八成做,说不定做

李:
都是封闭小词,标签或mod或adv,都差不多:

白:
“他准备唱歌”,“准备”是head,“唱歌”是宾语,“他”做“准备”和“唱歌”两个谓词的逻辑主语。“他会唱歌”,“唱歌”是谓语head,“会”是“唱歌”的修饰成分。是这样么?

李:
是的:

白:
汉语副词修饰副词的情况有合适例子吗?

李:
副词修副词 主要就是 very 类程度副词

白:
“我奇怪他们为什么要走这条路。”这里的“奇怪”是什么词性?

李:
奇怪 心理谓词,subcat 带从句,至于叫动词还是形容词 无所谓了。
英语等价物 wonder:

白:
我标注为S/N,S
“我就奇怪了,一个大活人还能被这事儿给难住?”

李:

白:
汉语,“很”能修饰副词吗?“很迅速地撤离了”里面,是“很迅速+地”还是“很+迅速地”?
“很迅速”还是形容词,加上“地”才变性。
“很+迅速地”,语感不对。

李:
无所谓。这些大多属于系统内的规定与协调 无关大局。

白:
“云不会永远不散。”这里一个变通做法就是把“不会”整体看成一个副词,避免出现副词修饰副词的问题。对于封闭集合,这是可穷尽的。

还有,多重否定与结巴,怎么区分:“你不不不不是个溜子,是个空子!”

Me:

(为了与其他的 Adv 区别开啦,有意用 X,为的是后去处理双重否定的便利,都是系统内协调啦。)

嘿嘿

白:
看不出来肯定否定

李:
当然是否定,那个 vg 就是【不是】,POLARITY: negative

只有你想不到滴,没有我做不到滴。开玩笑啦。
其实,对于重复和强调,可以单单处理。
very very very very very veryyyyyyyyyy good
这个我们在英语单单处理了,汉语还没。道理同。

 

 

【相关】

【李白对话录系列】

中文处理

Parsing

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

《朝华午拾》总目录

【李白之33:从语言的毛毛虫特性聊到语文纠错的辅助工具】

梁:
记得以前阅读,有人说,人在语言里玩,就像鱼在水里游,鸟在天上飞一样自然。

李:
结巴和哲学家除外。前者器官障碍,后者思想太过微妙,语言不逮。

白:
“原因被李四冷落多年的张三找到了。”
“张三被李四冷落多年的原因找到了。”
前几天抛出的句子,还没有回应。

李:
一个都不对,各有不对的缘由:


后一句不难debug,也值得 debug,前一句也许就拉倒了吧。

白:
“多年”也可以是人名
但即使是人名,也没有体现“被”

梁:
白老师,"原因被李四冷落多年的张三找到了" 是 “原因被张三找到了”,我看了半天才看懂。

李:
白老师出那种句子,我老怀疑有 hidden agenda,就是误导大众,坐收渔利。
那样的毛刺刺的句子应该从测试集刻意排除出去的。否则积累效应,可能留下后患。

白:
模型对头,都是顺手的事情

李:
那类句子最多算毛毛虫的毛刺。不仅灰色,而且罕见。strech 的不仅仅是系统的弹性限度,也是人类表达和理解的限度。

李:
这大概算 debugged 了吧:


顺带把毛刺也抹平了。

白:
“他脚这么大,能穿得下这么小的鞋子吗?”
“盖子这么小,能盖得住这个箱子吗?”

李:

白:
做理解,原则上不需要考虑排斥性;做生成,最保险的方法就是问大数据。实际上,文学家的功底往往在于,既和大数据构成显著差异,又和大数据训练出来的神经网络不冲突。就是“人人心中有,人人笔下无”。就是说,假如“大数据中的裸出现”是初一,“基于大数据的推荐”是十五,文学家就是典型的“躲得过初一,躲不过十五”。
躲过十五,就是前卫作家了。

李:
理解和生成 我的理解是:理解单位之间是有区别性特征的。不需要克斤克锚地给一个语言现象画圈 不需要画得恰如其分。只要在需要区分的现象之间划线(大多可以模型成非常多的种种 classification 的问题)。因此 确定标配很重要,因为标配是娄底的 本身不需要条件 是 free ride 的大路货。也因此 数据驱动是开发的正道,因为在非标配的现象之间划线 没有数据 没法确定一个中庸的全局最优的边界。也因此 没有一成不变的系统 系统总是随着数据逐步逼近。

白:
这就是毛毛虫
句法解决毛毛虫的“包络”,大数据解决毛毛虫的细节。

李:
所以一个适合 debug 的模块化而且不太纠缠(譬如 弯不过三)的系统架构,极端重要。

生成不同。生成可以回避灰色地带 回避鸡零狗碎。如果一个思想有n个表达,其中m是规范清晰的,没必要去管 n-m。 在 m 中排序选优就够烦了 根本不用淌混水。一般来说 生成比解析难度低一个量级。以前的mt系统,生成的代码量比 parsing 的代码量,小太多了。分析完 目标语词汇代入以后,拼拼凑凑也生成了不赖的译文,特别是中文是目标语的时候。由于中文无形态 加上表达上的裸奔性灵活性,生成与分析完全不成比例。如今大数据了,nmt 生成根据数据决定,就显得更顺畅了。鸡零狗碎的那些表达,分析要对付的长尾,到了生成,根本浮不上水面。

白:
鸡零狗碎在理解可以中粗线条应对,在正儿八经的生成中可以粗线条绕行。只有在刻意求变的文学创作尝试中才会触碰到毛毛虫真正的毛刺的微妙所在。

朱德熙先生有一次跟我们讲,他的小孙女偶然说出一句“花灭了”,被他听到,顿感特有诗意。虽然当时说者处在对语言还未熟练掌握的阶段。这就在毛刺的微妙部位了。

消岐、纠(容)错、修辞三者的关系很有文章可做。更何况有一种修辞就叫将错就错。话说,有些组合,比如“烧脑”,不会是早就静静地等在那里供大家飙新词的,中间一定经历了若干铺垫,使得“推荐”已经到位了,但是语言实践还差临门一脚的状态。谁能破译这个推荐的密码,谁就有了创造新词的主动权。机器写作如能成功创造流通度很高的新词,才算真正的“写作”。目前只能算“套路”。在歧义资源没有用尽之前,修辞和纠错浮不上水面。在语用环境许可范围内,修辞资源没有用尽之前,纠错浮不上水面。如果语用环境排斥修辞或者修辞资源用尽时,才能引入纠错。纠错用早了,会让用户觉得系统“自作多情”。

李:
比较明显和容易的是词法纠错 对于形态语言 这个功能有助益
另一个有助益的是 习惯用法和搭配的纠错
这些都是很实用的。

白:
词法纠错是浅层技术就可以解决的。

记得一个有意思的案例。我输入“南摩”(“南京摩托罗拉”的简称),百度偏要把很多“男模”的搜索结果推给我。再不济,来自上海本地的搜索对“南模”(“南洋模范中学”的简称)也应该偏向程度更高吧?

鲁迅用搭配习语的纠错得气死:“屠戮妇婴的___”

李:
如今的纠错已经很友好了 都是交互式 而且一点儿也不 intrusive ,全自动纠错基本没有人买账。半年前装了英语的 Grammarly ,很实惠。虽然用的时候总在想,这玩意儿我要是有时间做,肯定做得更好更贴心。中文的 Grammarly 这样成熟的对等产品,还没见到,将来应该是个巨大的市场。虽然由于中文的毛毛虫更难缠,文法更弹性,纠错难度大很多,但是只要有 resources,这个工作是有把握做好的,只是有很多很多细活要磨。不知道 Grammarly 目前的盈利模式到我大唐可以不可以维持,来 justify investments。当然,帮助人写作,像 Grammarly 那样的 plugin 装了,可以随时随地,无处不在,做得好的话,这是惠及几亿人特别是几千万学生的功德无量的事儿,不仅仅看钱。我会关注这个领域的机会,最不抵,也可以退休以后做。

 

【相关】

【李白对话录系列】

中文处理

Parsing

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

《朝华午拾》总目录

 

【李白之32:从“没 de Vt” 聊开去】

李:
问一下各位老师 “没的吃”、“没的喝” ,算是个什么结构?与 “没吃的”、“没喝的” 有何异同?“没的害臊”、“没的不要脸” 这类大概是口语习惯表达法 不在此列。

没的 vt == have nothing to Vt
VP 动宾结构 否定式宾语前置

“没 vt 的” 或者 “没的 vt 的”,也是 动宾结构的 VP,但否定式落在 v 不落在宾语身上,而且是 的字结构 做后置宾语。

梁:
“没的” 应该是方言吧?wei老师,闽南话。

李:

不仅是闽南 好像各地都有 至少是都能听懂的句式 .

“没的吃” = “没有可吃的” = do not have anything to eat.

没吃的 意思有差别吗?

do not have what to eat ?

没的 vt == 没的 可vt ?

问:“过得怎么样?” 答:“不怎样,这些年没的折腾。”

“没的折腾” 怎么回事?跟 “没的害臊” 类似 也是成语用法 而不是有产生性的用法吗??

白:
没的折腾,不懂啥意思

李:
觉得就是 “净瞎折腾” 的意思。字面是 “没什么可折腾”。

没的害臊 是 真害臊
没的不要脸 是 真不要脸
嗨 别提了 没的生气呢,是 生气生不过来 的意思,太多气生了

咋回事 本来是说 nothing:没的生气 == 净生气了

白:
没的any more
先说这个“没”是副词还是动词。副词不好接名物化的“的”,所以是动词。如果“的”是“得”之讹误,更不具备结合条件

李:
“没” 是状态v,没有动作性,通常不带 【得字补语】

白:
这俩人有的一拼,这俩人有得一拼

李:
“没的 vt” 中 “没” 比 “vt”, 谁主谁副?
“没” 主,那就是 v:have nothing to eat;Vt 为主的话,可以看作否定式 “的字结构”做前置宾语:nothing to eat,eating nothing

白:
没的,更像是存在量词的否定
对比:有人来了
有和来,谁主?

李:
我处理成 “来” 为主。“有” 虚晃一枪:
有人来 = somebody 来

白:
我是把他俩合并,共享坑(不需要那么多萝卜),其他事情落地时再说。

李:
形式上看,自然是“有”为句法的主要谓词。带 【宾+宾补】的 subcat pattern 结构。但实际中,把宾补当做主要谓语,把句首的 “有” 当做小词,处理起来有诸多便利,也更靠近语义实质。

白:
当小词,处理变式需要当心

李:
有前条件的:必须位于句首。严格说是,跳过副词类小词,“有” 居于句首。有这么个约束。

白:
“酱油有买的吗?”
有时又及物,有时又折腾出一个主语状语两可的萝卜

李:
“有” 是个很讨厌的词。台湾国语可以表达完成体,倒是与英语平行了。这个台湾国语的用法如今已经推广到整个华人世界了,算是丰富汉语时体系统的一个小贡献。

白:
闽南话

李:
“我有学琴过,就是一直没上路。”
“你有看《长城》吗?据说巨烂,老谋子的好莱坞滑铁卢。”

还好紧随着动词,这种用法不太难识别。

白:
当助动词好了

李:
查了一下,“我们没得吃,没得喝”,还真是用 “得” 的,比用 “的”的多。想不出来,这 “得” 怎么冒出来的。

白:
没得到吃,没得到喝。
没东西得以吃,没东西得以喝

李:

我们没的(or 得)吃,没的(or 得)喝,已经好几天了。
这地儿没的(or 得)吃,没的(or 得)喝,我们来干啥?

从上例看,没 de Vt 作为谓语,可以要求一个 【human】 的主语,也可以要求一个 【location】 或 【org】 的主语。【human】或【location】常做主语。

【human】 have nothing to eat vs. 【@location】 there is nothing to eat

“没的 Vt” 相对于 “有的 Vt”:

入伙吧,保你从此有的吃、有的喝。

可是除了 “吃喝玩乐”,这个 Vt 也不好延伸而无歧义(歧义表现在“有的”做逻辑宾语还是作为不定代词【human】做逻辑主语,其实这种做逻辑主语歧义在上述吃喝玩乐的用法中也休眠隐藏在内,不过可能性较低而已):

有的喜欢,有的不喜欢:
1. there's some to like and some to dislike;
2. some (people) like it, some (people) dislike it

没的学习???
nothing to learn?

白:
没的项目做,散伙算了。

李:
想得脑仁疼。就为对付这么个简单的破说法。

有一个简单的办法就是,对于这些个模模糊糊的结构,产生性不强,介于习惯用法的成语与非成语之间,见一个扔一个,统统进词典。“没的Vt” 也就不用琢磨这个 Vt 集合到底有多大了,哪些该词典化,哪些该规则化,各自的标配分析和休眠的种子又是怎样。譬如,大数据挖一把,trigram 频率就搞定大部该词典化的现象及其合适处置。而鸡零狗碎里面琢磨规律性,真心难,不值得也没时间花那个力气了。

嗨,奏酱紫了,好歹它了。

白:
“酱油有买的吗?”这里有坑:

第一,“酱油”和“有”没有先结合,而是选择了Sh。第二,“有”和“买”没有立即结合,而是选择了Sh。

李:
买的 = 买的人?
如果换成“卖”:卖的 == 卖的东西,回指 “酱油”。

“酱油有卖的吗?”
“没有卖的,有赠的。”

白:
哈,卖的、送的,买的、偷的、拿的,

李:
酱油有买的吗 == 酱油有买的人吗?== 酱油有人要买吗?
这是最常见的理解。但不排除:
酱油有买的吗? == 酱油有买来的么?(还是全部是赠送的?or 全部是抢来的)。
这里,“买的” 回指 “酱油”。

有意思的是,如果是“买”,指人的概率大(hence 标配理解),回指的概率小。
如果是“卖”,则反过来,回指是标配理解,指人概率小。

白:
在我的处理里,都模糊掉了。

李:
hidden 歧义,句法模糊掉,是对的。

白:
在“卖”的场景下,不完全是回指,存在“整体-部分”关系。也许还有留一部分自用的、送人的。先行词是整体,含省略的搭配词+的是部分:

礼我只收脑白金。

也是同样。

李:
我所谓 “回指” 包括 整体部分的关系。是我用词不确。以前说过类似的: hit sb on the head:hit 的是人 还是 人的头?其实都对:hit 了头 就 hit 了人。头”回指到人。

白:
白马非马

李:
i love iPhone for its screen
I love the screen of iPhone

喜欢的是手机还是屏幕?我们做 sentiment 的认为 都算。喜欢部分就是喜欢整体。

白:
Among the horses you gave me, I love the white one.

讲点逻辑的话,不算。爱屋及乌是有的,只爱屋不及乌也是有的。

说某些议员是狗婊子养的是骂人,说某些议员不是狗婊子养的也是骂人。

李:
逻辑是这样的:

I like the screen of iPhone and hate its battery life

so this person has 2 votes for iPhone:1 positive and 1 negative。只有这样 sentiment 的统计才真正具有舆情的意义。世界上没有完美(脑残粉的视角不算)。喜欢一个 object 永远是喜欢它的(让人喜欢的)部分。有时候这个部分(Aspect)被明确表达出来作为理由。有时候不表达出来。从舆情的角度,就是投票。喜欢一个部分,就是对整体的正面的一票。喜欢整体,没有明确表达喜欢的部分,也算是一票,因为他心里其实是有部分的,理论上不可能是百分百从头到脚到细胞到令人讨厌的部分都喜欢。前者除了计入褒贬情绪(即舆情)的统计票数外,还提供了 actionable insight,具有具体的情报价值,后者只是舆情的发泄而已。

白:
往往,喜欢一部分而不提另一部分,就是委婉表示不喜欢另外部分

李:
那么想,就没法做舆情统计了。你那是言外之意,正话反说;不是没有,总体是少量。

有一次应邀到一家公司给个 sentiment 的 talk,听众有问,讽刺如何识别,我说,讽刺的确是挑战,不仅对我们是挑战,对大家都是挑战。讽刺中的形式痕迹,也有可以识别的,但更多是缺乏形式痕迹的,或者形式表现在语气和表情这些 text 以外的方面。

可以识别的形式有:

1.  thank you for 【BAD behaviour】
2. 【BAD behaviour】,great!

【BAD behaviour】是各种具体的负面表述或吐槽,而句首或句尾的正面情绪 thank you 或 great,形成反差,因此构成了形式上可捕捉的讽刺。通常的逻辑总是拿具体的正面(反面)证据来支持正面(反面)的情绪或评价。如果这个范式被打乱,就可以传达讽刺。

接着我说,但是很多讽刺是没有显式的文本痕迹。对于人的理解有时也构成困难,比较木的人或情商较低或经验不足的人,往往也无法 decode,对于机器自然也就难了。譬如 刚谈恋爱的愣头青 往往听不懂对象的话。但对象说 no 的时候,他不知道其实不一定是 no,很可能是 yes。

达令,给你买个你一直超喜欢的名包吧?
No,这包太贵。

这个傻瓜居然就真地不买了。三个月后,对象跟隔壁阿二跑le。阿二不仅仅有钱,也有心,懂得察言观色 body language,善于 read between lines,尤其擅长 decode 女性的话语。

马:
看得懂这标题吗? "曝国王将考神交易至鹈鹕 联手浓眉组双塔" 也许有背景知识的能秒懂,我是没懂,看了正文才懂

白:
这个例子好
“联手”的逻辑主语怎么确定很有看点。

李:
我完全看不懂。不知道我的 parser “看懂了”没有:

从模拟domain专家理解的角度,几乎肯定错得离谱,因为根本没有domain的知识训练和词汇外挂。我们 domain-independent parser 的是语言学分析的“合理”。在 domain 化(domain porting 90% 涉及的是词汇表术语及其本体的引入,其次才是边缘规则的微调)之前,上面的这个parse,看上去应该说是合理的。

白:
需要知道,“国王、鹈鹕”是org,“考神、浓眉”是individual,联手individual的只能是individual,等等。“a联手b组c”,有兼语的味道。组,是动词,组成的缩写。

李:
“浓眉组和细眉组,分头出击。”
“浓眉组双塔顶不过细眉组单塔,真是不可思议。”

白:
语义场在起作用
球队、球员、转会交易、阵型,暗中互相支持。这些命名实体很可能不用定义什么,就可以自动获得这些标签。大数据太丰富了。还需要知道,在NBA场景下,“浓眉组”是超低频的。

 

【相关】

【李白对话录系列】

中文处理

Parsing

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

《朝华午拾》总目录

【李白之31:绕弯可以,弯不过三】

白:
“一定要在他家里没有醒过味来的时侯把生米做成熟饭。”
李:
词典:加入成语 醒过味来:
白:
填坑严重不全的,要减分啊……
“在他家里”这个,貌似掉进就近结合的陷阱了。
李:
“在他家里”不是主要问题,那个可以补救。“在” 本来就是可有可无的 P。
白:
在 和 时候 的间距,被你这么一弄弄短了。
李:
间距短不是问题,小词配对的目的就是把关系厘清。达到目的了,间距无所谓。“在。。。家里” 与 “在。。。时候” 是两个“在”共享了一个syntax。
白:
“在他家里还没有察觉到这一层利害关系的时候把生米做成熟饭。”
李:
白:
也是辖域问题
李:
“在” 比较特别,是个万能介词。做了补救唤醒,主语还是恢复了。
白:
“他家+里”,做主语的可能性就太小了。要是能搞成“他+家里”,就不一样了。
李:
关键还是怎样处置合算的考量。
“在(PRP)家里” 脱离上下文的时候 就是一个扩展的合成词。处置成更多做状语的PP 还是更多做主语的NP 就是一个强盗的规定。事实上目前的处置 “(PRP)家里” 已经是主语状语兼容了,因为方位词结构在汉语的确是大多做状语 像PP,少部分做 NP,因为方位词本身是从名词变过来的。可是前面出现了一个 “在”,因此就几乎决定了其状语特性 很难翻盘了。这时候再带入辖域的考量,说这个 “在” 被 overloaded 了,不能光看就近原则,它可能不就近。然后就要在两股力量里面去权衡。第一股力量是就近原则的  “在+方谓词结构”,非常常见。第二股力量是 方位词结构去填主语的空,这个其实不常见,因为主语是经常省略的。然后指望一个 “精巧” 的系统能在上面两股力量的权衡中,恰到好处地拿捏分寸,达到人的具体情况具体对待的灵活性。这样的要求不大现实 而且极易弄巧成拙。因为里面绕弯太多了,而且都不是确定性的。系统不能做得太精巧,正如人不能太聪明,有过很多这个教训。绕弯可以,但弯不过三是基本原则。
“弯不过三”是我实践中总结出来的开发原则。这个弯就是规则之间的 dependency。理想的系统,规则之间是完全独立的,相互不牵扯,这叫做“规则与规则分开”:否则规则系统就容易成一团乱麻,宁肯冗余,也不要把规则搅合在一起。但是,实践中,我们其实做不到完全的规则独立,分层处置的本身就已经隐含了某些规则之间的依赖关系(dependency):某些规则是 assume 另一些规则做了某事以后才有意义的。这时候,设计开发系统的时候,就需要一个原则性的掌控,那就是“弯不过三”。意思是说,相互牵扯的规则最多可以有三层,多于三层的,就违反原则了,容易造成系统的不鲁棒,最好不要到三层: a 依赖 b,b 依赖  c,这就已经危险了。c 如果 还指望 d 那就超出了系统逻辑链条可以承受的极限了。可以做出一个绕弯多于三层的系统,在某一个时候也调通它。但是这样的系统 几乎不可维护。弯不过三是针对具体规则而言的原则,并不是说 作为一个规则系统,只能做三层,那就太局限了。事实上 规则系统整体绕弯可以多达百层。至少几十层是常见的,那么在几十层的分层处理中,这个弯不过三的原则一定要坚守。模块之间总体的依赖不在此列,譬如做 PP 要求基本 NP 已经就位,做 VP (包括动宾、双宾、宾补等各种 subcat patterns)要求基本的 XP (NP,AP,PP,VG)等短语都已经形成,做主谓要求VP结构已经解析,等。
白:
为什么我的眼中昨天的把字句辖域和今天的在字句辖域是同一个问题
李:
因为你是从一个角度看,确实是同类问题。我说的不是辖域,辖域只是 弯不过三原则中的一个弯而已。如果这个弯与其他弯的交错中,造成了违背原则的危险,就要舍弃这个弯。
白:
都是介词跨定语从句,而且也可以规定跨不过三,那样的话同一个问题就可以在同一个框架下解决。
李:
你就是要说,有很强的可能应该: 家里还没有察觉到 --》 SVO,来让出那个 “在” 去找远距离的搭配。第一,“还没有察觉到”对主语的要求没有那么强烈。主语省略太常见了,以至于人类创造了显式和隐式的被动句。
“在还没有察觉到这一层利害关系的时候把生米做成熟饭”
上句没有主语,一样很顺:“还没有察觉到这一层利害关系的时候”。第二,“在 。。。里” 作状语,是压倒多数。甚至 “在 。。。家里” 也是压倒多数。这个是我毛姑姑 但八九不离十,可以统计验证的。第三 “在” 恰好遇到辖域的远近距离的歧义的情形,就是你现在关注的这个现象,其实没有那么普遍。这个也是我的毛姑姑,也许可以统计推翻。即便就这个辖域现象本身而论,远距离辖域控制 多于 就近原则的可能性有多大?感觉不超过一半。
白:
定语从句中,本来就有缺项,主语再省略就有点过了。所以,正常主句中主语省略状语强化占优我认,但定语从句中应该是主语填全状语弱化占优。
李:
听起来有理,但照你这些说法做,总觉得走偏的危险大。
白:
顺手而已
李:
感觉是属于过分聪明的思路。你又增加了一个维度: 主句 vs 从句。而且用 “占优”  这样的不确定性的平衡。说来归齐,主语和状语弄错了 有什么大后果么?
白:
填坑角度,这都是应有之义,根本就不用加维度。
李:
其实主语宾语弄错了 都没啥后果。因为主语、状语和宾语都是姐妹节点,都与 parent 有直接亲属的关系。弄错了,对于 IE 抽取,没啥影响(对于 MT 可能有些影响)。这是从语用考量。
白:
不是的,他家+里,没有这个意思。
抽不出来。
李:
从句法考量,就是一种关系弄错了,多大程度上影响其他部分的 parsing。如果影响小,就无所谓。在上面的例子中,是没有影响。第三个考量就是,弄错了,真要翻盘,可以不可以,就当是休眠了,可以唤醒不?当然可以唤醒,都是儿女,不过是标签有误,要翻等句法完成以后也可以翻。我不把句法看成是最终的语义理解,更多是把它看成桥梁和标配的语义理解。作为桥梁,有了架子,怎么改都可以,因为句型清晰了。作为标配,翻盘自然也是可以的。
怎么抽不出来?那么 “难过” 是怎么抽出来的?不能因为 “难过” 不是 “难/过”,于是作为非情感的后者就抽取不了?一样可以抽取,抽取出来说,标配错了,这个不是 sad 的情绪(emotion),这个是客观的困难(negative behaviour), 虽然都是负面的东西,情报上我们是当作不同的情报来抽取的。后者是 actionable insight,前者不过是情绪而已。
白:
翻盘多了,线速就是个笑话。
李:
QUOTE: Countless lessons learned over the years in the NLP system development show that a robust real life system should not be too sophisticated just as man should not be too smart.  As a rule of thumb,  anything involving more than 3 levels of dependency is too delicate.  You can "make" it work today, but it will break some day.
基本上如此。
翻盘是聚焦以后的动作,都到了雷达上了,还有什么可以影响线速?长尾在语用层面成为短尾了。这个以前论过。指望句法做长尾是劳民伤财,吃力不讨好。句法对长尾能有一个相对 “合理” 的安置,就已经很尽心了。譬如 都是 children,但是主宾有错位。其实,宾语很少错,主语有逻辑宾语的可能,不过是多了一种可能而已,对于语用是小菜,谈不上影响线速。譬如 我有一条语用规则要查宾语,instead of 查宾语,我不过就是查一下 “宾语 OR 主语” 而已。这个怎么可能影响速度?搜索空间没有任何实质变化。

【语义计算:汉语语序自由再辩】

“张三把眼睛哭肿了。”
眼睛都被张三哭肿了
张三眼睛被哭肿了
张三眼睛哭肿了
眼睛张三哭肿了
哭肿张三眼睛了
张三哭肿眼睛了
哭得张三眼睛肿了
张三哭得眼睛肿了
张三眼睛哭得肿了
张三的眼睛哭得肿了

眼睛 一句是主语 一句是宾语 句法不能说错。supposdly 到语义模块去统一到逻辑语义上去。

Me:
这一组图献给@刘群 老师
我们曾经争论过汉语语序的自由度问题,我说汉语语序除了极少数对svo有直接冲突的OVS(正解SVO)不被允许外,其自由灵活,到了几乎随心所欲、想啥说啥、有法无天的裸奔的程度。
刘老师颇不以为然,坚持孤立语的本性就是语序固定,汉语不会例外。

刘:
谢谢@wei 把这些图献给我
换个例子:猫咬了狗,狗咬了猫,猫狗咬了,狗猫咬了,咬了狗猫,咬了猫狗,……语序自由吗?

Me:
自由度是一个区间,不是二值吧
ovs 不被允许,是其不自由的一面,不过数量上不自由的变式远小于自由的变式。
总之,不看数据的话,我们不会相信汉语如此任性。

刘:
我那个例子,osv,sov,vso,vos都不行啊

Me:
猫狗咬了,狗猫咬了
听上去没啥问题啊,还是我耳朵有问题?

刘:
不知道谁咬了谁

Me:
不知道也没啥问题啊
都是合法的

刘:
意思变了,就不是语序自由了。语序自由的前提当然是意思不能变。

Me:
拿语义或常识来纠缠句法语序自由, 不是一个好的辩护汉语总体语序不自由的路子
窃以为。这样辩论的话,我就给你: 鸡我吃了,我鸡吃了。自由还是不自由呢?

刘群:
你也是用例子来证明语序自由啊?并没有统计数据
规则都有反例,个别反例不能推翻整条规则
语言规则吧

Me:
你举的更像是反例,弄了个猫和狗,恰好是本体上平行的概念,都食肉,也都被食。
这种例子更像是反例 而不是 norm,所以我以子之矛可以还给你否。
当然 到目前 控辩双方都还停留在例句阶段。都还没有统计数据。

刘:
我的例子一点都不特殊:特朗普会见安倍,俄罗斯占领克里米亚,……

Me:
克里米亚俄罗斯啥时占领了
特朗普安倍会见了吗?
安倍特朗普真滴会见了啊?
会见了安倍特朗普还见了谁呢?

我的例子也不是 outliers 呀。说出来听起来都那么接地气

刘:
就用这个例子吧:"我的例子也不是 outliers 呀":我的例子outliers也不是啊,outliers也不是啊我的例子,outliers我的例子也不是啊,也不是我的例子outliers啊,也不是outliers我的例子啊。

Me:
谢谢 & 欢迎刘老师站到我这边来!
这不正是语序自由的现身说法吗

刘:
嗯?你觉得上面那些句子都成立吗?我觉得大部分都不成立。
我是反驳你的说法

Me:
不成立?

刘:
不成立

Me:
看样子得 crowdsource 给 native speakers 去投票决定了。

我听起来无障碍,都理解了不算,感觉还蛮顺,至少是接地气:老百姓就是这么说话的。社会媒体更甚。

当然如果给新闻系教授, 他可能会教育学生不能这样写。在有很多个表达(不仅仅是语序自由)的时候,技术文献和新闻工作者会被教导去选择所谓规范的表达法。但语言事实和普罗通常不听这些指教。

其实 坚持汉语语序自由得不像话的观点,不是为论点而论点,而是提醒自己和同事,我们在写 parser 的时候,必须把语序自由作为一个重要的角度来看汉语。 否则无法做出一个鲁棒和召回率高的汉语解析器。

刘:
不管哪种语言,在社交媒体上,都不太讲究语法的,特别是短句子。这不能成为汉语语序自由的证据。英美人说话,口语、短句子、社交媒体上,不合法的句子比比皆是,不能因此说英语语法就要废除了。

Me:
我们当然希望语言都是语序固定的 这该省多少力气啊。线性pattern就是以次序(linear ordering)为基,语序灵活了,patterns 就成倍增长。非语序的其他因素可以在既定的pattern里面调控,无需增加patterns,唯有自由的语序是一件躲不过去的功/工。

刘:
即使是汉语,我们表达稍微复杂的内容的时候,一般都会用svo的,不会随便改语序,否则给自己添加麻烦

Me:
汉语操蛋就操蛋在这里: 你本来就没有形态,小词也是能省就省,你还要语序灵活自由,你还让人活不活?国人的投机取巧甚至在语言表达上也如此彰显。可是我们还是要面对现实。

刘:
没有这么可怕,汉语parser的准确率比英语并没有低太多

Me:
汉语 parser 比英语没低多少,是在新闻上么?
新闻是语言大海的三滴水。

刘:
其他领域没有确切的数据可比较。

Me:
还是可感觉的

这一回合,算是打平了,如果刘老师不坚持要我举白旗的话。

刘:
不能靠感觉。
@wei 老师客气了学术讨论,有争议很正常。
我也没有数据说服你。

 

 

 

【相关】

【语义计算沙龙:语序自由度之辩】

中文处理

Parsing

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

《朝华午拾》总目录

【李白之29:依存关系图引入短语结构的百利一弊】

李:

至于基本短语的 Phrase Structure (PS) 边界迷雾(【长大的战友】),除非发现碍事(譬如不加修整地在产品 display这样的xp结果),不管他了。说到底,pure dependency grammar tree representation 本来是没有显性边界的,没有短语结构(PS) 的牵扯,一切都发生在词与词(terminal nodes)之间,只不过我们在实践中,把乔老爷的短语结构的概念,有限度地在 shallow parsing 阶段带入,成了一个 hybrid tree, 这才有了这个所谓的边界的问题。换句话说,这是一个系统内部在模型化过程中“人造”出来的问题。

白:
这是“坑”和“坑的坑”不加区别地混同的结果。

李:
这种 hybrid 的表达法的好处太多了,以前论过 (e.g.语义计算沙龙:基本短语是浅层和深层parsing的重要接口》),带来这么点副作用我觉得可以忍受。但我们应该记住,dependency 的本质原本就是独立于短语结构的(属另一个 very competitive 的 syntactic representation),所有的边界都可以通过父子关系,间接而完整地事后确定。譬如上图中“已经”和“儿女”都是【长大的战友】的children,“长大”也是 ,边界事后确定校正就包括了这些儿女,if needed。不影响核心逻辑语义及其理解是关键。

白:
如果站在填坑的角度,区别二者是理所当然的,并不需要刻意多做什么

李:
白老师是,站着说话啊。

白:
这只是说明“树”这种结构不如“坑-填坑”这种结构更接近语言的本质

李:
白老师上面这句话很妙啊:我个人的翻译就是,乔老爷的短语结构那一套(PSG及其表达法),不如词(概念)与词之间的依从关系更接近自然语言的(逻辑)本质。I honestly cannot agree more.

所谓坑与填坑的结构,就是依从关系建立的条件匹配与满足。“不需要刻意多做什么”是你心中的 approach。我现在的patching就不是这样了,在我这儿,为了人看着舒服的事儿,可以做,但不是必做。必做的事儿是在应用的时候碰到了不想要的后果,那就回过来再把屁股擦干净。

白:
他那些杀红了眼,刺刀上沾满血的战友们可管不了那些了。

“儿女”有坑,把“战友”捎带上还可以解释。“刺刀”的坑是“枪”,“枪”的主人是human,这弯儿拐的。句法非标配的坑,靠语义中间件凌空凿开一个坑,才能把定语从句的钩子钩上。

第一个“那些”如果去掉,好像不通了,或者说链条断开了:

?他杀红了眼,刺刀上沾满血的战友们可管不了那些了。

所以,凌空开凿的坑无法填装远距离的“友元”。

李:

白:
“刺刀上沾满血”是自足的,弄个S出来,似乎不能自圆其说。

李:
有那么自足吗?

战友们刺刀上沾满血
战友们沾满血
刺刀沾满血
刺刀上沾满血

这个后置词“上”字把本来可能的一个主语降格了,变成更像状语了。这就为 “战友们” 出场做主语创造了条件或坑。

白:
S,一定有填坑的关系。“战友们”究竟填了什么坑,不深究是看不出来的。
好像“刺刀”和“战友们”通过这种结构浑然成为了一个整体,“刺刀”成为了“战友们”的一个部件(body part)。

李:
虽然董老师那一层的逻辑语义,可以不管这些表层的 trigger 而保持 【human】 和 【physical object】二者的逻辑地位的稳定,但是 parsing 过程中,这些句法痕迹及其引致的句法“坑”的动态变化还是有迹可循的:PP 把潜在主语降格,让位给其他 NP:

他沾满血了?哪里沾满血?
他在(他的)刺刀上沾满血,身上滴血不沾

“战友” 是大物体,“刺刀” 是小物体。“刺刀” 在这个场景,就是大物体中的一个小物体,与 body part 功能很接近。“他刺刀上沾满血,可手上却没有”,这与前一阵子讨论过的英语表达 "hit sb on+bodypart" 类似,到了汉语就成为所有关系的表达了:

他击中了我的头

击中 的是 “我” 还是 “头”? 沾血的是“人”还是“刺刀”?当然,“上”也是一个讨厌的小词,在接近成语的表达法中不一定降格,譬如 用“组织上”代替“组织”做主语的情形。

组织上批准了你的建议。

对于战士,刺刀就是手脚的延伸,成为一个战士的不可或缺的部件。

白:
地方上,县上,州上
甚至“今上”

李:
这现象是词典化的了吗 还是相当地开放?

白:
他衣服上残留着油渍。他工位上挂着两条领带。他单位里流传着很多绯闻。
他桌子上永远整整齐齐。

可以肯定,1、这是一个系统性的现象,不是偶然或者活用。2、到底是主语还是应加但未加“的”的定语,似乎有个连续的谱系。3、一个具体用法在这个谱系中的定位,与形式状语和形式主语整合为一个整体、或者说形式主语延伸到足以包括形式状语的可接受性有关。整合越不可接受,形式主语越像定语;整合越可接受,形式主语越像逻辑主语。

李:

语言学理论中 主语与定语 地位很接近,虽然前者属于 arg 后者属于 adjunct。它们都是 external 的成分 有很多相通之处。乔姆斯基xbar 理论的起因之一就是要统一主语和(部分)定语,在句法结构的理论上给一个统一的说法(参见 乔氏 X 杠杠理论 以及各式树形图表达法)。

 

 

【相关】

【李白对话录系列】

《泥沙龙笔记:漫谈自动句法分析和树形图表达》

乔氏 X 杠杠理论 以及各式树形图表达法

【语义计算群:句法语义的萝卜与坑】

语义计算沙龙:基本短语是浅层和深层parsing的重要接口》

中文处理

Parsing

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

《朝华午拾》总目录

【语义计算:耍一耍中文 SyntaxNet 和百度翻译】

我:
朋友终于装上了赫赫有名的谷歌 SytaxNet 中文自动分析器。随手试了一个例子。From syntaxnet, we have this parse:

From yours truly, this is the result:

To laymen's eyes, they look alike.  They are both dependency trees. Of course. They seem to have used the same or similar tools for drawing trees.  But beyond these, they are so different.  天壤之别 in data quality.

For the SyntaxNet:(1) the link between 啥 and 体验 is wrong: it is not conj;(2) subject is also wrong,公司 should not be subject, subject is 投; (3)object of 投 is wrong, it is not 人去楼空, it should be 公司; (4) 投-VP is 定语从句,where syntaxnet is wrong too.  Out of 8 dependencies, only 2 can be judged as right (了 is linked right; 的 might be judged as right as it is linked to 投 as relative clause marker) and they only involve 小词, all notional words are linked wrong and the function word 家 is also incorrectly attached, it should be linked to 公司.  This is from the parsing system which claimed most accurate a few months ago.

白:
这里涉及几个细节:1、凭什么断定“家”是量词而不是名词?在扫一个处理一个的工作模式下这很有些勉为其难,因为真正强关联的词“公司”可能隔着远距离才能看到。要明确大家的工作模式都是可以等到不管多远的距离才出现的,大家一起比才公平。

1、凭什么断定“家”是量词而不是名词?在扫一个处理一个的工作模式下这很有些勉为其难,因为真正强关联的词“公司”可能隔着远距离才能看到。要明确大家的工作模式都是可以等到不管多远的距离才出现的,大家一起比才公平。2、“投”和“体验”各空出一个未填充的坑,但这两个坑是有关联的----谁投,谁体验。两种分析结果都没给出这个结论。

2、“投”和“体验”各空出一个未填充的坑,但这两个坑是有关联的----谁投,谁体验。两种分析结果都没给出这个结论。3、“是”接受谓词主语时,对宾语(表语)进行了一次约束,即宾语要么也是谓词,要么是对谓词有概括能力或者收束能力的名词。最后进入宾语位置的,到底是动词“体验”还是名词“体验”,是有讲究的。

3、“是”接受谓词主语时,对宾语(表语)进行了一次约束,即宾语要么也是谓词,要么是对谓词有概括能力或者收束能力的名词。最后进入宾语位置的,到底是动词“体验”还是名词“体验”,是有讲究的。“什么”可以把动词强制名词化,也可以自然修饰一个本色名词。但这对“是”语义是有区别的。谓词 是 什么 + 谓词,说的是两个谓词在时间上的叠合、因果上的联系。谓词 是 什么 + 名词,说的是用后面的名词对前面的谓词进行分类。“投”与作为名词的“家”,有那么格格不入吗?如果语料中投张三家、投李四家、王家赵家都OK,这里仅看到“投了家”就断定不OK,也太武断了点。既然不能断定不OK,起决定作用的还是与“公司”的强连接。对于静态文本处理的场景,一次吃进一堆,把强关联的量名搭配挑出来不难,对于语音或动态文本处理的场景,确实需要等。即使是静态文本处理,如果确定pos和做match是两个分离的步骤,pos的确定不依赖于match的阶段性成果,那么确定pos需要用到的窗口就必须足够大——大到可以把远距离的量名搭配容纳进来。否则,“家”的名词义项会在概率上占优,同时在局部找不到推翻这种优势的硬证据。

wang:
白老师,这里引出了2个问题  1),POS 和match ,如何走的问题? 2)不同情形下,窗口多大要拉多大的问题?

本人的主张,是POS和match协调走 。或说是WSD和Parse协同进行。若不依赖match阶段性结果,单靠pos自己,可能窗口再大,效果也不见得好,除非支撑的语料能足够大。

“投了家去年还是公司业务额超过同行二倍,而今年公司利润却几乎是零的公司”

这里的“家”与最终的关联的“公司”,实在距离太长,而且其中还有干扰型的两个“公司”。要支撑这样的窗口长度的数据,--太难白硕:

白:
有“公司”出现就可以被wsd加分,真正修饰哪一个“公司”,只能靠matcher独立判断。除非构造一个受“公司”干扰、后面居然还不取“家”的“量词”义项的例子。比如,“没有家的支撑他不可能把公司做这么大。” 或者再离近一点,“没有家的支撑公司不可能被他做到这么大。”wei wang:

wang:
窗口长了,内容的处理只好粗糙些了白硕:

白:
如果是纯粹基于规则,可以耍个流氓,把“家”归入一个变色龙词类,见人说人话 见鬼说鬼话。但是基于关联,耍不得这样的流氓。N+和N不能用X来做wildcard。wang:

wang:
嗯,明白。基于关联的方法,虽然有点难,但走远还是有望的。白老师的例子,“没有家的支撑公司不可能被他做到这么大。”,感觉“家”也不能被“公司”挟持着
想了一下“没有家”做特征也不妥,“没有家支持公司开辟海外业务的保险公司”
这里“家”--又变了“量词”。解析不决问谷歌,或百度:Without the support of the company can not be done by him so much.

Without the support of the company can not be done by him so much.
wei wang:
谷歌解析,--把“家”弄丢了No home support company can not be so big.

No home support company can not be so big.
百度,家倒是出现了,“家”字面翻译wei wang:

“投了家人去楼空的公司是啥体验?”
百度:The family went to the floor of the empty company is what experience?
wei wang:
谷歌:Voted to empty the company is what experience?似乎,谷歌对量词“家”还是可以的

似乎,谷歌对量词“家”还是可以的
-----看来“家”是量词和名词,结果也是不尽人意

我:

@wang 你造句的时候能不能普罗一点儿?不带这样的。

wang:
李老师,第一个句子分析不错。第二句子是为了拉长“家“和关联的“公司“的距离,而造的,确实有点难为机器了。只是说明,距离长可很长。

我:
我是说你缺乏同情心, :=)

wang:
第三个句子,那个“家”没处理出来,有点遗憾。
认错,同情心对机器。“开辟海外业务的保险公司” 独揽了,导致断链。

白:
还没有见到用干扰项“公司”把“家”成功引走的例子。

wang:
说明这抗干扰能力,不是一般的强啊。

这家早就成为公司的临时办公室了。

刚才仔细模拟机器分析句子,“没有家支持公司开辟海外业务的保险公司” 分析出“家”为量词,这个确实太难了。好几处匹配都几乎坐实了“家”为名词,而翻盘的力量实在太微弱。当然基于规则的方法,可能会另有春天。
谷歌的翻译确实了!

There is no insurance company that supports the company's overseas business

以上这是百度的翻译

No home support company to open up overseas business insurance company

以上是谷歌翻译。百度的表现,真心不错

白:
本群就有百度的好几位大牛哦。
“难道就没家给公司提供像样的办公用品的公司吗?”

很赞!

wang:
向百度大牛学习!

白:
好几位百度从事NLP的专家在本群潜水。

“百度”没逃过去这个远距离相关的陷阱。

1024位素数作为模,应该够安全了。

digits没翻出来,prime也没用复数,捣浆糊啊。
模翻成model, 数学上也不算对。

三位整数做密码,太不安全了

又是捣浆糊。
但这里明显是三“个”整数的意思,只不过语法错了。原文是一“个”整数,有三个十进制位。

量词兼其他词类的情况,是很细的细活儿。
调戏完毕。

 

【相关】

【李白对话录系列】

中文处理

Parsing

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

《朝华午拾》总目录

 

【一日一parsing:#自然语言理解太难了# 吗?】

白宫命令司法部申请紧急冻结今天华州政府在西雅图联邦法院申请到的总统冻结穆斯林七国入境EO的临时冻结令。
如果成功的话,临时冻结令将被紧急冻结令冻结,穆斯林七国入境继续冻结
#自然语言理解太难了#

wang:
李老师这是要把机器累吐血啊!
不太理解为何要和这类超长难句对上了。
以前只顾着忙着单句,对篇章理解终未敢有奢望。
恩,到时句法分析,感觉可以分成若干小句来分析也不错。
只要把前继跟准了,把大树搞成森林,由若干棵小树构成,而每个小树分析结果表达清晰准确。也是一种选择

我:
不是跟难句过不去,是 parse 着玩。现如今凡是遇到 “绝妙的中文”、,#自然语言理解太难了#  这类标题,就忍不住想,我 parse parse 会怎样呢(e.g. 《立委科普:机器可以揭开双关语神秘的面纱》)。是一种类似于软件工程上 stress test 的心态,人说难,偏试试,看极限在哪里。哭笑不得的结果有之。喜出望外的也有,以为难仔细一想其实不难。总之都会有启发。不特意为这些 outliers 去动手术。不值当。

特别心烦意乱的时候,啥招都不管用,只有调系统可以安神。明知系统是个无底洞,以有涯对无涯。killing time,一点儿也不殆。

白:
“这些泡沫包装糟透了。”
“这些水果包装糟透了。”

我:

“泡沫包装”作为合成词词典化了。

白:
“这些学生宿舍都没回就一头扎进了图书馆。”

我:

第一句差强人意,层次纠缠。知道病源,不敢确定该不该修理。分层这事儿,你不能占尽了它的好处,一点不吃亏啊。主要是衡量亏的大小,值得不值得去打补丁或做高危微调的动作。观望。有时候需要时间和新的数据去驱动和决策开发和维修。

 

【相关】

【李白对话录系列】

《立委科普:机器可以揭开双关语神秘的面纱》

中文处理

Parsing

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

《朝华午拾》总目录

 

 

 

 

 

 

【李白之27:莫名其妙之妙,妙不可道】

李:
想到一个 minimal pair:

(1)他莫名其妙。
(2)我莫名其妙。

单说,第一感觉是(1)(2)均无歧义。但对比看,就看出“莫名其妙”的歧义来。查词典,原来有两个义项:

莫名其妙
【解释】:【1】说不出其中的奥妙,理解不了其中之巧妙,比喻深奥让人不明白, 可带讽刺意味。【2】不知道到底是怎么个情况。

根据主语人称的不同,默认的义项随之不同:感觉第三人称主语(1)的标配义项是【1】,而第一人称主语(2)的标配是【2】。非标配的义项,在没有更大的上下文的时候,休眠了。

从语言学的不同维度,这个区别可以说是:

(a)不及物动词 vi 【1】 和 及物动词 vt【2】 的歧义;
(b)也可以说是 形容词 adj 【1】和 动词 v【2】 的歧义(反正vi和adj在汉语也可算一家);
(c)成语义【1】与字面义【2】的歧义;
(d)黑箱【1】与白箱【2】的歧义;
(e)当然还可以说是情感色彩 sentiment (“莫名其妙”的黑箱有讽刺贬义色彩)【1】与 中性陈述 neutral 【2】的歧义;
(f)甚至还可以说是(隐式)被动【1】与主动【2】的歧义。

因为人的本性,通常不会自贬,因此第一人称做主语,贬义解的可能大为降低,因此(2)“我莫名其妙” 默认为白箱义。而当用于第三人称(其实是非第一人称)的时候,通常的理解都是黑箱,忽略了白箱的可能。这符合成语默认为黑箱的一般规律:毕竟第一人称是个案,而非第一人称则是常态。

白:
其实不是。“他莫名其妙”是“他使人感到莫名其妙”“我莫名其妙”是“我感到莫名其妙”前者是后者的使动用法。

李:
也好。又增加一个语言学范畴的维度:

(g)也可以说是使动【1】与自动【2】的歧义。

白:
当别人表示我使之感到莫名其妙时,我可以反问“我莫名其妙?blahblah”
一般情况下,“我莫名其妙”并无歧义。

李:
我的语感是:一般情况下,“他莫名其妙。” 也无歧义。
语感的差别?

白:

因为感到莫名其妙是主诉,无须代劳。

李:
他这人莫名其妙。你怎么会喜欢上他呢?

白:
只有这个。与非第一人称相配的,是使动用法。这是标配。

李:
成语一般不影响 parsing,是 hidden ambiguity,属于 WSD 范畴,可以在 parsing 后的语义模块去做,if needed。更多的有趣案例:

对于"莫名奇妙",我莫名其妙。

白老师洞若观火,黑老师莫名其妙。

谁莫名其妙?
你才莫名其妙。

当然,(1)和(2)也都可以是歧义。这一切,都可以在更大的上下文中,被反转过来:

(1a)对于此事,他莫名其妙,一片茫然,手足无措。
(2a)我承认我莫名其妙。(我就是个无厘头,不要理我好了。)

对于标配的无歧义,上例表现的另一线可以在句法后借词驱动来休眠唤醒(【立委科普:结构歧义的休眠唤醒演义】)。

白:
反转的桥段可以有。对非第一人称,如果明示相对的事物,则变成“对该事物感到莫名其妙”之意。对第一人称,如上所述,在反问、抗辩乃至退无可退的认账情景下,可以转化为“我令人感到莫名其妙”之意。这些都是只有特设性条件才能激活的非标配解读。

李:
总结来说,这一切一般不影响 parsing,是 hidden ambiguity,属于 WSD 范畴,可以在 parsing 后的语义模块去做,if needed。与人称有关,可以在句法后的模块check主语条件来做细(WSD),还可以细了再细,去进一步休眠唤醒。

白:
使动比非使动多一个坑,既是wsd问题也是句法问题

李:
【对 np】 莫名其妙:汉语中 arg 可以降格为 mod,尤其是当坑是 pp 为载体的时候,句法总体可以不受什么大的影响。

白:
这一条是有可能有副作用的

李:
同理 词典的自动词在活用为他动词的时候,冒出来一个后置宾语,萝卜出来了没有坑,鲁棒的句法就会现造一个坑,结构分析依然前行。

白:
做空。
允许未饱和坑数出现负值

李:
从句法主旨是把线性转为结构来看,都有应对之道:

幸福着你的幸福

“幸福” 的词典没留宾语的坑,生生被活用了。我的感觉还是 句法能简化则简化,以顺利建立结构为度。线性到结构 是一个飞跃。飞跃后 视野就开阔了 四通八达 做语义 做反悔 做落地 就游刃有余了。爱怎么死缠烂打都行。第一步的结构化 parsing 因而是重中之重。鸡零狗碎的语义细线条可以尽量搁置。这可算是老马识途的由衷之言。耍流氓 玩暧昧 粗线条 变色龙 休眠 隐藏 patching 默认 等,为了句法结构化,都可以。

道可道,非常道。莫名其妙之妙,妙可道,妙不可言。

【相关】

【立委科普:结构歧义的休眠唤醒演义】

【李白对话录系列】

中文处理

Parsing

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

《朝华午拾》总目录

【李白之26:汉语动结式和情态式的隐式被动现象】

李:

这一句有点难有点难。

难在“相比”作为副动词,这口气太长了:里面混杂了并列小句的定从。

这句 tricky,实际上是有两个被动式:一个是“被关押”,一个是 “被...打死”。汉语中被动态可以而且经常不用显式“被”。这样一来,如果两个动词前面出现了一个 “被” 字,这个被字可以给第二个动词,近水楼台不得月的第一个动词没得到这个被,也并非就不可以是被动。

有点操蛋。算了,拉倒:就近原则,作“被关押”解。否则容易顾了东头顾不了西头:

wei wang:
是否有些武断?
双“被“不能同时出现在一个句子,不顺口,区别还是在“病死“or“打死“,语义制导了句法。若是“夹伤“又如何?可能夹伤己,也可能夹伤他,打死,病死排他性强。

李:
对,病死 vi;打死 vt。

白:
病死一个坑

动结式动词,两个坑都相谐的,只说一个,一般认为是逻辑宾。“张三赶走了”意思基本等同于“张三被赶走了”。

李:
动结式 被动态的常规是省略“被”,而且这种宾语提前,比宾语后置更常见。汉语中的 可能情态 也具有这个特点:宾语提前,或者说,隐性被动,更常见:

他可雇
== 可雇他
== 他可被雇

尽管 “雇” 是两个坑,而且都要求 【human】,但是 “他可雇” 里,只有一个 NP 处于主语位置的时候,常常是填逻辑宾语的坑,而不是逻辑主语的坑。机关就在这个“可” 上面。

白:
所以,处理到动结式了,可以把已经入瓮的“被”踢出来,让其重获自由。

记得有个古代的故事,别人给皇帝送的吃的,宫里守卫拦住了,问:“可食否?”送的人回答:“可。”守卫拿过去就把送来的东西吃了。

李:
这个故事妙。汉语的 【可+V】 是一种构词法,其实就是合成(or 派生)形容词(deverbal adjective:derived adjective or compound adjective)了,但是词源上来自动词的情态式。问的人是当动词情态式问的,回答的人是当形容词理解的。拧了。其实是历时语言灰色过渡阶段的现时反映,颇有意思的汉语语言学。

白:
可造之材,可塑性好,高可用

李:
类前缀“可-”,可比较英语的后缀派生词:-able

readable:可读
可行性,可读性:feasibility,readability

这是从形容词通过后缀“-性”进一步派生为名词了。非常有意思的现代汉语“类派生”现象(词法上介于 compounding and derivation 之间的语言发展苗头,我博士论文中谈到汉语类语缀现象时,特别论过: PhD Thesis: Chapter VI Morpho-syntactic Interface Involving Derivation

白:
要,也是:“已经放下武器的敌人不要打”

李:

白:
这些都带有决策性质,决策者就是说话者,执行者就是听话者,不言而喻。所以再有指名道姓的萝卜,一定填逻辑宾语的坑。执行者(听话者)是隐含的逻辑主语

李:
决策的语义对应的是语法的祈使句。当然祈使句在孤立语中有概念,少形式,也不好区分。

白:
如果特别对听话者指名道姓,往往用同位结构:你们三团要狠狠地打。

李:
“你们” 第二人称,可以另算。“我们”第一人称也算有痕迹 (lets)

白:
这是旁证

李:
“咱们” 就更棒了,作为祈使句形式痕迹,更加彰显。

白:
那是套近乎

李:
“咱们” 开头,几乎都是祈使句。

wang:
你们三团要很很打
这句,主动,被动都可能。刚才白老师说的“要打”一被动也成立:
部队一定要打压一些有骄傲的风气的单位,你们三团要狠狠打。
这个例子没举好,
还是不存在被动?只能是主动缺省宾语?看来得求教二位老师

李:
逻辑宾语的解读对于这类句式是一个蛮明显的趋向、heuristic, 总是可以找到反例

wang:
嗯,谢李老师解答,我这边太晚了,有空聊

 

【相关】

【李白对话录系列】

中文处理

Parsing

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

《朝华午拾》总目录

【李白之25:句法能简则简,只要不影响总体结构】

李:
董老师的例子。

 

勉强回答了谁逃票翻墙。还有 谁进入 谁被咬死,暂时搁置。貌似汉语“连动结构”可以很自然一路顺下来。

白:
一路顺下来,是因为另一个坑都不是人。
那个“被地主放狗咬伤了腿”可以试试

李:


动宾离合词 “放狗” 带了个句法的 O “那个” 貌似矛盾,原来事出有因:放狗 带上了 passive 特征,于是前置NP就做了 O,已改正:

这里遇到一个层次纠缠的问题。语言中的直接引语,或括号里面的附加成分,不能与外部一锅烩。parser 应该有机制分别处置,然后再拼接。真要实现也不难,但貌似多数系统(包括我们)没有做。假设内部由 blahblah 代表,那么外部应该是酱紫才对路:

白老师,“被地主放狗咬伤了腿”有什么玄机?

是 “腿” 找不到主儿吗?哦,是 谁“咬伤” 的问题。
句法不必管那么多。不影响总体结构的,原则上句法开始都不管:谁咬伤了(腿),谁的腿,这些问题可以推后,后去也许做,也许不做。

白:
什么叫影响总体结构。

李:
譬如上面的 parse 图,就不受影响。没连上的节点在句法上都有直接或间接的联系,而且句法上说得通。后去的语义模块顺着这些直接间接的联系,可以把漏掉的逻辑语义补全。换句话说,句法关系和逻辑语义在这里是可以分开处理的。能分开的时候不分开,就是把句法拖进泥坑。实在分不开了,句法引进语义、甚至常识(碎片),都是合理的。

白:
狗和咬是应该做出来的

李:
“狗”和“咬” 分开了,是因为 “放狗” 是一个分离合成词。“狗咬” 也可以看成是一个合成词。两个合成词相交了,句法原则上不进入词法,这时候,没出来在句法上情有可原,语义模块要想再挖出,条件是具备的。同理,下面的“同事”、“邻居”、“儿子” 都有人与人之间关系的坑。句法阶段只要不影响大局,不用纠缠这些关系的语义细节。都是 mod。先连上再说,这个parsing 还是脉路清晰的。

白:
太死板了

李:
汉语句法已经够麻烦了。个人的体会是,能简化就简化,尽量给句法减压。这对系统的鲁棒、维护和周全,都有好处。后去爱做多深做多深。反正条件只是更好,不会比做句法的时候更差。

白:
狗和咬连不上是硬伤

李:
以前说 parsing 是可以见底(tractable)的事儿,主要指的是句法总体。如果把逻辑语义的每一个细节,包括隐含的,都一一解析出来,就很难说是可以见底的了。所以,总体上的感觉是,句法模块基本可以做周全、完备,而语义模块则是一个 optional 的渐进的(incrementally enriched)。开发NLU产品的时候,语义落地模块应该以句法模块为基础,可以借力慢慢完善化的语义模块,但不要指望语义模块的完整性。所以我以前把句法后落地前的语义模块叫中间件,意思之一是可有可无。

白:
狗和咬,不是语义问题。

李:
狗和咬不是语义问题,那么吃与饭也不是语义问题。HowNet 是语义词典,不是具体语言的词典。查一查 HowNet,应该可以看到 【狗】 和 【咬】 的语义联系。

白:
不对,我说的是本句里狗和咬的句法联系是明显的。
离合词脱离句法后患无穷。

李:
来了来了:

“狗” 倒是 连上 “咬”了,可是与 “放” 的联系切割了。这在句法都没什么,另一边漏掉的,语义模块可以补全,如果需要的话。

白:
本来就是俩爹的结构

李:
兼语结构。不错。如果没有离合词的纠缠,就是一个句法内搞定的兼语结构。
真地无所谓。并不是做不出来。只是系统决定在哪里做方便而已。再如:

老师批评了谁,这也不影响句法总体框架,因此也可以搁置。

发现了什么?不影响,也搁置。(发现的是抄袭事件还是卷子?似乎是前者)

“打一巴掌” 句法动宾(也有一说是动补),逻辑语义是【方式】。“打李四” 句法动宾,逻辑语义【受事】。当二者同时出现的时候,前面的NP降格为 Mod,也是一途(cf:【李白之21:萝卜多坑不够咋办】)。句法结构仍然在:后去语义模块可以解析出【受事】和【方式】,if needed。

wang:
头一天上班,晚上又朋友吃饭刚回到家,看了李白对话。李老师的系统对以上句法解析不错。

句法解析的目的是给后面语义分析使用的,那些句子,如“发现“了什么?“批评“了谁?“躲”过了什么?谁“躲“的?在句法结果后,都是要解决的,也是最有价值的,白老师正是要去解决这些问题的,我定为”句法树(图)后“的问题。

李:
我以为然。

wang:
我在句法树阶段,李老师也许句法(图)阶段,但白老师是在做这之后的深挖。
李老师,我个人认为那个长句分析怎样,意义不是特别重要,纯个人观点.那句可能还存在语病,何况说者不喘气,听者(读者)也得歇口气吧!

 

【相关】

【李白对话录系列】

中文处理

Parsing

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

《朝华午拾》总目录

【李白之24:“这碗花纹很别致的”】

白:
“这桩打得头破血流的离婚案真是蹊跷。”
量词兼其他词类的情况,是很细的细活儿。

李:

:

白:
“这碗花纹很别致的冰激凌其实并不好吃。”“这碗花纹很别致的你可别错过了古董。”
这有难度了。“碗”的窗口要很大才能确定它是名词还是量词。

李:

感觉第二句是灰色句法,拗口,罕见。

白:
把后面从“你”开始截掉试试。
“这碗花纹很别致的。”

李:

白:
看起来是句法一本道。但是花纹是有坑的,大小主语结构同样说得通。但是前者量名搭配不相谐,后者大小主语相谐。好的分析器应该搞出后者。但是如果pos在别处做出来,无法利用大小主语信息,就不好说了。这里就存在一个问题,在pos意义上而不是在分词意义上的休眠唤醒。一本道被语义不相谐打断链条,转而寻求另一pos。这是matcher和wsd之间的双向互动,而不是单方向的上下游工序。

“这碗花纹精美。”

所谓一本道是在确定了pos之后的一本道,而pos恰恰是有可能翻盘的。遇见一本道与语义不相谐叠加,不应是如乔氏green ideas般强行闯关,而应是回头检视pos的其他候选。另外,大小主语之间,小主语往往是大主语的body-part、亲属/关系词或者是某个侧面特征(sentiment中所谓aspect),这个subcat层面的联系和相谐是十分明显的。要想pos不回头,就必须使pos“变相多态”,事实上承载多个pos。

李:
算对还是不对?我被绕糊涂了。

白:
分析出大小主语算对,分析出量名强制搭配不算对。
我是在揣摩你的pos是在什么地方确定的。为了得到正确结果,确定pos的那个环节该做些什么。是不是需要某种广义的休眠唤醒

李:
我基本不做 pos,以前专门论过:【中文处理的迷思之二:词类标注是句法分析的前提

白:
那此处的“碗”到底是不是量词?

李:
也是也不是。
论点是 pos 作为独立模块 也许对汉语 parsing 可以有些帮助。但是 第一 不是必要;第二 即便做 也不要做多做全,最多蜻蜓点水就够了。多做无益有害。

白:
不讲一般理论,就讲这个例子

李:
这个例子没看出 pos 的必要

白:
实践中,不做多做全,就必须留反悔的口子。

李:
词典里面 碗 是 【container】,也是 【器具】。这就够了。这是词典信息 不是上下文的 pos tagging。

白:
不管怎么说“这碗”是做了“花纹”的mod

李:
不错呀。mod 是句法关系,可以表达多种逻辑语义,【拥有】、【性状】、【色彩】、【材料】、【施事】、【受事】、【对象】等等,当然也包括【部分-整体】、【数量】。parsing 的句法阶段不细究属于何种逻辑语义。

白:
当然“这碗的花纹”在你那也是“这碗”做mod,小词被过河拆桥了。

李:
这不很好吗?同体后 要细分也是可以的,到语义模块去磨。

白:
感觉是耍了个高级流氓

李:
句法耍一耍 是正道。到了后面的语义模块 就要讲究 love 了,要有 chemistry,句法不到不得已 不谈恋爱。

白:
都勾搭上了,还不说自己是男是女的感觉
李:

李:
新智元笔记:中文处理中的POS、搭配和句法】, FYI for those who came to this group more recently

白:
到了今天这样鲜活的例子才知道这等原则落地是啥意思。

 

【相关】

新智元笔记:中文处理中的POS、搭配和句法

中文处理的迷思之二:词类标注是句法分析的前提

【李白对话录系列】

中文处理

Parsing

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

《朝华午拾》总目录

 

【语义计算:关于解析逻辑语义角色】

白:
“每人选一种动物做研究。”“每人选一个小伙伴做研究。”

我:
好吧,来两颗圣诞奇异(歧义)树,祝各位圣诞快乐!

当树长得不像树的时候,我们开始怀疑。人可以做研究,动物可以做研究吗?都可以。不过一个主动,一个被动罢了,但汉语的被动不必用显性形式(“被”)。汉语做研究比英语难。
== 汉语被做研究比英语(被做研究)难。
== 对汉语做研究比(对)英语(做研究)难。

总之,“做研究”有两个坑:施事和对象,前者要求【human】or【institution】
后者无要求:无事不可研究。

宋:
有些情形不好办:小王带着哥哥到北京看病。谁看病?
老王带着老伴回乡创办了一所小学。谁创办了这所小学?

我:
parse see see:

宋:
连动结构后动词施事的确定有时是模糊的。

我:
这种模糊貌似不是语言自动分析的问题。因为可以假想有一个没有歧义的表达形式,人要用这种形式去表达上面的两句自然语言语句,我觉得表达的人自己会感到困惑。换句话说,人的表达有时候需要模糊,人的理解有时候也不在乎那个模糊地带的定点。这时候,如果一种表达形式不给模糊留下余地,人就会手足无措,会被逼迫得精细起来。从这个角度看语义计算,有时候我们对这个计算有不合理,也不切实际的要求。人自己都模糊的东西,不能指望机器去黑白分明。人自己需要有模糊区间的表达的时候,不能说这个语言应该清晰到区间的定点。

白:
问题不在于有模糊性,而在于模糊性其实是限制在一个精确的范围里,我们如何把精确范围的表达纳入句法结构的表现?比如这一句“丁丁拉着妈妈去了少儿图书馆”
还有宋老师的两个例子
“小王带着哥哥到北京看病。”“老王带着老伴回乡创办了一所小学。”
“丁丁和/或妈妈”、“小王和/或哥哥”、“老王和/或老伴”
这样的表达应该在句法结构的表现形式上有对应物。
“跑不了是两个之中的一个或两个”
这样的填坑逻辑要能够体现在句法结构的表达之中。

我:
丁丁那句目前是酱紫滴:

我:
白老师说得对。
目前还没有公认表达法 来区分句法关系的两种 or, 但要想加 也不难

白:
next也好,合并也好,说的都是两个谓词有坑要共享,而且共享的位置可能只有一个。现在来了两个候选(就算前一个谓词有一定引导作用但也往往不明确,除了兼语),在没有更多语境信息的情况下,只能是一个有明确嫌疑范围的悬案。

准备了一个坑,两个萝卜都有资格进,弄不好其中一个还可以免额度。这就是“和/或”算子的由来。如果语境能提供进一步的知识,它可以锁定为“和”,也可以退化为“或”,甚至可以精确落地到两个候选当中的一个。

“张三在答辩中回答问题正确。”此句的root在“回答”还是在“正确”?
“回答问题正确”“问题回答得正确”“问题回答得正确了,才能获得奖品”
感觉“回答问题正确”有主谓结构的倾向啊。“回答问题”做主语,“正确”做谓语。可是被后面那些“正确”做补语的出来一搅和,又不坚定了。
“问题回答正确了,才能获得奖品”
“回答问题正确”的最外层说的是“回答问题”还是“回答正确”?我认为是后者。
“正确”是比“回答”高一阶的谓词

单独定性怎么都好办。关键是如果主谓结构成立,那么得字结构的“补语”地位就至少要动摇一下了。或许“得”的作用就是把前面的谓词名词化(降格),以便后面的谓词上位呢。那么,“正确”这个谓词就是个高也能成低也能就的主儿:遇到带“得”的谓词,它当名词吞了;遇到不带“得”的谓词,它当谓词吞了。这是个“变色龙”坑, 我们把这种坑表示为“X”,类似扑克牌里的“混儿”(wildcard)。


当然,root统一为“正确”

这样,跟汉语“张三回答问题正确”或“张三问题回答得正确”对应的英语是 “Zhang San's answers to the questions are correct”。而跟汉语“张三正确地回答了问题”对应的英语是 “Zhang San answered the questions correctly”。

宋老师例子里还涉及到亲属词,亲属词带坑,但坑这里也有一个前置的逻辑门,标配是小王,例外从语境中找小王之外特别提及的说话人乃至外号叫“哥哥”(如张国荣)的命名实体。

 

【相关】

【李白对话录系列】

中文处理

Parsing

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

《朝华午拾》总目录

 

 

 

 

【李白之21:萝卜多坑不够咋办】

【立委按】核心成分 args 不过三 句型不过百 是我们语言学家对于世界主要类型的语言观察到的普遍规律 或曰普遍文法。语言的奇妙 莫过于此。可是思维没有这么简单 一个事件可以有很多成分。这个矛盾 语言怎么解决的呢?模型语言的 parser 又有怎样的对策呢?不骗你 做个语言学家真好 可以洞悉很多上帝和人的奥秘。

白:
你那个打铁的图,不大对啊

李:
白老师眼毒是出了名的。是的,“打-铁” saturated 在强搭配中了,就不应该再去外挂另一个宾语,这跟娶两个老婆同罪。系统目前没那个严苛,执法不力。但也说明了,后一个老婆也许应该降格,降成姨太太。如果宾语是大房,那么 complement 就是二房,打的是正室的铁(morphology 的 compounding),打的结果就是二房的钉子(syntax)。用逻辑语义的话说,一个是受事宾语,一个是结果补足语:是为打铁成钉。

众所周知,句法的宾语其实可以有很多不同的逻辑语义。默认标配的逻辑语义是受事。但对象、结果等都可以的。“打铁” vs “打钉子”,前者是标配的【受事】,后者是【结果】,但都可以以宾语的身份或分布现身。

白:
如果给盖房子的盖规定只有两个坑的名额:我,房子,木头,怎么填?
“他考清华研究生数学八十五分”
不止四个

李:
这是说的萝卜多,坑不够,是吧?

白:
“这些木头可以盖很多房子”

李:
这个不用试我就知道:目前就是主谓宾。将来细磨逻辑语义的话,“木头”是【材料工具】类的逻辑语义坑,房子则是【结果】。

白:
“这些木头我可以盖很多房子”

李:
这个也可以预测到,耍个流氓,不是 Topic 便是 Next,将来细磨 ontology,也可以让流氓从良。

白:
topic是温吞水,上不着天下不着地,既不是标配的成分,又没说填谁的坑

李:
不过一步之遥啊。但是 Topic 或 Next 所直接连接的 token,通常没错。换句话说,坑是填了,不过妾身不明,不知道跳进了啥坑而已。妾身不明是因为 knowledge poor,一旦有了大数据或有了 HowNet 类的本体知识,knowledge rich 了,也就可以验明身份了。

白:
穆斯林比旧中国好。说好了四个就不可以多。再耍流氓也只能在四个范围里耍。

李:
其实不是。这个问题我想过很久:世界上的语言五花八门,主要类型的语言都有一个突出的共性:就是句型非常有限,不过百(主要句型不过二三十个) 。主要原因是,句法上 arg structure 的坑是有严格的数量限制的,不过三。超过的部分肯定属于另类,那就打入另册 mods 。但实际上,语义层面的 args 和 adjuncts 的界限,比句法上的 complements 和 mods 的界限 要模糊得多。这就是为什么 hownet 里面的坑,比 句法词典里面的 subcat 的坑,有时候更多。本来二者是有映射呼应(correspondance)关系的,但从纯粹语义角度考虑,有些 mods 需要被拉进坑来,语义的本体定义才完整。这是我看 HowNet 董老师的处置得出的体会。

考清华那句也是醉了。语义上的 args 包括:

考-清华 【school】
考-研究生 【graduate program】
考-数学【knowledge】
考八十五分【RESULT】

加上主语 ”他“ 就是 5 args,即便把补语“85分” 当成后置 mod(当成谓语亦无不可),也有四个 args,这不符合 arg structure 原则上不过三的普世句法(UG)。我认为,正因为普世句法有这个args不过三的原则,才使得人类的语言的结构变得 tractable,人类语言因而可理解,方便了交流。三个 args 的排列组合可达 6 种,加上其句型变体可控制在百种之内(常用句型也就二三十个),几乎达到了人脑短期记忆的极限,哪怕再加一个,就几乎不可收拾了。人脑很可怜的。不得不佩服自然语言架构的恰到好处:说语言背后没有上帝是很难让人信服的,难怪乔老爷坚持普遍文法是人天生的、普世的。

可是逻辑语义上,同一个谓词可以有很多 args 的,这就造成了思维内容与语言表达的矛盾。自然语言又是怎么解决这个矛盾的呢?思维上的多坑,到了文句的句法不允许有这么多坑,怎么办?

白:
这是理论问题不是技术问题。技术问题是,准备了俩坑,来了三个萝卜,怎么处理?

李:
有了理论,技术还不好办?纲举目张啊。
技术就是:
syntactic parsing: 耍流氓
semantic parsing:根据 HowNet,教育流氓从良。
也就是,没知识就耍流氓,有了知识立地成佛。

白:
技术就是,其中一个萝卜历史上做mod居多,果断降级

李:
历史不历史,那是语言处理的时候,选择谁 out 的一个数据依据。关键是降级:萝卜多了坑不够,不降级还能怎么着?这才叫:英雄所见略同。

你那一路也行,但是还是重负前行。这个从大数据来的历史 不管怎么表示和使用,都是一个很大的 overhead

白:
在中间件里,matcher是极其轻装的。

李:
中间件庞大。call 它一下,等价于一次信息检索??这个也许 overhead 不大,可是怎么对付优选语义呢?不是相谐还是不相谐,而是多大程度相谐?或者比较另一可能,更相谐还是更不相谐?多大程度相谐是个无底洞,不说它。更相谐与否,就是一个是否判断。这时候提交的是两对。两次在线检索 才能在线比较计算大小,是不是?在线是因为无法预知哪两对需要比较,无法预先计算好。

回到白老师上面的问题:盖房子的“盖” 句法上似乎大家都认为就是两个坑:一个主语 一个宾语,who 盖了 what,但是从语义的本体定义和结构看,至少有三个坑: 【who】 盖了 【what】 by【what materials】。我常把这种多出来的语义坑看成是处于 args 与 mods 边缘地带的东西。还有一个典型的例子 translate:绝大多数动词最多有三个 args:主、宾、补足语,但是 translate 四个比较合适:[who] translates [what] [from what source] [into what target]。语言实践中,PP(from)常被当成状语,而不是arg,有人把 PP(into)也当成状语。这就是 args 降格为 mods 的结构处置现象。

面对萝卜多坑不够的语言表达困境,一般而言,主要是两个路子,(1)一个是迫使语言把多个 args 分散到不同的句子去表达,这样一来每个句子的结构还是在限定的坑数之内,subcat upto-3-arg patterns are very tractable;(2)给 args 降格:降格为理论上随机的 mods。由于(1),于是产生了句法的主语、宾语,可以对应10几个不同的逻辑语义的坑。

刚刚 parse 了白老师的句子,看看目前这个根据语言学句法原则制定的parser怎么对付多于3的萝卜, 结果是:

哈,果然。遵循普世文法来模型自然语言的 parser 采用的是降格,策略(2):“清华”的 arg 和 “研究生” 的 arg 都被降格成mods,只剩下 “数学” 作为 head N,堂堂正正填了宾语的坑。作为句法 parsing,这种处理是符合语言架构原则的,非常合理。但是作为深度分析和语言理解,句法被降格的成分,应该重新“升格”到 args 的逻辑语义 slots 去,语言深度解析才比较完美。逻辑升格了,其他句子的 “考清华” 或 “考研究生” 的说法,就会与这一句的说法语义一致,可以 unify。这个升格的任务,也应是语义模块的任务之一。语义模块不仅要填写句法上省略的 hidden args,而且要把部分mods升格为 逻辑的 args。这些 mods 是人类语言表达的时候被 UG 下意识降格的成分。

假如自然语言不是上帝为人类交流而设 假如我们为机器设计语言 我们完全可以扩展坑和句型的数量。Hownet 几个坑, 句型就几个坑 一一对应。不用现在这样,先句法句型入手 然后再 role labeling 填逻辑语义的坑。

白:
其实我并不关心上限是几,只关心超出上限了怎么办。hownet坑的供给比较充分,但是也很难说一定不会超出上限。(董老师可以试试“这场火多亏消防队来得及时”)

 

【相关】

【李白对话录系列】

中文处理

Parsing

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

《朝华午拾》总目录