كيف حصلت على شهادة مطوري TensorFlow (وكيف تحصل عليها)

صورة



في أوائل شهر مايو ، قررت الحصول على شهادة مطور TensorFlow. للقيام بذلك ، قمت بتطوير برنامج تدريبي لتحسين مهاراتي وأكملت واجبات اختبار الشهادة قبل يومين (3 يونيو). اتضح أنني نجحت في الامتحان بنجاح.



دعني أخبرك كيف فعلت ذلك ، وكيف يمكنك أن تفعل الشيء نفسه.



انتظر. ما هو TensorFlow بشكل عام؟



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



تستخدم Google TensorFlow لدعم جميع خدمات التعلم الآلي. من المحتمل أن يكون الجهاز الذي تقرأ عليه يستخدم TensorFlow بشكل أو بآخر.



عادة ما تكتب التعليمات البرمجية باستخدام TensorFlow في Python المفهومة للغاية (وهو ما يتطلب الامتحان) أو JavaScript (tensorflow.js) ، ويقوم بتشغيل عدد من الوظائف الأساسية المكتوبة في C. تقوم هذه الوظائف بالأوامر التي وصفتها سابقًا (قم بالكثير من الحسابات العددية) ...



إذن نحن الآن نعرف ما هو TensorFlow ، ولكن ما هي شهادة مطور TensorFlow؟ ولماذا قد تكون مهتمًا بها؟



ما هي شهادة مطوري TensorFlow؟



إن اعتماد مطوري TensorFlow ، كما توقعت ، هو وسيلة لإثبات قدرتك على العمل مع TensorFlow.



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



لماذا تحتاج إلى شهادة مطور TensorFlow؟



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



ولكن هناك سببان جيدان آخران:



  1. , , .
  2. .


الحديث عن أصحاب العمل المستقبليين: استنادًا إلى البيانات من صفحة Hacker News's Who's Hiring (وهي صفحة تسرد تحديدات الوظائف الشهرية لمطوري البرامج) ، يبدو أن TensorFlow متقدمًا على أطر التعلم العميق الأخرى.



صورة



مقارنة بين أطر التعلم العميق المختلفة استنادًا إلى تكرار الإشارة إليها في منشورات العمل المختلفة على صفحة Hacker News's Who's Hiring. ملاحظة: نظرًا لأن TensorFlow 2.x ، فإن Keras جزء أساسي من TensorFlow. ملاحظة 2: بسبب الظروف العالمية الحالية ، ينخفض ​​معدل التوظيف الإجمالي لأي مطور برامج.



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



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



فكيف يتم كل هذا؟



كيفية التحضير للامتحان



عندما قررت أنني مهتم ، قمت بزيارة موقع برنامج الشهادات وقراءة دليل شهادة مطور البرامج TensorFlow.



من هذين المصدرين ، قمت ببناء منهج دراسي.



يعكس المنهج ما تعلمته لتطوير المهارات المطلوبة لاجتياز الامتحان



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



من المحتمل أن يتمكن TensorFlow المخضرم أو ممارس التعلم العميق من إكمال برنامج التدريب التالي بنفس الوتيرة (إجمالي 3 أسابيع) كما فعلت (ربما أسرع).



يمكن للمبتدئ قضاء الكثير من الوقت الذي يستغرقه. تذكر أن اكتساب أي مهارة جديرة بالاهتمام يستغرق وقتًا.



لقد أدرجت التوقيت والتكلفة (بالدولار الأمريكي) ومستوى المنفعة (لاجتياز الاختبار) لكل مورد. يعتمد التوقيت على تجربتي.



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



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



1. كتيب شهادة مطور TensorFlow





الوقت: 1 ساعة.

التكلفة: مجانًا.

مستوى المنفعة: مطلوب.



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



إذا كنت جديدًا على TensorFlow وتعلم الآلة ، فمن المرجح أن تقرأه وتخشى من جميع أنواع الأشياء. لا تقلق. ستساعدك الموارد أدناه على التعرف عليك.



2. TensorFlow Coursera



الوقت: من 3 أسابيع (مستخدم متقدم) إلى 3 أشهر (مبتدئ).



التكلفة: 59 دولارًا أمريكيًا شهريًا بعد إصدار تجريبي مجاني لمدة 7 أيام ، يمكنك طلب الدعم المالي. إذا لم تتمكن من الوصول إلى Coursera ، فراجع الإصدار المجاني المكافئ على YouTube .



مستوى المنفعة: 10/10.



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



يتم تدريسه من قبل لورانس موروني وأندرو نغ ، وهما عملاقان TensorFlow وتعلم الآلة ، وإذا اضطررت إلى اختيار مورد واحد فقط للتحضير للاختبار ، فستكون هذه الدورة.



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



تلميح عن تمرين البرمجة: لا تملأ الفراغات في التعليمات البرمجية فحسب ، بل اكتب كل شيء بنفسك.



3. التعلم الآلي عن طريق Scikit-Learn و Keras و TensorFlow الإصدار الثاني .





الوقت: من 3 أسابيع (القراءة من الغلاف إلى الغلاف ، بدون تمرين) إلى 3 أشهر (القراءة من الغلاف إلى الغلاف والقيام بالتمارين).



التكلفة: تختلف الأسعار في Amazon ، لكني اشتريت النسخة الورقية مقابل 55 دولارًا. يمكن عرض جميع التعليمات البرمجية مجانًا على GitHub .



مستوى الفائدة: 7/10 (فقط لأن بعض الفصول ليست ذات صلة بالامتحان).



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



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



دعنا نطرحها بهذه الطريقة: إذا كنت ترغب في الحصول على فكرة عن جودة الكتاب ، فقد قرأت الإصدار الأول في الصباح عندما كنت أقود للعمل كمهندس تعلم الآلة. ويمكنني أن أقول أنه في أغلب الأحيان خلال يوم العمل كنت أساعد ما قرأته في الكتاب.



لا يختلف الإصدار الثاني ، باستثناء أنه تم تحديثه ليغطي أحدث الأدوات والتقنيات ، وهي TensorFlow 2.x - التي يستند إليها الاختبار.



إذا كنت بحاجة فقط إلى فصول ذات صلة بالامتحان ، فسترغب في قراءة ما يلي:



  • الفصل العاشر: مقدمة في الشبكات العصبية الاصطناعية مع Keras
  • الفصل 11: تدريب الشبكات العصبية العميقة
  • الفصل 12: النماذج المخصصة والتدريب على TensorFlow
  • الفصل 13: تحميل ومعالجة البيانات باستخدام TensorFlow
  • الفصل 14: الرؤية العميقة للكمبيوتر باستخدام الشبكات العصبية التلافيفية
  • الفصل 15: معالجة التسلسل باستخدام الشبكات العصبية المتكررة والتلافيفية
  • الفصل 16: معالجة نص اللغة الطبيعية باستخدام الشبكات العصبية المتكررة والاهتمام


ولكن بالنسبة لطالب جاد ، أقترح قراءة الكتاب بالكامل والقيام بالتمارين (ربما ليس كل شيء ، ولكن تلك التي تناسب اهتماماتك).



4. مقدمة للتعلم العميق من معهد ماساتشوستس للتكنولوجيا



الوقت: من 3 ساعات (شاهدت 3 محاضرات فقط) إلى يوم واحد (ساعة واحدة لكل محاضرة ، بالإضافة إلى ساعة للمراجعة).



التكلفة: مجانًا.



مستوى المنفعة: 8/10.



دورة تعليمية عميقة ذات مستوى عالمي من جامعة عالمية. هل نسيت أن أذكر أنه مجاني؟



تعتبر المحاضرات الثلاث الأولى والأقسام الخاصة بالتعلم العميق (نظرة عامة) والشبكات العصبية التلافيفية (التي تستخدم عادةً للرؤية الحاسوبية) والشبكات العصبية المتكررة (المستخدمة عادةً لمعالجة النصوص) هي الأكثر أهمية في الاختبار.



ولكن مرة أخرى ، سيكون من المفيد أن يكمل المستمع الدؤوب الدورة بأكملها.



تأكد من التحقق من المختبرات والرمز الذي تقدمه على GitHub ، وخاصة مقدمة TensorFlow... مرة أخرى ، لا يمكنني أن أعبر بوضوح عن أهمية الترميز الذاتي.



5. الشروع في العمل مع PyCharm





الوقت: 3 ساعات (حسب سرعة الكمبيوتر).



التكلفة: مجانًا.



مستوى المنفعة: 10/10 (مطلوب لاستخدام PyCharm).



يتم إجراء الاختبار في PyCharm (أداة تطوير Python). لم أستخدم PyCharm أبدًا قبل الاختبار ، ويُقترح أن تتعرف عليه على الأقل قبل بدء الاختبار.

للتعرف على PyCharm ، شاهدت سلسلة من مقاطع الفيديو التمهيدية على YouTube ، وكانت واضحة للغاية: "هذا ما يفعله هذا الزر".



لكن الاختبارات الرئيسية كانت تتحقق من أن TensorFlow 2.x يعمل بدون مشاكل ، بالإضافة إلى القدرة على العمل مع الشبكات العصبية العميقة في وقت معقول (لا يحتوي جهاز MacBook Pro على Nvidia GPU).



لاختبار هذه الجوانب ، قمت بنسخ البرنامجين التعليميين التاليين لـ TensorFlow إلى جهازي المحلي:



  1. تصنيف صور TensorFlow
  2. تصنيف النص باستخدام TensorFlow


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



بالإضافة إلى



فيديو من deeplearning.ai على Coursera / YouTube - يتضمن الاختبار القيام بمهام البرمجة (تحتاج إلى كتابة كود Python) ، ولكن إذا كنت تريد معرفة ما يدور وراء الكود الذي تكتبه (الجبر الخطي ، حساب التفاضل والتكامل) ، فسأبحث أشرطة الفيديو هذه كلما أمكن ذلك. على سبيل المثال ، إذا كنت لا تعرف ما هو نزول التدرج المصغر للدفعة الصغيرة ، فابحث عن "deeplearning.ai نزول التدرج المصغر للدفعة الصغيرة"



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



البرمجة باستخدام TensorFlow على YouTube (قائمة تشغيل) يتم تدريس الكثير من تخصصات TensorFlow مع Coursera في مقاطع فيديو YouTube من قبل المحاضر نفسه.



كيف استعدت للامتحان



مسلحين بالموارد أعلاه ، قمت بوضع خطة في المفهوم .



صورة



برنامج My Notion TensorFlow لإعداد الشهادات. لتتبع ما يجب القيام به ، استخدمت تقنية kanban ، بالإضافة إلى الموارد والملاحظات المختلفة. إذا اتبعت الرابط ، يمكنك عمل نسختك الخاصة بالضغط على زر "مكرر" في الزاوية اليمنى العليا.



كنت أستيقظ كل صباح خلال شهر مايو ، وكتبت ، وسرت ، وقرأت كتاب "تعلم الآلة العملي" لمدة ساعة واحدة ، وعملت مع TensorFlow عمليًا لمدة ساعتين إلى ثلاث ساعات (شاهدت المحاضرات أولاً ، ثم أجريت جميع تمارين البرمجة في Google Colab) ، في نهاية كل وحدة ، شاهدت المقدمة المقابلة لمحاضرة التعلم العميق من معهد ماساتشوستس للتكنولوجيا.



على سبيل المثال ، بمجرد انتهائي من قسم الرؤية الحاسوبية للتخصص العملي في TensorFlow ، شاهدت محاضرة حول الشبكات العصبية التلافيفية (نوع من خوارزمية رؤية الكمبيوتر) من معهد ماساتشوستس للتكنولوجيا.



أثبت هذا النهج الثلاثي فعاليته بشكل خاص.



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



للحصول على فكرة عن التوقيت ، بدأت في التحضير للامتحان في 11 مايو واجتزته في 3 يونيو.



من ملاحظتي (في المفهوم) ومن الإشارات المرجعية المكتوبة بخط اليد ، درست 20 صفحة في الساعة في المتوسط ​​وخضعت حوالي أسبوع واحد من محتوى الدورة في 2-3 ساعات من الدراسة (بدون تشتيت الانتباه).



أخيرًا ، قبل يومين من الاختبار ، قمت بتنزيل PyCharm وتأكدت من أن العديد من عينات التعليمات البرمجية التي درستها عملت على جهازي المحلي.



التفاصيل - ما يحدث أثناء الاختبار نفسه



لذا ، هل انتهيت من التدريب؟ ماذا الآن؟



حسنًا ، لنبدأ بعاملين مهمين.



تكلفة الاختبار: 100 دولار (بعد محاولة فاشلة ، سيتعين عليك الانتظار لمدة أسبوعين للمحاولة مرة أخرى ، مع كل محاولة فاشلة ، سيزداد وقت الانتظار).



الوقت: 5 ساعات. لولا الخطأ في بداية الامتحان ، لقلت إنني سوف أجتازه بهدوء في 3 ساعات. ومع ذلك ، يجب أن يمنحك الحد الزمني المتزايد وقتًا كافيًا لتدريب نماذج التعلم العميق على جهاز الكمبيوتر الخاص بك (لذا تأكد من عمل كل شيء قبل بدء الاختبار).



كيف يعمل الامتحان



لن تكشف الكثير هنا لأنه سيكون غير أمين. كل ما أود قوله هو قراءة مرجع TensorFlow Developer's وسيكون لديك فهم واضح للأقسام الرئيسية في الاختبار.



مارس كل من التقنيات المذكورة في الدليل (باستخدام الموارد المذكورة أعلاه) وستكون جاهزًا.



الفروق الدقيقة في الامتحان



التدريب على النماذج - إذا لم يتمكن جهاز الكمبيوتر الخاص بك من تدريب نماذج التعلم العميق بسرعة (جزء من معايير التقييم هو عرض النماذج المدربة) ، فيمكنك تدريبها في Google Colab باستخدام وحدة معالجة رسومات سحابية مجانية ، ثم تنزيلها عن طريق وضعها في الكتالوجات المناسبة للاختبار و إرسال عبر PyCharm.



My Broken Python Interpreter - تؤكد مادة التحضير للامتحان أن Python 3.7 مطلوب لاجتياز الاختبار. عندما بدأت كان لدي بايثون 3.7.3. ولسبب ما ، على الرغم من حقيقة أن TensorFlow عمل في اليوم السابق على جهازي المحلي باستخدام PyCharm ، بعد الاختبار (الذي يخلق تلقائيًا بيئة TensorFlow لك) ، فقد انهار كل شيء.



وبالتحديد ، في كل مرة قمت فيها بتشغيل سطر واحد على الأقل من كود TensorFlow ، تلقيت خطأ:



RuntimeError: dictionary changed size during iteration


لست متأكدا الآن ما إذا كان هذا هو إصدار TensorFlow الذي قام الاختبار بتثبيته (2.0.0) أو الإصدار المحدد من Python الذي كان لدي (3.7.3).



ومع ذلك ، بعد بعض اللعنات والبحث المضطرب في أعماق سلسلة المشكلات القديمة على GitHub ، صادفت إصلاحًا غريبًا يعني أنني سأضطر إلى تغيير شفرة المصدر لإصدار Python الذي كنت أستخدمه (على وجه التحديد السطر 48 من lincache.py ) ...



# Previous line 48 of lincache.py
for mod in sys.modules.values():
# Updated line 48 of linecache.py
for mod in list(sys.modules.values()): # added list()


ملاحظة: هذا حل سريع ، حيث تم استخدامه فقط طوال فترة الاختبار ، لذلك لست متأكدًا مما إذا كان له أي مزايا طويلة المدى أو إذا كان يؤدي إلى أي عواقب.



أثناء البحث المحموم ، قرأت أيضًا أن البديل هو تحديث / إعادة تثبيت إصدار TensorFlow الذي تستخدمه في PyCharm (على سبيل المثال ، 2.0.0 -> 2.2.x). لقد جربته ولم ينجح ، ولكن بصفتي مبتدئًا في PyCharm ، أعترف أنني كنت مخطئًا بشأن شيء ما كمستخدم.



بعد التصحيح ، تمكنت من إنهاء الاختبار دون أي مشاكل.



ماذا يحدث بعد الانتهاء من الامتحان



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



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



إذا نجحت ، مبروك!



تأكد من ملء النموذج في البريد الإلكتروني للتأكد من إضافتك إلى شبكة مطوري TensorFlow المعتمدين.



بعد اجتياز الاختبار وإكمال النموذج في رسالة التأكيد الإلكترونية ، من المفترض أن تتمكن من الوصول إلى شبكة شهادات Google Developers في غضون أسبوعين .



صورة



ملاحظة: في وقت كتابة هذا التقرير ، لم أكن هناك بعد. سوف يستغرق 1-2 أسابيع.



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



أخيرًا ، في غضون أسبوعين ، ستستلم شهادة رسمية وشارة مطور TensorFlow عبر البريد الإلكتروني (لم أتلق بعد). ستتمكن من إضافتهم إلى المشاريع التي عملت عليها.



الأسئلة



هل يمكنني فقط أن آخذ دورات ، وأقرأ كتابًا وأتدرب بمفردي ، هل أحتاج حقًا إلى شهادة؟



بالتأكيد تستطيع. في نهاية اليوم ، يجب أن تهدف إلى المهارات ، وليس الشهادات. الشهادة جيدة ، لكنها ليست مطلوبة.



إذا قلت أن الشهادة ليست مطلوبة - فلماذا حصلت عليها؟



أحب أن أواجه تحديًا وأعمل من أجل مواجهته. لم يترك لي موعد (على سبيل المثال ، "سأجتاز امتحاني في 3 يونيو") أي خيار سوى الدراسة.



هل يمكنني القيام بذلك بموارد مجانية؟



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



لماذا لا PyTorch؟



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



لا أعرف شيئًا عن التعلم الآلي ، أين يمكنني البدء؟



اقرأ المقال"5 خطوات للتعلم الآلي للمبتدئين . "



لقد اجتزت الاختبار وسجلت في شبكة شهادات Google Developers ، فماذا أفعل بعد ذلك؟



حان الوقت لخلق! استخدم المهارات التي تعلمتها لإنشاء ما ترغب في رؤيته في العالم. ولا تنس مشاركة عملك ، فأنت لا تعرف أبدًا من سيرى ذلك.



لم يذكر شيء؟ لا تتردد في ترك التعليقات أو طرح الأسئلة عبر البريد الإلكتروني. وسأجيب.



PS ، إذا كنت تفضل مشاهدة مقاطع الفيديو ، فقد قمت بعمل نسخة فيديو من هذه المقالة.





صورة



تعرف على تفاصيل كيفية الحصول على مهنة رفيعة المستوى من الصفر أو المستوى الأعلى في المهارات والراتب من خلال الحصول على دورات SkillFactory المدفوعة عبر الإنترنت:











All Articles