روش مربع های تقریبی روش حداقل مربعات در کجا استفاده می شود؟

این به طور گسترده در اقتصاد سنجی در قالب یک تفسیر اقتصادی روشن از پارامترهای آن استفاده می شود.

رگرسیون خطی به یافتن معادله شکل می رسد

یا

معادله فرم بر اساس مقادیر پارامتر مشخص شده اجازه می دهد ایکسمقادیر نظری مشخصه حاصل را داشته باشد و مقادیر واقعی عامل را جایگزین آن کند. ایکس.

ساخت و ساز رگرسیون خطیبه تخمین پارامترهای آن ختم می شود - آو V.تخمین پارامترهای رگرسیون خطی را می توان با استفاده از روش های مختلف یافت.

رویکرد کلاسیک برای برآورد پارامترهای رگرسیون خطی بر اساس است روش کمترین مربعات (MNC).

روش حداقل مربعات به ما امکان می دهد چنین تخمین پارامترهایی را بدست آوریم آو که در آن مجموع انحرافات مجذور مقادیر واقعی مشخصه حاصل است (y)از محاسبه شده (نظری) کمترین:

برای یافتن حداقل یک تابع، باید مشتقات جزئی را برای هر یک از پارامترها محاسبه کنید آو بو آنها را برابر صفر قرار دهید.

بیایید نشان دهیم از طریق S، سپس:

با تبدیل فرمول، سیستم زیر را بدست می آوریم معادلات عادیبرای تخمین پارامترها آو V:

حل سیستم معادلات عادی (3.5) یا به روش حذف متوالیمتغیرها یا با روش تعیین کننده ها، برآوردهای مورد نیاز پارامترها را پیدا می کنیم آو V.

پارامتر Vضریب رگرسیون نامیده می شود. مقدار آن میانگین تغییر در نتیجه را با تغییر ضریب یک واحد نشان می دهد.

معادله رگرسیون همیشه با نشانگر نزدیک بودن اتصال تکمیل می شود. هنگام استفاده از رگرسیون خطی، چنین شاخصی ضریب همبستگی خطی است. تغییرات مختلفی در فرمول وجود دارد ضریب خطیهمبستگی ها برخی از آنها در زیر آورده شده است:

همانطور که مشخص است، ضریب همبستگی خطی در حدود: -1 است 1.

برای ارزیابی کیفیت انتخاب تابع خطیمربع محاسبه می شود

ضریب همبستگی خطی نامیده می شود ضریب تعیینضریب تعیین، نسبت واریانس مشخصه حاصل را مشخص می کند توضیح داده شده توسط رگرسیون، در واریانس کلعلامت حاصل:

بر این اساس، مقدار 1 سهم واریانس را مشخص می کند ناشی از تأثیر عوامل دیگری است که در مدل در نظر گرفته نشده اند.

سوالاتی برای خودکنترلی

1. ماهیت روش حداقل مربعات؟

2. رگرسیون زوجی چند متغیر ارائه می دهد؟

3. چه ضریبی نزدیک بودن ارتباط بین تغییرات را مشخص می کند؟

4. ضریب تعیین در چه حدودی تعیین می شود؟

5. برآورد پارامتر b در تحلیل همبستگی-رگرسیون؟

1. کریستوفر دوگرتی. مقدمه ای بر اقتصاد سنجی. - M.: INFRA - M، 2001 - 402 p.

2. س.ا. بورودیچ. اقتصاد سنجی. Minsk LLC "دانش جدید" 2001.


3. R.U. رخمتووا دوره کوتاهدر اقتصاد سنجی آموزش. آلماتی 2004. -78 ص.

4. I.I. Eliseeva. اقتصاد سنجی. - م.: "مالی و آمار"، 2002

5. ماهنامه اطلاعات و تحلیلی.

مدل های اقتصادی غیرخطی مدل های رگرسیون غیرخطی تبدیل متغیرها

مدل های اقتصادی غیرخطی..

تبدیل متغیرها

ضریب الاستیسیته.

اگر روابط غیر خطی بین پدیده های اقتصادی وجود داشته باشد، آنها با استفاده از توابع غیرخطی مربوطه بیان می شوند: برای مثال، هذلولی متساوی الاضلاع , سهمی های درجه دوم و غیره.

دو دسته رگرسیون غیرخطی وجود دارد:

1. رگرسیون هایی که با توجه به متغیرهای توضیحی موجود در تجزیه و تحلیل غیرخطی هستند، اما با توجه به پارامترهای برآورد شده خطی هستند، به عنوان مثال:

چند جمله ای ها درجات مختلف - , ;

هذلولی متساوی الاضلاع - ;

تابع نیمه لگاریتمی - .

2. رگرسیون هایی که در پارامترهای تخمین زده شده غیرخطی هستند، به عنوان مثال:

قدرت - ؛

نمایشی - ;

نمایی - .

مجموع مجذور انحرافات مقادیر فردی مشخصه حاصل دراز مقدار متوسط ​​ناشی از تأثیر دلایل بسیاری است. اجازه دهید به طور مشروط کل مجموعه دلایل را به دو گروه تقسیم کنیم: عامل مورد مطالعه xو عوامل دیگر

اگر عامل بر نتیجه تأثیری نداشته باشد، خط رگرسیون در نمودار موازی با محور است. اوهو

سپس کل واریانس مشخصه حاصل از تأثیر عوامل دیگر و مبلغ کلانحرافات مجذور با باقیمانده منطبق خواهند بود. اگر عوامل دیگر بر نتیجه تأثیر نگذارند، پس y گره خورده استبا ایکساز نظر عملکردی و مجموع مربعات باقیمانده صفر است. در این حالت، مجموع انحرافات مجذور تبیین شده توسط رگرسیون با مجموع مجذورات یکسان است.

از آنجایی که همه نقاط میدان همبستگی روی خط رگرسیون قرار ندارند، پراکندگی آنها همیشه در نتیجه تأثیر عامل رخ می دهد. ایکس، یعنی رگرسیون درتوسط ایکس،و ناشی از علل دیگر (تغییر غیر قابل توضیح). مناسب بودن یک خط رگرسیون برای پیش‌بینی بستگی به این دارد که چه بخشی از تغییرات کل صفت درتغییرات توضیح داده شده را به حساب می آورد

بدیهی است که اگر مجذور انحرافات ناشی از رگرسیون بیشتر از مجموع مجذور باقیمانده باشد، معادله رگرسیون از نظر آماری معنادار است و عامل ایکستاثیر بسزایی در نتیجه دارد تو

, یعنی با تعداد آزادی تغییر مستقل یک مشخصه. تعداد درجات آزادی مربوط به تعداد واحدهای جمعیت n و تعداد ثابت های تعیین شده از آن است. در رابطه با مسئله مورد مطالعه، تعداد درجات آزادی باید نشان دهد که چه تعداد انحراف مستقل از آن وجود دارد پ

ارزیابی اهمیت معادله رگرسیون به عنوان یک کل با استفاده از داده می شود اف-معیار فیشر در این مورد، یک فرضیه صفر مطرح می شود که ضریب رگرسیون برابر با صفر است، یعنی. b = 0 و در نتیجه فاکتور ایکسبر نتیجه تأثیر نمی گذارد تو

محاسبه فوری آزمون F با تحلیل واریانس انجام می شود. موقعیت مرکزیتجزیه مجموع مجذور انحرافات متغیر را اشغال می کند دراز مقدار متوسط دربه دو بخش - "توضیح" و "غیر قابل توضیح":

- مجموع مجذور انحرافات.

- مجموع انحرافات مجذور توضیح داده شده توسط رگرسیون.

- مجموع باقیمانده انحرافات مجذور.

هر مجموع انحرافات مجذور مربوط به تعداد درجات آزادی است , یعنی با تعداد آزادی تغییر مستقل یک مشخصه. تعداد درجات آزادی با تعداد واحدهای جمعیتی مرتبط است nو با تعداد ثابت های تعیین شده از آن. در رابطه با مسئله مورد مطالعه، تعداد درجات آزادی باید نشان دهد که چه تعداد انحراف مستقل از آن وجود دارد پممکن است مورد نیاز برای تشکیل یک مجموع معین از مربع.

پراکندگی به ازای درجه آزادیD.

نسبت های F (آزمون F):

اگر فرضیه صفر درست باشد، سپس فاکتوریل و واریانس باقیماندهتفاوتی با یکدیگر ندارند برای H 0، ابطال لازم است به طوری که پراکندگی عامل چندین بار از پراکندگی باقیمانده بیشتر شود. Snedekor آماردان انگلیسی جداول مقادیر بحرانی را تهیه کرد اف-روابط در سطوح مختلف اهمیت فرضیه صفر و تعداد متفاوت درجات آزادی. مقدار جدول افمعیار حداکثر مقدار نسبت واریانس است که در صورت واگرایی تصادفی برای این سطحاحتمال وجود یک فرضیه صفر مقدار محاسبه شده افاگر o بزرگتر از جدول باشد، روابط قابل اعتماد در نظر گرفته می شوند.

در این صورت فرضیه صفر مبنی بر عدم وجود رابطه بین نشانه ها رد می شود و در مورد اهمیت این رابطه نتیجه گیری می شود: F fact > جدول F H 0 رد می شود.

اگر مقدار کمتر از جدول باشد F fact ‹، F جدول، پس احتمال فرضیه صفر بالاتر از سطح مشخص شده است و بدون خطر جدی نتیجه گیری اشتباه در مورد وجود یک رابطه قابل رد نیست. در این حالت معادله رگرسیون از نظر آماری ناچیز در نظر گرفته می شود. اما او منحرف نمی شود.

خطای استاندارد ضریب رگرسیون

برای ارزیابی اهمیت ضریب رگرسیون، مقدار آن با خطای استاندارد آن مقایسه می شود، یعنی مقدار واقعی تعیین می شود. تی-آزمون دانش آموزی: که سپس با مقدار جدول در سطح معنی داری معین و تعداد درجات آزادی مقایسه می شود ( n- 2).

خطای پارامتر استاندارد آ:

اهمیت ضریب همبستگی خطی بر اساس بزرگی خطا بررسی می شود. ضریب همبستگی t r:

واریانس کل صفت ایکس:

رگرسیون خطی چندگانه

ساختمان نمونه

