تعلّم الآلة في الشركات: وش يحل؟
في البرمجة العادية أنت تكتب القاعدة: «إذا الفاتورة أكبر من 10,000 اطلب موافقة المدير». في تعلّم الآلة (Machine Learning) تعطي النظام أمثلة من الماضي، وهو يستنتج القاعدة بنفسه. وهذا مفيد لما تكون القاعدة صعبة تكتبها يدوياً، مثل «أي عميل قريب يوقف التعامل معنا؟».
| نوع المشكلة | السؤال | مثال في نخلة |
|---|---|---|
| التصنيف (Classification) | أي فئة؟ (نعم/لا، أ/ب/ج) | هل هذا المتجر بيوقف الطلب منا؟ هل الفاتورة مشبوهة؟ |
| التنبؤ بالأرقام (Regression) | كم؟ (رقم) | كم كرتون بنبيع الشهر الجاي؟ |
| التجميع (Clustering) | مين يشبه مين؟ (بدون إجابات مسبقة) | تقسيم العملاء لشرائح حسب سلوك الشراء |
التصنيف والتنبؤ بالأرقام اسمهم تعلّم مُوجَّه (Supervised)، لأن بياناتك فيها الإجابة الصحيحة لكل مثال (هل العميل وقف فعلاً؟ كم بعنا فعلاً؟). أما التجميع فهو تعلّم غير مُوجَّه (Unsupervised): ما فيه إجابات، والنموذج يكتشف المجموعات بنفسه.
وش يعني «تتعلم» بالضبط؟ شغّل هذا الكود: عندنا ساعات مذاكرة ونتيجة 8 طلاب، والكود يجرب كل قاعدة ممكنة ويختار اللي تصيب أكثر. هذا هو التعلّم في أبسط صوره: بيانات + هدف + تجربة.
# Learn a rule from data hours = [1, 2, 3, 4, 5, 6, 7, 8] passed = [0, 0, 0, 1, 0, 1, 1, 1] best_t, best_ok = 0, 0 for t in range(0, 10): ok = 0 for h, p in zip(hours, passed): guess = 1 if h >= t else 0 if guess == p: ok += 1 if ok > best_ok: best_t, best_ok = t, ok print("Best rule: hours >=", best_t) print("Correct:", best_ok, "of", len(hours))