Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用svm预测多标签数据集

如何使用svm预测多标签数据集
EN

Stack Overflow用户
提问于 2017-10-06 12:23:16
回答 1查看 2.9K关注 0票数 0

我使用的数据集具有所有十进制值和时间戳,具有以下特性:

代码语言:javascript
运行
AI代码解释
复制
 1. sno
 2. timestamp
 3. v1
 4. v2
 5. v3

我有5个月的数据,每分钟都有时间戳。我需要预测v1,v2,v3是否会在将来的任何时候被使用。v1、v2、v3值在0~ 25之间。

我该怎么做?

我以前使用过二进制分类,但我不知道如何处理多标签问题来预测。我一直在使用下面的代码。我应该如何训练模型,我应该如何使用v1,v2,v3来适应'y'?

代码语言:javascript
运行
AI代码解释
复制
X_train, X_test, y_train, y_test = train_test_split(train, y, test_size=0.2)




Data:

sno power   voltage v1  v2  v3  timestamp
1   3.74    235.24  0   16  18  2006-12-16 18:03:00
2   4.928   237.14  0   37  16  2006-12-16 18:04:00
3   6.052   236.73  0   37  17  2006-12-16 18:05:00
4   6.752   237.06  0   36  17  2006-12-16 18:06:00
5   6.474   237.13  0   37  16  2006-12-16 18:07:00
6   6.308   235.84  0   36  17  2006-12-16 18:08:00
7   4.464   232.69  0   37  16  2006-12-16 18:09:00
8   3.396   230.98  0   22  18  2006-12-16 18:10:00
9   3.09    232.21  0   12  17  2006-12-16 18:11:00
10  3.73    234.19  0   27  17  2006-12-16 18:12:00
11  2.308   234.96  0   1   17  2006-12-16 18:13:00
12  2.388   236.66  0   1   17  2006-12-16 18:14:00
13  4.598   235.84  0   20  17  2006-12-16 18:15:00
14  4.524   235.6   0   9   17  2006-12-16 18:16:00
15  4.202   235.49  0   1   17  2006-12-16 18:17:00
EN

回答 1

Stack Overflow用户

发布于 2017-10-06 22:45:57

跟随文档

多类支持是根据一个vs-一个方案来处理的(因此应该支持一个-vs-所有策略)。

一-比-一

一比一方案基本上是指每对类使用一个分类器。在预测阶段,接收最多选票的类(每个分类器的输出)最终被选择为预测。如果这样的投票是相等的,即有两类票数相等,那麽分类的信心便会起作用。

要在这样的方案中使用SVM,我们应该这样做:

代码语言:javascript
运行
AI代码解释
复制
from sklearn.multiclass import OneVsOneClassifier
from sklearn.svm import SVC

...

subclf = SVC(**params)
clf = OneVsOneClassifier(estimator=subclf)

clf.fit()

1-vs-休息

另一种方法是使用一-vs-全部策略。这种策略适合每个类的分类器,并针对数据中的所有其他类。它比第一种方案更受欢迎,因为它比较容易对结果进行干预,而且计算时间要弱得多。它与第一个示例一样简单:

代码语言:javascript
运行
AI代码解释
复制
from sklearn.multiclass import OneVsRestClassifier
from sklearn.svm import SVC

...

subclf = SVC(**params)
clf = OneVsRestClassifier(estimator=subclf)

clf.fit()

要阅读更多关于多标签分类和学习的信息,请继续这里

善后变量编码

因此,基本思想是实例化一个复杂的(即多标签)目标变量,方法是:

  • 如果y是零,则v1 v2 v3等于0
  • 如果yv1v2v3为1
  • y等于2,如果v1 v2v1 v3v2 v3都是1
  • 如果y是3,则v1 v2 v3等于3

解决办法可能有以下几点:

代码语言:javascript
运行
AI代码解释
复制
import numpy as np

y = []

for i, j, k in zip(data['v1'], data['v2'], data['v3']):
if i and j and k > 0:
    y.append(3)
elif i and j or i and k or j and k > 0:
    y.append(2)
elif i or j or k > 0:
    y.append(1)
else:
    y.append(0)
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46613436