رگرسیون چندگانهنشان دهنده رگرسیون علامت حاصل با دو و است تعداد زیادیعوامل، یعنی مدلی از فرم

در صورتی که بتوان از تأثیر سایر عوامل مؤثر بر موضوع مطالعه چشم پوشی کرد، رگرسیون می تواند نتایج خوبی در مدل سازی به همراه داشته باشد. رفتار متغیرهای اقتصادی منفرد قابل کنترل نیست، یعنی نمی توان از برابری سایر شرایط برای ارزیابی تأثیر یک عامل مورد مطالعه اطمینان حاصل کرد. در این صورت باید سعی کنید با وارد کردن عوامل دیگر به مدل، یعنی معادله ای، تأثیر عوامل دیگر را شناسایی کنید. رگرسیون چندگانه: y = a+b 1 x 1 +b 2 +…+b p x p + .

هدف اصلی رگرسیون چندگانه ساختن مدلی با تعداد زیادی فاکتور است، در حالی که تأثیر هر یک از آنها به طور جداگانه و همچنین تأثیر ترکیبی آنها بر شاخص مدل شده تعیین می شود. مشخصات مدل شامل دو محدوده موضوع است: انتخاب عوامل و انتخاب نوع معادله رگرسیون.

مثال.

داده های تجربی در مورد مقادیر متغیرها ایکسو دردر جدول آورده شده است.

در نتیجه تراز آنها، تابع به دست می آید

استفاده كردن روش حداقل مربع، این داده ها را با یک وابستگی خطی تقریب بزنید y=ax+b(پیدا کردن پارامترها آو ب). دریابید که کدام یک از دو خط (به معنای روش حداقل مربعات) داده های تجربی را بهتر تراز می کند. یک نقاشی بکشید.

ماهیت روش حداقل مربعات (LSM).

وظیفه یافتن ضرایب وابستگی خطی است که در آن تابع دو متغیر است آو ب کمترین مقدار را می گیرد. یعنی داده شده آو بمجموع انحرافات مجذور داده های تجربی از خط مستقیم یافت شده کوچکترین خواهد بود. این نکته کل روش حداقل مربعات است.

بنابراین، حل مثال به یافتن حداکثر یک تابع از دو متغیر ختم می شود.

استخراج فرمول برای یافتن ضرایب.

یک سیستم دو معادله با دو مجهول گردآوری و حل می شود. یافتن مشتقات جزئی یک تابع توسط متغیرها آو ب، این مشتقات را با صفر برابر می کنیم.

ما سیستم معادلات حاصل را با استفاده از هر روشی حل می کنیم (مثلا با روش جایگزینییا روش کرامر) و فرمول های یافتن ضرایب را با استفاده از روش حداقل مربعات (LSM) بدست آورید.

داده شده آو بتابع کمترین مقدار را می گیرد. دلیل این واقعیت ارائه شده است زیر در متن انتهای صفحه.

این کل روش حداقل مربعات است. فرمول برای یافتن پارامتر آشامل مجموع،،، و پارامتر است n- مقدار داده های تجربی توصیه می کنیم مقادیر این مقادیر را جداگانه محاسبه کنید. ضریب ببعد از محاسبه پیدا شد آ.

وقت آن است که نمونه اصلی را به خاطر بسپارید.

راه حل.

در مثال ما n=5. برای راحتی محاسبه مقادیری که در فرمول های ضرایب مورد نیاز گنجانده شده است، جدول را پر می کنیم.

مقادیر سطر چهارم جدول با ضرب مقادیر سطر دوم در مقادیر سطر 3 برای هر عدد به دست می آید. من.

مقادیر ردیف پنجم جدول با مربع کردن مقادیر ردیف دوم برای هر عدد به دست می آید. من.

مقادیر در آخرین ستون جدول مجموع مقادیر در سراسر سطرها هستند.

برای یافتن ضرایب از فرمول روش حداقل مربعات استفاده می کنیم آو ب. مقادیر مربوطه را از آخرین ستون جدول در آنها جایگزین می کنیم:

از این رو، y = 0.165x+2.184- خط مستقیم تقریبی مورد نظر.

باقی مانده است که بفهمیم کدام یک از خطوط y = 0.165x+2.184یا داده های اصلی را بهتر تقریب می کند، یعنی با استفاده از روش حداقل مربعات تخمین می زند.

تخمین خطای روش حداقل مربعات.

برای انجام این کار، باید مجموع انحرافات مجذور داده های اصلی را از این خطوط محاسبه کنید و ، یک مقدار کوچکتر مربوط به خطی است که داده های اصلی را به معنای روش حداقل مربعات بهتر تقریب می کند.

از آن زمان، سپس مستقیم y = 0.165x+2.184داده های اصلی را بهتر تقریب می کند.

تصویر گرافیکی روش حداقل مربعات (LS).

همه چیز به وضوح در نمودارها قابل مشاهده است. خط قرمز خط مستقیم پیدا شده است y = 0.165x+2.184، خط آبی است ، نقطه های صورتی داده های اصلی هستند.

در عمل، هنگام مدل‌سازی فرآیندهای مختلف - به ویژه اقتصادی، فیزیکی، فنی، اجتماعی - از یک یا دیگر روش برای محاسبه مقادیر تقریبی توابع از مقادیر شناخته شده آنها در نقاط ثابت خاص استفاده می‌شود.

این نوع مشکل تقریب تابع اغلب به وجود می آید:

    هنگام ساخت فرمول های تقریبی برای محاسبه مقادیر مقادیر مشخصه فرآیند مورد مطالعه با استفاده از داده های جدولی به دست آمده در نتیجه آزمایش.

    در ادغام عددی، تمایز، حل معادلات دیفرانسیلو غیره.؛

    در صورت لزوم، مقادیر توابع را در نقاط میانی فاصله در نظر گرفته شده محاسبه کنید.

    هنگام تعیین مقادیر مقادیر مشخصه یک فرآیند خارج از بازه در نظر گرفته شده، به ویژه هنگام پیش بینی.

اگر برای مدل‌سازی فرآیند مشخصی که توسط جدول مشخص شده است، تابعی بسازیم که تقریباً این فرآیند را بر اساس روش حداقل مربعات توصیف کند، آن را تابع تقریبی (رگرسیون) می‌نامیم و وظیفه ساخت توابع تقریبی را خود نامیده می‌شود. یک مشکل تقریبی

این مقاله قابلیت‌های بسته MS Excel را برای حل این نوع مشکلات مورد بحث قرار می‌دهد، همچنین روش‌ها و تکنیک‌هایی را برای ساخت (ایجاد) رگرسیون برای جدول ارائه می‌دهد. توابع مشخص شده(که مبنای تحلیل رگرسیون است).

اکسل دو گزینه برای ایجاد رگرسیون دارد.

    افزودن رگرسیون های انتخابی (خطوط روند) به نموداری که بر اساس جدول داده برای مشخصه فرآیند مورد مطالعه ساخته شده است (فقط در صورتی که نمودار ساخته شده باشد موجود است).

    با استفاده از توابع آماری داخلی کاربرگ اکسل، به شما امکان می دهد رگرسیون ها (خطوط روند) را مستقیماً از جدول داده های منبع بدست آورید.

اضافه کردن خطوط روند به نمودار

برای جدولی از داده‌ها که یک فرآیند را توصیف می‌کند و با یک نمودار نشان داده می‌شود، اکسل یک ابزار تحلیل رگرسیون موثر دارد که به شما امکان می‌دهد:

    بر اساس روش حداقل مربعات بسازید و پنج نوع رگرسیون را به نمودار اضافه کنید، که فرآیند مورد مطالعه را با درجات مختلف دقت مدل می کند.

    معادله رگرسیون ساخته شده را به نمودار اضافه کنید.

    میزان مطابقت رگرسیون انتخاب شده با داده های نمایش داده شده در نمودار را تعیین کنید.

بر اساس داده های نمودار، اکسل به شما امکان می دهد انواع رگرسیون های خطی، چند جمله ای، لگاریتمی، توانی، نمایی را به دست آورید که با معادله مشخص می شوند:

y = y(x)

که در آن x یک متغیر مستقل است که اغلب مقادیر دنباله ای از اعداد طبیعی (1؛ 2؛ 3؛ ...) را می گیرد و برای مثال، شمارش معکوس زمان فرآیند مورد مطالعه (ویژگی ها) را تولید می کند.

1 . رگرسیون خطی برای مدل‌سازی ویژگی‌هایی که مقادیر آنها با نرخ ثابت افزایش یا کاهش می‌یابد خوب است. این ساده ترین مدلی است که می توان برای فرآیند مورد مطالعه ساخت. مطابق با معادله ساخته شده است:

y = mx + b

که در آن m مماس شیب رگرسیون خطی بر محور x است. ب - مختصات نقطه تقاطع رگرسیون خطی با محور ارتین.

2 . یک خط روند چند جمله‌ای برای توصیف ویژگی‌هایی که دارای چندین حد متمایز هستند (حداکثر و حداقل) مفید است. انتخاب درجه چند جمله ای بر اساس تعداد اکسترم های مشخصه مورد مطالعه تعیین می شود. بنابراین، یک چند جمله ای درجه دوم به خوبی می تواند فرآیندی را توصیف کند که تنها یک حداکثر یا حداقل دارد. چند جمله ای درجه سوم - بیش از دو انتها. چند جمله ای درجه چهارم - بیش از سه انتها و غیره نیست.

در این حالت، خط روند مطابق با معادله ساخته می شود:

y = c0 + c1x + c2x2 + c3x3 + c4x4 + c5x5 + c6x6

که در آن ضرایب c0، c1، c2،...c6 ثابت هایی هستند که مقادیر آنها در حین ساخت تعیین می شود.

3 . خط روند لگاریتمی با موفقیت در مدل سازی مشخصه هایی استفاده می شود که مقادیر آنها در ابتدا به سرعت تغییر می کند و سپس به تدریج تثبیت می شود.

y = c ln(x) + b

4 . خط روند قانون قدرت نتایج خوبی می دهد اگر مقادیر رابطه مورد مطالعه با تغییر ثابت در نرخ رشد مشخص شود. نمونه ای از چنین وابستگی، نمودار حرکت شتاب یکنواخت یک ماشین است. اگر داده ها حاوی صفر یا مقادیر منفی، نمی توانید از خط روند برق استفاده کنید.

مطابق با معادله ساخته شده است:

