keras文本预处理
Tokenizer分词器
keras.preprocessing.text.Tokenizer(num_words=None, filters='!"#$%&()*+,-./:;<=>?@[\]^_`{|}~ ', lower=True, split=' ', char_level=False, oov_token=None)
Tokenizer是一个对文本语料库进行向量化的类,方法是将每个文本转换成一个整数序列(每个整数都是字典中一个分词的索引),或者将每个文本转换成一个向量,其中每个分词的系数可以是基于单词计数(word count)、基于tfidf等等的二进制。
Arguments
-
- num_words:None或整数,处理的最大单词数量。若被设置为整数,则分词器将被限制为待处理数据集中最常见的
num_words个单词。 - filters:一个字符串,其中每个元素都是要从文本中过滤的字符,默认是所有的标点符号,加上制表符、换行符,不包括“‘”。
- lower:布尔变量,是否将字符转换为小写。
- split:字符串,分词的分隔符。
- char_level:如果为 True, 每个字符将被视为一个分词。
- oov_token:如果给定,它将被添加到word_index中,用于在text_to_sequence调用期间替换词汇表外的单词。
- num_words:None或整数,处理的最大单词数量。若被设置为整数,则分词器将被限制为待处理数据集中最常见的
默认情况下,删除所有标点符号,把文本转换成空格分割的词序列(单词可能包括 ‘ 字符)。然后将这些序列分割成tokens列表。然后将它们编入索引或向量化。
0是一个保留索引,不会分配给任何单词。
类方法
-
-
fit_on_texts(texts)
- texts:要用以训练的文本列表。
-
texts_to_sequences(texts)
-
texts:待转为序列的文本列表。
-
返回值:序列的列表,列表中每个序列对应于一段输入文本。
-
-
texts_to_sequences_generator(texts)
-
本函数是
texts_to_sequences的生成器函数版 -
texts:待转为序列的文本列表
-
返回值:每次调用返回对应于一段输入文本的序列
-
-
texts_to_matrix(texts, mode):
-
texts:待向量化的文本列表
-
mode:‘binary’,‘count’,‘tfidf’,‘freq’之一,默认为‘binary’
-
返回值:形如
(len(texts), nb_words)的numpy array
-
-
fit_on_sequences(sequences):
- sequences:要用以训练的序列列表
-
sequences_to_matrix(sequences):
-
sequences:待向量化的序列列表
-
mode:‘binary’,‘count’,‘tfidf’,‘freq’之一,默认为‘binary’
-
返回值:形如
(len(sequences), nb_words)的numpy array
-
-
属性
-
- word_counts:字典,将单词(字符串)映射为它们在训练期间出现的次数。仅在调用fit_on_texts之后设置。
- word_docs: 字典,将单词(字符串)映射为它们在训练期间所出现的文档或文本的数量。仅在调用fit_on_texts之后设置。
- word_index: 字典,将单词(字符串)映射为它们的排名或者索引。仅在调用fit_on_texts之后设置。
- document_count: 整数。分词器被训练的文档(文本或者序列)数量。仅在调用fit_on_texts或fit_on_sequences之后设置。
hashing_trick
one_hot
text_to_word_sequence
---恢复内容结束---
浙公网安备 33010602011771号