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.]])
posted @ 2018-10-16 17:19  pestle  阅读(10052)  评论(0编辑  收藏  举报