复制
相关文章
如何使用Docker Compose在容器内运行Linux命令?
Docker Compose 是一个用于定义和运行多容器Docker应用程序的工具。除了可以启动应用程序的多个容器之外,Docker Compose还提供了一种在容器内部执行命令的方式。在本文中,我们将详细介绍如何使用Docker Compose在容器内运行Linux命令,并展示一些常见的应用场景。
网络技术联盟站
2023/06/08
3.2K0
如何使用Docker Compose在容器内运行Linux命令?
ClickHouse 如何查询指定时间段内导入的数据
实现ClickHouse 全量和增量的导入和ClickHouse 和迁移ClickHouse
jasong
2021/08/24
5.5K0
ClickHouse 如何查询指定时间段内导入的数据
Oceanus 在腾讯微视数据的实践-统计某时间段内的uv、pv
在实时计算中,经常会遇到需要计算某个时间段内的pv、uv这类需求,完成该类需求有多种方式,本文以微视数据端内计算启动数据的pv、uv为应用场景,来介绍常用的两种实现方式。
吴云涛
2021/10/15
1.9K0
Oceanus 在腾讯微视数据的实践-统计某时间段内的uv、pv
Yarn运行中的任务如何终止?
我们的作业是使用yarn来调度的,那么肯定就需要使用相关的命令来进行管理,简单的有查询任务列表和killed某一个正在运行中的任务。
大数据真好玩
2021/03/30
7.5K0
Yarn运行中的任务如何终止?
ParallelX在GPU上运行Hadoop任务
在面对大规模计算密集型算法时,MapReduce范式的表现并不总是很理想。为了解决其瓶颈,一支小型创业团队构建了名为ParallelX的产品——它将通过利用GPU的运算能力,为Hadoop任务带来显著的提升。 ParallelX的联合创始人Tony Diepenbrock表示,这是一个“GPU编译器,它能够把用户使用Java编写的代码转化为OpenCL,并在亚马逊AWS GPU云上运行”。它的最终产品是一项与亚马逊Elastic MapReduce类似的服务,只不过不同之处在于它将利用EC2 GPU实例类型
GPUS Lady
2018/03/30
1.2K0
.Net Core in Docker - 在容器内编译发布并运行
Docker可以说是现在微服务,DevOps的基础,咱们.Net Core自然也得上Docker。.Net Core发布到Docker容器的教程网上也有不少,但是今天还是想来写一写。 你搜.Net core程序发布到Docker网上一般常见的有两种方案:
MJ.Zhou
2019/07/02
2K0
C#判断一个给定的IP地址是否在指定的范围内
比如给定一个ip段:127.0.0.1 ~ 127.0.0.255,我们想判断一个给定的ip地址是否在此段内,可以先将ip地址转换成整数,然后整数比较大小就很容易了。 例如: 127.0.0.1 = 2130706433 127.0.0.255 = 2130706687 判断: 127.0.1.253 = 2130706941 是否在此范围内,直接比较整数大小即可 将ip地址转换成整数
用户7108768
2021/11/03
1.4K0
ThinkPHP5 (mySQL) 统计各个时间段内的订单量
背景 今天在进行后台数据监控时; 需要对一天24小时的下单量进行时间段的统计; 但是下单时间字段 pay_time 选取的是 timestamp 类型; 此时需要进行时间段的数据分组剥离,在此做一下实现方式,请多指教 … 环境 框架:ThinkPHP5.1.2 系统:nginx/win10 、phpStudy2017 实现方式 1. 首先,考虑到使用的是 group分组技巧; 那么就必须要将 pay_time 中记录的字段数据进行 24时的定位切分; 这里可以用到 substrin
泥豆芽儿 MT
2020/01/13
2.1K0
ThinkPHP5 (mySQL) 统计各个时间段内的订单量
python|输出给定范围内的顺次数
我们定义「顺次数」为:每一位上的数字都比前一位上的数字大 1 的整数。 请你返回由 [low, high] 范围内所有顺次数组成的有序 列表(从小到大排序)
算法与编程之美
2020/02/21
8000
在 Vue 对象模块内如何使用 this 对象?
众所周知,js 中的 this 对象在不同作用域下指代不同的对象实例,并且在以下 4 种场景中经常会“不知所向”:
LIYI
2019/09/02
2.8K0
单路径NAS: 在四小时内设计出给定硬件内最有效的网
这篇paper[Single-Path NAS: Designing Hardware-Efficient ConvNets in less than 4 Hours]是2019年4月在arxiv上的新文章,来自CMU、微软和哈工大,论文提出了Single-Path NAS,将搜索时间从200 GPU时降低至4 GPU时,同时在ImageNet上达到了74.96% top-1的准确率。
小白学视觉
2022/09/28
3970
防火墙(9)——禁止某个时间段内访问我们的web
首先我们要准备一台linux虚拟机。 随后我们要在我们的虚拟机上安装apache服务:yum install httpd -y 随后可以curl以下我们的主机看是否能够访问:
gzq大数据
2020/11/11
1.2K0
防火墙(9)——禁止某个时间段内访问我们的web
YARN任务运行中的Token
上一篇文章中,主要讲解了token的一些通用知识,以及hadoop中,token的实现和通用数据结构及流程。
陈猿解码
2023/02/28
8870
YARN任务运行中的Token
Hadoop 任务运行失败
任务运行失败最常见的情况是 map 任务或 reduce 任务中的用户代码抛出运行异常。如果发生这种情况,任务 JVM 会在退出之前向其父 application master 发送错误报错。错误报告最后被记入用户日志中。application master 会将此次任务尝试标记为 failed (失败),并释放容器以便资源可以为其他任务使用。
smartsi
2019/08/07
3K0
用oozie命令行的方式在yarn上运行spark任务
本文介绍了如何使用oozie命令行的方式在yarn上运行spark任务,包括准备环境、上传jar包、配置job.properties和workflow.xml文件、执行命令、查看oozie和yarn的界面、查看yarn的日志文件等步骤。
用户1171305
2017/12/28
2.4K0
用oozie命令行的方式在yarn上运行spark任务
Python定时计划任务探究,如何实现到点运行py任务脚本
不少大佬哥应该有着这样一个应用场景,即到点跪舔女神,给女大佬问好,带早餐,备胎计划??而在实际网络中,也有着不少定时定点计划任务需要运行,这在运维当中非常常见,也非常重要!身为技术渣想要实现到点运行py任务脚本,比如说每天某个时间点准时运行爬取91新片以及精彩评论,兴趣让渣渣有研究的动力,这就有了下面这篇水文!!
二爷
2021/10/11
2.1K0
点击加载更多

相似问题

如何使用ScheduledExecutorService在特定时间段内运行任务?

144

使用datetime运行给定时间段内的事件计数

20

如何在给定的时间段内运行线程,然后在Java中返回?

10

检索给定时间段内的数据

05

比较给定时间段内的日期

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档