文档章节

一个超级简单的多分类多标签值例子

q
 qinhui99
发布于 2017/06/08 17:31
字数 383
阅读 292
收藏 0

多分类就是指超过两个以上的分类,多标签值就是指一个样本实例可以出现两个以上的标签值。例如,一个讨论python和go性能对比的帖子,就可以有python和go两个不同的话题分类标签。这种多分类多标签值的情况在文本分类里经常出现,值得研究。下面举个简单的例子:

import numpy as np
from sklearn.ensemble import RandomForestClassifier

if __name__ == '__main__':

    X = np.array([[411, 500, 426],
                  [100, -11, -96],
                  [125, 900, .00],
                  [.11, 60., 126],
                  [211, 100, 16],
                  [300, .60, 926],
                  [11., .00, 26],
                  [341, 700, 126]])
    #目标y有3个分类,而且允许有3个标签同时出现.
    Y = np.array([[0, 0, 0],
                  [0, 0, 1],
                  [0, 1, 0],
                  [0, 1, 1],
                  [1, 0, 0],
                  [1, 1, 0],
                  [1, 1, 1],
                  [1, 1, 1]])
    #随机森林分类器。这里故意设置比较小的参数,以便产生不同的预测结果和原来的标签对比。
    lp = RandomForestClassifier(n_estimators=5)
    lp.fit(X, Y)#训练
    print(lp.predict(X)) #打印预测结果

 

运行的结果:

[[ 1.  1.  1.]
 [ 0.  0.  1.]
 [ 0.  1.  0.]
 [ 1.  1.  1.]
 [ 1.  0.  0.]
 [ 1.  1.  0.]
 [ 1.  1.  1.]
 [ 1.  1.  1.]]

第4行预测错误了。原来的标签是[0,1,1],我们的分类器预测为[1,1,1]。除此之外,其它都对了。还行。对于这样的几个分类的简单数据,随机森林分类器确实很好用,几行代码就搞定了。传统的机器学习算法里还是有不少好东西的。

 

 

© 著作权归作者所有

共有 人打赏支持
q
粉丝 66
博文 72
码字总数 32863
作品 0
深圳
程序员
私信 提问
优必选悉尼 AI 研究院何诗怡:基于课程学习的强化多标签图像分类算法 | 分享总结

雷锋网(公众号:雷锋网) AI 科技评论按:与单标签图像分类相比,多标签图像分类是一种更符合真实世界客观规律的方法,尤其在图像和视频的语义标注,基于内容的图像检索等领域有着广泛的应用。...

刘鹏
2018/06/12
0
0
深度学习(目标检测)---多标签图像分类任务的评价方法-mAP

多标签图像分类(Multi-label Image Classification)任务中图片的标签不止一个,因此评价不能用普通单标签图像分类的标准,即mean accuracy,该任务采用的是和信息检索中类似的方法—mAP(m...

qq_38906523
2018/05/05
0
0
机器学习实战(用Scikit-learn和TensorFlow进行机器学习)(四)

  上一节三节讲述了真实数据(csv表格数据)的一个实战操作的总流程,然而这个处理是一个回归模型,即目标是一些连续的值(medianhousevalue)。当目标是一些有限的离散值得时候(比如数字0...

fjl_csdn
2018/01/10
0
0
不一样的味道--Html及Xml解析、格式化、遍历

TinyXmlParser一切以简单、实用、快速为主。 示例1:Xml字符串解析 比如,我们要解析一段Xml字符串,简单如下即可: XmlDocument xmlDocument = new XmlStringParser().parse("<title><a>a</......

悠悠然然
2014/04/10
0
1
《机器学习》周志华-CH3 线性模型

写在前面 线性模型,可以说是机器学习中最简单的一种模型;它形式简单,易于实现,却同时也是SVM、神经元等复杂非线性模型的基础。CH1和CH2,介绍了机器学习领域的基本概念,和获得模型的一般...

qq_34100655
2018/02/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Navicat怎样导入Excel表格和txt文本的数据

Navicat怎样导入Excel表格和txt文本的数据 2018年07月02日 11:29:11 零碎de記憶 阅读数:2433 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_39135287/ar...

linjin200
31分钟前
1
0
使用MaxCompute Java SDK运行安全相关命令

使用MaxCompute Console的同学,可能都使用过MaxCompute安全相关的命令。官方文档上有详细的MaxCompute 安全指南 ,并给出了安全相关语句汇总 。 简而言之, 权限管理 、 列级别访问控制 、 ...

阿里云云栖社区
36分钟前
0
0
中小公司的Java工程师应该如何逆袭冲进BAT?

(1)80% Java工程师都有的迷茫 这篇文章,跟大家聊一聊很多很多很多人问我的一个问题:中小公司的Java工程师应该如何规划准备,才能跳槽进入BAT这类一线互联网公司? 之所以我用了三个 “很...

Java填坑路
36分钟前
4
0
你的应用够安全吗?绿标2.0隐私权限详解

近日,最新一期的《绿色应用达标率调查报告》结果显示,应用在安全方面的通过率仅为57%,相较于其他四项标准通过率最低。其中隐私权限的过度获取是主要原因之一,需要开发者尽快完成整改。 ...

安卓绿色联盟
46分钟前
1
0
使用MaxCompute Java SDK运行安全相关命令

使用MaxCompute Console的同学,可能都使用过MaxCompute安全相关的命令。官方文档上有详细的MaxCompute安全指南,并给出了安全相关语句汇总。 简而言之,权限管理、列级别访问控制、项目空间...

阿里云官方博客
51分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部