Skip to content

IOAI 2025 GAITE Combinatorial Word Segmentation

  • 来源:noai-mis/IOAI/IOAI-2025/GAITE-Contest/Word_Segmentation
  • 类型:NLP
  • 原始资料:Task Description、Baseline、Ref Result notebook、metrics.py
  • 题面完整性:完整
  • 解法资料完整性:有 reference solution

题面大意

给定德语复合词,预测每个字符位置是否为一个子词结尾,从而把复合词切分成短词。例如 Autobahnanschlussstelle 应切成 Autobahn Anschluss Stelle。训练集 94306 条,验证/测试各约 11788 条。输出 submissionval.jsonsubmissiontest.json,每个词对应 0/1 边界数组。评分为每个词 F1 的平均。

数据特点

输入是字符序列,输出是同长度二进制序列。德语复合词存在大小写、词干变化和连接成分。训练量足够大,字符级深度模型可行。边界 1 相对稀疏,但最后一个字符通常为 1。

考点

核心考点是字符级序列标注。模型要判断每个字符是否为词边界,类似分词/BIO 标注,但输出直接是边界位。F1 指标要求 precision 和 recall 平衡。

涉及知识点

  • Character vocabulary 和 padding。
  • LSTM/GRU/Transformer 序列标注。
  • BCE loss / class imbalance。
  • 阈值调优。
  • 字符 n-gram 和词典匹配。

解法思路

参考 solution 构建字符词表,用 Dataset 将单词编码为字符 id 序列和边界标签,训练字符级模型输出每个位置的 boundary probability。推理时对每个词逐字符预测,使用阈值(参考中约 0.6)转成 0/1,再写回 JSON。

可加入规则:最后一位强制为 1;过短片段边界可抑制;训练集中出现过的子词可构建词典,用动态规划辅助神经模型。

可选/多种解法

BiLSTM 序列标注:强基线,训练快。

字符 Transformer:长复合词建模更强,但需控制时间。

词典 + DP:用训练分词构造子词词典,结合神经边界概率。

特殊技巧

最后一位必须是边界,强制设为 1 可避免无意义错误。边界阈值不要固定 0.5,可在 validation 上调 F1。德语大小写和连接字母(如 s)可能暗示边界,需要保留原字符。

调参优化

题解已有约 0.6 的边界阈值,这是最值得调的参数。建议保存每个字符位置的 boundary probability,在验证集上扫描阈值,并强制最后一位为 1 后重新评估。模型侧可调字符 embedding 维度、RNN/CNN 隐层宽度、dropout、学习率、batch size、正类权重和最大词长截断。若模型倾向切得太碎,提高阈值或加大非边界权重;若漏切复合词边界,则降低阈值或增强连接字母相关特征。

注意事项

提交 notebook 必须包含训练和测试过程,不能只提交权重。执行时间 20 分钟内。JSON 格式必须与训练集格式一致,value 长度必须等于 key 字符数。

推广意义

这题是分词、断词和形态学分析的简化版。字符级序列标注可迁移到中文分词、URL/hashtag 切分、OCR 后处理和代码 token 边界预测。