分词算法学习笔记5-知乎上的讨论

  • 内容
  • 评论
  • 相关

 

中文分词是个基础问题,研究成果已有不少,我拣几个我自己觉得好的吧。

  1. @张磊 提到的mmseg是我自己最喜欢的分词方法,简单、高效、实用、效果还不错。technology.chtsai.org/m
    我 给它起了个名字,叫做“3段回溯式方法”,即每次从一个完整的句子里,按照从左向右的顺序,识别出多种不同的3个词的组合;然后根据下面的4条消歧规则, 确定最佳的备选词组合;选择备选词组合中的第1个词,作为1次迭代的分词结果;剩余的2个词继续进行下一轮的分词运算。采用这种办法的好处是,为传统的前 向最大匹配算法加入了上下文信息,解决了其每次选词只考虑词本身,而忽视上下文相关词的问题。4条消歧规则包括,
    1)备选词组合的长度之和最大。
    2)备选词组合的平均词长最大;
    3)备选词组合的词长变化最小;
    4)备选词组合中,单字词的出现频率统计值最高。
  2. CRF方法是目前公认的效果最好的分词算法。但,具体效果是否好,也依赖于你使用的训练模型。nlp.stanford.edu/softwa
  3. 我认识一个做搜索解决方案的朋友,他们公司提供了CRF和mmseg的开源实现 coreseek.cn/opensource/
  4. 其实还可以使用专业公司的解决方案,比如海量和中科院分词的收费版本,也花不了多少钱。集中精力找到你自己产品独特的价值所在。

 

发布于 2011-03-22 13 条评论 感谢

收藏 没有帮助

作者保留权利

沈沉,Reading and Thinking

fairy cazy、段雷、无忌 等人赞同
最近正好在做搜索,主动答

首先整理一下我们在做分词的时候一些思考吧:

中文分词算法大概分为两大类

a.第一类是基于字符串匹配,即扫描字符串,如果发现字符串的子串和词相同,就算匹配。

这类分词通常会加入一些启发式规则,比如“正向/反向最大匹配”, “长词优先” 等策略

这类算法优点是速度块,都是O(n)时间复杂度,实现简单,效果尚可。
也有缺点,就是对歧义和未登录词处理不好。

歧义的例子很简单"长春市/长春/药店" "长春/市长/春药/店".
未登录词即词典中没有出现的词,当然也就处理不好。

ikanalyzer,paoding 等就是基于字符串匹配的分词。

b.第二类是基于统计以及机器学习的分词方式

这类分词基于人工标注的词性和统计特征,对中文进行建模,即根据观测到的数据(标注好的语料)对模型参数进行估计,即训练。 在分词阶段再通过模型计算各种分词出现的概率,将概率最大的分词结果作为最终结果。常见的序列标注模型有HMM和CRF。

这类分词算法能很好处理歧义和未登录词问题,效果比前一类效果好,但是需要大量的人工标注数据,以及较慢的分词速度。

ICTCLAS是基于HMM的分词库。

我们在重构知乎搜索的时候,权衡标注工作量和性能,以及代码实现的复杂程度,我们考虑采用基于字符串匹配的分词方法

B. 除了标注量,准确率和效果的考量,分词粒度也是一个需要考虑的指标,


这里有一个真实的例子,即
"团购网站的本质是什么?"
这是一个知乎的问题,如果使用单一粒度的分词,如果我们有


团购
团购网
网站
团购网站
本质

什么

这些词在词典中,按最大匹配分词结果是
“团购网站/的/本质/是/什么”


当用户输入
团购网的本质
分词结果是
团购网/的/本质
团购网这个词显然是没有匹配的。

同样,如果按最小匹配分词,会有类似的问题。

因此,我们考虑基于字符串匹配的分词方法最好能够匹配出多粒度的结果,即
能分出
“团购网站/团购/团购网/网站/的/本质/是/什么”
这样多粒度的结果。

