RidgeClassifierCV#
- class sklearn.linear_model.RidgeClassifierCV(alphas=(0.1, 1.0, 10.0), *, fit_intercept=True, scoring=None, cv=None, class_weight=None, store_cv_results=None, store_cv_values='deprecated')[來源]#
具有內建交叉驗證的 Ridge 分類器。
請參閱 交叉驗證估計器 的詞彙表條目。
預設情況下,它執行留一交叉驗證。目前,僅有效處理 n_features > n_samples 的情況。
在 使用者指南 中閱讀更多內容。
- 參數:
- alphas形狀為 (n_alphas,) 的類陣列,預設值為 (0.1, 1.0, 10.0)
嘗試使用的 alpha 值陣列。正規化強度;必須為正浮點數。正規化可以改善問題的條件並減少估計值的變異數。數值越大表示正規化越強。Alpha 對應於其他線性模型(例如
LogisticRegression
或LinearSVC
)中的1 / (2C)
。如果使用留一交叉驗證,alpha 值必須嚴格為正數。- fit_interceptbool,預設值為 True
是否計算此模型的截距。如果設定為 false,則計算中不會使用截距(即,預期資料已置中)。
- scoringstr、callable,預設值為 None
字串(請參閱 評分參數:定義模型評估規則)或具有簽名
scorer(estimator, X, y)
的評分器可呼叫物件/函式。- cvint、交叉驗證產生器或可迭代物件,預設值為 None
決定交叉驗證的分割策略。cv 的可能輸入為
None,使用高效的留一交叉驗證
整數,指定摺疊數。
一個可迭代物件,產生 (訓練,測試) 分割,作為索引陣列。
有關此處可使用的各種交叉驗證策略,請參閱 使用者指南。
- class_weightdict 或 ‘balanced’,預設值為 None
與類別相關聯的權重,形式為
{class_label: weight}
。如果未提供,則假設所有類別的權重為 1。“balanced” 模式使用 y 的值來自動調整權重,其與輸入資料中的類別頻率成反比,計算方式為
n_samples / (n_classes * np.bincount(y))
。- store_cv_resultsbool,預設值為 False
標記,指示是否應將每個 alpha 對應的交叉驗證結果儲存在
cv_results_
屬性中(請參閱下方)。此標記僅與cv=None
相容(即使用留一交叉驗證)。在 1.5 版本中變更:參數名稱從
store_cv_values
變更為store_cv_results
。- store_cv_valuesbool
標記,指示是否應將每個 alpha 對應的交叉驗證值儲存在
cv_values_
屬性中(請參閱下方)。此標記僅與cv=None
相容(即使用留一交叉驗證)。自 1.5 版本起已棄用:
store_cv_values
已在 1.5 版本中棄用,改用store_cv_results
,並將在 1.7 版本中移除。
- 屬性:
- cv_results_形狀為 (n_samples, n_targets, n_alphas) 的 ndarray,可選
每個 alpha 的交叉驗證結果(僅當
store_cv_results=True
且cv=None
時)。在呼叫fit()
之後,如果scoring is None
,此屬性將包含均方誤差,否則將包含標準化的每點預測值。在 1.5 版本中變更:
cv_values_
變更為cv_results_
。- coef_形狀為 (1, n_features) 或 (n_targets, n_features) 的 ndarray
決策函數中特徵的係數。
當給定的問題是二元時,
coef_
的形狀為 (1, n_features)。- intercept_浮點數或形狀為 (n_targets,) 的 ndarray
決策函數中的獨立項。如果
fit_intercept = False
,則設定為 0.0。- alpha_浮點數
估計的正規化參數。
- best_score_浮點數
具有最佳 alpha 的基本估計器的分數。
在 0.23 版本中新增。
classes_
形狀為 (n_classes,) 的 ndarray類別標籤。
- n_features_in_整數
在 fit 期間看到的特徵數量。
在 0.24 版本中新增。
- feature_names_in_形狀為 (
n_features_in_
,) 的 ndarray 在 fit 期間看到的特徵名稱。僅當
X
具有全為字串的特徵名稱時才定義。在 1.0 版本中新增。
另請參閱
Ridge
嶺迴歸。
RidgeClassifier
嶺分類器。
RidgeCV
具有內建交叉驗證的嶺迴歸。
注意事項
對於多類別分類,會在「一對多」方法中訓練 n_class 分類器。具體而言,這是透過利用 Ridge 中的多變數回應支援來實作的。
範例
>>> from sklearn.datasets import load_breast_cancer >>> from sklearn.linear_model import RidgeClassifierCV >>> X, y = load_breast_cancer(return_X_y=True) >>> clf = RidgeClassifierCV(alphas=[1e-3, 1e-2, 1e-1, 1]).fit(X, y) >>> clf.score(X, y) 0.9630...
- property classes_#
類別標籤。
- decision_function(X)[原始碼]#
預測樣本的信賴分數。
樣本的信賴分數與該樣本到超平面的有符號距離成正比。
- 參數:
- X形狀為 (n_samples, n_features) 的類陣列、稀疏矩陣
我們想要取得信賴分數的資料矩陣。
- 傳回值:
- scores形狀為 (n_samples,) 或 (n_samples, n_classes) 的 ndarray
每個
(n_samples, n_classes)
組合的信賴分數。在二元情況下,self.classes_[1]
的信賴分數,其中 >0 表示將預測此類別。
- fit(X, y, sample_weight=None, **params)[原始碼]#
使用 cv 擬合嶺分類器。
- 參數:
- X形狀為 (n_samples, n_features) 的 ndarray
訓練向量,其中
n_samples
是樣本數量,而n_features
是特徵數量。當使用 GCV 時,如有必要將會轉換為 float64 型別。- y形狀為 (n_samples,) 的 ndarray
目標值。如有必要,將會轉換為 X 的資料型別。
- sample_weightfloat 或形狀為 (n_samples,) 的 ndarray,預設值為 None
每個樣本的個別權重。如果給定一個 float,則每個樣本將具有相同的權重。
- **paramsdict,預設值為 None
要傳遞給底層評分器的參數。
在 1.5 版本中新增: 僅當
enable_metadata_routing=True
時才可用,此設定可透過使用sklearn.set_config(enable_metadata_routing=True)
來設定。有關更多詳細資訊,請參閱 中繼資料路由使用者指南。
- 傳回值:
- self物件
已擬合的估計器。
- get_metadata_routing()[原始碼]#
取得此物件的中繼資料路由。
請查看 使用者指南,了解路由機制如何運作。
在 1.5 版本中新增。
- 傳回值:
- routingMetadataRouter
一個封裝路由資訊的
MetadataRouter
。
- get_params(deep=True)[原始碼]#
取得此估計器的參數。
- 參數:
- deepbool,預設值為 True
如果為 True,將會傳回此估計器以及所包含的子物件(亦為估計器)的參數。
- 傳回值:
- paramsdict
參數名稱對應到其值的字典。
- predict(X)[原始碼]#
預測
X
中樣本的類別標籤。- 參數:
- X形狀為 (n_samples, n_features) 的 {類陣列, 稀疏矩陣}
我們想要預測目標值的資料矩陣。
- 傳回值:
- y_pred形狀為 (n_samples,) 或 (n_samples, n_outputs) 的 ndarray
包含預測值的向量或矩陣。在二元和多類別問題中,這是一個包含
n_samples
的向量。在多標籤問題中,它會傳回形狀為(n_samples, n_outputs)
的矩陣。
- score(X, y, sample_weight=None)[原始碼]#
傳回給定測試資料和標籤的平均準確度。
在多標籤分類中,這是子集準確度,由於您需要每個樣本的每個標籤集都被正確預測,因此這是一個嚴苛的指標。
- 參數:
- X形狀為 (n_samples, n_features) 的類陣列
測試樣本。
- y形狀為 (n_samples,) 或 (n_samples, n_outputs) 的類陣列
X
的真實標籤。- sample_weight形狀為 (n_samples,) 的類陣列,預設值為 None
樣本權重。
- 傳回值:
- scorefloat
self.predict(X)
相對於y
的平均準確度。
- set_fit_request(*, sample_weight: bool | None | str = '$UNCHANGED$') RidgeClassifierCV [原始碼]#
請求傳遞給
fit
方法的中繼資料。請注意,只有當
enable_metadata_routing=True
時,此方法才相關(請參閱sklearn.set_config
)。有關路由機制如何運作,請參閱 使用者指南。每個參數的選項為:
True
:請求中繼資料,並在提供時傳遞給fit
。如果未提供中繼資料,則忽略請求。False
:不請求中繼資料,並且 meta-estimator 不會將其傳遞給fit
。None
:不請求中繼資料,如果使用者提供中繼資料,則 meta-estimator 將會引發錯誤。str
:中繼資料應該以這個給定的別名傳遞給 meta-estimator,而不是原始名稱。
預設值 (
sklearn.utils.metadata_routing.UNCHANGED
) 會保留現有的請求。這允許您變更某些參數的請求,而不是其他參數。在 1.3 版本中新增。
注意
只有當此估計器用作 meta-estimator 的子估計器時,例如在
Pipeline
內部使用時,此方法才相關。否則,它沒有任何作用。- 參數:
- sample_weightstr、True、False 或 None,預設值為 sklearn.utils.metadata_routing.UNCHANGED
用於
fit
中的sample_weight
參數的中繼資料路由。
- 傳回值:
- self物件
更新後的物件。
- set_params(**params)[來源]#
設定此估算器的參數。
此方法適用於簡單的估算器以及巢狀物件(例如
Pipeline
)。後者具有<component>__<parameter>
形式的參數,因此可以更新巢狀物件的每個元件。- 參數:
- **paramsdict
估算器參數。
- 傳回值:
- self估算器實例
估算器實例。
- set_score_request(*, sample_weight: bool | None | str = '$UNCHANGED$') RidgeClassifierCV [來源]#
請求傳遞給
score
方法的中繼資料。請注意,只有當
enable_metadata_routing=True
時,此方法才相關(請參閱sklearn.set_config
)。有關路由機制如何運作,請參閱 使用者指南。每個參數的選項為:
True
:請求中繼資料,並在提供時傳遞給score
。如果未提供中繼資料,則會忽略該請求。False
:不請求中繼資料,並且元估算器不會將其傳遞給score
。None
:不請求中繼資料,如果使用者提供中繼資料,則 meta-estimator 將會引發錯誤。str
:中繼資料應該以這個給定的別名傳遞給 meta-estimator,而不是原始名稱。
預設值 (
sklearn.utils.metadata_routing.UNCHANGED
) 會保留現有的請求。這允許您變更某些參數的請求,而不是其他參數。在 1.3 版本中新增。
注意
只有當此估計器用作 meta-estimator 的子估計器時,例如在
Pipeline
內部使用時,此方法才相關。否則,它沒有任何作用。- 參數:
- sample_weightstr、True、False 或 None,預設值為 sklearn.utils.metadata_routing.UNCHANGED
用於
score
中sample_weight
參數的中繼資料路由。
- 傳回值:
- self物件
更新後的物件。