页面树结构

2017-11-09 ApacheCN 开源组织,第二期邀请成员活动,一起走的更远 : http://www.apachecn.org/member/209.html


MachineLearning 优酷地址 : http://i.youku.com/apachecn

转至元数据结尾
转至元数据起始

sklearn.datasets包装嵌入了“ 入门”部分中介绍的一些小型玩具数据集。

为了评估数据集(n_samples和 n_features)的规模的影响,同时控制数据的统计属性(通常是特征的相关性和信息性),也可以生成合成数据。

该软件包还具有帮助者获取机器学习社区通常使用的较大的数据集,以对来自“真实世界”的数据进行基准测试。

通用数据集API 

对于不同类型的数据集,有三种不同类型的数据集接口。最简单的是样品图像的界面,下面在“ 样品图像”部分中进行了描述。

数据集生成函数和svmlight加载器共享一个简单的接口,返回一个由* numpy数组组成的元组和 包含目标的长度数组。(X, y)n_samplesn_featuresXn_samplesy

玩具数据集以及从mldata.org获取的“真实世界”数据集和数据集具有更复杂的结构。这些函数返回一个类字典对象保持至少两个项目:形状的阵列n_samplesn_features与键data (除20newsgroups)和长度的numpy的阵列n_samples,含有所述目标值,与关键target

数据集还包含一些描述DESCR,一些包含 feature_namestarget_names。有关详细信息,请参阅下面的数据集说明。

 

玩具数据集

scikit-learn有几个小型标准数据集,不需要从某个外部网站下载任何文件。

load_boston([return_X_y])加载并返回波士顿房价数据集(回归)。
load_iris([return_X_y])加载并返回虹膜数据集(分类)。
load_diabetes([return_X_y])加载并返回糖尿病数据集(回归)。
load_digits([n_class, return_X_y])加载并返回数字数据集(分类)。
load_linnerud([return_X_y])加载并返回linnerud数据集(多元回归)。

这些数据集对于快速说明在scikit中实现的各种算法的行为很有用。然而,它们往往太小,无法代表真实世界的机器学习任务。

 

示例图像

scikit还嵌入了一些由作者在Creative Commons许可下发布的JPEG图像样本。这些图像可用于测试2D数据上的算法和流水线。

load_sample_images()加载样品图像进行图像处理。
load_sample_image(image_name)加载单个样本图像的numpy数组


例子:警告

图像的默认编码基于uint8dtype到备用内存。如果首先将输入转换为浮点表示,通常机器学习算法效果最好。另外,如果您打算使用,matplotlib.pyplpt.imshow请勿忘记将其缩放到0-1范围内,如下例所示。

 

样本生成器

此外,scikit学习包括可用于构建受控大小和复杂性的人造数据集的各种随机样本生成器。

发电机分类和聚类

这些发生器产生特征矩阵和相应的离散目标。

单标签

二者make_blobsmake_classification通过分配每个类点中的一个或多个常分布式集群创建多类数据集。make_blobs对每个集群的中心和标准偏差提供更好的控制,并用于展示聚类。 make_classification专注于通过以下方式引入噪音:相关,冗余和不知情的特征; 每类多个高斯群; 和特征空间的线性变换。

make_gaussian_quantiles将单个高斯群分成由同心超球体分开的近等大小类。 make_hastie_10_2产生类似的二进制,10维问题。

make_circlesmake_moons生成对某些算法(例如基于质心的聚类或线性分类)具有挑战性的2D二进制分类数据集,包括可选的高斯噪声。它们对于可视化是有用的。用二进制分类的球面决策边界产生高斯数据。

多标签

make_multilabel_classification生成具有多个标签的随机样本,反映从主题混合中抽取的一袋词。每个文档的主题数量是从泊松分布中得到的,主题本身是从固定的随机分布中得出的。类似地,词数是从泊松绘制的,其中单词是从多项式中提取出来的,其中每个主题定义了词的概率分布。关于真实的单词混合物的简化包括:

  • 每个主题的词分布是独立绘制的,其中实际上都会受到稀疏基础分布的影响,并且将被相关。
  • 对于从多个主题生成的文档,所有主题在生成其包的单词时均匀加权。
  • 没有标签文字的文件是随机的,而不是从基本分布。

二聚体

make_biclusters(shape, n_clusters[, noise, ...])生成一个具有恒定块对角线结构的阵列,用于二聚体。
make_checkerboard(shape, n_clusters[, ...])

