المعلوماتية > الذكاء الصنعي

الشبكات العصبونية

وصلنا في سلسلة الذكاء الصنعي إلى أحدِ أهمِّ الأقسام، و التي تَبرُزُ فيها سمة الذكاء في النظام الذي نطوّره.

إننا نقوم ببناء الكثير من الأنظمة التي تُساعدنا على اتخاذ القرار تبعاً لمعلوماتٍ وقواعدَ قُمنا بتخزينها مُسبقاً في النظام، لذلك أصبح ممكناً للحاسوب أن يساعدَنا في اتّخاذ القرار الأنسب وهو ما تحدَّثنا عنه سابقاً ضمن السلسلة.

لكن ماذا لو أردنا لهذا النظام "الذكي" أن يتعلَّم بالفعل، وأن يكتسب خبراتٍ جديدةً لم نَقُم نحنُ بتخزينها فيه أو بتلقينه إياها؟

هُنا تبرُزُ أحدُ أهمِّ البُنى في مجال الذكاء الصنعي وهي الشَّبكات العصبونية الصُّنعية.

هل يبدو الاسم مألوفاً؟ نعم إنها عصبوناتٌ صُنعيةٌ تُشبه العصبونات (الخلايا العصبية) الموجودة في جهازنا العصبي وبالأخص في دماغنا.

إنّ ما يحدث في دماغنا كنشاطٍ دائم هو نشاطٌ كهربائيٌّ كيميائيٌّ بين شبكةٍ من خلايا الدماغ والتي تُدعى بالخلايا العصبية أو العصبونات، وبناءً على ذلك اتّجه علم الذكاء الصنعي إلى بناء شبكاتٍ عصبونيةٍ صُنعيةٍ تُحاكي الدِّماغ البشري.

لقد برزت فكرةُ تصنيفِ المعلوماتِ في الذّكاء الصنعيِّ من وجودِ مجموعةٍ من المعلوماتِ التي يُمكنُ تمثيلُها بشكلِ نقاط، كأنْ يكون لدينا مجموعةٌ من النّقاط التي تربُطُ بين حجم المنزل وسعرِه. فلو قُمنا برسمِ هذه النّقاط بأن يكونَ محورُ السّيناتِ هو حجمُ المنزل، ومحورُ العينات هو سعرُه، فإنَّ تصنيف هذه النقاط ما هو إلا إيجاد الخطِّ المستقيم الذي يقسِمها إلى مجموعات، و هذا ما يُدعى بالانحدار الخطِّي Linear Regression كما نُشاهد في الشكل التالي:

يُمكن لشبكةٍ عصبونيةٍ مؤلَّفةٍ من عصبونٍ واحدٍ القيامَ بهذه المهمة! إذ يقوم العصبون بإيجاد معادلةِ هذا المستقيم الذي يفصلُ بين البيانات المُدخَلَة، حتى نتمكَّنَ من فهم آلية عمل هذه الشبكات، سنقوم باستعراض مكوِّناتِها.

ممَّ تتألَّف هذه الشّبكات؟

تتألّف الشبكات العصبونية الصنعية من وحداتٍ مرتبطةٍ مع بعضِها البعض عبرَ وصلات؛ إذ تُستخدَم هذه الوصلات لنقل النّشاط بين هذه الوحدات، وتملكُ كلُّ وصلةٍ ثِقَلاً معيَّناً Weight يزداد بازدياد قوة الاتصال بين الوحدتين المرتبطتين عبر هذه الوصلة. تتوضَّعُ المعلومات التي نريد معالجتَها عند الطبقة الأولى من الوحدات، و قد يكون خَرْجُ كلِّ عصبونٍ دَخْلاً لعصبونٍ آخر، كما تملكُ كلُّ وحدةٍ دَخْلاً وهميَّاً تساوي قيمتُه الواحد، ينتقلُ عبر وصلةٍ مثقّلة بثقلٍ بدئيٍّ كذلك.

بعدها يتمُّ بناءُ الشبكة عبر ربطِ عددٍ من هذه العصبونات ببعضها، وهنا يُمكن تمييزُ طريقتين مختلفتين للقيام بذلك:

- شبكة التغذية إلى الأمام: و فيها تَستقبِل كلُّ وحدةٍ المعلوماتِ من الوحداتِ السابقة وتُوصلُها للوحداتِ التالية فلا يُمكن أن تعود المعلوماتُ بالاتجاه المعاكس.

