python中predict函数_sklearn中predict()与predict_proba()用法区别

predict是训练后返回预测结果,是标签值。

predict_proba返回的是一个 n 行 k 列的数组, 第 i 行 第 j 列上的数值是模型预测 第 i 个预测样本为某个标签的概率,并且每一行的概率和为1。

# conding :utf-8

from sklearn.linear_model import LogisticRegression

import numpy as np

x_train = np.array([[1,2,3],

[1,3,4],

[2,1,2],

[4,5,6],

[3,5,3],

[1,7,2]])

y_train = np.array([3, 3, 3, 2, 2, 2])

x_test = np.array([[2,2,2],

[3,2,6],

[1,7,4]])

clf = LogisticRegression()

clf.fit(x_train, y_train)

# 返回预测标签

print(clf.predict(x_test))

# [2 3 2]

# 返回预测属于某标签的概率

print(clf.predict_proba(x_test))

# [[0.56651809 0.43348191]

# [0.15598162 0.84401838]

# [0.86852502 0.13147498]]

# 分析结果:

# 预测[2,2,2]的标签是2的概率为0.56651809,3的概率为0.43348191

# 预测[3,2,6]的标签是2的概率为0.15598162,3的概率为0.84401838

# 预测[1,7,4]的标签是2的概率为0.86852502,3的概率为0.13147498

你可能感兴趣的:(python中predict函数_sklearn中predict()与predict_proba()用法区别)