مقالات

3.8.3: ملاءمة النماذج الخطية للبيانات


أهداف التعلم

  • ارسم وفسر المخططات المبعثرة.
  • استخدم أداة الرسوم البيانية للعثور على الخط الأنسب.
  • يميز بين العلاقات الخطية وغير الخطية.
  • قم بملاءمة خط الانحدار مع مجموعة من البيانات واستخدم النموذج الخطي لعمل تنبؤات.

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

رسم وتفسير المؤامرات المبعثرة

مخطط التبعثر هو رسم بياني للنقاط المرسومة قد يُظهر علاقة بين مجموعتين من البيانات. إذا كانت العلاقة من أ نموذج خطي، أو نموذجًا خطيًا تقريبًا ، يمكن للأستاذ استخلاص النتائج باستخدام معرفته بالوظائف الخطية. يوضح الشكل ( PageIndex {1} ) نموذج مخطط مبعثر.

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

مثال ( PageIndex {1} ): استخدام مخطط مبعثر للتحقيق في غردات لعبة الكريكيت

يوضح الجدول عدد صقور الكريكيت في 15 ثانية ، لعدة درجات حرارة مختلفة للهواء ، بالدرجات فهرنهايت [1]. ارسم هذه البيانات ، وحدد ما إذا كانت البيانات تبدو مرتبطة خطيًا.

جدول ( PageIndex {1} )
غردات443520.433313518.53726
درجة حرارة80.570.5576668725273.553

حل

يشير رسم هذه البيانات ، كما هو موضح في الشكل ( PageIndex {2} ) إلى أنه قد يكون هناك اتجاه. يمكننا أن نرى من الاتجاه في البيانات أن عدد الزقزقة يزداد مع زيادة درجة الحرارة. يبدو أن الاتجاه خطي تقريبًا ، رغم أنه بالتأكيد ليس كذلك تمامًا.

العثور على الخط الأنسب

بمجرد أن ندرك الحاجة إلى دالة خطية لنمذجة تلك البيانات ، فإن سؤال المتابعة الطبيعي هو "ما هذه الوظيفة الخطية؟" تتمثل إحدى طرق تقريب وظيفتنا الخطية في رسم الخط الذي يبدو أنه يناسب البيانات بشكل أفضل. ثم يمكننا تمديد الخط حتى نتمكن من التحقق من تقاطع y. يمكننا تقريب ميل الخط عن طريق تمديده حتى نتمكن من تقدير ( frac { text {height}} { text {run}} ).

مثال ( PageIndex {2} ): البحث عن السطر الأفضل ملاءمة

ابحث عن دالة خطية تناسب البيانات الموجودة في Table ( PageIndex {1} ) عن طريق "eyeballing" سطر يبدو مناسبًا.

حل

على الرسم البياني ، يمكننا محاولة رسم خط.

باستخدام نقطتي البداية والنهاية للخط المرسوم يدويًا ، النقاط ((0 ، 30) ) و ((50 ، 90) ) ، يحتوي هذا الرسم البياني على ميل قدره

[m = dfrac {60} {50} = 1.2 ]

وتقاطع y عند 30. هذا يعطي معادلة

[T (ج) = 1.2 ج + 30 ]

حيث (c ) هو عدد النغمات في 15 ثانية ، و (T (c) ) هي درجة الحرارة بالدرجات فهرنهايت. يتم تمثيل المعادلة الناتجة في الشكل ( PageIndex {3} ).

تحليل

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

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

يقارن الشكل ( PageIndex {4} ) بين عمليتين لبيانات صرصور الكريكيت الواردة في المثال ( PageIndex {2} ). يمكننا أن نرى أن الاستيفاء سيحدث إذا استخدمنا نموذجنا للتنبؤ بدرجة الحرارة عندما تكون قيم الزقزقة بين 18.5 و 44. سيحدث الاستقراء إذا استخدمنا نموذجنا للتنبؤ بدرجة الحرارة عندما تكون قيم الزقزقة أقل من 18.5 أو أكبر من 44 .

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

الاستيفاء والاستقراء

تُستخدم طرق مختلفة لعمل التنبؤات لتحليل البيانات.

  • طريقة استقراء يتضمن التنبؤ بقيمة خارج المجال و / أو نطاق البيانات.
  • انهيار النموذج يحدث عند النقطة التي لم يعد فيها النموذج ساريًا.

مثال ( PageIndex {3} ): فهم الاستيفاء والاستقراء

استخدم بيانات الكريكيت من Table ( PageIndex {1} ) للإجابة على الأسئلة التالية:

  1. هل توقع درجة الحرارة عندما تزقزق الصراصير 30 مرة في 15 ثانية هو استيفاء أم استقراء؟ قم بالتنبؤ ، وناقش ما إذا كان معقولاً.
  2. هل التنبؤ بعدد صراصير الصراصير عند 40 درجة هو استيفاء أم استقراء؟ قم بالتنبؤ ، وناقش ما إذا كان معقولاً.

حل

أ. تباين عدد النغمات في البيانات المقدمة من 18.5 إلى 44. التنبؤ بمعدل 30 غردًا لكل 15 ثانية موجود داخل مجال بياناتنا ، لذلك سيكون الاستيفاء. باستخدام نموذجنا:

[ start {align} T (30) & = 30 + 1.2 (30) & = 66 text {degrees} end {align} ]

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

[ begin {align} 40 & = 30 + 1.2c 10 & = 1.2c c & almost8.33 end {align} ]

يمكننا مقارنة مناطق الاستيفاء والاستقراء باستخدام الشكل ( PageIndex {5} ).

تحليل

