社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

吐血整理:43种机器学习开源数据集(附地址/调用方法)

CDA数据分析师 • 4 年前 • 505 次点击  

导读:学习机器学习是一个不断探索和实验的过程,因此,本文将主要介绍常见的开源数据集,便于读者学习和实验各种机器学习算法。


作者:张春强 张和平 唐振
来源:大数据DT(ID:hzdashuju)

01 开源数据集介绍

在学习机器学习算法的过程中,我们经常需要数据来学习和试验算法,但是找到一组适合某种机器学习类型的数据却不那么方便。下文对常见的开源数据集进行了汇总。

1. UCI数据集

  • 类型:比较全面,各类型数据都有涉及
  • 网址:
    http://archive.ics.uci.edu/ml/datasets.php

2. Kaggle竞赛数据集

  • 类型:比较全面,各类型数据都有涉及
  • 网址:https://www.kaggle.com/datasets

3. ImageNet

  • 类型:计算机视觉数据
  • 网址:http://image-net.org/

4. VisualData

  • 类型:计算机视觉数据
  • 网址:https://www.visualdata.io/

5. MS COCO

  • 类型:计算机视觉数据
  • 网址:http://mscoco.org/

6. Stanford CoreNLP

  • 类型:情感分析数据
  • 网址:
    http://nlp.stanford.edu/sentiment/code.html

7. IMDB

  • 类型:情感分析数据
  • 网址:
    http://ai.stanford.edu/~amaas/data/sentiment/

8. Sentiment140

  • 类型:情感分析数据
  • 网址:
    http://help.sentiment140.com/for-students/

9. HotspotQA

  • 类型:自然语言处理
  • 网址:https://hotpotqa.github.io/

10. Enron Email

  • 类型:自然语言处理
  • 网址:https://www.cs.cmu.edu/~./enron/

11. Amazon

  • 类型:自然语言处理
  • 网址:
    https://snap.stanford.edu/data/web-Amazon.html

12. 百度Apolloscapes

  • 类型:自动驾驶
  • 网址:http://apolloscape.auto/

13. Berkeley DeepDrive

  • 类型:自动驾驶
  • 网址:http://bdd-data.berkeley.edu/

14. Robotcar

  • 类型:自动驾驶
  • 网址:
    http://robotcar-dataset.robots.ox.ac.uk/

15. Data.gov

  • 类型:公共政府数据集
  • 网址:https://www.data.gov/

16. Food Environment Atlas

  • 类型:公共政府数据集
  • 网址:
    https://catalog.data.gov/dataset/food-environment-atlas-f4a22

17. Annual Survey of School System Finances

  • 类型:公共政府数据集
  • 网址:
    https://catalog.data.gov/dataset/annual-survey-of-school-system-finances

18. NCES

  • 类型:公共政府数据集
  • 网址:https://nces.ed.gov/

19. Data USA

  • 类型:公共政府数据集
  • 网址:http://datausa.io/

20. 中国国家统计局

  • 类型:公共政府数据集
  • 网址:http://www.stats.gov.cn/

21. Quandl

  • 类型:金融与经济数据集
  • 网址:https://www.quandl.com/

22. WorldBank

  • 类型:金融与经济数据集
  • 网址:https://data.worldbank.org/

23. IMF

  • 类型:金融与经济数据集
  • 网址:https://www.imf.org/en/Data

24. Markets

  • 类型:金融与经济数据集
  • 网址: https://markets.ft.com/data/

25. Google Trends

  • 类型:金融与经济数据集
  • 网址
    http://www.google.com/trends?q=google&ctab=0&geo=all&date=all&sort=0

26. US Macro Regional

  • 类型:金融与经济数据集

  • 网址:
    https://www.aeaweb.org/resources/data/us-macro-regional

27. Google Audioset

  • 类型:语音数据集
  • 网址:
    https://research.google.com/audioset/

28. 2000 HUB5 English

  • 类型:语音数据集
  • 网址:
    https://catalog.ldc.upenn.edu/LDC2002T43

29. LibriSpeech

  • 类型:语音数据集
  • 网址:http://www.openslr.org/12/



02 scikit-learn中的数据集

scikit-learn是Python中进行数据挖掘和建模中常用的机器学习工具包。scikit-learn的datasets模块主要提供了一些导入、在线下载及本地生成数据集的方法。模块的主要函数如下所示。

  1. sklearn.datasets.load_:自带数据集(数据量较小)
  2. sklearn.datasets.fetch_在线下载的数据集
  3. sklearn.datasets.make_生成指定类型的随机数据集
  4. sklearn.datasets.load_svmlight_filesvmlight/libsvm格式的数据集
  5. sklearn.datasets.fetch_mldatamldata.org在线下载数据集

自带数据集的datasets模块里包含自带数据集,使用load_*加载即可,使用示例如下所示。

from sklearn.datasets import load_iris
data = load_iris()
# 查看数据描述
print(data.DESCR)
X = data.data
y = data.target

自带数据集的基本信息及序号30、31、32的自带数据集做简单的介绍如下。读者也可以使用data.DESCR,查看其英文描述。

30. 波士顿房价数据集

  • 调用方法:load_boston
  • 模型类型: 回归
  • 数据规模(样本*特征):506*13

