گرادیان کاهشی قسمت سوم

2 دقیقه |  2020/09/09

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

دوره یادگیری ماشین دانشگاه استنفورد به فارسی

اینجا می‌خواهیم از گرادیان کاهشی برای مینیمم کردن تابع هزینه استفاده کنیم! ابتدا تابع $J$ را در الگوریتم گرادیان جاگذاری می‌کنیم و …

با محاسبه عبارت مشتق جزئی در گرادیان کاهشی برای دو پارامتر $\theta_0$ و $\theta_1$ خواهیم داشت:

$$ \theta_0, j = 0: \frac{\partial}{\partial \theta_j} J(\theta_0, \theta_1) = \frac{1}{m} \sum_{i=1}^m (h_\theta(x^{(i)}) - y^{(i)}) $$

$$ \theta_1, j = 1: \frac{\partial}{\partial \theta_j} J(\theta_0, \theta_1) = \frac{1}{m} \sum_{i=1}^m (h_\theta(x^{(i)}) - y^{(i)}) \cdot x^{(i)} $$

به الگوریتم گرادیان کاهشی بر‌ می‌گردیم و جایگذاری، و در واقع به الگوریتم رگرسیون خطی می‌رسیم!

دوره یادگیری ماشین دانشگاه استنفورد به فارسی

در قسمت اول گرادیان کاهشی در مثال موتور سوار دیدیم که بسته به اینکه از کجا شروع کنیم ممکن است که به مینیمم محلی برسیم! اما تابع هزینه برای رگرسیون خطی همیشه تابعی سهمی مانند مثل این است:

دوره یادگیری ماشین دانشگاه استنفورد به فارسی

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

دوره یادگیری ماشین دانشگاه استنفورد به فارسی

و حالا می‌توانید از آن استفاده کنید تا قیمت خانه ها را برای دوستانتان پیش‌بینی کنید!