مروری بر دوره

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

 

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

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

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

استخدام دیتا ساینتیست‌

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

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

 

تفاوت دیتا ساینتیست و متخصص آمار

در ضمن دیتا ساینتیست‌ها متفاوت از متخصصین آمار هستند. با اینکه دیتا ساینتیست و متخصص آمار اهداف و مهارت‌های مشترکی دارند و هر دو از داده‌های حجیم استفاده می‌کنند، اما کار این دو متفاوت است. دانش داده‌ها یا دیتا ساینس (Data Science) حوزه جدیدی است که عمیقا بر استفاده از کامپیوتر و فناوری متکی است.

دیتا ساینتیست کارمندی پردرآمد

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

چگونه می‌توان دیتا ساینتیست شد؟

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

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

مهارت‌های کامپیوتری لازم برای دیتا ساینتیست

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

۱- زبان برنامه‌نویسی پایتون

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

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

همچنین دانستن زبان‌هایی مثل جاوا، پرل (Perl) و C++/C نیز می‌تواند بسیار مفید باشد. انعطاف زبان پایتون باعث می‌شود که شما بتوانید صرفا با کدنویسی در آن به پایگاه‌های داده‌ گوناگون متصل شوید و از آن‌ها داده بخوانید و داده وارد کنید.

۲- زبان R

زبان برنامه‌نویسی R برخلاف پایتون، زبانی است که فقط برای کارهای آماری و سروکله‌زدن با داده‌ها ساخته شده است.

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

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

به‌دلیل همین سختی و همچنین نداشتن انعطاف کافی در زبان R، زبان برنامه‌نویسی دیگری با نام جولیا (Julia) نیز درست شده است. جولیا زبانی است که هم‌زمان قدرت و انعطاف و سرعت زبان R، پایتون و C++/C را ترکیب کرده است.

دانستن نرم‌افزارهای‌ آماری مثل SPSS و SAS هم می‌تواند به دردتان بخورد.

۳- پلتفرم هادوپ

پلتفرم هادوپ (Apache Hadoop) مجموعه‌ای از نرم‌افزارها و ابزارها مثل هایو (Apache Hive) و پیگ (Apache Pig) است که مخصوص مدیریت داده‌ها و کارهای عددی و محاسباتی روی‌ داده‌های حجیم ساخته شده‌اند.

تسلط به ابزارهای مجموعه هادوپ بعد از زبان پایتون، مهم‌ترین مهارت لازم برای یک دیتا ساینتیست است.

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

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

۴- تسلط به SQL

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

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

با اینکه شما باید پیش از SQL، هادوپ و NoSQL بدانید، اما دانستن SQL می‌تواند بسیار مفید باشد؛ زیرا دستورهایی که برای درخواست‌های آن استفاده می‌کنید، می‌توانید تصویر بسیار خوبی از داده‌ها به شما بدهد. در ضمن سادگی دستورهای آن، کار را ساده‌تر می‌کند و شما می‌توانید با برنامه‌نویسی کمتری کارتان را جلو ببرید.

۵- آپاچی اسپارک

آپاچی اسپارک (Apache Spark) مثل هادوپ یک ابزار مدیریت بیگ دیتا است. هر دو هم محصول تیم نرم‌افزاری آپاچی هستند؛ اما تفاوت اسپارک یا هادوپ این است که اسپارک بسیار سریع‌تر از هادوپ است.

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

۷- یادگیری ماشینی و هوش مصنوعی

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

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

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

۸- مصورسازی داده‌ها (Data Visualization)

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

شما باید بتوانید آنچه را از داده‌ها به دست آورده‌اید، در نمودارها و جداول، تصویرسازی کنید. در نتیجه بد نیست که از هر ابزاری که می‌توان با آن نمودار کشید، سر دربیاورید؛ اما دانستن ggplot، matplotlib و d3.js ضروری است.

شما با همین نمودارها است که می‌توانید توجه‌ها را جلب کنید تا افراد را به اقدام‌های درست مجاب کنید.

۹- کار کردن با داده‌های بدون‌ساختار

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

 

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

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

در 10 مهارت برتری که مجمع جهانی اقتصاد برای سال 2020 نیاز آنها را اعلام کرده است، مهارت حل مسائل پیچیده در رتبه اول قرار دارد، علم داده از جمله علومی است که مهارت حل مسائل پیچیده را فراهم می سازد.

مشاغل در حوزه علوم داده

کسب وکار ها و سازمان ها با داشتن داده های قدیمی خود می توانند اشتباهات خود را شناسایی و فرصت ها را  کنند و نتیجتاً به بهبود کیفیت و افزایش در آمد برسند به دلیل بینش و بصیرتی که داده برای سازمان ها به وجود می آورد مشاغل زیادی هم در این حوزه به وجود آمده اند.

به صورت کلی و با توجه به نیاز سازمان ها می توان این مشاغل رو توی  سه دسته  زیر تقسیم بندی کرد.

تحلیلگر داده(Data Analyst)

مهندس داده (Data Engineer)

دانشمند داده (Data scientist).

وظایف مهندس داده

-طراحی، توسعه، ساخت و نگهداری معماری داده‌ها

