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

وفي العام 1962، دمر مركز السيطرة والتحكم، مسبار مارينر1، التابع لوكالة الإدارة الأمريكية للملاحة الجوية والفضاء (ناسا) عندما انحرف عن مساره المقصود فوق المحيط الأطلسي، ليُلقى اللوم على رمز مكتوب بخط اليد نُقِل خطأً. وفي العام 1982، تسبب خلل برمجي زُعِم في وقت لاحق أن وكالة المخابرات المركزية الأمريكية زرعته في خط أنابيب الغاز السوفياتي عبر سيبيريا، ما أدى إلى أحد أكبر الانفجارات غير النووية في التاريخ.

ووفقًا لشركة كورالوجيكس المتخصصة في إدارة البيانات، ينتج المبرمجون 70 خطأ لكل 1000 سطر من التعليمات البرمجية، ويتطلب حل كل خطأ وقتًا أطول بنحو 30 مرة من الوقت الذي استغرقه المبرمج لكتابة الرمز، وتقدر الشركة أن الولايات المتحدة الأمريكية تنفق 113 مليار دولار سنويًا لتحديد الأخطاء وإصلاحها، ما جعل إعلان مايكروسوفت حديثًا، عن نجاحها في إنشاء نموذج للتعلم العميق للآلات قادر على تحديد الأخطاء البرمجية الأمنية ذات الأولوية العالية بدقة 97%، يلقى ترحيبًا واسعًا.

دقة عالية

وقال سكوت كريستيانسن، كبير مديري برامج الأمان في مايكروسوفت «من خلال ربط نماذج التعلم العميق للآلات مع خبراء الأمن، استطعنا تحسين تصنيف الأخطاء الأمنية وتحديدها إلى درجة كبيرة» وفقًا لما نقله موقع تك إكسبلور الأميركي.

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

وصنف البرنامج أولًا الأخطاء الأمنية وغير الأمنية، ثم حسّنه الباحثون ليستطيع تصنيف درجات التهديد بناء على كونها حرجة أو مهمة أو منخفضة التأثير.

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