Darkflow: كيف أقوم بتقييم دقة مجموعة الاختبار؟

تم إنشاؤها على ٥ مارس ٢٠١٨  ·  34تعليقات  ·  مصدر: thtrieu/darkflow

طريقة واحدة لحساب "متوسط ​​الدقة: mAP".
لكني لست على علم بهذه الميزة المطبقة في darkflow.
هل لديك أي اقتراحات بخصوص Darknet repo أو الشخص الذي كتب نصًا للقيام بذلك؟

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

ألا يوجد أحد فعلها من قبل؟
لا أحد يختبر دقتها؟
لا أعرف لماذا لم يتم تنفيذ مثل هذه الأشياء المهمة بعد.
إذا لم يكن هناك أي شيء ، فربما أحتاج إلى تنفيذ هذه الميزة بنفسي والالتزام بها إلى الأبد.

ال 34 كومينتر

https://github.com/thtrieu/darkflow/blob/master/darkflow/utils/box.py يحتوي على التنفيذ الأساسي المطلوب لتقييم أو حساب التداخل بين صورتين. يمكنك تعديله حسب حاجتك وحساب متوسط ​​الدقة كضرب احتمالية الفئة و box_iou

ألا يوجد أحد فعلها من قبل؟
لا أحد يختبر دقتها؟
لا أعرف لماذا لم يتم تنفيذ مثل هذه الأشياء المهمة بعد.
إذا لم يكن هناك أي شيء ، فربما أحتاج إلى تنفيذ هذه الميزة بنفسي والالتزام بها إلى الأبد.

سأكون مهتمًا أيضًا بهذه الميزة.

@ off99555 ، رأيت هذا الرجل يعمل على درجة F1.

377

مرحبًا @ off99555 ، أنا أبحث عن حساب الخريطة من بيانات الاختبار الخاصة بي أيضًا.
أعتقد أن sandeeprepakula لديها إجابة جيدة ، هل يمكنك شرح كيفية حساب الخريطة من iou box خطوة بخطوة؟ أنا مستجد جدًا في التعلم العميق واكتشاف الأشياء

شكرا لمساعدتك

andikira لم أفعل ذلك بعد. لست متأكدًا أيضًا.

مرحبًا @ off99555 ، يجب أن ترى هذا الريبو https://github.com/Cartucho/mAP ثم ترى المجلد الإضافي ، يمكنك تحويل ملف .xml و. json ، هذا الريبو يعمل بشكل مثالي مع darkflow.

andikirathtrieu تدربت شبكة yolo2 المركبات العضوية المتطايرة على PASCAL V0C 0712 مجموعة trainval واختبارها على PASCAL VOC 2007 مجموعة الاختبار، وأداء الخريطة هي فقط حوالي 52٪ (بعد الكثير من epoches (200 ~) معتبرا ان كنت تهيئة بأوزان مسبقة الصنع). إنه أقل بكثير من الأداء الرسمي (76.8٪ في الدقيقة). أرغب في تضمين النتائج التجريبية مع فكرتي باستخدام YOLO v2 على ورقتي. هل يمكن لأي شخص أن يعرف السبب؟

لقد رأيت هذه المشكلة من قبل ، يرجى التحقق من مشكلة أخرى bareblackfoot

andikira يعمل الريبو mAP بشكل رائع. لقد ساهمت بنص هناك أيضا. شكرا لك!

هل تستطيع

andikira يعمل الريبو mAP بشكل رائع. لقد ساهمت بنص هناك أيضا. شكرا لك!

هل يمكن أن تشرح بشكل أكثر تحديدا من فضلك؟ كيف يعمل ؟ كيف حصلت على النتائج؟

srhtyldz انتقل إلى موقع https://github.com/Cartucho/mAP وانتقل إلى قسم
الفكرة هي أنك تحتاج إلى استنساخ الريبو ، وتوقع صورك باستخدام دارك فلو ثم تقوم بنسخ ملفات التنبؤ في مجلد الخريطة. قم أيضًا بنسخ ملفات الحقيقة الأساسية.
وأنت تفعل كل شيء كما اقترح ملف README mAP repo ويجب أن ترى mAP كمخرج رقم واحد.

تحتاج أيضًا إلى تحويل ملفاتك من تنسيق darkflow إلى تنسيقها. يقدمون البرنامج النصي لتحويل تنسيق darkflow إلى تنسيقهم هنا: https://github.com/Cartucho/mAP/tree/master/extra
اقرأ التمهيدي.

تحتاج أيضًا إلى تحويل ملفاتك من تنسيق darkflow إلى تنسيقها. يقدمون البرنامج النصي لتحويل تنسيق darkflow إلى تنسيقهم هنا: https://github.com/Cartucho/mAP/tree/master/extra
اقرأ التمهيدي.

اكتشفت أن darknet لها خاصية الخريطة ، هل جربت ذلك؟ وهل بينهما فرق أم فرق أدق؟

srhtyldz أعتقد أن الخوارزمية هي نفسها. باستثناء أن mAP عبارة عن خوارزمية بها بعض المعلمات التي يمكنك تعيينها. عادة ، يتم تعيين هذا يدويًا بواسطة كاتب الخوارزمية. لذا فإن المرة الوحيدة التي ترى فيها أنهم يبلغون عن أرقام مختلفة هي عندما يكون لديهم معلمات مختلفة.
أقترح عليك قراءة شرح كيفية عمل mAP حتى تتمكن من فهم المعلمة المخفية.
حاولت كلاهما. ذهبت مع darknet في أطروحتي لأن darkflow ليس لديه خيار تحديد مجلد الإخراج. إنه أمر بالغ الأهمية لمشروعي الكبير لأنني أقوم بتشغيل الكود على FloydHub وهو عبارة عن سحابة تعلم عميقة تسمح لك فقط باستخدام مجلدات معينة.

استخدم أولاً darkflow مع mAP ثم اكتشفت لاحقًا أنه لا يمكنني تحديد مسار الإخراج ، لذلك قمت بالتبديل إلى darknet mAP واستخدمت حسابه الداخلي

والأهم من ذلك ، أن مالك الريبو darknet (نسخة fork مع AlexeyAB هو المالك) مفيد للغاية. يجيب على جميع المشكلات التي نشرتها مما جعلني أنهي العمل قبل الموعد النهائي. كان مرهقا للغاية في ذلك الوقت. أنا ممتن جدًا له ، كما أنني كتبت اسمه في الأطروحة.

استخدم أولاً darkflow مع mAP ثم اكتشفت لاحقًا أنه لا يمكنني تحديد مسار الإخراج ، لذلك قمت بالتبديل إلى darknet mAP واستخدمت حسابه الداخلي

ما المتغير الذي تريد تحديده؟

استخدم أولاً darkflow مع mAP ثم اكتشفت لاحقًا أنه لا يمكنني تحديد مسار الإخراج ، لذلك قمت بالتبديل إلى darknet mAP واستخدمت حسابه الداخلي

رأيي هو أيضًا لـ darknet. أعتقد أنه لا يمكنك التبديل مع العتبة إلا عن طريق حساب الخريطة؟ حق ؟

ما المتغير الذي تريد تحديده؟

srhtyldz في darkflow حوالي نصف عام ، عندما بدأت هذا الموضوع ، لا يسمح لي بتحديد مسار مجلد الإخراج. مسار مجلد الإخراج هو المسار حيث تتم كتابة صور التنبؤ.
إذا كنت أتذكر بشكل صحيح ، فسيتم تعيين مجلد الإخراج على المجلد out داخل مجلد مجموعة البيانات الخاصة بك.
على سبيل المثال ، إذا كانت لديك بعض الصور داخل img/ ، فستكون التوقعات داخل img/out/ .
في FloydHub ، لا يسمحون لك بكتابة الإخراج إلى مجلد مجموعة البيانات. لذلك إذا كان مجلد مجموعة البيانات هو img/ ، فلا يمكنك إنشاء مجلد جديد مثل img/out لأنك ستواجه رفض الإذن.

ربما يسمح لك بتحديد مسار الإخراج الآن ولكن عليك التحقق. لست متأكدا.

رأيي هو أيضًا لـ darknet. أعتقد أنه لا يمكنك التبديل مع العتبة إلا عن طريق حساب الخريطة؟ حق ؟

إذا كنت أتذكر بشكل صحيح ، فإن mAP يحتوي على معلمة واحدة يحتاج الكاتب إلى تعريفها. إنه الحد من 0 إلى 1 الذي تقرر ما إذا كان يتم توقع الصورة بشكل صحيح. عادة ، يتم تعيين هذا على 0.5. لذا إذا تجاوزت نسبة المساحة 0.5 ، فهذا يعني الصورة الصحيحة.
وبعد ذلك عليك أيضًا تحديد Average Precision . لغرامة المتوسط ​​، تحتاج إلى معرفة عدد الدقائق الموجودة. اتضح أنه يمكنك أيضًا تحديد عدد الدقة. عادةً ما يتم تعيين عدد الدقة على 11 بحيث يمكنك ترتيبها من 0 ، 0.1 ، 0.2 ، ... ، 0.9 ، 1.0.

لست متأكدًا مما أتحدث عنه رغم ذلك. لأنني نسيت بالفعل معظمها. عليك أن تتعلمها لتتأكد من أنني على صواب. لكنني متأكد تمامًا من الرقم 0.5 و 11 الشيء. أنا فقط لا أعرف ما يسمونه.

