وقف المشروع. لن تتم صيانة هذا المشروع بواسطة Intel بعد الآن. لن توفر شركة Intel أو تضمن تطوير هذا المشروع أو دعمه، بما في ذلك على سبيل المثال لا الحصر، الصيانة أو إصلاحات الأخطاء أو الإصدارات أو التحديثات الجديدة. لم تعد Intel تقبل تصحيحات هذا المشروع. إذا كانت لديك حاجة مستمرة لاستخدام هذا المشروع، أو كنت مهتمًا بتطويره بشكل مستقل، أو ترغب في الحفاظ على التصحيحات للمجتمع، فيرجى إنشاء شوكة خاصة بك للمشروع.
نيون هو إطار التعلم العميق المرجعي لشركة إنتل والملتزم بأفضل أداء على جميع الأجهزة. مصممة لسهولة الاستخدام والتوسعة.
من أجل التكرار السريع واستكشاف النماذج، يتمتع النيون بأسرع أداء بين مكتبات التعلم العميق (سرعة مضاعفة لـ cuDNNv4، راجع المعايير).
نحن نستخدم النيون داخليًا في Intel Nervana لحل مشكلات عملائنا عبر العديد من المجالات. نحن نقوم بالتوظيف عبر عدة أدوار. تقدم بطلبك هنا!
شاهد الميزات الجديدة في أحدث إصدار لدينا. نريد أن نسلط الضوء على أن الإصدار 2.0.0+ من النيون قد تم تحسينه للحصول على أداء أفضل بكثير على وحدات المعالجة المركزية (CPUs) من خلال تمكين مكتبة Intel Math Kernel (MKL). يتم توفير مكون DNN (الشبكات العصبية العميقة) لـ MKL الذي يستخدمه النيون مجانًا ويتم تنزيله تلقائيًا كجزء من تثبيت النيون.
على جهاز Mac OSX أو Linux، أدخل ما يلي لتنزيل النيون وتثبيته (يرى مستخدمو conda الدليل)، واستخدمه لتدريب أول إدراك متعدد الطبقات. لفرض تثبيت python2 أو python3، استبدل make
أدناه إما make python2
أو make python3
.
git clone https://github.com/NervanaSystems/neon.git
cd neon
make
. .venv/bin/activate
بدءًا من الإصدار 2.2.0 من النيون، سيتم تحديث الفرع الرئيسي من النيون أسبوعيًا مع استمرار العمل نحو الإصدار التالي. تحقق من علامة الإصدار (على سبيل المثال، "git checkout v2.2.0") للحصول على إصدار مستقر. أو قم ببساطة بمراجعة علامة الإصدار "الأحدث" للحصول على أحدث إصدار ثابت (على سبيل المثال، "git checkout الأحدث")
من الإصدار 2.4.0، قمنا بإعادة تمكين تثبيت النقطة. يمكن تثبيت النيون باستخدام اسم الحزمة nervananeon.
pip install nervananeon
تجدر الإشارة إلى أنه يجب تثبيت Aeon بشكل منفصل. الإصدار الأحدث v2.6.0 يستخدم aeon v1.3.0.
تحذير
بين الإصدار 2.1.0 من النيون والإصدار 2.2.0، تم تغيير تنسيق ملف بيان aeon. عند التحديث من النيون < v2.2.0، يجب إعادة إنشاء البيانات باستخدام البرامج النصية لاستيعاب (في مجلد الأمثلة) أو تحديثها باستخدام هذا البرنامج النصي.
python examples/mnist_mlp.py
يتم تحديد الواجهة الخلفية لوحدة معالجة الرسومات بشكل افتراضي، وبالتالي فإن الأمر أعلاه يعادل ما إذا تم العثور على مورد GPU متوافق على النظام:
python examples/mnist_mlp.py -b gpu
في حالة عدم توفر وحدة معالجة الرسومات، يتم الآن تحديد الواجهة الخلفية لوحدة المعالجة المركزية (MKL) المحسنة افتراضيًا اعتبارًا من إصدار النيون v2.1.0، مما يعني أن الأمر أعلاه يعادل الآن:
python examples/mnist_mlp.py -b mkl
إذا كنت مهتمًا بمقارنة الواجهة الخلفية الافتراضية لـ mkl مع الواجهة الخلفية لوحدة المعالجة المركزية غير المحسنة، فاستخدم الأمر التالي:
python examples/mnist_mlp.py -b cpu
وبدلاً من ذلك، يمكن استخدام ملف yaml لتشغيل مثال.
neon examples/mnist_mlp.yaml
لتحديد واجهة خلفية معينة في ملف yaml، قم بإضافة أو تعديل سطر يحتوي على backend: mkl
لتمكين الواجهة الخلفية mkl، أو backend: cpu
لتمكين الواجهة الخلفية لوحدة المعالجة المركزية. يتم تحديد الواجهة الخلفية لوحدة معالجة الرسومات بشكل افتراضي في حالة توفر وحدة معالجة الرسومات.
تستفيد مكتبة Intel Math Kernel من إمكانيات الموازاة والتوجيه لأنظمة Intel Xeon وXeon Phi. عند تمكين تقنية Hyperthreading على النظام، نوصي بإعداد KMP_AFFINITY التالي للتأكد من تعيين الخيوط المتوازية بنسبة 1:1 إلى النوى المادية المتوفرة.
export OMP_NUM_THREADS= < Number of Physical Cores >
export KMP_AFFINITY=compact,1,0,granularity=fine
أو
export OMP_NUM_THREADS= < Number of Physical Cores >
export KMP_AFFINITY=verbose,granularity=fine,proclist=[0- < Number of Physical Cores > ],explicit
لمزيد من المعلومات حول KMP_AFFINITY، يرجى التحقق هنا. نحن نشجع المستخدمين على البدء في تجربة وإنشاء أفضل إعدادات الأداء الخاصة بهم.
الوثائق الكاملة للنيون متاحة هنا. بعض نقاط البداية المفيدة هي:
لأية أخطاء أو طلبات الميزة من فضلك:
للأسئلة والمناقشات الأخرى يرجى نشر رسالة إلى مجموعة جوجل لمستخدمي النيون
نحن نصدر النيون بموجب ترخيص Apache 2.0 مفتوح المصدر. نرحب باتصالك بنا بشأن حالات الاستخدام الخاصة بك.