داده‌ها را مانند کف دست خود بشناسید قبل از این که هر گام دیگری بردارید

شکل ۱. کف دست
شکل ۱. کف دست
منتشر‌شده در towardsdatascience به تاریخ ۱۹ ژوئن ۲۰۲۱
لینک منبع Know the Data Like the Palm of Your Hand Before Taking Any Further Steps

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

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

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

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

هر کاری که شما با علم داده انجام می‌دهید، اولین اولویت باید درک داده باشد. همیشه باید داده‌ها را مانند کف دست خود بدانید. در غیر این صورت، شکست اجتناب‌ناپذیر است.

به نظر می‌رسد که این الگوریتم‌ها برخی کارهای فانتزی و یا عملیات جادویی را انجام می‌دهند.

هیچ چیز در مورد الگوریتم یادگیری ماشینی جادو نیست. تنها کاری که آن‌ها می‌کنند این است که نشان دهند چه چیزی در داده‌های شما وجود دارد.

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

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

تولید ویژگی

الگوریتم‌های یادگیری ماشینی دارای ویژگی‌هایی هستند (به عنوان مثال ستون‌ها) که از داده‌ها استخراج و از آن‌ها برای یادگیری داده‌ها استفاده می‌شود. منظور من از یادگیری شامل رابطه بین ویژگی‌ها و هدف (در مورد یادگیری نظارت شده)، ساختار اساسی داده‌ها، همبستگی بین ویژگی‌ها و غیره است.

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

اگر این مدل برند نداشته باشد، احتمالا قیمت‌های مشابهی را برای پورشه و تویوتا پیش‌بینی می‌کند. البته سایر مقادیر ویژگی (به عنوان مثال مسافت پیموده شده و سال) باید مشابه باشد.

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

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

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

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

«فهمین داده‌هایتان» همچنین می‌تواند به شما کمک کند تا یک الگوریتم عاقلانه انتخاب کنید. الگوریتم‌های یادگیری ماشینی زیادی هم برای وظایف نظارت شده و هم بدون نظارت وجود دارد. همه آن‌ها مزایا و معایب خود را دارند.

نحوه عملکرد یک الگوریتم نیز به ویژگی‌های داده‌های شما بستگی دارد. شما نمی‌توانید تنها یک الگوریتم را برای هر داده‌ای تطبیق دهید.

در نظر داشته باشید که بر روی یک مساله خوشه‌بندی کار می‌کنید. الگوریتم خوشه‌بندیK- means یکی از الگوریتم‌های محبوب در این حوزه است و در بسیاری از موارد به خوبی عمل می‌کند. با این حال، اگر نقاط داده به روشی گروه‌بندی شوند که نتواند با خوشه‌های دایره‌ای ثبت شود، یک مدل مخلوط gaussian می‌تواند گزینه بهتری باشد.

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

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

ارزیابی بهتر

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

«فهمیدن داده‌های شما» بینش بسیار ارزشمندی در مورد اینکه در هر تکرار چه چیزی را تغییر دهید، فراهم می‌کند. شما ایده‌ای در مورد این دارید که چگونه مدل می‌تواند به یک تغییر خاص واکنش نشان دهد.

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

نتیجه‌گیری

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

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

متشکرم که مطالعه کردید.

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