AdditiveChi2Sampler#
- class sklearn.kernel_approximation.AdditiveChi2Sampler(*, sample_steps=2, sample_interval=None)[原始碼]#
用於加性卡方核的近似特徵映射。
使用在規則間隔採樣核特徵的傅立葉變換。
由於要近似的核函數是可加性的,因此輸入向量的各個組成部分可以單獨處理。原始空間中的每個條目都會轉換為 2*sample_steps-1 個特徵,其中 sample_steps 是此方法的一個參數。sample_steps 的典型值包括 1、2 和 3。
可以計算特定資料範圍的取樣間隔的最佳選擇(請參閱參考文獻)。預設值應該是合理的。
請在 使用者指南 中閱讀更多資訊。
- 參數:
- sample_stepsint,預設值=2
給定(複數)取樣點的數量。
- sample_intervalfloat,預設值=None
取樣間隔。當 sample_steps 不在 {1,2,3} 中時必須指定。
- 屬性:
另請參閱
SkewedChi2Sampler
卡方核函數的非可加變體的傅立葉近似。
sklearn.metrics.pairwise.chi2_kernel
精確的卡方核函數。
sklearn.metrics.pairwise.additive_chi2_kernel
精確的可加卡方核函數。
注意事項
此估算器近似於與
metric.additive_chi2
計算結果略有不同的可加卡方核函數版本。此估算器是無狀態的,不需要擬合。但是,我們建議呼叫
fit_transform
而不是transform
,因為參數驗證僅在fit
中執行。參考文獻
請參閱 “透過顯式特徵映射實現有效率的可加核函數” A. Vedaldi 和 A. Zisserman,《Pattern Analysis and Machine Intelligence》,2011 年
範例
>>> from sklearn.datasets import load_digits >>> from sklearn.linear_model import SGDClassifier >>> from sklearn.kernel_approximation import AdditiveChi2Sampler >>> X, y = load_digits(return_X_y=True) >>> chi2sampler = AdditiveChi2Sampler(sample_steps=2) >>> X_transformed = chi2sampler.fit_transform(X, y) >>> clf = SGDClassifier(max_iter=5, random_state=0, tol=1e-3) >>> clf.fit(X_transformed, y) SGDClassifier(max_iter=5, random_state=0) >>> clf.score(X_transformed, y) 0.9499...
- fit(X, y=None)[原始碼]#
僅驗證估算器的參數。
此方法允許:(i) 驗證估算器的參數,以及 (ii) 與 scikit-learn 轉換器 API 保持一致。
- 參數:
- X類陣列,形狀 (n_samples, n_features)
訓練資料,其中
n_samples
是樣本數,n_features
是特徵數。- y類陣列,形狀 (n_samples,) 或 (n_samples, n_outputs),預設值=None
目標值(對於無監督轉換為 None)。
- 傳回值:
- self物件
傳回轉換器。
- fit_transform(X, y=None, **fit_params)[原始碼]#
擬合資料,然後轉換資料。
使用可選參數
fit_params
將轉換器擬合到X
和y
,並傳回X
的轉換版本。- 參數:
- X形狀為 (n_samples, n_features) 的類陣列
輸入樣本。
- y形狀為 (n_samples,) 或 (n_samples, n_outputs) 的類陣列,預設值=None
目標值(對於無監督轉換為 None)。
- **fit_params字典
其他擬合參數。
- 傳回值:
- X_new形狀為 (n_samples, n_features_new) 的 ndarray 陣列
轉換後的陣列。
- get_feature_names_out(input_features=None)[原始碼]#
取得轉換的輸出特徵名稱。
- 參數:
- input_featuresstr 的類陣列或 None,預設值=None
僅用於驗證特徵名稱是否與在
fit
中看到的名稱相同。
- 傳回值:
- feature_names_outstr 物件的 ndarray
轉換後的特徵名稱。
- get_metadata_routing()[原始碼]#
取得此物件的中繼資料路由。
請查看關於路由機制如何運作的使用者指南。
- 傳回值:
- routingMetadataRequest
封裝路由資訊的
MetadataRequest
。
- get_params(deep=True)[原始碼]#
取得此估算器的參數。
- 參數:
- deepbool,預設值=True
如果為 True,將傳回此估算器和所包含的子物件(也就是估算器)的參數。
- 傳回值:
- params字典
對應到其值的參數名稱。
- set_output(*, transform=None)[原始碼]#
設定輸出容器。
請參閱 介紹 set_output API 以了解如何使用此 API 的範例。
- 參數:
- transform{“default”, “pandas”, “polars”}, 預設值=None
設定
transform
和fit_transform
的輸出格式。"default"
: 轉換器的預設輸出格式"pandas"
: DataFrame 輸出"polars"
: Polars 輸出None
: 轉換設定保持不變
1.4 版本新增: 新增了
"polars"
選項。
- 傳回值:
- self估算器實例
估算器實例。