keras.preprocessing.text.Tokenizer

keras.preprocessing.text.Tokenizer

Tokenizer 是一种用于自然语言处理的类,其具体的功能是把一个词(中文单个字或者词组认为是一个词)转化为一个正整数,于是一个文本就变成了一个序列。这里改类方具体如图所示:
类方法
具体的代码用例如下所示:

from keras.preprocessing import text
#facts, accu_label, article_label, imprison_label=load_data()
somestr = ['ha ha gua angry','howa ha gua excited naive']

tok=text.Tokenizer() #初始化标注器
tok.fit_on_texts(somestr) #学习出文本的字典
word_index = tok.word_index#查看对应的单词和数字的映射关系dict
print(word_index)
sequences = tok.texts_to_sequences(somestr) #通过texts_to_sequences 这个dict可以将每个string的每个词转成数字
print(sequences)

输出的结果如下:


{'ha': 1, 'gua': 2, 'angry': 3, 'howa': 4, 'excited': 5, 'naive': 6}
[[1, 1, 2, 3], [4, 1, 2, 5, 6]]

如果处理的文本为中文:

text =  ['符于香 违反 群众 纪律,利用 职务 便利。']
{'符于香': 1, '违反': 2, '群众': 3, '纪律,利用': 4, '职务': 5, '便利。': 6}
[[1, 2, 3, 4, 5, 6]]

可见texts_to_sequences的作用是将已经分好的词语变为用整数表示的序列。

猜你喜欢

转载自blog.csdn.net/rouge_eradiction/article/details/108456263
今日推荐