J'utilise python 2.7 dans Ubuntu 14.04. J'ai installé scikit-learn, numpy et matplotlib avec ces commandes:
sudo apt-get install build-essential python-dev python-numpy \
python-numpy-dev python-scipy libatlas-dev g++ python-matplotlib \
ipython
Mais lorsque j'importe ces packages:
from sklearn.cross_validation import train_test_split
Cela me renvoie cette erreur:
ImportError: No module named sklearn.cross_validation
Ce que je dois faire?
python
scikit-learn
Arthurckl
la source
la source
Réponses:
Il doit concerner le changement de nom et la dépréciation du
cross_validation
sous-module enmodel_selection
. Essayez de remplacercross_validation
àmodel_selection
la source
train_test_split est maintenant dans model_selection. Tapez simplement:
ça devrait marcher
la source
Je suppose que la sélection croisée n'est plus active. Nous devrions utiliser à la place la sélection de modèle. Vous pouvez l'écrire pour l'exécuter,
from sklearn.model_selection import train_test_split
C'est tout.
la source
Assurez-vous que Anaconda est installé, puis créez un virtualenv en utilisant conda . Cela garantira que toutes les importations fonctionnent
la source
sklearn.cross_validation
est maintenant changé ensklearn.model_selection
Juste utiliser
Je pense que cela fonctionnera.
la source
a changé en
Consultez la documentation ici: https://scikit-learn.org/stable/modules/cross_validation.html
la source
Cela peut être dû à la dépréciation de sklearn.cross_validation. Veuillez remplacer sklearn.cross_validation par sklearn.model_selection
Réf- https://github.com/amueller/scipy_2015_sklearn_tutorial/issues/60
la source
Fractionnement de l'ensemble de données en ensemble d'apprentissage et ensemble de test
la source
Passé:
from sklearn.cross_validation
(Ce paquet est obsolète dans la version 0.18 à partir de 0.20, il est changé enfrom sklearn import model_selection
).Présent:
from sklearn import model_selection
Exemple 2:
Passé:
from sklearn.cross_validation import cross_val_score
(Version 0.18 qui est obsolète)Présent :
from sklearn.model_selection import cross_val_score
la source
sklearn.cross_validation
est maintenant changé ensklearn.model_selection
Changez juste
à
la source
changez le code comme ça
la source
Si vous avez du code qui doit exécuter différentes versions, vous pouvez faire quelque chose comme ceci:
Ce n'est pas idéal car vous comparez les versions de packages sous forme de chaînes, ce qui fonctionne généralement mais pas toujours. Si vous êtes prêt à installer
packaging
, c'est une bien meilleure approche:la source
cross_validation est obsolète il y a quelque temps, essayez de le désactiver avec model_selection
la source
train_test_split
fait partie du modulesklearn.model_selection
, par conséquent, vous devrez peut-être importer le module depuismodel_selection
Code:
la source
Soit nous devons rétrograder scikit-learn vers la version compatible la plus récente. Et cela peut être fait après l'activation de l'environnement conda. Utilisez les commandes suivantes pour rétrograder scikit-learn:
OU
Lorsque nous ne voulons pas rétrograder scikit-learn. Ensuite, nous savions tous que le nom "cross_validation" est obsolète dans les nouvelles versions de scikit-learn et a été remplacé par "model_selection" dans la nouvelle version d'anaconda. Par conséquent, nous pourrions recevoir un avertissement ou même une erreur.
Pour éviter cela, il suffit de remplacer:
à
J'espère que cela aidera à résoudre le problème.
la source