生成具有块棋盘结构的数组,用于双向聚集。

回归发生器

make_regression产生回归目标作为任意稀疏随机线性组合的随机特征与噪声。其信息特征可能是不相关的,或低等级(很少的特征占大多数方差)。

其他回归发生器从随机特征确定性地产生函数。 make_sparse_uncorrelated产生目标作为具有固定系数的四个特征的线性组合。其他编码明确的非线性关系: make_friedman1与多项式和正弦变换相关; make_friedman2包括特征乘法和往复运算; 并且 make_friedman3与目标上的arctan转换类似。

发电机流形学习

make_s_curve([n_samples, noise, random_state])生成S曲线数据集。
make_swiss_roll([n_samples, noise, random_state])生成瑞士卷数据集。

发生器用于分解

make_low_rank_matrix([n_samples, ...])生成具有钟形奇异值的大多数低阶矩阵
make_sparse_coded_signal(n_samples, ...[, ...])生成信号作为字典元素的稀疏组合。
make_spd_matrix(n_dim[, random_state])产生一个随机对称,正定矩阵。
make_sparse_spd_matrix([dim, alpha, ...])产生一个稀疏的对称确定正矩阵。

svmlight / libsvm格式的数据集

scikit-learn包含用于以svmlight / libsvm格式加载数据集的实用程序功能。在这种格式中,每一行都采用这种格式。此格式特别适用于稀疏数据集。在该模块中,使用scipy稀疏CSR矩阵,并使用numpy数组。<label> <feature-id>:<feature-value> <feature-id>:<feature-value> ...Xy

您可以加载如下所示的数据集:

>>> from sklearn.datasets import load_svmlight_file
>>> X_train, y_train = load_svmlight_file("/path/to/train_dataset.txt")
...   

您也可以一次加载两个(或更多)数据集:

>>> X_train, y_train, X_test, y_test = load_svmlight_files(
...     ("/path/to/train_dataset.txt", "/path/to/test_dataset.txt"))
...    

在这种情况下,X_trainX_test保证具有相同数量的功能。实现相同结果的另一种方法是修复功能的数量:

>>> X_test, y_test = load_svmlight_file(
...     "/path/to/test_dataset.txt", n_features=X_train.shape[1])
...   

相关链接:

svmlight / libsvm格式的公共数据集http : //www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/

更快的API兼容实现https//github.com/mblondel/svmlight-loader

 

从外部数据集加载

scikit-learn可以作为数字数据存储为numpy数组或scipy稀疏矩阵。可转换为数字数组的其他类型,如大熊猫DataFrame也是可以接受的。

以下是将标准列数据加载到scikit-learn可用格式的一些推荐方法:

  • pandas.io 提供从通用格式(包括CSV,Excel,JSON和SQL)读取数据的工具。DataFrames也可以由元组或数字列表构成。熊猫平滑处理异构数据,并提供用于操作和转换为适合scikit学习的数字数组的工具。
  • scipy.io 专门用于科学计算环境中经常使用的二进制格式,如.mat和.arff
  • numpy / routines.io 将标准数据加载到numpy数组中
  • scikit-learn datasets.load_svmlight_file为svmlight或libSVM稀疏格式
  • scikit-learn的datasets.load_files文本文件的目录,其中每个目录的名称是每个类别的名称,每个目录内的每个文件对应于该类别中的一个样本

对于一些杂项数据,如图像,视频和音频,您可能希望参考:

存储为字符串(在pandas DataFrames中通用)的分类(或标称)功能将需要转换为整数,并且当编码为一个热变量(sklearn.preprocessing.OneHotEncoder)或类似数据时,整数分类变量可能被最佳利用。请参阅预处理数据

注意:如果您管理自己的数值数据,建议使用优化的文件格式(如HDF5)来减少数据加载时间。各种库,如H5Py,PyTables和熊猫提供了一个Python接口,用于读取和写入该格式的数据。

 

Olivetti面向数据集

该数据集包含 1992年4月至1994年4月在AT&T实验室剑桥采集的一组面部图像。该sklearn.datasets.fetch_olivetti_faces功能是从AT&T下载数据存档的数据获取/缓存功能。

如原始网站所述:

每个40个不同的科目有十个不同的图像。对于某些科目,图像在不同时间拍摄,改变照明,面部表情(开放/闭合的眼睛,微笑/不微笑)和面部细节(眼镜/无眼镜)。所有的图像均采取黑暗均匀的背景,受试者处于直立的正面位置(具有某些侧面运动的公差)。