最终我们采用了ikanalyzer,
基于文本匹配,不需要投入大量人力进行训练和标注
可以自定词典,方便加入domain specific的词语
能分出多粒度的结果。
written in java.

 

编辑于 2012-08-25 12 条评论 感谢

收藏 没有帮助 作者保留权利

王电轻,知乎砖瓦匠

IsMisc Misc、知乎用户、哈士奇.银桑 等人赞同
1. 好词典很重要

不论什么样的分词方法, 优秀的词典必不可少, 越拿老掉牙的词典对越新的文本进行分词, 就越会分成一团糟.
怎样构建一个优秀的词典, 快速发现新新词汇? 可以看 @M67 前两天写的文章, 讲的非常透彻明白 : 互联网时代的社会语言学:基于SNS的文本数据挖掘 ( matrix67.com/blog/archi )

2. 算法跟着需求走

建 议根据不同的需求选用不同的算法, 例如, 类似知乎头部搜索的 AutoComplete 部分, 讲究的是速度快, 兴趣相关( 优先找和你账户相关, 和可能感兴趣的内容 ), 分词算法反而在其次了. 而像全文搜索这样大段大段的长文字. 我觉得则更注重的是精准, 应该选一个像CRF这样的算法.

 

编辑于 2012-08-25 添加评论 感谢

收藏 没有帮助

作者保留权利

张颖峰,Data Geek, Entrepreneur

CAN RAMA、知乎用户、孙君意 等人赞同
一个良好的分词系统,应当由词典和统计两套系统组成。后者是为前者构造可持续更新的词典,识别新词,同时消歧的部分可引入词典匹配。而真正上线主要还应当 基于词典,一个原因是性能,另一个原因是一致性。基于统计的分词很容易因为上下文的不一致而产生一致性问题,从而导致查不到

 

发布于 2011-05-18 添加评论 感谢

收藏 没有帮助

作者保留权利

许冰婧,CRF中文分词在产业界落地。

蜗牛、张营飞、赵老师 等人赞同
我们用的是CRF。和ICTCLAS 海量我们都比较过,在消歧能力上是明显超过的。CRF的语料和模型训练、速度、短文本切分能力(我们比较过Query和Title,准确率差大约1个 点),还有引入ML方法带来的不一致性,都是挑战。就准确性方面,CRF和我们自己训练权重的UNIGRAM算法相比,交叉歧义错误数下降在30%- 40%,OOV识别提升也很明显,但是总体准确率提升确实不是很大,分词是一件算法不复杂也能满足不苛刻的应用需求的事情。庖丁我印象里挺差的...(最 后这句话纯凭印象)

以上说的是算法。但上面提到的问题,比如词典、语料建设、未登录词识别,都是很需要也值得花费精力做的。而对分词正确性的要求,还是要看应用。对搜索而言,top query不是很受分词效果影响。

 

发布于 2011-05-11 3 条评论 感谢

收藏 没有帮助

作者保留权利

Fooying,Security Researcher And Developer

梁小靖、Grylics Lawlite、白城吴彦祖 等人赞同
引用请注明来自:hi.baidu.com/fooying
四款python中文分词系统简单测试:
注:中科院分词可采用调用C库的方式使用

准确率测试(使用对应项目提供在线测试,未添加用户自定义词典)
结巴中文分词209.222.69.242:9000/
中科院分词系统ictclas.org/ictclas_dem
smallsegsmallseg.appspot.com/sm
snailsegsnailsegdemo.appspot.com
(后两者网址需要翻墙)

测试文本1
工信处女干事每月经过下属科室都要亲口交代24口交换机等技术性器件的安装工作

测试结果:
结巴中文分词:
工信处/n 女干事/n 每月/r 经过/p 下属/v 科室/n 都/d 要/v 亲口/n 交代/n 24/m 口/q 交换机/n 等/u 技术性/n 器件/n 的/uj 安装/v 工作/vn
中科院分词系统:
工/n 信/n 处女/n 干事/n 每月/r 经过/p 下属/v 科室/n 都/d 要/v 亲口/d 交代/v 24/n 口/q 交换机/n 等/udeng 技术性/n 器件/n 的/ude1 安装/vn 工作/vn
smallseg:

工信 信处 女干事 每月 经过 下属 科室 都要 亲口 交代 24 口 交换机 等 技术性 器件 的 安装 工作

snailseg:

工信处/ 女/ 干事/ 每月/ 经过/ 下属/ 科室/ 都/ 要/ 亲口/ 交代/ 24/ 口/ 交换机/ 等/ 技术性/ 器件/ 的/ 安装/ 工作
-----------------------------------------------------------------------------------------
测试文本2
工信處女幹事每月經過下屬科室都要親口交代24口交換機等技術性器件的安裝工作

测试结果:
结巴中文分词:
工/n 信/n 處/zg 女/b 幹/zg 事/n 每月/r 經/zg 過/zg 下/m 屬/zg 科室/n 都/d 要/v 親/zg 口/q 交代/n 24/m 口交/n 換/zg 機/zg 等/u 技/ng 術/zg 性/ng 器件/n 的/uj 安/v 裝/zg 工作/vn
中科院分词系统:
工/n 信/n 處女/n 幹事/n 每月/r 經過/p 下屬/v 科室/n 都/d 要/v 親口/d 交代/v 24/n 口/q 交換機/n 等/udeng 技術性/n 器件/n 的/ude1 安裝/vn 工作/vn
smallseg:

工/ 信/ 處/ 女/ 幹/ 事/ 每月/ 經/ 過/ 下/ 屬/ 科室/ 都/ 要/ 親/ 口/ 交代/ 24/ 口/ 交/ 換/ / 機/ 等/ 技/ 術/ 性器/ 件/ 的/ 安/ 裝/ 工作

snailseg:

工/ 信/ 處/ 女/ 幹/ 事/ 每月/ 經/ 過/ 下/ 屬/ 科室/ 都/ 要/ 親/ 口/ 交代/ 24/ 口/ 交/ 換/ / 機/ 等/ 技/ 術/ 性器/ 件/ 的/ 安/ 裝/ 工作

-----------------------------------------------------------------------------------------

测试文本3
SCANV网址安全中心(scanv.com)是一个综合性的网址安全服务平台。通过网址安全中心,用户可以方便的查询到要访问的网址是否存在恶意行为,同时可以在SCANV中在线举报曝光违法恶意网站。

测试结果:
结巴中文分词:
SCANV/eng 网址/n 安全/an 中心/n scanv/eng com/eng 是/v 一个/m 综合性/n 的/uj 网址/n 安全/an 服务平台/n 通过/p 网址/n 安全/an 中心/n 用户/n 可以/c 方便/a 的/uj 查询/v 到/v 要/v 访问/v 的/uj 网址/n 是否/v 存在/v 恶意/v 行为/v 同时/c 可以/c 在/p SCANV/eng 中/f 在线/b 举报/v 曝光/nz 违法/vn 恶意/v 网站/n
中科院分词系统:
SCANV/x 网址/n 安全/an 中心/n (/wkz scanv.com/x )/wky 是/vshi 一个/mq 综合性/n 的/ude1 网址/n 安全/an 服务平台/n 。/wj 通过/p 网址/n 安全/an 中心/n ,/wd 用户/n 可以/v 方便/a 的/ude1 查询/vn 到/v 要/v 访问/v 的/ude1 网址/n 是否/v 存在/v 恶意/n 行为/n ,/wd 同时/c 可以/v 在/p SCANV/x 中/f 在/p 线/n 举报/vn 曝光/vn 违法/vn 恶意/n 网站/n 。/wj
smallseg:

SCANV 网址 安全 中心 scanv.com 是 一个 综合性 的 网址 安全 服务 平台 通过 网址 安全 中心 用户 可以 方便 的 查询 到要 访问 的 网址 是否 存在 恶意 行为 同时 可以 在 SCANV 中 在线 举报 曝光 违法 恶意 网站

snailseg:

SCANV/ 网址/ 安全/ 中心/ scanv/ com/ 是/ 一个/ 综合性/ 的/ 网址/ 安全/ 服务平台/ 通过/ 网址/ 安全/ 中心/ 用户/ 可以/ 方便/ 的/ 查询/ 到/ 要/ 访问/ 的/ 网址/ 是/ 否/ 存在/ 恶意/ 行为/ 同时/ 可以/ 在/ SCANV/ 中/ 在/ 线/ 举报/ 曝光/ 违法/ 恶意/ 网站

-----------------------------------------------------------------------------------------

测试文本4
随 着页游兴起到现在的页游繁盛,依赖于存档进行逻辑判断的设计减少了,但这块也不能完全忽略掉。总会有一些功能是需要调用本地存档的。例如登录模块中,记住 密码功能,会将密码信息存储在本地,以IE浏览器为例,在C:\Documents and Settings\(你的Windows用户名)\Application Data\Macromedia \Flash Player\#SharedObjects\(一些随机数字和字母)\ 文件夹下就可以看到存储密码的SOL文件,可以使用minerva工具查看,如下图所示,密码明文明文存储的,SOL文件是永久性保存的,除非手动清除, 如果玩家在公共环境下登录,就会有盗号威胁。来自baidu.com/及http:、www.baidu...com

测试结果:
结巴中文分词:
随 着/p 页/m 游/n 兴起/v 到/v 现在/t 的/uj 页游/n 繁盛/a 依赖于/v 存档/v 进行/v 逻辑/n 判断/v 的/uj 设计/vn 减少/v 了/ul 但/c 这块/r 也/d 不能/v 完全/ad 忽略/d 掉/zg 总会/n 有/v 一些/m 功能/n 是/v 需要/v 调用/vn 本地/r 存档/v 的/uj 例如/v 登录/v 模块/n 中/f 记住/v 密码/n 功能/n 会/v 将/d 密码/n 信息/n 存储/j 在/p 本地/r 以/p IE/eng 浏览器/n 为/p 例/v 在/p C/eng Documents/eng and/eng Settings/eng 你/r 的/uj Windows/eng 用户名/n Application/eng Data/eng Macromedia/eng nbsp/eng Flash/eng Player/eng #SharedObjects/eng 一些/m 随机/d 数字/n 和/c 字母/n 文件夹/n 下/f 就/d 可以/c 看到/v 存储/j 密码/n 的/uj SOL/eng 文件/n 可以/c 使用/v minerva/eng 工具/n 查看/v 如下/t 图/n 所示/v 密码/n 明文/nr 明文/nr 存储/j 的/uj SOL/eng 文件/n 是/v 永久性/nr 保存/v 的/uj 除非/c 手动/n 清除/v 如果/c 玩家/n 在/p 公共/b 环境/n 下/f 登录/v 就/d 会/v 有/v 盗号/n 威胁/vn 来自/v http/eng www/eng baidu/eng com/eng 及/c http/eng www/eng baidu/eng com/eng
中科院分词系统:
随 着/p 页/q 游兴/n 起/vf 到/v 现在/t 的/ude1 页/q 游/v 繁盛/an ,/wd 依赖/v 于/p 存档/vi 进行/vx 逻辑/n 判断/v 的/ude1 设计/vn 减少/v 了/y ,/wd 但/c 这/rzv 块/q 也/d 不能/v 完全/ad 忽略/v 掉/v 。/wj 总/d 会/v 有/vyou 一些/mq 功能/n 是/vshi 需要/v 调用/v 本地/rzs 存档/vi 的/ude1 。/wj 例如/v 登录/v 模块/n 中/f ,/wd 记住/v 密码/n 功能/n ,/wd 会/v 将/p 密码信息存储/n 在/p 本地/rzs ,/wd 以/p IE/x 浏览器/n 为/p 例/n ,/wd 在/p C:/x \/x Documents/x /w and/x /w Settings/x \/x (/wkz 你/rr 的/ude1 Windows/x 用户/n 名/q )/wky \/x Application/x /w Data/x \/x Macromedia/x &/x nbsp/x ;/wf \/x Flash/x /w Player/x \/x #/x SharedObjects/x \/x (/wkz 一些/mq 随机/b 数字/n 和/cc 字母/n )/wky \/x /w 文件夹/n 下/f 就/d 可以/v 看到/v 存储/vn 密码/n 的/ude1 SOL/x 文件/n ,/wd 可以/v 使用/v minerva/x 工具/n 查看/v ,/wd 如/v 下/vf 图/n 所/usuo 示/vg ,/wd 密码/n 明/ag 文明/n 文/ng 存储/v 的/ude1 ,/wd SOL/x 文件/n 是/vshi 永久性/n 保存/v 的/ude1 ,/wd 除非/c 手动/b 清除/vn ,/wd 如果/c 玩/v 家/n 在/p 公共/b 环境/n 下/f 登录/v ,/wd 就/d 会/v 有/vyou 盗/vg 号/n 威胁/vn 。/wj 来自/v http:/x //w //w baidu.com/x //w 及/v http:/x 、/wn www.baidu...com/x
smallseg:

随 着 页游 兴起 到现在 的页 页游 繁盛 依赖于 存档 进行 逻辑 判断 的 设计 减 少了 但 这块 也 不能 完全 忽略 掉 总 会有 一些 功能 是 需要 调用 本地 存档 的 例如 登录 模块 中 记住 密码 功能 会将 密码 信息 存储 在 本地 以 IE 浏览器 为例 在 C \ Documents and Settings \ 你的 Windows 用户名 \ Application Data \ Macromedia & nbsp ;\ Flash Player \ #SharedObjects \ 一些 随机 数字 和 字母 \ 文件夹 下 就可 以 看到 存储 密码 的 SOL 文件 可 以 使用 minerva 工具 查看 如 下图 所示 密码 明文 明文 存储 的 SOL 文件 是 永久性 保存 的 除非 手动 清除 如果 玩家 在 公共 环境 下 登录 就会 有 盗号 威胁 来自 http // baidu.com /及 http www.baidu...com

snailseg:

随 着/ 页/ 游兴/ 起到/ 现在/ 的/ 页/ 游/ 繁盛/ 依赖/ 于/ 存档/ 进行/ 逻辑/ 判断/ 的/ 设计/ 减少/ 了/ 但/ 这/ 块/ 也/ 不能/ 完全/ 忽略/ 掉/ 总会/ 有/ 一些/ 功能/ 是/ 需要/ 调用/ 本地/ 存档/ 的/ 例如/ 登录/ 模块/ 中/ 记住/ 密码/ 功能/ 会/ 将/ 密码/ 信息/ 存储/ 在/ 本地/ 以/ IE/ 浏览器/ 为/ 例/ 在/ C/ Documents/ and/ Settings/ 你/ 的/ Windows/ 用户名/ Application/ Data/ Macromedia/ nbsp/ Flash/ Player/ #SharedObjects/ 一些/ 随机数/ 字/ 和/ 字母/ 文件/ 夹/ 下/ 就/ 可以/ 看到/ 存储/ 密码/ 的/ SOL/ 文件/ 可以/ 使用/ minerva/ 工具/ 查看/ 如下/ 图/ 所/ 示/ 密码/ 明文/ 明文/ 存储/ 的/ SOL/ 文件/ 是/ 永久性/ 保存/ 的/ 除非/ 手动/ 清除/ 如果/ 玩家/ 在/ 公共/ 环境/ 下/ 登录/ 就/ 会/ 有/ 盗/ 号/ 威胁/ 来/ 自/ http/ www/ baidu/ com/ 及/ http/ www/ baidu/ com

