Saya menggunakan python 2.7 di Ubuntu 14.04. Saya menginstal scikit-learn, numpy dan matplotlib dengan perintah-perintah ini:
sudo apt-get install build-essential python-dev python-numpy \
python-numpy-dev python-scipy libatlas-dev g++ python-matplotlib \
ipython
Tetapi ketika saya mengimpor paket-paket ini:
from sklearn.cross_validation import train_test_split
Ini mengembalikan saya kesalahan ini:
ImportError: No module named sklearn.cross_validation
Apa yang harus saya lakukan?
python
scikit-learn
arthurckl
sumber
sumber
Jawaban:
Ini harus berkaitan dengan penggantian nama dan penghentian
cross_validation
sub-modulmodel_selection
. Cobalah mengganticross_validation
kemodel_selection
sumber
train_test_split sekarang ada di model_selection. Ketik saja:
itu harus bekerja
sumber
Saya kira seleksi silang tidak aktif lagi. Kita harus menggunakan pemilihan model sebagai gantinya. Anda dapat menulisnya untuk menjalankan,
from sklearn.model_selection import train_test_split
Itu dia.
sumber
Pastikan Anda telah menginstal Anaconda dan kemudian membuat virtualenv menggunakan conda . Ini akan memastikan semua impor berfungsi
sumber
sklearn.cross_validation
sekarang diubah menjadisklearn.model_selection
Gunakan saja
Saya pikir itu akan berhasil.
sumber
telah berubah menjadi
Lihat dokumentasi di sini: https://scikit-learn.org/stable/modules/cross_validation.html
sumber
Mungkin itu karena penghentian sklearn.cross_validation. Silakan ganti sklearn.cross_validation dengan sklearn.model_selection
Ref- https://github.com/amueller/scipy_2015_sklearn_tutorial/issues/60
sumber
Memisahkan dataset ke dalam set Pelatihan dan set Tes
sumber
Past:
from sklearn.cross_validation
(Paket ini sudah usang dalam versi 0.18 dari 0.20 dan selanjutnya diubah menjadifrom sklearn import model_selection
).Menyajikan:
from sklearn import model_selection
Contoh 2:
Past:
from sklearn.cross_validation import cross_val_score
(Versi 0.18 yang sudah usang)Hadir:
from sklearn.model_selection import cross_val_score
sumber
sklearn.cross_validation
sekarang diubah menjadisklearn.model_selection
Ubah saja
untuk
sumber
ubah kode seperti ini
sumber
Jika Anda memiliki kode yang perlu menjalankan berbagai versi, Anda dapat melakukan sesuatu seperti ini:
Ini tidak ideal karena Anda membandingkan versi paket sebagai string, yang biasanya berfungsi tetapi tidak selalu. Jika Anda ingin menginstal
packaging
, ini adalah pendekatan yang jauh lebih baik:sumber
cross_validation sudah ditinggalkan beberapa waktu lalu, coba nonaktifkan dengan model_selection
sumber
train_test_split
adalah bagian dari modulsklearn.model_selection
, oleh karena itu, Anda mungkin perlu mengimpor modul darimodel_selection
Kode:
sumber
Entah kita harus menurunkan versi scikit-belajar ke versi terbaru yang kompatibel. Dan ini bisa dilakukan setelah mengaktifkan lingkungan conda. Gunakan perintah berikut untuk menurunkan scikit-pelajari:
ATAU
Ketika kita tidak ingin downgrade scikit-pelajari. Kemudian kita semua tahu bahwa nama "cross_validation" tidak digunakan lagi dalam versi scikit-learn dan digantikan oleh "model_selection" di dalam versi anaconda baru. Karena itu kami mungkin mendapat peringatan atau bahkan kesalahan.
Untuk menghindari ini, kita hanya perlu mengganti:
untuk
Semoga ini bisa membantu menyelesaikan masalah.
sumber