首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LIBSVM数据准备: Excel数据到LIBSVM格式

LIBSVM数据准备: Excel数据到LIBSVM格式
EN

Stack Overflow用户
提问于 2016-11-05 09:33:20
回答 1查看 7.2K关注 0票数 9

我想研究如何执行LIBSVM进行回归,目前我正忙于准备我的数据。目前,我有这种形式的.csv和.xlsx格式的数据,我想把它转换成libsvm数据格式。

到目前为止,我知道数据应该采用这种格式,以便可以在LIBSVM中使用:

根据我所读到的,对于回归,“标签”是目标值,可以是任何实数。

我在做电力负荷预测研究。有人能告诉我这是什么吗?最后,我应该如何组织我的列和行?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-07 14:26:15

LIBSVM数据格式如下:

..。 ..。 ..。

如您所见,这形成了矩阵(IndexCount + 1)列、LineCount行。更准确地说,是一个稀疏矩阵。如果为每个index指定一个值,则有一个密集矩阵,但如果只指定几个索引(如<label> <5:value> <8:value> ),则只有索引58,当然label将有一个自定义值,所有其他值都设置为0。这只是为了简单的说明或节省空间,因为数据集可能是巨大的。

关于标签的含义,我引用ReadMe文件

培训数据的目标值。对于分类,它应该是一个识别类的整数(支持多类分类)。对于回归,它是任何实数。对于一个类别的支持向量机,它不使用,所以可以是任何数字。是从1开始的整数,是实数。索引必须按升序排列。

如您所见,label是您想要预测的数据。index标记数据及其value特性。功能只是将目标值关联或关联的指示器,因此可以进行更好的预测。

完全虚构的故事时间:加布里埃尔露娜(一个完全虚构的角色)想预测他未来几天的能源消耗。他发现,前一天的外部温度是一个很好的指标,所以他选择了以指数Temperature为特征的1的重要性:指数总是从1开始,零有时会导致奇怪的行为。然后,他惊讶地注意到,一周中的某一天(周一到周日或0 to 6)也会影响他的负载,所以他选择它作为索引2的第二个特性。LIBSVM的矩阵行现在具有以下格式:

<myLoad_Value> <1:outsideTemperatureFromYesterday_Value> <2:dayOfTheWeek_Value>

加布里埃尔·露娜(他在晚上是蝙蝠侠)在几个星期内捕捉到了这些数据,这些数据可能看起来像这样(在kWh中负载,温度在摄氏度,白天就像上面提到的那样):

0.72 1:25 2:0

0.65 1:21 2:1

0.68 2:29 2:2

...

注意,由于稀疏矩阵格式,我们可以省略2:0。这将是您训练LIBSVM模型的训练数据。然后,我们预测明天的负荷如下。你知道今天的温度,让我们假设23°C,今天是星期二,也就是1,所以明天是2。因此,这是与模型一起使用的线或向量:

0 1:23 2:2

在这里,您可以任意设置<label>值。它将被用预测值覆盖。我希望这能帮到你。

票数 18
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40436694

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档