تصحيح الأخطاء باستخدام المحول من خلال قواعد التحرير العصبية-الرمزية

نقدم NSEdit (التحرير العصبي-الرمزي)، وهو طريقة جديدة لتصحيح الأكواد تعتمد على نموذج Transformer. عند تقديم الكود المصدر الذي يحتوي على أخطاء فقط، يقوم NSEdit بتوقع سلسلة تحرير يمكنها إصلاح هذه الأخطاء. يتم صياغة قواعد التحرير كلغة منتظمة، ويستخدم Transformer هذه القواعد كواجهة برمجة عصبية-رمزية لإنشاء برامج التحرير. نقوم بتعديل Transformer وإضافة شبكة الإشارة للاختيار من مواقع التحرير. يتم تدريب مجموعة من إعادة الترتيبات لإعادة ترتيب سلاسل التحرير التي تم إنشاؤها بواسطة البحث الشعاعي. نقوم بضبط هذه إعادة الترتيبات على مجموعة التحقق لخفض الارتباط الزائد. تم تقييم NSEdit على مجموعات بيانات مختلفة لتصحيح الأكواد وحقق دقة غير مسبوقة (24.04%) على مجموعة البيانات الصغيرة Tufano في معيار CodeXGLUE. يظهر NSEdit أداءً ثابتاً عندما تتغير البرامج من حزم إلى أخرى، وكذلك عندما تكون البرامج المعيبة ملموسة. نجري تحليلًا مفصلًا لطرقنا ونبين فعالية كل عنصر منها.