SkewedChi2Sampler#

class sklearn.kernel_approximation.SkewedChi2Sampler(*, skewedness=1.0, n_components=100, random_state=None)[原始碼]#

「偏斜卡方」核函數的近似特徵映射。

詳情請參閱使用者指南

參數:
skewednessfloat,預設值為 1.0

核函數的「偏斜度」參數。需要進行交叉驗證。

n_componentsint,預設值為 100

每個原始特徵的蒙地卡羅樣本數。等於計算出的特徵空間的維度。

random_stateint、RandomState 實例或 None,預設值為 None

用於控制訓練資料擬合時隨機權重和隨機偏移產生的虛擬隨機數產生器。傳遞 int 以便在多次函數呼叫之間產生可重複的輸出。請參閱詞彙表

屬性:
random_weights_形狀為 (n_features, n_components) 的 ndarray

權重陣列,從雙曲正割分佈中取樣,將用於線性轉換資料的對數。

random_offset_形狀為 (n_features, n_components) 的 ndarray

偏差項,將被添加到資料中。它均勻分佈在 0 到 2*pi 之間。

n_features_in_int

fit期間看到的特徵數。

在版本 0.24 中新增。

feature_names_in_形狀為 (n_features_in_,) 的 ndarray

fit 期間看到的特徵名稱。僅當 X 具有全部為字串的特徵名稱時才定義。

在版本 1.0 中新增。

另請參閱

AdditiveChi2Sampler

Additive chi2 核函數的近似特徵映射。

Nystroem

使用訓練資料的子集來近似核函數映射。

RBFSampler

使用隨機傅立葉特徵來近似 RBF 核函數特徵映射。

SkewedChi2Sampler

「偏斜卡方」核函數的近似特徵映射。

sklearn.metrics.pairwise.chi2_kernel

確切的卡方核函數。

sklearn.metrics.pairwise.kernel_metrics

內建核函數列表。

參考文獻

請參閱 Fuxin Li、Catalin Ionescu 和 Cristian Sminchisescu 的「偏斜乘法直方圖核函數的隨機傅立葉近似」。

範例

>>> from sklearn.kernel_approximation import SkewedChi2Sampler
>>> from sklearn.linear_model import SGDClassifier
>>> X = [[0, 0], [1, 1], [1, 0], [0, 1]]
>>> y = [0, 0, 1, 1]
>>> chi2_feature = SkewedChi2Sampler(skewedness=.01,
...                                  n_components=10,
...                                  random_state=0)
>>> X_features = chi2_feature.fit_transform(X, y)
>>> clf = SGDClassifier(max_iter=10, tol=1e-3)
>>> clf.fit(X_features, y)
SGDClassifier(max_iter=10)
>>> clf.score(X_features, y)
1.0
fit(X, y=None)[原始碼]#

使用 X 擬合模型。

根據 n_features 對隨機投影進行取樣。

參數:
Xarray-like,形狀為 (n_samples, n_features)

訓練資料,其中 n_samples 是樣本數,n_features 是特徵數。

yarray-like,形狀為 (n_samples,) 或 (n_samples, n_outputs),預設值為 None

目標值(對於非監督轉換,則為 None)。

返回:
self物件

傳回實例本身。

fit_transform(X, y=None, **fit_params)[原始碼]#

擬合資料,然後轉換資料。

使用可選參數 fit_params 將轉換器擬合到 Xy,並傳回 X 的轉換版本。

參數:
Xarray-like,形狀為 (n_samples, n_features)

輸入樣本。

yarray-like,形狀為 (n_samples,) 或 (n_samples, n_outputs),預設值為 None

目標值(對於非監督轉換,則為 None)。

**fit_paramsdict

其他擬合參數。

返回:
X_new形狀為 (n_samples, n_features_new) 的 ndarray 陣列

轉換後的陣列。

get_feature_names_out(input_features=None)[原始碼]#

取得轉換的輸出特徵名稱。

輸出特徵名稱將以小寫的類別名稱作為前綴。例如,如果轉換器輸出 3 個特徵,則輸出特徵名稱為:["class_name0", "class_name1", "class_name2"]

參數:
input_featuresstr 或 None 的 array-like,預設值為 None

僅用於驗證特徵名稱是否與 fit 中看到的名稱一致。

返回:
feature_names_outstr 物件的 ndarray

轉換後的特徵名稱。

get_metadata_routing()[原始碼]#

取得此物件的中繼資料路由。

請查看使用者指南,了解路由機制的工作方式。

返回:
routingMetadataRequest

封裝路由資訊的MetadataRequest

get_params(deep=True)[原始碼]#

取得此估算器的參數。

參數:
deepbool,預設值為 True

如果為 True,則會傳回此估算器和包含的子物件(屬於估算器)的參數。

返回:
paramsdict

參數名稱對應到它們的值。

set_output(*, transform=None)[原始碼]#

設定輸出容器。

請參閱 介紹 set_output API 以了解如何使用此 API 的範例。

參數:
transform{“default”, “pandas”, “polars”}, default=None

設定 transformfit_transform 的輸出格式。

  • "default":轉換器的預設輸出格式

  • "pandas":DataFrame 輸出

  • "polars":Polars 輸出

  • None:轉換配置保持不變

在 1.4 版本中新增: 新增了 "polars" 選項。

返回:
self估計器實例

估計器實例。

set_params(**params)[原始碼]#

設定此估計器的參數。

此方法適用於簡單的估計器以及巢狀物件(例如 Pipeline)。後者具有 <元件>__<參數> 形式的參數,因此可以更新巢狀物件的每個元件。

參數:
**paramsdict

估計器參數。

返回:
self估計器實例

估計器實例。

transform(X)[原始碼]#

將近似的特徵映射應用於 X。

參數:
Xarray-like,形狀為 (n_samples, n_features)

新數據,其中 n_samples 是樣本數,而 n_features 是特徵數。X 的所有值都必須嚴格大於 “-skewedness”。

返回:
X_new類陣列,形狀 (n_samples, n_components)

傳回實例本身。