چرا کتاب یادگیری ماشین
- آیا دوست دارید در سریعترین زمان ممکن و به زبانی ساده اطلاعاتی در زمینه یادگیری ماشین کسب کنید؟
- آیا از خواندن برخی کتب سنگین و پر از ریاضیات خسته شده اید؟
امروزه شرکتهای مختلفی در سطح جهان از روشهای یادگیری ماشین برای مدیریت بهتر عملکردهای خود استفاده میکنند. این یک موج زودگذر نیست و یادگیری ماشین کارایی خود را به خوبی اثبات کرده است. این کتاب دانش کافی در مورد الگوریتمهای یادگیری بانظارت و بدون نظارت به شما ارائه میدهد. مزیت ویژه کتاب یادگیری ماشین ساده و خلاصه گویی و استفاده از شکل و نمودارهای فراوان است.
سرفصلهای کتاب یادگیری ماشین
ساخت یک مدل داده چیزی شبیه تربیت سگ راهنما است. از طریق آموزش تخصصی، سگهای راهنما یاد میگیرند تا در شرایط مختلف چه عکس العملهایی داشته باشند. برای مثال، سگ یاد میگیرد تا در برابر چراغ قرمز توقف کند و یا چطور صاحب خود را برای عبور از موانع هدایت کند. اگر سگ به خوبی آموزش دیده باشد، نیازی به مربی نخواهد بود؛ سگ راهنما قادر خواهد بود با تکیه بر آموزشهای قبلی خود، در موقعیتهای جدید تصمیمات درست بگیرد. مشابه آن، مدلهای یادگیری ماشین را میتوان آموزش داد تا براساس تجربهی گذشته در موقعیتهای جدید تصمیمگیری کنند.
یادگیری ماشین شامل چند صد الگوریتم آماری میباشد و انتخاب الگوریتم مناسب و یا ترکیب الگوریتمها برای انجام یک کار، چالشی همیشگی برای تمامی فعالین این حوزه میباشد. ولی قبل از این که الگوریتمهای خاصی را مورد بررسی قرار بدهیم، باید سه دستهی کلی یادگیری ماشین را معرفی کنیم. این سه دسته عبارتاند از:
- یادگیری با نظارت
- یادگیری بدون نظارت
- یادگیری تقویتی
یک راه مفید برای یاد گرفتن یک موضوع جدید، ترسیم و بصری سازی اطلاعات اساسی و ابزار مورد نیاز آن است. اگر بخواهید برای پیاده سازی و راهاندازی یک وب سایت جعبه ابزار جمع کنید، ابتدا به سراغ یکسری از زبانهای برنامهنویسی میروید که شامل زبانهای مخصوص فرانتاند مثل HTML، CSS و جاوا اسکریپت، یک یا دو زبان برنامهنویسی برای بخش بکاند و البته یک ویرایشگر متن میباشد. همچنین ممکن است جعبه ابزار خود را با یک سیستم مدیریت محتوا مثل WordPress و خدمات میزبان وب، DNS و تعدادی دامنه که اخیرا خریداری کردهاید، مجهز کنید. این یک فهرست گسترده و کامل نیست، ولی کمک میکند، تا از ابزارهای لازم برای توسعه وب سایت، آگاهی پیدا کنید.حالا به سراغ جعبه ابزار یادگیری ماشین رفته و آن را بررسی میکنیم.
- محفظه 1: داده
- محفظه 2: زیرساخت
- محفظه 3: الگوریتمها
- بصری سازی
جعبه ابزار مخصوص یادگیرنده پیشرفته شبیه به جعبه ابزار یک مبتدی است ولی دارای طیف گستردهتری از ابزارها و البته دادههاست. یکی از بزرگترین تفاوت میان یادگیرنده مبتدی و پیشرفته، ابعاد دادهای است ک آنها را مدیریت کرده و روی آن کار میکنند. مبتدیها معمولا کار خود را با مجموعه دادههای کوچک که مدیریت آنها ساده و دانلود آنها به سادگی و مستقیما از طریق یک سیستم کامپیوتری به شکل فایل ساده CSV است، شروع میکنند. ولی یادگیرندههای پیشرفته، علاقه بیشتری برای کار با مجموعه دادههای بزرگ و کلان دادهها دارند.
مشابه برخی از انواع میوهها، معمولا مجموعه دادهها هم قبل از استفاده به نوعی پاکسازی اولیه و تغییرات انسانی نیاز دارند. برای علم داده و یادگیری ماشین به صورت گستردهتر، روشهای مختلفی برای پاکسازی دادهها وجود دارد.
پاکسازی، فرآیند فنی با هدف بهبود مجموعه دادهها برای قابل استفاده شدن آنهاست. این فرآیند شامل تغییر و گاهی حذف دادههای ناکامل، دارای فرمت نادرست، نامربوط و تکراری است. همچنین گاهی نیاز به تبدیل داده متنی به مقادیر عددی و بازطراحی ویژگیها میشود. در یک پروژه تحلیل داده، معمولا پاکسازی داده زمانبرترین قسمت است.
در ادامه این فصل با مفاهیم زیر آشنا خواهیم شد.
- انتخاب ویژگی
- فشرده سازی ردیفها
- کدگذاری به روش One-Hot
- Binning
- دادههای ناموجود
یک سوال مشترک برای دانشجویانی که یادگیری ماشین را آغاز میکنند این است که چه تعداد داده برای آموزش مجموعه دادهام نیاز دارم؟ در کل، اگر مجموعه داده آموزشی شامل یک طیف کامل از ترکیب ویژگیها بشود، یادگیری ماشین بهتر عمل میکند. یک طیف کامل از ترکیب ویژگیها به چه شکل خواهد بود؟ فرض کنید که یک مجموعه داده درباره دانشمندان با ویژگیهای زیر دارید:
- مدرک دانشگاهی (X)
- تجربه تخصصی بیش از 5 سال (X)
- فرزندان (X)
- حقوق (Y)
برای دستیابی به رابطهای که بین ویژگی های اول (X) با حقوق (Y) دانشمندان داده وجود دارد، به مجموعه دادهای نیاز داریم که شامل مقدار Y برای هر ترکیب از ویژگیها باشد. برای مثال، باید حقوق دانشمندان داده دارای یک مدرک دانشگاهی، تجربه تخصصی بیش از ۵ سال و بدون فرزند و همینطور دانشمندان داده با یک مدرک دانشگاهی ، بیش از ۵ سال تجربه تخصصی و دارای فرزند را بدانیم.
فرض کنید سال 2015 است و دوباره به دبیرستان برگشتهاید. سال آخر، تیتر خبری نظرتان را به بیتکوین جلب میکند. با توجه به میل طبیعیتان برای دنبال کردن موضوعات جدید و احتمالا پول ساز، درباره امید و آرزوهایتان در زمینه رمزنگاری و سودآوری آن با خانواده صحبت میکنید. ولی قبل از اینکه فرصتی داشته باشید تا روی اولین بیتکوینتان در Coinbase پیشنهاد بگذارید، پدرتان مداخله کرده و اصرار دارد تا قبل از اینکه روی پس اندازهایتان ریسک کنید، یک معامله کاغذی را تجربه کنید. “معامله کاغذی” استفاده از سرمایههای شبیهسازی شده برای خرید و فروش یا سرمایه گذاری، بدون درگیرکردن پول واقعی است. پس در طی بیست و چهار ماه آینده، ارزش بیتکوین را دنبال میکنید. و ارزش آن را در بازههای منظمی مینویسید. همچنین تعداد روزهای گذشته از زمانی که معامله کاغذی را آغاز کردید، ثبت میکنید. هرگز فکر نمیکردید که پس از دو سال همچنان مشغول معامله کاغذی باشید، ولی متاسفانه، هرگز فرصتی برای ورود به بازار رمزنگاری نیافتید. طبق پیشنهاد پدرتان، منتظر ماندید تا ارزش بیتکوین به میزانی که قادر به خرید آن باشید کاهش پیدا کند. ولی در عوض، ارزش بیتکوین رشد زیادی میکند. با این حال، امید به اینکه یک روز صاحب بیتکوین بشوید را از دست نمیدهید. برای کمک به تصمیم اینکه آیا برای سقوط ارزش بیتکوین صبر میکنید یا یک روش سرمایهگذاری جایگزین پیدا میکنید، به سراغ تحلیل آماری میروید.
- مثال محاسباتی
- رگرسیون منطقی
- ماشین بردار پشتیبان
یکی از شیوههای تحلیل اطلاعات، خوشهبندی دادهها براساس ویژگیهای مشترکشان است. برای مثال، شرکتتان بخشی از مشتریان که در زمان مشابه خرید میکنند را بررسی کرده و عوامل موثر در رفتار خرید آنها را پیدا میکند.
درک ویژگیهای یک خوشه از مشتریان، در تصمیمگیریها مفید است.اینکه از طریق تبلیغات چه محصولی را به چه گروهی از مشتریان پیشنهاد بدهید. به جز تحقیقات بازاریابی، خوشه بندی در سناریوهای دیگر، از جمله شناسایی الگو، تشخیص تقلب و پردازش تصویر قابل استفاده است.
تحلیل خوشه بندی در هر دو دسته یادگیری بانظارت و یادگیری بدون نظارت قرار میگیرد. به عنوان یک روش یادگیری بانظارت، از خوشه بندی (به کمک الگوریتم K نزدیک ترین همسایه) برای دسته بندی نقاط داده جدید در خوشههای موجود استفاده میکند و به عنوان یک روش یادگیری بدون نظارت، خوشه بندی برای شناسایی گروههای گسسته از نقاط داده (به کمک الگوریتم K-Means) مورد استفاده قرار میگیرند. با اینکه مدلهای دیگری از تکنیکها خوشه بندی وجود دارند، ولی این دو الگوریتم، معروفترینها در هر دو زمینه یادگیری ماشین و دادهکاوی هستند.
در این فصل با مفاهیم زیر آشنا خواهیم شد.
- K نزدیک ترین همسایه
- خوشه بندی K-Means
- انتخاب k
یک چالش همیشگی در یادگیری ماشین، زیربرازش و بیشبرازش است، که نشان میدهد یک مدل چه قدر به الگوهای واقعی مجموعه داده نزدیک است. برای درک زیربرازش و پیشبردازش، باید ابتدا بایاس و واریانس را درک کنید.
بایاس به فاصله بین مقدار پیشبینی شده با مقدار واقعی اشاره دارد. در حالتی که بایاس زیاد است، به احتمال زیاد پیشبینیها، در یک مسیر دور از مقادیر واقعی، تغییر جهت داده است. واریانس توصیف میکند.که مقادیر پیشبینی شده چه میزان پراکنده هستند.
در این فصل به سراغ شبکههای عصبی مصنوعی (ANN) میرویم که دریچه ورود به دنیای یادگیری تقویتی است. شبکههای عصبی مصنوعی، یا شبکههای عصبی، یک تکنیک شناختهشده یادگیری ماشین برای پردازش داده از طریق لایههای تحلیلی است. علت نامگذاری شبکههای عصبی مصنوعی، شباهت این الگوریتم به مغز انسان است.
مغز انسان شامل نورونهای به هم پیوسته با دندریتهایی است که ورودیها را دریافت میکنند. نورون، از این ورودیها، یک سیگنال الکتریکی تولید کرده و از طریق آکسون به خروجی میدهد و سپس این سیگنالها را به وسیله ترمینالهای آکسونی بین دیگر نورونها منتشر میکند.
این حقیقت که شبکههای عصبی (به نسبت دیگر تکنیک ها) بر روی طیف گستردهای از مسائل یادگیری ماشین قابل اجرا است، باعث شده که برخی دانشمندان، شبکههای عصبی را، به عنوان الگوریتم یادگیری ماشین نهایی و برتر برشمارند. با این حال، این به این معنا نیست که شبکههای عصبی یک راه حل ساده و حتمی برای تمامی مسائل پیچیده است. در موارد مختلفی، شبکههای عصبی دچار مشکل شده و درختهای تصمیم به عنوان جایگزین مناسبی مطرح میشوند. نیاز شبکههای عصبی به دادههای حجیم و منابع محاسباتی قوی معضلی بزرگ است. تنها پس از آموزش بر روی میلیونها داده برچسب دار، موتور شناسایی تصاویر گوگل، امکان تشخیص اشیا ساده (مثل ماشینها) با دقت بالا را پیدا میکند. ولی چه تعداد تصویر ماشین، نیاز است تا به یک بچه چهار ساله معمولی نشان بدهید تا آن را بشناسد؟
در ادامه این فصل با مفاهیم زیر آشنا خواهیم شد.
- ساخت درخت تصمیم
- جنگلهای تصادفی
- Boosting
یکی از موثرترین شیوههای یادگیری ماشین، مدلسازی گروهی است. که همچنین به عنوان “گروهها” نیز شناخته می شود. مدلسازی گروهی، برای ساخت مدل پیشبینی کننده یکپارچه، تکنیکهای آماری را ترکیب میکند. مدلسازی گروهی، با ترکیب پیشبینیها و دنبال کردن دانش گروه است که یک دسته بندی نهایی یا خروجی با پیشبینی بهتر را ارائه میدهد.
پس از بررسی زیربنای آماری تعداد زیادی از الگوریتمها، زمان آن رسیده که یک مدل یادگیری ماشین واقعی بسازیم. با اینکه انتخابهای متنوعی برای زبان برنام هنویسی وجود دارد (همان طور که قبلاً در مورد آن بحث شد)، برای این تمرین از پایتون استفاده میکنیم چرا که یادگیری آن سریع است و برای تغییر و کار با مجموعه دادههای بزرگ، مفید و مناسب است. اگر هیچ تجربهای در برنامهنویسی با پایتون ندارید، اصلاً لازم نیست نگران باشید. هدف اصلی این فصل درک روش و قدمهای لازم برای ساخت یک مدل یادگیری ماشین ساده است.
- آمادهسازی محیط کدنویسی
- بارگذاری مجموعه داده
- پاکسازی مجموعه داده
- فرآیند پاکسازی
- تقسیم مجموعه داده
- انتخاب الگوریتم و تنظیم ابرپارامترها
- ارزیابی نتایج
تکنیک بهینهسازی مهم دیگر، انتخاب ویژگی است. همان طور که به خاطر دارید، در مرحله پاکسازی 9 ویژگی را حذف کردیم. الان زمان مناسبی است که درباره آن ویژگیها تجدید نظر کنید و تحلیل کنید. که آیا آنها بر روی صحت کلی مدل تاثیری دارند. ” SellerG ” ممکن است یک ویژگی جالب برای اضافه کردن به مدل باشد به خاطر اینکه احتمالا شرکت معاملات املاکی که ملک را میفروشد بر روی قیمت نهایی فروش تاثیر داشته باشد.
برعکس، حذف ویژگیها از مدل فعلی ممکن است زمان پردازش را، بدون کاهش چشمگیر دقت، کاهش بدهد، یا حتی دقت را بهبود ببخشد. برای انتخاب موثر ویژگیها، بهتر است که تغییرات ویژگیها را به تفکیک انجام دهید و نتایج را تحلیل کنید، به جای آنکه یک دفعه چندین تغییر را اعمال کنید.
همچنین برای بهرهمندی حداکثری از مطالعه کتاب یادگیری ماشین، دو دوره رایگان پایتون و یادگیری ماشین که در سایت موجود است، را مشاهده کنید.
نکته: اگر برای انجام پروژه ها، داده احتیاج داشتید حتما به کانال تلگرامی ما مراجعه کنید.
این کتاب با فرمت pdf است.
فایل کتاب یادگیری ماشین فایل های ضمیمه
درخواست مشاوره
برای کسب اطلاعات بیشتر درباره این دوره درخواست مشاوره خود را ارسال کنید و یا با ما در تماس باشید.
درخواست مشاورهدوره های مرتبط
دوره آموزشی Plotly در پایتون
در دوره Plotly چه مواردی آموزش داده میشود؟ در دوره Plotly به سراغ مبحث مهم بصریسازی (Visualization) در پایتون میرویم.…
دوره آموزش رایگان کتابخانه Numpy
در دوره Numpy چه مواردی آموزش داده میشود؟ اگر بخواهیم مهمترین پیشنیازها برای کار با داده را ذکر کنیم قطعاً…
پایتون برای علوم داده
در دنیای امروزی، اگر پایتون بلد نیستید یک جای کارتان می لنگد.
یادگیری ماشین
در این دوره آموزشی نگاهی متفاوت به یادگیری ماشین خواهیم داشت تا قدم اول در حوزه علوم داده محکم و استوار باشد.
30,000 تومان قیمت اصلی 30,000 تومان بود.20,000 تومانقیمت فعلی 20,000 تومان است.
محمد دهقانی
موسس دیتاهابفعال حوزه داده
مهدی
سلام. این کتاب فارسی است؟ امکان پرینت هم دارد؟
محمد دهقانی(مدیریت)
سلام وقت بخیر
بله فارسی است
محدودیتی برای پرینت وجود ندارد