文档章节

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

q
 qinhui99
发布于 2017/06/08 17:31
字数 383
阅读 167
收藏 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
粉丝 63
博文 72
码字总数 32863
作品 0
深圳
程序员
优必选悉尼 AI 研究院何诗怡:基于课程学习的强化多标签图像分类算法 | 分享总结

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

刘鹏
06/12
0
0
机器学习实战(用Scikit-learn和TensorFlow进行机器学习)(四)

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

fjl_csdn
01/10
0
0
深度学习(目标检测)---多标签图像分类任务的评价方法-mAP

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

qq_38906523
05/05
0
0
基于用户标签的时间衰减因子

背景 依据用户发帖子所属于的分类,给用户打标签,并确定标签的权重。 比如:A用户总共发了8个贴子,其中有1个帖子属于spark分类,3个属于hadoop分类,4个属于storm分类。系统会给用户分别打...

小萝卜_
2016/06/02
1K
1
《机器学习》周志华-CH3 线性模型

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

qq_34100655
02/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

启动线程以及安全终止线程

启动 使用start()方法可以启动线程。 start()方法的含义是告知线程规划器线程已初始化完毕,可以分给这个线程时间片了(执行run()方法)。 安全终止线程 示例代码 import java.util.concurr...

karma123
12分钟前
1
0
Python+OpenCV 图像风格迁移(模仿名画)

现在很多人都喜欢拍照(自拍)。有限的滤镜和装饰玩多了也会腻,所以就有 APP 提供了模仿名画风格的功能,比如 prisma、versa 等,可以把你的照片变成 梵高、毕加索、蒙克 等大师的风格。 这...

crossin
17分钟前
1
0
karabiner json语法

karabiner json语法 to_if_alone 如果同时制定了to, 那么to对应的key必须是非可见字符,例如control,shift或者command, 为什么呢? If to events are specified, to events are released befo...

黄威
18分钟前
1
0
学习设计模式——工厂方法模式

1. 认识工厂方法模式 1. 功能:定义一个用于创建对象的接口,让子类决定实例化哪一个类,该模式使一个类的实例化延迟到其子类中。 2. 组织结构: Product: 定义工厂方法中用来创建对象的接口...

江左煤郎
18分钟前
1
0
常用的大数据技术有哪些?

大数据技术为决策提供依据,在政府、企业、科研项目等决策中扮演着重要的角色,在社会治理和企业管理中起到了不容忽视的作用,很多国 家,如中国、美国以及欧盟等都已将大数据列入国家发展战...

董黎明
20分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部