سلام به وبلاگ علی محمدی خوش آمدید

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

 

نامپای چیست؟

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

 

آرایه‌های یک، دو و سه بعدی در نامپای!

 

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

 min and max:

  • یافتن مینیمم و ماکسیمم مقدار یک آرایه‌ی نامپای

 mean:

  •  یافتن مقدار میانگین یک آرایه‌ی نامپای

 std:

  •  یافتن انحراف معیار یک آرایه‌ی نامپای

 median:

  • یافتن میانه‌ی یک آرایه‌ی نامپای

 percentile:

  •  یافتن صدک از یک آرایه‌ی نامپای

 linspace:

  •  یافتن اعداد با فاصله‌ی زوج از یک بازه‌ی مشخص

 shape:

  • یافتن اندازه‌ی یک آرایه

 reshape:

  •  تغییر اندازه‌ی یک آرایه

 copyto:

  • کپی کردن مقادیر یک آرایه در دیگری

 transpose:

  • معکوس نمودن محورهای (سطرها و ستون‌ها) یک آرایه

 stack:

  • الصاق دنباله از یک آرایه در طول یک محور جدید

 vstack:

  •  الصاق دنباله از یک آرایه در طول یک محور جدید بطور عمودی

 hstack:

  • الصاق دنباله از یک آرایه در طول یک محور جدید بطور افقی

 sort:

  • مرتب نمودن یک آرایه

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

 

منبع:

 

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

مدیریت داده‌های گمشده (missing data)

مقدمه

مدیریت داده‌های گمشده یا مقادیر از دست رفته گام مهمی در پاکسازی داده‌ها (Data cleaning) و پیش پردازش داده‌ها (Preprocessing) در بحث یادگیری ماشین (Machin Learning) یا داده‌کاوی (Data Mining) است که می تواند بر اعتبار و قابلیت اطمینان مدل تأثیر بگذارد. دلیل اهمیت گمشدگی داده‌ها این است که تقریباً تمام تکنیک‌های آماری کلاسیک و مدرن عملکرد آنها براساس داده‌های کامل است (یا به آنها نیاز دارند). دلیل دیگر اینکه اغلب بسته‌های آماری رایج در بسیاری از نرم‌افزارهای آماری حداقل گزینه‌های مطلوب آنها برای مقابله با داده‌های از دست رفته حذف داده‌های گمشده از تجزیه و تحلیل است.

در این آموزش موارد زیر پوشش  داده‌ خواهد شد:

  • مکانیزم‌های گمشدگی داده‌ها
  • چگونگی برخورد با داده‌های گمشده

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

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

 

 

برخی از دلایل گمشدگی داده‌ها

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

تاثیرات گمشدگی داده‌ها

  • اکثر کتابخانه‌های R و Python مورد استفاده در یادگیری ماشین و داده‌کاوی معمولا ابزاری برای مدیریت خودکار داده‌های گمشده ندارند و می توانند منجر به خطا شوند.
  • داده‌های گمشده می‌تواند باعث ایجاد اغتشاش در توزیع متغیر شود، یعنی می‌توانند باعث بیش‌برازش یا کم‌برازش مدل‌ها شوند.
  • داده‌های گمشده می‌توانند باعث یک سوگیری (اریبی) در مجموعه داده شوند و بنابراین تجزیه و تحلیل آمـاری را بـه سـوی نتـایج اریب سوق داده و نهایتاً دستیابی به یک نتیجه‌گیری مفیـد از داده‌های جمع آوری شده را با مشـکل مواجـه می‌سـازد و می‌توانند منجر به تجزیه و تحلیل نادرست مدل شوند.

مکانیزم‌های گمشدگی

  • هنگام کاوش در داده‌های گمشده یا از دست رفته، مهمترین چیز یافتن و پی بردن به مکانیزم گمشدگی است یعنی اینکه داده‌های گمشده به چه دلیل گم‌شده‌اند؟
  • یعنی گمشدگی داده‌ها هم می‌تواند به صورت تصادفی باشد یا اینکه به دلیل غیرتصادفی و هدفمند عدم پاسخ صورت گرفته باشد. به عنوان مثال، اکثر زنان در یک مطالعه از پاسخ دادن به سوالاتی که مربوط به سن باشند ممکن است به آن سوالات پاسخ ندهند یا معمولا مردان ممکن است از پاسخگویی به سوالات در مورد درآمد خودداری کنند. بنابراین شناخت سازوکار گمشدگی بسیار مهم می‌باشند.

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

 

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

  1. دانلود مابقی مقاله بصورت PDF 
  2. مشاهده قسمت اول ویدیو (مربوط به این مقاله)
  3. مشاهده قسمت دوم ویدیو (مربوط به این مقاله)