يتوقع نموذجنا أن صراصير الليل ستصدر صوتًا 8.33 مرة في 15 ثانية. في حين أن هذا قد يكون ممكنًا ، ليس لدينا سبب للاعتقاد بأن نموذجنا صالح خارج المجال والمدى. في الواقع ، تتوقف الصراصير عمومًا عن النقيق تمامًا تحت حوالي 50 درجة.

تمرين ( PageIndex {1} )

وفقًا للبيانات الواردة في الجدول ( PageIndex {1} ) ، ما درجة الحرارة التي يمكننا توقعها إذا أحصينا 20 غردًا في 15 ثانية؟

حل

54 درجة فهرنهايت

العثور على خط أفضل ملاءمة باستخدام أداة الرسم البياني

بينما تعمل عملية تحديد الخط بشكل جيد بشكل معقول ، هناك تقنيات إحصائية لملاءمة خط مع البيانات التي تقلل الاختلافات بين قيم الخط والبيانات [2]. أحد هذه التقنيات يسمى أقل الساحات الانحدار ويمكن حسابها عن طريق العديد من حاسبات الرسوم البيانية ، وبرامج جداول البيانات ، والبرامج الإحصائية ، والعديد من الآلات الحاسبة على شبكة الإنترنت [3]. انحدار المربعات الصغرى هو إحدى الوسائل لتحديد الخط الأنسب للبيانات ، وهنا سنشير إلى هذه الطريقة على أنها الانحدار الخطي.

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

  1. أدخل الإدخال في القائمة 1 (L1).
  2. أدخل الإخراج في القائمة 2 (L2).
  3. في أداة الرسم البياني ، حدد الانحدار الخطي (LinReg).

مثال ( PageIndex {4} ): البحث عن خط انحدار للمربعات الصغرى

ابحث عن خط انحدار المربعات الصغرى باستخدام بيانات cricket-chirp في Table ( PageIndex {1} ).

حل

أدخل الإدخال (غردات) في القائمة 1 (L1).
أدخل الإخراج (درجة الحرارة) في القائمة 2 (L2). راجع الجدول ( PageIndex {2} ).

جدول ( PageIndex {2} )
L1443520.433313518.53726
L280.570.5576668725273.553

في أداة الرسم البياني ، حدد الانحدار الخطي (LinReg). باستخدام بيانات غرد الكريكيت من وقت سابق ، مع التكنولوجيا نحصل على المعادلة:

[T (c) = 30.281 + 1.143c ]

تحليل

لاحظ أن هذا الخط مشابه تمامًا للمعادلة التي "أوقفناها" ولكن يجب أن تلائم البيانات بشكل أفضل. لاحظ أيضًا أن استخدام هذه المعادلة سيغير توقعاتنا لدرجة الحرارة عند سماع 30 زقزقة في 15 ثانية من 66 درجة إلى:

[ start {align} T (30) & = 30.281 + 1.143 (30) & = 64.571 & almost 64.6 text {degrees} end {align} ]

يظهر الرسم البياني لمخطط التبعثر مع خط انحدار المربعات الصغرى في الشكل ( PageIndex {6} ).

هل ستكون هناك حالة يكون فيها سطرين مختلفين بمثابة أفضل ملاءمة للبيانات؟

لا ، هناك خط واحد فقط هو الأفضل.

التمييز بين النماذج الخطية وغير الخطية

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

يجب أن نحسب معامل الارتباط فقط للبيانات التي تتبع نمطًا خطيًا أو لتحديد الدرجة التي تكون عندها مجموعة البيانات خطية. إذا أظهرت البيانات نمطًا غير خطي ، فإن معامل الارتباط للانحدار الخطي لا معنى له. للتعرف على العلاقة بين قيمة (r ) والرسم البياني للبيانات ، يوضح الشكل ( PageIndex {7} ) بعض مجموعات البيانات الكبيرة مع معاملات الارتباط الخاصة بها. تذكر ، بالنسبة لجميع المخططات ، يُظهر المحور الأفقي الإدخال ويظهر المحور الرأسي الإخراج.

معامل الارتباط

ال معامل الارتباط هي قيمة ، (r ) ، بين –1 و 1.

  • (r> 0 ) يقترح علاقة إيجابية (متزايدة)
  • (r <0 ) يقترح علاقة سلبية (متناقصة)
  • كلما كانت القيمة أقرب إلى 0 ، زادت تبعثر البيانات.
  • كلما كانت القيمة أقرب إلى 1 أو -1 ، قل تشتت البيانات.

مثال ( PageIndex {5} ): إيجاد معامل ارتباط

احسب معامل الارتباط لبيانات صرصور الكريكيت في الجدول ( PageIndex {1} ).

حل

نظرًا لأن البيانات تبدو وكأنها تتبع نمطًا خطيًا ، يمكننا استخدام التكنولوجيا لحساب (r ). أدخل المدخلات والمخرجات المقابلة وحدد الانحدار الخطي. ستزودك الآلة الحاسبة أيضًا بمعامل الارتباط (r = 0.9509 ). هذه القيمة قريبة جدًا من 1 ، مما يشير إلى علاقة خطية قوية متزايدة.

ملاحظة: بالنسبة لبعض الآلات الحاسبة ، يجب تشغيل "التشخيصات" للحصول على معامل الارتباط عند إجراء الانحدار الخطي: [2nd]> [0]> [alpha] [x – 1] ، ثم قم بالتمرير إلى DIAGNOSTICSON.

التنبؤ بخط الانحدار

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

مثال ( PageIndex {6} ): استخدام خط الانحدار لعمل تنبؤات

