y_train_prob = clf.predict_proba(X_train)[:, 1]
这行代码让我疑惑,它究竟是什么意思呢?
查资料外做实验,搞懂了。
print(clf.predict(x_test))
# 返回预测标签
就是预测值是哪些
print(clf.predict_proba(x_test))
# 返回预测属于某标签的概率
就是属于某类预测值的概率是多少
而对于[:,1]
是取二维数组中第二维的所有数据
举个例子:
y_train_prob = clf.predict_proba(X_train)[:, 1]
print("clf.predict_proba(X_train)")
print(clf.predict_proba(X_train))
print("clf.predict_proba(X_train)[:, 1]")
print(y_train_prob)
输出是:
含义是:预测X_rain[1. 0. 1. ... 0. 1. 0.]的标签是0的概率为0.94005474 ,为1的概率为0.05994526