لماذا يحتاج البشر إلى تعلم الآلة؟

لماذا يحتاج البشر إلى تعلم الآلة؟

- ‎فيمقالات
@طارق عمرو
تعلم-الآلة

في فيلم “لعبة المحاكاة” وأثناء محاولة آلان تورنج لفك الشفرة المستخدمة من قبل الألمان أثناء الحرب العالمية الثانية، دار بينه وبين أحد زملاؤه الحوار التالي:

لو لدينا عشرة أفراد، ويلزم كل فرد منهم دقيقة لتجربة مفتاح مختلف للشفرة، وهم يعملون على مدار أربع وعشرين ساعة في اليوم وسبعة أيام في الأسبوع، أتعلم كم من الوقت يلزمهم لإيقاف هجوم محتمل؟ يلزمنا ما يوازي عشرين مليون ساعة من العمل على الإعدادات المختلفة في فترة لا تتجاوز عشرين دقيقة.

وهذا هو لب الموضوع بالنسبة إلى تعلم الآلة وعلم البيانات، فشركة أمازون ليس بوسعها تعيين الاف من الموظفين لفهم ذوق كل زبون لديها وعرض ما يناسب ذوقه له، ومن المستحيل أن تخصص جوجل عدد من الموظفين لزيارة كل مواقع الإنترنت وحصرها حتى يتسني لكل مستخدم أن يجد ضالته في محرك البحث العملاق، الهدف هنا من تعلم الآلة ليس إحلال البشر بآلات تقوم بعملهم، وإن كان يعتبر هدفا أحيانا في سبيل إيجاد سبل أرخص لتأدية نفس المهمة، لكن الهدف هو القيام بمهام تحتاج عدد لا نهائي من البشر في وقت شديد الصغر.

الهدف هنا من تعلم الآلة ليس إحلال البشر بآلات تقوم بعملهم

شخصيا، أحب أن أصنف سبل تعليم الآلات لتأدية وظائف البشر إلى نوعين، قد نقوم بعمل قائمة ببعض القواعد وإعطائها للحاسب لإتباعها حتى يتسنى له الوصول لقرار ما، أو في المقابل قد نرى أننا شخصيا لا نعرف تلك القواعد فنقرر أن نوفر له عينة من البيانات والقرارات التي تم إتخاذها في مواجهة كل منها وتركه هو يبتكر قواعده بنفسة .. أعتقد أنه يلزمنا مثال هنا لتوضيح ما أعنيه.

هب أن لدينا متجر ولديه قائمة بالمشتريات التي ابتاعها كل زبون لديه، واليوم لديه منتج جديد ولكنه يريد أن يعرف الزبائن الذين سيهتمون بشراء هذا المنتج الجديد، هو الآن لديه خياران للقيام بذلك، قد يستعين بخبير في التسويق وأشخاص لهم خبرة في فهم احتياجات السوق ليخبروه أن هذا المنتج الجديد يماثل منتج سابق كان يبيعه هو إلا أن سعره مرتفع وبالتالي من سيعجب به من زبائنه هم هؤلاء الذين كانوا يبتاعون المنتج القديم وخصوصا هؤلاء منهم من لديهم دخل مرتفع، وفي النهاية هو سيطلب من أحد المبرمجين أن يصمم خوارزما يستخلص من قائمة زبائنه من تنطبق عليه تلك الصفات، وغالبا ما يطلق على هذا الإسلوب للحل، الذكاء الصناعي أو الذكاء الاصطناعي، وهو مستخدم بكثرة في تصميم ألعاب الحاسب، أما الحل الثاني فهو أن ينتظر حتي يبتاع بعض الزبائن المنتج الجديد ثم يترك الحاسب “الآلة” يتبع خوارزميات معينة لفهم ما يمبز هؤلاء من إبتاعوا هذا المنتج الجديد عن غيرهم، وهذا ما يعرف بإسم التعلم الآلي أو تعلم الآلة تحت الإشراف.

من الواضح أن لكل منهج مزاياه وعيوبه، فالأول يلزمه حزمة من القوانين يضعها خبراء في المجال المستخدم فيه، وغالبا ما تتعقد تلك القوانين مع زيادتها وتعارضها مع بعضها البعض في بعض الأحيان، أما المنهج الثاني فيلزمه عينة ذات حجم مناسب للتعلم منها، قد لا تتوافر في البداية، الأول لديه هامش خطأ قليل لو كتبت القوانين بعناية، على عكس المنهج الثاني الذي لديه هامش خطأ دائما إلا أنه قادر على التعلم من أخطاؤه واكتشاف خصائص للزبائن مثلا قد لا يعرفها خبراء التسويق أصلا.

كفاءة التعلم الآلي عادة ما تزيد مع زيادة حجم عينة البيانات التي يتعلم منها، ومن ثم ظهرت أهمية ما يعرف بالبيانات الكبيرة Big Data، وهي بنى تحتية تعنى بحفظ بيانات كبيرة الحجم وغالبا ما تكون غير متجانسة وبالتالي يصعب حفظها والتعامل معها في قواعد البيانات العادية، فتجانس البيانات وإتباعها لنسق متفق عليه مسبقا شرط أساسي لحفظها في الجداول الخاصة بقواعد البيانات، وهي أمر قد لا يتوفر لدينا في حال ما تنوعت مصادر تلك البيانات وزاد حجمها بشكل كبير

في النهاية، كأي علم جديد، في البداية يتطلب الأمر وجود كفاءات عالية لإدارة وبناء خوارزميات التعلم الآلي “تعلم الآلة”، إلا أنه مع الوقت ستبدأ بعض الشركات في توفير برامج وحزم يسهل استخدامها، حتي من غير الخبراء، لتطبيقها على بياناتهم الخاصة.