TfIdfVectorizer

功能

从输入Tensor中提取n-grams,并将其保存为向量形式。

输入

X:输入Tensor,数据类型支持int32、int64、string(UTF-8),输入shape为[C]或[N, C],其中N为batch,C为序列长度。

属性

max_gram_length:int,指定n-grams的最大长度。

max_skip_count:int,指定生成n-grams时,在X中跳过的最大元素个数(词或字符)。若max_skip_count=1,min_gram_length=2,max_gram_length=3,则可能生成skip_count=0和 skip_count=1的2-grams和3-grams。

min_gram_length:int,指定n-gram的最小长度。若min_gram_length=2,max_gram_length=3,输出中则可能包含2-grams和3-grams。

mode:string,权重标准,可以是“TF”(term frequency),“IDF”(inverse document frequency)和“TFIDF”(TF and IDF)。

ngram_counts:int列表,不同长度n-gram在pool中的起始位置。ngram_indexes:int列表,ngram-index中的第i个元素表示第i个n-gram在输出Tensor中的坐标。

pool_int64s:int列表,表示从训练集学习到的n-grams。

pool_strings:string列表,表示从训练集学习到的n-grams。

weights:float列表,存储pool中每个n-grams的权重。

输出

Y:输出Tensor,数据类型为float,若输入shape为[C],则输出shape为[max(ngram_indexes) + 1];若输入shape为[N, C],则输出shape为[N, max(ngram_indexes) + 1]。

限制与约束

pool_int64s与pool_strings不可同时定义。

支持的ONNX版本

Opset v9/v10/v11/ v12/v13/v14/v15/v16/v17/v18