科学网

 找回密码
  注册
科学网 标签 POS

tag 标签: POS

相关帖子

版块 作者 回复/查看 最后发表

没有相关内容

相关日志

【语义计算沙龙:坐而论道谈“的”“地”】
热度 2 liwei999 2016-6-26 14:44
【立委按】 以前在语言学圈子里有些高雅的沙龙,譬如在冯志伟老师回忆 中津津乐道过的语言学沙龙,每周一次,通常在北大,参与的圈子很小,都是精英之精英,朱德熙(语言学大家,北大副校长)、陆俭明(汉语语法学家)、马希文(计算语言学家,传奇人才,白老师的导师)、冯志伟(计算语言学家)等。坐而论道,雅致之极,令人羡慕嫉妒恨不能入。如今时代不同了,这种沙龙还有吗?回答是,有,譬如白老师主持的【新智元语义计算群】即是:谈笑皆鸿儒,往来有白丁,微信群使得高大上的沙龙平民化了,但高度、大度、上度不浅反深,盖因所延揽的精英早已不再局限于小小的京城,而是遍及全球。白老师树大招风,与NLP有关的华裔背景的顶级专家学者毛姑姑也有90%了,加上赶来的可畏后学,或高论,多潜水,胜景跌出,风光无限。甚至连中国NLP旗手董振东老前辈也上了“贼船”,乐在其中。此番繁荣,拜技术所赐,先给张小龙敬个礼。 白: “这本书的匆忙de出版,险些坏了大事。” 这里的“de”,是“的”还是“地”,为什么? 如果按照“从里到外”的原则,是“匆忙de”先跟“出版”结合,彼时“出版”尚未被强制,因此还是满格的动词属性,de理应为“地”。但是……个人语感为什么倾向于“的”,而且理论上找不出理由。 “今天真遗憾,错过了大师的精彩de指挥。” 这个就是百分之百的“的”了。 我: 既然白老师爱钻牛角尖儿,咱们就钻钻。 白: 难道这个“指挥”不是被强制的? 我: 不能说 100% 可能是 90%+ 吧。验证的话,可以用大数据。 白: 大数据里有错别字 我: 哪怕大数据里面出来的结果是 100%,用“超大数据” 也会发现不是 100% 而且不仅仅是由于错别字。 白: 验证如果找100个文字编辑,我没意见。 我: 这里面的道理就不是大数据这种表象了,而是某种语言学。 动词概念被性状概念的词修饰,在具体语言中的形式应该是怎样的?就是这个问题。到了汉语,默认的形式是:(1)前置 (2) 加“地”。凡是默认 必有例外。如果 大数据发现了例外 或者 100 个文字编辑的内在句法趋向于一种例外的结果 这个例外就有语言学上的说法。 这里面还有一个微妙之处:口语中是de1 de2不分的,因此上述形式的讨论只限于书面汉语,而书面汉语受到了文法规范化教育的灌输。因此至少从一个层面看,这个问题就是一个 moot point,因为每个人的受教育程度是不同的,而每个人的儿童时学会语言的过程则是相当类同的。这二者打架的结果就会出现不一致,因此 100% 很难。如果聚焦到 100 个文字编辑做裁判的话,实际上是放大了教育的影响。有意思的问题于是成为:本来 “的”是 de 的默认,而非默认的“地”的使用是受教育的结果,因此文字编辑应该趋向于在形状类概念修饰动词性概念的时候,使用“地”而不是“的”。但是,这个 case 却不是(假如白老师的语感或修养靠谱的话),正相反,受过教育的人在这个 case 中,更趋向于用 “的”。这是为什么呢?这里面必有更深层的说法。 还要继续吗?或者谁继续牛角尖下去? 白: 其实,我是在对“从里到外”和“从左到右”的原则在质疑。如果“从左到右”,名物化结构强制的痕迹在不断加重,用“的”就理所当然了。如果“从里到外”,强制在外层,里层在不确定情况下会追随标配。 我: 其实我也正想说到这点儿,就是发散太远,还没收回来。 白: 所以,我认为是“从左到右”的分析策略在起作用。 我: 左右就是词序形式。抽象一点,不是词序,而是【层次性】与【去层次性】在语义表达或理解中的矛盾体现。这在句法学界已经打了很久很久了。层次性是一派,去层次性(扁平化)是另一派。公、婆各有理。 白: 不需要那么极端,就是已经读进来但还没有构造成树的成分,是完全被动地等在那里,还是对后续的消岐有所影响的问题。 我: 层次性的理解涉及多性状概念的 scope 边界,这是乔姆斯基短语结构的真义。去层次性的理解不强调这种 scope 的严密性,而是把他们的配置看成是自由搭配。这是为什么 dependency grammar 的结构树放弃非终结节点的表达。 白: 结构强制发生在有明确结构预期的时刻,而不是真正等来了结构强制对象的时刻。 伟哥可以顺带看看“恢复疲劳”那段。 我: 层次性一派的假设: x1 de x2 de x3 == ]] 去层次性一派的假设: x1 de x2 de x3 == x2 de x1 de x3 两个假设都可以找到语言事实的支持。 白: 应该有 强去层次 和 弱去层次 之分 强:等价;弱:sometimes等价 我: 相信层次化的理解和去层次化的理解,在相当多的人中其实是模糊的。人的语义,无论表达还是理解,都充满了模糊性,而这种模糊性基本上也不影响语义的语用。换句话说,怎么说都可以,人类在交流中基本不 care。 白: 对分析策略似有影响 我: 歧义不仅可以保留或休眠,直到语用,甚至可以 beyond 语用,一直到死:严格说到死的歧义超越了交流,不能算歧义,最多算伪歧义。从这一点看(伪)歧义,就发现很多问题是人自找的;董老师也说过类似的意思。“人” 指的是系统设计师。 白: 又漂了 我: 漂是因为某个思路还没到终点,意犹未尽,很难受的。 回到分析策略,自底而上最实在。自底而上与层次化自然相配,但也不必然采纳层次化的 representation。 说说 恢复疲劳 吧。这是个固定用法 词典化的条目。 白: 结构强制是个特殊的操作,如果承认在短语“这本书的不出版”中,“不出版”是个状中结构,而再外层是个定中结构,于是结构强制就发生在这两层的衔接当中。“这本书的匆忙de出版”站在层次观点也是一样的,但我质疑层次结构在先结构强制在后。 我: 虽然汉语的 动宾句法 可以有 n 种逻辑语义,但是作为 open-ended 的句法语义解读,这 n 种解读不能是非自然的或满拧的语义。“恢复”与“疲劳”就是满拧。里面省略了的 FROM 就是反映这种蛮拧的。如果 FROM 不出现,那么必然要词典化 用记忆去绑架。 白: “维持骚乱”的说法也成立 我: 如果要探究为什么这种乍听上去矛盾的说法进入了人类的语言 被词典化,简单的说法就是约定俗成。深究的话 其实是因为矛盾的双方是共现频率极高的相关概念。因为高度相关,所以本来可以明晰的连接双方的句法手段(词序啊,小词 from against 啊等)就显得太啰嗦,偷懒的人开始省去这些句法元素 共同体开始接受这种省略。最后就进入了集体的固定用法的记忆。“从疲劳中恢复” “恢复疲劳”;“维持和平以防骚乱” “维持骚乱”。 白: 我的观点是,分析不在乎是不是词典化,生成在乎。哪怕是第一次看到这样的组合,也会放行的,因为张力的指向一览无余。 我: 分析不在乎,是语义不落地,只是休眠。管它什么宾呢 动宾是无疑的。 白: “维持骚乱”就不必有什么固定记忆,一看这俩词儿,就知道是从不正常状态努力进入正常状态。 我: 没进入固定记忆,是还在过程中。 董: 知网词典的词语,与两位讨论的有关,供参考: W_C=打扫房间 G_C=verb S_C= E_C= W_E=clean the room G_E=verb S_E= E_E= DEF={clean|使净:patient={room|房间}} RMK= W_C=打扫垃圾 G_C=verb S_C= E_C= W_E=sweep away rubbish G_E=verb S_E= E_E= DEF={remove|消除:patient={waste|废物}} RMK= W_C=打扫卫生 G_C=verb S_C=PlusEvent|正面事件 E_C= W_E=cleaning G_E=noun S_E=PlusEvent|正面事件 E_E= DEF={clean|使净:StateFin={spotless|洁}} RMK= W_C=恢复疲劳 G_C=verb S_C=PlusEvent|正面事件 E_C= W_E=recover from tiredness G_E=verb S_E=PlusEvent|正面事件 E_E= DEF={BeRecovered|复原:StateIni={tired|疲乏}} RMK= W_C=恢复知觉 G_C=verb S_C=PlusEvent|正面事件 E_C= W_E=recover consciousness G_E=verb S_E=PlusEvent|正面事件 E_E= DEF={BeRecovered|复原:StateIni={dizzy|昏迷}} RMK= W_C=救火 G_C=verb S_C= E_C= W_E=fight the fire G_E=verb S_E= E_E= DEF={remove|消除:patient={fire|火}} RMK= W_C=救生 G_C=verb S_C=PlusEvent|正面事件 E_C= W_E=lifesaving G_E=noun S_E=PlusEvent|正面事件 E_E= DEF={rescue|救助:StateFin={alive|活着}} RMK= W_C=救穷 G_C=verb S_C= E_C= W_E=help the needy G_E=verb S_E= E_E= DEF={rescue|救助:StateIni={Circumstances|境况:host={group|群体}{human|人},modifier={poor|穷}}} RMK= W_C=救命 G_C=verb S_C=PlusEvent|正面事件 E_C= W_E=save somebody's life G_E=verb S_E=PlusEvent|正面事件 E_E= DEF={rescue|救助:StateFin={alive|活着}} RMK= W_C=救灾 G_C=verb S_C=PlusEvent|正面事件 E_C= W_E=provide disaster relief G_E=verb S_E=PlusEvent|正面事件 E_E= DEF={rescue|救助:StateIni={mishap|劫难:cause={NaturalThing|天然物}}} RMK= 白: 比如“打击卖淫嫖娼”为什么不能是“打击卖淫 嫖娼”而必须是“打击 卖淫嫖娼”?就是因为一个正面一个负面,是拧巴的,两个正面,就顺当了。这说的是sentiment对分析的反作用。 我: “维持骚乱”对我这个个体 目前处于一种不接受的状态。并不因为拧巴 我就接受它合法。如果我是语文老师,我会判错 我自己也避免这样用 也不会这样用。但是如果共同体在这个演变过程的终点选择接受 也就是选择词典化,那么我只得也选择接受 并加入我的词典。这是其一。 其二,拧巴的确在语言交流中起作用。拧巴迫使人放弃默认 去探索其他的语义路径 达成理解 虽然心里可能依然别扭。心里别扭是因为还没有词典化 黑箱化。 白: 参加维和部队,到非洲去维持骚乱。 好点没? 我: 有了上下文,当然别扭感好一些。(同理,我也可以这样加上下文:恐怖主义分子猖獗得很,他们要维持骚乱,我们怎能坐视不理。) 在 sentiment 中,有些故意矛盾的说法来表达讽刺,也是这个拧巴理解的过程。以前说过的 thank you for misleading me,thank 的正面褒扬与 misleading 的反面 是拧巴的。理解放弃了默认,选择了 misleading,是客观sentiment对主观emotion的胜利。thank 的正面语义因此消失,被讽刺取代。 白: “感谢你八辈祖宗” 我: 英语的 improve 是这样一个褒义词,以至于它不在乎宾语是正面反面。可是 维持 在汉语不是,因此“维持骚乱”的别扭感更强,除非是置于合适的上下文,或被语言共同体词典化绑架。 宋: “这本书的匆忙的出版”和“这本书的匆忙地出版”都是合乎语法的,而且都是指称语。深入一层,“匆忙的出版”和“匆忙地出版”都受“这本书的”修饰,也都是指称语。再深入一层,“匆忙的出版”中的“出版”是指称语,“匆忙地出版”中的“出版”是述谓语。“匆忙的出版这本书”语法上是错的,“匆忙地出版这本书”没问题。一般来说,动词V的语用功能既可能是指称语,也可能是述谓语,依靠它的句法位置来区别。被“Adj的”修饰的V是指称语,被“Adj地”修饰的V是述谓语。修饰后得到的短语,“Adj的V”是指称语,“Adj地V”与V一样,既可能是指称语,也可能是述谓语,依靠它的句法位置来区别。 我: 基本同意宋老师。 顺便提一句,感觉与白老师对话的时候,常常是,似乎是两股道上跑的车,这不影响互相听得见;这两股道不是完全平行的 而是中间老有交叉点。仔细想来,估计是白老师是广度优先的对话算法;而我是深度优先的算法:一条路径不穷尽不愿意回头,就是所谓 “漂”或发散性思维。因为对话是在有限时空中进行,无论什么算法都不可能穷尽路径,因此就造成白老师提纲挈领 总站在云端俯瞰的效果,而深度优先的算法就成了啥了,捡了芝麻,丢了西瓜的印象。宋老师则不同,广度深度都有,但往往是隐而不发 一锤定音。董老师更是大师了 拈花微笑,howNet 拨千斤。就没有能超出 HowNet 的,简直就是如来佛的手掌心。 董: “出版”,这对于Hownet曾有重要意义。HowNet当年就此要回答两个问题:第一,“出版”(或类似的“计算”、“分析”等)在汉语里也类似于英文既有动词词性,还有一个名词词性吗?这涉及在知网词典中,它们应有两个词条,还是只有一个词条?第二,“这本书的出版”和“这本树的不出版”,在理论意义上它们的区别是什么? “出版”的问题,HowNet与宋老师是一致的。以前在我们对这个问题的说明时,我们说:“出版这本书”和“这本书的出版”中两个“出版”在核心语义上没有差别,所差的是:前者是有过程的,而后者是静态的,是一个事实。用比喻说,前者是一段视频,后者是一个镜头。这也就是宋老师的述谓性的和指称性的理论。HowNet基于这样的认识,“出版”这样的词语在词典中,只有一个词性,即动词,但对应着两个英文词条,动词和名词。 白: “这本书的出版”揭示的结构强制现象概括为三句话:1、修饰语决定整体的词性;2、中心词保持原有的词性;3、修饰语填中心语的坑。 我: Ontology 是逻辑的 高于语言的。在 ontology 的顶层 也有类似词类的东西,可以称作 逻辑类:逻辑动词 逻辑名词 逻辑形容词。这个思考在hownet 得到印证。我个人的这个思考发源于对世界语的钻研及其与不同类语言的比较。我学过法语 俄语 加上英语 汉语 世界语,有足够的表征支持跨语言、高于语言的逻辑类的探索。特别是世界语的构词法 对于这类研究的启示,当年感觉是醍醐灌顶。 白: 中心词的词性也可以“嫁鸡随鸡”,强制前保持原有词性,强制后由修饰语决定。此处特别容易走向拍脑袋。 我: 强制前强制后,原逻辑类都是恒定不变,它是这个语词概念的本质类别,不随句法词法而变。到了特定语言 会有一个类似的 field,俗称 pos,这个是可以改变的。但是传统上 nlp 定义的 pos 任务 很容易过火 过犹不及 结果是让开发者陷入依赖pos的误区(见【 中文处理的迷思之二:词类标注是句法分析的前提 】)。尤其是照搬英语pos做法到汉语的人 特别要警惕 pos 的陷阱。【 迷思 】里蕴涵很多只可意会的实践体会和哲学思考,说给世界听 但并不在乎世界听不听。陷阱本就是为人预备的 栽进去也没啥 不过是重复我们曾经的苦难而已。不说不忍,说了也就是菩萨心肠。 quote 需要说明的是,笔者并不反对先POS后Parser的中文处理策略,只是指出POS并非Parser的先决条件,还有一种句法直接建立在词典之上的一步走的策略。顺着这个思路,一步半的策略也许更好。所谓一步半,就是做一个简单的 POS 模块(算是半步)把词类区分中比较大路容易的现象标注好,并不求对所有词类施行标注。 这里要提的建议是:推向极端可以不做 汉语 pos,为了工程方便 可以做,但不要过火 不能依赖。 董: 说得太对了。我们在HowNet 那本书的最后单有一章,讲的是中文。其中批评了宾州中文树库,说那是照着英文套中文。特别举得例子是他们标注:年平均(adv)-增长3倍,同句中的年平均(adj)增长率,中文真是如此吗?我们中文的哪本词典里有如此区分词性的。英文词典里look是动词还是名词表的清清楚楚。我们中文是到真实文本中浮动的。英文的文法是百姓的文法,中文的文法是汉语学家的文法。 清: 董老师分析的透彻! 我: 董老师做 HowNet 的30年,所经过的思考,是我们一般人难以企及和想象的,所以我说,真地就好像如来佛的手掌心,有时候我们自以为自己有什么创新思维,最多也不过是个孙猴子,还不等到得意,就发现董老师高高在上 拈花微笑呢。 白: 不过只要伪歧义控制得住,就算多几个POS,技术上也没什么大不了的。至少这不是个技术问题。 我: 问题是,这些都是相互关联的。多数人,特别是没有经过磨练的新毕业生,一头栽进去,根本就无法控制伪歧义。汉语处理一不留神就是个泥淖。 白: 毕业生学什么课太关键了,学了错的课,时间还不够用来消毒的。 杨: 精辟! 白: NLP的精妙所在就是纵向不确定性(一个位置上取什么标签)和横向不确定性(哪两个标签之间有关联性,独享还是共享)互相交织,最后还给出一个确定的解。 我: 就好比一个迷宫。虽然说走出迷宫 并非只有一条路径 但能走出来的路径真心并不多,而且每条到达终点的路径都必然七曲八拐 暗礁险滩。可以展示最终的形态 很难展示历经的过程。有人认为 只要最终形态是相对确定的 这个路径就必然可以根据最终形态学出来。这就是黑箱子的哲学。似乎天然可行 也赢得了全领域 甚至全人类(大部分是外行)的理所当然的认同。我称它为学习乐观主义。有没有 catch 只有天知道 白老师知道。 白: 七拐八拐真心不是障碍,障碍是目标函数是什么。 我: 七拐八拐关涉多层,不也是 毛毛虫 的一个部分? 【相关】 【 中文处理的迷思之二:词类标注是句法分析的前提 】 【白硕 - 穿越乔家大院寻找“毛毛虫”】 【置顶:立委科学网博客NLP博文一览(定期更新版)】 《朝华午拾》总目录
个人分类: 立委科普|3841 次阅读|2 个评论
【新智元笔记:词类消歧没那么漂亮,也没那么重要】
liwei999 2015-12-4 09:47
吉: “结果是大家误以为,必须做 POS,而且 assume POS 是个 solved problem”,感觉这句话有道理! 朱: 的确这么理解的。我们一直在用,一般工具分词后就标上pos了 我: POS 可以用,当不要只用它,也不要指望它。只用它做不出实用系统。指望它常常怪罪它,把自己的无能,归罪于 POS 的无能。 比较忌讳的是所谓 “铁路警察各管一段” 的研发思想。句法做得不够包容鲁棒,出了问题,就踢皮球,追到 POS。然后,不断在 POS 上打补丁。POS 的时候条件不成熟,再怎么打补丁也擦不干净屁股,结果是本末倒置地做开发。工程上,任何复杂系统都应该模块化,但并不是说,模块之间一定要泾渭分明,其实也做不到泾渭分明。宁可把 parsing 搞得复杂,也不要没完没了折腾 POS。 吉: 嗯!对!其实没有人规定pos是做ie或mt等的前提或必经步骤。 这样肯定不行。反思是有理论勇气的表现! 白: 机器学习只能解决从标记集里选取标记的问题,不能解决应该有哪些标记的问题。特别是,当标记还有深层用途的时候,不当的标记集会把困难放大。 我: 这个道理同样适用于 segmentation。很多时候,就这么没完没了折腾 segmenter,折腾得最厉害的,据说还运用了常识等,来帮助做一个好的segmenter,以期它可以支持好的 parsing。 思维应该反过来,segmentation 除了词典的修修补补外,算法和规则就这样了,我就是不完美,你也要娶我进门,使用我,更重要是包容我。不要给我整容。你自己多修理自己就好了。只要包容,一样是美丽的婚姻。 刘: 标记是可以学习的啊,经典的工作是 http://dl.acm.org/citation.cfm?id=1220230 ,现在最好的Berkley Parser就是基于这个工作的 白: 这不是学习from scrach,只是refinement。而且树还是已经画出来的对吧。。@刘群  刘: @白硕 是的。如果要求全部自动学,那就是无监督学习了 但就具体应用来说,POS或者句法树是否真的比无监督学到的东西更好呢? 白: 无监督学POS,早年试过,不靠谱。 至少也要画树,不写字。 不写nonterminal 刘: 为什么要去学POS?一般没有必要 白: 你是说POS很好了还是说虽然不好但学不是出路必须自顶向下人工“构建”? 或者像伟哥说的那样,将就着用,在补丁上做文章? 刘: POS是人为的东西,没多大道理,在解决实际问题中也没多大用处,不学也罢 现在NN学到的word embedding在大部分情况下比pos好用太多 白: 这倒是 朱: @wei parser可信吗?够快吗?只要回答肯定,我们当然愿意用。其实作为使用者不存在是否相信pos的问题,因为我们没有选择 刘群: POS粒度太粗,区分性太差 湖那边是山: 哇,刘老师都不看好POS,出乎意料 看得出POS局限性真的很大 我: @朱小燕 你用 POS 做什么? POS 与 parser 相距那么大一截路呢。 PennTree POS tagset 定的标准就不好定了好几十个,其实有用的就三五个,那些功能词,分那么细琐没有什么道理。名形动副介就差不多了,其他的都可以枚举。 如果用到中文,这名形动副介都有麻烦,一方面太大,另一方面边界不清。首先是 动和名 的区分(工作,学习),不如不分,就叫逻辑动词好了。其次是动词和形容词,在汉语,也不如直接照着 HowNet 的 top 去定义逻辑的动词(ActionBehaviour)和形容词(AttributeValue) 好了。硬要从句法角度做区分,不如在上面再加一个“谓词”的老子罩住它们。 最后是动词和介词(副动词),功能上也有相当重合。当然,介词是封闭类,可以词典强盗绑定,不用参与POS消歧。 这么一看,POS 在汉语不伦不类,还不如只把他们当做 HowNet 的顶层逻辑类,词典绑定,不做 POS 的所谓 tagging,因为没的可 tag 呀,就是查词典就搞定了。 李志飞: @白硕 @刘群 关于pos的unsupervised的学习,2009年时学术界热衷non-parametric Bayesian 时很多人做过。目的就是不commit to 某一种特定的pos 标注体系,而是由数据和domain去自动决定pos的tag set 我: 词无定类,入句 。。。不用定了。 都入句了,你还定啥,就直接句法分析不就是了。 原以为,先用类句法的条件去分离,然后再用分离了的POS去支持句法。可一来一回,就被绕进死循环去了。 最可笑的例子是,先把“工作、学习”这些逻辑动词千方百计地查不同的上下文,搞定它是名词,然后 assume 它与其他的名词(桌子,空气等)有共同的特性,可以概括性地做句法。结果是,句法的东西差不多要在 POS 里重复一遍,而且是拙劣的重复。 刘: POS对一些形态丰富的语言来说,还有点用处,对中文这样的语言来说,真没什么用。 李: 记得上课时老师让算过英文的H(pos|word),好像是很小的,所以从实际工程角度,英文pos必要性真的不大,不知道中文是否也这样,尤其大家对word set都没达成共识情况下 我: 英语的 POS 可以帮助一些,但也不能过火。 POS 做些大面上的就可以了,不能把句法降格到POS去做太细的活。既没必要,也做不好。 对于形态丰富的语言,俄语、德语之类,POS 基本上是 Morphology 模块的 side effects,也不是要单独做 tagging,因为词尾分析所给的信息比 POS 要具体多了,POS 只是 taxonomy 的上端,自然的 derived 的结果。 基本上,整个领域把 POS 独立出来作为一个任务,给人自给自足并且学一下就是 solved problem 的印象,是个很大的误导。 白: 伟哥问朱老师的话我也想问。你们主要用POS干什么?@朱小燕  沈: 英语PTB POS tag集设计的一个原则就是能否在3-gram的窗口里solve,不能排岐就不区分 例如and都是IN,例如TO单独成一类 我: 这种设计原则就是问题的来源,当然历史上是有故事的。这叫自娱自乐原则。搞一个自己觉得可以搞定的任务,后去能有多少用不是主要考量,然后让共同体去竞赛谁做得好,最后宣布做得最好的系统是把这个问题给 solved 了,都 solved 了,还留下这么多后遗症? 白: 凡是我这把锤子砸不到的都不是钉子。 长的丑,别卸妆就是了。 我: 把主从连词(although,because)和介词混在一起叫做 IN 也是很典型的笑柄。 这个题目其实没有多少可论的了,就是大家都被误导过,时间长短不同而已,都在这里栽过跟头,现在多数都理解了,要放下它,它没那么重要,不过就是帮助句法的前处理而已,用得合适,可以简化一点句法。 POS 还不像 segmentation,POS 本身不是目的,它只是帮助下面的工作。segmentation 本身可以是目的。 沈: PTB框架下,POS只是中间结果,目的是最终的句法分析,从这个角度看,这样设计也是有一定道理的。在保证准确率的前提下,降低后一步骤的perplexity。 我: 历史上看,有一定道理:梨子总要一口一口吃。 它起到了模块化的作用,也鼓励研究者把复杂问题单纯化。推动了模块内部的算法比拼和方法的进步。 但这个历史功绩经不起时间的检验,到今天的境界和理解深度,它就显得那么毛病多多。 它是一个陷阱,很容易把初学者绕进去。 【相关】 【 中文处理的迷思之二:词类标注是句法分析的前提 】 泥沙龙笔记:汉语牛逼,国人任性!句法语义,粗细不同,POS 靠边 【新智元笔记:中文处理中的POS、搭配和句法】 2015-12-01 【新智元笔记:李白隔空对话录,关于词类活用】 2015-12-02 【置顶:立委科学网博客NLP博文一览(定期更新版)】
个人分类: 立委科普|2999 次阅读|0 个评论
【新智元笔记:中文处理中的POS、搭配和句法】
热度 1 liwei999 2015-12-1 23:02
白: 今天再砸一块砖:大家说说看,词类标记(POS)有用吗?什么地方有用? 我: 有用,但对于中文parsing不是必要的,词典里的分类是必需的,pos tagging 模块不是。词典里的分类标注可以是 pos 或 pos related 的大类,也可以是更细化的语义类别: 人 家具 电器 等,后者对汉语分析更有用。 白:有些语言有形态变化,形态对POS是敏感的。汉语呢?形态不发达是不是POS就失去了一大依托?另外一大依托来源于“分布”,也就是说用POS写CFG规则,恰好同词类的相互替换都满足同样的规则,可进入同样的句法结构。这个就有点扯了。大部分伪歧义都这么来的。 我: 对,就是扯,成了鸡-蛋的问题了,需要句法 context 来定 POS,然后需要 POS 来简化句法。 聚类总是有用的,它是隐性形式,没有聚类,就没有规则的抽象度。一切靠直接量(显性形式),规则会组合爆炸,除了特别狭窄的领域和用场,是不可能 work 的。功能词可以靠直接量,实词是开放集,一般不能靠直接量,而是要靠聚类标注这种隐性形式(implicit form)。但这并不是说 POS 作为一个模块是必要的,因为聚类可以直接来自词典的标注,歧义的就标注歧义好了(keep ambiguity untouched),反正到了句法阶段,有上下文。 如果细说,词典里面标注的 POS 应该是逻辑POS,而不必是句法 POS。举例来说,工作、学习这些词就是逻辑动词,没有歧义,标在词典就好了,可是以前的POS大都是从句法来考量,于是认为这些词POS有动词和名词的歧义,需要增加一个POS模块在上下文中去消歧,然后再送给句法模块,其结果就产生了鸡和蛋的相互依赖问题,反而捉襟见肘扯不清,容易导致错误放大(error propagation,前面 POS 消歧错了引致句法parse错,所谓POS消歧很多时候是强人所难,因为 POS 在浅层,上下文条件通常不如 parsing 的时候成熟,硬逼迫 POS 去消歧,而不是 keep it as is,其结果是句法擦不完的屁股 ) 。 这些逻辑POS(如逻辑名词、逻辑动词、逻辑形容词)是语义(lexical semantics)分类的最上层,沿着taxonomy (借助类似知网、WordNet等 hierarchy),可以一路往下走,大概走到1000左右的类别数,就可以收了,因为再多,无论人用还是机器用,都有点受不了了,而且过细的分类,对分析理解也没多大用处。 WordNet 的 synsets 数目与词条量相当,都是万这个级别,HowNet 也类似,在万这个级别上。这些语义大师们追求的是自身语义概念系统的自足,不约而同的一路细化到底。 白: 小类多了也麻烦,不敏感的地方好好的一个规则非要分裂成好多个。 我: 但是实际上对 NLP,只有飘在上面的 1/3 或 1/4 的前 1000 个才真正有价值。 白: 这应该可以量化,究竟到哪里就不那么敏感了。 我: 另外,有些词 WordNet 标注有 5 个义项,对应 5 个 synsets,可是砍掉过细分类后,会发现,其实只有两个大的义项区别。譬如,头两个标注的义项其实差别只在 nuance,另三个也是大同小异。对于这种“人为制造”出来的过多歧义,是不用理它的,除非应用场景需要做这种区分(譬如恰好要机器翻译到一个没有亲属关系的目标语言,其翻译对等物不同;而在亲属关系近的语言之间做机器翻译,往往粗线条的义项区分就足矣了)。对于分析,这种细分是没有价值的,只会添乱。 白: 比如,打电话的打,和打酱油的打,对搭配敏感,对句式不敏感。搭配属于波动性,句式属于粒子性。但是义项把他们搅和在一块了。因为搭配敏感性造成的差异,应该从句法规则中剔除。 我: 那是,这就是个性与共性的关系,表现在个性语义搭配与共性动宾关系。说到底就是搭配词典与抽象句法的接口。完全可以既分开又连接。分开的时候只考虑句法,连接的时候解决语义。this is a solved problem for long,在实践中有好几种很漂亮的解决途径。 白: 搭配是个统计现象,不决定合语法性。 我: 关于 POS,以前详细论过,与白老师和王伟等都有相当共识,应该是站得住脚的:见【 中文处理的迷思之二:词类标注是句法分析的前提 】 还有这篇讨论记录也很相关: 泥沙龙笔记:句法语义,粗细不同,POS 靠边 。 搭配是强盗逻辑,可以从大数据的用法统计上找到依据,本质上还是属于词典的特性。属于成语或半成语的固定搭配、黑箱子或半透明的语义组合,不具有纯粹的 semantic compositionality。人是在语言应用过程中死记的,机器当然应该词典化。为什么说“打酱油”不说“击酱油”,没有道理,就是词典绑架。虽然语义是词典绑架的,句法却不是,它完全符合句法的自由特性,可以遵从所有的动宾相关 patterns 的变换:打了酱油;酱油打了;把酱油打了;酱油不值得打;酱油没法去打;无酱油可打 。。。。。。只有在需要语义区分的时候,才需要做这种词典绑架与自由结构的连接(接口)。 白: 打了电话;电话打了;把电话打了;电话不值得打;电话没法去打;无电话可打。。。。。。 我: exactly,所以句法该怎么做还是怎么做,该怎么抽象还是怎么抽象,不能被搭配绑架。 马: “把酱油打了”我理解就是酱油瓶子打碎了 白: 不是啊,让人路过的时候捎带脚做个打酱油的事情,也这么说的。 马: 在这个语境下确实这个意思。 我: 顺带把酱油也打了。 马: 有“顺带”就没有问题了 白: 命令式也没有问题 我: 当然,把字结构的确与 动补合成词(e.g.打碎) 用在一起的概率,高于与 单音节动词的。与此议题相关的隔壁沙龙的讨论反映在 : 《立委科普:固定成语的不固定用法及其机器对策》: http://blog.sciencenet.cn/blog-362400-934716.html 白: 搭配是和句式正交的一种东西,体现波粒二象性。 湖: 1句法:打酱油,把酱油打了; 2语义:打酱油,打电话 3语用:把酱油打了,一指打酱油,一指把酱油瓶打了。 各位老师把语法、语义、语用都说全了 研究容易在三个层面间串 我: 语用不好串,可以搁置(通常语用相关的东西处于信息抽取模块里面,信息抽取放在 parsing 模块后面做比较合理,可以以一当百,以不变应万变,大幅度增强系统的移植性,以前反复论过这种 parser+IE 的系统架构的优越性),先把句法语义接口做好,其实是句法和搭配词典的接口。 困了,撤了。明早起来看各位的讨论。 白: 伟哥好把式 wang: 看了今天的讨论,收益匪浅!真是一个很好的学习机会!谈的都是干货,抓的都是硬骨头。 【相关】 《立委科普:固定成语的不固定用法及其机器对策》 【 中文处理的迷思之二:词类标注是句法分析的前提 】 《泥沙龙铿锵三人行:句法语义纠缠论》 泥沙龙笔记:汉语牛逼,国人任性!句法语义,粗细不同,POS 靠边 泥沙龙笔记:漫谈语言形式 泥沙龙笔记:骨灰级砖家一席谈,真伪结构歧义的对策(1/2) 泥沙龙笔记:骨灰级砖家一席谈,真伪结构歧义的对策(2/2) 【置顶:立委科学网博客NLP博文一览(定期更新版)】
个人分类: 立委科普|4614 次阅读|4 个评论
泥沙龙笔记:句法语义,粗细不同,POS 靠边
热度 2 liwei999 2015-10-5 14:24
泥沙龙笔记:汉语牛逼,国人任性!句法语义,粗细不同,POS 靠边 泥沙龙笔记: 汉语就是一种 “裸奔” 的语言 。有时连词序都顾不上了,哪个概念先出现在脑子就蹦出哪个,顾不上调整词序再说出来,全民族的“心直口快”综合征。这就是国人,这就是汉语。譬如,“鸭子爱吃”; “鸡肉猪肉不要”。宾语提前,连个介词也懒得用。经济啊,汉语。 白: 这个说明语序有冗余信息,谓词有坑,不怕宾语提前。歧义呗。 还不是要靠常识。两个坑啊,没有语义怎么行?语义呢,只能是隐性的形式,是词的分类,及其常识语义关系。 白: “鸡不吃了”。 隐形标记不是常识。 隐性标记是常识可以代入句法消歧的基础条件:“鸡我吃了,怎么着”? 白: 隐形标记可以对付90%的场景,剩下的才是真歧义,需要用真常识应对。 我鸡吃了,汤也喝了。 白: 这个没歧义,除非童话。两个坑,一个两可,一个唯一。唯一优先。 跨标点符号的,可以视同缩进 NP1+NP2+Vt 这个是真常识么? 白: 不是,还是隐形标记。 白老师把消歧的步骤列出来?鸡我吃了 vs 我鸡吃了。 “吃了我鸡”,“吃了鸡我”,都可以找到合适这么说的场景。可见语序在汉语自由到了可怕的地步。本来缺乏形态的语言是依赖语序的,可是汉语竟然如此任性!一副从心所欲不逾矩的东方汉子的气势,和尚打伞无法无天。 白: “吃了我鸡”是另外的意思,鸡是属于我的那种。 可以算,不过一般人还是不省去“的” 字。略显得有点拗口。 白: “吃了鸡我”少许有点不规范,但是从坑的角度没问题。因为动宾结构本来就是宾语优先的。 总之,啥语序都可以,没学过汉语的人是很难想象的,这与理论预期不符合。你衣橱里啥都没有,最后居然连语序这个比基尼都不要了。汉语牛啊。 白: 吃了我鸡,住了我房,还想赖账。这个是可以的。 其实汉语搞成多级的词袋模型是最贴切的了。 排除语序的因素? 我们这是为了 argue 而举例。统计上看,语序还是一个有价值的形式。 白: 语序因素都反映在本级NGRAM里。 那当然可以,ngram 是次序的. 白: 逮到填满坑的机会就往上一级抛。 我还是不懂你怎么区别 我鸡吃了 和 鸡我吃了 如果不带常识语义的话. 至少 代词常做施事这样的 heuristic 需要代入,才可吧。 白: 吃的两个坑,一个有生命,一个食物。我做食物,概率低呀。 邬: But I think we might use semantic at syntactical level 说的就是在句法里面暗度陈仓语义常识的. 白: 不是常识,食物是隐形标记,是语言学知识 邬: As in c++ template of template use and . 白: 可以认为就是subcat 这个的确是常识:吃的两个坑,一个有生命,一个食物。 生命 - 吃 - 食物 如果要把这个常识分解成 binary 也可以: 吃 - 食物 生命 - 吃 前者比后者可以有不同的优先级,代入语义后,消歧成一个。 白: 主题句是规范形式,可以纳入常规句法结构。 鸡不吃了,鸡我不吃了,都是。 黄: 这辆车吃油。 白: 鸡我不吃了还有一个同位结构,小概率歧义,是童话场景下专用。 二者的关系,也可以动态调用,常识 encode 在词典里面,让句法去调用。 白: 车吃油,是隐喻。隐喻在坑不搭配的时候才激活。 这就是我们当年引以为豪的 Expert Lexicon,非常合理,共性的归共性,个性的扔到词典垃圾箱。 白: 个性优先于共性 隐喻是破“格”。这个就是 Wilks 说的优选语义(prereference semantics)。任何常识语义都不是绝对的,不过是优选而已。 白: 回到统计,只不过分了个层。 怎么回到统计? 邬: 层是人为分的 白: 先让参与统计的伙计们相互够得着,然后就是统计。 这个在理。相互够得着不需要语义,是纯粹的句法操作。统计可以从大数据中提取常识,然后在被句法在线调用。大数据提取常识当然是线下的知识挖掘。 白: 也可以不需要句法,纯粹的语义操作。句法让统计顺手牵羊。太裸奔的语言,直接语义吧。 不需要句法纯粹语义理论上可以,实践上劳民伤财。因为句法是个轻武器,不用白不用。语义是个巨大的烂泥坑。 白: 需要的句法是不过脑子那种。 绕过句法做语义,舍近而求远。这个纯语义 Wilks 做过实验,只有理论的意义,没有实践的指导价值。 白: 用句法,前提是不那么裸奔,或者非裸奔的部分。这种当然不排除用句法。 当然难度大了,因为显性的形式没有,简单的句法不好用了。但是,统计上还是可以看到句法分布的痕迹。 白: 把几乎所有排列组合都写成规则,也是一说,不过麻烦不会比语义少。 其实,说到这里,句法语义可以统一来考量,不过就是规则的粗细而已。 邬: right 用 POS 这种隐性形式来做句法是经典的句法路子,是粗线条的句法。用 食物,生命,吃 等语义分类来做,就是细规则。粗的可以兜底,细的放在上面。都是词典给出的分类。操作是一样的。 白: POS不是真正的同分布类。 细的优先,不就是语义优先么。 POS 是 top,下面一步步走向语义的 taxonomy。WordNet 是这样 assume 的。当然,严格的语义系统不应该用 句法的POS 而应该用 逻辑的POS 做top。譬如 manage 和 management 虽然是不同的句法 POS,但是却是相同的逻辑POS(动作类)。 白: ”这本书的出版“ 类似。 POS是语言教学向语言处理进化过程中留下的阑尾。 这个我也批评过,汉语的 POS 不是 parsing 的必要过程,但是很多人认为是,这是一个迷思 misconception。 中文处理的迷思之二:词类标注是句法分析的前提 : 词类标注(Part-of-speech Tagging: POS)是汉语句法分析的前提么?没有这回事。 没有词类,怎么可能施行句法分析? 谁说没有词类?词典里给出的任何类别标注都是一种“词类”。 根据 keep ambiguity untouched 的经验法则,遵循 adaptive development 的基本原则,跳过 POS 的环节,让句法分析直接建立在词典信息的基础之上,是解决矛盾的一个有效方法。 矛盾就是:词无定类,入句而后定。 ngram 搞不定 POS,那还不如不搞它。 这个迷思糊弄了多少汉语NLP人啊,绑住了我们的手脚。 山重水复疑无路,跳过POS就是杏花村。就这么简单! 认识上的一个小跳跃,实践中的一个大进步。 就是这么一个诀窍, untold secret for long:具体来说就是,只利用词典里面的静态类别信息来做分析,无须倚赖专有的POS模块先行消歧。 【相关博文】 泥沙龙笔记:汉语就是一种 “裸奔” 的语言 2015-10-05 【置顶:立委科学网博客NLP博文一览(定期更新版)】
个人分类: 立委科普|3807 次阅读|2 个评论
中文NLP迷思之三:中文处理的长足进步有待于汉语语法的理论突破
热度 2 liwei999 2011-12-29 00:27
严格说起来,这不能算是迷思,而应该算是放之四海而皆准的“多余的话”:任何学科的理论突破都可能引起应用层面的长足进步,不说也罢。其所以归类到这个迷思系列,是因为这样的高论在中文处理界常常甚嚣尘上,有严重误导青年学子的危害。其结果是喊了多年理论突破,理论并没有突破,反而造就了一批民科妄想家(只是指出这个现象而已,对事不对人,有对号入座者,后果自负)。单这个后果还不算要紧,要紧的是这一说法为应用家的无能提供了心理挡箭牌,使得他们多年来畏畏缩缩,裹足不前:不是我们无能,是汉语太“个别”了(国民党的败将的口头禅就是如此:不是国军无能,是中共太狡猾了)。 汉语语法与西文语法真地如此不同,以致现有的语言学理论对它束手无策或难以实行了么?这是一个可以永远争论下去,没有绝对答案的问题。然而从应用层面,我们可以回答的问题是:在西文的语言处理中所使用的各种形式化手段和机制(formalism, mechanism and devices)对于汉语是否适用? 立委集20年NLP经验,可以负责任地回答这个问题:西文处理的机制和手段对于中文处理大多是适用的、可行的,也许有不够用的时候,需要机制的拓展(not necessarily 理论的突破),但总体而言是用得不够,是不会用、不善用的问题。语法虽然因语言不同而不同,但NLP武器库里的轻重火器大多是独立于具体语言之上的(language independent)。俗话是语糙理不糙的:拉不出矢,不能怪茅坑。 拿英语处理与中文处理的比较为例。诚然,由于汉语比较灵活,语言表达对形式化手段倚赖较弱,总体而言处理起来确实比英语要难。英语表达的形式化手段除了功能词(介词等),还包括词尾(如:-ed,-ing,-s,-able,-er),汉语没有完全对应的词尾形式,只有一些功能小词(譬如:了,着,过,们),而且这些词还常常省略。尽管英语在欧洲语言里面词尾是非常少的了,但是别小看这几个词尾对于简化词法语法分析的作用。中文处理较少这种便利。回到功能词上看,譬如介词连词,虽然英语有的,汉语基本都有,但是汉语省略功能词的时候远远多于英语,这是有统计根据的,也符合我们日常的感觉:往坏里说,中国人比较偷懒,说话不严谨;往好里说是,中国人很懂低炭,能省则省,汉语很灵活。举一个例子,可见汉语的省略是普遍的: (1) 对于 这件事, 依 我的看法, 我们 应该听其自然。 (2)这件事我的看法应该听其自然。 上述句子(2)译成英语,省去功能词是难以想象的。 这种缺少形式化手段的所谓汉语的“意合”式表达方式确实使得中文的电脑处理比英语处理困难。 这只是问题的一个方面,是从量上考察,即汉语的表达比英语往往更省略,更不严谨,更需要上下文。问题的另一面是从难点的性质上来看,中文处理遇到的问题究竟有多少是英文处理中没有遇到过的?我的答案是:很少。很多歧义问题省略问题,英语同样存在,只是不如汉语那么普遍而已。既然问题的性质基本相同,处理问题的机制和手段就同样适用。逻辑的结论就是:英语处理领域积累的经验和手段在中文处理中大有可为。如果有核武器攻下了英语这个堡垒,就没有道理攻不下汉语。只要不做上帝(因为只有上帝才是完美的),就没有裹足不前静待理论突破的道理。 其实,真正做过西文处理也做过中文处理的同行应该不难认同上述看法。我说的是“真正”,对西文处理浅尝辄止的不算(浅尝辄止的包括NLP硕士课程中的语法形式化游戏:S: NP VP; NP: Det? Adj* NN+; VP: V NP?)。如果你比较深入地implement过一个英语分析器,针对的是大批量的真实语料,你会发现:英语的深入分析所遇到的难点需要调动很多手段,需要很细致的工作,而这些手段和工作也正是中文处理所需要的。我常常这样跟朋友说英语处理和中文处理的异同:如果你做硕士作业,导师给你一周做出一个语言处理系统能够处理50%以上的语言现象,在英语是可行的,在汉语是不可行的。因为你可以下载一个免费POS Tagger,在POS基础上编制一套粗糙的语法交差。然而,如果你要面对真实语料做一个实用的语言分析系统,如果英语需要开发N个月,调动 M 个手段,那么用同样的时间和手段,中文开发也大体可以到位。形象地说就是,中文这座山是陡坡,英文的坡则比较平缓,但是两座大山的高度其实是相差无几的。如果电脑爬坡只求到达山腰,在英文是比较容易的,在汉语则很难。然而, 如果电脑爬坡的目标是山高80%以上的地带,所需资源和手段相差并不大。 中文处理有没有特有的难点,甚至难以踰越的障碍,需要不需要理论突破?回答是肯定的,但是很多难点是可以绕着走的,个别难以企及的问题是可以搁置的,因为上帝允许不完美的系统。无论如何,中文处理不能长足进步,是我们应用学家的耻辱和失败,而决不能嫁祸到理论家的头上。 处理尚未成功,同志仍需努力,立委与工匠同仁共勉。 【置顶:立委科学网博客NLP博文一览(定期更新版)】
个人分类: 立委科普|8056 次阅读|2 个评论
中文处理的迷思之二:词类标注模块是句法分析的前提
热度 1 liwei999 2011-12-28 16:59
词类标注(Part-of-speech Tagging: POS)是汉语句法分析的前提么? 没有这回事。 如果说为了模块化开发的方便,中文处理系统先行词类标注,再行句法分析,这种类似于多数英语分析器的架构从工程上看确实有一定的道理,但是词类标注并非句法分析的前提。 点破这一迷思的最直接的例证就是完全可以设计一个跳过POS模块的中文句法分析系统,事实上笔者目前研发的中文系统就跳过了这个环节。 有问:没有词类,怎么可能施行句法分析? 回答是:谁说没有词类?词典里给出的任何类别标注都是一种“词类”。的确,没有这些“词典的类别”信息,句法分析就没有抽象度,就难以编写规则来parse千变万化的语句。 POS 模块的本义在于词类消歧,即根据上下文的条件标注唯一的一个语法词类,譬如把同一个“学习”在不同的上下文中分别标注为名词或动词。前面说过,这样做有工程上的便利,因为如果词类标注是准确的话,后续的句法分析规则就可以简化,是动词就走动词的规则,是名词就走名词的规则。但这只是问题的一个方面。 问题的另一面是,汉语中的词类歧义特别严重(语法学界甚至曾经有云:词无定类,入句而后定),不但很多词都可以是名词或动词,而且动词和形容词的界限也很模糊。三大类实词在汉语中如此界限不分明,这曾经被认为是中文信息处理寸步难行的最大障碍。歧义如此严重的语言如果实行两步走的架构,有可能陷入错误放大(error propagation)的怪圈,即,词类区分的错误进一步造成句法分析的灾难。这是因为有些词类区分的条件在局限于 local context 的 POS阶段尚未到位,POS 模块过早地标注了错误的词类。 根据 keep ambiguity untouched 的经验法则,遵循 adaptive development 的基本原则,跳过 POS 的环节,让句法分析直接建立在词典信息的基础之上,是解决上述矛盾的一个有效方法。具体来说就是,只利用词典里面的静态类别信息来做分析,无须倚赖专有的POS模块先行消歧。如果一个词既可以做名词,又可以做动词,那就把两个类别同时标注到这个词上(另一种有效的做法是,只标逻辑动词,不标名词,因为差不多所有的词典动词都可活用为名词,给逻辑类动词在词典标注名词基本增加不了新的信息,这些选项都是系统内的协调的事儿)。编写句法规则的时候,对于兼类词(譬如动名兼类词 “学习”)与单纯词(譬如纯名词“桌子”)根据条件的宽松分别对待即可。 需要说明的是,笔者并不反对先POS后Parser的中文处理策略,只是指出POS并非Parser的先决条件,还有一种句法直接建立在词典之上的一步走的策略。顺着这个思路,一步半的策略也许更好。所谓一步半,就是做一个简单的 POS 模块(算是半步)把词类区分中比较大路容易的现象标注好,并不求对所有词类施行标注。 【 中文处理的迷思之一:切词特有论 】 【 中文处理的迷思之二:词类标注是句法分析的前提 】 【 中文NLP迷思之三:中文处理的长足进步有待于汉语语法的理论突破 】 【置顶:立委科学网博客NLP博文一览(定期更新版)】
个人分类: 立委科普|6811 次阅读|1 个评论

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-6-1 18:23

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部