Scikit-learn: أنا لا أفهم كيفية البناء باستخدام anaconda / MKL

تم إنشاؤها على ٢٩ يوليو ٢٠١٥  ·  36تعليقات  ·  مصدر: scikit-learn/scikit-learn

عند استخدام الأناكوندا مع MKL ومحاولة بناء sklearn ، أحصل على ذلك

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

يمكن لأي شخص أن يشرح ما يحدث / كيف نبني؟

التعليق الأكثر فائدة

conda install numpy
إصلاح الخطأ بالنسبة لي

ال 36 كومينتر

كيف قمت بتثبيته؟

إنه تلقائي جدًا بالنسبة لي ، فأنا بحاجة فقط إلى إضافة ملف ترخيص وتشغيله
ترقية conda (أو شيء من هذا القبيل)

لقد فعلت ذلك أيضًا ، وهذا يعطيني numpy مع mkl. ولكن إذا حاولت بعد ذلك تجميع sklearn فسوف أحصل على أخطاء ربط عند الاستيراد.

همهمة لا أعرف. ربما تتعارض مع الثعبان المحلي والأناكوندا
أثناء الإعداد :(

حسنًا ، ربما أحتاج إلى تعيين LD_LIBRARY_PATH أو شيء من هذا القبيل؟

لدي مجموعة خاصة بي لشيء مثل

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

على الرغم من أن الطلب قد يكون مهمًا إذا وجد مكتبات أخرى من مكتبات أخرى
يتم تثبيت python أولاً.

يوم الأربعاء ، 29 يوليو 2015 ، الساعة 5:01 مساءً ، Andreas Mueller [email protected]
كتب:

حسنًا ، ربما أحتاج إلى تعيين LD_LIBRARY_PATH أو شيء من هذا القبيل؟

-
قم بالرد على هذا البريد الإلكتروني مباشرة أو قم بعرضه على GitHub
https://github.com/scikit-learn/scikit-learn/issues/5046#issuecomment -126094651
.

لقد كان مزيجًا من خلط نظام numpy و LD_LIBRARY_PATH ... دائمًا متعة جيدة .... آسف للضوضاء.

المشكلة ذاتها تحدث معي. amueller سؤال Noob: أين تبحث عن

أواجه نفس المشكلة ، باستخدام pyinstaller في الأناكوندا لتجميع البرنامج الخاص بي. عندما أقوم بتنفيذه على أجهزة معينة ، فإنه يثير الخطأ المذكور أعلاه. في حالتي ، إذا قمت بترديد $ LD_LIBRARY_PATH أرى مسارين حددهما مدير النظام لبعض البرامج للعمل. حاولت ضبطه على مسار أناكوندا ليب ، وتركه فارغًا ، لكنه يستمر في إنتاج الخطأ.

أعتقد أن هناك خطأ جديدًا ، لقد حصلت عليه للتو في نسخة ترافيس.

متى تحدث مشكلتك؟ لأنه في حالتي ، يمكنني التثبيت باستخدام conda install numpy ، ولم أحصل على رسائل خطأ. بعد ذلك ، نجحت في إنشاء ملف ثنائي من ملف واحد باستخدام برنامج pyinstaller. عند استخدام الملف القابل للتنفيذ فعليًا ، في مرحلة ما ، يؤدي استدعاء بعض رموز Biopython إلى زيادة الخطأ. لذا أعتقد أنك تواجه أيضًا مشكلة عند اختبار الكود ، في وقت التشغيل ، أليس كذلك؟

إذا تحققت من تثبيت conda الخاص بي ، فإن كلا من libmkl_avx2.so و libmkl_def.so موجودان أيضًا في المجلد $ home / anaconda2 / lib. لقد حاولت أيضًا إضافة الملفات كثنائيات في ملف المواصفات pyintaller ، لكن لا يعمل أي منها ...

أعتقد أن هناك خطأ جديدًا ، لقد حصلت عليه للتو في نسخة ترافيس.

amueller لقد رأيت هذا الخطأ:

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

على ترافيس كذلك. مما استطعت أن أجمعه كان بسبب فقدان 1.10.2 لبعض عناصر MKL. كان numpy 1.10.4 على ما يرام. تمت الإشارة إلى ذلك في https://github.com/scikit-learn/scikit-learn/pull/6508#issuecomment -194908920.

للتسجيل ، لم أضطر أبدًا إلى تعيين LD_LIBRARY_PATH لبناء scikit-Learn باستخدام الأناكوندا (مع MKL أو بدونه).

clacri هل مشكلتك متعلقة بـ scikit-Learn على الإطلاق؟ إذا لم يكن الأمر كذلك ، يبدو أنه يجب عليك طرح سؤالك إما على pyinstaller أو Biopython People ...

مما استطعت أن أجمعه كان بسبب فقدان 1.10.2 لبعض عناصر MKL.

إليك مقتطف يعيد إنتاج المشكلة على جهازي:

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.

لا ، أنت على حق. يجب أن أنشر على قائمة قضاياهم. لقد رأيت أن الخطأ المشار إليه هنا هو نفسه وأيضًا أثناء استخدام الأناكوندا ، لذلك اعتقدت أنه قد يكون مرتبطًا. لقد سألت بالفعل عن مشروع pyinstaller ، لأنه يبدو أن لديه مشكلة مماثلة مع مكتبات mkl الأخرى. على أي حال ، لقد تحققت من الإصدار الخاص بي في الأناكوندا ، وهو 1.10.4. شكرا على كل حال :)

