加载 Labeled Faces in the Wild (LFW) 人脸数据集 (分类)#
- sklearn.datasets.fetch_lfw_people(*, data_home=None, funneled=True, resize=0.5, min_faces_per_person=0, color=False, slice_=(slice(70, 195, None), slice(78, 172, None)), download_if_missing=True, return_X_y=False, n_retries=3, delay=1.0)[source]#
加载 Labeled Faces in the Wild (LFW) 人脸数据集 (分类)。
必要时下载数据集。
类
5749
样本总数
13233
维度
5828
特征
实数,介于0和255之间
有关此数据集的使用示例,请参见 使用特征脸和SVM的人脸识别示例。
在 用户指南 中了解更多信息。
- 参数:
- data_homestr 或 path-like 对象,默认为None
指定数据集的另一个下载和缓存文件夹。默认情况下,所有 scikit-learn 数据都存储在 ‘~/scikit_learn_data’ 子文件夹中。
- funneledbool,默认为True
下载并使用数据集的精简版本。
- resizefloat 或 None,默认为0.5
用于调整每个面部图片大小的比例。如果为
None
,则不进行调整大小。- min_faces_per_personint,默认为None
提取的数据集将只保留至少具有
min_faces_per_person
张不同照片的人的照片。- colorbool,默认为False
保留3个RGB通道,而不是将它们平均为单个灰度通道。如果 color 为 True,则数据的形状比 color = False 的形状多一个维度。
- slice_切片元组,默认为(slice(70, 195), slice(78, 172))
提供自定义的二维切片(高度、宽度)以提取 JPEG 文件的“感兴趣”部分,并避免使用来自背景的统计相关性。
- download_if_missingbool,默认为True
如果为 False,则如果数据在本地不可用,则引发 OSError,而不是尝试从源站点下载数据。
- return_X_ybool,默认为False
如果为 True,则返回
(dataset.data, dataset.target)
,而不是 Bunch 对象。有关dataset.data
和dataset.target
对象的更多信息,请参见下文。0.20 版本中新增。
- n_retriesint,默认为3
遇到 HTTP 错误时的重试次数。
1.5 版本中新增。
- delayfloat,默认为1.0
两次重试之间的秒数。
1.5 版本中新增。
- 返回:
- dataset
Bunch
类似字典的对象,具有以下属性。
- data形状为 (13233, 2914) 的 numpy 数组
每一行对应于原始大小为 62 x 47 像素的展平人脸图像。更改
slice_
或 resize 参数将更改输出的形状。- images形状为 (13233, 62, 47) 的 numpy 数组
每一行都是对应于数据集中 5749 个人之一的人脸图像。更改
slice_
或 resize 参数将更改输出的形状。- target形状为 (13233,) 的 numpy 数组
与每个人脸图像相关的标签。这些标签范围从 0 到 5748,对应于人员 ID。
- target_names形状为 (5749,) 的 numpy 数组
数据集中所有人员的姓名。数组中的位置对应于 target 数组中的人员 ID。
- DESCRstr
Labeled Faces in the Wild (LFW) 数据集的描述。
- (data, target)如果
return_X_y
为 True,则为元组 包含两个 ndarray 的元组。第一个包含形状为 (n_samples, n_features) 的二维数组,每一行表示一个样本,每一列表示特征。第二个形状为 (n_samples,) 的 ndarray 包含目标样本。
0.20 版本中新增。
- dataset
示例
>>> from sklearn.datasets import fetch_lfw_people >>> lfw_people = fetch_lfw_people() >>> lfw_people.data.shape (13233, 2914) >>> lfw_people.target.shape (13233,) >>> for name in lfw_people.target_names[:5]: ... print(name) AJ Cook AJ Lamas Aaron Eckhart Aaron Guiel Aaron Patterson