عندما تضع صورة على موقع الفيس بوك فهو يقوم بالتعرف على أصدقائك بشكل أتوماتيكي ويشير إليهم (tag) في الصورة. قام كمبيوتر جوجل (Deepmind’s AlphaGo ) العام الماضي بهزيمة أبطال لعبة جو Go.

يقوم برنامج skype بترجمة المحادثات التي يقوم بها الأفراد في نفس الوقت وبدقةٍ عاليةٍ جدا.

وراء كل هذة التطبيقات نوع من الذكاء الاصطناعي يدعي التعلم العميق (deep learning). فما هو التعلم العميق و كيف يعمل؟

التعلم العميق هو فرع من فروع علم تعلم الآلة (machine learning). وهو مجال يقوم فيه الكمبيوتر باختبار اللوغاريتمات والبرامج ويتعلم أن يقوم بتحسينها وتطويرها بنفسه

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

واحدة من هذة التقنيات هي الشبكات العصبية neural networks. فالخوارزميات التي تدعم التعلم العميق تلعب دورا محوريا في التعرف على الصور والرؤية الروبوتية

مستوحاة من الخلايا العصبية التي تشكل الدماغ البشري، تضم الشبكات العصبية طبقات (الخلايا العصبية) التي ترتبط ببعضها لتشكل عدة طبقات متجاورة وترتبط ببعضها. وكلما زادت الطبقات كلما كانت الشبكة أعمق

تتلقى كل خلية عصبية في المخ ما يعادل 100000 أشارة عصبية من الخلايا المجاورة. فعندما تطلق خلية عصبية إشارةً يكون لهذه الإشارة تأثيرٌ مثبط أو مثير للخلية المستقبلة.

وإذا تراكمت الإشارات العصبية لتتخطى جهدًا كهربائيًا معينًا فإن الخلية المستقبلة تبدأ في إرسال الإشارات هي الأخرى.

وفي الشبكة العصبية للذكاء الأصطناعي تنتقل أيضا إشارات بين الخلايا المكونة للشبكة لكن بدلًا من إرسال إشارة كهربائية فإن الشبكة العصبية تقوم بتخصيص وزنٍ لكل خلية عصبية.

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

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

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

ثم يتم تغذية الشبكة العصبية بهذة الصورو التي تتحول لبيانات تتحرك في الشبكة العصبية بين الخلايا العصبية.

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

ثم تقارن الشبكة العصبية هذة الإجابات بالاسم الذي أطلقة البشر فتقارن إجابة كل صورة بما وصفه البشر بها إن كانت قطة أم ليست قطة..

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

وكل هذا دون أن يقوم الإنسان بوصف القطة للشبكة العصبية (دون أن يقوم بوصف القطة بأنها كائن ذو أربعة أرجل وشارب وأذن مدببة … لكن من خلال فقط النظر للصور)

وتدعي هذه التقنية ب ال supervised learning أو التعلم تحت الإشراف (فالبشر يشرفون على وضع وصف لكل صورة أن هذه قطة أو أنها ليست قطة)

وهناك أيضا تقنية التعلم بدون إشراف unsupervised learning. والتي تستخدم صور بدون وضع وصف لها وهنا يجب على الشبكة العصبية أن تتعرف على الأنماط المختلفة في الصورة لتبدأ بالتعرف على أية صورة قد تحتوي على هذة الأنماط.

وعلى الرغم من أن الآلة التي تتعلم بنفسها تبدو تقنيةً رائعةً لكنها كانت مُتجاهلة من طرف علماء تعلم الآلة MACHINE LEARNING حتى وقتٍ قريب.

لأن تقنية الشبكات العصبية كانت تعاني من مشاكل يصعُب تخطيها . إحداها أنها كانت معرضةً لمشكلة ال local minima «الحد الأدنى المحلي» والتي كانت تؤدي لتوزيع أوزان للخلايا العصبية الذي يعطي انطباعًا بأنها تُنتج أقل عدد من الأخطاء

وانطلقت تقنيات أخرى لتعلم الآلة machine learning وخاصةً في مجال رؤية الكمبيوتر والتعرف على الوجوه.

ففي عام 2001 أستخدم كلٌ من بول فايولا ومايكل جونز في معامل ميتسوبيشي للأبحاث الكهربائية في الولايات المتحدة لغاريتم (معادلة حسابية) من تقنيات تعلم الآلة لتتعرف على الوجوة في الصور في الوقت الحقيقي.

فبدلا من استخدام الخلايا العصبية ذات الأوزان المختلفة أستخدم تقنية تمرير الصور في سلسلة من القرارات البسيطة مثل هل تحتوي الصورة على نقطة فاتحة اللون بين النقاط الداكنة والتي قد تكون هي قمة الأنف؟ هل يوجد منطقتان داكنتان فوق منطقة واسعة شاحبة

