كيف يتم تطبيق الجبر الخطي في التعلم الآلي

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


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


باختصار ، يمكنك استخدام الجبر الخطي للتعلم الآلي على 3 مستويات مختلفة:


  • تطبيق نموذج على البيانات ؛
  • تدريب النموذج ؛
  • فهم كيف يعمل أو لماذا لا يعمل.

رسم

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


التطبيق


ما يفعله تعلُم الآلة عادةً هو ملاءمة بعض الوظائف fW(X)=H ، أين X هي بيانات الإدخال ، H هو بعض التمثيل المفيد لهذه البيانات ، و W هي معلمات إضافية ، تعتمد عليها وظيفتنا والتي يجب تعلمها. عندما يكون لدينا هذا التمثيل H ، يمكننا استخدامه على سبيل المثال لإعادة بناء البيانات الأصلية X (كما في التعلم غير الخاضع للرقابة) ، أو للتنبؤ بقيمة ذات فائدة ، Y (كما في التعلم تحت الإشراف).


كل X ، H ، W و Y عادة ما تكون صفائف رقمية ، ويمكن تخزينها على الأقل كمتجهات ومصفوفات. لكن التخزين وحده ليس مهما. الشيء المهم هو أن وظيفتنا f غالبًا ما تكون خطية ، أي H=XW . أمثلة على هذه الخوارزميات الخطية هي:


  • الانحدار الخطي Y=H . إنه خط أساس معقول لمشاكل الانحدار ، وأداة شائعة للإجابة على أسئلة مثل "يفعل x يؤثر y وأشياء أخرى متساوية؟ "
  • الانحدار اللوجستي أين Y=softmax(H) . إنها خط أساس جيد لمشاكل التصنيف ، وأحيانًا يصعب التغلب على خط الأساس هذا.
  • تحليل المكون الرئيسي ، أين H هو مجرد تمثيل منخفض الأبعاد للأبعاد عالية X من الذي X يمكن استعادتها بدقة عالية. يمكنك التفكير في الأمر على أنه خوارزمية ضغط.
  • يتم استخدام خوارزميات أخرى شبيهة بـ PCA (تحليلات المصفوفة) على نطاق واسع في أنظمة التوصية ، لتحويل مصفوفة متفرقة جدًا من "أي المنتجات التي تم شراؤها من قبل المستخدمين" إلى تمثيلات مضغوطة وكثيفة للمستخدمين والمنتجات ، والتي يمكن استخدامها أيضًا للتنبؤ بجديد المعاملات.

تتعلم الخوارزميات الأخرى ، مثل الشبكة العصبية ، التحولات غير الخطية ، ولكنها لا تزال تعتمد بشكل كبير على العمليات الخطية (أي مصفوفة المصفوفة أو مضاعفة ناقلات المصفوفة). قد تبدو شبكة عصبية بسيطة Y= sigma(W2 sigma(W1X)) - يستخدم مضاعفات المصفوفة وتحويل غير خطي  سيجماسيجما بينهما.


تدريب


لتدريب خوارزمية ، تقوم عادة بتعريف دالة الخسارة ومحاولة تحسينها. تكون الخسارة نفسها ملائمة أحيانًا للكتابة من حيث الجبر الخطي. على سبيل المثال ، يمكن كتابة الخسارة التربيعية (المستخدمة في طريقة المربعات الصغرى) كمنتج نقطي (Y hatY)T(Y hatY) ، أين  hatY هو ناقل تنبؤك ، و Y هي الحقيقة الأساسية التي تحاول التنبؤ بها. هذا التمثيل مفيد ، لأنه يمكّننا من استنباط طرق لتقليل هذه الخسارة. على سبيل المثال ، إذا كنت تستخدم الانحدار الخطي باستخدام طريقة المربعات الصغرى هذه ، فسيبدو الحل الأمثل لك W=(XTX)1XTY . الكثير من العمليات الخطية في مكان واحد!


مثال آخر على الحل الخطي هو PCA ، حيث المعلمات ذات الاهتمام W هي الأولى k المتجهات الذاتية للمصفوفة XTX ، المقابلة لأكبر القيم الذاتية.


إذا قمت بتدريب الشبكات العصبية ، فليس هناك عادةً حل تحليلي للمعلمات المثلى ، وعليك استخدام نزول التدرج. للقيام بذلك ، تحتاج إلى التفريق بين الخسارة في المعلمات ، وأثناء ذلك ، عليك مضاعفة المصفوفات مرة أخرى ، لأنه إذا خسارة $ = f (g (h (w))) $ (دالة مركبة) ، ثم  frac جزئيالخسارة جزئيw=f timesg timeshجزئيالخسارةجزئي ، وجميع هذه المشتقات هي مصفوفات أو ناقلات ، لأن g و h هي متعددة الأبعاد.


نزول التدرج البسيط على ما يرام ، لكنه بطيء. يمكنك تسريعها ، من خلال تطبيق طرق التحسين النيوتونية. الطريقة الأساسية هي Wt+1=WtA1B ، أين B و A هي ناقلات المشتقات الأولى ومصفوفة المشتقات الثانية لخسارتكم W . ولكن يمكن أن يكون غير مستقر و / أو مكلفًا حسابيًا ، وقد تحتاج إلى التوصل إلى تقديرات تقريبية (مثل L-BFGS) تستخدم الجبر الخطي الأكثر مشاركة لتحسين سريع ورخيص.


التحليل


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


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


الخلاصة


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


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


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


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


PPS لماذا بالإنجليزية؟! حسنًا ، لمجرد أنني أستطيع. تم طرح السؤال الأصلي بهذه اللغة ، وأجبته بالإنجليزية. ثم قرر أن الإجابة يمكن أن تصل إلى مستوى مقال عام صغير.


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


دعنا نرى ما يحدث.

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


All Articles