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使用minidom读写xml的方法
Jun 03 Python
Python实现把json格式转换成文本或sql文件
Jul 10 Python
Python cookbook(数据结构与算法)让字典保持有序的方法
Feb 18 Python
Python实现的个人所得税计算器示例
Jun 01 Python
python2和python3的输入和输出区别介绍
Nov 20 Python
对Python中创建进程的两种方式以及进程池详解
Jan 14 Python
python实现给微信指定好友定时发送消息
Apr 29 Python
python多线程+代理池爬取天天基金网、股票数据过程解析
Aug 13 Python
详解Python中打乱列表顺序random.shuffle()的使用方法
Nov 11 Python
python IP地址转整数
Nov 20 Python
python 调整图片亮度的示例
Dec 03 Python
Python中使用tkFileDialog实现文件选择、保存和路径选择
May 20 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
德生PL660的电路分析和打磨
2021/03/02 无线电
php实现读取内存顺序号
2015/03/29 PHP
PHP+MySQL实现的简单投票系统实例
2016/02/24 PHP
Yii开启片段缓存的方法
2016/03/28 PHP
PHP+Ajax实现验证码的实时验证
2016/07/20 PHP
适合PHP初学者阅读的4本经典书籍
2016/09/23 PHP
javascript中使用css需要注意的地方小结
2010/09/01 Javascript
jQuery)扩展jQuery系列之一 模拟alert,confirm(一)
2010/12/04 Javascript
JS Date函数整理方便使用
2013/10/23 Javascript
jquery复选框全选/取消示例
2013/12/30 Javascript
jQuery截取指定长度字符串的实现原理及代码
2014/07/01 Javascript
Angularjs material 实现搜索框功能
2016/03/08 Javascript
AngularJS 支付倒计时功能实现思路
2017/06/05 Javascript
浅谈Express异步进化史
2017/09/09 Javascript
[00:32]DOTA2上海特级锦标赛 Ehome战队宣传片
2016/03/03 DOTA
[01:21]DOTA2新纪元-7.0新版本即将开启!
2016/12/11 DOTA
python中pylint使用方法(pylint代码检查)
2018/04/06 Python
分享一下Python数据分析常用的8款工具
2018/04/29 Python
利用Django提供的ModelForm增删改数据的方法
2019/01/06 Python
django rest framework vue 实现用户登录详解
2019/07/29 Python
浅谈python3中input输入的使用
2019/08/02 Python
Python3 列表,数组,矩阵的相互转换的方法示例
2019/08/05 Python
python 轮询执行某函数的2种方式
2020/05/03 Python
Keras中的两种模型:Sequential和Model用法
2020/06/27 Python
python接口自动化之ConfigParser配置文件的使用详解
2020/08/03 Python
Python xmltodict模块安装及代码实例
2020/10/05 Python
CSS3 transforms应用于背景图像的解决方法
2019/04/16 HTML / CSS
捷克汽车配件和工具销售网站:TorriaCars
2018/02/26 全球购物
英国户外装备商店:Ultimate Outdoors
2019/05/07 全球购物
天逸系统(武汉)有限公司Java笔试题
2015/12/29 面试题
一些关于MySql加速和优化的面试题
2014/01/30 面试题
一个J2EE项目团队的主要人员组成是什么
2012/06/04 面试题
学习新党章思想汇报
2014/01/09 职场文书
大学同学聚会邀请函
2014/01/29 职场文书
三月雷锋月活动总结
2014/07/03 职场文书
没有孩子的离婚协议书怎么写
2014/09/17 职场文书