ملاحظة. عدت للعثور على شريحة أطروحتي (عندما أعرف ما تعنيه الخريطة) ، إليك كيف وصفتها في ذلك الوقت:
image

image

ما المتغير الذي تريد تحديده؟

srhtyldz في darkflow حوالي نصف عام ، عندما بدأت هذا الموضوع ، لا يسمح لي بتحديد مسار مجلد الإخراج. مسار مجلد الإخراج هو المسار حيث تتم كتابة صور التنبؤ.
إذا كنت أتذكر بشكل صحيح ، فسيتم تعيين مجلد الإخراج على المجلد out داخل مجلد مجموعة البيانات الخاصة بك.
على سبيل المثال ، إذا كانت لديك بعض الصور داخل img/ ، فستكون التوقعات داخل img/out/ .
في FloydHub ، لا يسمحون لك بكتابة الإخراج إلى مجلد مجموعة البيانات. لذلك إذا كان مجلد مجموعة البيانات هو img/ ، فلا يمكنك إنشاء مجلد جديد مثل img/out لأنك ستواجه رفض الإذن.

ربما يسمح لك بتحديد مسار الإخراج الآن ولكن عليك التحقق. لست متأكدا.

رأيي هو أيضًا لـ darknet. أعتقد أنه لا يمكنك التبديل مع العتبة إلا عن طريق حساب الخريطة؟ حق ؟

إذا كنت أتذكر بشكل صحيح ، فإن mAP يحتوي على معلمة واحدة يحتاج الكاتب إلى تعريفها. إنه الحد من 0 إلى 1 الذي تقرر ما إذا كان يتم توقع الصورة بشكل صحيح. عادة ، يتم تعيين هذا على 0.5. لذا إذا تجاوزت نسبة المساحة 0.5 ، فهذا يعني الصورة الصحيحة.
وبعد ذلك عليك أيضًا تحديد Average Precision . لغرامة المتوسط ​​، تحتاج إلى معرفة عدد الدقائق الموجودة. اتضح أنه يمكنك أيضًا تحديد عدد الدقة. عادةً ما يتم تعيين عدد الدقة على 11 بحيث يمكنك ترتيبها من 0 ، 0.1 ، 0.2 ، ... ، 0.9 ، 1.0.

لست متأكدًا مما أتحدث عنه رغم ذلك. لأنني نسيت بالفعل معظمها. عليك أن تتعلمها لتتأكد من أنني على صواب. لكنني متأكد تمامًا من الرقم 0.5 و 11 الشيء. أنا فقط لا أعرف ما يسمونه.

ملاحظة. عدت للعثور على شريحة أطروحتي (عندما أعرف ما تعنيه الخريطة) ، إليك كيف وصفتها في ذلك الوقت:
image

شكرا جزيلا . سأقوم بالبحث في الخريطة و IoU. حصلت على النتيجة ولكني لم أستطع تفسيرها ، هل يمكنني طرح سؤال آخر؟ هل استخدمت وظيفة "الاستدعاء"؟ وظيفة الخريطة والاستدعاء لها نفس الوظيفة أم لا؟ هل لديك أي أفكار_؟

srhtyldz mAP يحسب من الدقة كدالة في الاسترجاع. لذلك تم تضمين الدقة والاستدعاء بالفعل. mAP مقياس تقييم شائع وتقليدي لمهام اكتشاف الكائنات. لذلك لا يتعين عليك الاستدعاء أو الدقة بشكل فردي. فقط احسب mAP وإذا كانت عالية فهذا يعني أن نموذجك يعمل بشكل جيد.

srhtyldz mAP يحسب من الدقة كدالة في الاسترجاع. لذلك تم تضمين الدقة والاستدعاء بالفعل. mAP مقياس تقييم شائع وتقليدي لمهام اكتشاف الكائنات. لذلك لا يتعين عليك الاستدعاء أو الدقة بشكل فردي. فقط احسب mAP وإذا كانت عالية فهذا يعني أن نموذجك يعمل بشكل جيد.

حصلت على 90.4٪ من mAP أعتقد أنه يعمل بشكل جيد.

srhtyldz هذا مرتفع جدًا إذا كان لديك العديد من الفصول الدراسية. (النماذج الشائعة في مجموعة البيانات الكبيرة تعمل بنسبة تتراوح بين 50 و 60٪ فقط) ولكن حتى لو كان لديك فئتان فقط ، فإنها لا تزال جيدة.
تأكد من التحقق من الصور المتوقعة باستخدام العيون البشرية للتحقق مما إذا كان mAP معقولاً.

srhtyldz هذا مرتفع جدًا إذا كان لديك العديد من الفصول الدراسية. (النماذج الشائعة في مجموعة البيانات الكبيرة تعمل بنسبة تتراوح بين 50 و 60٪ فقط) ولكن حتى لو كان لديك فئتان فقط ، فإنها لا تزال جيدة.
تأكد من التحقق من الصور المتوقعة باستخدام العيون البشرية للتحقق مما إذا كان mAP معقولاً.

