李:
董老师的例子。
勉强回答了谁逃票翻墙。还有 谁进入 谁被咬死,暂时搁置。貌似汉语“连动结构”可以很自然一路顺下来。
白:
一路顺下来,是因为另一个坑都不是人。
那个“被地主放狗咬伤了腿”可以试试
李:
动宾离合词 “放狗” 带了个句法的 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:
我在句法树阶段,李老师也许句法(图)阶段,但白老师是在做这之后的深挖。
李老师,我个人认为那个长句分析怎样,意义不是特别重要,纯个人观点.那句可能还存在语病,何况说者不喘气,听者(读者)也得歇口气吧!
【相关】