这个数据集包含了506处波士顿不同地理位置的房产的房价数据(因变量),房屋以及房屋周围的详细信息(自变量),其中包含城镇犯罪率、一氧化氮浓度、住宅平均房间数等13个维度的数据,波士顿房价数据集能够应用到回归问题上。波士顿房价数据集与属性描述如下所示。

  • CRIM:城镇人均犯罪率。
  • ZN:住宅用地超过25000平方英尺的比例。
  • INDUS:城镇非零售商用土地的比例。
  • CHAS:查理斯河空变量(如果边界是河流,则为1;否则为0)。
  • NOX:一氧化氮浓度。
  • RM住宅平均房间数。
  • AGE:1940 年之前建成的自用房屋比例。
  • DIS:到波士顿五个中心区域的加权距离。
  • RAD:辐射性公路的接近指数。
  • TAX:每10000 美元的全值财产税率。
  • PTRATIO:城镇师生比例。
  • MEDV:自住房的平均房价,以千美元计。

31. 鸢尾花数据集

  • 调用方法:load_iris
  • 模型类型:分类
  • 数据规模(样本*特征):105*4

鸢尾花数据集是一个非常经典的数据集,著名的统计学家Fisher在研究判别分析问题时收集了一些关于鸢尾花的数据,包含了150个鸢尾花样本,对应3种鸢尾花,各50个样本,以及它们各自对应的4种关于外形的数据(自变量)。该数据集可用于多分类问题,测量数据如下所示。

  • sepal length (cm):萼片长度。
  • sepal width (cm):萼片宽度。
  • petal length (cm):花瓣长度。
  • petal width (cm):花瓣宽度。

类别共分为三类:Iris Setosa、Iris Versicolour和Iris Virginica。

32. 手写数字数据集

  • 调用方法:load_digits
  • 模型类型:分类
  • 数据规模(样本*特征):1797*64

这个数据集是结构化数据的经典数据,共有1797个样本,每个样本有64个元素,对应一个8×8像素点组成的矩阵,矩阵中值的范围是0~16,代表颜色的深度,控制每一个像素的黑白浓淡,所以每个样本还原到矩阵后代表一个手写体数字。

33. 糖尿病数据集

  • 调用方法:load_diabetes
  • 模型类型:回归
  • 数据规模(样本*特征):422*10

34. 葡萄酒数据集

  • 调用方法:Load_wine
  • 模型类型:分类
  • 数据规模(样本*特征):178*13

35. 乳腺癌数据集

  • 调用方法:load_breast_cancer
  • 模型类型:分类
  • 数据规模(样本*特征):569*30

36. 体能训练数据集

  • 调用方法:load_linnerud
  • 模型类型:多元回归
  • 数据规模(样本*特征):20*3

scikit-learn在线下载数据集的datasets模块包含在线下载数据集的方法,调用fetch_*接口从网络下载,示例如下所示。

from sklearn.datasets import fetch_20newsgroups
newsgroups_train = fetch_20newsgroups(subset='train')
newsgroups_test = fetch_20newsgroups(subset='test')

注意,fetch_*接口由于需要从国外网址下载数据,速度可能很慢!

在线下载数据集的基本信息如下所示。

37. Olivetti脸部图像数据集

  • 调用方法:fetch_olivetti_faces
  • 模型类型:降维
  • 数据规模(样本*特征):400*64*64

38. 20类新闻分类数据集(文本)

  • 调用方法:fetch_20newsgroups
  • 模型类型:分类
  • 数据规模(样本*特征):18846*1

39. 20类新闻文本数据集(特征向量)

  • 调用方法:fetch_20newsgroups_vectorized
  • 模型类型:分类
  • 数据规模(样本*特征):18846*130107

40. 带标签的人脸数据集

  • 调用方法:fetch_lfw_people
  • 模型类型:分类
  • 数据规模(样本*特征):13233*5828

41. 路透社新闻语料数据集

  • 调用方法:fetch_rcv1
  • 模型类型:分类
  • 数据规模(样本*特征):804414*47236

42. 加州住房数据集

  • 调用方法:fetch_california_housing
  • 模型类型:回归
  • 数据规模(样本*特征):20640*8

43. 森林植被

  • 调用方法:fetch_covtype
  • 模型类型:多分类
  • 数据规模(样本*特征):581012*54

scikit-learn包括用于以svmlight/libsvm格式加载数据集的实函数。在这种格式中,每一行都采用表格,此格式特别适用于稀疏数据集。在该模块中,使用SciPy稀疏CSR矩阵,并使用numpy数组,示例如下。svmlight / libsvm格式的公共数据集可以从网上下载。

网址:
https://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/

from  sklearn.datasets  import  load_svmlight_file 
X_train , y_train  =  load_svmlight_file ("/ path / to / train_dataset.txt " )newsgroups_test = fetch_20newsgroups(subset='test')

openml.org是机器学习数据和实验的公共存储库,允许每个人上传开放数据集。sklearn.datasets能够从存储库下载数据集。示例如下:

from sklearn.datasets import fetch_openml
mice = fetch_openml(name='miceprotein', version=4 )
print(mice.DESCR) 
mice.url

更多数据集信息描述请查看官网:

https://www.openml.org/search?type=data

本文摘编自机器学习:软件工程方法与实现》,经出版方授权发布。



 
CDA持证人直播分享
👇👇👇


 

CDA课程咨询

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/103828
 
505 次点击