结论:从整体测试结果上看,分词速度以及文本超过一定长度的性能测试未进行,自 定义词典也是一个很大的影响分词因素,也未涵盖测试,排除以上两点,整体上看,对繁体以及网址的分词,中科院的分词系统做到最好,如果论说对容易歧义的文 本,结巴不错,这两者也相对功能方面会更丰富。感觉如果python分词,建议使用结巴或者中科院分词调用C库使用,如果担心调用C库等产生的相关问题, 可以使用结巴分词系统,是个不错的选择,在分词前进行简繁转换;或者采用中科院的分词,加上自定义词典,也是不错的选择,不过就本人在python调用C 库使用中科院分词的过程中,存在用户自定义词典导入会过于优先(如导入用户词典,中信,当分词内容[我们中信仰佛教的人]会分词成[我们,中信,仰,佛 教,的,人])以及存在导入失败情况,还有函数调用安全问题。主要是根据需要进行选择不同的分词。有空再进行性能测试!

 

发布于 2012-11-17 3 条评论 感谢

收藏 没有帮助 作者保留权利

郑昀,众美窝窝研发副总裁

广成子、知乎用户、张风 等人赞同
分词算法不重要,重要的是词典。参考:《cnblogs.com/zhengyun_us 语义分析相关应用的实作要点》『
分词算法用谁家的都无所谓,开源的、能拿到手的、靠谱的有不少。主要是一套专用词典。需要(自动地)与时俱进,而不是拿一个许多年前的不更新的旧词典就搞定的。
也就是说整个应用的主要问题是词典和算法。

 

发布于 2011-03-22 4 条评论 感谢

收藏 没有帮助

作者保留权利

孙君意

知乎用户、知乎用户、子衿 等人赞同
如果喜欢Python,可以看看“结巴分词”,效果很好。 github.com/fxsjy/jieba

 

发布于 2012-11-16 1 条评论 感谢

收藏 没有帮助

作者保留权利

知乎用户

江林锦 赞同
bamboo也不错(code.google.com/p/nlpba),是CRF模型的

ICTCLAS也不错,但是官方网站已经也原作者没有关系,版本也不是最新的了。
最新的2011版作者是免费提供的,详情见:hi.baidu.com/drkevinzha

个人使用经验是,ICTCLAS在linux下面占用资源比bamboo要高一些,不知道新版本有没有改善

 

编辑于 2011-03-24 1 条评论 感谢

收藏 没有帮助

作者保留权利

江林锦,统计系统、数据挖掘、通用广告系统、智能…

知乎用户、刘文沛、杨昆 赞同
前几年搞中文全文搜索时,全文搜索引擎用的是coreseek(coreseek.cn/)修改过的sphinx版本,而分词库就用了他们网站上介绍的libMMSeg,实际使用效果不错。
MMSEG算法可以在此找到:technology.chtsai.org/

另外有一套比较出名的是中科院开发的ICTCLAS(ictclas.org/),没有实际使用过,不知效果如何。

不过对于中文分词来说,要达到较好的分词效果,除了算法,词库也是非常关键的,欢迎大家推荐词库。

 

发布于 2011-03-22 1 条评论 感谢

收藏 没有帮助

作者保留权利

张磊,懒投资CEO / 写「大玩家」的男人

lbsweek、谌斌、谷文栋 赞同
使用过mmseg觉得不错。

technology.chtsai.org/m

 

发布于 2011-03-22 添加评论 感谢

收藏 没有帮助

作者保留权利

王超杰 (A Quiver Full of Arrows),quiver.5gme.com

唐雷、banly 赞同
实际上,在不考虑未定义词识别的情况下,仅仅采用3元语法就可以做得很好了。
方法其实也很简单,在网上很容易找到。

现在信息这么发达,闭门造车重新发明车轮的事情已经不太多见了,估计造出来也不可能发表了,呵呵。
... ...

融合语言知识与统计模型的机器翻译方法研究(国家自然科学基金重点项目,项目批准号60736014,2008-2011,负责人刘群)

