Scikit-learn: Saya tidak mengerti bagaimana membangun dengan anaconda / MKL

Dibuat pada 29 Jul 2015  ·  36Komentar  ·  Sumber: scikit-learn/scikit-learn

Saat menggunakan anaconda dengan MKL dan mencoba membangun sklearn, saya mendapatkan

Intel MKL FATAL ERROR: Cannot load libmkl_avx2.so or libmkl_def.so.

Adakah yang bisa menjelaskan apa yang terjadi / bagaimana membangunnya?

Komentar yang paling membantu

conda install numpy
Memperbaiki kesalahan untuk saya

Semua 36 komentar

bagaimana Anda menginstalnya?

itu cukup otomatis bagi saya, saya hanya perlu menambahkan file lisensi dan menjalankan
upgrade conda (atau sesuatu seperti itu)

Saya melakukan itu juga, dan itu memberi saya numpy dengan mkl. Tetapi jika saya kemudian mencoba mengkompilasi sklearn saya mendapatkan kesalahan penautan saat mengimpor.

Hmm aku tidak tahu. Mungkin konflik dengan python dan anaconda lokal Anda
saat pemasangan :(

hm, mungkin saya perlu mengatur LD_LIBRARY_PATH atau sesuatu?

Saya telah mengatur saya ke sesuatu seperti

LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/u/kkastne/miniconda/lib/

meskipun memesan mungkin penting jika menemukan perpustakaan lain dari yang lain
python menginstal terlebih dahulu.

Pada hari Rabu, 29 Jul 2015 jam 17:01, Andreas Mueller [email protected]
menulis:

hm, mungkin saya perlu mengatur LD_LIBRARY_PATH atau sesuatu?


Balas email ini secara langsung atau lihat di GitHub
https://github.com/scikit-learn/scikit-learn/issues/5046#issuecomment -126094651
.

itu adalah kombinasi dari pencampuran sistem numpy dan LD_LIBRARY_PATH... selalu menyenangkan.... maaf atas kebisingannya.

Saya mendapatkan masalah yang sama. @amueller Pertanyaan

Saya mengalami masalah yang sama, menggunakan pyinstaller di anaconda untuk mengkompilasi program saya. Ketika saya menjalankannya pada mesin tertentu, itu menimbulkan kesalahan yang disebutkan di atas. Dalam kasus saya, jika saya menggemakan $LD_LIBRARY_PATH saya melihat beberapa jalur yang diatur oleh manajer sistem kami untuk beberapa program agar berfungsi. Saya mencoba mengaturnya ke jalur lib anaconda, dan membiarkannya kosong, tetapi terus menghasilkan kesalahan.

Saya pikir ada kesalahan baru, saya baru saja mendapatkannya di contoh travis.

Kapan masalah Anda terjadi? Karena dalam kasus saya, saya dapat menginstal dengan conda install numpy, dan tidak mendapatkan pesan kesalahan. Setelah itu, saya berhasil membuat biner satu file dengan pyinstaller. Ketika benar-benar menggunakan executable, pada titik tertentu, panggilan ke beberapa kode Biopython meningkatkan kesalahan. Jadi saya kira Anda juga mengalami masalah saat menguji kode, saat runtime, bukan?

Jika saya memeriksa instalasi conda saya, baik libmkl_avx2.so dan libmkl_def.so ada di sana, di folder $home/anaconda2/lib. Saya juga telah mencoba menambahkan file sebagai binari di file spesifikasi pyinteller, tetapi tidak ada yang berhasil ...

Saya pikir ada kesalahan baru, saya baru saja mendapatkannya di contoh travis.

@amueller Saya telah melihat kesalahan ini:

Intel MKL FATAL ERROR: Cannot load libmkl_avx2.so or libmkl_def.so.

di Travis juga. Dari apa yang saya dapat kumpulkan itu karena numpy 1.10.2 kehilangan beberapa hal mkl. numpy 1.10.4 baik-baik saja. Ini dicatat di https://github.com/scikit-learn/scikit-learn/pull/6508#issuecomment -194908920.

Sebagai catatan saya tidak pernah mengatur LD_LIBRARY_PATH untuk membangun scikit-learn dengan anaconda (dengan atau tanpa MKL).

@clacri apakah masalah Anda terkait dengan scikit-learn sama sekali? Jika tidak, sepertinya Anda harus mengajukan pertanyaan kepada pyinstaller atau orang-orang Biopython ...

Dari apa yang saya dapat kumpulkan itu karena numpy 1.10.2 kehilangan beberapa hal mkl.

Berikut ini cuplikan yang mereproduksi masalah di mesin saya:

conda create -n mkl --yes python=3.5 pip nose numpy=1.10.2 scipy=0.16.1 cython=0.23.4 mkl
. activate mkl
cd ~/dev/scikit-learn
make in
python -c 'import sklearn.linear_model.tests.test_randomized_l1'
Intel MKL FATAL ERROR: Cannot load libmkl_mc3.so or libmkl_def.so.

Tidak, Anda benar. Saya harus memposting di daftar masalah mereka. Hanya saja saya melihat kesalahan yang ditunjukkan di sini sama dan juga saat menggunakan anaconda, jadi saya pikir itu mungkin terkait. Saya sudah bertanya pada proyek pyinstaller, karena tampaknya memiliki masalah serupa dengan perpustakaan mkl lainnya. Bagaimanapun, saya memeriksa versi numpy saya di anaconda, dan ini adalah 1.10.4. Terima kasih :)

