آموزش ماشین یا Machine learning

مقدمه ای بر یادگیری ماشین

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

یادگیری ماشین چیست؟

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

کاربردهای یادگیری ماشین

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

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

تحلیل احساس (opinion mining): احساس افراد از روی موتون یکی دیگر از موارد جذاب در حوزه یادگیری ماشین است. اگر ما مجموعه دادهای از متون که شامل نوعی از احساسات باشد به الگوریتم های یادگیری ماشین تحویل بدهیم ماشین این احساسات را یاد گرفته و بعد از آن هر متنی که در آن این چنین احساس هایی وجود داشته باشد آن را برای ما استخراج می‌کند.

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

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

 دیتاست یا مجموعه داده چیست؟

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

روش انتخاب دیتاست مناسب برای تحقیق:

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

  • مجموعه داده متنی (متن مقاله، کتاب، نظرات شبکه‌های اجتماعی، توییت ها و …)
  • مجموعه داده جدولی (داده‌های موجود در پایگاه داده، خوشه‌بندی، طبقه‌بندی، سری زمانی و …)
  • مجموعه داده چندرسانه ای (عکس، ویدیو و صوت)(عکس‌های هوایی، دوربین‌های مداربسته و …)

فرایند یا مراحل یادگیری ماشین؟

یکی از مولفه‌های مهم جهت موفقیت در پروژه‌های یادگیری ماشین، بهره‌گیری از متدولوژی و جریان‌های کاری دقیق جهت مدیریت پروژه است. در ادامه گام‌های لازم جهت پیاده‌سازی مدل‌های تحلیلی مبتنی بر یادگیری ماشین ذکر شده‌اند. در منابع مختلف می بینیم که مراحل یادگیری ماشین، از لحاظ تعداد مراحل اختلاف نظر وجود دارد. در عمده منابع با  پنج، شش یا هفت مرحله مواجه هستیم. که البته این اختلاف بنیادی نیست بلکه در برخی از منابع ترجیح داده شده است که بعضی از مراحل تفکیک شوند و و جزئی تر و یا نشوند.  لذا امکان دارد که حتی در برخی از منابع با بیش از ۷ مرحله هم مواجه شویم لذا در اینجا یک فرایند 10مرحله ای را برای یادگیری ماشین مورد بررسی قرار میدهیم.

۱ شناخت نیازمندی‌های کسب‌وکار و جمع آوری داده

۲ آماده‌سازی داده

۳ مهندسی ویژگی‌ و استخراج و انتخاب ویژگی (Feature extraction)

۴ انتخاب الگوریتم و روش یادگیری

۵ آموزش مدل یادگیری ماشین براساس داده‌های آموزش (Train)

۶ آزمودن یا تست مدل براساس داده‌های آزمون (Test)

۷ ارزیابی دقت و صحت مدل

8 بکارگیری مدل در محیط عملیاتی

9 ارزیابی نهایی مدل در محیط واقعی

10 کسب بینش ناشی از تحلیل‌های داده‌محور

مراحل یادگیری ماشین
فرایند یادگیری ماشین

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

۱- شناخت نیازمندی‌های کسب‌وکار و جمع آوری داده

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

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

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

 ۲ آماده‌سازی داده

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

مراحل Data Cleansing یا تمیزسازی داده (با تلفظ: دیتا کلینزینگ)

۱- مجتمع کردن داده ها
۲- بازسازی داده های گم شده
۳- استانداد سازی یا یک شکل کردن داده
۴- نرمال سازی داده

پاک سازی داده
پاک سازی داده

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

یک داده با کیفیت برای تحلیل معمولا شش ویژگی زیر را دارد:
۱- ارزش یا اعتبار داده
۲- دقت و صحت داده
۳- دوام یا پایداری داده
۴- یکپارچگی ارتباطات و بخش های مختلف داده
۵- بردار زمانی داده

اعتبارسنجی داده
اعتبارسنجی داده

تذکر:

الزامی در رابطه با ذخیره ی داده های مورد استفاده در داده کاوی بر روی یک پایگاه داده ی Cube OLAP و یا پایگاه های داده ی رابطه ای (Relational Database) وجود ندارد، اگرچه میتوان از هردوی آنها به عنوان منبع های داده استفاده نمود. بنابراین فرآیند داده کاوی را میتوان با استفاده از هر منبع داده ای که به عنوان منبع داده ی Analysis Services تعریف شده باشد، انجام داد. این منابع داده ممکن است شامل فایل های متنی (Text) و Workbookهای Excel یا داده های سایر منابع خارجی باشد.

 ۳ مهندسی ویژگی‌ و استخراج و انتخاب ویژگی (Feature extraction)

ادامه مطلب به زودی…

  ۴ انتخاب الگوریتم و روش یادگیری

گام چهارم مدلسازی داده های آماده شده است. با توجه به متدهای متفاوت، مدل های متفاوتی ساخته می شود و بهترین مدل ها از نظر متخصص داده کاوی انتخاب می شود. ستون هایی از داده ها که برای استفاده در نظر گرفته شده اند را میتوان با ایجاد یک ساختار داده کاوی (Mining Structure)، تعریف نمود.

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

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

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

 شکل زیر انواع روش های یادگیری ماشین همراه با مورد استفاده (Use Case) آن ها را نمایش میدهد.

  •  روش های یادگیری بی نظارت مانند: خوشه بندی و کاهش ابعاد
  • روش های یادگیری با نظارت مانند: رده بندی ورگرسیون
  • روش های یادگیری تقویتی
یادگیری ماشین
یادگیری ماشین

چگونه روش مناسب داده کاوی را تشخیص دهیم؟

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

الگوریتم های یادگیری ماشین
انتخاب الگوریتم و روش یادگیری ماشین

 ۵ آموزش مدل یادگیری ماشین براساس داده‌های آموزش (Train)

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

 ۶ آزمودن یا تست مدل براساس داده‌های آزمون (Test)

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

 ۷ ارزیابی دقت و صحت مدل

در این گام می‌خواهیم تعدادی از معیار‌های ارزیابی الگوریتم های یادگیری ماشین را بررسی کنیم. یکی از مهم‌ترین مراحل پس از طراحی و ساخت یک مدل یا یک الگوریتم، ارزیابی کارآیی (performance) آن است. در ادامه با روش هایی برای ارزیابی مدل آشنا می‌شویم.

تعریف حساسیت (sensitivity) و تشخیص‌پذیری (specificity)

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

پارامتر تشخیص‌پذیری را نیز اصطلاحا دقت (Precision)، و حساسیت را نیز اصطلاحا صحت (Recall) می‌­نامند.

دسته بندی داده ها

۱- مثبت صحیح (True Positive)

۲- مثبت کاذب (False Positive)

۳- منفی صحیح (True Negative)

۴- منفی کاذب (False Negative)

مثال های از “مثبت های کاذب” و “منفی های کاذب”

  • بخش امنیت فرودگاه: یک “مثبت کاذب” هنگامی است که اشیاء معمولی مانند کلیدها و یا سکه ها به اشتباه اسلحه تشخیص داده می شوند (و ماشین صدای “بیپ” را ایجاد می کند)
  • کنترل کیفیت: یک “مثبت کاذب” هنگامی است که محصول با کیفیت خوب، مردود می شود و یک “منفی کاذب” هنگامی است که محصول بی کیفیت مورد قبول واقع می شود
  • نرم افزار ضد ویروس: یک “مثبت کاذب” هنگامی است که یک فایل عادی بعنوان یک ویروس شناخته می شود
  • آزمایش پزشکی: گرفتن آزمایش های ارزان قیمت و بررسی آن توسط تعداد زیادی از پزشکان می تواند مثبتهای کاذب زیادی به بار آورد (یعنی جواب تست بگوید که بیمار هستید در حالی که چنین نیست)، و سپس خواسته شود که دوباره آزمایش های با دقت بیشتر بگیرید.

کدام معیارها باید بهتر باشند:

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

۱- مثبت صحیح (True Positive) = درست شناسایی شده است.

۲- مثبت کاذب (False Positive) = اشتباه شناسایی شده است (خطای نوع یک در انجام آزمون).

۳- منفی صحیح (True Negative) = به درستی رد شد.

۴- منفی کاذب (False Negative) = اشتباه رد شد (خطای نوع دوم در انجام آزمون).

ماتریس اختلاط یا درهم ريختگی (confusion matrix) 

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

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

روش ارزیابیی یادگیری ماشین
روش ارزیابیی یادگیری ماشین

روش های ارزیابی دقت و صحت

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

  1. تشکیل ماتریس اختلاط (confusion matrix)
  2. دقت (Accuracy)
  3. صحت (Precision)
  4. Recall: زمانی که ارزش false negatives بالا باشد، معیار Recall، معیار مناسبی خواهد بود.
  5. F1 Score
  6. MCC: پارامتر دیگری است که برای ارزیابی کارایی الگوریتم‌های یادگیری ماشین از آن استفاده می‌شود. این پارامتر بیان‌گر کیفیت کلاس‌بندی برای یک مجموعه باینری می‌باشد.

دقت (Accuracy):

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

Accuracy = (TP+TN) / (TP+FN+FP+TN)

صحت (Precision) :

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

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

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

Precision =TP / (TP+FP)

فراخوانی یا حساسیت یا Recall :

در نقطه مقابل این پارامتر، ممکن است در مواقعی دقت تشخیص کلاس منفی حائز اهمیت باشد. از متداول‌ترین پارامترها که معمولا در کنار حساسیت بررسی می‌شود، پارامتر خاصیت (Specificity)، است که به آن «نرخ پاسخ‌های منفی درست» (True Negative Rate) نیز می‌گویند. خاصیت به معنی نسبتی از موارد منفی است که آزمایش آن‌ها را به درستی به عنوان نمونه منفی تشخیص داده‌ است. این پارامتر به صورت زیر محاسبه می‌شود.

زمانی که ارزش false negatives بالا باشد، معیار Recall، معیار مناسبی خواهد بود. فرض کنیم مدلی برای تشخیص بیماری کشنده ابولا داشته باشیم. اگر این مدل Recall پایینی داشته باشد چه اتفاقی خواهد افتاد؟ این مدل افراد زیادی که آلوده به این بیماری کشنده هستند را سالم در نظر می‌گیرد و این فاجعه است. نسبت مقداری موارد صحیح طبقه‌بندی شده توسط الگوریتم از یک کلاس به تعداد موارد حاضر در کلاس مذکور که به‌صورت زیر محاسبه می‌شود:

Recall = Sensitivity = (TPR) =  TP / (TP+FN)

db8cd8a7d8afdaafdb8cd8b1db8c d985d8a7d8b4db8cd986 machine learning d8a8d987 d8b5d988d8b1d8aa daafd8a7d985 d8a8d987 daafd8a7d985 1

F1 Score یا F-measure

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

F-measure= 2 * (Recall * Precision) / (Recall + Precision)

معیار (Specificity):

در نقطه مقابل این پارامتر، ممکن است در مواقعی دقت تشخیص کلاس منفی حائز اهمیت باشد. از متداول‌ترین پارامترها که معمولا در کنار حساسیت بررسی می‌شود، پارامتر خاصیت (Specificity)، است که به آن «نرخ پاسخ‌های منفی درست» (True Negative Rate) نیز می‌گویند. خاصیت به معنی نسبتی از موارد منفی است که آزمایش آن‌ها را به درستی به عنوان نمونه منفی تشخیص داده‌ است. این پارامتر به صورت زیر محاسبه می‌شود.

Specificity (TNR) = TN / (TN+FP)

MCC:

پارامتر دیگری است که برای ارزیابی کارایی الگوریتم‌های یادگیری ماشین از آن استفاده می‌شود. این پارامتر بیان‌گر کیفیت کلاس‌بندی برای یک مجموعه باینری می‌باشد. (MCC (Matthews correlation coefficient، سنجه‌ای است که بیان‌گر بستگی مابین مقادیر مشاهده شده از کلاس باینری و مقادیر پیش‌بینی شده از آن می‌باشد. مقادیر مورد انتظار برای این کمیت در بازه 1- و 1 متغیر می‌باشد. مقدار 1+، نشان دهنده پیش‌بینی دقیق و بدون خطای الگوریتم یادگیر از کلاس باینری می‌باشد. مقدار 0، نشان دهنده پیش‌بینی تصادفی الگوریتم یادگیر از کلاس باینری می‌باشد. مقدار 1-، نشان دهنده عدم تطابق کامل مابین موارد پیش‌بینی شده از کلاس باینری و موارد مشاهده شده از آن می‌باشد.

  8 بکارگیری مدل در محیط عملیاتی

ادامه مطلب به زودی…

 9 ارزیابی نهایی مدل در محیط واقعی

ادامه مطلب به زودی…

10 کسب بینش ناشی از تحلیل‌های داده‌محور

ادامه مطلب به زودی…

 ابزارهای یادگیری ماشین:

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

۱ ابزار های برچسب گذاری داده

۲ ابزارهای نسخه گذاری داده ها

۳ ابزار های مقیاس پذیری سخت افزار

۴ ابزارهای طراحی مدل

۵ ابزارهای یادگیری مدل

۶ ابزارهای ارزیابی مدل

۷ ابزارهای نسخه گذاری مدل

۸ ابزارهای بکارگیری مدل

۹ ابزارهای مانیتور کردن و پیش بینی

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

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

db8cd8a7d8afdaafdb8cd8b1db8c d985d8a7d8b4db8cd986 machine learning d8a8d987 d8b5d988d8b1d8aa daafd8a7d985 d8a8d987 daafd8a7d985 5

یکی دیگر از اشکالات بزرگ یادگیری عمیق نیازمندی آن به مجموعه داده های بسیار زیاد و برچسب خورده به صورت خاص است که همین دلیل موجب شده است که در موارد زیادی یادگیری عمیق از گزینه اصلی روی میز حذف شود.ضمن آنکه باید در نظر داشت که ما در دنیا با مسائلی روبرو هستیم که به راحتی توسط روشهای یادگیری سنتی قابل حل هستند و انجام این دسته کارها یا راه حل ها با تکنیک های یادگیری عمیق هدر دادن منابع می باشد چرا که به طور قطع یادگیری عمیق فرایند پچیده‌تری نسبت به یادگیری سنتی دارد و این موضوع موجب می شود که فرایند یادگیری در یادگیری عمیق بسیار طولانی تر از یادگیری به روش کلاسیک یا سنتی باشد. ولی نکته با اهمیت دیگری وجود دارد و آن این است که در یادگیری عمیق استخراج ویژگی ها به صورت خودکار انجام می شود و این موضوع را میتوان مهم ترین تفاوت یادگیری عمیق با یادگیری ماشین دانست. یکی از قابلیت های اصلی مدل های مبتنی بر یادگیری عمیق Automatic Feature Extraction یا مفهومی به نام Feature Learning هست. به صورت کلی در روش های مبتنی بر یادگیری عمیق دو گام Feature Extraction و Classification توسط مدل و لایه های پنهان شبکه عصبی انجام میشود

تفاوت یادگیری ماشین با یادگیری عمیق
تفاوت یادگیری ماشین با یادگیری عمیق

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

لایه های پردازش در یادگیری عمیق برای تشخیص چهره
لایه های پردازش در یادگیری عمیق برای تشخیص چهره

مدیریت سرور پشتیبانی و مشاوره – ثبت دامنه

نوشته های مشابه