آمادهسازی داده ها برای پروژه های یادگیری ماشین و دادهکاوی — به بیان ساده
«آماده سازی داده ها» (Data Preparation) برای تیمهای «تحلیل داده» (Data Analytics) و «یادگیری ماشین» (Machine Learning | ML) منجر به شتابدهی به پروژههای «علم داده» (Data Science) و یادگیری ماشین میشود. سرعت بخشیدن به این پروژهها موجب تسریع فرآیند تبدیل داده به بینش و حلق ارزش در کسبوکار میشود. در این مطلب، شش گام مهم برای آماده سازی دادهها به منظور انجام تحلیلهای داده و یادگیری ماشین ارائه شده است.
سازمانها امروزه به دنبال راهکارهایی برای آمادهسازی دادهها به صورت سریع و صحیحتر برای حل چالشهای دادهای خود و توانمندتر ساختن مدلهای یادگیری ماشین هستند. به دلیل آنکه بخش عمدهای از تحلیلهایی که امروزه انجام میشوند بستگی به زمینه محتوایی دادهها دارند، کار تحلیل توسط کسانی به بهترین شکل انجام میشود که از نزدیک با مفاهیمی که دادهها در بر میگیرند آشنا هستند و در واقع دانش دامنه خوبی در زمینه پروژه علم داده یا یادگیری ماشین در حال انجام دارند. کارشناسان دامنه افرادی هستند که میتوانند نظریهها و دانش کسبوکار را روی دادهها اعمال کنند.
متاسفانه، ذینفعان کسبوکاری پروژههای یادگیری معمولا دارای مهارتهای حوزه علم داده نیستند، و بنابراین نیاز به پلی میان کارشناسان تحلیل داده و «دانشمندان داده» (Data Scientist) با ذینفعان کسبوکار است تا فرآیند خلق ارزش از دادهها تسریع شود. «آماده سازی داده» (Data Preparation | DP) از جمله مراحل قابل انجام طی فرآیند دادهکاوی است که برای کمک به دانشمندان داده و کارشناسان یادگیری ماشین به منظور آمادهسازی سریع دادههای کسبوکار برای گسترش ارزش دادهها در سازمان طی اجرای پروژه است.
گردآوری و فراخوانی دادهها، مبنای مدلهای قابل اعتماد یادگیری ماشین
برای ساخت یک مدل یادگیری ماشین موفق، ضروری است که سازمان دارای توانایی «آموزش دادن» (Training)، «آزمون» (Test) و «اعتبارسنجی» (Validate) آن پیش از استقرار مدل باشد. آمادهسازی دادهها به منظور ایجاد دادههایی پاکسازی شده و قابل تفسیر برای استفاده در مدل یادگیری ماشین انجام میشود. تجربیات دانشمندان داده و کارشناسان یادگیری ماشین در طول تاریخ حاکی از آن بوده که پیش پردازش دادهها به شیوه مناسب معمولا نیاز به زمان بیشتری نسبت به سایر بخشهای فرآیند «دادهکاوی» (Data Mining) یا یادگیری ماشین دارد.
کاهش زمان لازم برای آمادهسازی دادهها در گذر زمان به موضوعی مهم مبدل شده، زیرا کاهش زمان آمادهسازی موجب میشود زمان بیشتری برای مرحله آزمون، تنظیمات و بهینهسازی مدل باقی بماند و این امر منجر به خلق ارزش بزرگتری میشود. آمادهسازی دادهها برای تیمهای تحلیل داده و یادگیری ماشین میتواند فرآیند تبدیل داده به بینش را تسریع کند. در همین راستا شش گام مهم در ادامه معرفی میشوند.
گام ۱: گردآوری دادهها
«گردآوری دادهها» یک گام بسیار اساسی محسوب میشود که با چالشهای متداولی که در ادامه بیان شدهاند مواجه است.
- شناسایی خودکار ویژگیهای مرتبط با موضوع پروژه در دادههای ذخیره شده در یک فایل CSV.
- تجزیه ساختارهای داده به شدت تو در تو مانند آنهایی که از XML یا JSON هستند به یک ساختار جدول مانند به منظور بهبود و تسریع امکان کاوش و تشخیص الگوی در آنها.
- جستوجو و شناسایی دادههای مرتبط از مخازن خارجی
مساله مهم دیگر در بحث گردآوری دادهها، این است که گاهی برای انجام تحلیل نیاز به یک مجموعه داده یکپارچه و برای مثال تراکنشهای خرید یک فروشگاه برای یک سال است. در حالیکه این دادهها به صورت روزانه موجود هستند. بنابراین باید در این وهله اطمینان حاصل کرد که دادهها قابل یکپارچهسازی هستند. همچنین، کارشناس ML یا دانشمند داده باید دارای برنامهای برای غلبه بر مسائل مرتبط با «نمونهگیری» (Sampling) و «سوگیری» (Bias) در مجموعه داده باشد.
گام ۲: اکتشاف و تجزیه و تحلیل دادهها
پس از آنکه دادهها گردآوری شدند، زمان آن فرا میرسد که دیگر شرایط مرتبط با مجموعه داده شامل جستوجو به دنبال «گرایشها» (Trends)، «دورافتادگیها» (Outliers)، استثناها و اطلاعات غلط، دادههای ناسازگار، «مقادیر ناموجود» (Missing Value) یا دارای «چولگی» (Skewed) مورد بررسی قرار بگیرد. این مساله بدین دلیل حائز اهمیت است که دادههای منبع، مبنای اطلاعاتی کلیه یافتههای مدل را تشکیل میدهند، و از همین رو، صحت و دقت آنها نقش مستقیم و به سزایی در صحت و دقت خروجی مدل نهایی دارد.
بنابراین حائز اهمیت است که بتوان اطمینان حاصل کرد دادهها دارای سوگیریها و نواقص و نویزهایی که از چشم به دور مانده باشند نیستند. برای مثال، اگر کارشناس به دنبال رفتار مشتریان بر اساس ملیت آنها است، اما دادهها را از یک نمونه بسیار محدود شده دریافت میکند، امکان دارد مناطق جغرافیایی مهمی را از دست بدهد. در این گام باید کل دادهها و نه فقط نمونه را از جهت موارد باین شده مورد بررسی قرار داد.
گام ۳: قالببندی دادههای برای سازگار کردن آنها
گام بعدی در آمادهسازی مناسب دادهها حصول اطمینان از این امر است که دادهها به شکلی قالببندی شدهاند که بهترین «برازش» (Fitting) را برای مدل یادگیری ماشین دارند. اگر دادهها از منابع داده مختلف تجمیع شوند، یا اگر مجموعه داده به طور دستی توسط بیش از یک ذینفع به روز رسانی شود این احتمال وجود دارد که «ناهنجاریهایی» (Anomalies) در شیوهای که دادهها قالببندی شدهاند کشف شود (برای مثال USD5.50 به در مقابل $۵٫۵۰).
به همین ترتیب، استاندارد کردن مقادیر در یک ستون موضوع مهمی است. برای مثال، در مجموعه دادهای که مربوط به مشتریان شعب مختلف یک فروشگاه است، اگر نام ایالتها به اشتباه نوشته شده باشد و یا به جای نام کامل آنها از علائم اختصاری استفاده شده باشد مشکل عدم سازگاری دادهها ایجاد میشود. در واقع، طی یکپارچهسازی دادهها، باید ستون مربوط به نام ایالت برای همه شعب به یک شکل و قالب تکمیل شده باشد. قالببندی دادهها در مجموع موجب میشود کل دادهها از یک فرمت خاص پیروی کنند.
گام ۴: بهبود کیفیت داده
در این گام، با تدوین یک استراتژی برای سر و کار داشتن با دادههای غلط، مقادیر ناموجود، «مقادیر حدی» (Extreme Values) و دورافتادگیهای موجود در دادهها کار آغاز میشود. ابزارهای آمادهسازی داده «سلفسرویس» میتوانند در صورت داشتن امکانات هوشمند توکار، میتوانند به انتخاب «ویژگیهای» (Features) مناسب تحلیل و ترکیب هوشمندانه آنها کمک کنند. از سوی دیگر، باید توانایی تطبیق دادههای یک نوع با یکدیگر و ترکیب آنها را داشته باشند.
برای مثال، اگر ستونهای FIRST NAME و LAST NAME در مجموعه داده برخی شعب یک فروشگاه وجود داشته باشد و در مجموعه دادههای دیگر شعب ستونی با نام CUSTOMER موجود باشد که در آن نام و نام خانوادگی در یک ستون به صورت ترکیبی قرار دارند، الگوریتمهای هوشمند باید قادر به تعیین راهکاری برای تطبیق این موارد با یکدیگر و یکپارچه کردن مجموعه دادهها برای ارائه یک دید یکتا از دادهها باشند.
برای متغیرهای پیوسته، باید اطمینان حاصل کرد که از هیستوگرام برای بررسی توزیع دادهها و کاهش چولگی استفاده میشود. موضوع مهم دیگری که در این گام باید به آن پرداخت بحث رکوردهای خارج از یک طیف مقدار پذیرفته شده است. این مقادیر که «دورافتادگی» (Outlier) نیز نامیده میشوند، امکان دارد یک خطای ورودی باشند و یا یک مقدار واقعی و معنادار که میتواند اطلاعاتی پیرامون رویدادهای آینده ارائه کند. در این وهله باید مواظب حذف تعداد زیاد یا همه رکوردهای دارای مقادیر ناموجود بود، زیرا این کار ممکن است منجر به ایجاد چولگی در دادهها شود و در نتیجه، دادهها دیگر نوتوانند موقعیت جهان واقعی را منعکس کنند.
گام ۵: مهندسی ویژگیها
این گام، شامل هنر و علم تبدیل دادههای خام به ویژگیهایی است که به شکل بهتری الگوی موجود در دادهها را تبیین میکنند. برای مثال، دادهها قابل تجزبه به بخشهای مختلف برای ثبت روابط خاص هستند؛ مانند تحلیل کارایی خرید به صورت روزانه در هفته و نه به صورت ماهانه یا هفتگی و نه فقط به صورت ماهانه یا سالانه.
گام ۶: تقسیم دادهها به مجموعههای آموزش و آزمون
گام نهایی تقسیمبندی دادهها به دو مجموعه است. یکی برای «آموزش» (Train) دادن الگوریتم و دیگری برای فرآیند «آزمون» (Test). باید اطمینان حاصل کرد که زیرمجموعهای فاقد همپوشانی از دادهها برای آزمون و «ارزیابی» (Evaluation) مورد استفاده قرار گرفته است تا از انجام آزمون مناسب اطمینان حاصل شود.
شتابدهی پروژههای یادگیری ماشین با پیشپردازش دادهها
آمادهسازی دادهها راهکاری مناسب برای کمک به رهبران کسبوکارها و تحلیلگران داده در راستای انجام تحلیلها، عملیات و اجرای ملزومات قانونی است. آمادهسازی دادهها به شیوه سلفسرویس که در «وبسرویس» (Amazon Web Services | AWS) اجرا میشود و Azure با قابلیتهای افزوده کار آن را یک مرحله نیز جلوتر میبرد نیز به تسریع فرایند کاوش کمک میکنند. در نتیجه، ذینفعان پروژههای یادگیری ماشین که از سمت کسبوکار هستند و نزدیکی و شناخت بیشتری از دادهها و زمینه کسبوکاری آنها دارند، میتوانند مجموعه دادهها را به طور سریع و صحیح با بهرهگیری از ابزارها و الگوریتمهای هوشمند آماده تحلیل کنند. آنها میتوانند با برنامههای کاربردی کاملا گرافیکی به شکلدهی، کاوش، یکپارچهسازی و انتشار دادهها با کلیک کردن و بدون کد زدن در عین امنیت و حاکمیت کامل بپردازند. راهکارهایی مانند DP چالشهای زیادی را حل و جریانهای کاری علم داده و یادگیری ماشین را بهبود میبخشند.
اگر نوشته بالا برای شما مفید بوده، آموزشهای زیر نیز به شما پیشنهاد میشود:
- مجموعه آموزشهای آمار، احتمالات و دادهکاوی
- مجموعه آموزشهای یادگیری ماشین و بازشناسی الگو
- مجموعه آموزشهای شبکههای عصبی مصنوعی
- مجموعه آموزشهای هوش محاسباتی
- مجموعه آموزشهای برنامه نویسی پایتون (Python)
- آموزش برنامهنویسی R و نرمافزار R Studio
- مجموعه آموزشهای برنامه نویسی متلب (MATLAB)
مجموعه: داده کاوی, یادگیری ماشینی برچسب ها: data preprocessing, آماده سازی داده, پیش پردازش, پیش پردازش داده, علم داده