والتي تمثل العيون والخدين في الصور المصورة بالأبيض والأسود.

وكلما تحركت البيانات في شجرة القرارات تزداد احتمالية التعرف على وجهٍ في الصورة. «إنها فكرة بسيطة جدا لكنها جميلة جدا وقوية جدا» هكذا وصفها ايان رايد نائب مدير المركز الأسترالي لرؤية الروبوتات Australian Centre for Robotic Vision (ACRV) والعالم في علم رؤية الكمبيوتر وقد بدا أن هذة الفكرة قد تقضي على فكرة الشبكات العصبية.

لكن لم يتخلى أحد عن فكرة الشبكة العصبية فمجموعة من الأحداث التي حدثت في العقدين الأخيرين جعلتها من أهم المواضيع في مجال تعلم الآلة.

ففي سنة 1980 توصلت مجموعة من الباحثين بقيادة جيوف هينتون في جامعة تورونتو في كندا إلى طريقة لتدريب الشبكة العصبية دون الوقوع في مشكلة local minima «الحد الأدنى المحلي»

وكذلك التطور الكبير الذي حدث في وحدات معالجة الرسوم (كروت الشاشة) ” graphics processing units, or GPUs” والتي سهلت التعامل مع الصور على الكمبيوتر الشخصي فقبل تطورها كان الباحثان في حاجة لاستخدام super computer كمبيوتر عملاق لمجرد تجربة تقنية تعلم الصور

ولكن الحدث الأهم هو الازدياد الكبير الذي حدث في كمية الصور الموصوفة من قبل البشر labeled data  وحدث هذا في سنة 2007 عندما أطلق عالما الكبيوتر فاي فاي لي من جامعة ستانفورد وكاي لي من جامعة برينستون ال ImageNet  « شبكة الصور» وهي قاعدة بيانات تحتوي علي ملايين الصور الموصوفة من قبل البشر .

وعملية وصف الصور الشاقة تمت بواسطة تكنولوجيا طورتها شركة أمازون تدعي Amazon Mechanical Turk والتي تقوم بدفع سنتات لكل مستخدم يصف صورة.

توفر image net  10 ملايين صورة ب 1000 وصف للشبكات العصبية المختلفة و هو تطور كبير خلال ال 10 سنوات الماضية كما يقول جوستافو كارينيرو وهو باحث في المركز الأسترالي لرؤية الكمبيوترات وقد أصبحت الشبكات العصبية هي الأداة الرئيسية في رؤية الكمبيوترات

فالشبكات العصبية الحديثة تحتوي على عدة طبقات – مثلا Google photos  تحتوي علي 30 طبقة – و كانت أحدى أكبر التطورات هي ظهور الشبكات العصبية الملتفة convolutional neural networks فهي مثل الشبكات العصبية التقليدية التي تتكون من طبقات تحتوي على خلايا عصبية لها أوزان مختلفة لكن تصميمها معتمد على المخ و جهاز الرؤية معا

فكل طبقة من الشبكة العصبية الملتفة تطبق فلتر على الصورة لتلتقط نمطًا معينًا أو خاصيةً محددةً فتقوم الطبقات الأولى بالتعرف على الصفات والأنماط الكبيرة مثل الخطوط الدائرية.

بينما تقوم الطبقات اللاحقة بالتقاط التفاصيل الأدق وتقوم بتنظيمها في شكل خصائص وأشكال مركبة مثل الأذن مثلا

وتكون الطبقة الأخيرة من الشبكة العصبية متصلةً بكل الخلايا العصبية في الطبقات السابقة من الشبكة. وتقوم بوضع كل هذة الصفات معًا مثل العينين ذات الشكل البيضاوي والمسافة بين العينين والأنف لتستطيع أن تصنف الصورة بشكلٍ دقيق.. وتتعرف عليها على أنها قطةٌ مثلا

في سنة 2012 دربت جوجل شبكةً عصبية ملتفة بآلاف من الصور المصغرة لمقاطع من ال youtube لترى ما ستتوصل إليه الشبكة العصبية..

وكانت النتيجة متوقعة حيث أن الشبكة العصبية أصبحت قادرة على التعرف على مقاطع الفيديو التي تحتوي على قطط!!

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

«و كلما تعلمنا أكثر عن العقل البشري والطرق التي يعالج بها الصور وكيف تطورت سنقوم بهندستها عكسيا ونطبقها » كما يقول كروك


  • ترجمة: مينا صبحي جبرائيل
  • تدقيق بدر الفراك
  • تحرير: أحمد عزب

المصدر