- شبكة متكرّرة: وفيها بعد أن تتمَّ معالجةُ المعلومات يتمُّ إعادة إدخالِها من جديدٍ إلى الوحدات لتتمَّ مُعالجتُها مرَّةً أُخرى. لاحظ أنّه وفي هذه الحالة، فإنها تشبه الذاكرة قصيرة الأمد في دماغنا.

هل تصطفُّ كافّة الوحداتِ على سويَّةٍ واحدة؟

في شبكات التّغذية إلى الأمام، عادةً يتمُّ ترتيبُ الوحداتِ في طبقات، إذ تستلمُ الوحداتُ المعلوماتِ من الوحداتِ في الطّبقة السابقة.

قد تتكوّن الشبكة من طبقةٍ من الوحدات تصلُ الدخلَ بالخرج وتُدعى بالشّبكة ذاتِ الطبقة الواحدة، أو قد تتضمنُ عدةَ طبقاتٍ من الوحدات وتُسمى بالطبقاتِ الخفيّة. سوف نتحدث عن كِلا النوعين من الشبكات.

كيف تتعلّم الشبكات العصبونية؟

إن الشكل الكلاسيكي لمعالجة المعلومات ينصُّ على: إدخالِ المعلومات -> معالجتِها -> إخراجِها، وهكذا يتمُّ جمعُ جداء كل معلومةٍ مُدخَلةٍ بثقل الوصلةِ التي توصلها إلى قسم الدخل في العصبون (الوحدة)، ليتشكّل لدينا المدخلُ الكُلّي لهذه الوحدة، وهو يعبّر عن المعلومات التي نُريد معالجتَها. أمّا المعالجة، فتتمُّ عبر تطبيقِ تابعٍ معيّنٍ يُدعى بتابع التفعيل وبنتيجته نحصلُ على الخرج.

تمثّل هذه البنيةُ وحدةَ العصبون الذي يقوم ببساطةٍ بمعالجةِ المعلومات المُدخَلَة عبر تابعٍ معين.

إذاً تدخل المعلومات إلى هذه الشبكات، ثم تتمُّ معالجتُها عبر التّوابع المُستَخدَمة وعبر الأوزان الّتي تملكُها الوصلاتُ بين الوحدات؛ فأين يكمن عامل التعلُّم الذي تحدَّثنا عنه منذ البداية؟ هل تتعلّم هذه البنى وتتحسّن فعلاً وكيف؟

بعد أن نحصل على الخرْجِ من الشبكة، يتم حساب الخطأ في النتيجة ثم يتمّ تعديل الأوزان التي تم اختيارها للوصلاتِ بين الوحدات (العصبونات) وتُدعى هذه العملية بنشر الخطأ إلى الخلف back-propagation. بهذه الطريقة تتعلم الشبكة ويتحسّن أداؤها.

أمثلةٌ على استخدام الشبكات العصبونية:

تُستخدم هذه الشبكاتُ عادةً لأغراض التصنيف، تخيّل لو كنتَ تملك مجموعةً من الصور الشعاعيّة وتريدُ تصنيفها مَرَضيّاً. عندها يُمكن بناءُ شبكةٍ عصبونيةٍ صُنعيةٍ وتدريبُها عبر مجموعةٍ من الصور المصنّفة مسبقاً، فإنَّ الشّبكة ستكون قادرةً على استخراجِ المميزاتِ التي تصنِّف كلَّ صورةٍ إلى المرض الموافق، وعبر تقنيةِ تعديلِ الأوزان سوف يتحسّن أداؤها عبر التدريب، عندما نستخدمُها لتصنيف الصور الشعاعية الجديدة سوف تتمكنُ من تصنيفها بناءً على المعايير التي استخرَجَتْها من صور التدريب.

تتنوعُ الشبكاتُ العصبونية باختلاف التّوابع المُستَخدَمة فيها وعددِ طبقاتها ووحداتِها لكنّها تبقى بنيةً فعّالةً في عالم الذكاء الصنعي محاولةً أن تحاكي عمل الدماغ البشري، هناك المزيدُ عن أسرار هذا العالم سنُتابعها في مقالاتنا القادمة.

المصدر:

Russel،S. and Norvig، P. ،Artificial Intelligence A Modern Approach، Third Edition.

هنا