التفكير السطحي والعام حول الشبكات العصبية

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

الصورة

حول الشبكات العصبية (فيما يلي - NS) هناك الكثير من الضجيج الآن. لذلك قررت أن أصنع بعض المنتجات على أساسها. وسأل نفسه: ما الذي أحتاجه لذلك؟ وأجاب نفسه (نعم ، أحب التحدث مع شخص ذكي): هناك حاجة إلى ثلاثة أشياء - المعرفة في مجال الشبكات العصبية ، وبيانات التدريب والأجهزة التي يتم من خلالها تدريب شبكة عصبية. بالمناسبة ، بعد أن سمعت كم عدد المتحدثين على يوتيوب تحدثوا عن حقيقة أن هذه الأشياء هي سبب نهضة NS: الخوارزميات المحسنة (المعرفة) ، وتوافر كمية كبيرة من البيانات وقدرات أجهزة الكمبيوتر الحديثة (الأجهزة). مثل هذه المصادفة لأفكاري وكلمات الخبراء مشجعة ، لذلك ، سأتحدث أيضًا عن هذه الأشياء الثلاثة: البيانات والمعرفة والأجهزة.

البيانات


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

الاستطراد الغنائي
بالطبع ، من نواح عديدة ، هذه الضجيج والفقاعة حول NS هي تأثير الموضة ، الفيروسية ، الاسم الرومانسي ، التشابه مع الدماغ وحلم الذكاء الاصطناعي القوي. في الواقع ، ستوافق على أنه إذا كانت هذه التقنيات تسمى "Matrix Multiplication and Parameter Optim عن طريق Gradient Descent Method" ، فإن كل هذا سيبدو أقل إثارة للإعجاب ، وربما لن يجذب الكثير من الاهتمام. سيجادل البعض في أنه ، بحق الجحيم ، بالاسم ، ليس فقط بسبب الاسم الذي يحظى بشعبية كبيرة ، بل يتسببون أيضًا في تأثير رائع - انظروا ما تفعله هذه الشبكات ، لقد فازوا في الحال! حسنًا ، ولكن عندما فازت منظمة العفو الدولية بالشطرنج ، بدأ عدد قليل من الأشخاص يعبدون البحث بعمق ولم يكتب الصحفيون أن A-star سيسيطر على العالم ، ولم يدرسه المبرمجون بكميات كبيرة.

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

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

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

  2. يجب توزيع البيانات بالتساوي ، مهما كان ذلك. هذا يعني أنه إذا كان لديك حتى ملايين البيانات التي تحتوي على معلومات حول bmw و dodge ، ولكن لا توجد معلومات تقريبًا عن Ford و Mazda ، فلن تتمكن الجمعية الوطنية من تلخيص البيانات بشكل كافٍ ، والأسوأ من ذلك أنها ستضخم الأسعار أو ترسم المصابيح الأمامية المستديرة و نظرة عدوانية.

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

المعرفة


في الجمعية الوطنية ، هناك الكثير من المعلمات المفرطة التي تؤثر بشدة على سرعة العمل والتقارب من حيث المبدأ. يمكنك إعادة التدريب ، والالتزام بحد أقصى محلي ، وتمارين التدريب لأسابيع وأكثر. ستكتسب معرفة معمارية NS ، ومبادئ التشغيل ، وأنت مبرمج. هناك عدد كبير من الأطر للتعلم الآلي - مثل theano و tensorflow وغيرها. لكن تحديد معلمات مثل سرعة التعلم واختيار اللحظة واختيار التنظيم ومعلماته واختيار وظيفة التنشيط وغيرها الكثير هي عملية تجريبية تستغرق الكثير من الوقت. بسبب عدم وجود استراتيجية دقيقة والحاجة إلى تكوين واختيار المعلمات يدويًا لكل مهمة ، يدعو الكثيرون عملية تعلم فن NS.

الموارد


تحتاج إلى معالجة ملايين الأمثلة عدة مرات ، وعدد كبير من المرات: لقد أعطيت أمثلة ، وعدلت NS الأوزان قليلاً ، وأعطيت نفس الأمثلة مرة أخرى ، وعدلت NS الأوزان مرة أخرى - وهناك العديد من "العصور". إذا كنت تستخدم التحقق المتبادل ، فأنت أيضًا تعطي البيانات لأقسام مختلفة في عينات التدريب والتحقق بحيث لا تتراجع NS عن نفس البيانات.

ما هي الموارد تقريبًا التي يمكنك تحملها؟ أردت شراء جهاز كمبيوتر متطور يعتمد على Kaby Lake 7700K (أو Razen 1800X) مع بطاقتي رسومات NVidia GTX 1080 تعملان معًا باستخدام SLI. وفكرة أن أدائها كان مساوياً لأداء الحواسيب الفائقة التي تبلغ من العمر عشر سنوات من قائمة Top500 دفعت روحي. كم من الوقت يستغرق تدريب الجمعية الوطنية على ذلك؟ يعتمد هذا بالطبع على بنية الشبكة (عدد الطبقات ، عدد الخلايا العصبية في الطبقات ، الاتصالات) ، عدد الأمثلة للتدريب ، والمعلمات الفائقة. لكن ما أدهشني هو أنني قضيت عدة ساعات في موقع playground.tensorflow.org حتى تتمكن شبكة صغيرة من تصنيف النقاط بشكل صحيح في حلزوني في مساحة ثنائية الأبعاد. بعدين فقط ، ليس الكثير من البيانات ، ولكن الكثير من الوقت. قضى الفائز في مسابقة ImageNet أسبوعًا في تعلم الشبكة باستخدام بطاقتي فيديو ، وكان يعرف الكثير عن المعلمات المفرطة. بالكاد تشتري حتى عشرة خوادم. هل لديك الصبر لدراسة NA؟

ملخص : يبدو لي أنه في المنزل يمكنك حل بعض المشاكل بمساعدة الجمعية الوطنية.

  • يمكن أن يكون حجم عينة التدريب مساوياً لمئات الآلاف من الأمثلة.
  • يمكنك تحقيق دقة حوالي 80-90٪.
  • قد يستغرق تدريب NS عدة أيام.

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

شكرا لكم على اهتمامكم!

Source: https://habr.com/ru/post/ar402125/


All Articles