أرسل لي أحد طلابي على الواتسآب، رسالة يسألني فيها:
“كيف أبدأ بتعلم الذكاء الإصطناعي، هل عن طريق كتابة كود، أو تعلم خوارزميات، أو بأي طريقة؟ وإذا عندك اسم كتاب جيد ياليت تفيدني.”
وقد وعدته أن أرد عليه في المدونة.
في الحقيقة، الجواب يعتمد على توجه الطالب نفسه. فإذا كنت تهدف إلى أن تكون باحث في الذكاء الإصطناعي فهناك جواب، وإذا كنت تهدف لبناء أنظمة ذكية فهناك جواب آخر.
أولا: إذا اردت أن تكون باحثا في مجال الذكاء الإصطناعي فعليك بتعلم التالي:
- أن يكون لديك خلفية ولو بسيطة عن البرمجة.. (ولابد أن تطور قدراتك البرمجية بشكل كبير مع تقدمك في التعلم..) وخاصة اللغات التي تتعامل مع المصفوفات مثل Matlab, Octave, R, Python… وغيرها من اللغات .. (لغة واحدة كافية).
- علم الجبر من أهم العلوم في الذكاء الإصطناعي. فعليك بدراسة الجبر.. وقد تسأل لماذا الجبر؟ والجواب ببساطة لأننا نمثل البيانات عند التعلم باستخدام المصفوفات Matrices (مفردها مصفوفة Matrix). وعليه فالجبر هو الأداة التي ستساعدك في التعامل مع البيانات بكفاءة عالية وفهم الخوارزميات الحالية والتطوير عليها مستقبلا.
وأجد أن أكاديمية خان Khan Academy هي أفضل من يعلمك الجبر..
أحد المصادر المهمة الأخرى لتعلم الجبر هو الأسبوع الأول من المادة التي درّسها عالم الذكاء الإصطناعي والاستاذ بجامعة ستانفور (أندرو آنق Andrew Ng) في منصته التي شارك في تأسيسها (كورس ايرا Coursera).
وهناك طريقة جيدة لتعلم الجبر (التعلم بالتطبيق) .. افتح لغة البرمجة التي اخترتها من اللغات التي ذكرتها لك أعلاه، وابدأ باللعب بالمصفوفات ( اضرب مصفوفات واطرحها واقلبها وقم بجميع العمليات الجبرية التي يمكنك القيام بها وانظر للنتائج..).
ملاحظة: ليس بالضرورة أن تبدأ بالجبر.. ولكن المعرفة البسيطة بالجبر ستساعدك في الانطلاق، وتتعلم الجبر مع الوقت. فكلما وجدت حاجة لتعلم مفهوم جديد في الجبر صادفك في إحدى الأبحاث أو المقالات أو الخوارزميات فارجع لتعلمه.
- الإحصاء مهم وخاصة نظرية الإحتمالات Probability Theory ونظرية البيز Bayes Theory. وهي كذلك قد تتعلمها من الانترنت.. وابدأ بقنوات اليوتوب أو منصات التعلم المفتوحة التي ذكرنا بعضها سابقا.
- دراسة الخوارزميات الأساسية السهلة مثل: K-means, Naive Bayes, KNN, Decision Tree .. وفهمها بشكل جيد ويمكن أن تبدأ بتعلمها باستدعائها من المكتبات البرمجية الجاهزة API. لكن لاحقا يجب عليك بناءها بنفسك باستخدام لغة البرمجة التي اخترتها (وكلها سهلة الفهم والتطبيق).
- التطبيق على بعض البيانات Datasets المتوفرة مجانا على النت وسبق وذكرنا بعض مصادرها في مدونات سابقة.
- بعد ذلك تبدأ بشراء كتب مشهورة في هذا المجال وهي عديدة ولايوجد لدي كتاب مفضل.. لكن يفضل أن تختار كتاب تكون جميع الأكواد فيه والتطبيقات باستخدام اللغة اللي اخترتها. ويمكن أن تبدأ بالكتب المجانية وال Tutorials المتوفرة في النت وهي أكثر من الهم على القلب لكن للأسف أنه قليل أن تجد باللغة العربية..
- متابعة هذه المدونة..
ثانيا: إذا كنت أردت أن تبني تطبيقات ذكية أو أنظمة ذكية..
- عليك أن تعرف المصطلحات المهمة في هذا التخصص. وفهم بسيط عن كل مصطلح. (أعتزم بإذن الله وضع معجم في هذا الموقع لجميع المصطلحات بتعريفاتها..)
- حدد التطبيق الذي تريد تجربته واختر الخوارزمية (ابحث في قووقل عن أفضل الخوارزميات وأسهلها في التطبيق الذي ترغب به، وكل ماحددت نوع البيانات لديك كان أفضل لأن الأبحاث أثبتت أن بعض الخوارزميات قد تعطي نتائج أفضل مع أنوع محددة من البيانات).
- فكل ماعليك هو أن تختار لغة برمجة من التي ذكرنا سابقا أو مما يناسبك من غيرها، وتبحث عن المكتبات API التي تناسبك وتبدأ باستدعائها وتطبيق العمل على البيانات الموجودة لديك.
- متابعة هذه المدونة..
مقال رائع جدا وضح لي الفرق في التوجه بين البحث او تصميم الانظمة وجاوبت كثير من التساؤلات في بالي مثل اي اللغات احتاج
بالنسبة لي توجهي بناء انظمة وانتظر المصلحات في المدونة وشكرا لك الف شكر على ما تقدم ?
مقال رائع بمعنى الكلمة …
ولكل من أراد البدء في التعلم يجعل هذه النقاط نصب عينه
حقيقه ابدعت دكتور سالم
ومن وجهه نظري هذه المقاله تعتبر خطه للوصول او بوابه عبور الى هذا العالم الكبير
شكرًا دكتور
بعد ما اتممت القراء في هذة المقاله لم يعد دماغي كما كان قبل قراءتها ابدا فكان قبل القراءه شغوف بهذا المجال و لكن يرى امامه طرق متشابكه لايدري من ايهم يبدأ.. و بعد القراءه و كأنك عملت على ترتيب و تفكيك تشابك هذه الطرق بداخل دماغي …
أشكرك دكتور سالم …
و انا سأكون أحد المستفيدين من هذه المدونه و ستكون مرجعي في كل خطواتي الدراسيه القادمه بإذن الله.
Thank you 🙏🏻