فقط للتسجيل ، وتصفح تعليقك المشار إليه ، وجدت المنشور في مدونة Anaconda حيث يصفون كيفية تعطيل إصدارات mkl من المكتبات (https://www.continuum.io/blog/developer-blog/anaconda-25 -تحرير-الآن- mkl- الأمثل) والآن على الأقل يمكنني تجميع نسخة صالحة للعمل. شكرا!

بسبب نفس المشكلة بالنسبة لي ، أقوم بإيقاف تشغيل mkl بواسطة conda install nomkl. أنا سعيد الآن. إذا تم إصلاح هذه المشكلة ، فيرجى مشاركتها معنا حتى أتمكن من تشغيلها مرة أخرى. شكرا لتفصيل هذه المشكلة.

نفس المشكلة

اتبعت الرابط أعلاه وحل مشكلتي. شكرا.

تم حلها الآن على الأقل بالنسبة لي. يمكنك تجربة numpy 11 الجديد.
يوم الأربعاء ، 27 أبريل 2016 الساعة 10:42 مساءً ، كتب gjzhu [email protected] :

نفس المشكلة. لا أعرف كيف أتعامل مع ذلك.

-
أنت تتلقى هذا لأنك علقت.
قم بالرد على هذا البريد الإلكتروني مباشرة أو قم بعرضه على GitHub
https://github.com/scikit-learn/scikit-learn/issues/5046#issuecomment -215292024

سونغجين (جيمس) كيم ، دكتوراه

Postdoc، CCB في هارفارد

[email protected]

[الويب] http://aspuru.chem.harvard.edu/james-sungjin-kim/

[لينكد إن] https://www.linkedin.com/in/jamessungjinkim

[فيسبوك] https://www.facebook.com/jamessungjin.kim

[بريد إلكتروني بديل] jamessungjin. [email protected]

conda install numpy
إصلاح الخطأ بالنسبة لي

حسن. كما أنه يعمل بالنسبة لي كما أشرت من قبل.

في الثلاثاء ، 3 مايو 2016 الساعة 11:26 صباحًا ، كتب alinabee [email protected] :

كوندا تثبيت numpy
إصلاح الخطأ بالنسبة لي

-
أنت تتلقى هذا لأنك علقت.
قم بالرد على هذا البريد الإلكتروني مباشرة أو قم بعرضه على GitHub
https://github.com/scikit-learn/scikit-learn/issues/5046#issuecomment -216563766

سونغجين (جيمس) كيم ، دكتوراه

Postdoc، CCB في هارفارد

[email protected]

[الويب] http://aspuru.chem.harvard.edu/james-sungjin-kim/

[لينكد إن] https://www.linkedin.com/in/jamessungjinkim

[فيسبوك] https://www.facebook.com/jamessungjin.kim

[بريد إلكتروني بديل] jamessungjin. [email protected]

مرحبا،

أردت فقط ملاحظة أن Anaconda 4.0.0 ، الذي يتم شحنه مع تمكين mkl افتراضيًا ، لديه هذه المشكلة.
تكمن المشكلة بالفعل في Anaconda ، حيث يمكن إعادة إنتاجها باستخدام اختبار Python sklearn المقترح أعلاه بواسطةpcgreat.

المشكلة الفعلية هي أن Anaconda مرتبط بـ mkl ، ولكن ليس بـ libmkl_core.so ، وبالتالي فهو يحتوي على رمز مفقود ، ويمكن رؤيته من خلال تشغيل:

$ 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)

لم أرغب في إلغاء تثبيت mkl ، لأنني أرغب في الحصول على تحسين الأداء ، لذلك وجدت حلاً مناسبًا لي - تحميل libmkl_core.so مسبقًا قبل التنفيذ.

$ 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'
$

يعتبر،
يانير.

إنه حل رائع الفكر.

يوم الأربعاء 11 مايو 2016 الساعة 7:00 صباحًا كتب yanirj [email protected] :

مرحبا،

أردت فقط ملاحظة أن Anaconda 4.0.0 ، يتم شحنها مع تمكين mkl بواسطة
الافتراضي ، لديه هذه المشكلة.
تكمن المشكلة بالفعل في أناكوندا ، حيث يمكن استنساخها باستخدام
اختبار python sklearn المُقترح أعلاه بواسطةpcgreat
https://github.com/pcgreat.