y = c xb

که در آن ضرایب b و c ثابت هستند.

5 . هنگامی که نرخ تغییر داده ها به طور مداوم در حال افزایش است، باید از خط روند نمایی استفاده شود. برای داده های حاوی مقادیر صفر یا منفی، این نوع تقریب نیز قابل اجرا نیست.

مطابق با معادله ساخته شده است:

y = c ebx

که در آن ضرایب b و c ثابت هستند.

هنگام انتخاب یک خط روند، اکسل به طور خودکار مقدار R2 را محاسبه می کند، که قابلیت اطمینان تقریب را مشخص می کند: هر چه مقدار R2 به وحدت نزدیکتر باشد، خط روند با اطمینان بیشتری به فرآیند مورد مطالعه تقریب می کند. در صورت لزوم، مقدار R2 همیشه می تواند در نمودار نمایش داده شود.

با فرمول تعیین می شود:

برای افزودن خط روند به یک سری داده:

    یک نمودار را بر اساس یک سری داده فعال کنید، یعنی در ناحیه نمودار کلیک کنید. مورد نمودار در منوی اصلی ظاهر می شود.

    پس از کلیک بر روی این مورد، منویی روی صفحه ظاهر می شود که در آن باید دستور Add trend line را انتخاب کنید.

با حرکت دادن نشانگر ماوس بر روی نمودار مربوط به یکی از سری های داده و کلیک راست، می توان همین اقدامات را به راحتی اجرا کرد. در منوی زمینه ظاهر شده، دستور Add trend line را انتخاب کنید. کادر محاوره‌ای Trendline با باز شدن تب Type روی صفحه ظاهر می‌شود (شکل 1).

پس از این شما نیاز دارید:

نوع خط روند مورد نیاز را در زبانه Type انتخاب کنید (نوع Linear به طور پیش فرض انتخاب شده است). برای نوع Polynomial در قسمت Degree درجه چند جمله ای انتخاب شده را مشخص کنید.

1 . فیلد Built on series تمام سری داده ها را در نمودار مورد نظر فهرست می کند. برای افزودن یک خط روند به یک سری داده خاص، نام آن را در قسمت Built on series انتخاب کنید.

در صورت لزوم با رفتن به تب Parameters (شکل 2) می توانید پارامترهای زیر را برای خط روند تنظیم کنید:

    نام خط روند را در نام فیلد منحنی تقریبی (صاف) تغییر دهید.

    تعداد دوره ها (به جلو یا عقب) را برای پیش بینی در قسمت Forecast تنظیم کنید.

    معادله خط روند را در ناحیه نمودار نمایش دهید، که برای آن باید معادله نمایش را در کادر چک نمودار فعال کنید.

    مقدار اعتبار تقریبی R2 را در ناحیه نمودار نمایش دهید، که برای آن باید کادر انتخاب Place the approximation reliability on the diagram (R^2) را فعال کنید.

    نقطه تقاطع خط روند را با محور Y تنظیم کنید، که برای آن باید چک باکس را برای تقاطع منحنی با محور Y در یک نقطه فعال کنید.

    روی دکمه OK کلیک کنید تا کادر محاوره ای بسته شود.

برای شروع ویرایش خط روند از قبل ترسیم شده، سه راه وجود دارد:

    با انتخاب خط روند از منوی Format از دستور Selected trend line استفاده کنید.

    دستور Format line trend را از منوی زمینه انتخاب کنید که با کلیک راست روی خط روند فراخوانی می شود.

    روی خط روند دوبار کلیک کنید.

کادر گفتگوی Trend Line Format روی صفحه ظاهر می شود (شکل 3) که شامل سه زبانه است: View، Type، Parameters و محتویات دو مورد آخر کاملاً با زبانه های مشابه کادر گفتگوی Trend Line مطابقت دارد (شکل 1). -2). در تب View می توانید نوع خط، رنگ و ضخامت آن را تعیین کنید.

برای حذف خط روندی که قبلاً ترسیم شده است، خط روندی که باید حذف شود را انتخاب کنید و کلید Delete را فشار دهید.

مزایای ابزار تحلیل رگرسیون در نظر گرفته شده عبارتند از:

    سهولت نسبی ساخت یک خط روند روی نمودارها بدون ایجاد جدول داده برای آن؛

    فهرست نسبتاً گسترده ای از انواع خطوط روند پیشنهادی، و این فهرست شامل رایج ترین انواع رگرسیون است.

    توانایی پیش بینی رفتار فرآیند مورد مطالعه در هر سطح دلخواه (در داخل حس مشترک) تعداد قدم ها به جلو و عقب.

    توانایی به دست آوردن معادله خط روند به صورت تحلیلی؛

    امکان به دست آوردن یک ارزیابی از قابلیت اطمینان تقریب، در صورت لزوم.

معایب شامل موارد زیر است:

    ساخت یک خط روند تنها در صورتی انجام می شود که نموداری بر اساس یک سری داده وجود داشته باشد.

    فرآیند تولید سری داده‌ها برای مشخصه مورد مطالعه بر اساس معادلات خط روند به‌دست‌آمده برای آن تا حدودی درهم‌آمیز است: معادلات رگرسیون مورد نیاز با هر تغییر در مقادیر سری داده‌های اصلی به‌روزرسانی می‌شوند، اما فقط در محدوده نمودار. ، در حالی که سری داده ها، تولید شده بر اساس معادله خط روند قدیمی، بدون تغییر باقی می ماند.

    در گزارش‌های PivotChart، تغییر نمای نمودار یا گزارش PivotTable مرتبط، خطوط روند موجود را حفظ نمی‌کند، به این معنی که قبل از ترسیم خطوط روند یا فرمت‌بندی گزارش PivotChart، باید مطمئن شوید که طرح‌بندی گزارش الزامات مورد نیاز را برآورده می‌کند.

خطوط روند را می توان برای تکمیل سری داده های ارائه شده در نمودارهایی مانند نمودار، هیستوگرام، نمودارهای مسطح غیر استاندارد، نمودارهای میله ای، نمودارهای پراکنده، نمودارهای حبابی و نمودارهای سهام استفاده کرد.

شما نمی توانید خطوط روند را به سری های داده در نمودارهای سه بعدی، عادی، رادار، پای و دونات اضافه کنید.

استفاده از توابع داخلی اکسل

اکسل همچنین دارای یک ابزار تحلیل رگرسیون برای رسم خطوط روند خارج از منطقه نمودار است. تعدادی از توابع کاربرگ آماری وجود دارد که می توانید برای این منظور از آنها استفاده کنید، اما همه آنها فقط به شما امکان می دهند رگرسیون های خطی یا نمایی بسازید.

اکسل چندین توابع برای ساخت رگرسیون خطی دارد، به ویژه:

    روند؛

  • SLOPE و CUT.

و همچنین چندین تابع برای ساخت یک خط روند نمایی، به ویژه:

    LGRFPRIBL.

لازم به ذکر است که تکنیک های ساخت رگرسیون با استفاده از توابع TREND و GROWTH تقریباً یکسان است. همین را می توان در مورد جفت توابع LINEST و LGRFPRIBL گفت. برای این چهار تابع، ایجاد جدول مقادیر از ویژگی‌های اکسل مانند فرمول‌های آرایه استفاده می‌کند که تا حدودی فرآیند ایجاد رگرسیون را به هم می‌ریزد. اجازه دهید همچنین توجه داشته باشیم که ساخت رگرسیون خطی، به نظر ما، به راحتی با استفاده از توابع SLOPE و INTERCEPT انجام می شود، که در آن اولی شیب رگرسیون خطی را تعیین می کند، و دومی قطعه قطع شده توسط رگرسیون را تعیین می کند. محور y

مزایای ابزار توابع داخلی برای تحلیل رگرسیون عبارتند از:

    یک فرآیند نسبتا ساده و یکنواخت برای تولید سری داده های مشخصه مورد مطالعه برای همه توابع آماری داخلی که خطوط روند را تعریف می کنند.

    روش استاندارد برای ساخت خطوط روند بر اساس سری داده های تولید شده؛

    توانایی پیش بینی رفتار فرآیند مورد مطالعه در مقدار مورد نیازقدم به جلو یا عقب

معایب شامل این واقعیت است که اکسل توابع داخلی برای ایجاد انواع دیگر خطوط روند (به جز خطی و نمایی) ندارد. این شرایط اغلب امکان انتخاب یک مدل به اندازه کافی دقیق از فرآیند مورد مطالعه و همچنین به دست آوردن پیش بینی های نزدیک به واقعیت را نمی دهد. علاوه بر این، هنگام استفاده از توابع TREND و GROWTH، معادلات خطوط روند مشخص نیست.

لازم به ذکر است که نویسندگان قصد نداشتند درس تحلیل رگرسیون را با درجه ای از کامل ارائه دهند. وظیفه اصلی آن این است که با استفاده از مثال های خاص، قابلیت های بسته اکسل را هنگام حل مسائل تقریبی نشان دهد. نشان دهید که اکسل چه ابزارهای موثری برای ایجاد رگرسیون و پیش بینی دارد. نشان می دهد که چگونه چنین مشکلاتی را می توان به راحتی حتی توسط کاربری که دانش گسترده ای از تحلیل رگرسیون ندارد حل کرد.

نمونه هایی از حل مسائل خاص

بیایید به حل مشکلات خاص با استفاده از ابزارهای فهرست شده اکسل نگاه کنیم.

مشکل 1

با جدولی از داده ها در مورد سود یک شرکت حمل و نقل موتوری برای سال 1995-2002. شما باید موارد زیر را انجام دهید:

    یک نمودار بسازید.

    خطوط روند خطی و چند جمله ای (دو و مکعبی) را به نمودار اضافه کنید.

    با استفاده از معادلات خط روند، داده های جدولی در مورد سود شرکت برای هر خط روند برای 1995-2004 به دست آورید.

    برای سال های 2003 و 2004 سود شرکت را پیش بینی کنید.

راه حل مشکل

    در محدوده سلول های A4:C11 کاربرگ اکسل، کاربرگ نشان داده شده در شکل را وارد کنید. 4.

    با انتخاب محدوده سلول های B4:C11، یک نمودار می سازیم.

    نمودار ساخته شده را فعال می کنیم و طبق روشی که در بالا توضیح داده شد، پس از انتخاب نوع خط روند در کادر محاوره ای خط روند (نگاه کنید به شکل 1)، به طور متناوب خطوط روند خطی، درجه دوم و مکعبی را به نمودار اضافه می کنیم. در همان کادر محاوره ای، زبانه پارامترها را باز کنید (شکل 2 را ببینید)، در نام قسمت منحنی تقریبی (صاف) نام روند اضافه شده را وارد کنید و در قسمت Forecast forward for: periods، مقدار را تنظیم کنید. مقدار 2، زیرا برنامه ریزی شده است که پیش بینی سود برای دو سال آینده انجام شود. برای نمایش معادله رگرسیون و مقدار قابلیت اطمینان تقریبی R2 در ناحیه نمودار، معادله نمایش را در کادرهای انتخاب صفحه فعال کنید و مقدار قابلیت اطمینان تقریبی (R^2) را روی نمودار قرار دهید. برای درک بصری بهتر، نوع، رنگ و ضخامت خطوط روند ساخته شده را تغییر می دهیم، که برای آن از تب View در کادر محاوره ای Trend Line Format استفاده می کنیم (شکل 3 را ببینید). نمودار حاصل با خطوط روند اضافه شده در شکل نشان داده شده است. 5.

    برای به دست آوردن داده های جدولی در مورد سود شرکت برای هر خط روند برای 1995-2004. بیایید از معادلات خط روند ارائه شده در شکل استفاده کنیم. 5. برای این کار در سلول های محدوده D3:F3 اطلاعات متنی نوع خط روند انتخابی را وارد کنید: روند خطی، روند درجه دوم، روند مکعبی. سپس فرمول رگرسیون خطی را در سلول D4 وارد کنید و با استفاده از نشانگر پر، این فرمول را با ارجاعات نسبی به محدوده سلولی D5:D13 کپی کنید. لازم به ذکر است که هر سلول با فرمول رگرسیون خطی از محدوده سلول‌های D4:D13 دارای یک سلول مربوطه از محدوده A4:A13 است. به طور مشابه، برای رگرسیون درجه دوم، محدوده سلول های E4:E13 و برای رگرسیون مکعبی، محدوده سلول های F4:F13 را پر کنید. بدین ترتیب پیش بینی سود شرکت برای سال های 2003 و 2004 تدوین شده است. با استفاده از سه گرایش جدول مقادیر حاصل در شکل نشان داده شده است. 6.

مشکل 2

    یک نمودار بسازید.

    خطوط روند لگاریتمی، توان و نمایی را به نمودار اضافه کنید.

    معادلات خطوط روند به دست آمده و همچنین مقادیر قابلیت اطمینان تقریبی R2 را برای هر یک از آنها استخراج کنید.

    با استفاده از معادلات خط روند، داده های جدولی در مورد سود شرکت برای هر خط روند برای سال های 1995-2002 به دست آورید.

    با استفاده از این خطوط روند، سود شرکت را برای سال های 2003 و 2004 پیش بینی کنید.

راه حل مشکل

با پیروی از روش ارائه شده در حل مسئله 1، نموداری به دست می آوریم که خطوط روند لگاریتمی، توان و نمایی به آن اضافه شده است (شکل 7). در مرحله بعد، با استفاده از معادلات خط روند به دست آمده، جدولی از مقادیر سود شرکت را پر می کنیم که شامل مقادیر پیش بینی شده برای سال های 2003 و 2004 می شود. (شکل 8).

در شکل 5 و شکل مشاهده می شود که مدل با روند لگاریتمی با کمترین مقدار پایایی تقریبی مطابقت دارد.

R2 = 0.8659

بالاترین مقادیر R2 مربوط به مدل هایی با روند چند جمله ای است: درجه دوم (R2 = 0.9263) و مکعب (R2 = 0.933).

مشکل 3

با جدول داده‌های سود یک شرکت حمل‌ونقل موتوری برای سال‌های 1995-2002، ارائه شده در کار 1، باید مراحل زیر را انجام دهید.

    سری داده ها را برای خطوط روند خطی و نمایی با استفاده از توابع TREND و GROW بدست آورید.

    با استفاده از توابع TREND و GROWTH، سود شرکت را برای سال های 2003 و 2004 پیش بینی کنید.

    یک نمودار برای داده های اصلی و سری داده های حاصل بسازید.

راه حل مشکل

بیایید از کاربرگ برای مسئله 1 استفاده کنیم (شکل 4 را ببینید). بیا شروع کنیم با توابع TREND:

    محدوده سلول های D4:D11 را انتخاب کنید که باید با مقادیر تابع TREND مربوط به داده های شناخته شده در مورد سود شرکت پر شود.

    دستور Function را از منوی Insert فراخوانی کنید. در کادر محاوره‌ای Function Wizard که ظاهر می‌شود، تابع TREND را از دسته Statistical انتخاب کنید و سپس روی دکمه OK کلیک کنید. همین عملیات را می توان با کلیک بر روی دکمه (Insert Function) در نوار ابزار استاندارد انجام داد.

    در کادر محاوره‌ای Function Arguments که ظاهر می‌شود، محدوده سلول‌های C4:C11 را در قسمت Known_values_y وارد کنید. در قسمت Known_values_x - محدوده سلول های B4:B11;

    برای اینکه فرمول وارد شده به فرمول آرایه تبدیل شود، از کلید ترکیبی + + استفاده کنید.

فرمولی که در نوار فرمول وارد کردیم به صورت زیر خواهد بود: =(TREND(C4:C11,B4:B11)).

در نتیجه، محدوده سلول های D4:D11 با مقادیر مربوط به تابع TREND پر می شود (شکل 9).

برای پیش بینی سود شرکت برای سال های 2003 و 2004. لازم:

    محدوده سلول های D12:D13 را انتخاب کنید که در آن مقادیر پیش بینی شده توسط تابع TREND وارد می شود.

    تابع TREND را فراخوانی کنید و در کادر محاوره ای Function Arguments که ظاهر می شود، در قسمت Known_values_y - محدوده سلول های C4:C11 را وارد کنید. در قسمت Known_values_x - محدوده سلول های B4:B11; و در قسمت New_values_x - محدوده سلول های B12:B13.

    این فرمول را با استفاده از کلیدهای ترکیبی Ctrl + Shift + Enter به فرمول آرایه تبدیل کنید.

    فرمول وارد شده به صورت زیر خواهد بود: =(TREND(C4:C11;B4:B11;B12:B13))، و محدوده سلول های D12:D13 با مقادیر پیش بینی شده تابع TREND پر می شود (شکل 1 را ببینید). 9).

سری داده ها به طور مشابه با استفاده از تابع GROWTH پر می شود که در تجزیه و تحلیل وابستگی های غیرخطی استفاده می شود و دقیقاً به همان روش همتای خطی آن TREND کار می کند.

شکل 10 جدول را در حالت نمایش فرمول نشان می دهد.

برای داده های اولیه و سری داده های به دست آمده، نمودار نشان داده شده در شکل. یازده

مشکل 4

با جدول داده های دریافت درخواست خدمات توسط سرویس اعزام یک شرکت حمل و نقل موتوری برای دوره از اول تا یازدهم ماه جاری، باید اقدامات زیر را انجام دهید.

    دریافت سری داده ها برای رگرسیون خطی: با استفاده از توابع SLOPE و INTERCEPT. با استفاده از تابع LINEST

    با استفاده از تابع LGRFPRIBL یک سری داده برای رگرسیون نمایی بدست آورید.

    با استفاده از توابع فوق، پیش بینی دریافت درخواست ها به سرویس اعزام را برای بازه زمانی 12 تا 14 ماه جاری انجام دهید.

    یک نمودار برای سری داده های اصلی و دریافتی ایجاد کنید.

راه حل مشکل

توجه داشته باشید که برخلاف توابع TREND و GROWTH، هیچ یک از توابع ذکر شده در بالا (SLOPE، INTERCEPT، LINEST، LGRFPRIB) رگرسیون نیستند. این توابع فقط نقش پشتیبانی را ایفا می کنند و پارامترهای رگرسیون لازم را تعیین می کنند.

برای رگرسیون های خطی و نمایی ساخته شده با استفاده از توابع SLOPE، INTERCEPT، LINEST، LGRFPRIB، شکل ظاهری معادلات آنها همیشه مشخص است، برخلاف رگرسیون های خطی و نمایی مربوط به توابع TREND و GROWTH.

1 . بیایید یک رگرسیون خطی با معادله بسازیم:

y = mx+b

با استفاده از توابع SLOPE و INTERCEPT، با شیب رگرسیون m توسط تابع SLOPE، و عبارت آزاد b توسط تابع INTERCEPT تعیین می شود.

برای انجام این کار، اقدامات زیر را انجام می دهیم:

    جدول اصلی را در محدوده سلولی A4:B14 وارد کنید.

    مقدار پارامتر m در سلول C19 تعیین می شود. تابع Slope را از دسته آماری انتخاب کنید. محدوده سلول‌های B4:B14 را در قسمت Known_values_y و محدوده سلول‌های A4:A14 را در قسمت Known_values_x وارد کنید. فرمول در سلول C19 وارد می شود: =SLOPE(B4:B14,A4:A14);

    با استفاده از تکنیک مشابه، مقدار پارامتر b در سلول D19 تعیین می شود. و محتویات آن به صورت زیر خواهد بود: =SEGMENT(B4:B14,A4:A14). بنابراین، مقادیر پارامترهای m و b مورد نیاز برای ساخت یک رگرسیون خطی به ترتیب در سلول‌های C19، D19 ذخیره می‌شوند.

    سپس فرمول رگرسیون خطی را در سلول C4 به شکل =$C*A4+$D وارد کنید. در این فرمول، سلول های C19 و D19 با ارجاع مطلق نوشته شده اند (آدرس سلول نباید در طول کپی ممکن تغییر کند). علامت مرجع مطلق $ را می توان پس از قرار دادن مکان نما روی آدرس سلول یا از صفحه کلید یا با استفاده از کلید F4 تایپ کرد. با استفاده از دسته پر، این فرمول را در محدوده سلول های C4:C17 کپی کنید. سری داده های مورد نیاز را بدست می آوریم (شکل 12). با توجه به اینکه تعداد درخواست ها یک عدد صحیح است باید در تب Number پنجره Cell Format فرمت اعداد با تعداد ارقام اعشاری را 0 قرار دهید.

