本文主要是介绍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
的作用是将已经分好的词语变为用整数表示的序列。
这篇关于keras.preprocessing.text.Tokenizer的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!