keras.preprocessing.text.Tokenizer.fit_on_texts(texts)
Posted on 2023-05-08 10:44 Frank_Jin 阅读(290) 评论(0) 编辑 收藏 举报1.fit_on_texts()的作用
fit_on_texts的作用就是根据输入的文本列表生成一个大词典,保存在t里面,每个词有唯一一个不重复的索引。如果有新的语句,可直接通过t来转成对应的词索引列表。
2.用法
fit_on_texts(text) 中的text应该输入是一个列表,每个元素是切分过后的词列表或者词文本
不能把一整段的字符串输入进去,否则分词器会将整个字符串视为一个大列表,而每一个词都是其中的一个元素。
错误案例:
1 text='作者 长篇大论 借用 详细 报告 数据处理 工作 计算结果 支持 其新' 2 t.fit_on_texts(text) 3 print(t.word_counts) 4 #得到 5 OrderedDict([('作', 2), ('者', 1), ('长', 1), ('篇', 1), ('大', 1), ('论', 1), ('借', 1), ('用', 1), ('详', 1), ('细', 1), ('报', 1), ('告', 1), ('数', 1), ('据', 1), ('处', 1), ('理', 1), ('工', 1), ('计', 1), ('算', 1), ('结', 1), ('果', 1), ('支', 1), ('持', 1), ('其', 1), ('新', 1)])
正确案例:
1 text_list=['作者 长篇大论 借用 详细 报告 数据处理 工作 计算结果 支持 其新', 2 '总体 应该 二 星级宾馆 定 时间 比较 晚 这家 酒店 入住 时问 前台 黄山 城市 信息 说 知道 一个 入住 办理 二十几分钟 几个 房间 设施 陈旧 住 舒服'] 3 tlist =Tokenizer() 4 tlist.fit_on_texts(text_list) 5 print(tlist.word_counts) 6 print(tlist.word_docs) 7 print(tlist.word_index) 8 #得到 9 OrderedDict([('作者', 1), ('长篇大论', 1), ('借用', 1), ('详细', 1), ('报告', 1), ('数据处理', 1), ('工作', 1), ('计算结果', 1), ('支持', 1), ('其新', 1), ('总体', 1), ('应该', 1), ('二', 1), ('星级宾馆', 1), ('定', 1), ('时间', 1), ('比较', 1), ('晚', 1), ('这家', 1), ('酒店', 1), ('入住', 2), ('时问', 1), ('前台', 1), ('黄山', 1), ('城市', 1), ('信息', 1), ('说', 1), ('知道', 1), ('一个', 1), ('办理', 1), ('二十几分钟', 1), ('几个', 1), ('房间', 1), ('设施', 1), ('陈旧', 1), ('住', 1), ('舒服', 1)]) 10 defaultdict(<class 'int'>, {'长篇大论': 1, '报告': 1, '详细': 1, '作者': 1, '工作': 1, '支持': 1, '其新': 1, '计算结果': 1, '借用': 1, '数据处理': 1, '一个': 1, '前台': 1, '住': 1, '办理': 1, '信息': 1, '二十几分钟': 1, '舒服': 1, '晚': 1, '知道': 1, '黄山': 1, '定': 1, '入住': 1, '房间': 1, '这家': 1, '二': 1, '时问': 1, '时间': 1, '说': 1, '设施': 1, '几个': 1, '应该': 1, '城市': 1, '酒店': 1, '比较': 1, '星级宾馆': 1, '陈旧': 1, '总体': 1}) 11 {'入住': 1, '作者': 2, '长篇大论': 3, '借用': 4, '详细': 5, '报告': 6, '数据处理': 7, '工作': 8, '计算结果': 9, '支持': 10, '其新': 11, '总体': 12, '应该': 13, '二': 14, '星级宾馆': 15, '定': 16, '时间': 17, '比较': 18, '晚': 19, '这家': 20, '酒店': 21, '时问': 22, '前台': 23, '黄山': 24, '城市': 25, '信息': 26, '说': 27, '知道': 28, '一个': 29, '办理': 30, '二十几分钟': 31, '几个': 32, '房间': 33, '设施': 34, '陈旧': 35, '住': 36, '舒服': 37}