可组合的分词配方
词典与二元语法是默认路径。需要时再接上感知机分词或用户词典。 中文分词
输入
自然语言处理技术是人工智能的重要领域
输出
标准配方 · 词典与二元语法 · 带词性
分词、标注、拼音和结构化解析可以单独调用。要换切分路径时,用配方把阶段拼起来。
快速上手
Znlp 静态门面覆盖绝大多数场景——分词、拼音、繁简转换、结构化解析,全部通过静态方法完成,不需要接触 ZnlpSystem 的生命周期。
需要感知机分词、用户词典或 NER 时,再用 SegmentRecipe 按阶段拼装出想要的 WordSegmenter。
首次运行会把词典与模型解析成 data/cache/ 缓存(二元语法表约 40 MB),之后启动直接读缓存,缓存目录可配置。
import dev.znlp.Znlp;import segment.dev.znlp.Token;
String text = "自然语言处理技术是人工智能的重要领域";List<Token> tokens = Znlp.segment(text);for (Token token : tokens) { System.out.println(token); // 输出 word/nature}核心能力
standard():核心词典与候选来源铺候选,二元语法做 Viterbi 选路,再叠人名识别与词性标注,每个阶段都可以独立开关。dictionary();要用统计模型分词用 perceptron()——线性路径,不跑二元语法。可训练的模型层
dev.znlp.perceptron)。PerceptronInstance 即可接入自己的语料(字符级任务继承 CharBasedPerceptronInstance),交给 PerceptronTrainer 训练。PosPerceptron.train 是最清晰的完整范例。从缓存目录到离线部署,上生产前要确认的几件事: