手里有十年的政府工作报告,想知道推进后面常跟哪些宾语,发展前面常加哪些修饰语,这批文本反复使用哪些句法套路。按固定窗口统计词语搭配,只能看到挨在一起的词;推进了多年的农村土地制度改革,推进和改革隔了十个字,窗口一小就看不到这层关系。
依存句法分析给每句话标出词与词之间的语法关系,谁是谁的主语和宾语,谁修饰谁,不管两个词隔得多远都能连起来。依存句法模式挖掘在此基础上再进一步,把一大批句子的分析结果按同一种模式归类累加,找出整批语料里反复出现的句法关系。
在 TATOOLS 的【依存句法模式挖掘】里【上传文档】,TATOOLS 逐句做依存句法分析,按工具页选定的一种视角归类统计,可以看依存三元组和词性序列,也可以看动词论元框架或修饰对,每个模式给出出现次数、涉及多少个句子和多少份文件,并附原句作例证。
这篇教程先讲依存关系怎样表示,再用几句示例讲清四种统计视角各数的是什么,然后讲节点词、频次口径和文档检查,最后讲报告的读法和论文里的写法。
01
依存关系怎样表示
依存语法由 Tesnière 1959 年系统提出。它认为句子里每个词都依附于另一个词,被依附的叫支配词,依附的叫从属词,每条依附关系都有一个语法类型,整句只有一个词不依附别人,叫根。
以一句示例说明。
政府 大力 推进 农村 改革
推进 根,整句的核心
推进 → 政府 nsubj 名词性主语
推进 → 大力 advmod 副词性状语
推进 → 改革 dobj 直接宾语
改革 → 农村 nn 复合名词修饰
每条关系由三部分组成,支配词、关系类型和从属词。关系类型的标签沿用 Chang 等人 2009 年为中文整理的斯坦福依存关系,词性沿用宾州中文树库的标注。
依存关系按语法结构连接词语,和两个词隔得多远无关。推进了多年的农村土地制度改革,推进和改革之间隔了好几个词,分析出来仍是一条直接宾语关系。
TATOOLS 先把文本按标点切成句子,再逐句交给本站的依存句法分析能力,同时拿到分词、词性和依存关系三层结果。这个工具目前适用于中文文本。
02
依存三元组:句法关系的全景统计
依存三元组就是一条依存关系本身,写作支配词、关系和从属词。【挖掘哪种句法模式】默认选【依存三元组(dep_triple)】,TATOOLS 把整批句子里的全部依存关系按三元组归类计数,根节点不计入。
句 1 政府大力推进农村改革
句 2 各地积极推进改革
句 3 我们继续推进改革
推进 → 改革 [dobj] 出现 3 次(示例)
三个句子的主语和状语各不相同,推进带改革作宾语这条关系出现了三次。三元组是最直接的句法关系统计,也最容易出结果,适合先对整批语料做一个全景扫描。
报告的【高频模式排行】把三元组写成推进 → 改革 [dobj] 的样子,按出现次数从多到少排列。
03
词性序列:句法骨架
词性序列不看具体的词,只看连续几个词的词性排成什么样子。TATOOLS 取每个词词性标注的首字母,n 是名词,v 是动词,把连续 2 到 4 个词的词性首字母用加号连起来,作为一个模式计数。
推进 农村 改革
v n n
得到的序列 v+n n+n v+n+n
同一种词性骨架可以装进许多不同的词,推进农村改革和加快产业升级都是 v+n+n,深化体制创新也是。选【词性序列(pos_seq)】,TATOOLS 统计的是这批文本偏爱哪几种句法骨架,比较两类文体时很有用。
04
动词论元框架:动词带什么
一个动词能带几个、带哪些论元,语言学叫配价,Tesnière 用化学里的价来比喻这件事。动词论元框架统计的就是每个动词实际带了哪些论元。
选【动词论元框架(verb_frame)】,TATOOLS 找出句中每个动词,收集挂在它下面的主语和宾语这类论元,被动句的主语和话题也算在内,按主语在前、宾语在后的顺序拼成一个框架。
政府大力推进农村改革
推进 (nsubj:政府 + dobj:改革)
归类依据 推进 + nsubj + dobj
框架按动词和论元类型归类,推进带主语和宾语的句子算作同一个框架,推进只带宾语的句子算作另一个。报告里的框架显示的是其中一句的论元词,展开示例可以看到更多原句。比较同一个动词在不同框架下的次数,能看出它在这批文本里常带主语,还是常省略主语。
05
修饰对:什么修饰什么
修饰对只看修饰类关系,把修饰语和被修饰的词配成一对。TATOOLS 收的修饰关系以形容词修饰和副词性状语为主,也包括复合名词修饰和时间修饰这类关系。
大力 + 推进 [advmod] 副词修饰动词
农村 + 改革 [nn] 名词修饰名词
全面 + 振兴 [amod] 形容词修饰(示例)
选【修饰对(mod_pair)】,可以看到这批文本习惯用哪些词修饰核心概念,比如发展前面最常出现的是高质量、协调还是可持续。
06
节点词:只看某几个词
研究问题常常围绕几个关键词。在【节点词】里填上推动和加快这样的词,TATOOLS 只统计与这些词相关的模式。三元组和修饰对要求节点词出现在其中一端,动词论元框架要求节点词就是那个动词,词性序列要求这段骨架对应的原文里包含节点词。
还没想好填什么,打开【自动使用 Top 10 高频词作为节点词】,TATOOLS 先从整批语料里挑出出现最多的 10 个词,排除停用词后作为节点词。
填了节点词以后,报告多出【节点词模式】一块,每个节点词一个标签页,列出与它相关的高频模式和总命中次数。节点词不受停用词和词性过滤的影响,始终保留。
07
频次、句数与占比
同一个模式在一句话里出现几次,都只算一次,所以频次也就是出现这个模式的句子数。跨文件数是这个模式出现在几份文件里,出现在多数文件里的模式,是这批语料共有的句法习惯。
占比 = 这个模式的频次 ÷ 达到频次门槛的全部模式的频次之和
【最小模式频次】默认 5 次,出现次数不到 5 次的模式不进入结果,语料越大可以调得越高。【输出前 N 个高频模式】默认 100 个,决定报告和下载表格里列出多少个模式。
TATOOLS 为每个模式保留几条原句作例证,报告里点【示例】展开,模式涉及的词在原句里高亮。
08
句子怎样切,长句怎样处理
依存句法分析以句子为单位。TATOOLS 按标点切句,超过 200 个字符的句子不进入解析,单份文件参与解析的句子数也有上限。
整段没有标点的长文,切句后几乎全是超长句,会被整段跳过。【自动检查并分段不合格文档】默认打开,TATOOLS 先检查每份文件是否缺少句末标点、段落边界,或者有明显过长的行;不适合直接解析的文件,按逗号这类自然边界和长度切成较短的片段再解析,并在结果里写明原因。
报告的【文档检查与自动分段】列出哪些文件做了自动分段,【文件级解析摘要】列出每份文件切出多少句,其中多少句解析成功,多少句解析失败或因超长被跳过。
09
停用词与词性过滤
的、是这类高频功能词会大量进入模式排行,把有内容的句法搭配淹没。TATOOLS 的【使用系统停用词】默认关闭,建议打开,还可以在【自定义停用词】里补充;【使用词性过滤】可以把选中的词性类型排除在外。
过滤按模式类型分别生效。三元组和修饰对任何一端命中停用词,整条不计;词性序列的窗口里有停用词,这段骨架不计;动词论元框架里命中停用词的论元被剔除,剔除后一个论元都不剩的框架不计。【词形合并】把同一个词的不同写法并成一个再归类。
10
工具页上的设置一览
| 设置 | 选项或范围 | 默认 | 影响什么 |
|---|---|---|---|
| 挖掘哪种句法模式 | 依存三元组、词性序列、动词论元框架、修饰对 | 依存三元组 | 按哪种视角归类 |
| 节点词 | 手填几个词,或自动取 Top 10 高频词 | 留空 | 只统计与这些词相关的模式 |
| 最小模式频次 | 1 到 50 | 5 | 出现太少的模式不进入结果 |
| 输出前 N 个高频模式 | 20 到 500 | 100 | 报告和下载表格列出多少个模式 |
| 自动检查并分段不合格文档 | 开或关 | 开 | 缺标点的长文是否自动切段 |
| 使用系统停用词 | 开或关 | 关 | 功能词是否排除在模式之外 |
| 使用词性过滤 | 开或关 | 关 | 是否排除选中的词性 |
| 词形合并 | 一行一组写法 | 空 | 哪些写法当作同一个词 |
四种视角一次选一种,换一种视角重新提交即可,TATOOLS 会对同一批文本给出另一组模式。
11
报告怎么读
| 区块 | 先看什么 |
|---|---|
| 总体规模 | 已解析多少句,挖到多少个模式 |
| 文档检查与自动分段 | 哪些文件做了自动分段,原因是什么 |
| 文件级解析摘要 | 每份文件有多少句被跳过或解析失败 |
| 节点词模式 | 每个节点词最常出现在哪些模式里 |
| 高频模式排行 | 模式、频次、跨文件数、占比和原句示例 |
| 模式频次分布 | 前 30 个模式的频次高低 |
读的顺序是先看已解析的句子够不够多,跳过和失败的句子占比高,先回头清理标点再跑;再看高频模式排行,展开几条示例确认分析得对不对;最后看跨文件数,区分全批语料共有的套路和个别文件的写法。
【高频模式排行】可以按文字筛选,勾选关注的模式单独导出。TATOOLS 下载的结果里有两张表,一张是模式总表,一张是每个模式的原句示例。
12
把结果写进论文
下面是一段常见的写法示例,方括号里换成自己的内容。
本研究使用 TATOOLS 的依存句法模式挖掘,对 [语料] 逐句进行依存句法分析,关系标签采用斯坦福中文依存关系体系。以 [模式类型] 为统计单位,同一模式在同一句中只计一次,保留出现不少于 [次数] 次的模式。结果显示,[模式] 出现 [次数] 次,见于 [文件数] 份文件,是这批文本最常见的句法关系。
论文里写明模式类型、频次门槛和停用词设置,并引用几条原句说明模式的实际用法,读者就能判断这些句法模式的代表性。
13
小结
依存句法分析给每句话标出支配词、关系类型和从属词,词与词隔得再远也能连起来。
依存三元组统计全部句法关系,词性序列统计句法骨架,动词论元框架统计动词带什么,修饰对统计什么修饰什么。
节点词把统计聚焦到几个关键词上,也可以自动取整批语料的高频词。
同一模式在一句话里只算一次,跨文件数区分共有习惯和个别写法。
TATOOLS 先检查文档、切句,再逐句解析、归类计数,每个模式附原句示例。
想逐句查看依存树,并按句子复杂度打分,可以用 TATOOLS 的【依存句法分析】;想按窗口统计词语搭配并比较关联强度,用【词语搭配强度分析】;想看词性分布和相邻词性的搭配,用【词性标注】。
14
资料来源
Tesnière:Éléments de syntaxe structurale,Klincksieck,1959
Chang、Tseng、Jurafsky 与 Manning:Discriminative Reordering with Chinese Grammatical Relations Features,Proceedings of the Third Workshop on Syntax and Structure in Statistical Translation,2009
Kübler、McDonald 与 Nivre:Dependency Parsing,Morgan & Claypool,2009
END
