sklearn.feature_extraction.text.TfidfVectorizer函数说明

转载自:http://blog.csdn.net/hutao1101175783/article/details/74618205

class sklearn.feature_extraction.text.TfidfVectorizerinput = u'content'encoding = u'utf-8'decode_error = u'strict'strip_accents = Nonelowercase = Truepreprocessor = Nonetokenizer = Noneanalyzer = u'word'stop_words =无token_pattern = U '(?U)\ b \瓦特\ W + \ b' ngram_range =(11) max_df = 1.0min_df = 1max_features =无词汇=无二进制=假D型= <type'numpy.int64'>norm = u'l2'use_idf = Truesmooth_idf = Truesublinear_tf = False 

[source]

将原始文档的集合转换为TF-IDF功能的矩阵。

相当于CountVectorizer,后跟TfidfTransformer。

在“ 用户指南”中阅读更多内容。

参数:

input:string {'filename','file','content'}

如果'filename',作为参数传递的顺序适合,预计将是需要读取以获取原始内容进行分析的文件名列表。

如果'file',序列项必须有一个'read'方法(类文件对象),被调用来获取内存中的字节。

否则,输入将被预期是顺序字符串或字节项预期直接分析。

encoding:string,'utf-8'。

如果要分配字节或文件,则使用该编码进行解码。

decode_error:{'strict','ignore','replace'}

如果给出分析字节序列包含不是给定编码的字符,该怎么做。默认情况下,它是'strict',这意味着将会引发一个UnicodeDecodeError。其他值是“忽略”和“替换”。

strip_accents:{'ascii','unicode',无}

在预处理步骤中删除口音。'ascii'是一种快速的方法,只适用于具有直接ASCII映射的字符。'unicode'是一种稍慢的方法,适用于任何字符。无(默认)不起作用。

analyzer:string,{'word','char'}或可调用

该功能是否应由字符或字符n-gram组成。

如果传递了一个可调用函数,它将用于从原始未处理的输入中提取特征序列。

预处理器:可调用或无(默认)

覆盖预处理(字符串转换)阶段,同时保留令牌化和n-gram生成步骤。

tokenizer:可调用或无(默认)

覆盖字符串标记化步骤,同时保留预处理和n-gram生成步骤。仅适用如果。analyzer == 'word'

ngram_range:tuple(min_n,max_n)

不同n值的n值范围的下边界和上边界被提取。将使用所有n值,使得min_n <= n <= max_n。

stop_words:string {'english'},list或None(默认)

如果是字符串,则将其传递给_check_stop_list,并返回相应的停止列表。'english'是目前唯一支持的字符串值。

如果一个列表,该列表被假定为包含停止词,所有这些都将从生成的令牌中删除。仅适用如果。analyzer == 'word'

如果没有,将不会使用停止的单词。max_df可以设置为[0.7,1.0]范围内的值,以根据术语的语料库文档频率自动检测和过滤停止词。

小写:布尔值,默认值为True

在标记化之前将所有字符转换为小写。

token_pattern:string

表示什么构成“令牌”的正则表达式,仅用于。默认正则表达式选择2个或更多字母数字字符的标记(标点符号被完全忽略,并始终作为令牌分隔符处理)。analyzer == 'word'

max_df:float in range [ 0.0,1.0 ]或int,default = 1.0

当构建词汇时,忽略文档频率严格高于给定阈值(语料库特定停止词)的术语。如果为float,则该参数代表一定比例的文档,整数绝对计数。如果词汇不是无,则忽略此参数。

min_df:float in range [ 0.0,1.0 ]或int,default = 1

当构建词汇时,忽略文档频率严格低于给定阈值的术语。这个值在文献中也被称为截止值。如果为float,则该参数代表一定比例的文档,整数绝对计数。如果词汇不是无,则忽略此参数。

max_features:int或None,default = None

如果不是无,建立一个词汇,只考虑由词汇频率排序的顶级max_feature。

如果词汇不是无,则忽略此参数。

词汇表:映射或迭代,可选

键是术语和值的映射(例如,dict)是特征矩阵中的索引,或者可迭代的术语。如果没有给出,则从输入文档确定词汇表。

binary:boolean,default = False

如果为True,则所有非零项计数都设置为1.这并不意味着输出将只有0/1值,只有tf-idf中的tf项是二进制的。(将idf归一化为False,得到0/1输出。)

dtype:type,可选

由fit_transform()或transform()返回的矩阵的类型。

规范:'l1','l2'或无,可选

用于规范化术语向量的规范。没有没有规范化。

use_idf:boolean,default = True

启用逆文档频率重新加权。

