در مقاله های پیشین، در رابطه با ماشین لرنینگ و انواع آن صحبت کردیم و مثال هایی از آن در دنیای واقعی آوردیم.
اکنون میخواهیم بهترین الگوریتم برای مشکل رگرسیون، انواع آن و مزایا و معایبش را آموزش دهیم.
با ما همراه باشید.
هنگام نزدیک شدن به هر نوع مشکل یادگیری ماشین(ML) الگوریتم های مختلفی برای انتخاب وجود دارد. در یادگیری ماشین، چیزی به نام قضیه «نهار رایگان نداریم» وجود دارد که اساساً بیان میکند که هیچ الگوریتم ML برای تمام مشکلات بهترین نیست. عملکرد الگوریتم های مختلف ML به شدت به اندازه و ساختار داده های شما بستگی دارد. بنابراین، انتخاب صحیح الگوریتم اغلب نامشخص میماند، مگر اینکه الگوریتمهای خود را مستقیماً از طریق آزمون و خطای ساده آزمایش کنیم. هنگام نزدیک شدن به هر نوع مشکل یادگیری ماشین(ML) الگوریتم های مختلفی برای انتخاب وجود دارد. در یادگیری ماشین، چیزی به نام قضیه «نهار رایگان نداریم» وجود دارد که اساساً بیان میکند که هیچ الگوریتم ML برای تمام مشکلات بهترین نیست. عملکرد الگوریتم های مختلف ML به شدت به اندازه و ساختار داده های شما بستگی دارد. بنابراین، انتخاب صحیح الگوریتم اغلب نامشخص میماند، مگر اینکه الگوریتمهای خود را مستقیماً از طریق آزمون و خطای ساده آزمایش کنیم.
اما، مزایا و معایبی برای هر الگوریتم ML وجود دارد که میتوانیم از آنها به عنوان راهنما استفاده کنیم. اگرچه یک الگوریتم همیشه بهتر از دیگری نخواهد بود، اما برخی از ویژگیهای هر الگوریتم وجود دارد که میتوانیم از آنها به عنوان راهنما برای انتخاب سریع الگوریتم صحیح و تنظیم پارامترهای پیشرفته تر استفاده کنیم. ما قصد داریم به چند الگوریتم برجسته ML برای مشکلات رگرسیون نگاهی بیندازیم و دستورالعمل هایی را برای زمان استفاده از آنها بر اساس نقاط قوت و ضعف آنها تنظیم کنیم.
رگرسیون خطی و چند جمله ای
با شروع حالت ساده، رگرسیون خطی متغیر تک تکنیکی است که برای مدلسازی رابطه بین یک متغیر مستقل ورودی (متغیر مشخصه) و یک متغیر وابسته خروجی با استفاده از یک مدل خطی یعنی یک خط استفاده میشود. حالت کلی تر، رگرسیون خطی چند متغیره است که در آن مدلی برای رابطه بین متغیرهای ورودی مستقل چندگانه (متغیرهای ویژگی) و یک متغیر وابسته خروجی ایجاد می شود. مدل خطی باقی می ماند زیرا خروجی، ترکیبی خطی از متغیرهای ورودی است.
سومین مورد کلی به نام رگرسیون چند جمله ای وجود دارد که در آن مدل به ترکیبی غیر خطی از متغیرهای ویژگی تبدیل می شود، یعنی می تواند متغیرهای نمایی، سینوس و کسینوس و غیره وجود داشته باشد. اما این مستلزم آگاهی از نحوه ارتباط داده ها با خروجی است. مدلهای رگرسیون را میتوان با استفاده از شیب نزولی تصادفی (SGD) آموزش داد.
مزیت:
معایب:
شبکه های عصبی
یک شبکه عصبی از یک گروه به هم پیوسته از گره ها به نام نورون ها تشکیل شده است. متغیرهای ویژگی ورودی از دادهها به عنوان یک ترکیب خطی چند متغیره به این نورونها منتقل میشوند، جایی که مقادیر ضرب شده در هر متغیر ویژگی به عنوان وزن شناخته میشوند. سپس یک غیر خطی به این ترکیب خطی اعمال میشود که به شبکه عصبی توانایی مدلسازی روابط غیرخطی پیچیده را میدهد. یک شبکه عصبی می تواند چندین لایه داشته باشد که خروجی یک لایه به همان روش به لایه بعدی منتقل می شود. در خروجی، به طور کلی هیچ غیرخطی اعمال نمی شود. شبکه های عصبی با استفاده از نزول شیب تصادفی (SGD) و الگوریتم پس انتشار (هر دو در GIF بالا نمایش داده شده) آموزش داده می شوند. یک شبکه عصبی از یک گروه به هم پیوسته از گره ها به نام نورون ها تشکیل شده است. متغیرهای ویژگی ورودی از دادهها به عنوان یک ترکیب خطی چند متغیره به این نورونها منتقل میشوند، جایی که مقادیر ضرب شده در هر متغیر ویژگی به عنوان وزن شناخته میشوند. سپس یک غیر خطی به این ترکیب خطی اعمال میشود که به شبکه عصبی توانایی مدلسازی روابط غیرخطی پیچیده را میدهد. یک شبکه عصبی می تواند چندین لایه داشته باشد که خروجی یک لایه به همان روش به لایه بعدی منتقل می شود. در خروجی، به طور کلی هیچ غیرخطی اعمال نمی شود. شبکه های عصبی با استفاده از نزول شیب تصادفی (SGD) و الگوریتم پس انتشار آموزش داده می شوند (هر دو در GIF بالا نمایش داده شده).
مزیت:
معایب:
درختان رگرسیون و جنگل های تصادفی
با شروع حالت پایه، درخت تصمیم یک مدل بصری است که در آن یکی از شاخههای درخت به پایین میرود و شاخه بعدی را برای پایین رفتن، بر اساس یک تصمیم موجود در یک گره، انتخاب میکند. القای درختی وظیفه در نظر گرفتن مجموعه ای از نمونه های آموزشی به عنوان ورودی، تصمیم گیری برای تقسیم بهترین ویژگی ها، تقسیم مجموعه داده ها، و تکرار بر روی مجموعه داده های تقسیم شده حاصل تا زمانی که همه نمونه های آموزشی دسته بندی شوند، است. در هنگام ساخت درخت، هدف، تقسیم بر روی ویژگی هایی است که خالص ترین گره های فرزند ممکن را ایجاد می کنند، که تعداد تقسیم هایی را که باید برای طبقه بندی همه نمونه ها در مجموعه داده ما انجام شود، به حداقل می رساند. میزان خلوص با مفهوم به دست آوردن اطلاعات اندازهگیری میشود، که به میزان اطلاعات لازم در مورد یک نمونه قبلاً دیده نشده برای طبقهبندی صحیح آن مربوط میشود. در عمل، این با مقایسه آنتروپی، یا مقدار اطلاعات مورد نیاز برای طبقهبندی یک نمونه واحد از یک پارتیشن مجموعه داده فعلی، با مقدار اطلاعاتی که برای طبقهبندی یک نمونه واحد در صورتی که پارتیشن مجموعه داده فعلی در یک قسمت داده شده بیشتر تقسیم شود، اندازهگیری میشود.با شروع حالت پایه، درخت تصمیم یک مدل بصری است که در آن یکی از شاخههای درخت به پایین میرود و شاخه بعدی را برای پایین رفتن، بر اساس یک تصمیم موجود در یک گره، انتخاب میکند. القای درختی وظیفه در نظر گرفتن مجموعه ای از نمونه های آموزشی به عنوان ورودی، تصمیم گیری برای تقسیم بهترین ویژگی ها، تقسیم مجموعه داده ها، و تکرار بر روی مجموعه داده های تقسیم شده حاصل تا زمانی که همه نمونه های آموزشی دسته بندی شوند، است. در هنگام ساخت درخت، هدف، تقسیم بر روی ویژگی هایی است که خالص ترین گره های فرزند ممکن را ایجاد می کنند، که تعداد تقسیم هایی را که باید برای طبقه بندی همه نمونه ها در مجموعه داده ما انجام شود، به حداقل می رساند. میزان خلوص با مفهوم به دست آوردن اطلاعات اندازهگیری میشود، که به میزان اطلاعات لازم در مورد یک نمونه قبلاً دیده نشده برای طبقهبندی صحیح آن مربوط میشود. در عمل، این با مقایسه آنتروپی، یا مقدار اطلاعات مورد نیاز برای طبقهبندی یک نمونه واحد از یک پارتیشن مجموعه داده فعلی، با مقدار اطلاعاتی که برای طبقهبندی یک نمونه واحد در صورتی که پارتیشن مجموعه داده فعلی در یک قسمت داده شده بیشتر تقسیم شود، اندازهگیری میشود.
جنگل های تصادفی به سادگی مجموعه ای از درختان تصمیم گیری هستند. وکتور ورودی از طریق چندین درخت تصمیم اجرا می شود. برای رگرسیون، مقدار خروجی همه درختان به طور میانگین محاسبه می شود. برای طبقه بندی، یک طرح رأی گیری برای تعیین رده نهایی استفاده می شود.
مزیت:
معایب:
در پست بعدی نگاهی به مزایا و معایب مدلهای طبقهبندی مختلف خواهیم داشت. امیدوارم از این پست لذت برده باشید و مطالب جدید و مفیدی یاد گرفته باشید.