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

Chihab Hedidi

الأعضاء
  • المساهمات

    2635
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    13

كل منشورات العضو Chihab Hedidi

  1. المشكلة هنا أن IterativeImputer يحول كل البيانات إلى float، حتى لو كانت بعض الأعمدة int، و هذا السلوك يحدث لأن imputer.fit_transform() يعيد مصفوفة numpy تحتوي على قيم float64، و الحل هو أنه بعد تحويل البيانات باستخدام IterativeImputer، يمكنك إجبار الأعمدة الصحيحة على العودة إلى نوع البيانات الأصلي باستخدام astype(int) للأعمدة التي كانت int بهذا الشكل: for col in data_train.columns: if original_dtypes[col] == 'int64': data_train[col] = data_train[col].astype(int)
  2. أعتقد أنك تحاول تشغيل ملف البايثون، يمكنك فقط الضغط على زر التشغيل الذي على شكل مثل في الأعلى على اليمين و سيشتغل معك، أو يمكنك تحديد المسار عن طريق الأمر cd ثم كتابة إسم المجلد، بعدها كتابة الأمر التالي لتشغيل الملف: python app.py و أيضا لا تنسى حفظ التغييرات التي في الملف.
  3. من بين مميزات الدورات في أكاديمية حسوب أنها تبقى معك في الحساب إلى الأبد و ستبقى دائما تطلع على التحديثات الجديدة في الدورات و يمكنك مشاهدتها أيضا، بالنسبة للدروس فهي مسجلة و تحتوي على مسارات و في نهاية كل مسار يوجد مشروع للعمل عليه، كما يوجد فريق من المدربين لمساعدتك في حالة كان هناك أي إشكال.
  4. إذا كان لديك خبرة في البرمجة يمكنك استخدام HTML وCSS وJavaScript في الواجهة الأمامية، مع إطار عمل مثل React أو Vue.js إذا كنت تفضل واجهات تفاعلية، كما يمكنك استخدام مكتبات CSS مثل TailwindCSS أو Bootstrap لتسهيل تصميم الواجهة. أما بالنسبة للباك-إند، Django خيار قوي حيث يمكنك الاستفادة من Django REST Framework لبناء واجهة برمجية إذا أردت فصل الباك-إند عن الفرونت-إند، و تحتاج أيضا إلى قاعدة بيانات قوية مثل PostgreSQL لإدارة المنتجات والمبيعات والعملاء. يعني للبدأ بطريقة صحيحة حدد أولا نطاق المشروع والمتطلبات، ثم قم بتقسيم العمل إلى مراحل، و وضع المشروع في نظام تحكم بالإصدارات مثل Git مع رفعه على GitHub.
  5. يجب عليك على الأقل إكمال أربع مسارات بمشاريعها للتقدم للإمتحان حيث سيتم إمتحانك في تلك المشاريع فقط و هي إجبارية، بعدها إنهاء المشاريع و وضعها في المستودع في Github يمكنك التواصل مع مركز المساعدة من هنا: https://support.academy.hsoub.com/conversations حيث سيتم الإطلاع على المشاريع الخاصة بك و من ثم إعطاءك مشروع مصغر لإنجازه، و بعد إنجازه بنجاح سيتم منحك الشهادة.
  6. في معظم لغات البرمجة، لا يمكن أن تبدأ أسماء المتغيرات برقم بسبب القواعد النحوية والتركيبية التي تحكم كيفية تفسير الكود من قبل المترجم أو المفسر. عندما يقرأ المترجم أو المفسر الكود، فإنه يحتاج إلى التمييز بين الأسماء مثل المتغيرات أو الدوال والقيم الرقمية، و إذا سمحنا للمتغيرات بأن تبدأ برقم، فقد يؤدي ذلك إلى غموض في التفسير، فإذا كان لديك متغير اسمه 123var، فقد يخلط المترجم بينه وبين الرقم 123 متبوعا بكلمة var، مما يجعل من الصعب تحديد ما إذا كان هذا اسم متغير أو تعبير رياضي، و تتبع لغات البرمجة عادة قواعد محددة لتسمية المتغيرات لضمان الاتساق وسهولة القراءة، وبدء المتغير برقم قد يسبب ارتباكا للمبرمجين أنفسهم، لذا يتم فرض هذه القاعدة لتجنب الأخطاء المحتملة ولضمان سلاسة عملية الترجمة والتفسير.
  7. هناك العديد من الكتب الرائعة التي يمكن أن تكون مفيدة لك حسب مستواك وأهدافك أشهرها كتاب Deep Learning by Ian Goodfellow، حيث يغطي المفاهيم الأساسية والمتقدمة بشكل شامل، ومناسب للمستوى المتوسط إلى المتقدم. كما أنصحك بالإطلاع على الكتب الموجودة في الأكاديمية و التي ستفيدك فعلا: بالنسبة لمعرض القاهرة الدولي للكتاب يعتبر أحد أكبر المعارض في المنطقة، وعادة ما يتوفر فيه مجموعة واسعة من الكتب في مختلف المجالات، بما في ذلك الكتب التقنية والتعلم العميق، أنصحك بالذهاب إليه ربما ستجد كتب أخرى تلهمك أكثر في هذا المجال.
  8. يجب تقسيم البيانات المتاحة أثناء التدريب إلى بيانات تدريب وبيانات اختبار بشكل منفصل، و يتم تدريب النموذج على جزء من البيانات، ثم يقيّم أداؤه باستخدام بيانات الاختبار التي لم يراها أثناء التدريب، إذا أظهر النموذج أداء جيدا على بيانات الاختبار، فهذا مؤشر على أنه قد يعمم بشكل جيد. كما يمكن استخدام تقنية التحقق المتقاطع، حيث يتم تقسيم البيانات إلى عدة أجزاء، وتدريب النموذج على أجزاء مختلفة منها في كل مرة واختباره على الجزء المتبقي، و هذا يساعد في تقليل الانحياز وتقييم أداء النموذج بشكل أكثر دقة، و من المهم مراقبة الظاهرة التي تعرف بـ الـOverfitting أو الإفراط في التكيف، والتي تحدث عندما يتعلم النموذج تفاصيل البيانات التدريبية بشكل مفرط مما يجعله يفشل في التعميم على بيانات جديدة.
  9. في وقتنا الحالي تعلم الذكاء الاصطناعي وتحليل البيانات يمكن أن يفتح آفاقا واسعة لك على المستوى الشخصي والمهني، حيث ستكتسب مهارات تفكير نقدي وتحليلية تمكنك من حل المشكلات بشكل أكثر كفاءة، و ستتعلم أيضا كيفية استخدام الأدوات البرمجية لتبسيط العديد من المهام اليومية، مثل تحليل البيانات الشخصية أو تحسين المشاريع التي تعمل عليها، أما مهنيا فهذه الدورة تؤهلك لاكتساب مهارات حديثة ومطلوبة بشدة في سوق العمل، مثل برمجة النماذج الذكية وتحليل البيانات، ما يمنحك ميزة تنافسية قوية عند التقدم للوظائف. بالنسبة للمسميات الوظيفية في مجال الذكاء الاصطناعي يوجد الكثير منها مهندس تعلم آلي، محلل بيانات، مطور ذكاء اصطناعي و غيرها، و هذه المسميات تعتمد على تخصصك داخل المجال ومستوى خبرتك. أما طبيعة العمل فيتنوع بناء على دورك الوظيفي، و يكون مثل جمع البيانات وتحليلها لتحديد الأنماط والاتجاهات، تصميم وتطوير نماذج تعلم آلي، و تدريب النماذج على مجموعات بيانات واختبارها لضمان دقتها.
  10. محركات الألعاب الجاهزة توفر أدوات شاملة وسهلة الاستخدام لتطوير الألعاب، وتأتي مع مزايا التي تساعد المطورين في حل المشكلات، و هذه المحركات تعتمد على نظام الاشتراك أو العائدات، حيث تدفع نسبة من الأرباح بعد تحقيق عائد معين، أما صنع محرك ألعاب خاص يتطلب جهدا برمجيا كبيرا، ومعرفة عميقة في الرسوميات، الفيزياء، والصوتيات، كما أن التكلفة المالية لصنع محرك خاص تعتمد على فريق العمل والوقت المستغرق، ولكنها قد تصل إلى مئات الآلاف من الدولارات إذا كنت تريد محركا متكاملا وفعالا.
  11. يمكنك تصفح موقع ويكي حسوب الخاص بكل اللغات البرمجية من بينها لغة بايثون، و أيضا تصفح هذا الرابط الذي يحتوي على المقالات و الكتب من أكاديمية حسوب حيث تجد كل أنواع الدروس هناك: https://academy.hsoub.com/programming/python/
  12. مقابلات العمل في الشركات في الشركات الكبيرة تعتبر تحديا في عالم التكنولوجيا، فهذه الشركات تبحث عن أفضل المواهب، لذا فإن عملية الاختيار تكون دقيقة وشاملة، و عادة ما تشمل المقابلات عدة مراحل، تبدأ بفحص السيرة الذاتية، ثم مقابلات هاتفية أو عبر الفيديو، وتنتهي بمقابلات شخصية أو افتراضية مع فريق العمل، و تركز الأسئلة على الجوانب التقنية، وحل المشكلات، والتفكير المنطقي، بالإضافة إلى المهارات السلوكية والثقافية، و قد يطلب منك حل مسائل برمجية معقدة أو تصميم أنظمة خلال المقابلة، مما يتطلب تحضيرا مكثفا وفهمًا عميقا للمفاهيم الأساسية والمتقدمة في المجال.
  13. وجود قيم NaN في الجدول الناتج يمكن أن يكون بسبب طبيعة عملية groupby و unstack، حتى لو قمت بمسح القيم الناقصة من البيانات الأصلية، فإن القيم الفارغة قد تظهر في النتيجة بسبب الطريقة التي ترتب بها البيانات عند تنفيذ العملية. حيث أن unstack يقوم بتحويل القيم الفريدة في عمود prim_disease_hct إلى أعمدة، و إذا لم يكن هناك أي بيانات مطابقة بين year_hct وقيمة معينة من prim_disease_hct في مجموعة بيانات معينة، فستظهر تلك الخلية كـNaN، لأن مكتبة pandas تتوقع وجود جميع القيم الممكنة لكنه لم يجدها.
  14. القوائم المرتبة تستخدم لعرض العناصر بترتيب معين، مثل القوائم المرقمة أو ذات الترتيب الأبجدي، ويتم إنشاؤها باستخدام الوسم <ol>، وتظهر العناصر داخلها بترقيم تلقائي أو حسب نوع الترقيم الذي يتم تحديده باستخدام السمة type. أما القوائم غير المرتبة فهي تستخدم لعرض العناصر دون ترتيب محدد، ويتم إنشاؤها باستخدام الوسم <ul>، و تظهر العناصر داخلها برمز نقطي أو أي رمز آخر حسب التصميم، و تعتبر القوائم غير المرتبة مناسبة عندما لا يكون الترتيب الزمني أو التسلسلي مهما، بينما تستخدم القوائم المرتبة عندما يكون التسلسل ذا دلالة أو ضروريا لفهم المحتوى.
  15. نعم هذا الأمر قد يكون له تأثير كبير وسلبي على أداء النموذج الذي تحاول تدريبه، و التأثير يعتمد على طريقة معالجة النموذج لهذه القيم المفقودة ومدى أهمية البيانات المحذوفة حيث أن حذف 90% من البيانات يعني أن النموذج سيحصل على كمية محدودة جدا من المعلومات لتعلم الأنماط، و بالتالي تحتاج إلى معالجة البيانات المفقودة بعناية وتقييم كيفية تأثير الحذف على الأنماط التي يحاول النموذج تعلمها.
  16. بالنسبة ل pycharm اذهب إلى File > Settings، ثم انتقل إلى القسم Project > Python Interpreter، ثم اضغط على أيقونة الترس واختر Add Interpreter، و اختر Add Local Interpreter، ثم حدد مسار مفسر Python داخل البيئة الافتراضية و اضغط OK لحفظ الإعدادات. و الأمر مشابه بالنسبة ل VsCode، و لكن يجب أن تعرف أن Pycharm يسهل هذا الأمر تماما حيث عند إنشاء مشروع من داخله يقوم تلقائيا بإنشاء بيئة إفتراضية و يتم تثبيت المكاتب عليها و بالتالي لا تحتاج إلى كل هذه المراحل اليدوية.
  17. عند استخدام fillna، تحتاج إلى إعادة تعيين القيم إلى الأعمدة لأن fillna لا تعدل البيانات في مكانها بشكل افتراضي إلا إذا استخدمت inplace=True، إليك الكود المعدل الذي يجب أن يعمل كما هو متوقع: # تحديد الأعمدة التي تحتوي على القيم المفقودة والتي ترغب في التعامل معها data_columns_nulls = ['cyto_score', 'cyto_score_detail', 'hla_high_res_6', 'hla_high_res_8', 'hla_high_res_10', 'hla_match_b_high', 'tce_imm_match', 'mrd_hct', 'tce_match', 'tce_div_match'] # مسح القيم المفقودة (NaN) في الأعمدة غير المحددة for column in data_train.columns: if column not in data_columns_nulls: data_train = data_train.dropna(subset=[column]) # تعبئة القيم المفقودة (NaN) في الأعمدة المحددة for column in data_columns_nulls: if column in data_train.columns: # إذا كان العمود نصي (object)، املأ بـ mode if data_train[column].dtype == 'object': data_train[column].fillna(data_train[column].mode()[0], inplace=True) else: # إذا كان العمود رقمي، املأ بـ mean data_train[column].fillna(data_train[column].mean(), inplace=True) # التحقق من القيم المفقودة مرة أخرى print("-" * 20) missing_values = data_train.isna().sum() print(missing_values) هنا أضفنا inplace=True مع fillna لضمان تعديل القيم داخل الإطار مباشرة.
  18. بالنسبة للدورات حاليا لا يوجد دورة خاصة بلغة البرمجة c، و لكن يمكنك قراءة الدروس و الكتب المتوفرة في الأكاديمية التي تخص هذه اللغة حيث يوجد العديد من المصادر التي يمكن أن تفيدك، يمكنك الإطلاع عليها من هنا: https://academy.hsoub.com/programming/c/
  19. الاشتقاق والجبر الخطي لهما أهمية كبيرة في فهم عمل الشبكات العصبية وتطويرها، حتى لو كنت ستستخدم أدوات جاهزة مثل TensorFlow أو PyTorch، هذه الأدوات تقوم بتبسيط العمليات الرياضية المعقدة مثل حساب التدرجات في عملية تحسين الأوزان باستخدام خوارزمية الانحدار العكسي، ولكن فهم الأساسيات مثل المصفوفات، المتجهات، والاشتقاق يتيح لك إدراك كيفية عمل هذه العمليات في الخلفية. و الإبداع يظهر عندما تفهم المبادئ الأساسية وتستطيع تحسين النموذج أو تعديله بطرق مبتكرة، و الفهم العميق يساعدك أيضًا في تحديد الأسباب وراء مشكلات مثل الإفراط في التخصيص أي Overfitting أو عدم استقرار التدريب، وإيجاد حلول فعالة لها بدلا من الاعتماد الكامل على الأدوات الجاهزة دون إدراك، لذا هذه الأدوات تسهل التنفيذ، لكن الإبداع يظهر في كيفية استخدام هذه الأدوات بذكاء واستغلال الرياضيات لفهم وتحسين النماذج بشكل عملي.
  20. بالتأكيد يمكنك تحويل ملفات Excel إلى CSV مع الحفاظ على النصوص العربية بطريقة صحيحة عن طريق ضبط الترميز على UTF-8، افتح ملف Excel، ثم اختر File > Save As أو حفظ باسم، و اختر CSV UTF-8 (Comma delimited) (*.csv) من قائمة Save as type. هذا الخيار متاح في الإصدارات الحديثة من Excel، إذا لم يظهر النص العربي بشكل صحيح، استخدم الخطوات التالية. أو يمكنك استخدام مكتبة pandas في Python لمعالجة الملفات. الكود التالي يقوم بعملية التحويل مع الحفاظ على اللغة العربية: import pandas as pd # قراءة ملف Excel excel_file = "example.xlsx" # ضع اسم ملف الإكسيل df = pd.read_excel(excel_file) # حفظ الملف بصيغة CSV مع الترميز UTF-8 csv_file = "output.csv" df.to_csv(csv_file, index=False, encoding='utf-8-sig')
  21. تأكد من رفع ملف PDF بشكل مباشر إذا كان مدعوما، أو نسخ النصوص المهمة من الملف ولصقها عند الطلب، لأن ChatGPT لا يقرأ الصور أو الرسومات داخل الملف، و إذا كان الملف يحتوي على صور أو جداول مهمة، يمكنك وصفها بالتفصيل أو استخدام أدوات لتحويل الصور إلى نص إذا كانت تحتوي على نصوص قبل مشاركتها، وأيضا لضمان عدم تخطي المعلومات يمكنك تقسيم النصوص الطويلة إلى أجزاء وطلب تلخيص كل جزء على حدة، مع التأكيد على تضمين التفاصيل.
  22. بالتأكيد يمكنك إنشاء برنامج سطح مكتب بدون استخدام قواعد بيانات تقليدية، حيث يمكن تخزين المعلومات والملفات والصور داخل ملفات البرنامج نفسه باستخدام طرق مثل تخزين البيانات في ملفات نصية TXT أو ملفات JSON أو XML، أو حتى استخدام ملفات ثنائية لحفظ الصور والمعلومات بشكل مضغوط وآمن، و هذا النهج كان شائعًا في الألعاب القديمة حيث يتم تخزين كل البيانات داخل ملفات اللعبة بطرق مخصصة.
  23. الملحقات لا تظهر عادة لذا يجب عليك كتابتها يدويا و هذا على حسب نوع الملف الذي تريد إنشاءه، فمثلا لو كنت تريد إنشاء ملف من نوع html فقط قم بإضافة .html في آخر الملف و بهذه الطريقة سيكون بالصيغة التي كتبتها.
  24. نتستخدم الوظائف التي ذكرتها لتحليل البيانات الإحصائية، لكنها تخدم أغراضا مختلفة وتعتمد على طبيعة البيانات والعلاقات التي ترغب في تحليلها: حيث أن fisher_exact تستخدم لاختبار الترابط بين متغيرين تصنيفيين في جدول تكراري ثنائي، و هذا الاختبار مفيد عندما تكون العينات صغيرة، حيث يقوم بحساب قيمة الاحتمالية لاختبار فرضية العدم. pearsonr تستخدم لحساب معامل الارتباط لبيرسون، الذي يقيس العلاقة الخطية بين متغيرين مستمرين، حيث يعطينا معامل الارتباط وقيمة الاحتمالية لاختبار قوة واتجاه العلاقة الخطية. بالنسبة ل spearmanr تستخدم لحساب معامل ارتباط سبيرمان، وهو مشابه لبيرسون، ولكنه يعتمد على الرتب بدلا من القيم الفعلية، مما يجعله مناسبًا للعلاقات غير الخطية أو البيانات التي لا تتبع التوزيع الطبيعي. أما mannwhitneyu يستخدم لاختبار ما إذا كانت توزيعات مجموعتين مستقلتين تختلف بشكل كبير، و يعتبر هذا الاختبار بديلا غير معلمي لاختبار t-test، مما يجعله مناسبا للبيانات التي لا تتبع التوزيع الطبيعي أو التي تحتوي على تباينات غير متساوية.
  25. بناء شبكة عصبية من الصفر أو استخدام الأدوات الجاهزة يعتمد على هدفك وخبرتك، إذا كنت تتعلم أو تريد فهم التفاصيل الدقيقة للشبكات العصبية، فبناءها من الصفر يكون مفيد لتطوير مهاراتك البرمجية والفهم العميق، أما إذا كان هدفك تنفيذ مشروع بسرعة وكفاءة، فاستخدام الأدوات الجاهزة مثل TensorFlow أو PyTorch هو الخيار الأفضل، حيث توفر هذه الأدوات إمكانيات متقدمة وتوفر الوقت والجهد، و دائما الجمع بين الفهم النظري واستخدام الأدوات الجاهزة قد يكون الحل الأمثل لتحقيق أفضل النتائج.
×
×
  • أضف...