اذهب إلى المحتوى

السؤال

نشر

السلام عليكم

بمعني انا هتدخل النموذج 7ميزات او الFeatures و هيتدرب علي ال7 بس انا ممكن اخلي ان يخلي بالو من 3 ميزات يعني اخلي يتوصي بال3 مع برد التدريب عي باقي الميزات ؟ 

Recommended Posts

  • 0
نشر

نعم يمكنك ذلك عن طريق اختيار الميزات أو Feature Selection، حيث يمكنك إعطاء الأولوية لميزات معينة أثناء التدريب مع عدم تجاهل باقي الميزات، و يمكنك إختيار المميزات إما يدويا أو يمكنك استخدام مقاييس الميزات المهمة التي يتم إنتاجها تلقائيا، مثل Gini Importance أو Permutation Importance، لتوجيه النموذج للتركيز على الميزات المهمة.

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

  • 0
نشر
بتاريخ 3 دقائق مضت قال Chihab Hedidi:

نعم يمكنك ذلك عن طريق اختيار الميزات أو Feature Selection، حيث يمكنك إعطاء الأولوية لميزات معينة أثناء التدريب مع عدم تجاهل باقي الميزات، و يمكنك إختيار المميزات إما يدويا أو يمكنك استخدام مقاييس الميزات المهمة التي يتم إنتاجها تلقائيا، مثل Gini Importance أو Permutation Importance، لتوجيه النموذج للتركيز على الميزات المهمة.

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

شكراا جدا لحضرتك

بس ازي اعمل كده بستخدم باثيون ؟

  • 0
نشر
بتاريخ 1 دقيقة مضت قال Ail Ahmed:

شكراا جدا لحضرتك

بس ازي اعمل كده بستخدم باثيون ؟

نعم يمكنك استخدام مكتبات التعلم الآلي مثل Scikit-learn لتنفيذ هذه الأمور، فهذه المكتبة تحتوي على العديد من الدوال التي تساعدك في هذا الأمر.

  • 0
نشر

من الطرق السهلة لفعل ذلك هي Permutation Feature Importance أو  أهمية ميزة الإزاحة، وستجدها بالعديد من مكتبات التعلم الآلي، مثل scikit-learn، حيث توفر وظائف مدمجة لحسابها.

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

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

للتوضيح:

from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn.inspection import permutation_importance

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

rf = RandomForestClassifier(n_estimators=100, random_state=42)
rf.fit(X_train, y_train)

importances = permutation_importance(rf, X_test, y_test, n_repeats=10, random_state=42)

# الحصول على درجات أهمية الميزة
importance_scores = importances.importances_mean

# فرز الميزات حسب الأهمية
sorted_features = np.argsort(importance_scores)[::-1]

# تحديد أفضل 3 ميزات
top_3_features = sorted_features[:3]

print("Best 3:", X.columns[top_3_features])

 

  • 0
نشر
بتاريخ 3 ساعة قال Mustafa Suleiman:

من الطرق السهلة لفعل ذلك هي Permutation Feature Importance أو  أهمية ميزة الإزاحة، وستجدها بالعديد من مكتبات التعلم الآلي، مثل scikit-learn، حيث توفر وظائف مدمجة لحسابها.

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

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

للتوضيح:

from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn.inspection import permutation_importance

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

rf = RandomForestClassifier(n_estimators=100, random_state=42)
rf.fit(X_train, y_train)

importances = permutation_importance(rf, X_test, y_test, n_repeats=10, random_state=42)

# الحصول على درجات أهمية الميزة
importance_scores = importances.importances_mean

# فرز الميزات حسب الأهمية
sorted_features = np.argsort(importance_scores)[::-1]

# تحديد أفضل 3 ميزات
top_3_features = sorted_features[:3]

print("Best 3:", X.columns[top_3_features])

 

الف شكراا لحضرتك جدا

جزاك الله كل خير

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...