كان استهلاك البنزين في الولايات المتحدة يتزايد باطراد. تظهر بيانات الاستهلاك من 1994 إلى 2004 في Table ( PageIndex {3} ). حدد ما إذا كان الاتجاه خطيًا ، وإذا كان الأمر كذلك ، فابحث عن نموذج للبيانات. استخدم النموذج للتنبؤ بالاستهلاك في عام 2008.

جدول ( PageIndex {3} )
سنة'94'95'96'97'98'99'00'01'02'03'04
الاستهلاك (بلايين الجالونات)113116118119123125126128131133136

يظهر الرسم المبعثر للبيانات ، بما في ذلك خط انحدار المربعات الصغرى ، في الشكل ( PageIndex {8} ).

يمكننا إدخال متغير إدخال جديد ، (t ) ، يمثل سنوات منذ 1994.

معادلة انحدار المربعات الصغرى هي:

[C (t) = 113.318 + 2.209t ]

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

باستخدام هذا للتنبؤ بالاستهلاك في عام 2008 ((t = 14) ) ،

[ start {align} C (14) & = 113.318 + 2.209 (14) & = 144.244 end {align} ]

يتنبأ النموذج باستهلاك 144.244 مليار جالون من البنزين في عام 2008.

تمرين ( PageIndex {1} )

استخدم النموذج الذي أنشأناه باستخدام التكنولوجيا في المثال ( PageIndex {6} ) للتنبؤ باستهلاك الغاز في عام 2011. هل هذا استيفاء أم استقراء؟

إجابه

150.871 مليار جالون استقراء

المفاهيم الرئيسية

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

نموذج الانحدار الخطي المتعدد باستخدام Python: Machine Learning

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

ال الانحدار الخطي البسيط النموذج هو التنبؤ بالمتغير المستهدف باستخدام متغير مستقل واحد.

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

معادلة الخط لنموذج الانحدار الخطي المتعدد هي:

ص = β 0 + 1X1 + 2X2 + β3X3 +. + βpXp + البريد

قبل المضي قدمًا في بناء النموذج باستخدام Python ، نحتاج إلى التفكير في بعض الأشياء:

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

سنناقش النقطتين 2 و 3 باستخدام كود Python.

الآن ، دعنا نتعمق في دفتر Jupyter ونرى كيف يمكننا بناء نموذج Python.


آر إم إس تيتانيك

كانت RMS Titanic عبارة عن سفينة ركاب بريطانية غرقت في شمال المحيط الأطلسي في الساعات الأولى من صباح يوم 15 أبريل 1912 ، بعد اصطدامها بجبل جليدي خلال رحلتها الأولى من ساوثهامبتون إلى مدينة نيويورك. كان هناك ما يقدر بنحو 2224 راكبًا وطاقمًا على متن السفينة ، وتوفي أكثر من 1500 ، مما يجعلها واحدة من أكثر الكوارث البحرية التجارية فتكًا في زمن السلم في التاريخ الحديث. كانت RMS Titanic أكبر سفينة طافية في الوقت الذي دخلت فيه الخدمة وكانت الثانية من بين ثلاث سفن من الدرجة الأولمبية للمحيطات تديرها White Star Line. تم بناء تيتانيك بواسطة حوض بناء السفن هارلاند وولف في بلفاست. توماس أندروز ، مهندسها ، مات في الكارثة.


8.3 إعادة النظر في Grace & amp Keeley: مثال عملي

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

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

دعونا نلائم المتغير المركب التالي:

لدينا هنا مركب يلخص القيم المربعة وغير المربعة للغطاء ، والذي يتابع بعد ذلك للتنبؤ بالثراء.

دعونا نتبنى النهج المكون من خطوتين ونلائم النموذج الخطي أولاً.

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

كما هو متوقع من الانحدار المتعدد ، فإن المصطلح المركب يتنبأ بشكل كبير بالثراء (ص & lt 0.001). دعونا نستخدم وظيفة coefs من متعدد التعريف للحصول على المعامل القياسي:

لذا فإن تغيير الانحراف المعياري 1 في تأثير الغطاء الكلي سيؤدي إلى تغيير الانحراف المعياري بمقدار 0.40 في ثراء النبات.

يمكننا أن نلائم النموذج بالتناوب مع لافان باستخدام نفس المعاملات من الانحدار المتعدد:

وهو ما يقودنا إلى نفس المعامل القياسي (0.40) كما هو الحال من خلال الحساب اليدوي.

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

أولاً ، يجب أن نلائم النموذج بدون المركب للحصول على حمولات (غطاء ) و (غطاء ^ 2 ).

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

هنا ، نجد نموذجًا مناسبًا (ص = 0.80). علاوة على ذلك ، نحصل على المعامل القياسي لتأثير شدة الحريق على الغطاء ( gamma = -0.437 ) والمركب على الثراء ( beta = 0.292 ) المتحكم في شدة الحريق ، وهو إجمالي غير خطي تأثير الغطاء.

للحصول على التأثير غير المباشر إذن ، نضرب هذه المسارات بالإضافة إلى التحميل القياسي (الغلاف ) على المركب: (- 0.437 * 3.048 * 0.292 = -0.389 ).


3.8.3: ملاءمة النماذج الخطية للبيانات

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

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

تساعدك MATLAB & # x00AE Basic Fitting UI على ملاءمة بياناتك ، بحيث يمكنك حساب معاملات النموذج ورسم النموذج أعلى البيانات. على سبيل المثال ، راجع مثال: استخدام Basic Fitting UI. يمكنك أيضًا استخدام وظائف MATLAB polyfit و polyval لملاءمة بياناتك مع نموذج خطي في المعاملات. على سبيل المثال ، انظر التركيب البرمجي.

