كيف درس مهندس الطاقة الشبكات العصبية ومراجعة الدورة التدريبية المجانية "Udacity: Intro to TensorFlow for Deep Learning"

طوال حياتي الواعية ، كنت مهندس طاقة (لا ، الآن نحن لا نتحدث عن مشروب ذو خصائص مشكوك فيها).

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

بالكلمات ، بدا الأمر بسيطًا جدًا ، وقررت لماذا لا تتقن هذا الفن السحري من أجل تطبيقه في مجال نشاطي.

في هذه المقالة ، سأغفل محاولاتي لتعلم أساسيات Python وأشارك معك انطباعي عن دورة TensorFlow المجانية من Udacity.



المقدمة


بادئ ذي بدء ، تجدر الإشارة إلى أنه بعد 11 عامًا في قطاع الطاقة ، عندما تعرف وتستطيع أن تفعل كل شيء وحتى أكثر قليلاً (من حيث المسؤوليات) ، فإن تعلم أشياء جديدة جذريًا - من ناحية ، يسبب حماسة شديدة ، ولكن من ناحية أخرى - يتحول إلى ألم جسدي " التروس في الرأس ".

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

قبل الانتقال إلى مراجعة الدورة التدريبية ، سأقول أنها ستحتاج على الأقل إلى حد أدنى من المعرفة بـ Python لدراستها. يمكنك قراءة كتابين للدمى (ما زلت بدأت في أخذ دورة في Stepic ، لكنني لم أتقنها بعد).

لن تكون هناك تركيبات معقدة في دورة TensorFlow نفسها ، ولكن سيكون من الضروري فهم سبب استيراد المكتبات ، وكيفية تعريف الوظيفة ، ولماذا يتم استبدال شيء ما بها.

لماذا TensorFlow و Udacity؟


كان الهدف الرئيسي من تدريبي هو الرغبة في التعرف على صور لعناصر التركيبات الكهربائية باستخدام الشبكات العصبية.

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

حاولت أن أبدأ التعلم من البرنامج التعليمي الرسمي .

ثم واجهت مشكلتين.

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



بعد أن بحثت عن موقع رسمي ، وجدت توصيات لأخذ واحدة من دورتين على الإنترنت .

كما أفهمها ، تم دفع الدورة التدريبية في Courcera ، ويمكن أخذ الدورة Udacity: مقدمة إلى TensorFlow for Deep Learning "مجانًا ، أي بدون مقابل".

محتوى الدورة


تتكون الدورة من 9 دروس.

القسم الأول هو قسم تمهيدي ، سيخبرونك عن سبب الحاجة إليه من حيث المبدأ.

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

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

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

تمت الترجمة بجودة عالية ، كما تم ترجمة دفاتر Colab ، لذلك في وقت لاحق نظرت إلى كل من الأصل والترجمة.

الدرس رقم 3 ، في الواقع ، هو ترتيب مواد البرنامج التعليمي الرسمي TensorFlow. نتعلم في هذا الدرس كيفية تصنيف صور الملابس باستخدام مجموعة بيانات Fashion MNIST باستخدام شبكة عصبية متعددة الطبقات.

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

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

يكمل جميع الدرس رقم 9 ، وهو دعوة لأخذ دورة مجانية على TensorFlow lite.

ما اعجبني ولم يعجبني


سأبدأ بالإيجابيات:

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

الآن السلبيات:

  • لا توجد مواد تحكم فعليًا. لا اختبارات ، لا مهام ، لا شيء على الأقل للتحقق من الدورة بطريقة أو بأخرى
  • لم تعمل جميع أجهزة الكمبيوتر المحمولة بالنسبة لي كما ينبغي. في رأيي ، في الدرس الثالث من دورة اللغة الإنجليزية الأصلية ، أخطأ كولاب ، ولم أكن أعرف ماذا أفعل به
  • . , Udacity . , , , . . 6
  • , , . (, Max Pooling).


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

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

لكن بشكل عام ، الدورة مفيدة. يظهر ما يمكن فعله باستخدام TensorFlow وفي أي اتجاه للتحرك.

أعتقد ، بالنسبة للمبتدئين ، أنني بحاجة إلى تعلم أساسيات Python وقراءة الكتب باللغة الروسية حول كيفية عمل الشبكات العصبية ، ثم التعامل مع TensorFlow.

في الختام ، أود أن أقول شكراً لأصدقائي لدفعهم لي لكتابة المقال الأول عن "هبر" والمساعدة في ترتيبه.

ملاحظة: سأكون سعيدًا بتعليقاتك وأي نقد بناء.

All Articles