本文簡要介紹python語言中 sklearn.linear_model.Perceptron
的用法。
用法:
class sklearn.linear_model.Perceptron(*, penalty=None, alpha=0.0001, l1_ratio=0.15, fit_intercept=True, max_iter=1000, tol=0.001, shuffle=True, verbose=0, eta0=1.0, n_jobs=None, random_state=0, early_stopping=False, validation_fraction=0.1, n_iter_no_change=5, class_weight=None, warm_start=False)
線性感知器分類器。
在用戶指南中閱讀更多信息。
- penalty:{‘l2’,'l1','elasticnet'},默認=無
要使用的懲罰(又名正則化項)。
- alpha:浮點數,默認=0.0001
如果使用正則化,則乘以正則化項的常數。
- l1_ratio:浮點數,默認=0.15
彈性網絡混合參數,帶有
0 <= l1_ratio <= 1
。l1_ratio=0
對應 L2 懲罰,l1_ratio=1
對應 L1。僅在penalty='elasticnet'
時使用。- fit_intercept:布爾,默認=真
是否應該估計截距。如果為 False,則假定數據已經居中。
- max_iter:整數,默認=1000
訓練數據的最大傳遞次數(又名 epochs)。它隻影響
fit
方法中的行為,而不影響partial_fit
方法中的行為。- tol:浮點數,默認=1e-3
停止標準。如果不是 None,迭代將在 (loss > previous_loss - tol) 時停止。
- shuffle:布爾,默認=真
是否應該在每個 epoch 之後對訓練數據進行洗牌。
- verbose:整數,默認=0
詳細程度。
- eta0:浮點數,默認=1
更新乘以的常數。
- n_jobs:整數,默認=無
用於進行 OVA(One Versus All,針對多類問題)計算的 CPU 數量。
None
表示 1,除非在joblib.parallel_backend
上下文中。-1
表示使用所有處理器。有關更多詳細信息,請參閱術語表。- random_state:int,RandomState 實例,默認=無
當
shuffle
設置為True
時,用於對訓練數據進行洗牌。傳遞 int 以獲得跨多個函數調用的可重現輸出。請參閱詞匯表。- early_stopping:布爾,默認=假
驗證時是否使用提前停止終止訓練。分數沒有提高。如果設置為 True,它將自動將訓練數據的分層部分留作驗證,並在驗證分數沒有至少提高 n_iter_no_change 個連續 epoch 時終止訓練。
- validation_fraction:浮點數,默認=0.1
留出作為提前停止驗證集的訓練數據的比例。必須介於 0 和 1 之間。僅在 early_stopping 為 True 時使用。
- n_iter_no_change:整數,默認=5
在提前停止之前等待沒有改進的迭代次數。
- class_weight:dict, {class_label: weight} 或 “balanced”, 默認=無
class_weight 擬合參數的預設。
與類相關的權重。如果沒有給出,所有的類都應該有一個權重。
“balanced” 模式使用 y 的值自動調整與輸入數據中的類頻率成反比的權重,如
n_samples / (n_classes * np.bincount(y))
。- warm_start:布爾,默認=假
當設置為 True 時,重用之前調用的解決方案作為初始化,否則,隻需擦除之前的解決方案。請參閱詞匯表。
- classes_:ndarray 形狀 (n_classes,)
唯一的類標簽。
- coef_:ndarray of shape (1, n_features) if n_classes == 2 else (n_classes, n_features)
分配給特征的權重。
- intercept_:ndarray 形狀 (1,) if n_classes == 2 else (n_classes,)
決策函數中的常數。
- loss_function_:混凝土LossFunction
確定算法輸出與目標值之間的損失或差異的函數。
- n_features_in_:int
擬合期間看到的特征數。
- feature_names_in_:ndarray 形狀(
n_features_in_
,) 擬合期間看到的特征名稱。僅當
X
具有全為字符串的函數名稱時才定義。- n_iter_:int
達到停止標準的實際迭代次數。對於多類擬合,它是每個二元擬合的最大值。
- t_:int
訓練期間執行的權重更新次數。與
(n_iter_ * n_samples)
相同。
參數:
屬性:
注意:
Perceptron
是一種分類算法,它與SGDClassifier
共享相同的底層實現。事實上,Perceptron()
等價於SGDClassifier(loss="perceptron", eta0=1, learning_rate="constant", penalty=None)
。參考:
https://en.wikipedia.org/wiki/Perceptron and references therein.
例子:
>>> from sklearn.datasets import load_digits >>> from sklearn.linear_model import Perceptron >>> X, y = load_digits(return_X_y=True) >>> clf = Perceptron(tol=1e-3, random_state=0) >>> clf.fit(X, y) Perceptron() >>> clf.score(X, y) 0.939...
相關用法
- Python sklearn PowerTransformer.inverse_transform用法及代碼示例
- Python sklearn PredefinedSplit用法及代碼示例
- Python sklearn ParameterGrid用法及代碼示例
- Python sklearn PatchExtractor用法及代碼示例
- Python sklearn PolynomialFeatures用法及代碼示例
- Python sklearn PassiveAggressiveClassifier用法及代碼示例
- Python sklearn Product用法及代碼示例
- Python sklearn PLSRegression用法及代碼示例
- Python sklearn PrecisionRecallDisplay.from_predictions用法及代碼示例
- Python sklearn PrecisionRecallDisplay用法及代碼示例
- Python sklearn PCA用法及代碼示例
- Python sklearn PrecisionRecallDisplay.from_estimator用法及代碼示例
- Python sklearn PairwiseKernel用法及代碼示例
- Python sklearn PLSSVD用法及代碼示例
- Python sklearn PLSCanonical用法及代碼示例
- Python sklearn Pipeline用法及代碼示例
- Python sklearn PassiveAggressiveRegressor用法及代碼示例
- Python sklearn PowerTransformer用法及代碼示例
- Python sklearn PolynomialCountSketch用法及代碼示例
- Python sklearn ParameterSampler用法及代碼示例
- Python sklearn PartialDependenceDisplay.from_estimator用法及代碼示例
- Python sklearn PoissonRegressor用法及代碼示例
- Python sklearn jaccard_score用法及代碼示例
- Python sklearn WhiteKernel用法及代碼示例
- Python sklearn CalibrationDisplay.from_predictions用法及代碼示例
注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.linear_model.Perceptron。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。