إذا كنت بحاجة إلى ملاءمة البيانات مع نموذج غير خطي ، فقم بتحويل المتغيرات لجعل العلاقة خطية. بدلاً من ذلك ، حاول ملاءمة وظيفة غير خطية مباشرةً باستخدام وظيفة Statistics and Machine Learning Toolbox & # x2122 nlinfit أو وظيفة Optimization Toolbox & # x2122 lsqcurvefit أو عن طريق تطبيق وظائف في Curve Fitting Toolbox & # x2122.

يشرح هذا الموضوع كيفية:

قم بإجراء انحدار خطي بسيط باستخدام عامل التشغيل .

استخدم تحليل الارتباط لتحديد ما إذا كان هناك ارتباط بين كميتين لتبرير ملاءمة البيانات.

تناسب نموذجًا خطيًا للبيانات.

قم بتقييم جودة الملاءمة عن طريق رسم المخلفات والبحث عن الأنماط.

احسب مقاييس جودة الملاءمة R 2 و R 2 المعدلة

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

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

نماذج الانحدار الخطي العلاقة بين المتغير y التابع ، أو الاستجابة ، ومتغير واحد أو أكثر ، أو متنبئ ، متغير x 1 ،. . . ، س ن. يعتبر الانحدار الخطي البسيط متغيرًا مستقلاً واحدًا فقط باستخدام العلاقة

حيث β 0 هو تقاطع y ، β 1 هو المنحدر (أو معامل الانحدار) ، و هو مصطلح الخطأ.

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