مدرسه‌ی تابستانی علم داده

 

 

مدرسه تابستانی علم داده
 

جذاب‌ترین شغل قرن 21ام

 

مدرس: دکتر محمد فزونی

 تاریخ شروع: 25 تیرماه 1401

 هزینه ثبت‌نام: 695 هزار تومان

 طول مدت آموزش: 35 ساعت

 نحوه آموزش: آنلاین (ارسال ویدیو، درسنامه، تمرین)

 ارزیابی: آزمون پایانی و ارائه مدرک از سوی مرکز آموزش‌های آزاد دانشگاه گنبدکاووس

 

شرکت در مدرسه‌ی تابستانی علم داده

اصل پارتو و کتابخانه‌های پانداس

تسلط کامل بر یک کتابخانه‌ی پایتون مانند پانداس ‌برای هر کسی می‌تواند چالش برانگیز باشد. اگر یک قدم به عقب برداریم و بیاندیشیم؛ آیا واقعاً نیاز است با جزئیات یک کتابخانه‌ی خاصی آشنا باشیم؟ بخصوص در دنیایی زندگی می‌کنیم که با اصل پارتو (Pareto principle) اداره می‌گردد. همچنین اصل پارتو بعنوان قانون 20-80 نیز شناخته می‌شود.

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

 

1. خواندن فایل csv

اگر بخواهید یک فایل csv را در پانداس بخوانید باید از روش

( )pd.read_csv استفاده کنید که در شکل زیر نشان داده شده‌ است:

 

برای توضیحات بیشتر اینجا کلیک نمائید

 

2. ذخیره سازی دیتافریم در یک فایل csv

اگر بخواهید دیتافریم را در یک فایل بصورت csv ذخیره سازی کنید باید از روش 

( )to_csv استفاده نمائید که در شکل زیر نشان داده شده است:

 

برای توضیحات بیشتر اینجا کلیک نمائید

 

3. ساخت دیتافریم از تعدادی لیستی

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

( )pd.DataFrame استفاده کنید که در شکل زیر نشان داده شده است:

 

برای توضیحات بیشتر اینجا کلیک نمائید

 

4. ساخت دیتافریم از دیکشنری

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

( )pd.DataFrame استفاده کنید. که در شکل زیر نشان داده شده است:

 


برای توضیحات بیشتر اینجا کلیک نمائید

 

5. ادغام دیتافریم‌ها

عمل ادغام در دیتافریم‌ها همان عمل پیوستن (Join) در SQL است که از آن برای پیوستن دو دیتافریم در یک یا چند ستون استفاده می‌کنیم. همچنین اگر بخواهید دو دیتافریم را ادغام کنید باید از روش ( )pd.merge استفاده نمائید که در شکل زیر نشان داده شده است:


برای توضیحات بیشتر اینجا کلیک نمائید

 

6. مرتب سازی دیتافریم

اگر بخواهید یک دیتافریم را بر اساس مقادیر موجود در یک ستون خاص مرتب کنید باید از روش ( )sort_values استفاده کنید که در شکل زیر نشان داده شده است:

 

برای توضیحات بیشتر اینجا کلیک نمائید

 

7. به هم پیوستن دیتافریم‌ها

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

()pd.concat استفاده کنید که بصورت زیر نشان داده شده است:

 

برای توضیحات بیشتر اینجا کلیک نمائید

  • axis = 1 انباشته کردن ستون‌ها باهم
  • axis = 0 انباشته کردن ردیف‌ها باهم

 

8. تغییر نام ستون

اگر بخواهید نام یک ستون یا چندین ستون را در دیتافریم تغییر دهید باید از روش 

( )rename استفاده کنید که بصورت زیر نشان داده شده است:

 

