sklearn.neural_network.MLPClassifier參數說明


sklearn.neural_network.MLPClassifier

MLPClassifier(hidden_layer_sizes=(100, ), activation='relu', 
    solver='adam', alpha=0.0001, batch_size='auto', 
    learning_rate='constant', learning_rate_init=0.001, 
    power_t=0.5, max_iter=200, shuffle=True, 
    random_state=None, tol=0.0001, verbose=False, 
    warm_start=False, momentum=0.9, nesterovs_momentum=True, 
    early_stopping=False, validation_fraction=0.1, 
    beta_1=0.9, beta_2=0.999, epsilon=1e-08, 
    n_iter_no_change=10)
  • hidden_layer_sizes:tuple,第i個元素表示第i個隱藏層的神經元個數。
  • activation:隱藏層激活函數,identity、logistic、tanh、relu。
  • solver:權重優化算法,lbfgs、sgd、adam。
  • alpha:正則化項參數。
  • batch_size:隨機優化的minibatches的大小。
  • learning_rate:學習率,constant、invscaling、adaptive。
  • learning_rate_init:初始學習率。只有當solver爲sgd或adam時才使用。
  • power_t:逆擴展學習率的指數,只有當solver爲sgd時才使用。
  • max_iter:最大迭代次數。
  • shuffle:是否在每次迭代時對樣本進行清洗,當solver爲sgd或adam時使用。
  • random_state:隨機數種子。
  • tol:優化算法中止的條件。當迭代先後的函數差值小於等於tol時就中止。
  • verbose:是否將過程打印出。
  • warm_start:是否使用以前的解決方法做爲初始擬合。
  • momentum:梯度降低的動量,介於0到1之間,solver爲sgd時使用。
  • nesterovs_momentum:是否使用Nesterov動量。
  • early_stopping:判斷當驗證效果再也不改善時是否終止訓練。
  • validation_fraction:用做早起中止驗證的預留訓練集的比例,0到1之間。
  • beta_1:估計一階矩向量的指數衰減速率,[0,1)之間。
  • beta_2:估計二階矩向量的指數衰減速率,[0,1)之間。
  • epsilon:數值穩定值,solver爲adam時使用。

返回值屬性說明

  • classes_:每一個輸出的類標籤,大小爲(n_classes,)。
  • loss_:損失函數計算出的當前損失值。
  • coefs_:列表中的第i個元素表示i層的權重矩陣。
  • intercepts_:列表中第i個元素表示i+1層的誤差向量。
  • n_iter_:迭代次數。
  • n_layers_:層數。
  • n_outputs_:輸出的個數。
  • out_activation_:輸出激活函數的名稱。

返回值方法說明

  • fit(X,y):擬合。
  • get_params():獲取參數。
  • predict(X):進行預測。
  • predict_log_proba(X):對數機率估計。
  • predict_proba(X):機率估計。
  • score(X, y):返回給定測試數據和標籤的平均準確度。
  • set_params():設置參數。
from sklearn.neural_network import MLPClassifier

X = [[0., 0.], [1., 1.]]
y = [0, 1]

clf = MLPClassifier(solver='lbfgs', alpha=1e-5, hidden_layer_sizes=(5,2), random_state=1)
clf.fit(X, y)

clf.predict([[2., 2.], [-1., -2.]])
相關文章
相關標籤/搜索