Python ValueError:min\u faces\u per\u person=70限制太多

Python ValueError:min\u faces\u per\u person=70限制太多,python,scikit-learn,svm,python-3.6,face-recognition,Python,Scikit Learn,Svm,Python 3.6,Face Recognition,我正在使用scikit学习官方网站上的特征脸和支持向量机练习人脸识别示例 但当我在这里跑步时: from __future__ import print_function from time import time import logging import matplotlib.pyplot as plt from sklearn.model_selection import train_test_split from sklearn.model_selection import Gri

我正在使用scikit学习官方网站上的特征脸和支持向量机练习人脸识别示例

但当我在这里跑步时:

from __future__ import print_function

from time import time
import logging
import matplotlib.pyplot as plt

from sklearn.model_selection import train_test_split
from sklearn.model_selection import GridSearchCV
from sklearn.datasets import fetch_lfw_people
from sklearn.metrics import classification_report
from sklearn.metrics import confusion_matrix
from sklearn.decomposition import PCA
from sklearn.svm import SVC


print(__doc__)

# Display progress logs on stdout
logging.basicConfig(level=logging.INFO, format='%(asctime)s %(message)s')


# #############################################################################
# Download the data, if not already on disk and load it as numpy arrays

lfw_people = fetch_lfw_people(min_faces_per_person=70, resize=0.4)
但我得到一个错误,告诉我:

Traceback (most recent call last):
  File "D:\神经网络与深度学习\麦子学院-深度学习\(Part One)深度学习基础\代码与素材
\代码与素材(1)\03SVM\plot_face_recognition.py", line 54, in <module>
    lfw_people = fetch_lfw_people(min_faces_per_person=70, resize=0.4)
  File "D:\Program Files\Python36\lib\site-packages\sklearn\datasets\lfw.py", line 335, in fetch_lfw_people
    min_faces_per_person=min_faces_per_person, color=color, slice_=slice_)
  File "D:\Program Files\Python36\lib\site-packages\sklearn\externals\joblib\memory.py", line 562, in __call__
    return self._cached_call(args, kwargs)[0]
  File "D:\Program Files\Python36\lib\site-packages\sklearn\externals\joblib\memory.py", line 510, in _cached_call
    out, metadata = self.call(*args, **kwargs)
  File "D:\Program Files\Python36\lib\site-packages\sklearn\externals\joblib\memory.py", line 744, in call
    output = self.func(*args, **kwargs)
  File "D:\Program Files\Python36\lib\site-packages\sklearn\datasets\lfw.py", line 231, in _fetch_lfw_people
    min_faces_per_person)
ValueError: min_faces_per_person=70 is too restrictive
回溯(最近一次呼叫最后一次):
文件“D:\神经网络与深度学习\麦子学院-深度学习\(第一部分)深度学习基础\代码与素材
\代码与素材(1) \03SVM\plot\u face\u recognition.py”,第54行,在
lfw_people=fetch_lfw_people(每个人的最小面数=70,调整大小=0.4)
文件“D:\Program Files\Python36\lib\site packages\sklearn\datasets\lfw.py”,第335行,在fetch\u lfw\u people中
每个人的最小面部=每个人的最小面部,颜色=颜色,切片=切片)
文件“D:\Program Files\Python36\lib\site packages\sklearn\externals\joblib\memory.py”,第562行,在调用中__
返回self.\u缓存的\u调用(args,kwargs)[0]
文件“D:\Program Files\Python36\lib\site packages\sklearn\externals\joblib\memory.py”,第510行,在缓存调用中
out,metadata=self.call(*args,**kwargs)
文件“D:\Program Files\Python36\lib\site packages\sklearn\externals\joblib\memory.py”,第744行,在调用中
输出=self.func(*args,**kwargs)
文件“D:\Program Files\Python36\lib\site packages\sklearn\datasets\lfw.py”,第231行,位于“fetch\lfw\u people”中
最小(每个人的脸)
ValueError:min\u faces\u per\u person=70限制太多

我不明白为什么?我的python版本是3.6.2,scikit学习版本是v0.19.0,我也遇到了这个异常。我发现这可能是因为您运行了这个python程序,但是当它运行并下载数据时,您破坏了它,并生成了dir

我通过删除maden目录解决了这个问题。它的
路径:~/scikit\u learn\u data/lfw\u home。


删除目录lfw_funneled和lfw-funneled.tgz,然后再次运行程序,数据将再次下载。

我也遇到了这个异常。我发现这可能是因为您运行了这个python程序,但是当它运行并下载数据时,您破坏了它,并生成了dir

我通过删除maden目录解决了这个问题。它的
路径:~/scikit\u learn\u data/lfw\u home。


删除dir lfw_funneled和lfw-funneled.tgz,然后再次运行您的程序,数据将再次下载。

此错误消息是一种误导:

ValueError: min_faces_per_person=70 is too restrictive
堆栈跟踪显示此错误来自于_fetch_lfw_people中第231行的…sklearn\datasets\lfw.py”

查看_fetch_lfw_people中的代码,它显示了何时生成此错误

n_faces = len(file_paths)
if n_faces == 0:
    raise ValueError("min_faces_per_person=%d is too restrictive" %
                     min_faces_per_person)
如果找不到任何要处理的(图像)文件,就会发生这种情况

我在使用internet代理时遇到了这个错误,而这个Python代码无法为我下载该文件

为了解决这个问题,我手动下载了这5个文件并将其放在~/scikit_learn_data/lfw_home文件夹中

https://ndownloader.figshare.com/files/5976018 #lfw.tgz
https://ndownloader.figshare.com/files/5976015 #lfw-funneled.tgz
https://ndownloader.figshare.com/files/5976012 #pairsDevTrain.txt
https://ndownloader.figshare.com/files/5976009 #pairsDevTest.txt
https://ndownloader.figshare.com/files/5976006 #pairs.txt

请记住在2个tgz文件上运行tar-xvf以提取图像文件。

此错误消息是一条令人费解的消息:

ValueError: min_faces_per_person=70 is too restrictive
堆栈跟踪显示此错误来自于_fetch_lfw_people中第231行的…sklearn\datasets\lfw.py”

查看_fetch_lfw_people中的代码,它显示了何时生成此错误

n_faces = len(file_paths)
if n_faces == 0:
    raise ValueError("min_faces_per_person=%d is too restrictive" %
                     min_faces_per_person)
如果找不到任何要处理的(图像)文件,就会发生这种情况

我在使用internet代理时遇到了这个错误,而这个Python代码无法为我下载该文件

为了解决这个问题,我手动下载了这5个文件并将其放在~/scikit_learn_data/lfw_home文件夹中

https://ndownloader.figshare.com/files/5976018 #lfw.tgz
https://ndownloader.figshare.com/files/5976015 #lfw-funneled.tgz
https://ndownloader.figshare.com/files/5976012 #pairsDevTrain.txt
https://ndownloader.figshare.com/files/5976009 #pairsDevTest.txt
https://ndownloader.figshare.com/files/5976006 #pairs.txt

一定要记得在2个tgz文件上运行tar-xvf来提取图像文件。

阅读时,似乎在empy文件集中出现了一些影响路径的问题。我使用的是Ubuntu 14和python 2,没有出现任何错误。可能是相关的。你可以在那里发布一个新问题。阅读时,似乎在路径方面出现了一些问题,这些问题对cts在一个empy文件集中。我在Ubuntu14和Python2上,没有得到任何错误。也许是相关的。你可以在那里发布一个新的问题。