برای توضیحات بیشتر اینجا کلیک نمائید

 

9. اضافه کردن ستون جدید

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


 

10. فیلتر کردن دیتافریم بر اساس شرط

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

 

 

11. حذف ستون‌ها

اگر بخواهید یک یا چند ستون از دیتافریم را حذف کنید باید از روش ( )drop استفاده کنید که در زیر نشان داده شده است:

 

برای توضیحات بیشتر اینجا کلیک نمائید

 

12. روش GroupBy:

اگر بخواهید عمل تجمیع را بعد از دسته‌بندی انجام دهید باید از روش 

( )groupby استفاده کنید که بصورت زیر نشان داده شده است:

 

برای توضیحات بیشتر اینجا کلیک نمائید

 

13. مقادیر یکتا (یونیک) در یک ستون

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

( )nunique استفاده کنید. همچنین برای چاپ مقادیر یونیک در یک ستون از دیتافریم می‌توان از روش ( )unique استفاده کرد. از این دو روش در شکل زیر استفاده شده است:

 

برای توضیحات بیشتر اینجا کلیک نمائید

 

14. پر کردن مقادیر NaN:

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

( )fillna استفاده کنید که بصورت زیر نشان داده شده است:

 

برای توضیحات بیشتر اینجا کلیک نمائید

 

15. اعمال تابع روی یک ستون:

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

( )apply استفاده نمائید که بصورت زیر نشان داده شده است:

 

برای توضیحات بیشتر اینجا کلیک نمائید

 

16. حذف تکراری‌ها:

اگر می‌خواهید مقادیر تکراری (duplicate values) را حذف کنید باید از روش

( )drop_duplicates استفاده کنید که بصورت زیر نشان داده شده است:

 


برای توضیحات بیشتر اینجا کلیک نمائید

 

17. روش شمارش مقادیر (Value Counts):

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

( )value_counts استفاده کنید که بصورت زیر نشان داده شده است:

 


 

18. اندازه‌ی دیتافریم:

اگر می‌خواهید سایز یا اندازه‌ی دیتافریم را پیدا کنید باید از shape استفاده کنید که بصورت زیر است:

 

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

علاوه بر این بهترین راه برای افزایش دانش مراجعه به مستندات رسمی پانداس است که می‌توانید به آدرس زیر مراجعه کنید:

/https://pandas.pydata.org/docs

متشکرم از اینکه این مقاله را مطالعه کردید، امیدوارم برای شما مفید بوده باشد.

 

مترجم: علی محمدی

منبع:

 

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

 

ریاضی برای علم داده

چه مواردی از ریاضی را باید بدانیم؟

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

سرفصل‌های بسیار مهمی که از علم ریاضی و آمار در علم داده مهم و کاربردی هستند، به شرح ذیل می‌باشند؛

   1. میانگین، میانه، مد

   2. واریانس و انحراف معیار

   3. صدک‌ها و دهک‌ها

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

   5. احتمالات

   6. مشتق و تعبیر هندسی آن

   7. فرمول‌های مشتق‌گیری

   8. آشنایی با توابع ریاضی خاص

   9. جبر خطی و ساختار فضاهای برداری

  10. آشنایی با ماتریس‌ها و ضرب آنها

  11. پایه‌ی فضاهای برداری

  12. ضرب و وارون ماتریس‌ها

  13. آزمون‌های فرض

  14. بازه‌های اطمینان

  15. توزیع‌های مختلف آماری (نرمال؛ یکنواخت؛ نمایی؛ …)

البته مسلماً تمامی موارد به اینها ختم نمی‌شوند و لیست فوق با توجه به نوع کار و پروژه‌ای که در دست داریم؛ بروزرسانی خواهد شد.

دوره آموزشی رایگان ریاضی برای علم داده!

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

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

لیست پخش دوره «ریاضی برای علم داده»

 

چک لیست‌هایی در خصوص انجام پروژه‌های علم داده

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

چک لیست استراتژی تیمی:

1. در حال حاضر چقدر حسن‌نیت وجود دارد؟ میزان حسن نیت اغلب مدت زمان لازم را که شما برای ارائه در نظر می‌گیرید مشخص می‌کند.