Sebagai catatan, menelusuri komentar referensi Anda, saya menemukan posting di blog Anaconda di mana mereka menjelaskan cara menonaktifkan versi mkl dari perpustakaan (https://www.continuum.io/blog/developer-blog/anaconda-25 -release-now-mkl-optimizations) dan sekarang setidaknya saya dapat mengkompilasi versi yang berfungsi. Terima kasih!

Karena masalah yang sama dengan saya, saya mematikan mkl dengan conda install nomkl. Saya sekarang senang. Jika masalah ini telah diperbaiki, silakan bagikan kepada kami agar saya dapat mengaktifkannya kembali. Terima kasih telah menguraikan masalah ini.

Permasalahan yang sama

Ikuti tautan di atas dan selesaikan masalah saya. Terima kasih.

Itu diselesaikan sekarang setidaknya untuk saya. Anda dapat mencoba dengan numpy 11 baru.
Pada Rabu, 27 April 2016 pukul 22:42 gjzhu [email protected] menulis:

Permasalahan yang sama. Tidak tahu bagaimana menghadapinya.


Anda menerima ini karena Anda berkomentar.
Balas email ini secara langsung atau lihat di GitHub
https://github.com/scikit-learn/scikit-learn/issues/5046#issuecomment -215292024

Sungjin (James) Kim, PhD

Postdoc, CCB di Harvard

[email protected]

[Web] http://aspuru.chem.harvard.edu/james-sungjin-kim/

[Linkedin] https://www.linkedin.com/in/jamessungjinkim

[Facebook] https://www.facebook.com/jamessungjin.kim

[email alternatif] jamessungjin. [email protected]

conda install numpy
Memperbaiki kesalahan untuk saya

Bagus. Ini juga berfungsi untuk saya seperti yang saya catat sebelumnya.

Pada Selasa, 3 Mei 2016 pukul 11:26 alinabee [email protected] menulis:

conda install numpy
Memperbaiki kesalahan untuk saya


Anda menerima ini karena Anda berkomentar.
Balas email ini secara langsung atau lihat di GitHub
https://github.com/scikit-learn/scikit-learn/issues/5046#issuecomment -216563766

Sungjin (James) Kim, PhD

Postdoc, CCB di Harvard

[email protected]

[Web] http://aspuru.chem.harvard.edu/james-sungjin-kim/

[Linkedin] https://www.linkedin.com/in/jamessungjinkim

[Facebook] https://www.facebook.com/jamessungjin.kim

[email alternatif] jamessungjin. [email protected]

Hai,

Hanya ingin mencatat bahwa Anaconda 4.0.0, dikirimkan dengan mkl diaktifkan secara default, memiliki masalah ini.
Masalahnya memang dengan Anaconda, karena dapat direproduksi dengan tes sklearn python yang disarankan di atas oleh @pcgreat.

Masalah sebenarnya adalah bahwa Anaconda terhubung dengan mkl, tetapi tidak dengan libmkl_core.so, sehingga memiliki simbol yang hilang, dan dapat dilihat dengan menjalankan:

$ LD_DEBUG=symbols python -c 'import sklearn.linear_model.tests.test_randomized_l1' 2>&1 | grep -i error
      2200:     /opt/anaconda/lib/python2.7/site-packages/scipy/special/../../../../libmkl_avx.so: error: symbol lookup error: undefined symbol: mkl_dft_fft_fix_twiddle_table_32f (fatal)

Saya tidak ingin menghapus mkl, karena saya ingin meningkatkan kinerja, jadi saya menemukan solusi yang berhasil untuk saya - muat libmkl_core.so sebelum eksekusi.

$ python -c 'import sklearn.linear_model.tests.test_randomized_l1'
Intel MKL FATAL ERROR: Cannot load libmkl_avx.so or libmkl_def.so.
$
$ LD_PRELOAD=/opt/anaconda/lib/libmkl_core.so python -c 'import sklearn.linear_model.tests.test_randomized_l1'
$

Salam,
Yanir.

Ini adalah pemikiran solusi yang sangat luar biasa.

Pada Rabu, 11 Mei 2016 di 7:00 AM yanirj [email protected] menulis:

Hai,

Hanya ingin mencatat bahwa Anaconda 4.0.0, dikirimkan dengan mkl diaktifkan oleh
default, memiliki masalah ini.
Masalahnya memang dengan Anaconda, karena dapat direproduksi dengan
tes sklearn python disarankan di atas oleh @pcgreat
https://github.com/pcgreat.

Masalah sebenarnya adalah bahwa Anaconda terhubung dengan mkl, tetapi tidak dengan
libmkl_core.so, sehingga memiliki simbol yang hilang, dan dapat dilihat dengan menjalankan:

$ LD_DEBUG=simbol python -c 'import sklearn.linear_model.tests.test_randomized_l1' 2>&1 | grep -i kesalahan
2200: /opt/anaconda/lib/python2.7/site-packages/scipy/special/../../../../libmkl_avx.so: error: kesalahan pencarian simbol: simbol tidak terdefinisi: mkl_dft_fft_fix_twiddle_table_32f (fatal)

Saya tidak ingin menghapus mkl, karena saya ingin meningkatkan kinerja,
jadi saya menemukan solusi yang berhasil untuk saya - pramuat libmkl_core.so sebelumnya
eksekusi.

$ python -c 'impor sklearn.linear_model.tests.test_randomized_l1'
Intel MKL FATAL ERROR: Tidak dapat memuat libmkl_avx.so atau libmkl_def.so.
$

$ LD_PRELOAD=/opt/anaconda/lib/libmkl_core.so python -c 'import sklearn.linear_model.tests.test_randomized_l1'
$

Salam,
Yanir.


Anda menerima ini karena Anda berkomentar.
Balas email ini secara langsung atau lihat di GitHub
https://github.com/scikit-learn/scikit-learn/issues/5046#issuecomment -218427199

Sungjin (James) Kim, PhD

Postdoc, CCB di Harvard

[email protected]

[Web] http://aspuru.chem.harvard.edu/james-sungjin-kim/

[Linkedin] https://www.linkedin.com/in/jamessungjinkim

[Facebook] https://www.facebook.com/jamessungjin.kim

[email alternatif] jamessungjin. [email protected]

Saya memiliki masalah yang sama, meskipun menggunakan paket terbaru yang tersedia. Ternyata solusinya lebih mudah daripada yang saya kira: untuk alasan apa pun Anaconda menginstal versi numpy/scipy stack yang mendukung MKL, tetapi sebenarnya tidak menginstal mkl itu sendiri. Saya telah melihat ini ketika membangun gambar Docker berdasarkan tumpukan notebook minimal Jupyter .

conda install --yes mkl mkl-service menyelesaikannya untuk saya.

Saya membuka terminal ipython dengan perpustakaan yang dimuat sebelumnya dan mengalami kesalahan berikut ketika saya menjalankan salah satu rutinitas pca.
:
/home/rp2801/anaconda2/bin/python: kesalahan pencarian simbol: /home/rp2801/anaconda2/lib/libmkl_core.so: simbol tidak terdefinisi: mkl_serv_get_max_threads
Saya membuka terminal ipython saya sebagai
$ LD_PRELOAD=/path/ke/libmkl_core.so ipython

Saya mendapatkan kesalahan yang sama. Alternatif untuk menghapus peralihan MKL ke cvxopt yang dibuat sebelumnya juga memecahkan masalah bagi saya:

conda install cvxopt=1.1.8=py35_0

Saya berhasil memecahkan masalah, ini tutorialnya https://docs.continuum.io/mkl-optimizations/
perintah:
conda update conda
conda update anaconda
conda update mkl

Saya menemukan bahwa saya memiliki masalah yang sama di bawah numpy: 1.11.2 , yang dapat direproduksi oleh
$ python -c 'import sklearn.linear_model.tests.test_randomized_l1'
Intel MKL FATAL ERROR: Tidak dapat memuat libmkl_avx.so atau libmkl_def.so.

Setelah menurunkan versi numpy ke 1.11.1, kesalahan ini hilang.
conda install numpy=1.11.1
Paket-paket berikut akan DITURUNKAN karena konflik ketergantungan:
numpy: 1.11.2-py35_0 --> 1.11.1-py35_0
Lanjutkan ([y]/n)? kamu

menambahkan
impor numpy sebagai np
di awal skrip memecahkan masalah :-)

Tidak ingin menonaktifkan MKL dengan nomkl.
menambahkan

import mkl
mkl.get_max_threads()

Memecahkan masalah ini untuk saya.

conda install numpy
memecahkan masalah bagi saya.

conda install -c intel mkl

Bekerja untuk saya

conda install numpy
memecahkan masalah bagi saya juga.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat