یکی از محبوب ترین و در عین حال از ساده ترین درخت های تصمیم، درخت تصمیم CART است که کاربردهای زیادی در طبقه بندی و رگرسیون دارد. CART که خود مخفف Classification And Regression Tree است بر اساس درخت های دودویی(باینری) بنا نهاده شده است. در این درس میخواهیم بیشتر با نحوه ساخت درخت CART آشنا شویم. این درخت میتواند پایه ای برای الگوریتم های پیچیده تر مانند جنگل تصادفی(Random Forest) باشد.
یادگیری درخت تصمیم (Decision tree learning) گروهی از الگوریتمهای یادگیری ماشین هستند که در طبقهبندی آماری کاربرد دارند. درختهای تصمیم به گروه الگوریتمهای یادگیری تحت نظارت تعلق دارند و بیشتر آنها بر اساس حداقلسازی کمیتی به نام آنتروپی ساخته میشوند. هرچند توابع دیگری هم برای یادگیری درخت تصمیم وجود دارند. نمونههای قدیمی درخت تصمیم تنها قادر به استفاده از متغیرهای گسسته بودند، اما الگوریتمهای جدیدتر هردو نوع متغیر گسسته و پیوسته را در یادگیری به کار میبرند. یکی از مزایای مهم الگوریتم درخت تصمیم قابلیت فهم و تفسیر آسان است که محبوبیت این الگوریتم را بالا برده است.از معایب آن عدم استواری و دقت ناکافی است.
در یادگیری ماشین، هسته تابع پایه شعاعی، یا هسته RBF، یک تابع هسته محبوب است که در الگوریتمهای یادگیری مختلف هسته ای استفاده میشود. بهطور خاص، معمولاً در دستهبندی ماشین بردار پشتیبانی استفاده میشود. هسته RBF در دو نمونه x و x ‘، به عنوان بردارهای ویژگی در برخی از فضای ورودی، به صورت زیر تعریف میشود:
پرسپترون یک الگوریتم یادگیری ماشین است که در دسته یادگیری با نظارت قرار میگیرد. الگوریتم پرسپترون یک الگوریتم دستهبندی دودویی (نوعی از دستهبندی که میتواند با توجه به بردار ورودی تصمیم بگیرد که این ورودی متعلق به یک کلاس هست یا خیر) است. این الگوریتم یک دستهبند خطی است، بهاین معنا که پیشبینیهایش را باتوجه به ترکیب خطی وزن دار ورودی الگوریتم انجام میدهد. همچنین این الگوریتم به دلیل اینکه ورودیهایش را به صورت تک تک در زمان بررسی میکند، یک الگوریتم برخط میباشد. الگوریتم پرسپترون در سال ۱۹۵۷ در لابراتوار کرنل آرونوتیکال به وسیلهٔ فرانک روزنبلت ابداع شد. در واقع این الگوریتم جزء اولین شبکههای عصبی مصنوعی است که بهکار گرفته شدهاست.
یادگیری شبکه عصبی بر اساس نمونه ای از جمعیت مورد مطالعه صورت می گیرد. در طول زمان یادگیری ، مقدار ارائه شده توسط واحد خروجی با مقدار واقعی مقایسه می شود. پس از آن ، وزن همه واحدها طوری تنظیم شده تا پیش بینی اصلاح شود. الگوریتم های شبکه عصبی زیادی برای آموزش شبکه عصبی مصنوعی وجود دارند.
ماشين بردار پشتيبان يک روش يادگيري نسبتا جديد است که اغلب براي کلاسبندي باينري مورد استفاده واقع مي شود. فرض کنيد L مشاهده داريم که هر مشاهده مشتمل بر زوج هاي است که در آن . بردار ورودي و يک مقدار دو وضعيتي (1- يا 1+) است. ايده ي ماشين بردار پشتيبان مي کوشد، ابرصفحاتي در فضا رسم کند که عمل تمايز نمونه هاي کلاس هاي مختلف داده ها را بطور بهينه انجام دهد. مي توان يک ابرصفحه را از طريق رابطه زير نشان داد:
ماشین بردار پشتیبان دستهبندی کنندهای است که جزو روشهای بر پایه هسته در یادگیری ماشین محسوب میشود. SVM در سال 1992 توسط وپنیک معرفی شده و بر پایه نظریه آماری یادگیری بنا گردیده است. الگوریتم SVM یکی از الگوریتمهای معروف در زمینه یادگیری با نظارت است که برای دستهبندی و رگرسیون استفاده میشود. این الگوریتم به طور همزمان حاشیههای هندسی را بیشینه کرده و خطای تجربی دستهبندی را کمینه میکند لذا به عنوان دستهبندی حداکثر حاشیه نیز نامیده میشود.
یادگیری ماشین (Machine Learning) یکی از زیر مجموعه های هوش مصنوعی است که به سیستم ها این امکان را می دهد تا به صورت خودکار یادگیری و پیشرفت داشته باشند بدون اینکه به برنامه نویسی صریحی برای آن داشته باشند. تمرکز اصلی یادگیری ماشینی بر توسعه برنامه های رایانه ای است که بتوانند به داده ها دسترسی پیدا کنند و از آن برای یادگیری خود استفاده کنند.
بدافزار یا MALWARE نام تعدادی از نرمافزارهای مخرب است که به شکلهای گوناگون مانند کد، فایلها، محتوای فعال و… وارد سیستم کامپیوتری میشوند. بدافزارها تنها باعث خسارت به داده سیستم نمیشود، گاهی اوقات بر روی عملکرد سیستم نیز تأثیر میگذارد یا حتی باعث دسترسی غیرمجاز به یک شبکه میشوند.
همانطور که پیشتر گفته شد تروجان یک برنامه ی کامپیوتری تهاجمی یا همان بدافزار می باشد. این نوع بدافزار به شکل های مختلف و فریب کاربر وارد کامپیوتر کاربران می شود و به قسمت هایی از کامپیوتر کاربر که برای آن برنامه ریزی شده است حمله می کند.
دادگان (Data Set) مجموعه ای از داده های گردآوری شده در رابطه با یک موضوع واحد بوده و بیشتر ین کاربرد آن در داده کاوی (Data Mining) است اما یکی از ابزارهای بسیارمناسب و کارآمد برای آزمون و ارزیابی الگوریتم های طراحی شده در یک حوزه خاص نیز به شمار می رود برای مثال دادگان 99 Kdd CUP با هدف آزمون الگوریتم های تشخیص نفوذ (Intrusion Detection) گردآوری و طراحی شده است این مجموعه داده با استفاده از حجم عظيم داده هاي گرد آوري شده در پروژه DIDE یا Darpa Intrusion Detection Evalution که با همکاري سازمان پروژه هاي تحقيقاتي پيشرفته دفاعي ، وزارت دفاع ايالات متحده آمريکا و آزمايشگاه لينکلن دانشگاه MIT انجام شد ، تهيه گرديده است هدف از تهیه اين دادگان ، ايجاد يک مجموعه داده استاندارد براي ارزيابي سيستم هاي تشخيص نفوذ (Intrusion Detection System) است.
در الگوریتم انتخاب ویژگی تبرید (یا تبرید انتخاب ویژگی شده) از فرایند بازپخت که از مباحث رشته متالورژی و مواد محسوب میشود، الگو گرفته شده است. انتخاب نام شبیهسازی تبرید برای این الگوریتم، ریشه در فرایند دارد که از آن تقلید میکند. در بهینهسازی نیز مانند فرایند انیلینگ، آنچه در بخش پیشین پیرامون بازپخت مواد بیان شد، برای حل مسائل قابل انجام است. یعنی در واقع، جوابهای یک مساله به خوبی گرم میشوند و با نوسانات زیادی تغییر میکنند؛ سپس، به تدریج دامنه تغییرات کم میشود و در واقع یک سری شیار به سمت جواب بهینه ساخته میشوند. الگوریتم انتخاب ویژگی تبرید برای اولین بار در سال ۱۹۸۳، توسط «کریکپاتریک» (Kirkpatrick) و همکاران معرفی شد. شایان ذکر است، الگوریتم انتخاب ویژگی تبرید از جمله الگوریتمهای فراابتکاری (فراتکاملی یا فرااکتشافی یا Metaheuristic) محسوب میشود. در الگوریتم انتخاب ویژگی تبرید، از روش احتمالاتی برای حل مساله بهینهسازی استفاده میشود.
قبل از پیدایش شبکه عصبی mlp ، در سال 1958 فرانک روزنبلات یک شبکه عصبی به نام پرسپترون ابداع کرد. روزنبلات یک لایهای از نورونها را تشکیل داد و شبکه حاصل را پرسپترون نامید. اما پرسپترون روزنبلات نیز مشکلات فراوانی داشت. مینسکی و پپرت در سال 1969 کتابی به نام پرسپترون نوشتند. آنها تمامی تواناییها و مشکلات پرسپترون را در این کتاب مورد بررسی قرار دادن. مینسکی و پپرت در کتاب خود ثابت کردند که پرسپترون فقط مسائلی را میتواند حل کند که به صورت خطی تفکیکپذیر باشند. همین امر باعث شد تا محققان از حوزه شبکه عصبی نا امید شوند! ساختار پرسپترون در شکل زیر نشان داده شده است:
طبقه بندی کننده های Naive Bayes ،مجموعه ای از الگوریتم های طبقه بندی بر اساس تئوری Bayes است. Naive Bayes یک الگوریتم تنها نیست بلکه یک خانواده از الگوریتمهاست که در یک اصل مشترک میباشند. هر جفت ویژگی طبقه بندیشده در الگوریتمهای بیز مستقل از یکدیگر است.
بهطور خلاصه میتوان گفت شبکه بیزین، نمایش بامعنی روابط نامشخص ما بین پارامترها در یک حوزه میباشد. شبکه بیزین گراف جهت دار غیر حلقوی از نودها برای نمایش متغیرهای تصادفی و کمانها برای نمایش روابط احتمالی مابین متغیرها بهشمار میرود.
بوستینگ یک فرا الگوریتم ترکیبی در حوزه یادگیری ماشین است که برای کاهش عدم توازن و همچنین واریانسبه کار میرود. این روش در یادگیری با نظارت مورد استفاده قرار گرفته و از خانواده الگوریتمهای یادگیری ماشین به شمار میرود. این تکنیک، روشی برای تبدیل سیستمهای یادگیری ضعیف به قوی بر اساس ترکیب نتایج طبقه بندهای مختلف است.
«یادگیری تقویتی» (Reinforcement Learning | RL) گونهای از روشهای یادگیری ماشین است که یک «عامل» (agent) را قادر به یادگیری در محیطی تعاملی با استفاده از آزمون و خطاها و استفاده از بازخوردهای اعمال و تجربیات خود میسازد. اگرچه هم یادگیری نظارت شده و هم یادگیری تقویتی از نگاشت بین ورودی و خروجی استفاده میکنند، اما در یادگیری تقویتی که در آن بازخوردهای فراهم شده برای عامل مجموعه صحیحی از اعمال جهت انجام دادن یک وظیفه هستند، بر خلاف یادگیری نظارت شده از پاداشها و تنبیهها به عنوان سیگنالهایی برای رفتار مثبت و منفی بهره برده میشود.