Я использую Python 2.7 в Ubuntu 14.04. Я установил scikit-learn, numpy и matplotlib с помощью следующих команд:
sudo apt-get install build-essential python-dev python-numpy \
python-numpy-dev python-scipy libatlas-dev g++ python-matplotlib \
ipython
Но когда я импортирую эти пакеты:
from sklearn.cross_validation import train_test_split
Это возвращает мне эту ошибку:
ImportError: No module named sklearn.cross_validation
Что мне нужно сделать?
python
scikit-learn
arthurckl
источник
источник
Ответы:
Он должен относиться к переименованию и устаревания из
cross_validation
суб-модуля вmodel_selection
. Попробуйте заменитьcross_validation
наmodel_selection
источник
train_test_split теперь находится в model_selection. Просто введите:
он должен работать
источник
Я думаю, что перекрестный выбор больше не активен. Мы должны использовать вместо выбора модели. Вы можете написать это для запуска,
from sklearn.model_selection import train_test_split
Это оно.
источник
Убедитесь, что у вас установлена Anaconda, а затем создайте virtualenv с помощью conda . Это обеспечит работу всего импорта
источник
sklearn.cross_validation
теперь изменен наsklearn.model_selection
Просто используйте
Я думаю, что это сработает.
источник
изменился на
Ознакомьтесь с документацией здесь: https://scikit-learn.org/stable/modules/cross_validation.html
источник
Может быть, это связано с устареванием sklearn.cross_validation. Пожалуйста, замените sklearn.cross_validation на sklearn.model_selection
Ссылка - https://github.com/amueller/scipy_2015_sklearn_tutorial/issues/60
источник
Разделение набора данных на тренировочный набор и тестовый набор
источник
В прошлом:
from sklearn.cross_validation
(Этот пакет устарел в версии 0.18, начиная с версии 0.20, он заменен наfrom sklearn import model_selection
).Настоящее время:
from sklearn import model_selection
Пример 2:
Прошлое :
from sklearn.cross_validation import cross_val_score
(версия 0.18 устарела)Настоящее время :
from sklearn.model_selection import cross_val_score
источник
sklearn.cross_validation
теперь изменен наsklearn.model_selection
Просто поменяй
в
источник
изменить код, как это
источник
Если у вас есть код для запуска различных версий, вы можете сделать что-то вроде этого:
Это не идеально, потому что вы сравниваете версии пакетов как строки, что обычно работает, но не всегда. Если вы хотите установить
packaging
, это гораздо лучший подход:источник
cross_validation устарела некоторое время назад, попробуйте выключить его с помощью model_selection
источник
train_test_split
является частью модуляsklearn.model_selection
, следовательно, вам может понадобиться импортировать модуль изmodel_selection
Код:
источник
Либо нам нужно понизить Scikit-Learn до последней совместимой версии. И это можно сделать после активации среды conda. Используйте следующие команды, чтобы понизить scikit-learn:
ИЛИ
Когда мы не хотим понизить курс науки - учимся. Тогда мы все знали, что имя "cross_validation" устарело в новых версиях scikit-learn и было заменено на "model_selection" в новой версии anaconda. Поэтому мы можем получить предупреждение или даже ошибку.
Чтобы избежать этого, нам просто нужно заменить:
в
Надеюсь, это поможет решить проблему.
источник