اصول علم داده

در دنیای دادهها، دوران دادههای کلان (Big Data) شروع شد زمانی که سازمانها با پتابایتها و اگزابایتها داده مواجه شدند. تا سال 2010، ذخیرهسازی این دادهها برای صنایع دشوار بود، اما اکنون با وجود چارچوبهای محبوبی مانند Hadoop که مشکل ذخیرهسازی را حل کردهاند، تمرکز بیشتر بر پردازش دادهها است. در اینجا علم داده نقش بزرگی ایفا میکند. امروزه رشد علم داده به شیوههای مختلف افزایش یافته است و باید برای آینده آماده شویم با یادگیری آنچه که علم داده است و چگونه میتوانیم به آن ارزش افزوده بدهیم.
علم داده چیست؟
حالا اولین سوال این است: «علم داده چیست؟» علم داده برای افراد مختلف معانی متفاوتی دارد، اما در اصل، علم داده استفاده از دادهها برای پاسخ به سوالات است. این تعریف نسبتاً عمومی است و به همین دلیل باید گفت که علم داده یک حوزه نسبتاً گسترده است!
علم داده، علم تحلیل دادههای خام با استفاده از آمار و تکنیکهای یادگیری ماشین است بهمنظور رسیدن به نتایج و استنباطهایی از آن اطلاعات.
بنابراین به طور خلاصه میتوان گفت که علم داده شامل موارد زیر است:
- آمار، علوم کامپیوتر، ریاضیات
- پاکسازی و فرمتدهی دادهها
- تجسم دادهها
ارکان اصلی علم داده
معمولاً دانشمندان داده از پیشینههای آموزشی و تجربی مختلفی میآیند، اما بیشتر آنها باید در چهار حوزه اصلی مسلط باشند یا در حالت ایدهآل، در این چهار حوزه متخصص باشند.
ارکان علم داده
- دانش حوزه: بسیاری از افراد فکر میکنند که دانش حوزه در علم داده اهمیت ندارد، اما این اشتباه است. هدف اصلی علم داده استخراج بینشهای مفید از دادهها است تا این دادهها برای کسبوکار شرکت سودآور باشند. اگر شما از جنبههای تجاری شرکت آگاه نباشید، اینکه مدل کسبوکار شرکت چگونه کار میکند و چگونه میتوانید آن را بهتر کنید، برای این شرکت فایدهای نخواهید داشت.
شما باید بدانید که چگونه سوالات درست را از افراد درست بپرسید تا بتوانید اطلاعات مناسب برای دریافت دادهها و بینشهای مورد نیاز خود را بدست آورید. ابزارهای تجسم داده مانند Tableau در انتهای کسبوکار به شما کمک میکنند تا نتایج یا بینشهای خود را به صورت گرافها یا نمودارهای دایرهای در قالبی غیر فنی نمایش دهید تا افرادی که در کسبوکار مشغول به کار هستند، بتوانند آن را درک کنند.
- مهارتهای ریاضی:
- جبر خطی، حساب دیفرانسیل و انتگرال چند متغیره و تکنیکهای بهینهسازی: این سه مورد بسیار مهم هستند زیرا به ما کمک میکنند تا الگوریتمهای مختلف یادگیری ماشین که نقش مهمی در علم داده دارند را درک کنیم.
- آمار و احتمال: درک آمار اهمیت زیادی دارد چون بخشی از تحلیل دادهها است. احتمال نیز جزو پیشنیازهای درک آمار است و برای تسلط به یادگیری ماشین ضروری است.
- علوم کامپیوتر:
- دانش برنامهنویسی: برای علم داده باید دانش خوبی در زمینه مفاهیم برنامهنویسی مانند ساختارهای داده و الگوریتمها داشته باشید. زبانهای برنامهنویسی رایج شامل Python، R، Java و Scala هستند. C++ نیز در برخی موارد که عملکرد اهمیت دارد، مفید است.
- پایگاه دادههای رابطهای: باید با پایگاههای دادهای مانند SQL یا Oracle آشنا باشید تا بتوانید دادههای لازم را در صورت نیاز از آنها استخراج کنید.
- پایگاه دادههای غیررابطهای: انواع مختلفی از پایگاه دادههای غیررابطهای وجود دارد، اما رایجترین انواع آنها Cassandra، HBase، MongoDB، CouchDB، Redis و Dynamo هستند.
- یادگیری ماشین: یادگیری ماشین یکی از اجزای حیاتی علم داده است و از جمله داغترین موضوعات تحقیقاتی است که هر ساله پیشرفتهای جدیدی در آن صورت میگیرد. شما حداقل باید با الگوریتمهای پایهای یادگیری نظارتشده و یادگیری بدون نظارت آشنا باشید. برای پیادهسازی این الگوریتمها در Python و R کتابخانههای متعددی وجود دارد.
- محاسبات توزیعشده: این یکی از مهارتهای بسیار مهم برای پردازش حجم زیادی از دادهها است چون نمیتوان دادهها را تنها در یک سیستم پردازش کرد. ابزارهای رایج برای این کار شامل Apache Hadoop و Spark هستند. دو بخش اصلی این ابزارها شامل HDFS (سیستم فایل توزیعشده Hadoop) برای جمعآوری دادهها در یک سیستم فایل توزیعشده و map-reduce برای دستکاری دادهها است. شما میتوانید map-reduce را در برنامهها با زبانهای Java یا Python بنویسید. ابزارهای دیگری مانند PIG و HIVE نیز در این زمینه وجود دارند.
- مهارتهای ارتباطی: این مهارتها شامل ارتباط نوشتاری و گفتاری میشود. در یک پروژه علم داده، پس از رسیدن به نتیجهگیریها از تحلیلها، باید نتایج پروژه به دیگران منتقل شود. این ممکن است به صورت گزارشی باشد که به رئیس یا تیم خود ارسال میکنید، گاهی به صورت پست وبلاگ و یا ارائهای به یک گروه از همکاران. به هر حال، پروژههای علم داده همیشه شامل نوعی ارتباط از یافتههای پروژه هستند. بنابراین، داشتن مهارتهای ارتباطی برای تبدیل شدن به یک دانشمند داده ضروری است.
چه کسی یک دانشمند داده است؟
ما در مورد علم داده و ارکان کلیدی آن صحبت کردیم، اما نکته دیگری که باید بررسی کنیم این است که دقیقاً یک دانشمند داده کیست؟ گزارش ویژهای از The Economist میگوید که یک دانشمند داده به عنوان شخصی تعریف میشود که:
“مهارتهای یک برنامهنویس نرمافزار، یک آمارشناس و یک داستانگوی/هنرمند را برای استخراج قطعات طلا که در زیر کوههای داده مخفی شدهاند، ترکیب میکند.”
اما اکنون این سوال مطرح میشود که یک دانشمند داده چه مهارتهایی را در خود دارد؟ برای پاسخ به این سوال، بیایید به دیاگرام ون معروف درو کانوی در مورد علم داده اشاره کنیم که در آن علم داده تقاطع سه بخش است: تخصص اساسی، مهارتهای هکینگ، و دانش ریاضی و آمار.
بیایید کمی توضیح دهیم که منظورمان از این دیاگرام ون چیست. ما میدانیم که از علم داده برای پاسخ به سوالات استفاده میکنیم؛ بنابراین، اولین قدم این است که باید تجربه کافی در زمینهای که میخواهیم سوال بپرسیم داشته باشیم تا بتوانیم سوالات را به درستی مطرح کنیم و درک کنیم که چه نوع دادههایی برای پاسخ به آن سوالات مرتبط هستند. زمانی که سوال و دادههای مرتبط را داریم، متوجه میشویم که علم داده اغلب به پاکسازی و قالببندی دادهها نیاز دارد و این معمولاً نیازمند مهارتهای برنامهنویسی است. در نهایت، زمانی که دادهها را داریم، باید آنها را تجزیه و تحلیل کنیم که این کار معمولاً به دانش ریاضی و آمار نیاز دارد.
نقشها و مسئولیتهای یک دانشمند داده:
- مدیریت: دانشمند داده نقش مدیریتی کمی دارد که در آن از ایجاد پایهای برای توانمندیهای آیندهنگر و فنی در زمینه داده و تحلیل برای کمک به پروژههای مختلف تحلیل دادههای برنامهریزی شده و جاری حمایت میکند.
- تحلیل: دانشمند داده نقش علمی دارد که در آن مدلهای آماری پیشرفته را برای حل مسائل پیچیده تجاری برنامهریزی، پیادهسازی و ارزیابی میکند. این دانشمند مدلهای اقتصادی و آماری برای مسائل مختلف از جمله پیشبینیها، طبقهبندی، خوشهبندی، تحلیل الگو، نمونهگیری، شبیهسازی و غیره توسعه میدهد.
- استراتژی/طراحی: دانشمند داده نقش مهمی در توسعه استراتژیهای نوآورانه برای درک روندهای مصرفکنندگان و مدیریت کسبوکار و همچنین روشهای حل مسائل دشوار تجاری ایفا میکند. به عنوان مثال، بهینهسازی تحویل محصولات و بهبود سودآوری.
- همکاری: نقش دانشمند داده یک نقش انفرادی نیست و در این موقعیت، او با دانشمندان داده ارشد همکاری میکند تا مشکلات و یافتهها را به ذینفعان مربوطه منتقل کند تا عملکرد کسبوکار و فرآیند تصمیمگیری را بهبود بخشد.
- دانش: دانشمند داده همچنین رهبری میکند تا تکنولوژیها و ابزارهای مختلف را برای ایجاد بینشهای نوآورانه مبتنی بر داده برای کسبوکار به کار گیرد. در این شرایط، دانشمند داده ابتکار عمل را به کار میبرد تا روشهای جدید و بهبود یافته علم داده را برای کسبوکار ارزیابی و استفاده کند و آنها را به مدیریت ارشد برای تایید ارائه دهد.
- وظایف دیگر: یک دانشمند داده همچنین وظایف و کارهای مرتبط را طبق دستور رئیس دانشمندان داده، مدیر ارشد داده، رئیس بخش داده، یا کارفرما انجام میدهد.
تفاوت بین دانشمند داده، تحلیلگر داده و مهندس داده:
دانشمند داده، تحلیلگر داده و مهندس داده سه شغل رایج در علم داده هستند. حالا بیایید با مقایسه این شغلها، درک کنیم که هر کدام چه وظایفی دارند.
شغل | دانشمند داده | تحلیلگر داده | مهندس داده |
تمرکز | تمرکز اصلی بر روی نمایش آیندهنگرانه دادهها است. | تمرکز اصلی تحلیلگر داده بر روی بهینهسازی سناریوها است، مثلاً چگونگی افزایش رشد محصول یک شرکت. | تمرکز مهندس داده بر روی تکنیکهای بهینهسازی و ساخت دادهها به شیوههای سنتی است. هدف مهندس داده پیشرفت مداوم در مصرف دادهها است. |
وظایف | ارائه یادگیری نظارتشده و بدون نظارت بر دادهها، مانند رگرسیون و طبقهبندی دادهها، شبکههای عصبی و غیره. | تشکیل و پاکسازی دادههای خام، تفسیر و بصریسازی دادهها برای انجام تجزیه و تحلیل و انجام خلاصهسازی فنی دادهها. | معمولاً مهندسان داده در بخش پشتصحنه فعالیت میکنند. استفاده از الگوریتمهای یادگیری ماشین بهینهشده برای ذخیره دادهها و آمادهسازی دقیقترین دادهها. |
مهارتهای مورد نیاز | Python, R, SQL, Pig, SAS, Apache Hadoop, Java, Perl, Spark. | Python, R, SQL, SAS. | MapReduce, Hive, Pig, Hadoop و تکنیکهای مشابه. |
فرایندهای علم داده:
- تعیین هدف تحقیق
- دریافت داده
- آمادهسازی داده
- کاوش داده
- مدلسازی داده
- ارائه و خودکارسازی
-
تعیین هدف تحقیق:
علم داده معمولاً در زمینه یک سازمان به کار میرود. وقتی که کسبوکار از شما میخواهد یک پروژه علم داده انجام دهید، ابتدا باید یک منشور پروژه تهیه کنید. این منشور اطلاعاتی مانند موضوع تحقیق، نحوه سودآوری شرکت از آن، دادهها و منابع مورد نیاز، زمانبندی و خروجیها را شامل میشود.
-
دریافت داده:
دومین گام، جمعآوری دادهها است. در منشور پروژه بیان کردهاید که چه دادههایی نیاز دارید و از کجا میتوانید آنها را پیدا کنید. در این مرحله شما اطمینان حاصل میکنید که میتوانید از دادهها در برنامه خود استفاده کنید، که این یعنی بررسی وجود، کیفیت و دسترسی به دادهها. دادهها همچنین میتوانند توسط شرکتهای ثالث تأمین شوند و اشکال مختلفی از جمله صفحات اکسل یا انواع مختلف پایگاههای داده داشته باشند.
-
آمادهسازی داده:
جمعآوری داده یک فرآیند مستعد خطاست؛ در این مرحله، کیفیت دادهها را بهبود میبخشید و آنها را برای استفاده در مراحل بعدی آماده میکنید. این مرحله شامل سه زیرمرحله است:
- پاکسازی دادهها: حذف مقادیر اشتباه از منابع داده و تناقضات میان منابع داده.
- یکپارچهسازی دادهها: غنیسازی منابع داده با ترکیب اطلاعات از چندین منبع داده.
- تبدیل دادهها: اطمینان از اینکه دادهها به فرمت مناسب برای استفاده در مدلها تبدیل شدهاند.
-
کاوش داده:
کاوش داده مربوط به ساخت درک عمیقتری از دادههای شما است. شما سعی میکنید بفهمید که متغیرها چگونه با یکدیگر تعامل دارند، توزیع دادهها چگونه است و آیا مواردی از دادههای برونمرزی (outliers) وجود دارند یا خیر. برای این کار، عمدتاً از آمار توصیفی، تکنیکهای بصری و مدلسازی ساده استفاده میکنید. این مرحله اغلب با نام EDA (تحلیل داده اکتشافی) شناخته میشود.
-
مدلسازی داده یا ساخت مدل:
در این مرحله شما از مدلها، دانش دامنه و بینشهایی که از دادهها در مراحل قبلی به دست آوردهاید برای پاسخ به سوال تحقیق استفاده میکنید. شما تکنیکهایی از حوزههای مختلف مانند آمار، یادگیری ماشین، تحقیق در عملیات و غیره انتخاب میکنید. ساخت یک مدل فرآیند تکراری است که شامل انتخاب متغیرهای مدل، اجرای مدل و بررسی نتایج مدل است.
-
ارائه و خودکارسازی:
در نهایت، شما نتایج را به کسبوکار ارائه میدهید. این نتایج میتوانند اشکال مختلفی داشته باشند، از جمله ارائهها تا گزارشهای تحقیقاتی. گاهی اوقات شما باید اجرای فرآیند را خودکار کنید، زیرا کسبوکار ممکن است بخواهد از بینشهایی که در پروژههای دیگر به دست آمده استفاده کند یا فرآیند عملیاتی را برای استفاده از نتایج مدل شما فعال کند.
دانش و مهارتها برای حرفهایهای علم داده:
- استدلال آماری / ریاضی: دانش علم داده نیازمند استدلالهای آماری و ریاضی برای تحلیل دادهها است. برای مثال، تجزیه و تحلیل دادهها نیاز به آمار توصیفی و نظریه احتمال دارد.
- زبانهای برنامهنویسی (R/Python): Python و R از جمله زبانهای برنامهنویسی پرکاربرد در علم داده هستند. دلیل اصلی این موضوع، تعداد زیاد بستههای موجود برای محاسبات عددی و علمی است.
- استخراج داده، تبدیل و بارگذاری (ETL): فرض کنید منابع داده مختلفی مانند MySQL DB، MongoDB، و Google Analytics دارید. شما باید دادهها را از این منابع استخراج کرده، سپس آنها را برای ذخیره در قالب یا ساختار مناسب برای جستجو و تحلیل تبدیل کنید و در نهایت دادهها را در انبار داده (Data Warehouse) بارگذاری کنید.
- پردازش و کاوش دادهها: دادههای پیچیده و به هم ریخته را تمیز کرده و برای دسترسی و تحلیل آسان یکپارچه کنید که این فرآیند به آن Data Wrangling میگویند. همچنین کاوش داده اکتشافی (EDA) اولین قدم در فرآیند تحلیل دادهها است.
- یادگیری ماشین: یادگیری ماشین فرایند هوشمند کردن ماشینها است، به گونهای که آنها قادر به تفکر، تحلیل و تصمیمگیری شوند. سازمانها میتوانند با ساخت مدلهای دقیق یادگیری ماشین، فرصتهای سودآور را شناسایی یا خطرات ناشناخته را اجتناب کنند.
- چارچوبهای پردازش دادههای بزرگ (Big Data): امروزه بیشتر سازمانها از تحلیل دادههای بزرگ برای کشف بینشهای تجاری پنهان استفاده میکنند. بنابراین، دانش کار با چارچوبهایی مانند Hadoop و Spark برای پردازش دادههای بزرگ یک مهارت ضروری برای دانشمندان داده است.
جنبههای داده:
- دادههای ساختاری (Structured Data)
- دادههای نیمهساختاری (Semi-structured Data)
- دادههای بدون ساختار (Unstructured Data)
- زبان طبیعی
- دادههای مبتنی بر گراف
- صوت، تصویر و ویدیو
- دادههای جریانی
1. دادههای ساختاری (Structured Data):
- دادههایی که میتوان آنها را در پایگاهداده SQL در جدولهایی با ردیفها و ستونها ذخیره کرد.
- این دادهها دارای کلیدهای رابطهای هستند و به راحتی میتوان آنها را به فیلدهای از پیش طراحی شده تبدیل کرد.
- این نوع دادهها در حال حاضر بیشترین پردازش را در توسعه نرمافزار دارند و سادهترین روش برای مدیریت اطلاعات هستند.
- اما دادههای ساختاری تنها حدود 5 تا 10 درصد از تمام دادههای موجود را تشکیل میدهند.
2. دادههای نیمهساختاری (Semi-structured Data):
- این دادهها در پایگاهدادههای رابطهای قرار نمیگیرند، اما دارای ویژگیهای سازمانی هستند که آنها را برای تحلیل آسانتر میکند.
- با انجام فرآیندهایی میتوان این دادهها را در پایگاهدادههای رابطهای ذخیره کرد (هرچند برای برخی انواع دادههای نیمهساختاری این کار بسیار دشوار است).
- دادههای نیمهساختاری فقط بخش کمی از دادهها را تشکیل میدهند (5 تا 10 درصد).
- مثالهای این دادهها شامل JSON، CSV و XML هستند.
3. دادههای بدون ساختار (Unstructured Data):
- دادههای بدون ساختار حدود 80 درصد از دادهها را تشکیل میدهند.
- این دادهها معمولاً شامل متن و محتوای چندرسانهای هستند.
- مثالها شامل پیامهای ایمیل، اسناد پردازش کلمات، ویدیوها، عکسها، فایلهای صوتی، ارائهها، صفحات وب و بسیاری از اسناد تجاری دیگر است.
- دادههای بدون ساختار در همهجا هستند و در واقع بیشتر افراد و سازمانها زندگی خود را حول دادههای بدون ساختار پیش میبرند.
- دادههای بدون ساختار میتوانند یا از نوع دادههای تولید شده توسط ماشین یا دادههای تولید شده توسط انسان باشند.
انواع دادههای بدون ساختار:
-
دادههای تولید شده توسط ماشین:
-
- تصاویر ماهوارهای: شامل دادههای جوی یا دادههایی است که دولت از تصاویر ماهوارهای نظارتی خود جمعآوری میکند. به عنوان مثال، Google Earth.
- عکسها و ویدیوها: شامل ویدیوهای امنیتی، نظارتی و ترافیکی.
- دادههای راداری یا سوناری: شامل دادههای وسیله نقلیه، هواشناسی، و اقیانوسشناسی زلزلهشناسی.
-
دادههای تولید شده توسط انسان:
-
- دادههای شبکههای اجتماعی: دادههای تولید شده از پلتفرمهای شبکه اجتماعی مانند YouTube، Facebook، Twitter، LinkedIn و Flickr.
- دادههای موبایلی: شامل دادههایی مانند پیامکها و اطلاعات موقعیت.
- محتوای وبسایت: دادههایی که از سایتهایی با محتوای بدون ساختار مانند YouTube، Flickr یا Instagram به دست میآید.
انواع مختلف دادههای بدون ساختار:
i) زبان طبیعی (Natural Language):
- دادههای زبان طبیعی نوع خاصی از دادههای بدون ساختار هستند که پردازش آنها دشوار است، زیرا نیاز به دانش تخصصی در علم داده و زبانشناسی دارند.
- جامعه پردازش زبان طبیعی در شناسایی موجودیتها، شناسایی موضوع، خلاصهسازی و تحلیل احساسات موفقیتهایی داشته است، اما مدلهایی که در یک دامنه آموزش دیدهاند، اغلب در دامنههای دیگر عملکرد خوبی ندارند.
ii) دادههای مبتنی بر گراف یا شبکه (Graph-based or Network Data):
- در نظریه گراف، گراف یک ساختار ریاضی برای مدلسازی روابط دوتایی بین اشیاء است.
- دادههای گرافی یا شبکهای به طور خلاصه دادههایی هستند که بر روی رابطه یا مجاورت اشیاء تمرکز دارند.
- ساختارهای گرافی از گرهها، لبهها و ویژگیها برای نمایش و ذخیره دادههای گرافی استفاده میکنند. دادههای مبتنی بر گراف، روشی طبیعی برای نمایندگی شبکههای اجتماعی هستند.
iii) صوت، تصویر و ویدیو (Audio, Image & Video):
- دادههای صوتی، تصویری و ویدیویی نوعی داده هستند که چالشهای خاصی را برای دانشمندان داده به وجود میآورد.
- به عنوان مثال، MLBAM (مدیریت پیشرفته بیسبال لیگ بزرگ) اعلام کرده است که از سال 2014، میزان ضبط ویدیو را برای تجزیه و تحلیل در زمان واقعی به حدود 7 ترابایت در هر بازی افزایش خواهند داد.
iv) دادههای جریانی (Streaming Data):
- دادههای جریانی، دادههایی هستند که به طور مداوم توسط هزاران منبع داده تولید میشوند و معمولاً به طور همزمان و در اندازههای کوچک (به اندازه کیلوبایت) ارسال میشوند.
- مثالها شامل لاگهای تولید شده توسط مشتریان که از برنامههای موبایل یا وب استفاده میکنند، فعالیتهای بازی آنلاین، روندهای داغ در توییتر، رویدادهای زنده ورزشی یا موسیقی و بازار بورس است.
چرا به علم داده نیاز داریم؟
یکی از دلایل رشد سریع علم داده در سالهای اخیر، حجم عظیم دادههای موجود است که هماکنون در حال جمعآوری و تولید هستند. نه تنها مقادیر زیادی داده در مورد جنبههای مختلف دنیا و زندگی ما جمعآوری میشود، بلکه همزمان با آن، شاهد افزایش استفاده از محاسبات ارزان قیمت نیز هستیم. این امر موجب ایجاد یک طوفان مناسب شده است که در آن، ما دادههای غنی داریم و ابزارهایی برای تجزیه و تحلیل آنها در دسترس داریم.
پیشرفت در ظرفیت حافظه کامپیوتری، نرمافزارهای پیشرفتهتر، پردازندههای توانمندتر و اکنون، تعداد زیادی دانشمند داده با مهارتهایی که قادر به استفاده از این ابزارها هستند، این امکان را فراهم کردهاند که بتوانیم سوالات پیچیده را با استفاده از دادهها حل کنیم!
دادههای کلان چیست؟
دادههای کلان به حجم زیادی از دادهها اطلاق میشود که به قدری بزرگ و پیچیده هستند که روشهای پردازش داده سنتی قادر به مدیریت آنها نیستند. ایده اصلی در مورد دادههای کلان این است که با تحلیل چنین مجموعه دادههای عظیمی، میتوان استنتاجها، الگوها، روندها و روابطی را شناسایی کرد که با دادههای کوچکتر قابل شناسایی نباشند.
چرا دادههای کلان مهم هستند؟
دادههای کلان در همهجا وجود دارند! این دادهها به مقیاس وسیع در تقریباً هر جنبهای از زندگی تولید میشوند، از جمله:
- فعالیت آنلاین: هر بار که در اینترنت جستجو میکنید یا خرید آنلاین انجام میدهید، دادهای در مورد رفتار شما جمعآوری میشود.
- نقطه فروش (POS): دادهها در فروشگاههای خردهفروشی زمانی که مشتریان خرید میکنند جمعآوری میشود.
- تراکنشهای بانکی: هر بار که تراکنشی انجام میدهید، دادهای ذخیره میشود.
- شبکههای اجتماعی: پلتفرمهایی مانند فیسبوک و توییتر دادههایی از تعاملات شما جمعآوری میکنند.
- کارخانههای مهندسی: دادههای زمان واقعی از کارخانهها در سرتاسر جهان جمعآوری میشود.
- تحقیقات علمی: زمینههایی مانند شبیهسازیهای مولکولی دادههای زیادی تولید میکنند که جمعآوری میشود.
فرآیند داده کاوی
اجزای یک پروژه کامل داده کاوی عبارتند از:
- فرموله کردن سوال: هر پروژه داده کاوی با یک سوال شروع میشود که باید با استفاده از دادهها پاسخ داده شود. بنابراین، فرموله کردن سوال اولین گام مهم در این فرآیند است. هنگام شروع یک پروژه داده کاوی، بهتر است سوال خود را بهطور واضح و دقیق تعریف کنید. سوالات دیگری ممکن است در طول انجام تحلیل به وجود بیایند، اما درک اینکه چه چیزی را باید با تحلیل خود پاسخ دهید، گام بسیار مهمی است.
- یافتن یا تولید دادهها: گام دوم “یافتن یا تولید دادهها” است که شما برای پاسخ دادن به سوال خود از آن استفاده میکنید. تولید دادهها میتواند به هر فرمتی انجام شود. بنابراین، بسته به رویکرد انتخابی و خروجی مورد نظر، دادههای جمعآوری شده باید اعتبارسنجی شوند. در صورت نیاز، ممکن است لازم باشد دادههای بیشتری جمعآوری کرده یا دادههای نامربوط را حذف کنید.
- تحلیل دادهها: پس از فرموله کردن سوال و در اختیار داشتن دادهها، مرحله بعدی تحلیل دادهها است. این کار میتواند در دو بخش انجام شود:
- کاوش دادهها: در این مرحله، شما دادهها را مطالعه و پیشپردازش میکنید تا برای مدلسازی آماده شوند. در این مرحله میتوانید دادهها را پاکسازی کرده و از ابزارهای تصویری برای نمایش آنها استفاده کنید. این کار به شناسایی تفاوتها و برقراری ارتباط بین عوامل مختلف کمک میکند. پس از تکمیل این مرحله، زمان انجام تجزیه و تحلیل اکتشافی (Exploratory Data Analysis) فرا میرسد.
- مدلسازی دادهها: در این مرحله، شما مجموعهدادههایی برای اهداف آموزش و آزمایش ایجاد میکنید. شما میتوانید روشهای مختلف یادگیری مانند طبقهبندی (Classification) و خوشهبندی (Clustering) را تفسیر کرده و در نهایت بهترین روش را برای ساخت مدل انتخاب کنید. بهطور خلاصه، این یعنی استفاده از تکنیکهای آماری یا یادگیری ماشین برای تحلیل دادهها و پاسخ دادن به سوال شما.
- ارتباط دادن نتایج به دیگران: پس از استنتاج نتایج از تحلیل، پروژه باید به دیگران “ارتباط داده شود”. یک بخش مهم از هر پروژه دادهنگاری این است که خروجیهای پروژه بهدرستی توضیح داده شوند. این گزارش ممکن است به مدیر شما ارسال شود یا ممکن است یک پست وبلاگ باشد.
برخی از پروژههای داده کاوی:
در زیر چند پروژه جالب دادهکاوی آورده شده است. در هر پروژه، نویسنده یک سوال داشت و میخواست آن سوال را حل کند. آنها از دادهها برای حل این سوال استفاده کردند، دادهها را تحلیل و تجسم کردند، و سپس نتایج خود را در قالب یک پست وبلاگ به دیگران منتقل کردند.
- تحلیل متن توییتهای ترامپ تأیید میکند که او تنها نیمی از توییتهای (عصبیتر) اندرویدی را مینویسد، توسط دیوید رابینسون
- هیلاری: محبوبترین نام مسموم در تاریخ ایالات متحده، توسط هیلاری پارکر
- کجا در ایالات متحده زندگی کنیم؟، توسط مائله سالمون
- کلینیکهای سلامت جنسی در تورنتو، توسط شارلا گلفاند
دیدگاهتان را بنویسید