一个微型的中文分词器,能够按照词语的频率(概率)来利用构建 DAG (有向无环图)来分词。
graphml
格式的图结构文件,辅助学习者理解算法过程结巴分词
的算法,具有良好的分词性能结巴分词
一样的字典文件,可以轻松添加自定义字典代码:
import MicroTokenizer
tokens = MicroTokenizer.cut("知识就是力量")
print(tokens)
输出:
['知识', '就是', '力量']
<s>
和 </s>
是图的起始和结束节点,不是实际要分词的文本log(下一个节点的概率的倒数)
深绿色
作了标记https://github.com/howl-anderson/MicroTokenizer
Xiaoquan Kong @ https://github.com/howl-anderson
只在 python 3.5+ 环境测试过,其他环境不做兼容性保障。
pip install git+https://github.com/howl-anderson/MicroTokenizer.git
见上文
from MicroTokenizer.MicroTokenizer import MicroTokenizer
micro_tokenizer = MicroTokenizer()
micro_tokenizer.build_graph("知识就是力量")
micro_tokenizer.write_graphml("output.graphml")
1
leopku 2018-06-15 16:17:10 +08:00
先 star 为敬
|
2
howlanderson OP @leopku 感谢 PKU 大佬!
|
3
artandlol 2018-06-15 17:54:40 +08:00 via iPhone
Ik
smartcn 这类的吗 |
4
shiny 2018-06-15 18:13:27 +08:00
让我想起“ 24 口交换机”那梗,试了下,带数字就直接报错了。
|
5
howlanderson OP @shiny 我没有尝试这种混合的用法,不过我回去看看什么情况,改进一下,谢谢试用!
|
6
howlanderson OP @artandlol 类似的功能,但目的不同,这个主要是面向教学:演示一个简单的分词器如何工作的。
|
7
howlanderson OP @shiny 不知道你是否在 README 中注意到,你可以直接使用 binder: https://mybinder.org/v2/gh/howl-anderson/MicroTokenizer/master?filepath=.notebooks%2FMicroTokenizer.ipynb 来做实验。
|
8
howlanderson OP @shiny 我添加了 https://github.com/howl-anderson/MicroTokenizer/issues/1 这个 issue 来跟踪这个问题。
|
9
northisland 2018-06-20 15:40:20 +08:00
厉害,已 star
|
10
howlanderson OP @northisland 感谢!
|
11
shm7 2018-08-30 16:25:37 +08:00
顶
|