الوصف
مجموعات أشجار القرار العصبية غير المبالية (NODE) هي مستودع تعليمات برمجية تكميلي لورقة البحث حول مجموعات أشجار القرار العصبية غير المبالية للتعلم العميق على البيانات الجدولية. يركز هذا المشروع على تعلم مجموعات عميقة من أشجار القرار غير المبالية القابلة للتفاضل المصممة خصيصًا لمجموعات البيانات الجدولية. يكمن الابتكار الأساسي في تطبيق تقنيات التعلم العميق على البيانات المهيكلة، وهو مجال تهيمن عليه تقليديًا آلات تعزيز التدرج والنماذج الأبسط القائمة على الأشجار.
تسمح بنية NODE بإنشاء نماذج معقدة قائمة على المجموعات يمكنها التقاط العلاقات المعقدة داخل البيانات الجدولية. من خلال استخدام أشجار القرار القابلة للتفاضل، يمكن تدريب النظام من البداية إلى النهاية باستخدام هبوط التدرج، على غرار الشبكات العصبية القياسية. يوفر هذا النهج مزيجًا فريدًا من قابلية التفسير وهيكلية أشجار القرار مع قدرات التعلم القوية للشبكات العصبية العميقة.
يوفر المشروع تطبيقًا بلغة بايثون يمكن تشغيله على أجهزة مزودة بوحدة معالجة مركزية (CPU) ويفضل أن تكون وحدة معالجة رسومات واحدة أو أكثر. في حين أن التشغيل بدون وحدة معالجة رسومات ممكن، إلا أنه أبطأ بكثير. يُلاحظ أن التطبيق غير فعال من حيث الذاكرة وقد يتطلب ذاكرة كبيرة لوحدة معالجة الرسومات للتقارب. تم اختباره على توزيعات Linux x64 مثل Ubuntu 16.04 ومن المتوقع أن يعمل على توزيعات Linux الشائعة الأخرى و macOS. بالنسبة لأنظمة Windows و x32، قد تكون التعديلات الكبيرة ضرورية، ويوصى باستخدام Docker، وخاصة الإصدار الذي يدعم وحدة معالجة الرسومات مثل nvidia-docker.
لتشغيل NODE، يحتاج المستخدمون إلى استنساخ أو تنزيل المستودع، وإعداد بيئة بايثون (يُقترح Anaconda)، وتثبيت الحزم المطلوبة من `requirements.txt`. يعتمد الاعتماد الحاسم هو `torch >= 1.1`. سيحتاج المستخدمون أيضًا إلى Jupyter Notebook أو أداة مماثلة للعمل مع ملفات `.ipynb` المتوفرة. قبل تنفيذ الخلية الأولى في دفتر ملاحظات، يجب تعيين متغير البيئة `CUDA_VISIBLE_DEVICES` إلى فهرس وحدة معالجة الرسومات المطلوب. تقوم دفاتر الملاحظات بتنزيل مجموعات البيانات من Dropbox، وتتطلب مساحة قرص تتراوح بين 1-5 جيجابايت. تعرض المكتبة سيناريوهات التعلم النموذجية لمهام التصنيف والانحدار على حد سواء، مع توفر معلومات تدريب مفصلة في ورقة البحث الأصلية.
أبرز ملامح مجموعات أشجار القرار العصبية غير المبالية (Neural Oblivious Decision Ensembles)
التعلم العميق على البيانات الجدولية
مجموعات من أشجار القرار غير المبالية القابلة للتفاضل
التدريب من البداية إلى النهاية عبر هبوط التدرج
يدعم مهام التصنيف
يدعم مهام الانحدار
تسريع وحدة معالجة الرسومات (GPU) للتدريب الأسرع
تطبيق قائم على بايثون
تعليمات برمجية تكميلية لورقة البحث
يتطلب PyTorch الإصدار 1.1 أو أحدث
البدء مع مجموعات أشجار القرار العصبية غير المبالية (Neural Oblivious Decision Ensembles)
استنساخ أو تنزيل المستودع: احصل على ملفات المشروع من GitHub.
إعداد بيئة بايثون: قم بإنشاء وتفعيل بيئة بايثون (على سبيل المثال، باستخدام Anaconda).
تثبيت التبعيات: قم بتشغيل `pip install -r requirements.txt` لتثبيت الحزم الضرورية، مع التأكد من أن إصدار PyTorch هو >= 1.1.
تكوين استخدام وحدة معالجة الرسومات: قم بتعيين متغير البيئة `CUDA_VISIBLE_DEVICES` إلى فهرس وحدة معالجة الرسومات المطلوب قبل تشغيل دفاتر الملاحظات.
تشغيل دفاتر الملاحظات: افتح وقم بتنفيذ دفاتر Jupyter المتوفرة في الدليل `./notebooks/`.
تنزيل مجموعات البيانات: ستقوم دفاتر الملاحظات تلقائيًا بتنزيل مجموعات البيانات المطلوبة (1-5 جيجابايت).
حالات استخدام مجموعات أشجار القرار العصبية غير المبالية (Neural Oblivious Decision Ensembles)
- تصنيف البيانات الجدولية
- انحدار البيانات الجدولية
- أبحاث التعلم العميق
- بدائل هندسة الميزات
- أبحاث قابلية تفسير النماذج






