获取 Olivetti 人脸#

sklearn.datasets.fetch_olivetti_faces(*, data_home=None, shuffle=False, random_state=0, download_if_missing=True, return_X_y=False, n_retries=3, delay=1.0)[source]#

从AT&T加载Olivetti人脸数据集(分类)。

如有必要,下载数据集。

类别数

40

样本总数

400

维度

4096

特征

实数,介于0和1之间

更多信息请参见用户指南

参数:
data_homestr 或 path-like 对象,默认为None

指定数据集的另一个下载和缓存文件夹。默认情况下,所有scikit-learn数据都存储在’~/scikit_learn_data’子文件夹中。

shufflebool,默认为False

如果为True,则打乱数据集的顺序,以避免同一人的图像分组。

random_stateint、RandomState 实例或 None,默认为0

确定数据集混洗的随机数生成。传递一个整数以在多次函数调用中获得可重复的输出。参见术语表

download_if_missingbool,默认为True

如果为False,如果数据在本地不可用,则引发OSError,而不是尝试从源站点下载数据。

return_X_ybool,默认为False

如果为True,则返回(data, target)而不是Bunch对象。有关datatarget对象的更多信息,请参见下文。

版本0.22中新增。

n_retriesint,默认为3

遇到HTTP错误时的重试次数。

版本1.5中新增。

delayfloat,默认为1.0

两次重试之间的秒数。

版本1.5中新增。

返回值:
dataBunch

字典类对象,具有以下属性。

data: ndarray,形状 (400, 4096)

每一行对应于原始大小为64 x 64像素的展开人脸图像。

imagesndarray,形状 (400, 64, 64)

每一行都是对应于数据集40个对象之一的人脸图像。

targetndarray,形状 (400,)

与每个人脸图像相关的标签。这些标签的范围是0-39,对应于对象ID。

DESCRstr

修改后的Olivetti人脸数据集的描述。

(data, target)如果return_X_y=True,则为元组

包含上面描述的datatarget对象的元组。

版本0.22中新增。

示例

>>> from sklearn.datasets import fetch_olivetti_faces
>>> olivetti_faces = fetch_olivetti_faces()
>>> olivetti_faces.data.shape
(400, 4096)
>>> olivetti_faces.target.shape
(400,)
>>> olivetti_faces.images.shape
(400, 64, 64)