开源中文分词工具探析(七):LTP

46 篇文章 9 订阅 ¥19.90 ¥99.00
本文深入探讨了哈工大开源的LTP中文语言处理系统,包括其分词流程、训练模型和特征。LTP使用结构化感知器进行建模,并通过Viterbi解码进行分词。相比THULAC,LTP在速度上稍慢,主要由于特征检索方式不同。LTP的特征主要包括字符单、双 grams 和字符类型等。
摘要由CSDN通过智能技术生成

LTP是哈工大开源的一套中文语言处理系统,涵盖了基本功能:分词、词性标注、命名实体识别、依存句法分析、语义角色标注、语义依存分析等。


1. 前言

同THULAC一样,LTP也是基于结构化感知器(Structured Perceptron, SP),以最大熵准则建模标注序列\(Y\)在输入序列\(X\)的情况下的score函数:

\[S(Y,X) = \sum_s \alpha_s \Phi_s(Y,X) \]

其中,\(\Phi_s(Y,X)\)为本地特征函数。中文分词问题等价于给定\(X\)序列,求解score函数最大值对应的\(Y\)序列:

\[\mathop{\arg \max}_Y S(Y,X) \]

2. 分解

以下源码分析基于版本3.4.0。

分词流程

分词流程与其他分词器别无二致,先提取字符特征,计算特征权重值,然后Viterbi解码。代码详见__ltp_dll_segmentor_wrapper::segment()

int segment(const char *str, std::vector<std::string> &words) {
    ltp::framework::ViterbiFeatureContext ctx;
    ltp::framework::ViterbiScoreMatrix scm;
    ltp::framework::
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

浅唱书令

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值