2 . حالا بیایید یک رگرسیون خطی بسازیم که با معادله داده می شود:

y = mx+b

با استفاده از تابع LINEST

برای این:

    تابع LINEST را به عنوان یک فرمول آرایه در محدوده سلولی C20:D20: =(LINEST(B4:B14,A4:A14)) وارد کنید. در نتیجه، مقدار پارامتر m را در سلول C20 و مقدار پارامتر b را در سلول D20 به دست می آوریم.

    فرمول را در سلول D4 وارد کنید: =$C*A4+$D;

    این فرمول را با استفاده از نشانگر پر در محدوده سلولی D4:D17 کپی کنید و سری داده های مورد نظر را دریافت کنید.

3 . با معادله رگرسیون نمایی می سازیم:

با استفاده از تابع LGRFPRIBL به طور مشابه انجام می شود:

    در محدوده سلولی C21:D21 تابع LGRFPRIBL را به عنوان فرمول آرایه وارد می کنیم: =( LGRFPRIBL (B4:B14,A4:A14)). در این حالت، مقدار پارامتر m در سلول C21 و مقدار پارامتر b در سلول D21 تعیین می شود.

    فرمول در سلول E4 وارد می شود: =$D*$C^A4;

    با استفاده از نشانگر پر، این فرمول در محدوده سلول های E4:E17، جایی که سری داده های رگرسیون نمایی قرار خواهد گرفت، کپی می شود (شکل 12 را ببینید).

در شکل شکل 13 جدولی را نشان می دهد که در آن می توانید توابعی را که با محدوده سلولی مورد نیاز استفاده می کنیم و همچنین فرمول ها را مشاهده کنید.

اندازه آر 2 تماس گرفت ضریب تعیین.

وظیفه ساخت یک وابستگی رگرسیونی یافتن بردار ضرایب m مدل (1) است که در آن ضریب R حداکثر مقدار را به خود می گیرد.

برای ارزیابی اهمیت R، از آزمون F فیشر استفاده می شود که با استفاده از فرمول محاسبه می شود

جایی که n- حجم نمونه (تعداد آزمایش)؛

k تعداد ضرایب مدل است.

اگر F از مقدار بحرانی داده ها فراتر رود nو کو احتمال اطمینان پذیرفته شده، پس مقدار R معنی دار در نظر گرفته می شود. جداول مقادیر بحرانی F در کتاب های مرجع آمار ریاضی آورده شده است.

بنابراین، اهمیت R نه تنها با مقدار آن، بلکه با نسبت بین تعداد آزمایش ها و تعداد ضرایب (پارامترهای) مدل نیز تعیین می شود. در واقع، نسبت همبستگی برای n=2 برای یک مدل خطی ساده برابر با 1 است (یک خط مستقیم همیشه می تواند از طریق 2 نقطه در یک صفحه رسم شود). با این حال، اگر داده های تجربی متغیرهای تصادفی هستند، باید به چنین مقدار R با احتیاط زیادی اعتماد کرد. معمولاً برای به دست آوردن رگرسیون R قابل‌توجه و قابل اعتماد، آنها تلاش می‌کنند تا اطمینان حاصل کنند که تعداد آزمایش‌ها به طور قابل‌توجهی از تعداد ضرایب مدل (n>k) بیشتر است.

برای ساخت یک خطی مدل رگرسیونلازم:

1) فهرستی از n ردیف و m ستون حاوی داده های تجربی تهیه کنید (ستون حاوی مقدار خروجی Yباید اولین یا آخرین در لیست باشد). برای مثال، بیایید داده‌های کار قبلی را بگیریم، ستونی به نام دوره شماره اضافه کنیم، اعداد دوره را از 1 تا 12 شماره گذاری کنیم. (اینها مقادیر خواهند بود. ایکس)

2) به منوی Data/Data Analysis/Regression بروید

اگر مورد «تجزیه و تحلیل داده‌ها» در منوی «ابزارها» وجود ندارد، باید به آیتم «افزونه‌ها» در همان منو بروید و کادر «بسته تحلیل» را علامت بزنید.

3) در کادر گفتگوی "Regression"، تنظیم کنید:

· فاصله ورودی Y;

· فاصله ورودی X.

· فاصله خروجی - سلول سمت چپ بالای فاصله زمانی که نتایج محاسبات در آن قرار می گیرد (توصیه می شود آنها را در یک کاربرگ جدید قرار دهید).

4) روی "OK" کلیک کنید و نتایج را تجزیه و تحلیل کنید.

پس از تراز کردن، تابعی به شکل زیر بدست می آوریم: g (x) = x + 1 3 + 1 .

ما می توانیم این داده ها را با استفاده از رابطه خطی y = a x + b با محاسبه پارامترهای مربوطه تقریب بزنیم. برای این کار باید از روش به اصطلاح حداقل مربعات استفاده کنیم. همچنین باید یک نقشه بکشید تا بررسی کنید که کدام خط داده های آزمایشی را به بهترین شکل تراز می کند.

Yandex.RTB R-A-339285-1

OLS دقیقا چیست (روش حداقل مربعات)

اصلی‌ترین کاری که باید انجام دهیم این است که چنین ضرایبی از وابستگی خطی را پیدا کنیم که در آن مقدار تابع دو متغیر F (a, b) = ∑ i = 1 n (y i - (a x i + b)) 2 برابر باشد. کوچکترین به عبارت دیگر، برای مقادیر معینی از a و b، مجموع انحرافات مجذور داده های ارائه شده از خط مستقیم به دست آمده دارای حداقل مقدار خواهد بود. این معنای روش حداقل مربعات است. تنها کاری که ما برای حل مثال باید انجام دهیم این است که حد فاصل تابع دو متغیر را پیدا کنیم.

نحوه استخراج فرمول برای محاسبه ضرایب

برای به دست آوردن فرمول برای محاسبه ضرایب، باید یک سیستم معادلات با دو متغیر ایجاد و حل کنید. برای این کار مشتقات جزئی عبارت F (a, b) = ∑ i = 1 n (y i - (a x i + b)) 2 را نسبت به a و b محاسبه می کنیم و آنها را با 0 برابر می کنیم.

δ F (a , b) δ a = 0 δ F (a , b) δ b = 0 ⇔ - 2 ∑ i = 1 n (y i - (a x i + b)) x i = 0 - 2 ∑ i = 1 n ( y i - (a x i + b)) = 0 ⇔ a ∑ i = 1 n x i 2 + b ∑ i = 1 n x i = ∑ i = 1 n x i y i a ∑ i = 1 n x i + ∑ i = 1 n b = ∑ a i = ∑ i = 1 n x i 2 + b ∑ i = 1 n x i = ∑ i = 1 n x i y i a ∑ i = 1 n x i + n b = ∑ i = 1 n y i

برای حل یک سیستم معادلات، می توانید از هر روشی استفاده کنید، به عنوان مثال، روش جایگزینی یا کرامر. در نتیجه باید فرمول هایی داشته باشیم که بتوان با استفاده از روش حداقل مربعات ضرایب را محاسبه کرد.

n ∑ i = 1 n x i y i - ∑ i = 1 n x i ∑ i = 1 n y i n ∑ i = 1 n - ∑ i = 1 n x i 2 b = ∑ i = 1 n y i - a ∑ i = 1 n

ما مقادیر متغیرهایی را که در آن تابع هستند محاسبه کرده ایم
F (a , b) = ∑ i = 1 n (y i - (a x i + b)) 2 حداقل مقدار را خواهد گرفت. در پاراگراف سوم ثابت خواهیم کرد که چرا دقیقاً اینگونه است.

این کاربرد روش حداقل مربعات در عمل است. فرمول آن، که برای یافتن پارامتر a استفاده می شود، شامل ∑ i = 1 n x i، ∑ i = 1 n y i، ∑ i = 1 n x i y i، ∑ i = 1 n x i 2 و همچنین پارامتر است.
n - مقدار داده های تجربی را نشان می دهد. ما به شما توصیه می کنیم که هر مقدار را جداگانه محاسبه کنید. مقدار ضریب b بلافاصله بعد از a محاسبه می شود.

بیایید به مثال اصلی برگردیم.

مثال 1

در اینجا n برابر با پنج داریم. برای راحت‌تر کردن محاسبه مقادیر مورد نیاز موجود در فرمول‌های ضرایب، بیایید جدول را پر کنیم.

i = 1 i=2 i=3 i=4 i=5 ∑ i = 1 5
x i 0 1 2 4 5 12
y من 2 , 1 2 , 4 2 , 6 2 , 8 3 12 , 9
x i y i 0 2 , 4 5 , 2 11 , 2 15 33 , 8
x i 2 0 1 4 16 25 46

راه حل

ردیف چهارم شامل داده هایی است که از ضرب مقادیر ردیف دوم در مقادیر ردیف سوم برای هر فرد به دست می آید. خط پنجم شامل داده های دوم، مربع است. ستون آخر مجموع مقادیر هر ردیف را نشان می دهد.

بیایید از روش حداقل مربعات برای محاسبه ضرایب a و b مورد نیاز خود استفاده کنیم. برای انجام این کار، مقادیر مورد نیاز را از ستون آخر جایگزین کرده و مقادیر را محاسبه کنید:

n ∑ i = 1 n x i y i - ∑ i = 1 n x i ∑ i = 1 n y i n ∑ i = 1 n - ∑ i = 1 n x i 2 b = ∑ i = 1 n y i - a ∑ i = 8 a ∑ i = 1 n - 12 12, 9 5 46 - 12 2 b = 12, 9 - a 12 5 ⇒ a ≈ 0, 165 b ≈ 2, 184

به نظر می رسد که خط مستقیم تقریبی مورد نیاز مانند y = 0، 165 x + 2، 184 خواهد بود. اکنون باید تعیین کنیم که کدام خط داده ها را بهتر تقریب می کند - g (x) = x + 1 3 + 1 یا 0، 165 x + 2، 184. بیایید با استفاده از روش حداقل مربعات تخمین بزنیم.

برای محاسبه خطا، باید مجموع انحرافات مجذور داده ها را از خطوط مستقیم پیدا کنیم σ 1 = ∑ i = 1 n (y i - (a x i + b i)) 2 و σ 2 = ∑ i = 1 n (y i - g (x i)) 2، حداقل مقدار با خط مناسب تری مطابقت دارد.

