资源简介
这份代码是我们专业的一个实验,内容包含了文本分词和文本分类。分别使用了正向最大匹配算法和KNN算法。分词速度平均153295词/秒,189100字符/秒。文本分类使用tf-idf计算单词权重进行特征选择,我测试时选择前100个特征词,根据k的不同取值,分类的准确度平均为75%。
代码片段和文件信息
‘‘‘
2019/5/12
by zhyjc
## encoding = ‘gb18030‘errors = ‘ignore‘
‘‘‘
import os
import time
import math
class Trie_tree(object):
#定义一个字典树的类,用于正向最大匹配时对文本分词
def __init__(self):
self.root = {}
self.word_end = -1
def tree_build(self dict_path):
f_dic = open(dict_path‘r‘encoding = ‘utf-8‘) #词典
strs = f_dic.readlines()
for word in strs:
word = word.strip(‘ \n‘)
self.insert(word)
print(‘字典树建立完成!\n‘)
return self
def insert(selfword):
cur_node = self.root
for char in word:
if not char in cur_node:
cur_node[char] = {}
cur_node = cur_node[char]
cur_node[self.word_end] = True
d
评论
共有 条评论