MMDNN هي أداة شاملة وعبر المتقاطع لتحويل وتصور وتشخيص نماذج التعلم العميق (DL). "MM" تعني إدارة النماذج ، و "DNN" هو اختصار الشبكة العصبية العميقة.
تشمل الميزات الرئيسية:
تحويل النموذج
إعادة تدريب النموذج
البحث عن النموذج والتصور
النموذج النشر
نحن نقدم بعض الإرشادات لمساعدتك في نشر نماذج DL على منصة أجهزة أخرى.
نحن نقدم دليل لمساعدتك على تسريع الاستدلال مع Tensorrt.
الاستهداف في الانفتاح والتقدم في تكنولوجيا الفنون ، أصدرت Microsoft Research (MSR) ومركز Microsoft Technology Center (STC) أيضًا عدد قليل من مشاريع المصادر المفتوحة الأخرى:
نحن نشجع الباحثين والمطورين والطلاب على الاستفادة من هذه المشاريع لزيادة إنتاجيتهم العميقة في التعلم العميق.
يمكنك الحصول على نسخة مستقرة من MMDNN بواسطة
pip install mmdnnوتأكد من تثبيت Python أو يمكنك تجربة أحدث إصدار
pip install -U git+https://github.com/Microsoft/MMdnn.git@masterيوفر MMDNN صورة Docker ، والتي تحزم MMDNN وأطر التعلم العميق التي ندعمها وكذلك التبعيات الأخرى. يمكنك بسهولة تجربة الصورة مع الخطوات التالية:
تثبيت Docker Community Edition (CE)
تعرف على المزيد حول كيفية تثبيت Docker
سحب صورة MMDNN Docker
docker pull mmdnn/mmdnn:cpu.smallقم بتشغيل الصورة في وضع تفاعلي
docker run -it mmdnn/mmdnn:cpu.smallفي جميع أنحاء الصناعة والأوساط الأكاديمية ، هناك عدد من الأطر الحالية المتاحة للمطورين والباحثين لتصميم نموذج ، حيث يكون لكل إطار تعريف بنية الشبكة الخاصة به وتنسيق النموذج. الفجوات بين الأطر العمل تعرقل انتشار النماذج.
نحن نقدم محول نموذج لمساعدة المطورين على تحويل النماذج بين الأطر من خلال تنسيق تمثيل وسيطة.
[ملاحظة] يمكنك النقر فوق الروابط للحصول على إعادة قراءة مفصلة لكل إطار.
يتم اختبار تحويل النموذج بين الأطر المدعومة حاليًا على بعض نماذج ImageNet .
| النماذج | الكافيين | كيراس | Tensorflow | CNTK | mxnet | Pytorch | Coreml | onnx |
|---|---|---|---|---|---|---|---|---|
| VGG 19 | √ | √ | √ | √ | √ | √ | √ | √ |
| بداية V1 | √ | √ | √ | √ | √ | √ | √ | √ |
| بداية V3 | √ | √ | √ | √ | √ | √ | √ | √ |
| بداية V4 | √ | √ | √ | س | √ | √ | √ | √ |
| RESNET V1 | × | √ | √ | س | √ | √ | √ | √ |
| RESNET V2 | √ | √ | √ | √ | √ | √ | √ | √ |
| Mobilenet V1 | × | √ | √ | س | √ | √ | √ | √ |
| Mobilenet V2 | × | √ | √ | س | √ | √ | √ | √ |
| Xception | √ | √ | √ | س | × | √ | √ | √ |
| القوسنيت | √ | √ | √ | √ | √ | √ | √ | √ |
| Densenet | √ | √ | √ | √ | √ | √ | √ | √ |
| nasnet | x | √ | √ | س | √ | √ | √ | x |
| RESNEXT | √ | √ | √ | √ | √ | √ | √ | √ |
| VOC FCN | √ | √ | ||||||
| YOLO3 | √ | √ |
أمر واحد لتحقيق التحويل. باستخدام TensorFlow Resnet V2 152 إلى Pytorch كمثال لدينا.
$ mmdownload -f tensorflow -n resnet_v2_152 -o ./
$ mmconvert -sf tensorflow -in imagenet_resnet_v2_152.ckpt.meta -iw imagenet_resnet_v2_152.ckpt --dstNodeName MMdnn_Output -df pytorch -om tf_resnet_to_pth.pthمنتهي.
نحن نوفر مرئيًا محليًا لعرض بنية الشبكة لنموذج التعلم العميق. يرجى الرجوع إلى التعليمات.
Keras "Inception V3" إلى CNTK والقضية ذات الصلة
Tensorflow Slim Model "Resnet V2 152" إلى Pytorch
نموذج MXNET "lresnet50e-ir" إلى TensorFlow والمسألة ذات الصلة
mxnet "Resnet-152-11k" إلى Pytorch
مثال آخر على mxnet "Resnet-152-11K" إلى Pytorch
mxnet "resnext" إلى keras
Tensorflow "Resnet-101" إلى Pytorch
TensorFlow "MNIST MLP Model" إلى CNTK
TensorFlow "Inception_v3" إلى MXNET
Caffe "VOC-FCN" إلى TensorFlow
Caffe "Alexnet" إلى TensorFlow
الكافيين "inception_v4" إلى TensorFlow
Caffe "VGG16_SOD" إلى TensorFlow
Caffe "Squeezenet v1.1" إلى CNTK
تطلب منك معظم المساهمات الموافقة على اتفاقية ترخيص المساهم (CLA) مع إعلان أن لديك الحق في القيام به ، وامنحنا حقوق استخدام مساهمتك. للحصول على التفاصيل ، تفضل بزيارة https://cla.microsoft.com.
عند إرسال طلب سحب ، ستحدد CLA-Bot تلقائيًا ما إذا كنت بحاجة إلى توفير CLA وتزيين العلاقات العامة بشكل مناسب (على سبيل المثال ، التسمية ، التعليق). ببساطة اتبع الإرشادات التي يقدمها الروبوت. ستحتاج فقط إلى القيام بذلك مرة واحدة عبر جميع عمليات إعادة الشراء باستخدام CLA لدينا.
اعتمد هذا المشروع رمز سلوك المصدر المفتوح Microsoft. لمزيد من المعلومات ، راجع مدونة الشهادة الأسئلة الشائعة أو الاتصال بـ [email protected] مع أي أسئلة أو تعليقات إضافية.
يخزن التمثيل الوسيط بنية الشبكة في الأوزان الثنائية والمدربة مسبقًا بتنسيق Numpy الأصلي.
[ملاحظة!] حاليًا تكون بيانات أوزان الأشعة تحت الحمراء بتنسيق NHWC (القناة الأخيرة).
التفاصيل في Ops.txt و Graph.proto. المشغلين الجدد وأي تعليقات مرحب بها.
نحن نعمل على تحويل الأطر الأخرى وتصورها ، مثل Pytorch و Coreml وما إلى ذلك. نحن التحقيق في المزيد من العوامل ذات الصلة RNN. أي مساهمات واقتراحات مرحب بها! التفاصيل في المبدأ التوجيهي للمساهمة.
يو ليو (جامعة بكين): مطور المشروع وشروع المشرف
Cheng Chen (Microsoft Research Asia): Caffe ، Cntk ، Coreml Emitter ، Keras ، Mxnet ، TensorFlow
Jiahao Yao (جامعة بكين): Coreml ، Mxnet Emitter ، Pytorch Parser ؛ الصفحة الرئيسية
Ru Zhang (الأكاديمية الصينية للعلوم): Coreml Emitter ، Darknet Parser ، Keras ، Tensorflow Frozen Graph Parser ؛ نماذج Yolo و SSD ؛ الاختبارات
Yuhao Zhou (جامعة شنغهاي جياو تونغ): MXNET
Tingting Qin (Microsoft Research Asia): Caffe Semitter
تونغ تشان (Microsoft): باعث أونكس
تشيانوين وانغ (جامعة هونغ كونغ للعلوم والتكنولوجيا): التصور
بفضل Saumitro Dasgupta ، فإن الكود الأولي لـ Caffe -> IR هو إشارات إلى مشروع Caffe -TensorFlow.
مرخصة بموجب ترخيص معهد ماساتشوستس للتكنولوجيا.