σ 1 = ∑ i = 1 n (y i - (a x i + b i)) 2 = = ∑ i = 1 5 (y i - (0, 165 x i + 2, 184)) 2 ≈ 0, 019 σ 2 = ∑ i = 1 n (y i - g (x i)) 2 = = ∑ i = 1 5 (y i - (x i + 1 3 + 1)) 2 ≈ 0.096

پاسخ:از آنجا که σ 1< σ 2 , то прямой, بهترین راهتقریبی داده های اصلی خواهد بود
y = 0.165 x + 2.184.

روش حداقل مربعات به وضوح در تصویر گرافیکی نشان داده شده است. خط قرمز خط مستقیم g (x) = x + 1 3 + 1 را نشان می دهد، خط آبی y = 0، 165 x + 2، 184 را نشان می دهد. داده های اصلی با نقاط صورتی نشان داده می شوند.

اجازه دهید توضیح دهیم که چرا دقیقاً به تقریب هایی از این نوع نیاز است.

آنها را می توان در کارهایی که نیاز به هموارسازی داده ها دارند و همچنین در کارهایی که داده ها باید درون یابی یا برون یابی شوند استفاده کرد. به عنوان مثال، در مسئله ای که در بالا بحث شد، می توان مقدار کمیت مشاهده شده y را در x = 3 یا در x = 6 پیدا کرد. ما مقاله جداگانه ای را به چنین نمونه هایی اختصاص داده ایم.

اثبات روش OLS

برای اینکه تابع هنگام محاسبه a و b حداقل مقدار را به دست آورد، لازم است که در یک نقطه داده شده ماتریس شکل درجه دوم دیفرانسیل تابع شکل F (a, b) = ∑ i = 1 n (y i - (a x i + b)) 2 مثبت قطعی است. بیایید به شما نشان دهیم که چگونه باید به نظر برسد.

مثال 2

ما یک دیفرانسیل مرتبه دوم به شکل زیر داریم:

d 2 F (a ; b) = δ 2 F (a ; b) δ a 2 d 2 a + 2 δ 2 F (a ; b) δ a δ b d a d b + δ 2 F (a ; b) δ b 2 d 2 ب

راه حل

δ 2 F (a ; ب) δ a 2 = δ δ F (a ; ب) δ a δ a = = δ - 2 ∑ i = 1 n (y i - (a x i + b)) x i δ a = 2 ∑ i = 1 n (x i) 2 δ 2 F (a; b) δ a δ b = δ δ F (a; b) δ a δ b = = δ - 2 ∑ i = 1 n (y i - (a x i + b) ) x i δ b = 2 ∑ i = 1 n x i δ 2 F (a ; b) δ b 2 = δ δ F (a ; b) δ b δ b = δ - 2 ∑ i = 1 n (y i - (a x i + ب)) δ b = 2 ∑ i = 1 n (1) = 2 n

به عبارت دیگر، می توانیم آن را به این صورت بنویسیم: d 2 F (a ; b) = 2 ∑ i = 1 n (x i) 2 d 2 a + 2 2 ∑ x i i = 1 n d a d b + (2 n) d 2 b.

ماتریسی از فرم درجه دوم M = 2 ∑ i = 1 n (x i) 2 2 ∑ i = 1 n x i 2 ∑ i = 1 n x i 2 n به دست آوردیم.

در این مورد مقادیر عناصر منفردبسته به a و b تغییر نخواهد کرد. آیا این ماتریس مثبت قطعی است؟ برای پاسخ به این سوال، اجازه دهید بررسی کنیم که آیا مینورهای زاویه ای آن مثبت هستند یا خیر.

ما مینور زاویه ای مرتبه اول را محاسبه می کنیم: 2 ∑ i = 1 n (x i) 2 > 0 . از آنجایی که نقاط x i منطبق نیستند، نابرابری شدید است. این را در محاسبات بعدی در نظر خواهیم داشت.

ما مینور زاویه ای مرتبه دوم را محاسبه می کنیم:

d e t (M) = 2 ∑ i = 1 n (x i) 2 2 ∑ i = 1 n x i 2 ∑ i = 1 n x i 2 n = 4 n ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2

پس از این، نابرابری n ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 > 0 را با استفاده از استقرای ریاضی اثبات می کنیم.

  1. بیایید بررسی کنیم که آیا این نابرابری برای یک n دلخواه معتبر است یا خیر. بیایید 2 را بگیریم و محاسبه کنیم:

2 ∑ i = 1 2 (x i) 2 - ∑ i = 1 2 x i 2 = 2 x 1 2 + x 2 2 - x 1 + x 2 2 = = x 1 2 - 2 x 1 x 2 + x 2 2 = x 1 + x 2 2 > 0

ما یک برابری صحیح به دست آورده ایم (اگر مقادیر x 1 و x 2 منطبق نباشند).

  1. اجازه دهید فرض کنیم که این نابرابری برای n درست باشد، یعنی. n ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 > 0 - درست است.
  2. اکنون اعتبار n + 1 را ثابت می کنیم، یعنی. که (n + 1) ∑ i = 1 n + 1 (x i) 2 - ∑ i = 1 n + 1 x i 2 > 0، اگر n ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 > 0 .

محاسبه می کنیم:

(n + 1) ∑ i = 1 n + 1 (x i) 2 - ∑ i = 1 n + 1 x i 2 = = (n + 1) ∑ i = 1 n (x i) 2 + x n + 1 2 - ∑ i = 1 n x i + x n + 1 2 = = n ∑ i = 1 n (x i) 2 + n x n + 1 2 + ∑ i = 1 n (x i) 2 + x n + 1 2 - - ∑ i = 1 n x i 2 + 2 x n + 1 ∑ i = 1 n x i + x n + 1 2 = = ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 + n x n + 1 2 - x n + 1 ∑ i = 1 n x i + ∑ i = n (x i) 2 = = ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 + x n + 1 2 - 2 x n + 1 x 1 + x 1 2 + + x n + 1 2 - 2 x n + 1 x 2 + x 2 2 + . . . + x n + 1 2 - 2 x n + 1 x 1 + x n 2 = = n ∑ i = 1 n (x i) 2 - ∑ i = 1 n x i 2 + + (x n + 1 - x 1) 2 + (x n + 1 - x 2) 2 + . . . + (x n - 1 - x n) 2 > 0

عبارت محصور شده در پرانتزهای فرفری بزرگتر از 0 خواهد بود (بر اساس آنچه در مرحله 2 فرض کردیم)، و عبارات باقیمانده بزرگتر از 0 خواهند بود، زیرا همه آنها مربع اعداد هستند. ما نابرابری را ثابت کرده ایم.

پاسخ: a و b یافت شده مطابقت دارند کمترین مقدارتوابع F (a , b) = ∑ i = 1 n (y i - (a x i + b)) 2، به این معنی که آنها پارامترهای مورد نظر روش حداقل مربعات (LSM) هستند.

در صورت مشاهده خطایی در متن، لطفاً آن را برجسته کرده و Ctrl+Enter را فشار دهید

اگر برخی کمیت فیزیکیبه کمیت دیگری بستگی دارد، سپس این وابستگی را می توان با اندازه گیری y در مطالعه کرد معانی مختلفایکس. در نتیجه اندازه گیری ها، تعدادی از مقادیر به دست می آید:

x 1، x 2، ...، x i، ...، x n;

y 1 , y 2 , ..., y i , ... , y n .

بر اساس داده های چنین آزمایشی، می توان نموداری از وابستگی y = ƒ(x) ساخت. منحنی حاصل قضاوت در مورد شکل تابع ƒ(x) را ممکن می سازد. با این حال شانس ثابت، که در این تابع گنجانده شده اند ناشناخته باقی می مانند. آنها را می توان با استفاده از روش حداقل مربعات تعیین کرد. نقاط آزمایشی، به عنوان یک قاعده، دقیقاً روی منحنی قرار نمی گیرند. روش حداقل مربعات مستلزم آن است که مجموع مجذورات انحراف نقاط تجربی از منحنی، یعنی. 2 کوچکترین بود.

در عمل، این روش اغلب (و به سادگی) در مورد یک رابطه خطی استفاده می شود، یعنی. چه زمانی

y = kxیا y = a + bx.

وابستگی خطی در فیزیک بسیار گسترده است. و حتی زمانی که رابطه غیر خطی است، معمولا سعی می کنند یک نمودار بسازند تا یک خط مستقیم به دست آورند. به عنوان مثال، اگر فرض شود که ضریب شکست شیشه n با طول موج نور λ با رابطه n = a + b/λ 2 مرتبط است، آنگاه وابستگی n به λ -2 بر روی نمودار رسم می شود.

وابستگی را در نظر بگیرید y = kx(خط مستقیمی که از مبدا می گذرد). بیایید مقدار φ را مجموع مجذور انحراف نقاط خود از خط مستقیم بسازیم

مقدار φ همیشه مثبت است و هر چه نقاط ما به خط مستقیم نزدیکتر باشند کوچکتر می شود. روش حداقل مربعات بیان می کند که مقدار k باید طوری انتخاب شود که φ حداقل داشته باشد


یا
(19)

محاسبه نشان می دهد که خطای ریشه میانگین مربع در تعیین مقدار k برابر است با

, (20)
که در آن n تعداد اندازه گیری ها است.

اجازه دهید اکنون کمی بیشتر در نظر بگیریم مورد سخت، زمانی که نقاط باید فرمول را برآورده کنند y = a + bx(خط مستقیمی که از مبدأ نمی گذرد).

وظیفه یافتن مجموعه ای از مقادیر x i, y i است بهترین ارزش هاالف و ب

اجازه دهید دوباره شکل درجه دوم φ را بسازیم، برابر با مقدارمربع انحراف نقاط x i, y i از خط مستقیم

و مقادیر a و b را پیدا کنید که φ برای آنها حداقل است

;

.

.

تصمیم مشترکاز این معادلات می دهد

(21)

ریشه میانگین مربعات خطاهای تعیین a و b برابر است

(23)

.  (24)

هنگام پردازش نتایج اندازه گیری با استفاده از این روش، خلاصه کردن تمام داده ها در جدولی که در آن تمام مقادیر موجود در فرمول (19) (24) به طور مقدماتی محاسبه شده است، راحت است. اشکال این جداول در مثال های زیر آورده شده است.

