العنوان بلغة أخرى: |
التنبؤ بأخطاء البرمجيات باستخدام خوارزميات التعلم العميق |
---|---|
المؤلف الرئيسي: | القاسم، أسامة محمد (مؤلف) |
مؤلفين آخرين: | عكور، محمد (مشرف) |
التاريخ الميلادي: |
2018
|
موقع: | إربد |
الصفحات: | 1 - 98 |
رقم MD: | 996924 |
نوع المحتوى: | رسائل جامعية |
اللغة: | الإنجليزية |
الدرجة العلمية: | رسالة ماجستير |
الجامعة: | جامعة اليرموك |
الكلية: | كلية تكنولوجيا المعلومات وعلوم الحاسوب |
الدولة: | الاردن |
قواعد المعلومات: | Dissertations |
مواضيع: | |
رابط المحتوى: |
المستخلص: |
إن اكتشاف أخطاء البرامج في المراحل المبكرة له دورا مهما في تحسين جودة البرامج وتقليل التكاليف والوقت والجهد المبذول على عملية تطوير البرامج. يمكن استخدام عملية التنبؤ بأخطاء البرمجيات (SFP) لكشف التركيبات الخاطئة في المراحل المبكرة من دورة حياة التطوير، بالإضافة إلى استخدامها في عدة مراحل من عملية التطوير. يستخدم التعلم الآلي (ML) على نطاق واسع في هذا المجال، والعديد من الخوارزميات التي تم استخدامها بشكل متكرر في الدراسات السابقة وأعطت نتائج متفاوتة لنسبة نجاحها مثل support vector machine، Naïve Bayes وخوارزمية K-Nearest Neighbors الخ. من المجموعة الفرعية الواعدة من ML هو التعلم العميق الذي يحقق أداء رائع في مختلف المجالات مثل رؤية الكمبيوتر، ومعالجة اللغات الطبيعية، والمعلوماتية الحيوية، والتعرف على محركات البحث، وعلم الروبوتات. في هذه الرسالة، تم استخدام خوارزميات التعلم العميق للتحقيق من قدرتها في SFP. يتم استخدام خوارزميتين تعليميتين عميقتين في هذه الرسالة، متعدد طبقات المستقبلات (MLP) والشبكة العصبية التلافيفية (CNN). تتناول هذه الرسالة العوامل التي قد يكون لها تأثير على أداء الخوارزميتين ثم تقارن بينهما من أجل تحديد أيهما أفضل من حيث قدرتها في التنبؤ بأخطاء البرمجيات. من أجل تقييم الخوارزميات المدروسة، تم استخدام أربع مجموعات بيانات شائعة الاستخدام من وكالة ناسا وهي (PC1 و KC1 و KC2 و CM1). وتظهر نتائج التجربة كيف تحقق خوارزمية الـ CNN التفوق على خوارزمية ال DNN. حيث بلغت الدقة وقياس معدل الكشف عند استخدام CNN النسبة القياسية على الترتيب كالاتي: PC1 97.3% -73.9%، KC1 100% -100%، KC2 99.3% -99.2% و CM1 97.3% -82.3%. وان تغيير بنية الخوارزميات له تأثير إيجابي على تحسين النتائج. علاوة على ذلك، تكشف نتائج التجربة أن ReLU تحقق أفضل نتيجة كوظيفة تنشيط لـ SFP. تقدم هذه الأطروحة نتائج واعدة في استخدام التعلم العميق في أبحاث التنبؤ بأخطاء البرمجيات. |
---|