مذكرة لى فنغ الشبكة: هذه المادة هي عبارة عن تجميع لللى فنغ ترجمات بلوق التكنولوجيا المجموعة، الأصلي عنوان انتقال كامل التعلم Toolchain للكشف عن وجوه، مؤلف رالف FEHRER.
الترجمة | طويل كه يو تشي بنغ لتشطيب | جيانغ فان
نقل وسائل التعلم التي كتبها المعلمات ما قبل التدريب لصقل النموذج، يتم تطبيق نموذج تدريبهم على مهام مختلفة مماثلة أو فقط الفروق الدقيقة في. من خلال هذه الطريقة، يمكن أن نستند على أداء بعض كبار نموذج التعلم العميق للحصول على نماذج عالية الأداء الأخرى. على الرغم من أنه يبدو بسيطا، لا تزال في دراسة ما قبل الهجرة، وهناك الكثير من الدراسات على بناء واختبار الفضاء.
تم تصميم هذا البرنامج التعليمي لتوفير سلسلة أداة (مجموعة من الأدوات والعمليات المرتبطة المكتبات)، فإنه يحتوي على بعض من أكثر الأساسية الهجرة محتوى التعلم قسم المعنية دلالات. البرنامج التعليمي التالية سوف تساعدك على بناء، هاجروا التعلم توفر إنتاج نموذج نموذجي. في الأساس، بل هو مزيج من بعض محددة الأدوات والأطر والنماذج. كنا:
-
جوجل-صورة تحميل بإرسال طلب البحث لURL جوجل الروابط من خلال الصور، والحصول على صور CSV
-
Labelbox للقيام مجموعة البيانات الشرح، وتحويل الانتاج
-
نموذج فريق العمل: TensorFlow لنموذج حديقة الحيوان والتدريب COCO بيانات تستند
-
كائن TensorFlow كشف API: تنطبق على التعلم نقل والاستدلال
-
كمبيوتر win10 مع GPU إنتل
كل خطوة فردية على طول ما تتكشف السرد:
نحن نريد أن تمر على صقل قبل تدريب مجموعة البيانات نموذج COCO للكشف عن الخوخ. لأن الهدف COCO التدريب نموذج مجموعة البيانات للكشف عن التفاح والبرتقال، وذلك فقط نموذج المستوى الأعلى لضبط ما قبل تدريب بعض المعلمات كافية.
يرجى ملاحظة أننا لا نخلق في هذا البرنامج التعليمي هو نموذج ناجح جدا، لأنها سوف تحتاج إلى نموذج أكبر من ذلك بكثير في الخطوة 1، يستغرق وقتا عدة مرات. ركزنا على عرض للجميع لتعلم أداة الترحيل يمكن تطبيقها على غيرها من سلسلة مشاهد مماثلة، من كيفية بناء العرف بدأت مجموعات البيانات للحصول على أخيرا الانتهاء غرامة للنموذج.
هذه السلسلة أداة كل خطوة لديها الكثير من الخيارات البديلة، وهناك العديد من المهام المختلفة، وطريقة الهجرة من التعلم الذي تم تحقيقه. ولكن إذا كنت تريد أن تبدأ، وهذه محاولة سلسلة أداة، قدر الإمكان ومن ثم ضبط وفقا للاحتياجات الخاصة بك في كل خطوة.
ونحن نقدم أيضا مجلد المشروع جيثب المقابلة فوق ذلك معظم الملفات وملف العمليات ولدت في عملية نحتاجه. يمكنك استنساخ لإنتاج المشروع بأكمله، يمكنك إنشاء فرع لتوسيع وتعديل المشروع.
1. إنشاء مجموعة بيانات
إذا لم تتمكن من العثور على البيانات في جمع بيانات مركزية الحالية من الأجسام المكتشفة واحدة تريد، تحتاج إلى العثور على الصور الخاصة بك ووضع علامة عليها القيام به. هناك العديد من الأدوات التي يمكن أن تساعدك على تبسيط هذه العملية مؤلمة: الخطوات القليلة المقبلة تصف باختصار كيفية استخدام labelbox، وإنما هي أداة الشرح القائمة على السحابة، واجهة بسيطة جدا. إذا كنت ترغب المبادئ التوجيهية التشغيلية أكثر تفصيلا، يمكنك مراجعة وثائق labelbox.
1.1 الصور عناوين جمع
الخوخ لأنهم لا يستطيعون مجموعات بيانات الصورة، ونحن نستخدم البحث عن الصور لبناء لدينا مجموعة البيانات الأساسية. دليل تحميل الآلاف من الصور من جوجل هي شاقة للغاية وتستغرق وقتا طويلا لحسن الحظ، هناك أدوات لمساعدتنا بإرسال طلب البحث لجوجل باستخدام ملف نصي:
نسخ النصي google-images-download.py إلى مجلد البرنامج النصي ل
فتح موجه الأوامر في المجلد الحالي
قم بتشغيل الأمر التالي
ويبدو لنا البيانات (الخوخ) المجلد الآن ملف image_urls.csv، وهو رابط URL للصورة من الخوخ.
1.2 للقيام بهذه الصور علامات
في هذه الخطوة، ونحن إنشاء مشروع labelbox، لدينا ملف image_urls.csv الاستيراد، ثم القيام علامة على صورة منها.
إنشاء مشروع labelbox ثم image_urls.csv استيراد
(اختياري) تكييف التعديلات وضع العلامات واجهة لجعل علامات اجهة
باستخدام واجهة تجزئة الدلالي من labelbox لا تدل
الإخراج إلى المسمى شكل مجموعات البيانات سلمان
استخدام هذا البرنامج النصي باستخدام برنامج نصي سلمان مجموعة تنسيق البيانات في شكل COCO
يرجى ملاحظة: من أجل توليد ملف TFRecords، نحن بحاجة إلى ملفات كوكو إلى مجموعة التدريب، والتحقق من صحة واختبار مجموعات. يمكنك إنشاء عدة مشاريع labelbox مستقل، ثم العملية المذكورة أعلاه ويتكرر عدة مرات، أو السيناريو قد يتم إنشاء يدويا عن طريق الأشياء المذكورة أعلاه إلى عدة أجزاء.
وإليك صورة تظهر labelbox على شبكة الإنترنت واجهة المستخدم:
بعد الاستخدام الدلالي تجزئة الخوخ labelbox لجعل تسميات ل
الناتج من هذه الخطوة هو تخزين الملفات الثلاثة سلمان وغيرها من المعلومات لتنسيق تسمية COCO لها، المقابلة لدينا مجموعة التدريب والتحقق منها واختبار مجموعات. يمكنك تتوافق في المرافق جيثب-مستودع فرعي البيانات الموجودة في ملف عينة.
2. التعلم نقل
2.1 COCO بيانات البطاقات في TFRecords تنسيق البيانات
البيانات TensorFlow الكشف عن وجوه المطلوبة لAPI إلى تنسيق TFRecord، وهو تنسيق البيانات سهلة الفهم. فهم دقيق TFRecord يستغرق بعض الوقت، ولكن ليس من السهل. لحسن الحظ، يوفر Tensorflow بعض النصوص التي يمكن تحويل الأشكال الأكثر شعبية كما TFRecord، على سبيل المثال create_coco_tf.record.py. يمكنك العثور على نسخة تغيير صغير من هذا السيناريو في منطقتنا مستودع جيثب.
خلق بيانات TFRecords
مؤتمر نزع السلاح سطر الأوامر المقابلة لمجلد البرنامج النصي لمستودع جيثب
تشغيل التعليمات البرمجية التالية
سيناريو البيانات الثلاثة رقما قياسيا لكل ملف الإخراج، وتحميل الصور إلى دليل فرعي البيانات، يمكنك أن ترى ثلاثة ملفات لاحقة .record هنا
معالم النموذج 2.2 التكوين
الخطوات التالية وكنت على استعداد لاستخدام النموذج هو أيضا عن العلاقة بين فئات جديدة ومبتكرة ودورات تدريبية. في هذا المثال، قمنا بتدريب يمكن استخدام النموذج TensorFlow faster_rcnn_resnet50_coco نموذج حديقة الحيوان، لرصد الخوخ. الخوخ والتفاح مجموعة البيانات الأصلي والجمل لديها علاقة قوية.
من هنا تحميل faster_rcnn_resnet50_coco
بفك الحزمة القطران تحميلها
نسخ لاحقة الملف إلى نموذج ثلاثي مجلد .ckpt
نسخ ملف التكوين faster_rcnn_resnet50_coco إلى مجلد فرعي من المجلد نموذج
إنشاء ملف مع label_map.pbtxt رسم الخرائط التسمية
فتح ملف التكوين وإجراء التغييرات التالية
- سوف صقل تغير تفتيش: fine_tune_checkpoint: "../ نموذج / model.ckpt"
- قيمة input_path train_input_reader يتغير: input_path: "../data/coco_train.record"
- وtrain_input_reader قيمة label_map_path يتغير: label_map_path: "../data/label_map.pbtxt"
- تغيير val_input_reader قيمة input_path:
input_path: "../data/coco_val.record"
- وval_input_reader قيمة label_map_path يتغير: label_map_path: "../data/label_map.pbtxt"
7. (اختياري) كما هو مطلوب، تعديل الإدخالات الأخرى
بعد الخطوات المذكورة أعلاه، أنشأنا label_map.pbtxt، وfaster_rcnn_resnet50_coco.config تعديل
2.3 نموذج التدريب
في هذه الدورة، ونحن إعادة تدريب نموذج يقوم على التكوين السابق
Train.py لنسخ المجلدات الفرعية مجلد البرنامج النصي ل
مؤتمر نزع السلاح سطر الأوامر إلى المجلد الفرعي
تشغيل التعليمات البرمجية التالية
تحقق فرعي نموذج / القطار التي تنتجها هذه الخطوة إذا كانت الملفات موجودة.
3. توليد الاستدلال الرسم البياني
أولا، تنفيذ العمليات التالية 1-3، والملف الذي تم إنشاؤه .ckpt ملفات frozen_inference_graph.pb 4 و 5 و التين اختبار الاستدلال، ونماذج الاستدلال والخطوات تقييم التشغيلية:
نسخة export_inference_graph.py إلى مجلد البرامج النصية.
فتح سطر الأوامر ومؤتمر نزع السلاح إلى مجلد البرامج النصية
تنفيذ البرنامج النصي التالي:
سوف تنتج العديد .ckpt. * الملفات والوثائق في نموذج frozen_inference_graph.pb / مجلد fine_tuned_model بعد تشغيل برنامج نصي
4. تأكد من أن الرسم البياني المنطق
TensorBoard هو اختبار مكون برنامج Tensorflow قوية، يمكننا استخدامها لفهم وتصحيح والأمثل خريطة Tensorflow
التثبيت باستخدام نقطة TensorBoard القيادة
سيتم نسخ البرامج النصية إلى import_pb_to_tensorboard.py دليل
إنشاء نموذج دليل logdir / دليل فرعي fine_tuned_model
فتح سطر الأوامر ومؤتمر نزع السلاح إلى مجلد البرامج النصية
تنفيذ البرنامج النصي التالي:
logdir يجب أن يحتوي المجلد الذي تم إنشاؤه حديثا الملفات المطلوبة لtensorboard الحدث
أكمل الخطوات التالية لبدء tensorboard:
افتتاح مؤتمر سطر الأوامر إلى البرامج النصية الدليل
قم بتشغيل الأمر التالي
بعد بدء تشغيل TensorBoard يمكنك زيارة الموقع: // المضيف المحلي: 6006، يمكنك مشاهدة نموذج القطار مرة أخرى في واجهة المستخدم الرسومية.
لمزيد من المعلومات حول TensorBoard، تفاصيل وثائق TensorBoard أو قراءة هذا البرنامج التعليمي.
نموذج التقييم والمنطق
لتقييم تأثير نموذج، ونحن نستخدم ملف frozen_inference_graph.pb تم إنشاؤه في الخطوة 3، لcoco_testdev.record المدى بإنشائه في الخطوة 2.1
سيتم نسخ Detection_inference.py النصي إلى دليل البرامج النصية
سيتم نسخ البرنامج النصي Infer_detections.py إلى دليل البرامج النصية
افتتاح مؤتمر سطر الأوامر إلى البرامج النصية الدليل
تشغيل البرنامج النصي التالي
عرض النتائج من تشغيل البرنامج النصي في / بيانات / مجلد الاستدلال. المزيد عن تعليمات API TensorFlow تشير إلى هذا TensorFlow البرنامج التعليمي.
إذا كان التدريب تأثير نموذج مرضية النهائي، ثم هذا النموذج، حتى إذا تم الانتهاء من التدريب.
موقع بلوق https://medium.com/practical-deep-learning/a-complete-transfer-learning-toolchain-for-semantic-segmentation-3892d722b604
مجموعة لى فنغ ترجمات هو تجنيد في رمز المقبل المسح Fanger وى، الملاحظات، "لى فنغ ترجمات اسم المجموعة +" إلى الانضمام إلينا. لى فنغ لى فنغ صافي صافي