الشبكات العصبيّة الاصطناعيّة وتطبيقاتها – Electronics Go
في أثناء قراءتك لهذا المقال، أيّ عضو في جسمك مسؤول عن مهمة التفكير؟ بالطبع هو الدماغ، ولكن هل تعرف كيف يعمل الدماغ؟ يحتوي الدماغ على خلايا عصبيّة، وهي الوحدات الأساسيّة للدماغ والجهاز العصبيّ، إذ تستقبل هذه الخلايا إشارات حسّيّة من العالم الخارجيّ وتعالجها، ثمّ تقدّم النتائج التي قد تعمل كإشارة دخل للخليّة التالية. وترتبط هذه الخلايا بعضها ببعض بمشابك عصبيّة مكوّنةً جهازاً عصبيّاً معقّداً.
لربما بدأتَ تتساءل عن علاقة هذا بالشبكات العصبيّة الاصطناعيّة (ANN: Artificial Neural Networks). هناك علاقة وثيقة؛ فقد صُمّمِت الشبكات العصبيّة الاصطناعيّة على غرار الخلايا العصبيّة في الدماغ البشريّ. والآن، دعنا نتعرّف على تفاصيلها وكيفيّة تعلّمها للمعلومات.
الشبكات العصبيّة الاصطناعيّة:
تحتوي الشبكات العصبيّة الاصطناعيّة على خلايا عصبيّة اصطناعيّة تسمّى “الوحدات”، ترتب في سلسلة من الطبقات التي تشكّل معاً الشبكة العصبيّة الاصطناعيّة في نظام ما، ويمكن أن تحتوي الطبقة على عدد قليل من الوحدات أو ملايين الوحدات، ويعتمد ذلك على مدى تعقيد تلك الشبكات وآليّة تعلّمها للأنماط المخفيّة في مجموعة البيانات، فعادةً ما تتكوّن الشبكة العصبيّة الاصطناعيّة من طبقة دخل وطبقة خرج، إضافةً إلى طبقات مخفيّة. تستقبل طبقة الدخل البيانات -التي تحتاج الشبكة العصبيّة إلى تحليلها أو التعلّم عنها- من العالم الخارجيّ، ثمّ تمرّ هذه البيانات عبر طبقة واحدة أو أكثر من الطبقات المخفيّة التي تحوّل إشارة الدخل إلى بيانات قيّمة لطبقة الخرج. وأخيراً، تقدّم طبقة الخرج النتيجة استجابةً من الشبكات العصبيّة الاصطناعيّة لبيانات الدخل المقدَّمة.
في معظم الشبكات العصبيّة، تتّصل الوحدات بعضها ببعض من طبقة إلى أخرى، وتحدد هذه الروابط الأوزان التي تحدّد تأثير إحدى الوحدات على الأخرى، وبانتقال البيانات بين الوحدات تتعلّم الشبكة العصبيّة المزيد عن البيانات، ممّا يؤدّي في النهاية إلى نتيجة output من طبقة الخرج.
تشكل بنية وعمليّات الخلايا العصبيّة البشريّة أساس الشبكات العصبيّة الاصطناعيّة (تعرف أيضاً بالمصطلحين: neural networks – neural nets)، وتَكون طبقة الدخل في تلك الشبكات هي الطبقة الأولى التي تستقبل الإشارة من المصادر الخارجيّة كما ذكرنا، وتنقلها إلى الطبقة المخفيّة، وهي الطبقة الثانية. أمّا في الطبقة المخفيّة، فتستقبل كلّ خليّة عصبيّة اصطناعيّة إشارة من جميع خلايا الطبقة السابقة، لتحسب المجموع المرجّح (weighted sum) وتُرسله إلى خلايا الطبقة التالية.
والروابط بين الطبقات موزونة، أي أنّ تأثير الإشارات المستقبلة من الطبقة السابقة قد يتحسّن أو يسوء بواسطة تعيين أوزان مختلفة لكلّ إشارة، وتضبط هذه الأوزان خلال عمليّة التدريب لتحسين أداء النموذج.
مقارنة بين الخلايا العصبيّة الاصطناعيّة والطبيعيّة:
استلهمت فكرة الشبكات العصبيّة الاصطناعيّة من الخلايا العصبيّة الطبيعيّة الموجودة في أدمغة الحيوانات، لذا تتشابهان كثيراً بنيةً ووظيفةً.
البنية:
استلهمت بنية الشبكة العصبيّة الاصطناعيّة من الخلايا العصبيّة الطبيعيّة، إذ تتكوّن الخلايا الطبيعيّة من جسم خليّة (سوما soma) لمعالجة النبضات الكهربائيّة، وتفرّعات عصبيّة لاستقبالها، ومحور عصبيّ ينقلها إلى الخلايا العصبيّة الأخرى. وبصورة مشابهة، تستقبل عقد الإدخال للشبكات العصبيّة الاصطناعيّة إشارات الإدخال لتعالجها عقد الطبقة المخفيّة، ثمّ تَحسب عقد طبقة الإخراج الناتج النهائيّ عن طريق معالجة نتائج الطبقة المخفيّة باستخدام دوالّ التنشيط (activation functions).
الخليّة العصبيّة الطبيعيّة | الخليّة العصبيّة الاصطناعيّة |
تفرّعات عصبيّة | الإدخال |
نواة الخليّة أو الجسم الخلويّ | عقد |
المشابك العصبيّة | أوزان |
المحور العصبيّ | الخرج |
المشابك العصبيّة:
هي الروابط بين الخلايا العصبيّة الطبيعيّة التي تمكّن من نقل النبضات من التفرّعات العصبيّة إلى الجسم الخلويّ، أي هي الأوزان التي تربط ما بين عقد الطبقات في الخلايا العصبيّة الاصطناعيّة، وتحدد قوّة تلك الروابط بواسطة قيمة الوزن.
التعلّم:
يحدث التعلّم في الجسم الخلويّ أو نواة الخليّة العصبيّة الطبيعيّة التي تساعد في معالجة النبضات، فيَنتج كمون العمل، وينتقل عبر المحاور العصبيّة إذا كانت النبضات قويّة بما يكفي للوصول إلى العتبة، ويتحقّق ذلك بفضل مرونة المشابك العصبيّة، والتي تمثّل قدرة المشابك على أن تصبح أقوى أو أضعف مع مرور الوقت استجابةً للتغيرات في نشاطها. أمّا في الشبكات العصبيّة الاصطناعيّة، فتستخدم تقنيّة الانتشار العكسيّ backpropagation للتعلّم، والتي تضبط الأوزان بين العقد وفقًا للخطأ أو الاختلافات بين النتائج المتوقّعة والفعليّة.
الخليّة العصبيّة الطبيعيّة | الخليّة العصبيّة الاصطناعيّة |
المرونة المشبكيّة | الانتشار العكسيّ |
التنشيط Activation:
التنشيط في الخلايا العصبيّة الطبيعيّة هو معدّل النبضات الكهربائية للخليّة العصبيّة، والذي يحدث عندما تكون النبضات قويّة بما يكفي للوصول إلى العتبة. أمّا في الشبكات العصبيّة الاصطناعيّة، تحوّل دالّة التنشيط المدخلات إلى مخرجات (وهي دالّة رياضيّة)، وتنفّذ عمليّة التنشيط.
كيف تتعلّم الشبكات العصبيّة الاصطناعيّة؟
تدرب الشبكات العصبيّة الاصطناعيّة باستخدام بيانات تدريب (مجموعة تدريب)، فمثلاً لنفترض أنّك ترغب في تعليم شبكة عصبيّة اصطناعيّة لتتعرّف على القطط، فستحتاج إلى تدريبها على آلاف الصور للقطط لتتعلّم الأنماط المخفيّة فيها، ثمّ التحقُّق ممّا إذا كانت الشبكة قادرة على تحديد صور القطط بدقّة، وذلك عن طريق اختبار قدرتها على تصنيف صور إضافيّة تزوّدها بها، وتحديد ما إذا كانت صور قططٍ أم لا، والتحقّق من النتائج التي حصلت عليها من الشبكة العصبيّة الاصطناعيّة تبعاً للمفاهيم البشريّة في توصيف القطط، فإذا أخطأت الشبكة في تحديد الصور، نستخدم تقنيّة الانتشار العكسيّ لتحسين ما تعلّمته خلال التدريب، وذلك عن طريق ضبط وزن الروابط بين وحدات الشبكة العصبيّة الاصطناعيّة بناءً على معدّل الخطأ الناتج، وتستمرّ هذا العمليّة حتّى تتمكّن الشبكة من التعرّف بدقّة على صور القطط بأقل معدّل خطأ ممكن.
ما هي أنواع الشبكات العصبيّة الاصطناعيّة؟
الشبكة العصبيّة ذات التغذية الأماميّة Feedforward Neural Network:
تعدّ إحدى أبسط الشبكات العصبيّة الاصطناعيّة، فتسلك فيها البيانات أو الدخل اتّجاهاً واحداً فقط، إذ تدخل البيانات الشبكةَ العصبيّة من خلال طبقة الإدخال، وتخرج من خلال طبقة الإخراج، وقد تحوي طبقات خفيّة أو لا، أي تنتقل البيانات في الشبكة العصبيّة ذات التغذية الأماميّة باتجاه أماميّ فقط، وعادةً لا تتضمّن عمليّة الانتشار العكسيّ.
الشبكة العصبيّة الترشيحيّة Convolutional Neural Network:
تشابه سابقتها فيما يتعلّق بتحديد أوزان للروابط بين الوحدات، أي تحديد تأثير كلّ طبقة على الأخرى، ولكنّها تتكوّن من طبقة ترشيحيّة أو أكثر، تجري كلٌّ منها عمليّات ترشيح على الدخل لترسل ناتجها (الخرج) إلى الطبقة التالية. وتستخدم هذه الشبكات في معالجة الصوت والصورة، خاصّةً في مجال رؤية الحاسب Computer Vision.
الشبكة العصبيّة ذات الوحدات Modular Neural Network:
تتكوّن من مجموعة من الشبكات العصبيّة المختلفة والمستقلّة في عملها دون أيّ تفاعل فيما بينها، إذ تستقبل كلّ شبكة مدخلات مختلفة عن البقيّة لتنفيذ مهمّة جزئيّة محدّدة. وتفيد هذه الشبكات في تجزئة أو تفكيك العمليّات الحوسبيّة الضخمة أو المعقّدة إلى عمليّات فرعيّة أصغر، وبالتالي تقليل تعقيدها للحصول على الخرج المطلوب.
شبكة دالّة القاعدة الشعاعيّة Radial basis function Neural Network:
تشتمل دالّة القاعدة الشعاعيّة على قيم تمثّل مسافات نقاط معيّنة بالنسبة للمركز، وتحتوي على طبقتين، توزَّع في الأولى منهما المدخلات على دوالّ القاعدة الشعاعيّة ضمن الطبقة المخفيّة، ثم تحسب طبقة الإخراج الناتج (الخرج) المطلوب. وعادةً ما تستخدم هذه الشبكات لنمذجة البيانات التي تمثّل اتّجاهات trends أو دوالّ معيّنة مخفيّة.
الشبكة العصبيّة التكراريّة Recurrent Neural Network:
تحفظ هذه الشبكة ناتج طبقة ما وتعيد إرساله إلى الإدخال لتوقّع نتيجة الطبقة بدقّة أكبر، وتشبه الطبقة الأولى فيها الشبكة العصبيّة ذات التغذية الأماميّة، لتبدأ الشبكة العصبيّة التكراريّة عملها بعد حساب خرج الطبقة الأولى، فبعد هذه الطبقة ستخزّن كلّ وحدة بعض المعلومات من الخطوة السابقة للتمكُّن من العمل كخليّة ذاكرة خلال تنفيذ عمليّات الحوسبة.
تطبيقات الشبكات العصبيّة الاصطناعيّة:
وسائل التواصل الاجتماعيّ:
تستخدم الشبكات العصبيّة الاصطناعيّة بكثرة في وسائل التواصل الاجتماعيّ، فلو أخذنا كمثال ميزة “أشخاص قد تعرفهم” على فيسبوك التي تقترح عليك أشخاصاً قد تعرفهم في الحياة الحقيقية حتى تتمكّن من إرسال طلبات صداقة لهم، نجد أنّ ذلك يتمّ باستخدام الشبكات العصبيّة الاصطناعيّة التي تحلّل ملفّك الشخصيّ واهتماماتك وأصدقائك الحاليّين وأصدقاءهم وعوامل أخرى مختلفة لتحديد الأشخاص الذين قد تعرفهم فعلاً.
أيضاً، من التطبيقات الشائعة للتعلّم الآليّ في وسائل التواصل الاجتماعيّ “التعرّف على الوجوه”، وذلك عن طريق تعيين حوالي 100 نقطة مرجعيّة على وجه الشخص ثمّ مطابقتها مع تلك المتاحة في قاعدة البيانات باستخدام الشبكات العصبيّة التكراريّة.
التسويق والمبيعات:
ستلاحظ عند تسجيلك الدخول إلى حساباتك ضمن مواقع التجارة الإلكترونيّة، مثل أمازون وفليبكارت، وجود توصيات شرائيّة لمنتجات متعلّقة بسجلّ تصفُّحك للموقع قبل عمليّة الدخول الأخيرة. وبالمثل، إذا كنت تحبّ المعكرونة، فسوف تظهر لك توصيات المطاعم على مواقع مثل زوماتو وسويجي وغيرها استناداً إلى ذوقك وتفضيلاتك وسجلّ طلباتك السابقة. وينطبق الشيء نفسه على جميع قطاعات التسويق الحديثة، مثل مواقع الكتب، وخدمات الأفلام، ومواقع الفنادق، وما شابه، وهذا بوساطة التسويق المُخَصَّص personalized marketing الذي يَستخدم الشبكات العصبيّة الاصطناعيّة لتحديد تفضيلات العملاء، وما يعجبهم، وما لا يعجبهم، وسجلّ التسوّق السابق، وغيرها، ثمّ تخصيص حملات التسويق وفقاً لذلك.
الرعاية الصحّيّة:
تُستخدم الشبكات العصبيّة الاصطناعيّة في علم الأورام لتدريب الخوارزميّات التي يمكنها تحديد الأنسجة السرطانيّة على المستوى المجهريّ بدقّةٍ مماثِلَةٍ للأطبّاء الممارسين، فقد تتجلّى العديد من الأمراض النادرة عبر أعراض جسديّة يمكن تشخيصها في مراحلها المبكّرة بتطبيق تقنيّة تحليل الوجوه على صور المرضى، لذا يمكن أن يعزّز توظيف الشبكات العصبيّة الاصطناعيّة بالكامل في قطاع الرعاية الصحّيّة القدرات التشخيصيّة للأطبّاء المتمرّسين؛ ممّا يؤدّي إلى تحسين الجودة العامّة للرعاية الطبّيّة في جميع أنحاء العالم.
المساعدين الشخصيّين Personal Assistants:
لا بُدَّ أنّكم سمعتم عن سيري Siri وأليكسا Alexa وكورتانا Cortana وغيرهم بسبب الهواتف المحمولة التي تستخدمونها، وهم مساعدون شخصيّون، ومثال عمليّ عن تقنيّة التعرّف على الكلام speech recognition التي تعتمد على معالجة اللغات الطبيعيّة Natural Language Processing للتفاعل مع المستخدمين وصياغة ردّ أو استجابة وفقًا لذلك. وتَستخدم معالجة اللغات الطبيعيّة الشبكات العصبيّة الاصطناعيّة المصمَّمة للتعامل مع العديد من مهام هؤلاء المساعدين الشخصيّين، مثل فهم تركيب الجمل، والدلالات اللفظيّة، والكلام الصحيح، والمحادثة الجارية مع المستخدم… إلى آخره.