[y 1 y 2 & # x22EE y n] = [1 x 1 1 x 2 & # x22EE & # x22EE 1 x n] [β 0 β 1].

Y = [y 1 y 2 & # x22EE y n] ، X = [1 x 1 1 x 2 & # x22EE & # x22EE 1 x n] ، B = [0 β 1].

العلاقة الآن Y = X B.

في MATLAB ، يمكنك العثور على B باستخدام عامل التشغيل mldivide مثل B = X Y.

من حوادث مجموعة البيانات ، قم بتحميل بيانات الحوادث في y وبيانات الحالة السكانية في x. أوجد علاقة الانحدار الخطي y = β 1 x بين الحوادث في دولة وسكان دولة باستخدام العامل . ينفذ العامل انحدار المربعات الصغرى.

b1 هو معامل الانحدار أو الانحدار. العلاقة الخطية هي y = β 1 x = 0. 0 0 0 1 3 7 2 x.

احسب الحوادث لكل حالة yCalc من x باستخدام العلاقة. تصور الانحدار عن طريق رسم القيم الفعلية y والقيم المحسوبة yCalc.

قم بتحسين الملاءمة بتضمين تقاطع y β 0 في نموذجك على النحو y = β 0 + β 1 x. احسب β 0 بالحشو x بعمود منها وباستخدام عامل التشغيل .

تمثل هذه النتيجة العلاقة y = β 0 + 1 x = 1 4 2. 7 1 2 0 + 0. 0 0 0 1 2 5 6 x.

تصور العلاقة من خلال رسمها على نفس الشكل.

من الشكل ، تبدو المناسبتان متشابهتين. إحدى الطرق للعثور على أفضل ملاءمة هي حساب معامل التحديد ، R 2. R 2 هي مقياس لمدى قدرة النموذج على التنبؤ بالبيانات ، وتقع بين 0 و 1. كلما زادت قيمة R 2 ، كان النموذج أفضل في توقع البيانات.

حيث تمثل y ˆ القيم المحسوبة لـ y و y هي متوسط ​​y ، يتم تعريف R 2 على أنها

R 2 = 1 - ∑ i = 1 n (y i - y ˆ i) 2 ∑ i = 1 n (y i - y ‾) 2.

ابحث عن أفضل ملاءمة بين الاثنين بمقارنة قيم R 2. كما تظهر قيم R 2 ، فإن التوافق الثاني الذي يتضمن تقاطع y هو الأفضل.

بقايا وجودة الملاءمة

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

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

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

أحد مقاييس جودة الملاءمة هو معامل التحديد، أو R 2 (تنطق r-square). يشير هذا الإحصاء إلى مدى تطابق القيم التي تحصل عليها من ملاءمة نموذج مع المتغير التابع الذي يهدف النموذج إلى التنبؤ به. غالبًا ما يحدد الإحصائيون R 2 باستخدام التباين المتبقي من نموذج ملائم:

SSبقايا هو مجموع القيم التربيعية المتبقية من الانحدار. SSمجموع هو مجموع تربيع الفروق من متوسط ​​المتغير التابع ( مجموع المربعات ). كلاهما عددي موجب.

لمعرفة كيفية حساب R 2 عند استخدام أداة Basic Fitting ، انظر R2 ، معامل التحديد. لمعرفة المزيد حول حساب إحصائية R 2 وتعميمها متعدد المتغيرات ، تابع القراءة هنا.

مثال: حساب R 2 من Polynomial Fits

يمكنك اشتقاق R 2 من معاملات الانحدار متعدد الحدود لتحديد مقدار التباين في y الذي يوضحه النموذج الخطي ، كما يوضح المثال التالي:

قم بإنشاء متغيرين ، x و y ، من أول عمودين لمتغير العد في ملف البيانات count.dat:

استخدم polyfit لحساب الانحدار الخطي الذي يتوقع y من x:

p (1) هو المنحدر و p (2) هو تقاطع المتنبئ الخطي. يمكنك أيضًا الحصول على معاملات الانحدار باستخدام Basic Fitting UI.

قم باستدعاء polyval لاستخدام p للتنبؤ بـ y ، واستدعاء النتيجة yfit:

يحميك استخدام polyval من كتابة معادلة الملائمة بنفسك ، والتي تبدو في هذه الحالة كما يلي:

احسب القيم المتبقية كمتجه للأرقام الموقعة:

قم بتربيع القيم المتبقية وجمعها للحصول على المجموع المتبقي للمربعات:

احسب المجموع الكلي لمربعات y بضرب تباين y في عدد المشاهدات ناقص 1:

احسب R 2 باستخدام الصيغة الواردة في مقدمة هذا الموضوع:

حساب R 2 المعدلة للانحدارات متعددة الحدود

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

يكرر المثال التالي خطوات المثال السابق ، مثال: حساب R2 من Polynomial Fits ، ولكنه يؤدي إلى ملاءمة مكعب (درجة 3) بدلاً من ملاءمة خطية (درجة 1). من الملاءمة المكعبة ، يمكنك حساب قيم R 2 البسيطة والمعدلة لتقييم ما إذا كانت المصطلحات الإضافية تحسن القدرة التنبؤية أم لا:

قم بإنشاء متغيرين ، x و y ، من أول عمودين لمتغير العد في ملف البيانات count.dat:

استدعِ polyfit لتوليد تناسب مكعب للتنبؤ بـ y من x:

p (4) هو تقاطع التوقع التكعيبي. يمكنك أيضًا الحصول على معاملات الانحدار باستخدام Basic Fitting UI.

قم باستدعاء polyval لاستخدام المعاملات في p للتنبؤ بـ y ، مع تسمية النتيجة yfit:

تقوم polyval بتقييم المعادلة الصريحة التي يمكنك إدخالها يدويًا على النحو التالي:

احسب القيم المتبقية كمتجه للأرقام الموقعة:

قم بتربيع القيم المتبقية وجمعها للحصول على المجموع المتبقي للمربعات:

احسب المجموع الكلي لمربعات y بضرب تباين y في عدد المشاهدات ناقص 1:

احسب R 2 البسيط للتناسب المكعب باستخدام الصيغة الواردة في مقدمة هذا الموضوع:

أخيرًا ، احسب R 2 المعدلة لحساب درجات الحرية:

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

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

تركيب البيانات بوظائف صندوق أدوات تركيب المنحنى

يعمل برنامج Curve Fitting Toolbox على توسيع وظائف MATLAB الأساسية من خلال تمكين إمكانات ملاءمة البيانات التالية:

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

إحصائيات لتحديد جودة الملاءمة

الاستقراء والتفاضل والتكامل

مربع حوار يسهل تقسيم البيانات وتجانسها

ينتج عن حفظ الملاءمة تنسيقات مختلفة ، بما في ذلك ملفات أكواد MATLAB وملفات MAT ومتغيرات مساحة العمل

لمزيد من المعلومات ، راجع وثائق Curve Fitting Toolbox.


10.5 استكشاف البيانات الزمانية المكانية

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

10.5.1 التصور

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

Fisrt إنشاء متغير لتحليله:

10.5.1.1 المؤامرات المكانية

تتمثل إحدى طرق تصور البيانات في استخدام المخططات المكانية ، وهي لقطات لعملية جغرافية لفترة زمنية معينة. يمكن تعيين البيانات بطرق مختلفة باستخدام مخططات clorepleth أو كونتور أو السطحية. الهدف الرئيسي من هذه الخرائط هو فهم كيف يتغير المدى العام للتنوع المكاني والأنماط المحلية للتركيز المكاني بمرور الوقت. أدناه نتخيل العدد الأسبوعي لحالات COVID-19 المؤكدة لكل 100،000 شخص.

لاحظ أن الأسابيع تتراوح من 5 إلى 16 لأنها تشير إلى أسابيع التقويم. الأسبوع الخامس من التقويم هو الوقت الذي تم فيه الإبلاغ عن أول حالة COVID-19 في إنجلترا.

تكشف سلسلة الخرائط عن نمط ثابت للحالات المبلغ عنها المنخفضة من الأسابيع 5 إلى 11. من الأسبوع 12 ظهر عدد من النقاط الساخنة ، لا سيما في لندن وبرمنغهام وكمبريا وبعد ذلك حول ليفربول. يبدو أن شدة الحالات الجديدة قد بدأت في الانخفاض من الأسبوع 15 ، ومع ذلك ، من المهم ملاحظة أن الأسبوع 16 يعرض الحالات المبلغ عنها لمدة يومين فقط.

10.5.1.2 مخططات السلاسل الزمنية

يمكن استخدام مخططات السلاسل الزمنية لالتقاط بُعد مختلف للعملية في التحليل. يمكن استخدامها لفهم التغييرات في موقع المراقبة بشكل أفضل ، أو تجميع الملاحظات ، أو المواقع المتعددة في وقت واحد بمرور الوقت. نحن نرسم العدد التراكمي لحالات COVID-19 لكل 100000 شخص للإبلاغ عن أكثر من 310 حالة. The plots identify the UTLAs in London, Newcastle and Sheffield reporting the largest numbers of COVID-19 cases. The plots also reveal that there has been a steady increase in the number of cases, with some differences. While cases have steadily increase in Brent and Southwark since mid March, the rise has been more sudden in Sunderland. The plots also reveal a possible case of misreporting in Sutton towards the end of the series.

10.5.1.3 Hovmöller Plots

An alternative visualisation is a Hovmöller plot - sometimes known as heatmap. It is a two-dimensional space-time representation in which space is collapsed onto one dimension against time. Hovmöller plots can easily be generated if the data are arranged on a space-time grid however, this is rarely the case. Luckily we have ggplot ! which can do magic rearranging the data as needed. Below we produce a Hovmöller plot for UTLAs with resident populations over 260,000. The plot makes clear that the critical period of COVID-19 spread has been during April despite the implementation of a series of social distancing measures by the government.

10.5.1.4 Interactive Plots

Interactive visualisations comprise very effective ways to understand spatio-temporal data and they are now fairly accessible. Interactive visualisations allow for a more data-immersive experience, and enable exploration of the data without having to resort to scripting. Here is when the use of tmap shines as it does not only enables easily creating nice static maps but also interactive maps! Below an interactive map for a time snapshot of the data (i.e. 2020-04-14 ) is produced, but with a bit of work layers can be added to display multiple temporal slices of the data.

To view the map on your local machines, execute the code chunk below removing the # sign.

Alternative data visualisation tools are animations, telliscope and shiny. Animations can be constructed by plotting spatial data frame-by-frame, and then stringing them together in sequence. A useful R packages gganimate and tmap ! See Lovelace, Nowosad, and Muenchow (2020) . Note that the creation of animations may require external dependencies hence, they have been included here. Both telliscope and shiny are useful ways for visualising large spatio-temporal data sets in an interactive ways. Some effort is required to deploy these tools.

10.5.2 Exploratory Analysis

In addition to visualising data, we often want to obtain numerical summaries of the data. Again, innovative ways to reduce the inherent dimensionality of the data and examine dependence structures and potential relationships in time and space are needed. We consider visualisations of empirical spatial and temporal means, dependence structures and some basic time-series analysis.

10.5.2.1 Means

Empirical Spatial Mean

The empirical spatial mean for a data set can be obtained by averaging over time points for one location. In our case, we can compute the empirical spatial mean by averaging the daily rate of new COVID-19 cases for UTLAs between January 30th and April 21st. It reveals that Brent, Southwark and Sunderland report an average daily infection rate of over 5 new cases per 100,000 people, whereas Rutland and Isle of Wight display an average of less than 1.

Empirical Temporal Mean

The empirical temporal mean for a data set can be obtained by averaging across spatial locations for a time point. In our case, we can compute the empirical temporal mean by averaging the rate of new COVID-19 cases over UTLAs by day. The empirical temporal mean is plotted below revealing a peak of 8.32 number of new cases per 100,000 people the 7th of April, steadily decreasing to 0.35 for the last reporting observation in our data that is, April 21st.

Note the empirical temporal mean is smoothed via local polynomial regression fitting hence below zero values are reported between February and March.

10.5.2.2 Dependence

Spatial Dependence

As we know spatial dependence refers to the spatial relationship of a variable’s values for a pairs of locations at a certain distance apart, so that are more similar (or less similar) than expected for randomly associated pairs of observations. Patterns of spatial dependence may change over time. In the case of a disease outbreak patterns of spatial dependence can change very quickly as new cases emerge and social distancing measures are implemented. Chapter 6 illustrates how to measure spatial dependence in the context of spatial data.

Challenge 1: Measure how spatial dependence change over time. Hint: compute the Moran’s I on the rate of new COVID-19 cases (i.e. n_covid19_r in the covid19 data frame) at multiple time points.

Note: recall that the problem of ignoring the dependence in the errors when doing OLS regression is that the resulting standard errors and prediction standard errors are inappropriate. In the case of positive dependence, which is the most common case in spatio-temporal data (recall Tobler’s law), the standard errors and prediction standard errors are underestimated. This is if dependence is ignored, resulting in a false sense of how good the estimates and predictions really are.

Temporal Dependence

As for spatial data, dependence can also exists in temporal data. Temporal dependence or temporal autocorrelation exists when a variable’s value at time (t) is dependent on its value(s) at (t-1) . More recent observations are often expected to have a greater influence on present observations. A key difference between temporal and spatial dependence is that temporal dependence is unidirectional (i.e. past observations can only affect present or future observations but not inversely), while spatial dependence is multidirectional (i.e. an observation in a spatial unit can influence and be influenced by observations in multiple spatial units).

Before measuring the temporal dependence is our time-series, a time-series object needs to be created with a time stamp and given cycle frequency. A cycle frequency refers to when a seasonal pattern is repeated. We consider a time series of the total number of new COVID-19 cases per 100,000 (i.e. we sum cases over UTLAs by day) and the frequency set to 7 to reflect weekly cycles. So we end up with a data frame of length 71.

There are various ways to test for temporal autocorrelation. An easy way is to compute the correlation coefficient between a time series measured at time (t) and its lag measured at time (t-1) . Below we measure the temporal autocorrelation in the rate of new COVID-19 cases per 100,000 people. A correlation of 0.97 is returned indicating high positive autocorrelation that is, high (low) past numbers of new COVID-19 cases per 100,000 people tend to correlate with higher (lower) present numbers of new COVID-19 cases. The Durbin-Watson test is often used to test for autocorrelation in regression models.

Time Series Components

In addition to temporal autocorrelation, critical to the analysis of time-series are its constituent components. A time-series is generally defined by three key components:

Trend: A trend exists when there is a long-term increase or decrease in the data.

Seasonal: A seasonal pattern exists when a time series is affected by seasonal factors and is of a fixed and known frequency. Seasonal cycles can occur at various time intervals such as the time of the day or the time of the year.

Cyclic (random): A cycle exists when the data exhibit rises and falls that are not of a fixed frequency.

To understand and model a time series, these components need to be identified and appropriately incorporated into a regression model. We illustrate these components by decomposing our time series for total COVID-19 cases below. The top plot shows the observed data. Subsequent plots display the trend, seasonal and random components of the total number of COVID-19 cases on a weekly periodicity. They reveal a clear inverted U-shape trend and seasonal pattern. This idea that we can decompose data to extract information and understand temporal processes is key to understand the concept of basis functions to model spatio-temporal data, which will be introduced in the next section.

For a good introduction to time-series analysis in R, refer to Hyndman and Athanasopoulos (2018) and DataCamp.


An Introduction to glmnet

Glmnet is a package that fits generalized linear and similar models via penalized maximum likelihood. The regularization path is computed for the lasso or elastic net penalty at a grid of values (on the log scale) for the regularization parameter lambda. The algorithm is extremely fast, and can exploit sparsity in the input matrix x . It fits linear, logistic and multinomial, poisson, and Cox regression models. It can also fit multi-response linear regression, generalized linear models for custom families, and relaxed lasso regression models. The package includes methods for prediction and plotting, and functions for cross-validation.

The authors of glmnet are Jerome Friedman, Trevor Hastie, Rob Tibshirani, Balasubramanian Narasimhan, Kenneth Tay and Noah Simon, with contribution from Junyang Qian, and the R package is maintained by Trevor Hastie. A MATLAB version of glmnet is maintained by Junyang Qian, and a Python version by B. Balakumar (although both are a few versions behind).

This vignette describes basic usage of glmnet in R. There are additional vignettes that should be useful:

  • “Regularized Cox Regression” describes how to fit regularized Cox models for survival data with glmnet .
  • “GLM family functions in glmnet ” describes how to fit custom generalized linear models (GLMs) with the elastic net penalty via the family argument.
  • “The Relaxed Lasso” describes how to fit relaxed lasso regression models using the relax argument.

glmnet solves the problem

[ min_ <eta_0,eta>frac<1> sum_^ w_i l(y_i,eta_0+eta^T x_i) + lambdaleft[(1-alpha)|eta|_2^2/2 + alpha |eta|_1 ight], ]

over a grid of values of (lambda) covering the entire range of possible solutions. Here (l(y_i,eta_i)) is the negative log-likelihood contribution for observation (i) e.g. for the Gaussian case it is (frac<1><2>(y_i-eta_i)^2) . ال elastic net penalty is controlled by (alpha) , and bridges the gap between lasso regression ( (alpha=1) , the default) and ridge regression ( (alpha=0) ). The tuning parameter (lambda) controls the overall strength of the penalty.

It is known that the ridge penalty shrinks the coefficients of correlated predictors towards each other while the lasso tends to pick one of them and discard the others. The elastic net penalty mixes these two: if predictors are correlated in groups, an (alpha=0.5) tends to either select or leave out the entire group of features. This is a higher level parameter, and users might pick a value upfront or experiment with a few different values. One use of (alpha) is for numerical stability for example, the elastic net with (alpha = 1 - epsilon) for some small (epsilon > 0) performs much like the lasso, but removes any degeneracies and wild behavior caused by extreme correlations.

The glmnet algorithms use cyclical coordinate descent, which successively optimizes the objective function over each parameter with others fixed, and cycles repeatedly until convergence. The package also makes use of the strong rules for efficient restriction of the active set. Due to highly efficient updates and techniques such as warm starts and active-set convergence, our algorithms can compute the solution path very quickly.

The code can handle sparse input-matrix formats, as well as range constraints on coefficients. The core of glmnet is a set of Fortran subroutines, which make for very fast execution.

The theory and algorithms in this implementation are described in Friedman, Hastie, and Tibshirani (2010) , Simon et al. (2011) , Tibshirani et al. (2012) and Simon, Friedman, and Hastie (2013) .


Contents

In statistics, an inference is drawn from a statistical model, which has been selected via some procedure. Burnham & Anderson, in their much-cited text on model selection, argue that to avoid overfitting, we should adhere to the "Principle of Parsimony". [3] The authors also state the following. [3] : 32–33

Overfitted models … are often free of bias in the parameter estimators, but have estimated (and actual) sampling variances that are needlessly large (the precision of the estimators is poor, relative to what could have been accomplished with a more parsimonious model). False treatment effects tend to be identified, and false variables are included with overfitted models. … A best approximating model is achieved by properly balancing the errors of underfitting and overfitting.

Overfitting is more likely to be a serious concern when there is little theory available to guide the analysis, in part because then there tend to be a large number of models to select from. The book Model Selection and Model Averaging (2008) puts it this way. [4]

Given a data set, you can fit thousands of models at the push of a button, but how do you choose the best? With so many candidate models, overfitting is a real danger. Is the monkey who typed Hamlet actually a good writer?

Regression Edit

In regression analysis, overfitting occurs frequently. [5] As an extreme example, if there are ص variables in a linear regression with ص data points, the fitted line can go exactly through every point. [6] For logistic regression or Cox proportional hazards models, there are a variety of rules of thumb (e.g. 5–9, [7] 10 [8] and 10–15 [9] — the guideline of 10 observations per independent variable is known as the "one in ten rule"). In the process of regression model selection, the mean squared error of the random regression function can be split into random noise, approximation bias, and variance in the estimate of the regression function. The bias–variance tradeoff is often used to overcome overfit models.

With a large set of explanatory variables that actually have no relation to the dependent variable being predicted, some variables will in general be falsely found to be statistically significant and the researcher may thus retain them in the model, thereby overfitting the model. This is known as Freedman's paradox.

Usually a learning algorithm is trained using some set of "training data": exemplary situations for which the desired output is known. The goal is that the algorithm will also perform well on predicting the output when fed "validation data" that was not encountered during its training.

Overfitting is the use of models or procedures that violate Occam's razor, for example by including more adjustable parameters than are ultimately optimal, or by using a more complicated approach than is ultimately optimal. For an example where there are too many adjustable parameters, consider a dataset where training data for y can be adequately predicted by a linear function of two independent variables. Such a function requires only three parameters (the intercept and two slopes). Replacing this simple function with a new, more complex quadratic function, or with a new, more complex linear function on more than two independent variables, carries a risk: Occam's razor implies that any given complex function is a priori less probable than any given simple function. If the new, more complicated function is selected instead of the simple function, and if there was not a large enough gain in training-data fit to offset the complexity increase, then the new complex function "overfits" the data, and the complex overfitted function will likely perform worse than the simpler function on validation data outside the training dataset, even though the complex function performed as well, or perhaps even better, on the training dataset. [10]

When comparing different types of models, complexity cannot be measured solely by counting how many parameters exist in each model the expressivity of each parameter must be considered as well. For example, it is nontrivial to directly compare the complexity of a neural net (which can track curvilinear relationships) with m parameters to a regression model with n parameters. [10]

Overfitting is especially likely in cases where learning was performed too long or where training examples are rare, causing the learner to adjust to very specific random features of the training data that have no causal relation to the target function. In this process of overfitting, the performance on the training examples still increases while the performance on unseen data becomes worse.

As a simple example, consider a database of retail purchases that includes the item bought, the purchaser, and the date and time of purchase. It's easy to construct a model that will fit the training set perfectly by using the date and time of purchase to predict the other attributes, but this model will not generalize at all to new data, because those past times will never occur again.

Generally, a learning algorithm is said to overfit relative to a simpler one if it is more accurate in fitting known data (hindsight) but less accurate in predicting new data (foresight). One can intuitively understand overfitting from the fact that information from all past experience can be divided into two groups: information that is relevant for the future, and irrelevant information ("noise"). Everything else being equal, the more difficult a criterion is to predict (i.e., the higher its uncertainty), the more noise exists in past information that needs to be ignored. The problem is determining which part to ignore. A learning algorithm that can reduce the chance of fitting noise is called "robust."

Consequences Edit

The most obvious consequence of overfitting is poor performance on the validation dataset. Other negative consequences include: [10]

  • A function that is overfitted is likely to request more information about each item in the validation dataset than does the optimal function gathering this additional unneeded data can be expensive or error-prone, especially if each individual piece of information must be gathered by human observation and manual data-entry.
  • A more complex, overfitted function is likely to be less portable than a simple one. At one extreme, a one-variable linear regression is so portable that, if necessary, it could even be done by hand. At the other extreme are models that can be reproduced only by exactly duplicating the original modeler's entire setup, making reuse or scientific reproduction difficult.

Remedy Edit

The optimal function usually needs verification on bigger or completely new datasets. There are, however, methods like minimum spanning tree or life-time of correlation that applies the dependence between correlation coefficients and time-series (window width). Whenever the window width is big enough, the correlation coefficients are stable and don't depend on the window width size anymore. Therefore, a correlation matrix can be created by calculating a coefficient of correlation between investigated variables. This matrix can be represented topologically as a complex network where direct and indirect influences between variables are visualized.

Underfitting occurs when a statistical model or machine learning algorithm cannot adequately capture the underlying structure of the data. It occurs when the model or algorithm does not fit the data enough. Underfitting occurs if the model or algorithm shows low variance but high bias (to contrast the opposite, overfitting from high variance and low bias). It is often a result of an excessively simple model [11] which is not able to process the complexity of the problem (see also approximation error). This results in a model which is not suitable to handle all the signal and is therefore forced to take some signal as noise. If instead a model is capable to handle the signal but anyways takes a part of it as noise as well, it is also considered to be underfitted. The latter case can happen if the loss function of a model includes a penalty which is too high in that specific case.


Extracting fit information #

Our final goal is to obtain useful information from the fitted models. We could manually look into each fit cell, but this is tedious. Instead, we’ll extract information from our fitted models by adding one or more lines to mutate() , and using map_*(fit, . ) to iterate through each fitted model. For example, the following extracts the p.values from each t.test into a new column called p :

map_dbl() is used because we want to return a number (a “double”) rather than a list of objects (which is what map() does). Explaining the variants of map() and how to use them is well beyond the scope of this post. The important point here is that we can iterate through our fitted models in the fit column to extract information for each group of data. For more details, I recommend reading the “The Map Functions” in R for Data Science.

Broom and unnest() #

In addition to extracting a single value like above, we can extract entire data frames of information generated via functions from the broom package (which are available for most of the common models in R). For example, the glance() function returns a one-row data frame of model information. Let’s extract this information into a new column called results :

If you extract information like this, the next thing you’re likely to want to do is unnest() it as follows:

We’ve now unnested all of the model information, which includes the ر value ( statistic ), the ص value ( p.value ), and many others.

We can do whatever we want with this information. For example, the below plots the group mpg means with confidence intervals generated by the t.test:


Step 6: Report your results

In addition to the graph, include a brief statement explaining the results of the regression model.

Reporting the results of simple linear regression We found a significant relationship between income and happiness (p < 0.001, R2 = 0.73 ± 0.0193), with a 0.73-unit increase in reported happiness for every $10,000 increase in income. Reporting the results of multiple linear regression In our survey of 500 towns, we found significant relationships between the frequency of biking to work and the frequency of heart disease and the frequency of smoking and frequency of heart disease (p < 0 and p<0.001, respectively).

Specifically we found a 0.2% decrease (± 0.0014) in the frequency of heart disease for every 1% increase in biking, and a 0.178% increase (± 0.0035) in the frequency of heart disease for every 1% increase in smoking.


شاهد الفيديو: حل مثال البرمجة الخطية بطريقة السمبلكس simplex method (شهر اكتوبر 2021).