المشكلة الفعلية هي أن Anaconda مرتبط بـ mkl ، لكن ليس بـ
libmkl_core.so ، لذلك فقد رمز مفقود ، ويمكن رؤيته من خلال تشغيل:

$ LD_DEBUG = رموز python -c 'استيراد sklearn.linear_model.tests.test_randomized_l1' 2> & 1 | خطأ grep -i
2200: /opt/anaconda/lib/python2.7/site-packages/scipy/special/../../../../libmkl_avx.so: خطأ: خطأ في البحث عن الرمز: رمز غير محدد: mkl_dft_fft_fix_twiddle_table_32f (فادح)

لم أرغب في إلغاء تثبيت mkl ، لأنني أرغب في تحسين الأداء ،
لذلك وجدت حلاً نجح معي - التحميل المسبق libmkl_core.so من قبل
إعدام.

$ python -c "استيراد sklearn.linear_model.tests.test_randomized_l1"
خطأ فادح من Intel MKL: لا يمكن تحميل libmkl_avx.so أو libmkl_def.so.
$

$ LD_PRELOAD = / opt / anaconda / lib / libmkl_core.so python -c "استيراد sklearn.linear_model.tests.test_randomized_l1"
$

يعتبر،
يانير.

-
أنت تتلقى هذا لأنك علقت.
قم بالرد على هذا البريد الإلكتروني مباشرة أو قم بعرضه على GitHub
https://github.com/scikit-learn/scikit-learn/issues/5046#issuecomment -218427199

سونغجين (جيمس) كيم ، دكتوراه

Postdoc، CCB في هارفارد

[email protected]

[الويب] http://aspuru.chem.harvard.edu/james-sungjin-kim/

[لينكد إن] https://www.linkedin.com/in/jamessungjinkim

[فيسبوك] https://www.facebook.com/jamessungjin.kim

[بريد إلكتروني بديل] jamessungjin. [email protected]

واجهت نفس المشكلة ، على الرغم من استخدام أحدث الحزم المتاحة. تبين أن الحل كان أسهل مما كنت أعتقد: لأي سبب من الأسباب ، قامت Anaconda بتثبيت الإصدارات التي تدعم MKL من مكدس numpy / scipy ، لكنها لم تقم بالفعل بتثبيت mkl نفسها. لقد رأيت هذا عند إنشاء صور Docker استنادًا إلى مجموعة دفتر Jupyter المصغر .

حلها conda install --yes mkl mkl-service بسيطًا بالنسبة لي.

كنت أفتح محطة ipython مع تحميل المكتبة مسبقًا وواجهت الخطأ التالي عندما أقوم بتشغيل أحد إجراءات pca.
:
/ home / rp2801 / anaconda2 / bin / python: خطأ في البحث عن الرمز: /home/rp2801/anaconda2/lib/libmkl_core.so: رمز غير محدد: mkl_serv_get_max_threads
فتحت محطة ipython الخاصة بي باسم
$ LD_PRELOAD = / المسار / إلى / libmkl_core.so ipython

كنت أتلقى نفس الخطأ. حل بديل لإزالة تبديل MKL إلى cvxopt الذي تم إنشاؤه سابقًا أيضًا المشكلة بالنسبة لي:

تثبيت conda cvxopt = 1.1.8 = py35_0

لقد قمت بحل المشكلة بنجاح ، هذا هو البرنامج التعليمي https://docs.continuum.io/mkl-optimizations/
الامر:
كوندا تحديث كوندا
تحديث اناكوندا كوندا
تحديث كوندا MKL

لقد وجدت أن لدي نفس المشكلة تحت numpy: 1.11.2 ، والتي يمكن إعادة إنتاجها بواسطة
$ python -c 'import sklearn.linear_model.tests.test_randomized_l1'
خطأ فادح من Intel MKL: لا يمكن تحميل libmkl_avx.so أو libmkl_def.so.

بعد الرجوع إلى إصدار سابق numpy إلى 1.11.1 ، اختفى هذا الخطأ.
conda install numpy=1.11.1
سيتم تخفيض الحزم التالية بسبب تعارضات التبعية:
numpy: 1.11.2-py35_0 -> 1.11.1-py35_0
المضي قدما ([ص] / ن)؟ ذ

مضيفا
استيراد numpy كـ np
في بداية البرنامج النصي حل المشكلة :-)

لا تريد تعطيل MKL مع nomkl.
مضيفا

import mkl
mkl.get_max_threads()

حل هذه المشكلة بالنسبة لي.

conda install numpy
حل المشكلة بالنسبة لي.

conda تثبيت -c إنتل mkl

عملت من أجلي

كوندا تثبيت numpy
حل المشكلة بالنسبة لي أيضا.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات