كيف يتم تطبيق الانحدار الخطي لتعلم الآلة؟



تتناول هذه المقالة مفهوم الانحدار الخطي للتعلم الآلي بمصطلحات مختلفة وحالة استخدام لتنفيذ الانحدار الخطي.

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

ما هو الانحدار؟

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





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

مثال الانحدار الخطي في التعلم الآلي - edureka

أنواع الانحدار

فيما يلي أنواع الانحدار.



  1. الانحدار الخطي البسيط
  2. الانحدار متعدد الحدود
  3. دعم الانحدار المتجه
  4. انحدار شجرة القرار
  5. الانحدار العشوائي للغابات

الانحدار الخطي البسيط

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

الانحدار متعدد الحدود

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

دعم الانحدار المتجه

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



جافا كيفية استخدام هذا

انحدار شجرة القرار

إلى يمكن استخدامها لكل من الانحدار و . في حالة الانحدار ، نستخدم خوارزمية ID3 (Iterative Dichotomiser 3) لتحديد عقدة الانقسام عن طريق تقليل الانحراف المعياري.

الانحدار العشوائي للغابات

في الانحدار العشوائي للغابات ، نقوم بتجميع تنبؤات العديد من انحدارات شجرة القرار. الآن بعد أن عرفنا أنواعًا مختلفة من الانحدار ، دعونا نلقي نظرة على الانحدار الخطي البسيط بالتفصيل.

ما هو الانحدار الخطي؟

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

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

مصطلحات الانحدار الخطي

من المهم أن تكون على دراية بالمصطلحات التالية قبل الانتقال إلى خوارزمية الانحدار الخطي.

دالة التكلفه

يمكن أن يعتمد أفضل خط ملائم على المعادلة الخطية الواردة أدناه.

  • يتم الإشارة إلى المتغير التابع الذي سيتم التنبؤ به بواسطة Y.
  • يتم الإشارة إلى الخط الذي يلمس المحور الصادي بالتقاطع ب0.
  • بواحدهو ميل الخط ، x يمثل المتغيرات المستقلة التي تحدد توقع Y.
  • يتم الإشارة إلى الخطأ في التنبؤ الناتج بواسطة e.

توفر دالة التكلفة أفضل القيم الممكنة لـ b0وبواحدلعمل أفضل خط ملائم لنقاط البيانات. نقوم بذلك عن طريق تحويل هذه المشكلة إلى مشكلة تصغير للحصول على أفضل القيم لـ b0وبواحد. يتم تقليل الخطأ في هذه المشكلة بين القيمة الفعلية والقيمة المتوقعة.

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

يُعرف أيضًا باسم MSE (متوسط ​​الخطأ التربيعي) ، ونقوم بتغيير قيم b0وبواحدبحيث يتم تسوية قيمة MSE عند الحد الأدنى.

نزول متدرج

المصطلحات المهمة التالية لفهم الانحدار الخطي هي نزول متدرج. إنها طريقة لتحديث ب0وبواحدالقيم للحد من MSE. الفكرة وراء ذلك هي الاستمرار في تكرار b0وبواحدالقيم حتى نخفض MSE إلى الحد الأدنى.

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

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

المميزات والعيوب

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

حالات استخدام الانحدار الخطي

  • التنبؤ بالمبيعات

  • تحليل المخاطر

  • طلبات الإسكان للتنبؤ بالأسعار وعوامل أخرى

    دمج الفرز في c ++
  • تطبيقات التمويل للتنبؤ بأسعار الأسهم وتقييم الاستثمار وما إلى ذلك.

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

مع وضع ذلك في الاعتبار ، دعونا نلقي نظرة على حالة الاستخدام.

حالة الاستخدام - تنفيذ الانحدار الخطي

تتم العملية في الخطوات التالية:

  1. تحميل البيانات
  2. استكشاف البيانات
  3. تشريح البيانات
  4. تدريب وتقسيم البيانات
  5. توليد النموذج
  6. قيم الدقة

دعونا ندخل في تفاصيل كل خطوة من خطوات تنفيذ الانحدار الخطي.

1. تحميل البيانات

يمكننا البدء بمجموعة بيانات مرض السكري الأساسية الموجودة بالفعل في وحدة مجموعات البيانات sklearn (scikit-Learn) لبدء رحلتنا مع الانحدار الخطي.

من sklearn import datasets disease = datasets.load_diabetes () print (disease)

انتاج:

2. استكشاف البيانات

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

طباعة (disease.keys ())

انتاج:

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

استيراد numpy كـ np disease_X = disease.data [:، np.newaxis، 2] print (disease_X)

انتاج:

بعد هذه الخطوة ، سنقسم البيانات إلى مجموعة تدريب واختبار.

3. تقسيم البيانات

disease_X_train = disease_X [: - 30] disease_X_test = disease_X [-20:] disease_Y_train = disease.target [: - 30] disease_Y_test = disease.target [-20:]

يتضمن الجزء التالي إنشاء النموذج ، والذي سيتضمن استيراد نموذج_خطي من sklearn.

تحويل عشري إلى ثنائي في بيثون

4. توليد النموذج

من sklearn import linear_model reg = linear_model.LinearRegression () reg.fit (disease_X_train، disease_Y_train) y_predict = reg.predict (disease_X_test)

لتقييم دقة النموذج ، سوف نستخدم متوسط ​​الخطأ التربيعي من scikit-Learn.

5. التقييم

الدقة = mean_squared_error (disease_Y_test، y_predict،) طباعة (دقة) أوزان = reg.coef_ intercept = reg.intercept_ print (أوزان ، اعتراض)

انتاج:

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

import matplotlib.pyplot as plt plt.scatter (disease_X_test، disease_Y_test) plt.plot (disease_X_test، y_predict) plt.show ()

انتاج:

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

# قم بتغيير طفيف في الكود أعلاه ، وقم بإزالة رمز التخطيط لتجنب الأخطاء disease_X = disease.data

انتاج:

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

إذا وجدت هذه المقالة حول 'الانحدار الخطي للتعلم الآلي' ذات صلة ، فراجع ملف شركة تعليمية موثوقة عبر الإنترنت مع شبكة تضم أكثر من 250000 متعلم راضٍ منتشرة في جميع أنحاء العالم.

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