كل شيء عن الانحدار الخطي باستخدام Scikit

نشرت: 2022-09-08

في الممارسة العملية ، هناك نوعان من خوارزميات التعلم الآلي الأساسية الخاضعة للإشراف: 1. التصنيف و 2. الانحدار - يستخدم التصنيف للتنبؤ بالمخرجات المنفصلة ، بينما يُستخدم الانحدار للتنبؤ بإخراج القيمة المستمرة.

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

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

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

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

في الرياضيات ، لدينا ثلاث طرق تستخدم لوصف نموذج الانحدار الخطي. هم على النحو التالي (y كونه المتغير التابع):

  • ص = تقاطع + (ميل س) + خطأ
  • ص = ثابت + (معامل س) + خطأ
  • ص = أ + ب س + هـ

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

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

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

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

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

الافتراضات الرئيسية للانحدار الخطي الفعال

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

فيما يلي مثال موجود على الانحدار الخطي البسيط :

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

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

أولاً ، يجب استيراد جميع المكتبات.

استيراد الباندا كما pd

استيراد numpy كـ np

استيراد matplotlib.pyplot كـ PLT

استيراد seaborn as seaborn

من sklearn.model_selection استيراد train_test_split

من sklearn.linear_model استيراد LinearRegression

من sklearn استيراد المقاييس

٪ matplotlib مضمنة

لاستيراد مجموعة البيانات التالية باستخدام الباندا ، يجب تطبيق الأمر التالي:

dataset = pd.read_csv ('/ Users / nageshsinghchauhan / Documents / projects / ML / ML_BLOG_LInearRegression / Weather.csv')

للتحقق من عدد الصفوف والأعمدة الموجودة في مجموعة البيانات لاستكشاف البيانات ، يجب تطبيق الأمر التالي:

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

يجب أن يكون الناتج المستلم (119040 ، 31) ، مما يعني أن البيانات تحتوي على 119040 صفاً و 31 عموداً.

للاطلاع على التفاصيل الإحصائية لمجموعة البيانات ، يمكن استخدام الأمر التالي:

يصف():

dataset.describe ()

فيما يلي مثال آخر يهدف إلى توضيح كيف يمكن للمرء استرداد واستخدام مكتبات Python المختلفة التي سيتم استخدامها لتطبيق الانحدار الخطي على مجموعات بيانات معينة:

1. استيراد جميع المكتبات المطلوبة

استيراد numpy كـ np

استيراد الباندا كما pd

استيراد seaborn as sns

استيراد matplotlib.pyplot كـ PLT

من sklearn استيراد التجهيز المسبق ، svm

من sklearn.model_selection استيراد train_test_split

من sklearn.linear_model استيراد LinearRegression

2. قراءة مجموعة البيانات

القرص المضغوط C: \ Users \ Dev \ Desktop \ Kaggle \ Salinity

# تغيير موقع قراءة الملف إلى موقع مجموعة البيانات

df = pd.read_csv ('bottle.csv')

df_binary = df [['Salnty'، 'T_degC']]

# أخذ السمتين المحددتين فقط من مجموعة البيانات

df_binary.columns = ['Sal'، 'Temp']

# إعادة تسمية الأعمدة لتسهيل كتابة الكود

df_binary.head ()

# عرض الصفوف الأولى فقط مع أسماء الأعمدة

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

sns.lmplot (x = ”Sal”، y = ”Temp”، data = df_binary، order = 2، ci = None)

# رسم مبعثر البيانات

3. تنظيف البيانات

# حذف NaN أو فقدان أرقام الإدخال

df_binary.fillna (الطريقة = 'ffill' ، inplace = True)

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

X = np.array (df_binary ['Sal']). إعادة تشكيل (-1 ، 1)

y = np.array (df_binary ['Temp']). إعادة تشكيل (-1 ، 1)

# فصل البيانات إلى متغيرات مستقلة وتابعة

# تحويل كل إطار بيانات إلى مصفوفة عددية

# لأن كل إطار بيانات يحتوي على عمود واحد فقط

df_binary.dropna (inplace = صحيح)

# إسقاط أي صفوف بقيم نان

X_train ، X_test ، y_train ، y_test = train_test_split (X ، y ، test_size = 0.25)

# تقسيم البيانات إلى بيانات تدريب واختبار

regr = LinearRegression ()

regr.fit (X_train، y_train)

print (regr.score (X_test، y_test))

5. استكشاف النتائج

y_pred = regr.predict (X_test)

مبعثر plt (X_test، y_test، color = 'b')

plt.plot (X_test، y_pred، color = 'k')

plt.show ()

# تشتت البيانات للقيم المتوقعة

6. العمل مع مجموعة بيانات أصغر

df_binary500 = df_binary [:] [: 500]

# اختيار أول 500 صف من البيانات

sns.lmplot (x = "Sal" ، y = "Temp" ، البيانات = df_binary500 ،

الطلب = 2 ، ci = لا شيء)

مدونات التعلم الآلي والذكاء الاصطناعي الشعبية

إنترنت الأشياء: التاريخ والحاضر والمستقبل دروس تعلم الآلة: تعلم ML ما هي الخوارزمية؟ بسيط سهل
راتب مهندس الروبوتات في الهند: جميع الأدوار يوم في حياة مهندس التعلم الآلي: ماذا يفعلون؟ ما هو إنترنت الأشياء (إنترنت الأشياء)
التقليب مقابل الجمع: الفرق بين التقليب والجمع أهم 7 اتجاهات في الذكاء الاصطناعي وتعلم الآلة التعلم الآلي باستخدام R: كل ما تحتاج إلى معرفته

إذا كنت مهتمًا بتعلم التعلم الآلي الكامل ، فإننا نوصي بالانضمام إلى ماجستير العلوم في upGrad's في التعلم الآلي والذكاء الاصطناعي . يتم تقديم البرنامج لمدة 20 شهرًا بالتعاون مع IIIT Bangalore وجامعة Liverpool John Moores. إنه مصمم لمساعدتك على بناء الكفاءة في لغات البرمجة والأدوات والمكتبات ذات الصلة بالصناعة مثل Python و Keras و Tensor Flow و MySql و Flask و Kubernetes وما إلى ذلك.

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

احجز مقعدك اليوم!

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

يستخدم هذا النوع من التحليل عمومًا للتنبؤ بقيمة متغير واحد بناءً على متغير آخر معروف. المتغيرات المستخدمة للعثور على قيمة الآخر تسمى المتغيرات التابعة والمستقلة ، على التوالي.

كيفية تثبيت scikit Learn؟

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

كيف يتعلم scikit العمل؟

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