لو عايز تدخل Machine Learning وانت بتهرب من الرياضيات، اسمع ده الأول.
الـ Machine Learning إنك تعلّم الكمبيوتر يتوقع حاجة من بيانات قديمة، زي إنه يتوقع سعر شقة من مساحتها ومكانها. والترتيب: Python، وبعدها رياضيات أساسية، وبعدها تنضيف البيانات بـ Pandas، وبعدين الموديلات الأساسية زي Regression و Classification، وفي الآخر الـ Deep Learning.
علّم على كل حاجة تخلصها وانت ماشي، علشان تعرف انت فين، وترجع تكمّل من نفس المكان.
قبل ما تبدأ
- ذاكر كل يوم، حتى لو شوية. المدد هنا محسوبة على ساعتين في اليوم. لو وقتك أقل هتاخد وقت أطول، وده عادي.
- المدد تقريبية. في ناس هتخلص أسرع وناس أبطأ. عدّي المرحلة لما تبقى جاهز فعلًا، مش لما الوقت يخلص.
- كل مرحلة فيها مشروع. متعديش للمرحلة اللي بعدها قبل ما تعمله بإيدك، في Notebook فيه الكود وشرحك بكلامك.
الرياضيات في الخطة دي
الرياضيات هنا مش اختيارية، بس مش لازم تخلصها كلها قبل ما تبدأ:
- المرحلة التانية بتديك الأساس بس: إحصاء، واحتمالات، وجبر خطي، على قد اللي هتحتاجه في الأول.
- وكل مرحلة بعدها فيها بند بيبدأ بـ «رياضيات:» بيقولك تتعلم إيه منها في نفس الوقت، جنب الكود.
- وكل قانون تقابله، اكتبه بالكود. لو عرفت تحسبه بـ NumPy وتشوف النتيجة، يبقى فهمته.
المرحلة 1 من 5
Pythonاللي هتكتب بيه كل حاجة
المدة: 6 لـ 8 أسابيع
ابدأ بـ Python. هي اللغة اللي أغلب أدوات الـ Machine Learning معمولة بيها، من تنضيف البيانات لحد الـ Deep Learning.
وهنا هتتعرف على Jupyter: notebook بتكتب فيه كود وتشوف النتيجة تحته على طول. هتفضل شغال فيه طول الخطة.
هتتعلم إيه
0 من 10اعمل بإيدك
حلّل بيانات من حياتك. خد ملف CSV فيه بيانات حقيقية عندك، زي مصاريفك أو درجاتك أو خطواتك اليومية. احسب المتوسط وأعلى وأقل قيمة، وارسم رسمتين بـ Matplotlib. وكله في Notebook واحد فيه الكود وشرحك بكلامك.
تعدّي للمرحلة اللي بعدها لما
- تقدر تكتب برنامج صغير من ملف فاضي من غير ما تنسخ من حد
- مرتاح في الـ lists والـ dictionaries والـ functions
- بتعمل عمليات على NumPy arrays من غير loops
المرحلة 2 من 5
رياضيات أساسيةعلشان تفهم الموديل بيفكر إزاي
المدة: 4 لـ 5 أسابيع
رياضيات أساسية: إحصاء، واحتمالات، وجبر خطي. مش علشان تحل مسائل، علشان تفهم الموديل بيفكر إزاي.
والرياضيات هنا مش اختيارية، بس مش لازم تخلصها كلها قبل ما تبدأ. المرحلة دي بتديك الأساس بس، والباقي هتاخده جنب الكود في المراحل الجاية، خطوة بخطوة.
هتتعلم إيه
0 من 10اعمل بإيدك
دفتر رياضيات بالكود. لكل موضوع في المرحلة: احسبه بإيدك على ورقة مرة، وبعدين اكتبه بـ Python من غير مكتبات، وبعدين بـ NumPy، وقارن النتايج. وفي الآخر اكتب gradient descent صغير بيلاقي أقل نقطة في دالة زي y = x * x.
تعدّي للمرحلة اللي بعدها لما
- تقدر تشرح المتوسط والانحراف المعياري والاحتمال المشروط بمثال من عندك
- بتضرب matrices بـ NumPy وفاهم الأبعاد بتتظبط إزاي
- فاهم gradient descent بيعمل إيه، حتى لو مش حافظ المعادلات
المرحلة 3 من 5
Pandasتنضف البيانات وتجهزها
المدة: 4 لـ 5 أسابيع
بعد كده تتعلم تنضف البيانات وتجهزها بأداة اسمها Pandas. البيانات الحقيقية عمرها ما بتيجي نضيفة: فيها خانات فاضية، وتكرار، وأرقام غلط.
وده جزء كبير من شغل الـ Machine Learning الحقيقي. موديل ممتاز على بيانات وحشة هيطلّع نتايج وحشة.
هتتعلم إيه
0 من 12اعمل بإيدك
نضّف داتا شقق حقيقية. نزّل dataset أسعار بيوت من Kaggle، ونضّفها من القيم الناقصة والمتكررة والشاذة. وطلّع منها 3 أسئلة وجاوبها بالأرقام والرسومات، زي أنهي منطقة أغلى، والسعر بيزيد مع المساحة قد إيه.
تعدّي للمرحلة اللي بعدها لما
- تقدر تاخد أي CSV وتطلّع منه ملخص نضيف في Notebook
- بتشرح ليه اخترت تملا القيم الناقصة أو تمسحها
- بترسم البيانات قبل ما تفكر في أي موديل
المرحلة 4 من 5
Regression و Classificationتوقع رقم أو توقع نوع
المدة: 6 لـ 8 أسابيع
وبعدها الموديلات الأساسية زي Regression و Classification. يعني توقع رقم زي سعر الشقة، أو توقع نوع زي الإيميل ده إعلان مزعج ولا لأ.
هنا الرياضيات اللي اتعلمتها بتبان قدامك: الـ Linear Regression خط بيقرب من النقط، والتدريب gradient descent بيصغّر الغلط. ومتدخلش Deep Learning قبل ما تبقى مرتاح هنا.
هتتعلم إيه
0 من 11اعمل بإيدك
توقع سعر شقة. على نفس الداتا اللي نضفتها: اعمل موديل Linear Regression، وبعده Random Forest، وقارن الاتنين بالـ RMSE على test data. وبعدها مشروع Classification صغير، زي مسابقة Titanic على Kaggle: الراكب نجا ولا لأ.
تعدّي للمرحلة اللي بعدها لما
- بتقسم البيانات train و test قبل أي حاجة، من غير ما حد يفكرك
- بتختار المقياس الصح للمشكلة، وتشرح الرقم معناه إيه
- تقدر تعرف من الأرقام إن الموديل عنده overfitting
- عملت مشروعين كاملين بـ scikit-learn، من البيانات الخام لحد القياس
المرحلة 5 من 5
Deep Learningشبكات بتتعلم من بيانات كتير
المدة: 8 لـ 10 أسابيع
وفي الآخر الـ Deep Learning، ودي شبكات بتتعلم من بيانات كتير جدًا، زي الصور والصوت والنصوص.
دي المرحلة اللي ناس كتير عايزة تبدأ بيها، بس هي مبنية على كل اللي فات: البيانات، والقياس، والـ overfitting، والـ gradient descent. لو اللي فات مفهوم، هتحس إنك بتكمّل، مش بتبدأ من الأول.
هتتعلم إيه
0 من 11اعمل بإيدك
موديل بيعرف الصور. اعمل موديل بيفرق بين أنواع صور، زي أكلات مصرية أو أنواع ورق شجر، بالـ transfer learning على موديل جاهز. اجمع الصور بنفسك، وقيس الـ accuracy على صور مشافهاش، واعمله صفحة بسيطة ترفع فيها صورة ويقولك هي إيه.
تعدّي للمرحلة اللي بعدها لما
- كتبت training loop بـ PyTorch بإيدك، وفاهم كل سطر بيعمل إيه
- تقدر تشرح الـ backpropagation بالفكرة لحد لسه بيبدأ
- عملت موديل على بيانات انت جمعتها، مش بس على dataset مشهورة
سلم المشاريع
المشاريع هي اللي بتعلمك بجد، وهي اللي هتوريها لأي حد عايز يشغّلك. أول 4 عملتهم في المراحل فوق، والخامس هو اللي بيقفل الخطة.
تحليل بيانات من حياتك
Python و NumPy و Matplotlib
أول Notebook ليك: أرقام ورسومات من بيانات انت عارفها كويس.
تنضيف داتا الشقق
Pandas و EDA
بيانات حقيقية بكل مشاكلها، وأسئلة بتجاوبها بالأرقام والرسومات.
توقع سعر شقة
Regression و scikit-learn
أول موديل يتوقع رقم، ومقارنة بين موديلين بمقياس واضح.
مين نجا من Titanic
Classification و scikit-learn
أول موديل يتوقع نوع، وهنا هتفهم ليه الـ accuracy لوحدها مش كفاية.
مشروع الـ portfolio: موديل لمشكلة حقيقية
Pandas و scikit-learn أو PyTorch
اختار مشكلة من حواليك وبيانات حقيقية، زي توقع أسعار عربيات مستعملة أو تصنيف صور أكل. اعمله من الأول للآخر: البيانات، والتنضيف، والموديل، والقياس، وواجهة بسيطة. واكتب في الـ README إيه اللي جربته ومنفعش وليه، ده بيبيّن إنك فاهم بجد.
مصادر مجانية
كل دول مجانيين أو فيهم جزء مجاني كبير. متجمعش مصادر كتير: اختار مصدر أساسي واحد لكل مرحلة وكمّل بيه، والباقي ارجعله لما تقف في حتة.
Python و Notebooks
- Kaggle Learn: Python (بيفتح في تاب جديدة)كورس Python قصير بتمارين جوه المتصفح، ومعمول لناس رايحة على الـ Data و ML.
- Google Colab (بيفتح في تاب جديدة)Notebooks في المتصفح من غير ما تسطّب حاجة، وفيه GPU مجاني بحدود.
- Mastering Python من Elzero (بيفتح في تاب جديدة)كورس Python بالعربي على يوتيوب، من الصفر.
- NumPy: the absolute basics (بيفتح في تاب جديدة)الشرح الرسمي لـ NumPy للمبتدئين.
الرياضيات
- Khan Academy: Statistics and Probability (بيفتح في تاب جديدة)الإحصاء والاحتمالات من الأول، بفيديوهات وتمارين.
- Khan Academy: Linear Algebra (بيفتح في تاب جديدة)الـ vectors والـ matrices خطوة بخطوة.
- 3Blue1Brown: Essence of linear algebra (بيفتح في تاب جديدة)الجبر الخطي بالرسم، هتشوف الـ matrices بتعمل إيه بعينك.
- StatQuest (بيفتح في تاب جديدة)قناة بتشرح الإحصاء وموديلات الـ ML ببساطة وبالرسم.
- Mathematics for Machine Learning (بيفتح في تاب جديدة)كتاب الرياضيات اللي ورا الـ ML، والـ PDF بتاعه ببلاش. ارجعله لما تحتاج تتعمق في موضوع.
Pandas والبيانات
- Kaggle Learn: Pandas (بيفتح في تاب جديدة)كورس Pandas قصير بتمارين على بيانات حقيقية.
- Kaggle Learn: Data Cleaning (بيفتح في تاب جديدة)القيم الناقصة، والتواريخ، والنصوص اللي مكتوبة غلط.
- pandas: Getting started tutorials (بيفتح في تاب جديدة)الشرح الرسمي لـ Pandas، مقسم لمواضيع قصيرة.
Regression و Classification
- Machine Learning Crash Course (بيفتح في تاب جديدة)كورس من Google عن أساسيات الـ ML: الـ Regression، والـ Classification، والقياس.
- Kaggle Learn: Intro to Machine Learning (بيفتح في تاب جديدة)أول موديل ليك بـ scikit-learn، خطوة بخطوة.
- scikit-learn: Getting Started (بيفتح في تاب جديدة)الشرح الرسمي لـ scikit-learn:
fitوpredictوالـ Pipeline. - Titanic على Kaggle (بيفتح في تاب جديدة)أشهر مسابقة للمبتدئين، تجرب فيها الـ Classification وتقارن نفسك بغيرك.
- House Prices على Kaggle (بيفتح في تاب جديدة)مسابقة توقع أسعار بيوت، تنفع لمشروع الـ Regression.
Deep Learning
- Practical Deep Learning for Coders (بيفتح في تاب جديدة)كورس fast.ai المجاني، بيبدأ بالتطبيق وبعدين يشرح اللي تحته.
- PyTorch Tutorials (بيفتح في تاب جديدة)الشرح الرسمي لـ PyTorch، ابدأ بـ Learn the Basics.
- 3Blue1Brown: Neural networks (بيفتح في تاب جديدة)الشبكات والـ backpropagation بالرسم، من غير ما تتوه في المعادلات.
- Neural Networks: Zero to Hero (بيفتح في تاب جديدة)كورس Andrej Karpathy، بيبني الشبكات من الصفر بالكود.
- Dive into Deep Learning (بيفتح في تاب جديدة)كتاب مجاني فيه الرياضيات والكود جنب بعض في كل فصل.
أكتر الأخطاء اللي بشوفها
- إنك تهرب من الرياضيات، أو تستنى تخلصها كلها قبل ما تكتب أول سطر. الاتنين غلط. من غير رياضيات هتستخدم الموديلات كأنها صندوق مقفول، ومش هتعرف ليه النتيجة وحشة ولا تصلّحها إزاي. ولو استنيت تخلص كتاب رياضيات كامل، هتزهق قبل ما توصل لأول موديل. خد الأساس، واتعلم الباقي جنب الكود خطوة بخطوة.
- إنك تبدأ بـ Deep Learning. شكله أحلى، بس هو مبني على كل اللي قبله. لو مش فاهم الـ overfitting والقياس في موديل بسيط، مش هتفهمهم في شبكة فيها ملايين الأرقام.
- إنك تقيس الموديل على نفس البيانات اللي اتدرب عليها. هيطلعلك رقم حلو جدًا ومش حقيقي. افصل الـ test data من الأول، ومتلمسهاش لحد القياس.
- إنك تستعجل الموديل وتطنّش البيانات. كتير من التحسن بييجي من بيانات أنضف و features أحسن، مش من موديل أعقد. اقضي وقتك في البيانات الأول.
- إنك تشتغل على datasets جاهزة ونضيفة بس. الشغل الحقيقي بيبدأ ببيانات وحشة. اعمل مشروع واحد على الأقل ببيانات انت جمعتها.
بعد كده
لما تخلص الخطة دي وتعمل مشروع الـ portfolio، دي الخطوات اللي بعدها:
- MLOps: ترفع الموديل يشتغل جوه منتج حقيقي، وتراقبه لما البيانات تتغير مع الوقت.
- تخصص: تختار مجال تتعمق فيه، زي Computer Vision للصور، أو NLP للنصوص، أو Time series للأرقام اللي بتتغير مع الوقت.
- LLMs و AI Engineering: تبني منتجات على الموديلات الكبيرة الجاهزة، وفيه خطة AI Engineering لوحدها.
احفظ الصفحة دي، وارجعلها كل ما تخلص حاجة وعلّم عليها. ولو وقفت في مرحلة ومش فاهم، ارجع للي قبلها، غالبًا المشكلة هناك.