有什么好的数据集可以学习基本的机器学习算法,为什么呢?


19

我是机器学习的新手,正在寻找一些可以比较和对比不同机器学习算法(决策树,Boosting,SVM和神经网络)之间差异的数据集。

在哪里可以找到这样的数据集?考虑数据集时我应该寻找什么?

如果您可以指向一些好的数据集,并告诉我是什么使它们成为一个好的数据集,那将是很好的选择?


6
我想知道这个问题是否更适合opendata.stackexchange.com ...关于数据集,大多数教科书都提到了此类数据集并使它们可用,其中许多已经在统计软件或此类软件的库中提供。您也可以看到archive.ics.uci.edu/ml/datasets.html。当然,另一个问题是什么使某些数据集对学习“好”而使某些数据集“不好” –这是一个有趣的问题。
蒂姆

您将在CRAN上找到一些数据集作为包,例如:ElemStatLearn和其他数据集。
kjetil b halvorsen

2
@Tim因为这个问题有一个教学方面的问题(例如,出于学习目的的“良好”数据集的一个示例显示了不同算法给出的结果截然不同的示例),我认为它比CV比OpenData更适合。
银鱼


@Silverfish:关于Meta的讨论(关于数据集的问题)已经讨论过:可能的例外?-&似乎您的观点已经普遍达成共识。但是我仍然认为这个问题。范围很广-有什么明显区别于查找免费数据样本
Scortchi-恢复莫妮卡

Answers:



11

Kaggle有大量的数据集可用于练习。

(我很惊讶到目前为止还没有提到!)

它有两件事(在许多其他事情中)使其成为非常宝贵的资源:

  • 很多干净的数据集。虽然无噪声的数据集并不能真正代表现实世界的数据集,但它们特别适合您的目的-部署ML算法。
  • 您也可以查看同一数据集的其他人的ML模型,这可能是一种有趣的方式。毋庸置疑,与其他任何方面一样,您从最佳实践者那里学习所获得的帮助非常有用。

1
这确实是最好的答案,因为除了种类繁多的数据集外,每个挑战的论坛都是宝贵的资源,可用于获取技术和技巧以及代码示例。
亚历克斯R.17年

2

首先,我建议从软件随附的示例数据开始。大多数软件发行版中都包含示例数据,您可以使用这些示例数据来熟悉算法,而无需处理数据类型并将数据折算为算法的正确格式。即使您是从头开始构建算法,也可以从类似实现的示例开始并比较性能。

其次,我建议您尝试使用合成数据集,以在知道数据是如何生成的以及信噪比时了解算法的性能。

在R中,您可以使用以下命令列出当前安装的软件包中的所有数据集:

data(package = installed.packages()[, 1])

R包mlbench具有真实的数据集,可以生成对于研究算法性能有用的综合数据集。

Python的scikit-learn具有示例数据,也可以生成合成/玩具数据集。

SAS具有可供下载的培训数据集,并且通过软件在以下位置安装了SPSS样本数据:C:\ Program Files \ IBM \ SPSS \ Statistics \ 22 \ Samples

最后,我将研究野生数据。我将比较实际数据集上不同算法和调整参数的性能。这通常需要做很多工作,因为您很少会找到带有可放入算法中的数据类型和结构的数据集。

对于野外数据,我建议:

reddit的数据集存档

KDnugget的列表


1
对于那些没有R且不想下载它只是为了访问这些数据集的人,可在此处在线获得数据集和描述。
gung-恢复莫妮卡

0

虹膜数据集手了。它也位于基数R中。


1
请回答问题的实质部分:“ ...还告诉我是什么使它们成为一个好的数据集?”
whuber

0

我认为,您应该从没有太多功能的小型数据集开始。

一个例子是虹膜数据集(用于分类)。它具有3个类别,每个类别有50个样本,总计150个数据点。Data School的视频系列是帮助您探索此数据集的一个绝佳资源。

另一个要检查的数据集是来自UCI -ML存储库的Wine Quality数据集。它具有4898个数据点和12个属性。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.