Ali Ahmed55 نشر 26 فبراير أرسل تقرير نشر 26 فبراير السلام عليكم هي اي الخاصيه دي n_iter في RandomizedSearchCV ؟ 2 اقتباس
0 Abdulrahman Muhammad نشر 26 فبراير أرسل تقرير نشر 26 فبراير ما هي الخاصية n_iter في RandomizedSearchCV؟ في RandomizedSearchCV، الخاصية n_iter تُحدد عدد التكرارات (iterations) التي سيتم تجربتها أثناء البحث عن أفضل مجموعة من المعلمات (hyperparameters). كيف تعمل؟ على عكس GridSearchCV، الذي يجرب كل (مجموعة من القيم) الممكنة للمعلمات، يقوم RandomizedSearchCV بتجربة عدد محدد من (مجموعة من القيم) العشوائية من المعلمات. n_iter تتحكم في عدد هذه (مجموعة من القيم). كلما زادت n_iter، زادت فرص العثور على أفضل معلمات، لكن وقت البحث سيزداد أيضًا. مثال عملي: from sklearn.model_selection import RandomizedSearchCV from sklearn.ensemble import RandomForestClassifier import numpy as np # تعريف المعلمات الممكنة param_dist = { 'n_estimators': np.arange(10, 200, 10), 'max_depth': np.arange(3, 20), 'min_samples_split': np.arange(2, 10) } # إنشاء نموذج RandomForest rf = RandomForestClassifier() # البحث العشوائي مع تجربة 10 توليفات فقط random_search = RandomizedSearchCV(rf, param_distributions=param_dist, n_iter=10, cv=5, scoring='accuracy', random_state=42) # تشغيل البحث random_search.fit(X_train, y_train) متى تستخدم n_iter؟ إذا كنت تريد تقليل وقت البحث وتوفير الموارد مقارنةً بـ GridSearchCV. عندما يكون لديك عدد كبير من المعلمات المحتملة، وتريد البحث في عينة منها فقط. إذا كنت تبحث عن تحسين تقريبي للمعلمات بدلًا من البحث الشامل. الخلاصة: n_iter: تحدد عدد التكرارات (التجارب) التي يتم تنفيذها لاختيار مجموعة من المعلمات بشكل عشوائي. قيمة صغيرة (n_iter=10)بحث سريع ولكن قد لا يجد أفضل المعلمات. قيمة كبيرة (n_iter=100)بحث أكثر دقة ولكنه يحتاج إلى وقت أطول. بالتالي، n_iter تساعد في تحقيق توازن بين سرعة البحث ودقته! 1 اقتباس
0 Ali Ahmed55 نشر 26 فبراير الكاتب أرسل تقرير نشر 26 فبراير بتاريخ 32 دقائق مضت قال Abdulrahman Muhammad: كلما زادت n_iter، زادت فرص العثور على أفضل معلمات، لكن وقت البحث سيزداد أيضًا. اه يعني اكثر من 5 ساعات ولسه لحد دلوقتي اقتباس
0 Abdulrahman Muhammad نشر 26 فبراير أرسل تقرير نشر 26 فبراير (معدل) بتاريخ 23 دقائق مضت قال Ali Ahmed55: اه يعني اكثر من 5 ساعات ولسه لحد دلوقتي أسباب بطء RandomizedSearchCV 1. عدد كبير من القيم الممكنة (param_distributions) إذا كنت تستخدم نطاقًا واسعًا جدًا من القيم لكل معلمة، فسيأخذ البحث وقتًا طويلاً. 2. n_iter كبير جدًا إذا كنت قد ضبطت n_iter على قيمة عالية (مثل 100 أو أكثر)، فسيأخذ البحث وقتًا أطول. 3. حجم البيانات كبير جدًا إذا كنت تعمل على مجموعة بيانات ضخمة، فقد يؤثر ذلك على سرعة البحث. 4. عدد كبير من الطيات (cv=5 أو cv=10) كلما زاد عدد الطيات (cross-validation)، زاد وقت التدريب. ------------------------------------------------------------------------------- حلول لتسريع RandomizedSearchCV 1. تقليل n_iter جرّب تقليل عدد التوليفات العشوائية: استخدم n_iter=10 أو 20 بدلًا من 100 أو أكثر. 2. تقليل عدد الطيات (cv) استخدم cv=3 بدلاً من cv=5 أو cv=10: 3. تشغيل البحث على أكثر من نواة (n_jobs=-1) يتيح لك ذلك استخدام جميع المعالجات المتاحة لتسريع العملية. تم التعديل في 26 فبراير بواسطة Abdulrahman Muhammad بعض التعديلات في التنسيق لرؤية وتوضيح أفضل 1 اقتباس
0 Ali Ahmed55 نشر 26 فبراير الكاتب أرسل تقرير نشر 26 فبراير تمام جدا الف شكراا جدا لحضرتك جزاك الله كل خير 1 اقتباس
السؤال
Ali Ahmed55
السلام عليكم
هي اي الخاصيه دي n_iter في RandomizedSearchCV ؟
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.