Python sklearn中的.fit与.predict的用法说明


Posted in Python onJune 28, 2020

我就废话不多说了,大家还是直接看代码吧~

clf=KMeans(n_clusters=5) #创建分类器对象
fit_clf=clf.fit(X) #用训练器数据拟合分类器模型
clf.predict(X) #也可以给新数据数据对其预测

print(clf.cluster_centers_) #输出5个类的聚类中心

y_pred = clf.fit_predict(X) #用训练器数据X拟合分类器模型并对训练器数据X进行预测

print(y_pred) #输出预测结果

补充知识:sklearn中调用某个机器学习模型model.predict(x)和model.predict_proba(x)的区别

model.predict_proba(x)不同于model.predict(),它返回的预测值为获得所有结果的概率。(有多少个分类结果,每行就有多少个概率,对每个结果都有一个概率值,如0、1两分类就有两个概率)

我们直接上代码,通过具体例子来进一步讲解:

python3 代码实现:

# -*- coding: utf-8 -*-
"""
Created on Sat Jul 27 21:25:39 2019

@author: ZQQ
"""
from sklearn.linear_model import LogisticRegression
from sklearn.ensemble import RandomForestClassifier
from xgboost import XGBClassifier
import numpy as np
import warnings
warnings.filterwarnings("ignore")
# 这个方法只是解决了表面,没有根治

# 数据(特征,属性)
x_train = np.array([[1,2,3], 
          [1,5,4], 
          [2,2,2], 
          [4,5,6], 
          [3,5,4], 
          [1,7,2]]) 
# 数据的标签
y_train = np.array([1, 0, 1, 1, 0, 0]) 
 
# 测试数据
x_test = np.array([[2,1,2], 
          [3,2,6], 
          [2,6,4]]) 
 
# 导入模型
model = LogisticRegression() 
 
#model = RandomForestClassifier()

#model=XGBClassifier()

model.fit(x_train, y_train)

# 返回预测标签 
print(model.predict(x_test)) 
 
print('---------------------------------------')

# 返回预测属于某标签的概率 
print(model.predict_proba(x_test))

运行结果:

Python sklearn中的.fit与.predict的用法说明

分析结果:

使用model.predict() :

预测[2,1,2]为1类

预测[3,2,6]为1类

预测[2,6,4]为0类

使用model.predict_proba() :

预测[2,1,2]的标签是0的概率为0.19442289,1的概率为0.80557711

预测[3,2,6]的标签是0的概率为0.04163615,1的概率为0.95836385

预测[2,6,4]的标签是0的概率为0.83059324,1的概率为0.16940676

预测为0类的概率值和预测为1的概率值和为1

同理,如果标签继续增加,3类:0,1, 2

预测为0类的概率值:a

预测为1类的概率值:b

预测为2类的概率值:c

预测出来的概率值的和a+b+c=1

注:model.predict_proba()返回所有标签值可能性概率值,这些值是如何排序的呢?

返回模型中每个类的样本概率,其中类按类self.classes_进行排序。

通过numpy.unique(label)方法,对label中的所有标签值进行从小到大的去重排序。

得到一个从小到大唯一值的排序。这也就对应于model.predict_proba()的行返回结果。

以上这篇Python sklearn中的.fit与.predict的用法说明就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
尝试用最短的Python代码来实现服务器和代理服务器
Jun 23 Python
python 实时得到cpu和内存的使用情况方法
Jun 11 Python
对Python中内置异常层次结构详解
Oct 18 Python
在python 不同时区之间的差值与转换方法
Jan 14 Python
python3实现elasticsearch批量更新数据
Dec 03 Python
Python 使用 prettytable 库打印表格美化输出功能
Dec 26 Python
Django CSRF认证的几种解决方案
Mar 03 Python
OpenCV读取与写入图片的实现
Oct 13 Python
python代码实现猜拳小游戏
Nov 30 Python
Python创建简单的神经网络实例讲解
Jan 04 Python
python实现批量移动文件
Apr 05 Python
python机器学习实现oneR算法(以鸢尾data为例)
Mar 03 Python
浅谈sklearn中predict与predict_proba区别
Jun 28 #Python
解决Pytorch自定义层出现多Variable共享内存错误问题
Jun 28 #Python
Pytorch学习之torch用法----比较操作(Comparison Ops)
Jun 28 #Python
PyTorch的torch.cat用法
Jun 28 #Python
使用pytorch 筛选出一定范围的值
Jun 28 #Python
解析python 中/ 和 % 和 //(地板除)
Jun 28 #Python
pytorch 常用函数 max ,eq说明
Jun 28 #Python
You might like
php的SimpleXML方法读写XML接口文件实例解析
2014/06/16 PHP
PHP SOCKET编程详解
2015/05/22 PHP
用php和jQuery来实现“顶”和“踩”的投票功能
2016/10/13 PHP
thinkPHP多语言切换设置方法详解
2016/11/11 PHP
PHP的简单跳转提示的实现详解
2019/03/14 PHP
tp5.1 框架join方法用法实例分析
2020/05/26 PHP
服务器安全设置的几个注册表设置
2007/07/28 Javascript
Jquery Ajax学习实例 向页面发出请求,返回XML格式数据
2010/03/14 Javascript
JavaScript之appendChild、insertBefore和insertAfter使用说明
2010/12/30 Javascript
精心挑选的15个jQuery下拉菜单制作教程
2012/06/15 Javascript
js multiple全选与取消全选实现代码
2012/12/04 Javascript
jQuery制作简洁的图片轮播效果
2015/04/03 Javascript
javascript实现全角半角检测的方法
2015/07/23 Javascript
jQuery地图map悬停显示省市代码分享
2015/08/20 Javascript
实例解析JS布尔对象的toString()方法和valueOf()方法
2015/10/25 Javascript
jQuery Validate初步体验(一)
2015/12/12 Javascript
BootStrap入门教程(三)之响应式原理
2016/09/19 Javascript
JavaScript实现使用Canvas绘制图形的基本教程
2016/10/27 Javascript
Angular.Js之Scope作用域的学习教程
2017/04/27 Javascript
ES6中Class类的静态方法实例小结
2017/10/28 Javascript
详释JavaScript执行环境与执行栈
2019/04/02 Javascript
在vue项目中promise解决回调地狱和并发请求的问题
2020/11/09 Javascript
JS addEventListener()和attachEvent()方法实现注册事件
2021/01/11 Javascript
[01:29:42]Liquid vs VP Supermajor决赛 BO 第一场 6.10
2018/07/05 DOTA
python算法学习之计数排序实例
2013/12/18 Python
Python 20行简单实现有道在线翻译的详解
2019/05/15 Python
python字符串和常用数据结构知识总结
2019/05/21 Python
python 实现矩阵填充0的例子
2019/11/29 Python
python 穷举指定长度的密码例子
2020/04/02 Python
给keras层命名,并提取中间层输出值,保存到文档的实例
2020/05/23 Python
如何用python处理excel表格
2020/06/09 Python
canvas 橡皮筋式线条绘图应用方法
2019/02/13 HTML / CSS
Luxplus荷兰:以会员价购买美容产品等,独家优惠
2019/08/30 全球购物
小学教师师德感言
2014/02/10 职场文书
党员创先争优承诺书
2014/03/26 职场文书
放飞中国梦演讲稿
2014/04/23 职场文书