面向跨语言搜索的机器翻译关键技术研究(863重点项目课题,课题编号2006AA010108,2007-2010,负责人刘群)

规则可控的统计机器翻译方法研究(计算所知识创新课题,2006-2007,负责人刘群)

计算所汉语词法分析系统ICTCLAS(自选课题,2002-2003,负责人刘群)

面向领域可定制的汉英机器翻译系统(863重点项目,课题编号863-306-ZD03-03-4,1998-2000,负责人刘群)

 

发布于 2011-03-29 4 条评论 感谢

收藏 没有帮助

作者保留权利

熊伟,一个编程的线程

马骁、丁晨、richarwu 等人赞同
其实solr自带的跨语言自然一元分词就很好了,怎么测效果也不比国内搞的分词差,也许大多数情况下不需要国产的中文分词。下面列举原因,欢迎拍砖。
1. 不可能有一种中文分词算法能完全准确地分词,完全按中文分词进行的搜索不能保证搜索的全覆盖,而按字分词的结果是可以保证的
2. 中文分词带来额外的开销,比如查字典,智能算法等,而一元按字分词开销最小。有人说按字分词造成索引变大,造成开销大,其实英文单词比中文字还多,这方面不是问题
3. 按中文分词搜索,首先对要搜索的内容要先分词,这就有可能造成了第一步最主要的误差,中文分词引擎分出的词很可能不能代表用户的意思,而luncene基于slop的匹配误差更小
4. 随着中文分词算法的改进,有可能在索引中形成词信息孤岛,要么随它占用资源,要么付出成本去维护;而基于一元字分词的算法就没有这个问题

遗憾的是让外国人搞出了这个通用算法在中文分词方面居然比我们自己做的还好。

 

发布于 2012-03-08 23 条评论 感谢

收藏 没有帮助

作者保留权利

知乎用户,░▒▓██

戴威 赞同
没人说盘古分词么?

 

发布于 2015-04-09 1 条评论 感谢

收藏 没有帮助

作者保留权利

李丕绩,Text Mining, Computer Vision, Machine …

王浩、赵孽、知乎用户 等人赞同
用过庖丁解牛 但是内存还有效率控制的不太好感觉。

继续回答,最近使用了哈工大的开源LTP,对于中文感觉很不错很不错,可以试试。ir.hit.edu.cn/ltp/

 

发布于 2011-05-15 添加评论 感谢

收藏 没有帮助

作者保留权利

孙勇,SunPinyin Input Method Developer…

唐晶明、不鳥萬如一 赞同
CRF对于长句切分比较有效,对于短句切分,可能准确度就不那么好了…

 

发布于 2011-04-14 添加评论 感谢

收藏 没有帮助

作者保留权利

唐巧,iOS研发工程师。

对于微博来说,分词算法的正确性是次要的,重要的是速度,所以我们自己实现了一个速度非常快的,但是相对来说准备性稍差的快速算法。

 

发布于 2011-03-28 3 条评论 感谢

收藏 没有帮助

作者保留权利

吴宓人,英语系学生

叶瑶、Miser、赵迎宾 赞同
最近用过bosonnlp.com的分词,效果还不错,而且里面命名实体识别等其他引擎对我们的项目很有用。

 

 

宝腾飞,孤独程序员

coco tang、张鑫 赞同
最近写了一款分词器,调研了不少文章的开源实现。最终定的方案是 Language Model + CRF 的混合实现。CRF的字标注法是中文分词比赛上成绩最好的方案,尤其胜在新词识别上,而Language Model在词典全,词频统计正确的情况下分词效果也很好,同CRF相比,胜在分词效果稳定,易于调整,一旦发现分词错误,可以通过添加新词修正分词效 果。因此我的分词器是先通过 CRF 识别新词,然后再用Language Model分词。当然,具体实现上,还涉及到怎样融合新词,分句,识别英文词,数字表达式,时间日期等。

 

 

面包饿了,Researcher一枚,来自HIT

推荐基于CRF的模型的实现~~