بهدف زيادة القابلية للتكرار وتمكين الآخرين من البناء على الأعمال المنشورة بسهولة أكبر ، نقدم قائمة مراجعة اكتمال كود ML. تقوم قائمة التحقق من اكتمال كود ML بتقييم مخزن الكود بناءً على البرامج النصية والتحف المتوفرة فيه.
مقدمة
في العام الماضي ، أصدر جويل بينو قائمة مرجعية للتكاثر لتسهيل البحث القابل للتكرار المقدم في مؤتمرات OA الرئيسية (NeurIPS ، ICML ، …). تركز معظم العناصر الموجودة في قائمة التحقق على مكونات الورقة. أحد العناصر الموجودة في قائمة التحقق هذه هو "توفير ارتباط إلى شفرة المصدر" ، ولكن بخلاف ذلك ، تم تقديم بعض التوصيات.
تم تلخيص أفضل الممارسات في قائمة التحقق من اكتمال كود ML ، والتي تعد الآن جزءًا من عملية إرسال كود NeurIPS 2020 الرسمية وستكون متاحة للاستخدام من قبل المراجعين كما يرون مناسبًا.
قائمة مراجعة اكتمال ML
تتحقق قائمة التحقق من اكتمال رمز M من متجر الأكواد بحثًا عن:
- التبعيات - هل يحتوي المستودع على معلومات تبعية أو تعليمات حول كيفية إعداد البيئة؟
- سيناريوهات التدريب - هل يحتوي المستودع على طريقة لتدريب / ملائمة النماذج الموضحة في المستند؟
- سيناريوهات التقييم - هل يحتوي المستودع على برنامج نصي لحساب أداء النموذج (النماذج) المدربة أو إجراء التجارب على النماذج؟
- النماذج سابقة التدريب - هل يوفر المستودع وصولاً مجانيًا إلى أوزان النماذج المحددة مسبقًا؟
- النتائج - هل يحتوي المستودع على جدول / رسم بياني للنتائج الرئيسية وبرنامج نصي لإعادة إنتاج تلك النتائج؟
يمكن أن يتلقى كل مستودع من 0 (لا يوجد لديه) إلى 5 (به كل) علامات. يمكن العثور على مزيد من المعلومات حول معايير كل عنصر في مستودع Github.
ما هو الدليل على أن عناصر قائمة التحقق تساهم في المزيد من المستودعات المفيدة؟
يستخدم المجتمع عمومًا نجوم GitHub كبديل لفائدة المستودع. لذلك ، من المتوقع أيضًا أن تحتوي مستودعات إعادة الشراء التي حصلت على درجة أعلى في قائمة التحقق من اكتمال ML على المزيد من نجوم GitHub. لاختبار هذه الفرضية ، تم إرسال 884 مستودعًا على GitHub كتطبيقات رسمية في مستندات NeurIPS 2019. تم اختيار مجموعة فرعية بنسبة 25٪ من هذه المستودعات البالغ عددها 884 بشكل عشوائي وفحصها يدويًا في قائمة التحقق من اكتمال ML. قاموا بتجميع هذه العينة NeurIPS 2019 GitHub repos حسب عدد العلامات الموجودة في قائمة التحقق من اكتمال كود ML ورسموا خرائط لنجوم GitHub المتوسطة في كل مجموعة. النتيجة أدناه:
NeurIPS 2019 repos مع 0 مربعات اختيار كان متوسط 1.5 نجمة على GitHub. في المقابل ، كان متوسط مستودعات إعادة الشراء التي تحتوي على 5 مربعات يبلغ 196.5 نجمة جيثب. 9٪ فقط من مستودعات إعادة الشراء تحتوي على 5 علامات ، ومعظم المستودعات (70٪) تحتوي على 3 علامات أو أقل. تم إجراء اختبار مجموع رتبة Wilcoxon ووجد أن عدد النجوم في فئة التجزئة 5 أعلى بشكل ملحوظ (قيمة p <1e-4) من جميع الفئات الأخرى باستثناء 5 مقابل 4 (حيث p.value هي الحدود). عند 0.015). يمكنك رؤية البيانات والرمز الخاص بهذا الشكل في مستودع Github.
لاختبار ما إذا كانت هذه العلاقة تمتد على نطاق أوسع ، تم إنشاء برنامج نصي لأتمتة حساب قائمة التحقق من مستودع README والتعليمات البرمجية المرتبطة بها. قمنا بعد ذلك بإعادة تحليل المجموعة الكاملة من 884 مستودعات NeurIPS 2019 ، بالإضافة إلى المجموعة الأوسع من 8926 مستودعات الأكواد لجميع مقالات ML المنشورة في عام 2019. في كلتا الحالتين ، حصل المتخصصون على نتيجة متطابقة نوعيًا مع زيادة النجوم المتوسطة بشكل رتيب من القراد بطريقة ذات دلالة إحصائية (قيمة p <1e-4). أخيرًا ، باستخدام الانحدار الخطي القوي ، وجدنا أن النماذج والنتائج التي تم اختبارها مسبقًا لها أكبر تأثير إيجابي على نجوم GitHub.
يعتبر هذا دليلًا مفيدًا من قبل المحللين على أن تشجيع الباحثين على تضمين جميع المكونات المطلوبة في قائمة التحقق من اكتمال ML سيؤدي إلى مستودعات أكثر فائدة ، وأن النتيجة في قائمة التحقق تشير إلى عمليات إرسال ذات جودة أفضل.
حاليًا ، لا يدعي الخبراء أن العناصر الخمسة المقترحة في قائمة المراجعة هي العامل الوحيد أو حتى العامل الأكثر أهمية في شعبية المستودع. يمكن أن تؤثر العوامل الأخرى على الشعبية ، مثل: حجم المساهمة العلمية ، والتسويق (مثل منشورات المدونة ومنشورات Twitter) ، والتوثيق (READMEs الشاملة ، والبرامج التعليمية ، ووثائق API) ، وجودة الكود ، والعمل السابق.
بعض الأمثلة على مستودعات NeurIPS 2019 مع 5 مربعات اختيار:
يدرك الخبراء أنه على الرغم من أنهم حاولوا جعل القائمة المرجعية عامة قدر الإمكان ، فقد لا تكون قابلة للتطبيق بالكامل على جميع أنواع الوثائق ، على سبيل المثال ، النظرية أو مجموعات الوثائق. ومع ذلك ، حتى إذا كان الغرض الرئيسي من المقالة هو تمثيل مجموعة بيانات ، فلا يزال بإمكانها الاستفادة من إصدار النماذج الأساسية ، بما في ذلك سيناريوهات التدريب وسيناريوهات التقييم والنتائج.
ابدأ باستخدام
لتسهيل فهم المراجعين والمستخدمين لما هو موجود في المستودع ولكي يقوم الخبراء بتقييمه بشكل صحيح ، يتم توفير مجموعة من أفضل الممارسات لكتابة ملفات README.md وتحديد التبعيات وإصدار النماذج ومجموعات البيانات والنتائج التي تم اختبارها مسبقًا. يوصى بتحديد هذه العناصر الخمسة بوضوح في مستودعك وربطها بأي موارد خارجية مثل المستندات ولوحات الصدارة لتوفير مزيد من السياق والوضوح للمستخدمين. هذه هي الإرشادات الرسمية لإرسال رمز إلى NeurIPS 2020.