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
 

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