لدي فصل واحد فقط ، كما قمت بحفظ جميع الصور مع المربع المحيط.
هل قمت برسم مخطط الخريطة؟ في Alex repo ، يوجد مخطط MAP وأثناء تدريب النموذج الخاص بك ، يجب عليك وضع "-map" للحصول على مخطط. لم أضع هذه الكلمة ، حتى أنك وضعت ذلك ، كيف يمكنك الحصول على مخطط الخريطة؟ جربها؟ هل جربت أيضًا وظيفة "صالحة"؟ هل تعرف الاختلافات؟
أعلم أنني طرحت العديد من الأسئلة ولكن إجاباتك مهمة جدًا في رسالتي :).

من darknet ، أقوم فقط بتقييم mAP باستخدام المحطة الطرفية فقط وأخذ لقطة من وحدة التحكم.
لا أعلم عن الوظيفة الصالحة.
بالنسبة إلى مخطط الخريطة ، من الممكن إذا كنت تستخدم داركفلو واستخدمت mAP repo أعلاه. هناك نص يولد الرسوم المتحركة والرسوم البيانية.
أعتقد أن mAP repo يعمل أيضًا مع darknet ربما.

من darknet ، أقوم فقط بتقييم mAP باستخدام المحطة الطرفية فقط وأخذ لقطة من وحدة التحكم.
لا أعلم عن الوظيفة الصالحة.
بالنسبة إلى مخطط الخريطة ، من الممكن إذا كنت تستخدم داركفلو واستخدمت mAP repo أعلاه. هناك نص يولد الرسوم المتحركة والرسوم البيانية.
أعتقد أن mAP repo يعمل أيضًا مع darknet ربما.

المشكلة هي أنني لا أعرف كيف سيتم تشغيل الرسوم المتحركة ، لقد حاولت القيام بذلك أثناء التدريب ولكني لم أستطع الحصول على الرسوم المتحركة للخريطة. alexeyAB ربما سيساعد في هذا الشأن.

حصلت على خريطة لنتائج الاختبار الخاصة بي. من 56 صورة حصلت على 48 صورة صحيحة لاختباري. لدي أربعة فصول. كيفية عمل مصفوفة الارتباك من ذلك. هل يستطيع احد مساعدتي .

srhtyldz لقد استخدمت / darknet detector map cfg / aerial.data cfg / test_tiny.cfg backup \ my_yolov3_tiny_final.weights لكنني لم أتمكن من الحصول على أي درجة أو رسم بياني في نهاية التدريب. كيف حصلت على درجة MAP في darknet

mustafabuyuk مرر الوسيطة -map إلى ./darknet (darknet.exe). سيظهر على الرسم البياني عند حوالي 1000 تكرار. لست متأكدًا مما إذا كانت هناك حاجة إليها ، ولكن لدي أيضًا مجموعة من الصور للتحقق من الصحة.

هل يمكن لأي شخص أن يكون لديه فكرة؟ يحسب YOLOv5 الخريطة مقابل مجموعة بيانات التحقق أثناء التدريب. على الرغم من الأمر الذي يمكننا حساب مجموعة بيانات الاختبار غير المرئية (mAP ، و Class wise mAP)

@ off99555 يبدو أن
لدي مجموعة من الصور وملفات Yolo Annotation (بتنسيق txt) للتحقق من الصحة.

كيفية استخدام حجة -map في التحقق من صحة الصور للحصول على درجة MAP؟ هل سيكون من الممكن اشتقاق مصفوفة الارتباك من هذا؟

sandeeprepakula اقرأ إجابتي مباشرة قبل إغلاق المشكلة. هذه هي الطريقة التي يمكنك من خلالها حساب الخريطة.
لكنني أقترح المزيد ، لا تستخدم هذا الريبو بعد الآن. لم أعمل مع اكتشاف الكائنات لبضعة أشهر حتى الآن ، لذا لست متأكدًا من أي الريبو هو الأفضل ولكن من نظرة سريعة على آخر التزام في هذا الريبو ، كان ذلك في فبراير 2020. هل تعتقد أن الريبو الذي لم يتم تحديثه لمدة عام يستحق الاستخدام؟ إذا علقت في شيء فلن يساعدك أحد. ضع في اعتبارك جزء المجتمع أيضًا عند اختيار الريبو المراد استخدامه.

@ off99555 شكرا على الاقتراح

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

القضايا ذات الصلة

jubjamie picture jubjamie  ·  4تعليقات

wonny2001 picture wonny2001  ·  4تعليقات

bareblackfoot picture bareblackfoot  ·  5تعليقات

xunkaixin picture xunkaixin  ·  4تعليقات

ManojPabani picture ManojPabani  ·  4تعليقات