smooth_idf:boolean,default = True

通过将文档频率添加一个平滑的idf权重,就好像一个额外的文档被看到包含一个集合中的每个术语一次。防止零分。

sublinear_tf:boolean,default = False

应用子线性tf缩放,即用1 + log(tf)替换tf。

属性:

vocabulary_:dict

术语映射到特征索引。

idf_:array,shape = [n_features]或者None

学习的idf向量(全局术语权重)何时use_idf设置为True,否则为否。

stop_words_:set

被忽略的条款是:

  • 发生在太多的文件(max_df
  • 发生在太少的文件(min_df
  • 被特征选择(max_features截断

这仅在没有提供词汇表的情况下可用。

也可以看看

CountVectorizer
验证文件并计算令牌的出现次数并将其作为稀疏矩阵返回
TfidfTransformer
将术语频率逆序文档频率归一化为发生次数的稀疏矩阵。

笔记

stop_words_当酸洗时,属性可以变大并增加模型大小。此属性仅用于内省提供,并且可以使用delattr安全删除或在酸洗之前设置为None。

方法

build_analyzer() 返回处理预处理和标记化的可调用
build_preprocessor() 返回一个函数,以便在标记化之前对文本进行预处理
build_tokenizer() 返回一个将字符串分成令牌序列的函数
decode(DOC) 将输入解码为一串Unicode码元
fit(raw_documents [,y]) 从训练集学习词汇和idf。
fit_transform(raw_documents [,y]) 学习词汇和idf,返回术语文档矩阵。
get_feature_names() 从特征整数索引到特征名称的数组映射
get_params([深]) 获取此估计器的参数。
get_stop_words() 构建或获取有效的停止词列表
inverse_transform(X) 每个文档在X中返回非零条目的条款。
set_params(\ * \ * PARAMS) 设置该估计器的参数。
transform(raw_documents [,copy]) 将文档转换为文档术语矩阵。
__init__input = u'content',encoding = u'utf-8',decode_error = u'strict',strip_accents = None,lowercase = True,preprocessor = None,tokenizer = None,analyzer = u'word',stop_words = None,token_pattern = U '(?U)\\ b \\瓦特\\ W + \\ b' ,ngram_range =(1,1) ,max_df = 1.0,min_df = 1,max_features =无,词汇=无,二进制=假,dtype = <type'numpy.int64'>,norm = u'l2',use_idf = True,smooth_idf = True,sublinear_tf = False [source]
build_analyzer[source]

返回处理预处理和标记化的可调用

build_preprocessor[source]

返回一个函数,以便在标记化之前对文本进行预处理

build_tokenizer[source]

返回一个将字符串分成令牌序列的函数

decodedoc [来源]

将输入解码为一串Unicode码元

解码策略取决于矢量化器参数。

fitraw_documents,y = None [source]

从训练集学习词汇和idf。

参数:

raw_documents:iterable

一个可以产生str,unicode或文件对象的迭代

返回:

自我:TfidfVectorizer

fit_transformraw_documents,y = None [source]

学习词汇和idf,返回术语文档矩阵。

这相当于fit,然后变换,但更有效地实现。

参数:

raw_documents:iterable

一个可以产生str,unicode或文件对象的迭代

返回:

X:稀疏矩阵,[n_samples,n_features]

Tf-idf加权文档项矩阵。

get_feature_names[source]

从特征整数索引到特征名称的数组映射

get_paramsdeep = True [source]

获取此估计器的参数。

参数:

deep:boolean,可选

如果为True,将返回此估计器的参数,并包含作为估计量的子对象。

返回:

params:将字符串映射到任何

参数名映射到它们的值。

get_stop_words[source]

构建或获取有效的停止词列表

inverse_transform[来源]

每个文档在X中返回非零条目的条款。

参数:

X:{array,sparse matrix},shape = [n_samples,n_features]

返回:

X_inv:数组列表,len = n_samples

术语数组列表。

set_params**参数[来源]

设置该估计器的参数。

该方法适用于简单的估计器以及嵌套对象(如管道)。后者具有表单的参数, <component>__<parameter>以便可以更新嵌套对象的每个组件。

返回: 自我
transformraw_documents,copy = True [source]

将文档转换为文档术语矩阵。

使用由fit(或fit_transform)学习的词汇和文档频率(df)。

参数:

raw_documents:iterable

一个可以产生str,unicode或文件对象的迭代

copy:boolean,default True

是否复制X并对副本进行操作或执行就地操作。

返回:

X:稀疏矩阵,[n_samples,n_features]

Tf-idf加权文档项矩阵。

展开阅读全文

没有更多推荐了,返回首页