图像被量化为256个灰度级并存储为无符号8位整数; 加载器将在间隔[0,1]上将这些值转换为浮点值,这对于许多算法来说更容易使用。

该数据库的“目标”是0到39之间的整数,表示所描绘的人的身份; 然而,每个类只有10个例子,这个相对较小的数据集从无监督或半监督的角度来看更有趣。

原始数据集由92×112组成,而这里提供的版本由64x64图像组成。

使用这些图像时,请向剑桥AT&T实验室致信。

 

20个新闻组文本数据集

20个新闻组数据集包含20个主题的18000个新闻组帖子,分为两个子集:一个用于培训(或开发),另一个用于测试(或用于绩效评估)。火车和测试集之间的分割是基于在特定日期之前和之后张贴的消息。

该模块包含两个装载机。第一个, sklearn.datasets.fetch_20newsgroups返回可以馈送到文本特征提取器的原始文本的列表,例如sklearn.feature_extraction.text.CountVectorizer 使用自定义参数,以便提取特征向量。第二个,sklearn.datasets.fetch_20newsgroups_vectorized返回即用功能,即不需要使用功能提取器。

用法

sklearn.datasets.fetch_20newsgroups功能是从原始20个新闻组网站下载数据归档的数据获取/缓存功能,提取~/scikit_learn_data/20news_home文件夹中的归档内容,并调用 sklearn.datasets.load_files培训或测试集文件夹或两者:

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

>>> from pprint import pprint
>>> pprint(list(newsgroups_train.target_names))
['alt.atheism',
 'comp.graphics',
 'comp.os.ms-windows.misc',
 'comp.sys.ibm.pc.hardware',
 'comp.sys.mac.hardware',
 'comp.windows.x',
 'misc.forsale',
 'rec.autos',
 'rec.motorcycles',
 'rec.sport.baseball',
 'rec.sport.hockey',
 'sci.crypt',
 'sci.electronics',
 'sci.med',
 'sci.space',
 'soc.religion.christian',
 'talk.politics.guns',
 'talk.politics.mideast',
 'talk.politics.misc',
 'talk.religion.misc']

真实数据在于filenamestarget属性。目标属性是类别的整数索引:

>>> newsgroups_train.filenames.shape
(11314,)
>>> newsgroups_train.target.shape
(11314,)
>>> newsgroups_train.target[:10]
array([12,  6,  9,  8,  6,  7,  9,  2, 13, 19])

通过将类别列表传递给sklearn.datasets.fetch_20newsgroups函数,可以仅加载类别的子选项 :

>>> cats = ['alt.atheism', 'sci.space']
>>> newsgroups_train = fetch_20newsgroups(subset='train', categories=cats)

