如何使用Sklearn在Logistic回归中得到权向量

时间:2017-11-11 21:58:41

标签: python numpy machine-learning scikit-learn

我有一个X特征矩阵和一个y标签矩阵,我正在使用二元逻辑回归如何在给定矩阵X特征和Y标签矩阵的情况下得到权重向量w。关于如何在sklean中实现这一点,我有点困惑。谢谢!

2 个答案:

答案 0 :(得分:9)

如果我理解正确您正在寻找the coef_ attribute

lr = LogisticRegression(C=1e5)
lr.fit(X, Y)

print(lr.coef_) # returns a matrix of weights (coefficients)

coef_属性的形状应为:(# of classes# of features

如果您还需要拦截(AKA偏向)列,请使用此:

np.hstack((clf.intercept_[:,None], clf.coef_))

这将为您提供一系列形状:(n_classesn_features + 1

答案 1 :(得分:0)

clf_bow_perb = LogisticRegression(C= 10, penalty= 'l2')
clf_bow_perb.fit(X_1,y_1)
y_pred = clf_bow_perb.predict(X_1)
print("Accuracy on test set: %0.3f%%"%(accuracy_score(y_1, y_pred)*100))
print("Non Zero weights:",np.count_nonzero(clf.coef_))