کمترین مربعات کیست؟ توضیح بده.
روش حداقل مربعات (به انگلیسی: method of least squares) روشی در تحلیل رگرسیون است که برای حل دستگاه معادلاتی به کار می‌رود که تعداد معادله‌هایش بیش از تعداد مجهول‌هایش است. مهم‌ترین کاربرد روش کمترین مربعات در برازش منحنی بر داده‌ها است. مدل برازش شده بر داده‌ها، مدلی است که در آن کمیت formula_1 کمینه باشد.formula_2روش حداقل مربعات در زبان برنامهٔ نویسی R، بیشتر نرم‌افزارهای آماری و ریاضی (مانند Excel, SPSS, MATLAB و …) و ماشین حساب‌های مهندسی وجود دارد.تاریخچه.منشأ روش حداقل مربعات از نجوم و یافتن موقعیت ستارگان بوده‌است.ساختار ریاضی.برای برازش منحنی formula_3 بر داده‌ها، فرض می‌کنیم اندازه‌گیری‌ها مستقل از هم انجام شده‌اند و خطای formula_4 نیز در مقابل خطای formula_5 قابل صرف نظر است (مقادیر formula_4 بدون خطا هستند). تابع formula_7 علاوه بر formula_4، به ثوابتی که آن‌ها را با بردار formula_9 نشان می‌دهیم بستگی دارند. هدف، پیدا کردن مقادیر formula_9 است، به گونه‌ای که تابع formula_11 دقیق‌ترین پیش‌بینی را از formula_5 ارائه دهد. به این منظور، کمیت باقی مانده را به صورتformula_13تعریف می‌کنیم. اگر هر formula_14 از توزیع نرمال حول مقدار واقعی formula_15 با پهنای formula_16 پیروی کند، احتمال به دست آوردن formula_14 متناسب است با:formula_18است. احتمال مشاهدهٔ تمام مقادیر formula_5 این‌طور به دست می‌آید:formula_20formula_21کمیت formula_1 که در نما قرار دارد به صورتformula_23تعریف می‌شود. پس هدف، پیدا کردن formula_9 است؛ به گونه‌ای که formula_1 کمینه شود.formula_26برای بدست پارامتر بهینه باید از تابع مربعات گرادیان گرفته و آن را برابر با صفر قرار دهیم:formula_27حداقل مربعات بدون وزن.اگر فرض کنیم formula_28ها برای همهٔ داده‌ها برابر است، خواهیم داشت:formula_29سایر روش‌ها.سایر انواع روش حداقل مربعات، عبارت‌اند از کمترین مربعات دارای قید (Constrained)، کمترین مربعات وزن‌دار (Weighted) و کمترین مربعات مجموع (Total)نمونه‌ها.برازش خط.برای خط،formula_30با مشتق‌گیری جزئی، خواهیم داشت:formula_31formula_32در نتیجه:formula_33برازش خط مبدأ گذر.با انجام محاسبات بالا برای خط مبدأ گذر خواهیم داشت:formula_34برازش سهمی.برای سهمی،formula_35در نهایت، دستگاه معادلات برازش چنین به دست می‌آید:formula_36formula_37formula_38کمترین مربعات خطی.اگر فرض کنیم بُعد ورودی formula_39 است، یعنی formula_40 و تابع formula_41 یک تابع خطی است، مسئله رگرسیون به یک مسئله بهینه‌سازی برای پیداکردن formula_42 پارامتر تبدیل می‌شود. به این معنی که ما یک پارامتر چند متغیره به اسم formula_43 داریم و سعی می‌کنیم formula_5 را با ترکیبی خطی از formula_4تخمین بزنیم یعنی formula_46. حال اگر یک بعد دیگر به متغیر formula_4 اضافه کنیم و مقدارش را همیشه عدد ثابت formula_48 در نظر بگیریم (formula_49) و formula_4 را به صورتِ formula_51 تغییر دهیم، تخمینی که از formula_5 داریم در واقع ضرب نقطه ای بردار ورودی و بردار پارامترهای ماست یعنی formula_53. حال فرض کنیم که تعداد مثالهایی که قرار است برای تخمین پارامترها استفاده کنیمformula_54 است و این مثالها را به این شکل نمایش دهیم formula_55. همان‌طور که در مقدمه گفتیم پارامتر بهینه پارامتری است که تابع formula_56 را به حداقل برساند یعنی تابع پایین را:formula_57از آنجا که تابع formula_58 نسبت به formula_9 تابعی کاملاً محدب است، در نقطه مینیمم گرادیان ما صفر خواهد بود و این روش پارامتر بهینه را بدست می‌دهد. برای تسهیل کار شکل تابع را با بکارگیری چند ماتریس ساده می‌کنیم. دو ماتریس برای این کار نیاز داردیم ماتریس formula_60 و ماتریس formula_61. ماتریس formula_60 ماتریس ورودهای چندمتغیره ماست. هر سطر معادل یک نمونه از داده ماست، سطر formula_63ام برابر است با formula_63امین نمونه ورودی ما یعنی بردار formula_65، از اینرو formula_60 یک ماتریس formula_67 خواهد بود. ماتریس formula_61 از طرف دیگر برابر است با مجموعه متغیرهای وابسته داده ما. سطر formula_63ام این ماتریس برابر است با متغیر وابسته برای formula_63امین نمونه داده ما یا همان formula_14. ماتریس formula_61 یک ماتریس formula_73 است. با کمک این دو ماتریس می‌توان تابع ضرر را به شکل ذیل تعریف کرد:formula_74حال گرادیان این تابع را نسبت به formula_9 پیدا می‌کنیم که می‌شود:formula_76با برابر قرار دادن گرادیان با صفر پارامتر بهینه بدست می‌آید:formula_77پس پارامتر بهینه ما برابر است با:formula_78خطای روش حداقل مربعات.خطای برازش خط.خطای شیب و عرض از مبدأ خط برازش شده برابر است با (formula_79):formula_80برای خط مبدأ گذرformula_81پیاده‌سازی روش حداقل مربعات.زبان R.در زبان R، برازش تابع خطی به فرمformula_82بر داده‌ها به کمک تابع lsfit انجام می‌شود. قطعه کدهای زیر، نحوهٔ پیاده‌سازی و خروجی را برای یک تابع ۲ متغیره نشان می‌دهد.x = matrix(c(1.19, 1.08, 2.45, 2.53, 3.30, 2.97, 1.65, 0.58, 0.26, 4.39, 4.06, 0.55, 1.80, 1.68, 3.24, 2.23, 3.80, 4.63, 3.78, 4.84, # x_1 values 1.60, 5.88, 1.55, 1.86, 1.06, 3.85, 9.29, 13.04, 14.52, 0.50, 2.89, 16.99, 15.42, 17.36, 11.82, 16.38, 11.06, 9.08, 17.75, 15.17), # x_2 values ncol = 2)y = c(23.59, 31.95, 33.15, 34.00, 37.80, 41.07, 42.38, 43.76, 44.10, 44.16, 46.83, 50.52, 56.81, 59.04, 60.12, 61.84, 62.16, 64.18, 75.45, 76.77)lsfit(x, y, intercept = TRUE)نرم‌افزار Excel.در نرم‌افزار اکسل، برازش تابع خطی به فرمformula_82بر داده‌ها به کمک تابع LINEST انجام می‌شود. این تابع جزو توابع آرایه‌ای است و با فشردن Ctrl+Enter اجرا می‌شود. ورودی تابع به شکلLINEST(known_y's, [known_x's], [const], [stats])است که در آن به ترتیب مقادیر y، مقادیر x و سپس دو مقدار بولی وارد می‌شوند که اولی برای مبدأ گذر نبودن و دومی برای بازگرداندن مقادیر خطا، رگرسیون و … است. خروجی تابع در جدولی به صورت زیر برگردانده می‌شود:منظور از formula_84 خطا است. خانه‌های ردیف دوم به بعد، در صورتی نشان داده می‌شوند که stats=TRUE باشد.ماشین حساب CASIO fx-82ES.اکثر ماشین حساب‌های مهندسی مجهز به ویژگی برازش منحنی به روش کمترین مربعات هستند. در ماشین حساب‌های کاسیو این ویژگی در بخش STAT قرار دارد.لاسو (LASSO).لاسو یک مدل تنظیم شده از مدل کمترین مربعات است. تنظیم به این صورت است که formula_85 یا نرم L1-norm کمتر از مقدار مشخصی باشد. این معادل این است که در هنگام بهینه‌سازی هزینهٔ کمترین مربعات formula_86 را نیز اضافه کرده باشیم. معادل بیزی این مدل این است که توزیع پیشین توزیع لاپلاس را برای پارامترهای مدل خطی استفاده کرده باشیم.تفاوت اساسی بین مدل ridge regression و لاسو این است که در اولی علی‌رغم افزایش جریمه، ضرایب در عین غیرصفر بودن کوچکتر می‌شوند، علی‌رغم اینکه صفر نمی‌شوند، در صورتی که در لاسو با افزایش جریمه، تعداد بسیار بیشتری از ضرایب به سمت صفر میل می‌کنند. می‌توان بهینه‌سازی مربوط به لاسو را با روش‌های بهینه‌سازی درجه دوم یا در حالت کلی بهینه‌سازی محدب انجام داد. به دلیل ایجاد ضرایب کم، لاسو در بسیاری از کاربردها مانند سنجش فشرده مورد استفاده قرار می‌گیرد.لاسو در رگرسیون خطی.پیچیدگی مدلهای پارامتری با تعداد پارامترهای مدل و مقادیر آن‌ها سنجیده می‌شود. هرچه این پیچیدگی بیشتر باشد خطر بیش‌برازش (Overfitting) برای مدل بیشتر است. پدیده بیش‌برازش زمانی رخ می‌دهد که مدل بجای یادگیری الگوهای داده، داده را را حفظ می‌کند و در عمل یادگیری به خوبی انجام نمی‌شود. برای جلوگیری از بیش‌برازش در مدلهای خطی مانند رگرسیون خطی جریمه‌ای به تابع هزینه اضافه می‌شود تا از افزایش زیاد پارامترها جلوگیری شود. به این کار تنظیم مدل یا Regularization گفته می‌شود. یکی از این روشهای تنظیم مدل روش لاسو است که در آن ضریبی از نُرمِ formula_87به تابع هزینه اضافه می‌شود، در رگرسیون خطی تابع هزینه به شکل پایین تغییر می‌کند:formula_88این روش تنظیم مدل باعث می‌شود که بسیاری از پارامترهای مدل نهائی صفر شوند و مدل به اصلاح خلوت (Sparse) شود.