用途
该技能用于 Universal Dependencies(UD)依存句法分析:输入是带标注的训练句子(每词含 form、upos、feats、head、deprel 等,head 为 1-based,0 表示根)以及只含 id 与 form 的已分词目标句子;输出为每个目标句子一个字典,包含按词序排列的 head 整数列表与 deprel 字符串列表。评测指标为 CoNLL 2018 口径的 LAS(含标点,micro 平均),UAS 为辅助指标;弱基线为右分支链加每词最常见关系。
主要能力
UDParser(decode="eisner"|"cle", epochs, n_models, jackknife_folds, use_morph, seed):构建解析器,提供.fit(train)、.tag、.parse、.arc_scores。fit_predict(train, [targets_a, targets_b]):拟合一次,解析多组目标句。cross_validate:交叉验证选择配置。las_uas(gold, parses):计算 LAS/UAS。check_parse(parse, n_words):返回空表示句法树合法。eisner、chu_liu_edmonds:依存树解码。- 法语预训练:
fit_predict(train, targets, pretrained=True)或udparse_pretrained.parse_gold_tokens(sentences),基于 Stanza French-GSD 与 CamemBERT-large 编码器,训练数据不被使用。
使用方式
从 scilib 导入 udparse,构造解析器并在可见树库上训练(任意语言),可在留出标注句上选择或使用交叉验证。解析器仅需目标词形,约 20–30 CPU 秒可拟合 1000 句。法语场景可改用预训练解析器,需 torch、transformers、stanza 或 GPU worker;先用 udparse_pretrained.available() 与 scienceclaw_tools(operation=weights) 检查权重,不会隐式下载。每个输出都应运行 check_parse。
适用场景
给定 UD 树库与已分词目标句的依存分析任务,尤其是需要遵守 UD v2 关系集与树合法性约束、并按 LAS 评测的基准场景;法语可使用预训练路径作为替代方案,并在其训练数据之外的留出句上比较。
限制与规则
- 不得重新分词或多词切分,必须使用给定词形。
- 不得在目标树上训练。
- 预训练标签可能带子类型(如 nsubj:pass),若只允许通用关系需剥离。
- 预训练模型在 UD French-GSD 训练文件上训练、在其 dev 文件上选择,不应在这些句子上评判;其他树库(如 French-PUD)为未见数据。其标注方案部分遵循比 2.2 更新的 UD 版本。
- 输出须每树恰一个根、head 在范围内、无环、关系取自 37 个 UD v2 关系。
- 预训练权重的具体获取方式与硬件细节以工具检查结果为准,资料未进一步说明。