Ali Ahmed55 نشر أمس الساعة 13:26 أرسل تقرير نشر أمس الساعة 13:26 السلام عليكم هي وظيفة train_test_split تأخذ فقط أربعة متغيرات (المميزات والهدف) ؟ 1 اقتباس
0 محمد عاطف17 نشر أمس الساعة 13:53 أرسل تقرير نشر أمس الساعة 13:53 وعليكم السلام ورحمة الله وبركاته. لا من الممكن أن تأخذ معاملات أكثر حيث يمكن أن تأخذا x و y و 5 معاملات أخرى وهي : X هي المميزات (features). y هو الهدف (target). test_size: هو الحجم المخصص للبيانات الخاصة بالاختبار . train_size: لتحديد حجم بيانات التدريب بشكل محدد. random_state: هو الرقم الذي يتم تحديده لتوليد نتائج عشوائية قابلة لإعادة التكرار. shuffle: لتحديد ما إذا كان يجب خلط البيانات قبل التقسيم. stratify: لتقسيم البيانات بشكل متوازن حسب فئات الهدف . وإليك التوثيق الرسمي لتوضيح أكثر حول جميع المعاملات السابقة وأيضا أمثلة لها : https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html 1 اقتباس
0 Mustafa Suleiman نشر أمس الساعة 14:29 أرسل تقرير نشر أمس الساعة 14:29 للتوضيح ميثود train_test_split في مكتبة scikit-learn ليست مقتصرة على استقبال أربعة متغيرات فقط، فتلك الميثود مرنة جداً وتسمح لك بتقسيم البيانات بعدة طرق. ونستخدمها لتقسيم مجموعة البيانات إلى مجموعتين رئيسيتين، مجموعة التدريب Training set لتدريب نموذج الذكاء الاصطناعي، ومجموعة الاختبار Testing set لتقييم أداء النموذج بعد التدريب. المعاملات الأساسية هي تمرير عدد من المصفوفات مثل المميزات Features والأهداف Targets، حيث الصيغة الأساسية هي كالتالي: from sklearn.model_selection import train_test_split X_train, X_test, y_train, y_test = train_test_split(X, y, ...) X مصفوفة المميزات وy مصفوفة الهدف. المعاملات الإضافية أولها test_size لتحديد نسبة بيانات الاختبار، وتقبل أن تكون قيمة عشرية (مثل 0.2 للنسبة 20%) أو عدد صحيح يمثل عدد العينات. train_test_split(X, y, test_size=0.25) و train_size لتحديد نسبة بيانات التدريب بنفس طريقة test_size. ويوجد random_state لتحديد رقم ثابت لضمان إمكانية إعادة التقسيم بنفس الطريقة في كل مرة تُشغّل فيها الكود. train_test_split(X, y, random_state=42) shuffle لتحديد هل البيانات سيتم خلطها قبل التقسيم، والقيمة الافتراضية هي True. train_test_split(X, y, shuffle=False) أيضًا stratify للحفاظ على توزيع الفئات في كل من مجموعتي التدريب والاختبار، وذلك مفيد خاصة في مشاكل التصنيف حيث تكون الفئات غير متوازنة. train_test_split(X, y, stratify=y) وتستطيع تمرير أكثر من مصفوفة واحدة للتقسيم في نفس الوقت، حيث تقوم الدالة بتقسيم كل مصفوفة بنفس الطريقة واسترجاعها بشكل منفصل. X_train, X_test, y_train, y_test, z_train, z_test = train_test_split(X, y, z, test_size=0.2) 1 اقتباس
0 Ali Ahmed55 نشر منذ 23 ساعة الكاتب أرسل تقرير نشر منذ 23 ساعة اه يعني انا كده تمام علي المتغيرات دي x_train, x_temp, y_event_train, y_event_temp, y_time_train, y_time_temp = train_test_split(x, y_event, y_time, test_size=0.3, random_state=42) 1 اقتباس
0 محمد عاطف17 نشر منذ 5 ساعة أرسل تقرير نشر منذ 5 ساعة بتاريخ 18 ساعة قال Ali Ahmed55: اه يعني انا كده تمام علي المتغيرات دي x_train, x_temp, y_event_train, y_event_temp, y_time_train, y_time_temp = train_test_split(x, y_event, y_time, test_size=0.3, random_state=42) نعم صحيح . لاحظ أنك قمت بتمرير ثلاث مجاميع وهي x و y_event و y_time وسيتم تقسيم كل منهم إلى مجموعة للتدريب ومجموعة للإختبار. وستلاحظ في التوثيق الرسمي الذي أرفقته لك أنك تستطيع تمرير ما تشاء في المعامل الأول وسيتم إعتبار تلك المعاملات كمجاميع تريد تقسيمها. اقتباس
0 Ali Ahmed55 نشر منذ 4 ساعة الكاتب أرسل تقرير نشر منذ 4 ساعة بتاريخ 36 دقائق مضت قال محمد عاطف17: نعم صحيح . لاحظ أنك قمت بتمرير ثلاث مجاميع وهي x و y_event و y_time وسيتم تقسيم كل منهم إلى مجموعة للتدريب ومجموعة للإختبار. وستلاحظ في التوثيق الرسمي الذي أرفقته لك أنك تستطيع تمرير ما تشاء في المعامل الأول وسيتم إعتبار تلك المعاملات كمجاميع تريد تقسيمها. تمام جدا الف شكرااا جدا لحضرتك 1 اقتباس
السؤال
Ali Ahmed55
السلام عليكم
هي وظيفة train_test_split تأخذ فقط أربعة متغيرات (المميزات والهدف) ؟
5 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.