Header Ads

نظام تحديد نوع المركبة باستخدام naive Bayes classification باستخدام لغة البرمجة سي شارب C SHARP #

مقدمة 
في هذا المشروع ، قمنا ببناء نظام يكتشف نوع السيارة باستخدام أبعادها باستخدام لغة التطبيق C # ، مما أضاف مرونة عالية في عملية الكشف.

الهدف من البحث هو استخدام الذكاء الاصطناعي والتعلم الآلي لتحديد احتمالية الخصائص(الطول -العرض-الارتفاع) التي تحدث في كل فصل ، ولإرجاع الفئة الأكثر احتمالا ، استخدم هذا الهدف لتصنيف المركبات حسب نوعها استنادًا إلى أبعادها.

أخيرًا ، يستطيع مشروعنا العثور على النتيجة النهائية لنوع السيارة ثم طباعتها. يوفر هذا التطبيق خدمة مريحة لكل من المتقدمين والوقت والجهد في عملية التقديم.

3.1 مصنف Naive Bayes

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

3.1.1 النظرية

افترض أن لدينا سطر نص O. علاوة على ذلك ، هناك فئات C ولإشارة أحدها إلى السلسلة. نحن بحاجة إلى إيجاد مثل هذه الفئة C حيث يكون احتمالية الحد الأقصى لسطر نص معين. رياضيا يبدو مثل هذا:
من الصعب حساب

 لكن يمكننا استخدام نظرية بايز والذهاب إلى
 
الاحتمالات غير المباشرة: نظرًا لأننا نبحث عن وظيفة بحد أقصى ، فإن القاسم لا يهمنا (هو ثابت في هذه الحالة). بالإضافة إلى ذلك ، من الضروري إلقاء نظرة على سطر O. عادة ، لا معنى للعمل مع الخط بأكمله. إنه أكثر فاعلية من عزله عن ميزاته المعينة. وبالتالي ، تصبح الصيغة:


..................................................
..................................................

الآن نقوم بتشغيل الافتراض "Naive" بأن المتغيرات O تعتمد فقط على الفئة C ، ولا تعتمد على بعضها البعض. هذا مبسط للغاية ، لكنه يعمل. يصبح البسط: ستكون الصيغة النهائية هي: لذلك كل ما نحتاج إلى القيام به هو حساب الاحتمال P (C) و P (O | C). يسمى حساب هذه المعلمات تدريب المصنف.
لقد أرفقت مشروع C # الذي ينفذ الخوارزمية المذكورة. هناك 3 فئات هناك: "Program.cs" ، "Filter.cs" و "Calculus.cs". أبسطها هي الأولى - تقوم بإطلاق وإدارة العملية عن طريق إنشاء كائنات فئات أخرى واستدعاء وظائف منها.

"حساب التفاضل والتكامل" هي فئة "الدعم". يتم استخدامه لإجراء العمليات الحسابية الضرورية: المتوسط ​​والانحراف والتوزيع الطبيعي.
أهم فئة هي "تصفية". ينفذ الخوارزمية الرئيسية وله وظيفتان رئيسيتان: مرشح القطار والترشيح. لتدريب المرشح ، نقوم بإنشاء مجموعة بيانات التدريب. يوضح المثال كيفية وجود مجموعة من البيانات المتعلقة بارتفاع وطول وعرض السيارة.
فيما يلي لقطات عن كيفية عمل البرنامج. تتعلق المعلمات باللون الأحمر بارتفاع وطول وعرض السيارة. لأول مرة لنشغلها بـ (1،2،1)
كما نرى ، عندما تكون المعلمات قريبة من القيم المتعلقة بالدراجات النارية ، فإن البرنامج يتيح لنا معرفة ذلك.
الآن لنجرب (2،4،2)
الآن نرى رسالة "السيارة".
والآن لنقم بإدخال القيم الأقرب إلى أبعاد الشاحنة (3.5،9،3):

يمكننا أن نرى أنه يخرج "شاحنة". هكذا تم ذلك.
هذا  فيديو يوتيوب عن النظام
لطلب النظام او انظمة مشابهة لهذا النظام وبكافة لغات البرمجة من خلال التواصل معي
07716055733
او https://facebook.com/iqjoker
او https://www.facebook.com/HamedDiyala

ليست هناك تعليقات