2. در حال حاضر چه مهارت‌هایی در تیم وجود دارند؟ آیا آنها برای داده‌های موجود مناسب هستند؟

3. داده‌ها عموما از کجا به دست آمده‌اند؟ آیا کاربران یا مشتری‌ها آنها را بشما داده‌اند؟ آیا آنها در حال حاضر در سازمان شما موجودند (یا بعنوان مثال روی سرورهای مشتری قرار دارند؟) آیا می‌توانید بطور موثری برای سازمان خود داده جمع‌آوری کنید؟ بعنوان مثال از طریق وب‌کاوی.

4. آیا دیتاست‌های مشابه را بررسی خواهید کرد یا خیر، دیتاست‌های متفاوتی را با توجه به نوع مسئله انتخاب و آنالیز می‌کنید؟

5. آیا در تیم شما یک روش صنعتی استاندارد برای بررسی مسائل وجود دارد؟ آیا وجود روش‌های جدید در حوزه‌ی کاری شما یک امتیاز است یا چندان موثر نخواهد بود؟

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

7. آیا منابع کافی در سازمان شما به منظور آموزش کاربران وجود دارد و یا چنین چیزی (آموزش) وظیفه‌ی شماست؟ آیا کاربرانی که احتمالاً در چنین مواقعی سؤال بپرسند را شناسایی کرده‌اید؟

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

9. اگر از استراتژی تیم استفاده کنیم، آیا بطور اتوماتیک به اهداف سازمان خواهیم رسید؟

10. آیا استراتژی سازمان در بازه‌ی زمانی تعیین شده با استراتژی تیم سازگار خواهد بود؟

11. آیا مستندات استراتژی تیم براحتی در اختیار سایر اعضاء قرار گرفته است یا خواهد گرفت؟

12. آیا ساختار مستندات برای خوانده شدن ساده، مختصر و مفید است؟

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

14. آیا زمانی که شما و سایر اعضای تیم کمترین حواس‌پرتی ممکن را دارند مشخص کرده‌اید؟

15. محتمل‌ترین سؤالات اعضاء را مشخص نموده و پاسخ مشخصی برای آنها در نظر بگیرید.

16. با اشخاص موفق در سازمان یا در خارج آن به شخصه در خصوص استراتژی خود قبل از ارائه صحبت کنید و نظرات ایشان را جویا شوید.

17. آئین و مناسک تیم شما چیست؟ آیا آنها کمک کننده هستند و یا مانعی بر سر راه رسیدن به اهداف تیم می‌باشند؟ آیا آنها تیم را در برابر تغییرات آزاد می‌گذارند یا باعث فیلتر ورودی‌های مختلف ذهنی برای افراد تیم می‌شوند؟ (یعنی قوانینی حاکم بر تیم که براحتی به اعضاء اجازه‌ی دسترسی به عقاید مخالف با منویات آنها را نمی‌دهد)

18. آیا تمرین استانداردی برای بررسی اینکه پروژ‌ه‌ی جدید حامی استراتژی تیم است، وجود دارد؟

19. آیا در آگهی شغلی‌تان توضیحاتی برای جذب کاندید‌های جدید که مهارتهایشان اهداف کلی تیم را حمایت کند، نوشته‌اید؟

 

چک لیست انجام پروژه:

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

الف: اهداف:

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

2. هر چند وقت یکبار مدل بروزرسانی خواهد شد؟ پاسخ‌های احتمالی از «هرگز» تا «هر میکرو-ثانیه» متغیر است.

3. نتایج اشتباه بودن مدل چیست؟ هیچ؟ کسی مقداری پول از دست خواهد داد؟ شخصی جانش را از دست می‌دهد؟ (در خصوص یک مدل تشخیص دهنده‌ی مریضی)

4. چه حجمی از داده وارد مدل خواهد شد؟

5. چگونه کاربران نتایج را ارزیابی خواهند کرد؟

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

ب: مهارت‌ها

1. آیا مهارت‌های لازم در حال حاضر در تیم شما وجود دارند؟

2. آیا افراد با مهارت‌های درست، همان‌هایی هستند که در حال حاضر در تیم وجود دارند؟

3. نتایج تکمیل نشدن پروژه چیست؟

4. آیا (انجام) پروژه یک نیاز مبرم است؟

5. چقدر استخدام یک کارمند موقت سخت است؟ چقدر چنین استخدامی باعث تاخیر در پروژه‌ها می‌گردد؟

پ: داده‌ها

1. آیا تیم قبلاً با این داده‌ها کار کرده است؟

2. منبع (مبدأ) داده‌ها چیست؟ چقدر محتمل است که یک دیتاست با کیفیت را قبل از بکارگیری آن بررسی کنید؟ همیشه این کار را انجام می‌دهید؟ (یعنی احتمالش 100% است؟)

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

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

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

 

چک لیست فروش:

1. آیا ارائه مدل شما لینکی بین مدل‌تان و راه‌حل برای رفع نیاز مشتری برقرار خواهد نمود؟

2. آیا جنبه‌های عاطفی ارائه را در نظر گرفته‌اید؟ (چگونه از مغز به قلب مشتری احتمالی برسیم؟)

3. آیا شما یک پاسخ کوتاه (Elevator Pitch) به سؤال «چیکار می‌کنی؟» دارید؟

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

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

چک لیست اعتبار مدل:

الف: مدل‌های قابل تفسیر

1. با توجه به داده‌هایی که دارید و میزان احتمالی که آنها ممکن است مفروضات لازم را نداشته باشند، آیا می‌توانید مدلی به اندازه‌ی کافی صحیح را توسعه دهید که ذاتاً تفسیرپذیر باشد؟ همانند مدل خطی تعمیم یافته و یا درخت تصمیم.

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

3. آیا می‌توانید به مشتری و کاربر دسترسی به توضیحات را بدهید؟ هم در سطح موردی و هم بطور جامع.

4. آیا می‌توانید سطحی از عدم قطعیت آیا می‌توانید سطحی از عدم قطعیت در پیش‌بینی مدلتان را به کاربر توضیح بدهید؟

ب: ارائه‌ی مدل:

1. آیا متغیرها در مدل شما اسامی با معنی دارند؟

2. آیا کاربر شما به آسانی می‌تواند توضیحاتی در خصوص هر نسبت، و یا سایر فرمول‌ها را که در طول مدل استفاده شده، بیابد؟

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

پ: مدل‌های سازگار با خودشان و نظرات متخصصین حوزه:

1. آیا متخصصین حوزه (Subject Matter Experts) فرصتی برای مرور یافته‌های شما پیدا کردند؟ بررسی اینکه تک‌تک نتایج با معنی است و اینکه آیا آنها با ورودی‌ها مرتبط هستند یا خیر.

2. آیا روابط غیرخطی مهم را با متخصصین حوزه مرور کردید تا مطمئن شوید که آن روابط با فیلد کاری تطابق دارند؟

3. آیا مدل خود را به سایر دیتاساینتیست‌ها نشان داد‌ید تا مرور کنند که آیا مدل‌تان دارای نتایج قوی و مطلوب است یا خیر؟

4. آیا ویژگی‌هایی که مدل شما مهم تشخیص داده است را با ویژگی‌های مهم از نظر متخصصین حوزه مقایسه کردید؟

5. آیا روابط ناقص یا نامطلوب را بعد از بررسی و شناسایی، حذف یا تغییر دادید؟

چک لیست مدل‌های قابل اعتماد:

1. آیا یک ارزیابی ریسک قبل از پیاده‌سازی انجام داده‌اید؟

2. آیا سیستم مانیتورینگ کیفیت داده‌های ورودی و توزیع‌های آماری‌شان را ایجاد کرده‌اید؟ در خصوص خروجی‌ها چطور؟

3. اگر داده‌ها خارج از محدوده باشند، آیا طرحی برای اقدام یا بررسی دارید؟

4. آیا می‌دانید که کدام جنبه‌ از کیفیت داده‌ها به پیاده‌سازی مرتبط است؟ چگونه می‌توانید چنین موردی را شناسایی کنید؟

5. آیا یک برآورد کلی از خروجی و نتایج مدل دارید و تلاش نموده‌اید تا نتایج ناخواسته و غیر مترقبه را کشف نمائید؟

6. آیا توافقی بین شما و کاربران مبنی بر اینکه چگونه مدل‌تان چک خواهد شد وجود دارد؟ چگونه این توافق را مکتوب کرده‌اید؟

چک لیست ارتقاء شغلی:

1. آیا یک برگه‌ی توضیحات کوتاه (Whitepaper)که بینش‌های کسب شده توسط شما را به نمایش خواهد گذاشت که در عین حال توانمندی‌های تیم‌تان را نیز نشان می‌دهد، طراحی کرده‌اید؟

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

3. آیا کارهایتان را برای یک دورهمی در سازمان خود ارائه کردید؟ تا حدودی با چیزهایی که به مشتری‌های خارج سازمان می‌گویید متفاوت باشد.

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

5. آیا جلسات پیش‌روی خود جهت ارائه دست‌آوردهایتان را در دفترچه‌ای ثبت می‌کنید تا نظم کاری‌تان بیشتر شود؟

 

چک لیست کارایی تیمی:

1. آیا یک فرایند بازنگری (به عقب) برای تیم که تلاش می‌کند تا درس‌های گذشته را به اشتراک بگذارد، تدوین کرده‌اید؟

2. آیا روش‌های کسب توجه مازاد به عناصر انسانی را در هنگام بازنگری تمرین کرده‌اید؟

3. آیا مواردی که در بازنگری‌ها بدست آمده را در امور جاری عادی‌تان بکار می‌گیرید؟

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

5. آیا یک بینش و تصور (vision) تیمی که از هر یک از اعضای تیم آغاز می‌شود را ساخته‌اید؟ (تمامی اعضای تیم در کسب آن نقش داشته باشند).

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

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

 

علم‌ داده در فوتبال؛ کاربردها و نمونه‌های موفق

 

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

استعداد‌یابی هوشمند، کشف مناسب‌ترین بازیکن‌ها مبتنی بر داده‌ها

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

یک: صرفه‌جویی

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

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

دو: حافظه سیلیکون بیشتر از  شماست

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

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

سه: محدودیت پیش تصورات

تمرکز روی پایگاه‌های داده اغلب منجر به نتایج ضد شهودی می‌شود. در بعضی موارد اینها ممکن است کاذب باشند.

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

وقتی که نوبت به جستجوی هوشمندانه و نقل‌ و‌ انتقال بازیکنان می‌رسد، سه باشگاه با قرار داشتن داده‌ها در قلب برنامه‌ریزی‌های نقل‌ و‌ انتقالات خود متمایزند. دو تا از آنها متعلق به یک شخص هستند: متیو بنهام (Matthew Benham).

استعدادیابی هوشمند: برنتفورد

موفقیت آنها در نقل‌ و‌ انتقالات، به باشگاه این امکان را داد که با موفقیت در لیگ قهرمانان (The English Football League Championship) بتوانند با سایرین و با وجود داشتن بودجه‌ی دستمزدی، کمتر از ۶۰ درصد میانگین لیگ، رقابت کند.

متیو بنهام یک شرکت مشاوره‌ی شرط‌بندی را تاسیس کرد. اسمارت آدز یک شرکت است که خدمات تحقیق و مدل‌سازی ورزشی را در قماربازی حرفه‌ای به مشتریان ارائه می‌دهد. در ژوئن ۲۰۱۲ بنهام صاحب اکثریت سهام برنتفورد شد که آن زمان برای صعود از لیگ یک می‌جنگید. در جولای ۲۰۱۴ او مالک باشگاه دانمارکی میدجولند (FC Midtjylland) شد.

برنتفورد انگلیسی و میدجولند دانمارکی جدا از مالکیت‌شان یک نقطه‌ی مشترک دارند. آنها «قادر به مشت زدنِ بیشتر از وزن خود هستند». آنها فهمیدند که چگونه با بودجه‌های کمتر از رقبایشان، با آنها رقابت کنند. راهی که آنها آن را انجام می‌دهند یک مفهوم نسبتاً ساده است که انجام آن بسیار دشوار می‌باشد؛ «به حداکثر رساندن بازده در بازار نقل و انتقالات».

در زیر به‌عنوان نمونه، جدولی از کتاب فلسفه‌ی امید گل (The Expected Goal Philosophy) نوشته‌ی جیمز تیپت (James Tippett) ناظر سابق در اسمارت آدز، آورده شده است. او ناظر پیگیری آمار مسابقات فوتبال است. همان آماری که الگوریتم‌های برنتفورد، اسمارت آدز و میدجولند را تغذیه می‌کند.

نقل‌ و‌ انتقالات برنتفورد

 

جدول بالا پرسودترین نقل و انتقالات بازیکنان برنتفورد را نشان می‌دهد که شامل مبلغی می‌شود که برنتفورد برای بازیکن پرداخته و مبلغی که در ازای فروش آنها دریافت نموده است. در این عملیات همان‌طور که نشان داده شده 12.5M پوند برای بازیکنان پرداخته و 109.2M پوند هنگام انتقال آنها دریافت کرده است که سود ناخالص سرمایه  96.7M میلیون پوند می‌باشد.

بر طبق کتاب فلسفه‌ی امید گل، موفقیت آنها در بازار نقل و انتقالات به برنتفورد این امکان را داد تا با وجود بودجه‌ی دستمزد کمتر از 15 میلیون پوند [60 درصد کمتر از میانگین لیگ (39 میلیون پوند) ] در لیگ قهرمانان انگلیس با موفقیت رقابت کند.

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

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

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

در سال ۲۰۱۰ باشگاه لیورپول توسط کمپانی آمریکایی Fenway Sports Group(FSG)، از صاحبان تیم بیسبال Boston Red Sox، خریداری شد.  در سال 2002 با اشتیاق به سابرمتریکس (sabermatics)، تیم ردساکس (red sox) برای به خدمت گرفتن بیلی بین (Billy Bean) تلاش کرد ولی او با رد این پیشنهاد ترجیح داد که در Oakland athletics بماند. پس در عوض red sox به بیل جیمز (Bill James) به‌عنوان یکی از پیشگامان سابرمتریکس، برای مشاور ویژه‌ی باشگاه مراجعه کرد.

اصطلاح سابرمتریکس توسط خود بیل جیمز ابداع شد که در این اصطلاح واژه‌ی saber را از مخفف (society for American baseball research) (انجمن تحقیقات بیسبال امریکا) که در سال ۱۹۷۱تاسیس شد، بدست آورد.

ردساکس برای 84 سال موفق به بردن سری جهانی (World Series) نشده بود و ظاهراً آنها به نفرین بامبینو (bambino)* (شرحی از نفرین بامبینو را در پاورقی خواهید دید) دچار شده بودند. دو سال پس از ورود ردساکس، Fenway توانست نفرین را بشکند و به یکی از بهترین تیم‌های تاریخ بیسبال تبدیل شود. در سال‌های ۲۰۰۷،۲۰۱۳ و ۲۰۱۸ بار دیگر سری جهانی را آن خود کند.

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

مایکل ادواردز که توسط کومولی به عنوان سرپرست بخش عملکرد و آنالیز معرفی شد، در نوامبر ۲۰۱۶ به عنوان اولین مدیر لیورپول منصوب گردید. به همراه سرپرست استخدام و سرپرست استعدادیابی تیم تحقیقات ۴ نفره به سرپرستی یان گراهام (Ian Graham) و دفید استیل (Dafydd Steele) شروع به کار کردند. این تیم واقعاً تیم رویایی آنالیز فوتبال می‌باشند.

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

خریدهای محمد صلاح ،آلیسون، و ویرجیل وندایک در آن زمان بسیار گران به نظر می‌رسید. در عوض ارزش این بازیکنان از زمانی که لیورپول آنها را خریداری کرده است به‌طور قابل ملاحظه‌ای افزایش یافته است. در جدول زیر مهمترین خریدهای لیورپول ( بالاتر از ۱۰ میلیون) از سال ۲۰۱۷/۲۰۱۶ ( اولین فصل کامل ادواردز به عنوان مدیر ورزشی) را آورده‌ایم و آن را با درآمد فروش یا ارزش فصلی آنها مقایسه می‌کنیم.

پس فرمول مخفی که لیورپول و برنتفورد استفاده می‌کنند چیست؟

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

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

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

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

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

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

 

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

 

 

متفاوت‌ترین کارگاه آموزشی علم داده در ایران

 

 

متفاوت‌ترین کارگاه آموزشی علم داده در ایران

 

«مدیریت پروژه‌های علم داده»

 

فروش، ارائه و نگهداری از مدل‌های داده محور. 


 

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

 

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

 

برای ثبت‌نام اینجا کلیک کنید
 

خاص‌ترین کتاب علم داده همراه با دانلود رایگان

 

خاص‌ترین کتاب علم داده!

کتاب حاضر (Common Data Sense for Professionals) که در سال ۲۰۲۱ به چاپ رسیده و تنها 123 صفحه دارد، به عقیده‌ی بنده، خاص‌ترین کتاب علم داده است. علت این نام‌گذاری هم بخاطر نوع منحصر بفرد انتقال مطلب و آموزش می‌باشد. جیم، یک کارمند رستوران زنجیره‌ای (فرضی) در آمریکا در محیط کار با چالش‌هایی مواجه می‌شود. او راهنمایی (منتور) دارد بنام مانجو. تمام کتاب مکالمات و گفتگوی بین جیم و مانجو در جهت رفع این مشکل خاص است.


داستان کتاب دقیقاً چیست؟

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

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

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

 

اما مشکل چگونه رفع می‌گردد؟

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

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

یک نکته‌ در خصوص مطالعه!

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

 

دانلود این کتاب ارزشمند!

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

 

 

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

 

 

 

آنالیز مصرف انرژی در مدارس با استفاده از یادگیری ماشین

 

 

 

 

 

 

در این سال من با گروهی از معلمان در دبیرستان ویمبلدون (Wimbledon) کار کرده بودم و برای شروع هوش مصنوعی (AI) سعی کردم به دانش آموزان دبیرستانی علم داده و همچنین مهارت‌های یادگیری ماشین را با استفاده از تجزیه و تحلیل کردن داده‌های واقعی آموزش بدم. ما روی مسائل تغییرات آب و هوایی تمرکز کردیم و علاوه بر این به توان مصرفی مدارس نگاه ویژه‌ای داشته‌ایم. در واقع، قصد داشتیم یک آنالیز از مصرف انرژی در مدارس با استفاده از یادگیری ماشین را انجام دهیم.

افراد روی سه منبع مختلف داده برای بررسی توان مصرفی مدرسه کار کردند:

     1. داده‌های انرژی مصرفی مدرسه که از برنامه‌ی Energy Sparks جمع آوری شده بودند.

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

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

 

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

 


 

یافته‌های ما:

داده‌ها را با استفاده از کگل تجزیه و تحلیل کردیم

1. استفاده از انرژی در مدارس بالا است حتی زمانی‌که مدارس بسته هستند

با توجه به نمودار زیر کمترین مقدار مصرف انرژی مدرسه حدود 20kW/h می‌باشد  که اوج مصرف انرژی روزانه اغلب به حدود 120kW/h~ می‌رسد. در مقابل بیشینه‌ی انرژِی که برای خانواده‌ها در لندن مصرف می‌شود 5kW/h است.

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

 


مصرف انرژی مدرسه در 3 سال

 

 

                                                                       مصرف انرژی 3 خانوار در لندن

 

2مصرف انرژی بطور واضح و شفاف روند‌های زمانی را نشان می‌دهد

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

 

 

 

3. ابزار مدل‌سازی سری زمانی فیسبوک برخی از این روند‌ها را ثبت کرده است

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

 

 

 

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

 

4. وارد کردن فرا داده‌های بیشتر باعث بهبود پیش‌بینی‌ها می‌شود

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

شکل سمت چپ پیش بینی‌ها را با مدل اصلی (اورجینال) نشان می‌دهد و شکل سمت راست مدلی است که تغییراتی روی آن اعمال کردیم.

 

5. تمام منابع داده دارای نقص بودند

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

 


 

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

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

 

 


 

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

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

 

 

داده‌های حرکت که خطوط آبی رنگ هستند در مقابل مصرفی انرژی (خطوط قرمز) برای یک مدت رسم شده‌اند

 

جمع بندی:

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

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

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

 

 

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

 

همچنین برای مطالعه‌ی مقالات و دوره‌های علم داده اینجا کلیک کنید

 

منبع:

Analyzing Power Usage in Schools with Machine Learning