Трудно точно сказать, что происходит, без некоторых примеров данных из train/
, но поиск в Google по вашему сообщению об ошибке обнаружил это, исходя из исходного кода для np.random.choice()
:
def choice(self, a, size=None, replace=True, p=None):
...
Raises
-------
ValueError
If a is an int and less than zero, if a or p are not 1-dimensional,
if a is an array-like of size 0, if p is not a vector of
probabilities, if a and p have different lengths, or if
replace=False and the sample size is greater than the population
size
...
# Format and Verify input
a = np.array(a, copy=False)
if a.ndim == 0:
try:
# __index__ must return an integer by python rules.
pop_size = operator.index(a.item())
except TypeError:
raise ValueError("'a' must be 1-dimensional or an integer")
if pop_size <= 0 and np.prod(size) != 0:
raise ValueError("'a' must be greater than 0 unless no samples are taken")
Похоже, что, возможно, cat_files
пусто или имеет неправильный тип.Вы проверили его содержимое, прежде чем передать его на номер np.random.choice()
?