>>> list(newsgroups_train.target_names)
['alt.atheism', 'sci.space']
>>> newsgroups_train.filenames.shape
(1073,)
>>> newsgroups_train.target.shape
(1073,)
>>> newsgroups_train.target[:10]
array([1, 1, 1, 0, 1, 0, 0, 1, 1, 1

将文本转换为向量

为了用文本数据来提供预测或聚类模型,首先需要将文本转换为适合统计分析的数值向量。这可以通过sklearn.feature_extraction.text以下示例所示的实用程序来实现,该 例子从20个新闻的子集中提取单个标记的TF-IDF向量:

>>> from sklearn.feature_extraction.text import TfidfVectorizer
>>> categories = ['alt.atheism', 'talk.religion.misc',
...               'comp.graphics', 'sci.space']
>>> newsgroups_train = fetch_20newsgroups(subset='train',
...                                       categories=categories)
>>> vectorizer = TfidfVectorizer()
>>> vectors = vectorizer.fit_transform(newsgroups_train.data)
>>> vectors.shape
(2034, 34118)

提取的TF-IDF向量是非常稀疏的,在超过30000维空间(小于.5%非零特征)中,样本平均为159个非零分量:

>>> vectors.nnz / float(vectors.shape[0])
159.01327433628319

sklearn.datasets.fetch_20newsgroups_vectorized 是返回即用型tfidf功能而不是文件名的功能。

过滤文本进行更逼真的训练

分类器很容易超出20个新闻组数据中出现的特定内容,例如新闻组标题。许多分类器获得非常高的F分数,但是它们的结果不会推广到不在这个时间窗口的其他文档。

例如,我们来看一下多项朴素贝叶斯分类器的结果,该分类器是快速训练并获得一个体面的F分数:

>>> from sklearn.naive_bayes import MultinomialNB
>>> from sklearn import metrics
>>> newsgroups_test = fetch_20newsgroups(subset='test',
...                                      categories=categories)
>>> vectors_test = vectorizer.transform(newsgroups_test.data)
>>> clf = MultinomialNB(alpha=.01)
>>> clf.fit(vectors, newsgroups_train.target)
>>> pred = clf.predict(vectors_test)
>>> metrics.f1_score(newsgroups_test.target, pred, average='macro')
0.88213592402729568

使用稀疏特征的文本文档的分类示例可以混合训练和测试数据,而不是按时间划分,在这种情况下,多项式的朴素贝叶斯获得了更高的F88分,为0.88。您是否怀疑这个分类?)

我们来看看最有用的功能是什么:

>>> import numpy as np
>>> def show_top10(classifier, vectorizer, categories):
...     feature_names = np.asarray(vectorizer.get_feature_names())
...     for i, category in enumerate(categories):
...         top10 = np.argsort(classifier.coef_[i])[-10:]
...         print("%s: %s" % (category, " ".join(feature_names[top10])))
...
>>> show_top10(clf, vectorizer, newsgroups_train.target_names)
alt.atheism: sgi livesey atheists writes people caltech com god keith edu
comp.graphics: organization thanks files subject com image lines university edu graphics
sci.space: toronto moon gov com alaska access henry nasa edu space
talk.religion.misc: article writes kent people christian jesus sandvik edu com god

您现在可以看到许多这些功能已经完成的事情:

  • 几乎每一个组是由报头如是否区分 NNTP-Posting-Host:Distribution:显示更多或更少的频率。
  • 另一个重要特征涉及发送者是否隶属于大学,如其标题或其签名所指示的。
  • “文章”这个词是一个重要的特征,基于人们引用以前的帖子的频率如下:“在文章[文章ID]中,[name] <[e-mail address]>写道:
  • 其他功能与当时发布的特定人物的姓名和电子邮件地址相匹配。

有了这样丰富的线索来区分新闻组,分类器根本就不得不从文本中识别主题,而且它们都在同一个高级别上执行。

因此,加载20个新闻组数据的功能提供了一个名为remove的参数,告诉它从每个文件中删除什么样的信息。删除应该是包含任何子集的元组 ,告诉它分别删除标题,签名块和引用块。('headers', 'footers', 'quotes')

>>> newsgroups_test = fetch_20newsgroups(subset='test',
...                                      remove=('headers', 'footers', 'quotes'),
...                                      categories=categories)
>>> vectors_test = vectorizer.transform(newsgroups_test.data)
>>> pred = clf.predict(vectors_test)
>>> metrics.f1_score(pred, newsgroups_test.target, average='macro')
0.77310350681274775

这个分类器失去了很多F分数,只是因为我们删除了与主题分类无关的元数据。如果我们也从培训数据中剥离了这个元数据,它会丢失更多:

>>> newsgroups_train = fetch_20newsgroups(subset='train',
...                                       remove=('headers', 'footers', 'quotes'),
...                                       categories=categories)
>>> vectors = vectorizer.fit_transform(newsgroups_train.data)
>>> clf = MultinomialNB(alpha=.01)
>>> clf.fit(vectors, newsgroups_train.target)
>>> vectors_test = vectorizer.transform(newsgroups_test.data)
>>> pred = clf.predict(vectors_test)
>>> metrics.f1_score(newsgroups_test.target, pred, average='macro')
0.76995175184521725 

一些其他分类器更好地处理这个更难的版本的任务。尝试运行样品管道进行文本特征提取和评估,并--filter选择和不选择比较结果。

建议

在评估20个新闻组数据上的文本分类器时,应该剥离与新闻组相关的元数据。在scikit学习中,您可以通过设置来实现。F分数会更低,因为它更现实。remove=('headers', 'footers', 'quotes')

 

mldata.org存储库下载数据集

mldata.org是由PASCAL网络支持的机器学习数据的公共存储库。

sklearn.datasets软件包能够使用该功能从存储库直接下载数据集 sklearn.datasets.fetch_mldata

例如,要下载MNIST数字识别数据库:

 

MNIST数据库共包含70000个大小为28x28像素的手写数字示例,标记为0到9:

 

第一次下载后,数据集在本地缓存在由data_homekeyword参数指定的路径中,默认值为 ~/scikit_learn_data/

mldata.org中的数据集不遵守严格的命名或格式化约定。sklearn.datasets.fetch_mldata能够理解最常见的情况,但允许将默认值定制为单个数据集:

  • mldata.org中的数据阵列通常被定义为。这与惯例是相反的 ,所以 默认情况下转置矩阵。该关键字控制此行为:(n_features, n_samples)scikit-learnsklearn.datasets.fetch_mldatatranspose_data

  • 对于具有多个列的数据集,sklearn.datasets.fetch_mldata 尝试识别目标和数据列并将其重命名为targetdata。这是通过查找名称为数组label和 数组中的数组来完成的data,而通过选择第一个数组是第一个数组,target第二个是数组 data。可以使用target_namedata_name关键字更改此行为,将其设置为特定的名称或索引号(数据集中的列的名称和顺序可以在其mldata.org的“数据”选项卡下找到:

在狂野的脸部识别数据集标记的面孔

该数据集是通过互联网收集的着名人物的JPEG图片的集合,所有详细信息可在官方网站上查看:

http://vis-www.cs.umass.edu/lfw/

每张照片都集中在一张脸上。典型的任务叫做面部验证:给定一对两张图片,二进制分类器必须预测两张图像是否来自同一人物。

一个替代任务,面部识别或面部识别是:给予一个未知人物的脸部照片,通过参照先前查看的身份图片的图片来识别该人的姓名。

面部验证和人脸识别都是通常在训练进行人脸检测的模型的输出上执行的任务。最流行的人脸检测模型称为Viola-Jones,并在OpenCV库中实现。LFW脸部由各种在线网站的面部检测器提取。

用法

scikit-learn提供两个装载机,它们将自动下载,缓存,解析元数据文件,解码jpeg并将有趣的切片转换成内存的numpy数组。此数据集大小超过200 MB。第一个负载通常需要几分钟的时间才能将JPEG文件的相关部分完全解码为numpy数组。如果数据集已加载一次,则使用在~/scikit_learn_data/lfw_home/文件夹中的磁盘上记录的记录版本,以下时间的加载时间小于200ms joblib

第一个装载器用于面部识别任务:多类分类任务(因此是监督学习):

>>> from sklearn.datasets import fetch_lfw_people
>>> lfw_people = fetch_lfw_people(min_faces_per_person=70, resize=0.4)

>>> for name in lfw_people.target_names:
...     print(name)
...
Ariel Sharon
Colin Powell
Donald Rumsfeld
George W Bush
Gerhard Schroeder
Hugo Chavez
Tony Blair

默认切片是脸部周围的矩形,删除大部分背景:

>>> lfw_people.data.dtype
dtype('float32')

>>> lfw_people.data.shape
(1288, 1850)

>>> lfw_people.images.shape
(1288, 50, 37)

每个1140面都分配给target 数组中的单个人id :

>>> lfw_people.target.shape
(1288,)

>>> list(lfw_people.target[:10])
[5, 6, 3, 1, 0, 1, 3, 4, 3, 0]

第二个加载程序通常用于面部验证任务:每个样本是属于或不属于同一个人的一对两个图片:

>>> from sklearn.datasets import fetch_lfw_pairs
>>> lfw_pairs_train = fetch_lfw_pairs(subset='train')

>>> list(lfw_pairs_train.target_names)
['Different persons', 'Same person']

>>> lfw_pairs_train.pairs.shape
(2200, 2, 62, 47)

>>> lfw_pairs_train.data.shape
(2200, 5828)

>>> lfw_pairs_train.target.shape
(2200,)

无论是对于sklearn.datasets.fetch_lfw_people和 sklearn.datasets.fetch_lfw_pairs功能,都可以通过传递RGB颜色通道来获得额外的尺寸color=True,在这种情况下,形状将是 。(2200, 2, 62, 47, 3)

所述sklearn.datasets.fetch_lfw_pairs的数据集被分成3个子集:开发train组,开发test组和评估10_folds意味着计算使用10倍交叉验证方案的性能指标集。

参考文献:

示例

使用特征面和SVM的面孔识别示例

 

森林覆盖

该数据集中的样本对应于美国30×30米的森林,收集用于预测每个补丁的覆盖类型的任务,即树的优势种。有七个封面,使其成为多类分类问题。每个样本都有54个功能,在数据集的主页上描述 。一些功能是布尔指标,而其他特征是离散或连续测量。

sklearn.datasets.fetch_covtype将加载封面类型数据集; 它返回与data成员中的特征矩阵和目标值中的类似字典的对象target。如有必要,数据集将从网页下载。

 

RCV1数据集

路透社语料库I(RCV1)是由路透社有限公司提供的超过80万手动分类的新闻稿故事的存档,用于研究目的。数据集在[1]中广泛描述。

sklearn.datasets.fetch_rcv1 将加载以下版本:RCV1-v2,向量,全集,主题multilabels:

>>> from sklearn.datasets import fetch_rcv1
>>> rcv1 = fetch_rcv1()

它返回一个类似字典的对象,具有以下属性:

data:特征矩阵是一个scipy CSR稀疏矩阵,具有804414个样本和47236个特征。非零值包含余弦标准化的日志TF-IDF向量。在[1]中提出了几乎按时间顺序的分裂:前23149个样本是训练集。最后的781265个样本是测试集。这是遵循官方LYRL2004按时间顺序排列的。该数组具有0.16%的非零值:

>>> rcv1.data.shape
(804414, 47236)

target:目标值存储在scipy CSR稀疏矩阵中,具有804414个样本和103个类别。每个样本的类别中的值为1,其他样本的值为0。该数组具有3.15%的非零值:

>>> rcv1.target.shape
(804414, 103)

sample_id:每个样本可以通过其身份识别,范围(间隙)从2286到810596:

>>> rcv1.sample_id[:3]
array([2286, 2287, 2288], dtype=uint32)

target_names:目标值是每个样本的主题。每个样本至少属于一个主题,最多17个主题。有103个主题,每个主题由一个字符串表示。他们的语料库频率跨越五个数量级,从“GMIL”的5次出现,到“CCAT”的381327次:

>>> rcv1.target_names[:3].tolist()  
['E11', 'ECAT', 'M11']

如有必要,数据集将从rcv1主页下载。压缩大小约为656 MB。

参考

[1]

12刘易斯,DD,杨,Y.,玫瑰,TG,与李,F。(2004)。RCV1:文本分类研究的新基准集合。机器学习研究杂志,5,361-397。

波士顿房价数据集

注释

数据集特征:

实例数:
 506
属性数量:
 13数字/分类预测

:中值(属性14)通常是目标

属性信息(按顺序):
 
  • 城镇人均犯罪率
  • 住宅用地面积超过25,000平方呎的ZN比例。
  • INDUS每个城镇的非零售商业用地的比例
  • CHAS查尔斯河虚拟变量(= 1如果道束河;否则为0)
  • NOX一氧化氮浓度(每1000万份)
  • RM平均每居室数
  • 在1940年之前建成的自建单位的年均比例
  • DIS加权距离为五个波士顿就业中心
  • RAD径向高速公路可达性指数
  • 每10,000澳元的全额物业税税率
  • PTRATIO学生 - 教师比例按城镇
  • B 1000(Bk - 0.63)^ 2其中Bk是城镇的黑人比例
  • LSTAT%的人口状况较低
  • MEDV自有房屋的平均价值为1000美元
缺少属性值:
 

没有

创建者:

哈里森,D.和鲁宾菲尔德,DL

这是UCI ML住房数据集的副本。 http://archive.ics.uci.edu/ml/datasets/Housing

该数据集是从在卡内基梅隆大学维护的StatLib库获取的。

波士顿房价数据来自Harrison D.和Rubinfeld,DL'Hedonic价格和清洁空气的需求“,J.Environ。经济与管理,第5卷,81-102,1978。用于Belsley,Kuh&Welsch,“回归诊断”,Wiley,1980年。NB在后者的第244-261页的表中使用了各种变换。

波士顿的房价数据已被用于解决回归问题的许多机器学习论文中。

参考

  • Belsley,Kuh&Welsch,“Regression diagnostics:Identifying Influential Data and Sources of Collinearity”,Wiley,1980. 244-261。
  • 昆兰,R。(1993)。结合基于实例和基于模型的学习。在Proceedings on the Tenth International Conference on Machine Learning,236-243,University of Massachusetts,Amherst。摩根考夫曼
  • 还有很多!(见http://archive.ics.uci.edu/ml/datasets/Housing

 

乳腺癌威斯康辛(诊断)数据库

注释

数据集特征:实例数: 569属性数量: 30个数字,预测属性和类属性信息: 半径(从中心到周边的距离的平均值)纹理(灰度值的标准偏差)周长区平滑度(半径长度的局部变化)紧凑度(周长^ 2 /面积-1.0)凹度(轮廓的凹部的严重性)凹点(轮廓的凹部的数量)对称分形维数(“海岸线近似” - 1)对于每个图像计算这些特征的平均值,标准误差和“最差”或最大值(三个最大值的平均值),从而产生30个特征。例如,字段3是平均半径,字段13是半径SE,字段23是最差半径。类:WDBC恶性WDBC良性总结统计:    半径(平均):6.98128.11纹理(平均):9.7139.28周长(平均):43.79188.5面积(平均):143.52501.0平滑度(平均值):0.0530.163紧凑(平均):0.0190.345凹度(平均):0.00.427凹点(平均):0.00.201对称(平均):0.1060.304分形维数(平均值):0.050.097半径(标准误差):0.1122.873纹理(标准错误):0.364.885周长(标准误差):0.75721.98面积(标准误差):6.802542.2平滑度(标准误差):0.0020.031紧凑性(标准误差):0.0020.135凹度(标准误差):0.00.396凹点(标准误差):0.00.053对称性(标准误差):0.0080.079分形维数(标准误差):0.0010.03半径(最差):7.9336.04纹理(最差):12.0249.54周长(最差):50.41251.2面积(最差):185.24254.0平滑度(最差):0.0710.223紧凑(最差):0.0271.058凹度(最差):0.01.252凹点(最差):0.00.291对称(最差):0.1560.664分形维数(最差):0.0550.208缺少属性值: 没有分类: 212 - 恶性,357 - 良性创建者:William H. Wolberg博士,W. Nick Street,Olvi L. Mangasarian捐赠者:尼克街日期:一九九五年十一月

这是UCI ML乳腺癌威斯康星(诊断)数据集的副本。 https://goo.gl/U2Uwz2

特征是从乳房质量的细针抽吸(FNA)的数字化图像计算的。它们描述了图像中存在的细胞核的特征。

使用Multisurface Method-Tree(MSM-T)[KP Bennett,“Decision Tree Construction Via Linear Programming”,Proceedings of the 4th Midwest Artificial Intelligence and Cognitive Science Society,pp.97-101,1992]获得了上述分离平面,一种使用线性规划构造决策树的分类方法。通过在1-4个特征空间和1-3个分离平面的空间进行详尽的搜索,选择了相关的特征。

用于获得三维空间中的分离平面的实际线性程序描述于:[KP Bennett and OL Mangasarian:“Robust Linear Programming Discrimination of Two Linearly Inseparable Sets”,Optimization Methods and Software 1,1992,23- 34。

该数据库也可通过UW CS ftp服务器获得:

ftp ftp.cs.wisc.edu cd math-prog / cpo-dataset / machine-learn / WDBC /

参考

  • WN街,WH Wolberg和OL Mangasarian。核特征提取用于乳腺肿瘤诊断。IS&T / SPIE 1993 International Symposium on Electronic Imaging:Science and Technology,第1905卷,第861-870页,San Jose,CA,1993。
  • OL Mangasarian,WN街和WH Wolberg。乳腺癌诊断和预后通过线性规划。运营研究,43(4),第570-577页,1995年7月至8月。
  • WH Wolberg,WN街和OL Mangasarian。机器学习技术从细针抽吸物诊断乳腺癌。Cancer Letters 77(1994)163-171。

 

 

糖尿病数据集

注释

每个n = 442例糖尿病患者获得十个基线变量,年龄,性别,体重指数,平均血压和六个血清测量值,以及感兴趣的反应,基线后一年的疾病进展的定量测量。

数据集特征:

实例数:
 

442

属性数量:
 

前10列是数字预测值

目标:

第11列是基线后一年疾病进展的定量测量

属性:
年龄: 
性别: 
身体质量指数:
  
平均血压:
  
S1: 
S2: 
S3: 
S4: 
S5: 
S6: 

注意:这10个特征变量中的每一个已经被平均居中,并按照标准偏差乘以n_samples(即每列的平方和总和1)进行缩放。

来源URL:http : //www4.stat.ncsu.edu/~boos/var.select/diabetes.html

有关更多信息,请参阅:Bradley Efron,Trevor Hastie,Iain Johnstone和Robert Tibshirani(2004)“最小角度回归”,“统计年鉴”(有讨论),407-499。(http://web.stanford.edu/~hastie/Papers/LARS/LeastAngle_2002.pdf

 

手写数字数据集的光学识别

注释

数据集特征:实例数: 5620属性数量: 64属性信息: 整数像素的8×8图像范围0..16。缺少属性值: 没有创建者:Alpaydin(alpaydin'@'boun.edu.tr)日期:七月; 1998年

这是UCI ML手写数字数据集的测试集的副本http://archive.ics.uci.edu/ml/datasets/Optical+Recognition+of+Handwritten+Digits

数据集包含手写数字的图像:每个类指数位的10个类。

NIST提供的预处理程序用于从预印表中提取手写数字的标准化位图。共有43人,其中30人为训练集,13人为考场。32x32位图被划分为4x4的非重叠块,并且在每个块中计数像素数。这产生一个8×8的输入矩阵,其中每个元素是0..16范围内的一个整数。这降低了维度,并给出了小变形的不变性。

有关NIST预处理程序的信息,请参阅MD Garris,JL Blue,GT Candela,DL Dimmick,J. Geist,PJ Grother,SA Janet和CL Wilson,NIST Form-Based Handprint Recognition System,NISTIR 5469,1994。

参考

  • C.Kaynak(1995)组合多分类器及其应用于手写数字识别的方法,硕士论文,博加齐奇大学科学与工程研究生研究所。
    1. Alpaydin,C.Kaynak(1998)级联分类器,Kybernetika。
  • 肯唐,Pon ai ai Sug anthan anthan and and Xi and and。。。。。使用相关加权LDA的线性维数减少。南洋理工大学电气与电子工程学院。2005年。
  • 克劳迪奥·外邦人 一种新的近似最大边距分类算法。NIPS。2000。

 

鸢尾植物数据库

注释

数据集特征:实例数: 150(三类中的每一类为50)属性数量: 4个数字,预测属性和类属性信息: 萼片长度(厘米)萼片宽度(厘米)花瓣长度(厘米)花瓣宽度(厘米)类:虹膜Setosa虹膜Versicolour虹膜弗吉尼亚总结统计:       萼片长度:4.37.95.840.830.7826萼片宽度:2.04.43.050.43-0.4194花瓣长度:1.06.93.761.760.9490(高!)花瓣宽度:0.12.51.200.760.9565(高!)缺少属性值: 没有分类: 33.3%为3类。创建者:RA Fisher捐赠者:迈克尔·马歇尔(MARSHALL%PLU @ IO 。电弧。美国航空航天局。 GOV)日期:一九八八年七月

这是UCI ML虹膜数据集的副本。 http://archive.ics.uci.edu/ml/datasets/Iris

着名的Iris数据库,首先由RA Fisher先生使用

这可能是模式识别文献中最知名的数据库。费雪的论文是这个领域的经典之作,经常被引用到今天。(例如,参见Duda&Hart)。数据集包含3个类别的50个实例,每个类别指的是一种类型的虹膜植物。一类与另外两类线性分离; 后者不能彼此线性分离。

参考

  • Fisher,RA“Use in multiple measurements in taxonomy problems”Annual Eugenics,7,Part II,179-188(1936); 也在“数学统计贡献”(John Wiley,NY,1950)中。
  • Duda,RO,&Hart,PE(1973)模式分类和场景分析。(Q327.D83)John Wiley&Sons。ISBN 0-471-22361-1。参见第218页。
  • Dasarathy,BV(1980)“Nosing Around the Neighborhood:A New System Structure and Classification Rule for Recognition in Partially Exposed Environments”。IEEE Transactions on Pattern Analysis and Machine Intelligence,Vol。PAMI-2,No.1,67-71。
  • 盖茨,GW(1972)“减少最近邻规则”。IEEE Transactions on Information Theory,May 1972,431-433。
  • 参见:1988 MLC Proceedings,54-64。Cheeseman等人的AUTOCLASS II概念聚类系统在数据中找到3个类。
  • 许多,更多...

 

Linnerrud数据集

注释

数据集特征:实例数: 20属性数量: 3缺少属性值: 没有

Linnerud数据集包含两个小数据集:

  • 练习:包含以下组件的列表:运动数据,包含3个运动变量的20个观察值:体重,腰围和脉搏。

  • 生理:数据框与20个观察3个生理变量:下巴,站立和跳跃。

参考

  • Tenenhaus,M。(1998)。拉回归PLS:theorie et pratique。巴黎:版本技术

 

  • 无标签