sklearn.pipeline.FeatureUnion¶
class sklearn.pipeline.FeatureUnion(transformer_list, *, n_jobs=None, transformer_weights=None, verbose=False)
连接多个转换器对象的结果。
这个估计器将转换器对象列表与输入数据并行应用,然后合并结果。这对于将多个特征提取机制组合到单个转换器中很有用。
可以使用转换器名称和以“__”分隔的参数名称来设置转换器的参数。可以通过将参数的名称设置为另一个转换器来完全替换一个转换器,也可以通过将其设置为“ drop”来删除它。
在用户指南中阅读更多内容。
版本0.13中的新功能。
参数 | 说明 |
---|---|
transformer_list | list of (string, transformer) tuples 要应用于数据的转换器对象列表。每个元组的前半部分是转换器的名称。 在0.22版中进行了更改:==不建议设置 None 因为转换器支持“ drop”。== |
n_jobs | int, default=None 要并行运行的CPU数。 None 除非在joblib.parallel_backend 环境中,否则表示1 。 -1 表示使用所有处理器。有关 更多详细信息,请参见词汇表。v0.20版中的更改: n_jobs 默认从1更改为None |
transformer_weights | dict, default=None 每个转换器的特征权重。键是转换器名称,权重值。 |
verbose | bool, default=False 如果为True,则在完成拟合时将会打印拟合每个转换器时所经过的时间。 |
属性 |
---|
n_features_in_ |
另见:
sklearn.pipeline.make_union
便利的函数可简化特征合并结构。
示例
>>> from sklearn.pipeline import FeatureUnion
>>> from sklearn.decomposition import PCA, TruncatedSVD
>>> union = FeatureUnion([("pca", PCA(n_components=1)),
... ("svd", TruncatedSVD(n_components=2))])
>>> X = [[0., 1., 3], [2., 2., 5]]
>>> union.fit_transform(X)
array([[ 1.5 , 3.0..., 0.8...],
[-1.5 , 5.7..., -0.4...]])
方法
方法 | 说明 |
---|---|
fit (X[, y]) |
使用X拟合所有转换器 |
fit_transform (X[, y]) |
拟合所有转换器,转换数据并连接结果 |
get_feature_names () |
获取所有转换器的特征名称。 |
get_params ([deep]) |
获取这个估计器的参数。 |
set_params (**kwargs) |
为这个估计器设置参数。 |
transform (X) |
由每个转换器分别转换X,连接结果 |
__init__(transformer_list, *, n_jobs=None, transformer_weights=None, verbose=False)
[源码]
初始化self。详情可参阅 type(self)的帮助。
fit(X, y=None, **fit_params)
[源码]
使用X拟合所有转换器
参数 | 说明 |
---|---|
X | iterable or array-like, depending on transformers 输入要转换的数据。 |
y | array-like of shape (n_samples, n_outputs), default=None 监督学习的标签 |
返回值 | 说明 |
---|---|
self | FeatureUnion 这个估计器 |
fit_transform(X, y=None, **fit_params)
[源码]
拟合所有转换器,转换数据并连接结果
参数 | 说明 |
---|---|
X | iterable or array-like, depending on transformers 输入要转换的数据。 |
y | array-like of shape (n_samples, n_outputs), default=None 监督学习的标签 |
返回值 | 说明 |
---|---|
X_t | array-like or sparse matrix of shape (n_samples, sum_n_components) transformers. sum_n_components横向拼接的结果是转换器上n_components(输出维数)的和。 |
get_feature_names()
[源码]
获取所有转换器的特征名称。
返回值 | 说明 |
---|---|
feature_names | list of strings 转换产生的特征的名称。 |
get_params(deep=True)
[源码]
获取这个估计器的参数。
参数 | 说明 |
---|---|
deep | bool, default=True 如果为True,则将返回这个估计器的参数和所包含的估计器子对象。 |
返回值 | 说明 |
---|---|
params | mapping of string to any 参数名映射到其值 |
set_params(**kwargs)
[源码]
为这个估计器设置参数。
有效的参数键可以用get_params()
列出。
返回值 |
---|
self |
transform(X)
[源码]
由每个转换器分别转换X,连接结果
参数 | 说明 |
---|---|
X | iterable or array-like, depending on transformers 输入要转换的数据。 |
返回值 | 说明 |
---|---|
X_t | array-like or sparse matrix of shape (n_samples, sum_n_components) transformers. sum_n_components横向拼接的结果是转换器上n_components(输出维数)的和。 |