-طراحی و ایجاد زیرساخت مورد نیاز برای استخراج، تبدیل، تغییر، ترمیم و پاکسازی داده از منابع مختلف اطلاعاتی ساخت یافته یا بدون ساختار و بارگذاری داده‌ها به صورت مورد نیاز و خودکار‌سازی این فرآیند

-ایجاد راه کار‌هایی به منظور ارتقای کیفیت و قابلیت اطمینان داده‌ها

-تبدیل و تغییر‌داده‌ها به منظور استفاده توسط تحلیل‌گر یا دانشمند داده

مهارت های مورد نیاز جهت تبدیل شدن به مهندس داده:

۱-دانش عمیق در مورد SQL  و یا دیگر سولوشن های پایگاه داده

2- دانش در خصوص انباره داده و ابزارهای ETL

3-تحلیل های بر پایه Hadoop و دانش در خصوص کلان داده ها

4-توانایی کد نویسی با یکی از زبان های Python، R و ...

سرفصل ها

علم داده چیست؟

  • علم داده چیست؟
  • مسیرهای رسیدن به علم داده
  • عناوین و الگوریتم های علم داده
  • کاربردهای تخصص علم داده
  • وضعیت آینده و استخدام در علم داده
  • آموزش کار با نوت بوک ژوپیتر
  • بارگذاری فایل ها و نصب Package ها و بارگذاری کتابخانه ها

روش شناسی علم داده

  • از مسئله تا رویکرد و از الزامات تا جمع آوری داده
  • درک مدل کسب و کار
  • رویکرد تحلیلی
  • از فهم تا آمادگی و از مدل سازی تا ارزیابی
  • مفاهیم آماده سازی داده
  • آماده سازی داده مطالعه موردی

پایتون برای علم داده و هوش مصنوعی

  • مبانی پایتون
  • عبارات و متغیرها
  • عملگرهای رشته
  • نوع های داده
  • ساختار داده در پایتون
  • لیست، تاپل، دیکشنری، مجموعه،
  • اصول برنامه نویسی پایتون
  • شرط ها
  • حلقه ها
  • توابع
  • شی و کلاس
  • کار با داده در پایتون
  • خواندن و نوشتن فایل
  • بارگذاری داده با کتابخانه Pandas
  • استفاده از کتابخانه Numpy

تحلیل داده با پایتون 

  • فهم داده
  • بسته های پایتون برای علم داده
  • ورود و صدور داده در پایتون
  • تفکیک داده
  • مواجهه با داده ای از دست رفته
  • شکل دهی داده
  • نرمال کردن داده
  • داده های طبقه بندی به داده های کمی
  • تحلیل توصیفی داده
  • توصیف آماری
  • همبستگی
  • تحلیل واریانس ANOVA
  • مدل سازی
  • رگرسیون و رگرسیون خطی چندگانه
  • ارزیابی مدل و مصورسازی
  • رگرسیون چندجمله ای و لوله ها
  • اندازه گیری ها برای ارزیابی
  • پیش بینی و تصمیم گیری
  • ارزیابی مدل
  • بیش برازش و کم برازش و انتخاب مدل
  • Ridge Regression
  • Grid Search

مصورسازی داده با پایتون 

  • Matplotlib,seaborn,folium
  • Area Plots
  • Histograms
  • Bar Charts
  • Pie Charts
  • Box Plots
  • Scatter Plots
  • Waffle Charts
  • Word Clouds

یادگیری ماشین با پایتون 

  • یادگیری با سرپرستی و بدون سرپرستی
  • رگرسیون، دسته بندی و خوشه بندی
  • K-Nearest Neighbors
  • Evaluation Metrics in Classification
  • Introduction to Decision Trees
  • Building Decision Trees
  • Intro to Logistic Regression
  • Logistic regression vs Linear regression
  • Logistic Regression Training
  • Support Vector Machine
  • Intro to Clustering
  • Intro to k-Means
  • More on k-Means
  • Intro to Hierarchical Clustering
  • More on Hierarchical Clustering
  • DBSCAN
  • Content-based Recommend-er Systems
  • Collaborative Filtering
پیش نیازها

آشنایی با برنامه نویسی کامپیوتر 

یادگیری ماشین 

آمار و احتمال

تقویم آموزشی
9860
Data Science

Data Science

دوره تخصص علم داده

مدرس: دکتر علی ملائی

طول دوره: ۲۵ ساعت
شهریه: ۵۵۰,۰۰۰ تومان

تاریخ شروع: ۱۳۹۸/۰۹/۲۰
شنبه . چهارشنبه
زمان برگزاری: ۱۸:۳۰ - ۲۱:۰۰

با ما همراه بشین

  • موسسه انفورماتیک بین الملل
  • تلفن تماس: ۰۵۱۳۷۶۴۹۳۳۹ - ۰۵۱۳۷۶۳۲۸۱۲
  • ایمیل: i3center.inc@gmail.com
  • ساعت کاری: از ۸:۳۰ تا ۲۰:۰۰
  • مشهد - بلوار فردوسی - مهدی ۳ - پلاک ۲۴
  • آمار
  • بازدیدهای سایت: 4213052
  • کلاس های آموزشی: 101
  • استادان: 65
  • پرسنل: 11