导读:学习机器学习是一个不断探索和实验的过程,因此,本文将主要介绍常见的开源数据集,便于读者学习和实验各种机器学习算法。 作者:张春强 张和平 唐振 来源:大数据DT(ID:hzdashuju)在学习机器学习算法的过程中,我们经常需要数据来学习和试验算法,但是找到一组适合某种机器学习类型的数据却不那么方便。下文对常见的开源数据集进行了汇总。- http://archive.ics./ml/datasets.php
- http://nlp./sentiment/code.html
- http://ai./~amaas/data/sentiment/
- http://help./for-students/
- 网址:https://www.cs./~./enron/
- https://snap./data/web-Amazon.html
- http://robotcar-dataset.robots./
16. Food Environment Atlas- https://catalog./dataset/food-environment-atlas-f4a22
17. Annual Survey of School System Finances- https://catalog./dataset/annual-survey-of-school-system-finances
- 网址:http://www.stats.gov.cn/
- 网址:https://markets./data/
- http://www.google.com/trends?q=google&ctab=0&geo=all&date=all&sort=0
类型:金融与经济数据集 - https://www./resources/data/us-macro-regional
- https://research.google.com/audioset/
- https://catalog.ldc./LDC2002T43
scikit-learn是Python中进行数据挖掘和建模中常用的机器学习工具包。scikit-learn的datasets模块主要提供了一些导入、在线下载及本地生成数据集的方法。模块的主要函数如下所示。- sklearn.datasets.load_<name>:自带数据集(数据量较小)
- sklearn.datasets.fetch_<name>:在线下载的数据集
- sklearn.datasets.make_<name>:生成指定类型的随机数据集
- sklearn.datasets.load_svmlight_file:svmlight/libsvm格式的数据集
- sklearn.datasets.fetch_mldata:mldata.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,查看其英文描述。这个数据集包含了506处波士顿不同地理位置的房产的房价数据(因变量),房屋以及房屋周围的详细信息(自变量),其中包含城镇犯罪率、一氧化氮浓度、住宅平均房间数等13个维度的数据,波士顿房价数据集能够应用到回归问题上。波士顿房价数据集与属性描述如下所示。- CHAS:查理斯河空变量(如果边界是河流,则为1;否则为0)。
鸢尾花数据集是一个非常经典的数据集,著名的统计学家Fisher在研究判别分析问题时收集了一些关于鸢尾花的数据,包含了150个鸢尾花样本,对应3种鸢尾花,各50个样本,以及它们各自对应的4种关于外形的数据(自变量)。该数据集可用于多分类问题,测量数据如下所示。类别共分为三类:Iris Setosa、Iris Versicolour和Iris Virginica。这个数据集是结构化数据的经典数据,共有1797个样本,每个样本有64个元素,对应一个8×8像素点组成的矩阵,矩阵中值的范围是0~16,代表颜色的深度,控制每一个像素的黑白浓淡,所以每个样本还原到矩阵后代表一个手写体数字。scikit-learn在线下载数据集的datasets模块包含在线下载数据集的方法,调用fetch_*接口从网络下载,示例如下所示。from sklearn.datasets import fetch_20newsgroups newsgroups_train = fetch_20newsgroups(subset='train') newsgroups_test = fetch_20newsgroups(subset='test')
注意,fetch_*接口由于需要从国外网址下载数据,速度可能很慢!- 调用方法:fetch_olivetti_faces
- 调用方法:fetch_20newsgroups_vectorized
- 调用方法:fetch_california_housing
scikit-learn包括用于以svmlight/libsvm格式加载数据集的实函数。在这种格式中,每一行都采用表格,此格式特别适用于稀疏数据集。在该模块中,使用SciPy稀疏CSR矩阵,并使用numpy数组,示例如下。svmlight / libsvm格式的公共数据集可以从网上下载。https://www.csie./~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')
是机器学习数据和实验的公共存储库,允许每个人上传开放数据集。sklearn.datasets能够从存储库下载数据集。示例如下:from sklearn.datasets import fetch_openml mice = fetch_openml(name='miceprotein', version=4) print(mice.DESCR) mice.url
https://www./search?type=data关于作者:张春强,是一位具有3年C/C++、7年大数据和机器学习经验且富有创造力的技术专家,在技术一线摸爬滚打近10年,先后就职于大型IT、世界500强企业,目前就职于某大型金融科技集团,负责数据挖掘、机器学习相关工作的管理和研发。
|