bi-gram->n-gra..._分词器 训练">
当前位置:   article > 正文

python 分词工具训练_搭建一个分词工具 Python版

分词器 训练

今天是周日,天气很潮湿,回南天的广州,即使天气再恶劣,也不能阻止学习的我。。。

每一个入门自然语言的的人在学习的第一步都是从分词开始的,就类似编程的"Hello World"。以下是用两种方法实现分词,分别是基于枚举法和维特比算法。

一、基于枚举方法来搭建中文分词工具

最简单的分词是不依赖语句关系的,每一个词都是独立的,叫unigram

语言模型有unigram->bi-gram->n-gram 从简单到难,n表示依赖n级

此项目所需数据:

中文词库词库,当作字典来用

以变量的方式提供了部分unigram概率 word_prob,也可以用词库的计算词频。

举个例子: 给定词典=[我们 学习 人工 智能 人工智能 未来 是], 另外我们给定unigram概率:p(我们)=0.25, p(学习)=0.15, p(人工)=0.05, p(智能)=0.1, p(人工智能)=0.2, p(未来)=0.1, p(是)=0.15

Step 1: 对于给定字符串:”我们学习人工智能,人工智能是未来“, 找出所有可能的分割方式

[我们,学习,人工智能,人工智能,是,未来]

[我们,学习,人工,智能,人工智能,是,未来]

[我们,学习,人工,智能,人工,智能,是,未来]

[我们,学习,人工智能,人工,智能,是,未来] .......

Step 2: 我们也可以计算出每一个切分之后句子的概率

p(我们,学习,人工智能,人工智能,是,未来)= -log p(我们)-log p(学习)-log p(人工智能)-log p(人工智能)-log p(是)-log p(未来)

p(我们,学习,人工,智能,人工智能,是,未来)=-log p(我们)-log p(学习)-log p(人工)-log p(智能)-log p(人工智能)-log p(是)-log p(未来)

p(我们,学习,人工,智能,人工,智能,是,未来)=-log p(我们)-log p(学习)-log p(人工)-log p(智能)-log p(人工)-log p(智能)-log p(是)-log p(未来)

p(我们,学习,人工智能,人工,智能,是,未来)=-l

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号