مثال 1.معادله اصلی دینامیک حرکت چرخشی ε = M/J (خط مستقیمی که از مبدا می گذرد) مورد مطالعه قرار گرفت. در مقادیر مختلف لحظه M، شتاب زاویه ای ε یک جسم خاص اندازه گیری شد. تعیین ممان اینرسی این جسم مورد نیاز است. نتایج اندازه گیری گشتاور نیرو و شتاب زاویه ای در ستون های دوم و سوم ذکر شده است. جدول 5.

جدول 5
n M، N m ε، s -1 M 2 M ε ε - کیلومتر (ε - کیلومتر) 2
1 1.44 0.52 2.0736 0.7488 0.039432 0.001555
2 3.12 1.06 9.7344 3.3072 0.018768 0.000352
3 4.59 1.45 21.0681 6.6555 -0.08181 0.006693
4 5.90 1.92 34.81 11.328 -0.049 0.002401
5 7.45 2.56 55.5025 19.072 0.073725 0.005435
– – 123.1886 41.1115 – 0.016436

با استفاده از فرمول (19) مشخص می کنیم:

.

برای تعیین ریشه میانگین مربعات خطا از فرمول (20) استفاده می کنیم.

0.005775کیلوگرم-1 · متر -2 .

طبق فرمول (18) داریم

; .

S J = (2.996 0.005775)/0.3337 = 0.05185 کیلوگرم متر مربع.

با تنظیم پایایی 0.95 = P، با استفاده از جدول ضرایب Student برای n = 5، t = 2.78 را پیدا کرده و تعیین می کنیم. اشتباه مطلقΔJ = 2.78 0.05185 = 0.1441 ≈ 0.2 کیلوگرم متر مربع.

بیایید نتایج را به شکل زیر بنویسیم:

J = (0.2 ± 3.0) کیلوگرم متر مربع;


مثال 2.بیایید ضریب دمایی مقاومت فلز را با استفاده از روش حداقل مربعات محاسبه کنیم. مقاومت به طور خطی به دما بستگی دارد

Rt = R 0 (1 + α t°) = R 0 + R 0 α t°.

عبارت آزاد مقاومت R 0 را در دمای 0 درجه سانتیگراد تعیین می کند و ضریب شیب حاصلضرب ضریب دما α و مقاومت R 0 است.

نتایج اندازه گیری ها و محاسبات در جدول ( جدول 6 را ببینید).

جدول 6
n t°, s r، اهم t-¯t (t-¯t) 2 (t-¯t)r r - bt - a (r - bt - a) 2.10 -6
1 23 1.242 -62.8333 3948.028 -78.039 0.007673 58.8722
2 59 1.326 -26.8333 720.0278 -35.581 -0.00353 12.4959
3 84 1.386 -1.83333 3.361111 -2.541 -0.00965 93.1506
4 96 1.417 10.16667 103.3611 14.40617 -0.01039 107.898
5 120 1.512 34.16667 1167.361 51.66 0.021141 446.932
6 133 1.520 47.16667 2224.694 71.69333 -0.00524 27.4556
515 8.403 – 8166.833 21.5985 – 746.804
∑/n 85.83333 1.4005 – – – – –

با استفاده از فرمول های (21)، (22) تعیین می کنیم

R 0 = ¯ R- α R 0 ¯ t = 1.4005 - 0.002645 85.83333 = 1.1735 اهم.

بیایید یک خطا در تعریف α پیدا کنیم. از آنجایی که پس طبق فرمول (18) داریم:

.

با استفاده از فرمول های (23)، (24) داریم

;

0.014126 اهم.

با تنظیم پایایی 0.95 = P، با استفاده از جدول ضرایب Student برای n = 6، t = 2.57 را پیدا کرده و خطای مطلق Δα = 2.57 0.000132 = 0.000338 را تعیین می کنیم. درجه -1.

α = (23 ± 4) 10 -4 تگرگ-1 در P = 0.95.


مثال 3.تعیین شعاع انحنای عدسی با استفاده از حلقه های نیوتن ضروری است. شعاع حلقه های نیوتن r m اندازه گیری شد و تعداد این حلقه ها m تعیین شد. شعاع حلقه های نیوتن به شعاع انحنای عدسی R و عدد حلقه با معادله مربوط می شود.

r 2 m = mλR - 2d 0 R,

جایی که d 0 ضخامت شکاف بین عدسی و صفحه موازی صفحه (یا تغییر شکل عدسی)،

λ طول موج نور فرودی.

λ = (6 ± 600) نانومتر.
r 2 m = y;
m = x;
λR = b;
-2d 0 R = a،

سپس معادله شکل خواهد گرفت y = a + bx.

.

نتایج اندازه گیری ها و محاسبات وارد می شود جدول 7.

جدول 7
n x = m y = r 2، 10 -2 mm 2 m -¯m (m -¯m) 2 (m -¯ m)y y - bx - a، 10 -4 (y - bx - a) 2، 10 -6
1 1 6.101 -2.5 6.25 -0.152525 12.01 1.44229
2 2 11.834 -1.5 2.25 -0.17751 -9.6 0.930766
3 3 17.808 -0.5 0.25 -0.08904 -7.2 0.519086
4 4 23.814 0.5 0.25 0.11907 -1.6 0.0243955
5 5 29.812 1.5 2.25 0.44718 3.28 0.107646
6 6 35.760 2.5 6.25 0.894 3.12 0.0975819
21 125.129 – 17.5 1.041175 – 3.12176
∑/n 3.5 20.8548333 – – – – –

  • آموزش

معرفی

من یک ریاضی دان و برنامه نویس هستم. بزرگترین جهشی که در حرفه ام انجام دادم زمانی بود که یاد گرفتم بگویم: "من هیچی نمیفهمم!"حالا خجالت نمی کشم به مرشد علم بگویم که برای من سخنرانی می کند، من نمی فهمم او آن بزرگوار به من چه می گوید. و خیلی سخته بله، اعتراف به نادانی خود سخت و شرم آور است. چه کسی دوست دارد اعتراف کند که اصول چیزی را نمی داند؟ با توجه به حرفه ام، باید در تعداد زیادی سخنرانی و سخنرانی شرکت کنم، جایی که، اعتراف می کنم، در اکثر موارد می خواهم بخوابم زیرا چیزی نمی فهمم. اما من نمی فهمم زیرا مشکل بزرگ وضعیت فعلی علم در ریاضیات نهفته است. فرض بر این است که همه شنوندگان کاملاً با تمام زمینه های ریاضیات آشنا هستند (که پوچ است). اعتراف به اینکه نمی دانید مشتق چیست (در مورد چیستی آن کمی بعد صحبت خواهیم کرد) شرم آور است.

اما یاد گرفتم بگویم که نمی دانم ضرب چیست. بله، من نمی دانم جبر فرعی بر جبر دروغ چیست. بله، من نمی دانم چرا آنها در زندگی مورد نیاز هستند معادلات درجه دوم. به هر حال، اگر مطمئن هستید که می دانید، پس ما باید در مورد آن صحبت کنیم! ریاضیات یک سری ترفند است. ریاضیدانان سعی می کنند مردم را گیج و مرعوب کنند. جایی که هیچ سردرگمی وجود ندارد، شهرت و اقتدار وجود ندارد. بله، صحبت کردن به زبانی تا حد امکان انتزاعی معتبر است، که کاملا مزخرف است.

آیا می دانید مشتق چیست؟ به احتمال زیاد در مورد حد نسبت اختلاف به من خواهید گفت. در سال اول ریاضیات و مکانیک در دانشگاه ایالتی سن پترزبورگ، ویکتور پتروویچ خاوین به من گفت مشخصمشتق به عنوان ضریب اولین جمله از سری تیلور تابع در یک نقطه (این یک ژیمناستیک جداگانه برای تعیین سری تیلور بدون مشتقات بود). من مدت زیادی به این تعریف خندیدم تا اینکه بالاخره فهمیدم در مورد چیست. مشتق چیزی نیست جز یک اندازه گیری ساده از شباهت تابعی که ما متمایز می کنیم با تابع y=x, y=x^2, y=x^3.

اکنون این افتخار را دارم که برای دانشجویانی که می ترسدریاضیات اگر از ریاضی می ترسید ما در همین مسیر هستیم. به محض اینکه سعی کردید متنی را بخوانید و به نظرتان رسید که بیش از حد پیچیده است، بدانید که آن متن بد نوشته شده است. من ادعا می کنم که هیچ حوزه ای از ریاضیات وجود ندارد که بدون از دست دادن دقت، "روی انگشتان" مورد بحث قرار نگیرد.

تکلیف برای آینده نزدیک: من به دانش آموزانم وظیفه دادم تا بفهمند تنظیم کننده درجه دوم خطی چیست. خجالتی نباشید، سه دقیقه از زندگی خود را صرف کنید و پیوند را دنبال کنید. اگر چیزی متوجه نشدید، پس ما در همان مسیر هستیم. من (یک ریاضیدان-برنامه نویس حرفه ای) هم چیزی نفهمیدم. و من به شما اطمینان می دهم، می توانید این را "روی انگشتان خود" بفهمید. در حال حاضر نمی‌دانم چیست، اما به شما اطمینان می‌دهم که می‌توانیم آن را کشف کنیم.

بنابراین، اولین سخنرانی ای که قرار است برای دانش آموزانم انجام دهم، بعد از اینکه آنها با وحشت به سمت من می آیند و می گویند که تنظیم کننده خطی-مربع چیز وحشتناکی است که هرگز در زندگی خود به آن مسلط نخواهید شد. روش های حداقل مربعات. میتونی تصمیم بگیری معادلات خطی? اگر در حال خواندن این متن هستید، به احتمال زیاد نه.

بنابراین، با توجه به دو نقطه (x0، y0)، (x1، y1)، به عنوان مثال، (1،1) و (3،2)، وظیفه یافتن معادله خطی است که از این دو نقطه می گذرد:

تصویر

این خط باید معادله ای مانند زیر داشته باشد:

در اینجا آلفا و بتا برای ما ناشناخته هستند، اما دو نقطه از این خط شناخته شده است:

می توانیم این معادله را به صورت ماتریسی بنویسیم:

در اینجا چه باید کرد انحراف غزلی: ماتریس چیست؟ ماتریس چیزی بیش از یک آرایه دو بعدی نیست. این روشی برای ذخیره سازی داده ها است؛ هیچ معانی دیگری نباید به آن ضمیمه شود. این دقیقاً به ما بستگی دارد که چگونه یک ماتریس خاص را تفسیر کنیم. من به صورت دوره ای آن را به عنوان یک نگاشت خطی، به صورت دوره ای به عنوان یک فرم درجه دوم، و گاهی اوقات به سادگی به عنوان مجموعه ای از بردارها تفسیر می کنم. این همه در چارچوب روشن خواهد شد.

بیایید ماتریس های بتنی را با نمایش نمادین آنها جایگزین کنیم:

سپس (آلفا، بتا) را می توان به راحتی پیدا کرد:

به طور خاص برای داده های قبلی ما:

که به معادله خطی که از نقاط (1،1) و (3،2) می گذرد، منجر می شود:

خوب، اینجا همه چیز روشن است. بیایید معادله خط عبوری را پیدا کنیم سهنقاط: (x0,y0)، (x1,y1) و (x2,y2):

اوه اوه، اما ما سه معادله برای دو مجهول داریم! یک ریاضیدان استاندارد خواهد گفت که هیچ راه حلی وجود ندارد. برنامه نویس چه خواهد گفت؟ و ابتدا سیستم معادلات قبلی را به شکل زیر بازنویسی می کند:

در مورد ما بردارهای i,j,bسه بعدی هستند، بنابراین (در حالت کلی) هیچ راه حلی برای این سیستم وجود ندارد. هر بردار (alpha\*i + beta\*j) در صفحه ای قرار دارد که توسط بردارهای (i, j) پوشانده شده است. اگر b به این صفحه تعلق نداشته باشد، هیچ راه حلی وجود ندارد (برابری را نمی توان در معادله به دست آورد). چه باید کرد؟ بیایید به دنبال مصالحه باشیم. بیایید نشان دهیم e (آلفا، بتا)دقیقا چقدر به برابری دست نیافته ایم:

و ما سعی خواهیم کرد این خطا را به حداقل برسانیم:

چرا مربع؟

ما نه تنها به دنبال حداقل هنجار، بلکه به دنبال حداقل مربع هنجار هستیم. چرا؟ حداقل نقطه به خودی خود منطبق است، و مربع یک تابع صاف می دهد (یک تابع درجه دوم از آرگومان ها (آلفا، بتا))، در حالی که به سادگی طول یک تابع مخروطی شکل می دهد که در نقطه حداقل غیر قابل تمایز است. Brr. مربع راحت تر است.

بدیهی است که هنگام بردار خطا به حداقل می رسد همتعامد به صفحه ای که توسط بردارها پوشانده شده است منو j.

تصویر

به عبارت دیگر: ما به دنبال یک خط مستقیم هستیم که مجموع مجذور طول فواصل تمام نقاط تا این خط مستقیم حداقل باشد:

به روز رسانی: من در اینجا یک مشکل دارم، فاصله تا خط مستقیم باید به صورت عمودی اندازه گیری شود، نه با طرح ریزی متعامد. این مفسر درست می گوید.

تصویر

در کلمات کاملاً متفاوت (با دقت، به طور ضعیف رسمی شده است، اما باید واضح باشد): ما همه خطوط ممکن را بین همه جفت نقاط می گیریم و به دنبال خط متوسط ​​بین همه می گردیم:

تصویر

توضیح دیگر ساده است: ما یک فنر بین تمام نقاط داده (در اینجا ما سه نقطه داریم) و خط مستقیمی که به دنبال آن هستیم وصل می کنیم و خط مستقیم حالت تعادل دقیقاً همان چیزی است که به دنبال آن هستیم.

حداقل فرم درجه دوم

بنابراین، با توجه به این بردار بو صفحه ای که توسط بردارهای ستونی ماتریس پوشانده شده است آ(در این حالت (x0,x1,x2) و (1,1,1)) به دنبال بردار هستیم. هبا حداقل مربع طول بدیهی است که حداقل برای بردار قابل دستیابی است ه، متعامد به صفحه ای که توسط بردارهای ستون ماتریس پوشانده شده است آ:

به عبارت دیگر، ما به دنبال یک بردار x=(آلفا، بتا) هستیم که:

به شما یادآوری کنم که این بردار x=(آلفا، بتا) حداقل است تابع درجه دوم||e(آلفا، بتا)||^2:

در اینجا یادآوری این نکته مفید است که ماتریس را می توان به صورت یک فرم درجه دوم نیز تفسیر کرد، برای مثال، ماتریس هویت ((1,0),(0,1)) را می توان به عنوان یک تابع x^2 + y^ تفسیر کرد. 2:

فرم درجه دوم

تمام این ژیمناستیک با نام رگرسیون خطی شناخته می شود.

معادله لاپلاس با شرط مرزی دیریکله

اکنون ساده ترین کار واقعی: یک سطح مثلثی مشخص وجود دارد، لازم است آن را صاف کنید. به عنوان مثال، بیایید یک مدل از چهره من را بارگذاری کنیم:

commit اصلی موجود است. برای به حداقل رساندن وابستگی‌های خارجی، کد رندر نرم‌افزارم را که قبلاً روی Habré بود، گرفتم. برای راه حل ها سیستم خطیمن از OpenNL استفاده می کنم، این یک حل کننده عالی است، اما نصب آن بسیار دشوار است: شما باید دو فایل (.h+.c) را در پوشه پروژه خود کپی کنید. همه صاف کردن با کد زیر انجام می شود:

برای (int d=0; d<3; d++) { nlNewContext(); nlSolverParameteri(NL_NB_VARIABLES, verts.size()); nlSolverParameteri(NL_LEAST_SQUARES, NL_TRUE); nlBegin(NL_SYSTEM); nlBegin(NL_MATRIX); for (int i=0; i<(int)verts.size(); i++) { nlBegin(NL_ROW); nlCoefficient(i, 1); nlRightHandSide(verts[i][d]); nlEnd(NL_ROW); } for (unsigned int i=0; i&face = faces[i]; برای (int j=0; j<3; j++) { nlBegin(NL_ROW); nlCoefficient(face[ j ], 1); nlCoefficient(face[(j+1)%3], -1); nlEnd(NL_ROW); } } nlEnd(NL_MATRIX); nlEnd(NL_SYSTEM); nlSolve(); for (int i=0; i<(int)verts.size(); i++) { verts[i][d] = nlGetVariable(i); } }

مختصات X، Y و Z قابل جدا شدن هستند، من آنها را جداگانه صاف می کنم. یعنی من سه سیستم معادلات خطی را حل می کنم که هر کدام تعدادی متغیر برابر با تعداد رئوس مدل من دارند. n سطر اول ماتریس A فقط یک 1 در هر سطر دارند و n سطر اول بردار b مختصات مدل اصلی را دارند. یعنی یک فنر بین موقعیت جدید راس و موقعیت قدیمی راس می بندم - جدیدها نباید خیلی از موقعیت های قدیمی دور شوند.

تمام ردیف‌های بعدی ماتریس A (faces.size()*3 = تعداد یال‌های همه مثلث‌ها در مش) یک رخداد 1 و یک وقوع 1- دارند که بردار b دارای مولفه‌های صفر در مقابل است. این به این معنی است که من یک فنر در هر لبه مش مثلثی خود قرار می دهم: همه لبه ها سعی می کنند راس یکسانی را با نقطه شروع و پایان خود بدست آورند.

بار دیگر: همه رئوس متغیر هستند و نمی توانند از موقعیت اصلی خود دور شوند، اما در عین حال سعی می کنند شبیه یکدیگر شوند.

نتیجه این است:

همه چیز خوب خواهد بود، مدل واقعا صاف است، اما از لبه اصلی خود فاصله گرفته است. بیایید کد را کمی تغییر دهیم:

برای (int i=0; i<(int)verts.size(); i++) { float scale = border[i] ? 1000: 1; nlBegin(NL_ROW); nlCoefficient(i, scale); nlRightHandSide(scale*verts[i][d]); nlEnd(NL_ROW); }

در ماتریس A، برای رئوس هایی که روی لبه هستند، یک ردیف از دسته v_i = verts[i][d] اضافه نمی کنم، بلکه 1000*v_i = 1000*verts[i][d] اضافه می کنم. چه چیزی را تغییر می دهد؟ و این شکل درجه دوم خطای ما را تغییر می دهد. اکنون یک انحراف از بالا در لبه نه یک واحد، مانند قبل، بلکه 1000 * 1000 واحد هزینه خواهد داشت. یعنی فنر قوی تری را روی رئوس انتهایی آویزان کردیم، راه حل ترجیح می دهد بقیه را قوی تر بکشد. نتیجه این است:

بیایید قدرت فنر بین رئوس را دو برابر کنیم:
nlCoefficient(face[j], 2); nlCoefficient(face[(j+1)%3], -2);

منطقی است که سطح صاف تر شده است:

و حالا حتی صد برابر قوی تر:

این چیه؟ تصور کنید که یک حلقه سیمی را در آب صابون فرو برده ایم. در نتیجه، فیلم صابونی به دست آمده سعی می کند تا حد ممکن کمترین انحنا را داشته باشد و لبه را لمس کند - حلقه سیمی ما. این دقیقاً همان چیزی است که با تعمیر حاشیه و درخواست سطح صاف در داخل به دست آوردیم. تبریک می گویم، ما به تازگی معادله لاپلاس را با شرایط مرزی دیریکله حل کردیم. باحال به نظر می رسد؟ اما در واقعیت، شما فقط باید یک سیستم معادلات خطی را حل کنید.

معادله پواسون

بیایید یک نام جالب دیگر را به یاد بیاوریم.

بیایید بگوییم که من تصویری مانند این دارم:

برای همه خوب به نظر می رسد، اما من صندلی را دوست ندارم.

عکس رو نصف میکنم:



و من یک صندلی را با دستان خود انتخاب می کنم:

سپس هر چیزی که در ماسک سفید است را به سمت چپ تصویر می کشم و در همان زمان در سراسر تصویر می گویم که تفاوت بین دو پیکسل همسایه باید برابر با تفاوت بین دو پیکسل همسایه سمت راست باشد. تصویر:

برای (int i=0; i

نتیجه این است:

کد و تصاویر موجود است

با دوستان به اشتراک بگذارید یا برای خود ذخیره کنید:

بارگذاری...