تطبيق ويب اكتشاف الشذوذ
وصف
طُلب منا إنشاء تطبيق سيكون قادرًا على اكتشاف الحالات الشاذة. يعرض التطبيق نموذجًا ويجب على المستخدم تقديم المعلمات التالية:
- تدريب ملف CSV
- اختبار ملف CSV
- نوع الخوارزمية
- عتبة
من خلال إعطاء هذه المعلمات وإرسالها عن طريق التقديم ، سيعيد التطبيق تقرير الحالات الشاذة.
يدعم التطبيق بنية MVC:
- عرض - "index.html" الذي يصمم كيف يجب أن يبدو التطبيق ، "result.html" الذي يعرض إخراج النموذج
- التحكم - "expserver.js" وهو واجهة برمجة التطبيقات الخاصة بنا ويتضمن طلبات HTTP المطلوبة: Get and Post.
احصل - "/" - تقوم الطريقة بإرجاع "index.html" - العرض الرئيسي
post - "/detect" - تُرجع الطريقة استجابة JSON مع سجلات الشذوذ
post - "/detect/fromview" - أضفنا هذه الوظيفة من أجل عرض تقرير شذوذ عرض التطبيق الخاص بنا - المجلد "النموذج -" النموذج " - خادمنا الذي يدعو إلى بعض المعلمات ، فإنه يعيد الاستجابة إلى واجهة برمجة التطبيقات (وحدة التحكم)
متطلبات
لتشغيل الخادم ، يرجى التأكد من تثبيت المكونات التالية على نظامك:
- نظام التشغيل Linux أو WSL2 لنظام التشغيل Windows (موصى به WSL Ubuntu 20.04)
- Node V10.19.0 أو إصدار أعلى (موصى به V14.17.0)
- NPM V6.14.4 أو إصدار أعلى (موصى به V7.10.0)
- Node-GYP V6.1.0 أو إصدار أعلى (موصى به V8.0.0)
ما قبل التثبيت:
إذا كنت بحاجة إلى تثبيت واحد (أو أكثر) من المكونات لتلبية المتطلبات ، فتح محطة Linux واستخدم الأوامر التالية:
- يوصي بتحديث وتصميم APT-GET. للقيام بذلك ، أدخل الأمر "Sudo Apt-Get Update" وبعد الانتهاء ، أدخل "Sudo APT-GET UPGRAGENT -Y".
- لتثبيت Node-JS ، استخدم الأمر: "sudo apt-get install nodejs -y".
- لتثبيت NPM ، استخدم الأمر: "Sudo APT -GET تثبيت NPM -Y".
- لتثبيت Node-GYP ، استخدم الأمر: "Sudo NPM Install -G Node-GYP".
ملاحظة: بالنسبة للعقدة ، يجب أن يكون Python V3.6 (أو أعلى) ومترجمة GCC مثبتة مسبقًا على نظامك.
- لتثبيت Python3 ، استخدم الأمر: "Sudo APT-GET تثبيت Python3.6" (أو 3.7 أو 3.8 وما إلى ذلك).
- عادةً ما يتم تثبيت GCC مسبقًا على أنظمة UNIX.
تعليمات
- يرجى التأكد من أن نظامك يفي بالمتطلبات أعلاه.
- افتح المحطة في القاموس الرئيسي للخادم وقم بتشغيل الأمر: "./run.sh". سيقوم هذا البرنامج النصي بتشغيل "تثبيت NPM" في التدويرات ذات الصلة للحصول على التبعيات المطلوبة ، وتجميع جزء C ++ من البرنامج باستخدام Node-GYP.
- بعد الانتهاء من إعداد الخادم ، يمكنك العمل بطريقتين:
باستخدام واجهة الويب:
افتح المتصفح واتصل بالخادم في "LocalHost: 8080". ثم ، املأ النموذج وتقديم.
باستخدام الوصول عن بُعد:
أرسل طلبًا منشورًا إلى "LocalHost: 8080/اكتشاف" مع البيانات التالية في الجسم:
- الخوارزمية: "خوارزمية الانحدار" أو "الخوارزمية الدائرية" أو "الخوارزمية الهجينة".
- New_threshold: جزء بين 0 و 1.
- Training_file: ملف CSV للتدريب على النظام.
- testing_file: ملف CSV للكشف عن الشذوذ.
بعد تقديم طلب النشر ، ستحصل على استجابة منشور مع JSON.
استكشاف الأخطاء وإصلاحها
إذا تلقيت بعض الأخطاء باستخدام ملف Run.sh ، فيمكنك إدخال الأوامر التالية:
- CD ./model
- تثبيت NPM
- Node-GYP تكوين
- Node-GYP Build
- CD ../controller
- تثبيت NPM
- عقدة expserver.js
مقدمة الفيديو
https://youtu.be/sggpqtrijm0
لقطات الشاشة
شاشة الترحيب: 
مثال على النتائج: 
عرض Postman: