Meezo ML نشر 17 يونيو 2021 أرسل تقرير نشر 17 يونيو 2021 كيف نقوم بتطبيق خوارزمية Categorical Naive Bayes لمهمة تصنيف في مكتبة Sklearn؟ اقتباس
1 Ali Haidar Ahmad نشر 17 يونيو 2021 أرسل تقرير نشر 17 يونيو 2021 هذه الخوارزمية تستخدم في التصنيف الثنائي ويعتمد على نظرية بايز ويفضل استخدامه عندما يكون هنالك بيانات الميزات فيها منفصلة يتم استخدامه عبر الموديول sklearn.naive_bayes. استدعاء المكتبات: from sklearn.naive_bayes import CategoricalNB في البداية قمنا باستدعاء المكتبة التي يوجد فيها هذا الموديل الشكل العام للموديل: CaNB = CategoricalNB(alpha=1.0, fit_prior=True, class_prior=None,min_categories=None) الوسيط الأول alpha هي الهدف من هذا الوسيط هو عند حساب الاحتمالات احد هذه الاحتمالات من الممكن أن يكون صفر وتجنبا لذلك يتم وضع قيمة تسمى قيمة تنعيم أو تجانس لابلاس لكي لا يكون هناك قيم صفرية.. الوسيط الثاني fit_prior تأخذ True فقط لكي تعلم الصفوف الاحتمالات السابقة false عكس ذلك . الوسيط الثالث class_prior قيم الاحتمالات للصفوف أي تساوي عدد الصفوف يمكن تمريرها كمصفوفة تحوي الاحتمال لكل صف. الوسيط الرابع min_categorie يأخذ ثلاث قيم ..قيمه صحيحه تمثل الحد الأدنى لعدد الفئات لكل ميزة. ...مصفوفة من الأعداد الصحيحه تمثل كل قيمة فيها الحد الأدني لعدد الفئات لكل ميزه مقابلة ..عندما تأخذ None يحدد عدد الفئات تلقائيا من بيانات التدريب. طبعاً قمت بشرح الشكل العام للموديل ولكن عن طريقة استخدامه سهل جداً فقط بعد أن تقوم بتقسيم الداتا إلى X_train, X_test, تسطيع كتابة الأتي لعملية التدريب. الشكل العام للموديل: CaNB = CategoricalNB(alpha=1.0, fit_prior=True, class_prior=None,min_categories=None) CaNB.fit(X_train, y_train) حيث الدالة fit يوجد ضمنها جميع العمليات الداخلية لعملية التدريب. يوجد دالة أخرى تستخدم لغرض التنبؤ كالاتي. حساب القيم المتوقعة y_pred = CaNB.predict(X_test) نستطيع حساب دقة الموديل أو كفاءته على التدريب والاختبار عن طريق التابع score ويكون وفق الشكل. حساب الكفاءة على الاختبار والتدريب: print('CaNB Train Score is : ' , CaNB.score(X_train, y_train)) print('CaNB Test Score is : ' , CaNB.score(X_test, y_test)) لنأخذ مثال يوضح المصنف. قمنا باستدعاء المكتبات وبناء عينة مزيفة وكان التصنيف lمتعدد أما 1 أو 2 أو 0 بعد ذلك استخدمنا CategoricalNB ثم قمنا بتجريب الموديل على عينة معطاة. #استدعاء المكتبات import numpy as np from sklearn.naive_bayes import CategoricalNB #تعين داتا دخل مزيفة X = np.random.random((6, 100)) y = np.array([1, 1, 0, 2, 0, 2]) #بناء الموديل CaNB =CategoricalNB () CaNB.fit(X, y) #تصنيف عينة print(CaNB.predict(X[4:5])) #النتيجة [0] 1 اقتباس
السؤال
Meezo ML
كيف نقوم بتطبيق خوارزمية Categorical Naive Bayes لمهمة تصنيف في مكتبة Sklearn؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.