مهندسو التعلم الآلي: الخرافات مقابل الحقائق

نشرت: 2018-05-08

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

جدول المحتويات

هل مهندسو التعلم الآلي علماء بيانات؟

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

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

  • لديهم مهارات هندسة برمجيات أقوى من محللي / علماء البيانات النموذجيين. يعمل مهندسو التعلم الآلي مع المهندسين المسؤولين عن صيانة أنظمة الإنتاج. ومن ثم ، فهم بحاجة إلى فهم منهجية تطوير البرمجيات ، والممارسات الرشيقة ، وأحدث أدوات تطوير البرمجيات. يجب أن يكونوا شاملين مع كل شيء من IDEs مثل Eclipse أو IntelliJ إلى مكونات خط أنابيب نشر البرامج.
  • يركز مهندسو التعلم الآلي على جعل منتجات البيانات تعمل في الإنتاج. نتيجة لذلك ، فهم شموليون في نهجهم. إنهم يشكلون جزءًا أساسيًا من أي فريق تطوير برمجيات ، ومن ثم فهم يعرفون ما هو اختبار أ / ب. إنهم لا "يفهمون" ذلك فحسب ، بل يعرفون أيضًا كيفية إجراء اختبار A / B على أنظمة الإنتاج. إنهم يفهمون أهمية التسجيل والأمان لمصير أي تطبيق.
  • إنهم على أصابع قدمهم عندما يتعلق الأمر بمراقبة منتجات البيانات في الإنتاج. على الرغم من وجود العديد من الموارد لأتمتة عملية مراقبة التطبيق ، فإن متطلبات التعلم الآلي تذهب إلى أبعد من ذلك. يمكن أن تصبح خطوط أنابيب البيانات أو النماذج أو الخوارزميات أو حتى الأنظمة قديمة وتحتاج إلى إعادة تدريب. يمكن تشويه نظام التعلم الآلي بسهولة عن طريق تعريض خطوط أنابيب البيانات التي تغذيه للخطر. ومن ثم ، يحتاج مهندسو التعلم الآلي دائمًا إلى معرفة كيفية اكتشاف هذه التنازلات.
الشبكات العصبية للدمى: دليل شامل

بعض المهارات اللازمة لمهندس تعلم آلي ناجح:

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

الخرافة الأولى: مهندسو التعلم الآلي يجعلون الأنظمة تفكر تمامًا مثل البشر.

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

الخرافة الثانية: جميع البيانات مفيدة لمهندسي التعلم الآلي.

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

الخرافة الثالثة: يتجاهل مهندسو التعلم الآلي المعرفة الموجودة مسبقًا.

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

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

تعلم دورة ML عبر الإنترنت من أفضل الجامعات في العالم. احصل على درجة الماجستير أو برنامج PGP التنفيذي أو برامج الشهادات المتقدمة لتسريع مسار حياتك المهنية.

هل الرياضيات أمر لا بد منه لمهندسي التعلم الآلي؟

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

هل يحتاج علماء البيانات إلى التعلم الآلي؟

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

ما هي لغة الترميز التي يفضلها مهندسو ML؟

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