آموزش Google Colab برای دانشمندان داده چقدر لازم است؟ چه از علاقهمندان به علم داده باشید یا به دنبال شروع کار در این حوزه باشید، چه یک دانشمند داده با سالها تجربه باشید، کار روی یک پروژه علم داده (Data Science) همیشه هیجانانگیز است؛ بااینحال راهاندازی محیط کاری، نصب پکیجهای موردنیاز، ذخیرهسازی ایمن همه فایلهای پروژه و غلبه بر محدودیتهای محاسباتی دستگاه شما اغلب میتواند چالشبرانگیز باشد. در این مطلب خواهید آموخت که چگونه Google Colab میتواند به سادهسازی و افزایش جریان کار علم داده شما کمک کند.
- 1. گوگل کولب (Google Colab) چیست؟
- 2. آموزش Google Colab برای دانشمندان داده
- 3. چرا باید از Google Colab استفاده کنید؟
- 4. کار با دادهها از منابع مختلف
- 5. شبیهسازی (Cloning) یک Repository GitHub در Colab
- 6. واکشی (Fetching) دادههای ریموت
- 7. ذخیرهسازی خودکار و کنترل نسخه
- 8. دسترسی به شتابدهندههای سخت افزاری کامپیوتر مانند GPU و TPU
- 9. جمعبندی آموزش Google Colab برای دانشمندان داده
گوگل کولب (Google Colab) چیست؟
Google Colab یک محیط نوتبوک Jupyter مبتنی بر ابر از Google Research است. Colab با رابط کاربری ساده و کاربردی خود به شما کمک میکند تا سفر علم داده خود را تقریباً بدون راهاندازی چیز خاصی شروع کنید. اگر به علم داده با پایتون (Python) علاقه دارید، Colab مکانی عالی برای شروع پروژههای علم داده خود بدون نگرانی درمورد پیکربندی محیط است. Google Colab نوشتن و اجرای کد پایتون را مستقیماً از مرورگر شما امکانپذیر میکند و همچنین برخی از محبوبترین کتابخانههای علم داده پایتون ازپیشنصبشده را دارد. در بخشهای بعدی با ویژگیهای Google Colab بیشتر آشنا میشوید.
آموزش Google Colab برای دانشمندان داده
بهترین راه برای درک چیزی این است که خودتان آن را امتحان کنید. بیایید با ایجاد اولین نوت بوک colab خود شروع کنیم:
به colab.research.google.com بروید. صفحه زیر را خواهید دید. برای اینکه بتوانید کد بنویسید و آن را اجرا کنید، باید با حساب گوگل خود وارد شوید. این تنها مرحلهای است که انجامدادنش از سمت شما لازم است؛ هیچ پیکربندی دیگری موردنیاز نیست.
هنگامی که به Colab وارد شدید، میتوانید با کلیک بر روی «File» → «New notebook» یک نوتبوک جدید ایجاد کنید، دقیقاً بههمان شکلی که در زیر نشان داده شده است:
پس از ایجاد یک نوتبوک جدید، میتوانید نام نوتبوک را به نام دلخواه خود تغییر دهید. شما اکنون آماده هستید تا مسیر خود را در پروژه کدنویسی آغاز کنید.
Google Colab یک محیط مستقل است. همانطور که در زیر نشان داده شده است، گوگل کولب به شما امکان میدهد تا کد پایتون و همچنین متن را با استفاده از Cells Markdown بنویسید. این موضوع به اضافهکردن دستورعملها برای پیشبرد گامبهگام پروژه کمک میکند و درنتیجه، خوانایی را بهبود میبخشد.
اکنون که نحوه ایجاد یک نوتبوک کولب را یاد گرفتید؛ در بخشهای بعدی به مزایای آن میپردازیم.
چرا باید از Google Colab استفاده کنید؟
جدا از اینکه گوگل کولب یک محیط مبتنی بر مرورگر است که به ورود ساده گوگل نیاز دارد، Colab چندین ویژگی مفید دارد که آن را برای جامعه علم داده مفید میکند. در زیر برخی از مزایای آن ذکر شده است:
- کتابخانههای علوم داده ازپیشنصبشده
- بهاشتراکگذاری و همکاری آسان
- ادغام یکپارچه با GitHub
- کار با دادهها از منابع مختلف
- ذخیرهسازی خودکار و کنترل نسخه
- دسترسی به شتابدهندههای سختافزاری مانند GPU و TPU
در ادامه در مورد هر یک از مزیتها و فیچرهای گوگل کولب توضیح خواهیم داد.
پیشنهاد میکنیم درباره ۱۰ IDE و ویرایشگر کد برتر پایتون هم مطالعه کنید.
کتابخانههای علم داده ازپیشنصبشده
کتابخانههای ازپیشنصبشده یکی از دلایلی است که Colab یک انتخاب محبوب برای راهاندازی پروژه علم داده شما محسوب میشود. Colab کتابخانههای ازپیشنصبشده پایتون برای تجزیهوتحلیل و تجسم دادهها را دارد، مانند NumPy، Pandas، matplotlib و seaborn؛ این بهآن معنی است که میتوانید مستقیماً آنها را به پروژه فعلی خود وارد کنید و از هر یک از ماژولها، در صورت نیاز، بدون نیاز به نصب آنها استفاده کنید.
همانطور که میدانید، این کتابخانهها برای اکثر پروژههای تجزیهوتحلیل داده و برای تکمیل موفقیتآمیز مرحلههای پیشپردازش داده و تجزیهوتحلیل دادههای اکتشافی (EDA) در پایپلاین یادگیری ماشین (ML) برای پروژههای بزرگ کافی هستند.
علاوهبراین، Colab کتابخانههای یادگیری ماشین ازپیشنصبشده دارد، ازجمله کتابخانه scikit-learn و کتابخانههای یادگیری عمیق، مانند PyTorch، TensorFlow و Keras؛ بههمین خاطر، در کولب امکان ساخت پروژههای یادگیری ماشین و یادگیری عمیق بدون نیاز به نصب وجود دارد. تنها چیزی که نیاز دارید دسترسی به یک مرورگر است و بعد از آن میتوانید پروژه خود را در چند دقیقه راهاندازی کنید.
کار روی یک پروژه بهصورت گروهی یک تجربه یادگیری عالی است. در بخش بعدی یاد خواهید گرفت که چگونه Colab همکاری را تسهیل میکند.
بهاشتراکگذاری و همکاری آسان
کار در محیط نوتبوک Jupyter در دستگاه محلی شما محدودیتهایی در همکاری با دیگران دارد؛ بااینحال با Colab میتوانید نوتبوک خود را به اشتراک بگذارید و بهطور مشترک روی آن با دوستان و همکاران خود کار کنید. همانطور که در تصویر زیر نشان داده شده است، میتوانید اشتراکگذاری را در یک مرحله آسان فعال کنید.
ادغام یکپارچه با GitHub
بهعنوان یک توسعهدهنده، همیشه از GitHub برای پیگیری تغییرات فایلهای مختلف پروژه خود استفاده میکنید و ادغام آن با Colab تنها میتواند اوضاع را بهتر کند.
بیایید ببینیم چگونه میتوانید نوتبوکهای خود را در مخازن (Repositories) GitHub ذخیره کنید.
ذخیره نوتبوکهای Colab در GitHub
برای ذخیره نوتبوک خود در یک Repository GitHub، به ‘File’ → ‘Save a copy in GitHub’ بروید.
سپس از شما خواسته میشود که Colab را مجاز کنید. این مجوز برای Colab لازم است تا بتواند commit ها را به Repository شما منتقل کند.
سپس باید دسترسی را به دنبال درخواستهای روی صفحه تأیید کنید.
پس از موفقیتآمیزبودن مجوز، پنجره زیر باید بر روی صفحه نمایش شما ظاهر شود:
در تصویر بالا:
- «نام کاربری» (username) و «نام مخزن» (name of the repo) لازم است. شما نام کاربری GitHub خود را میبینید و میتوانید ا Repository ی را که میخواهید نوتبوک فعلی را در آن قرار دهید به عنوان ” Name of the repo” انتخاب کنید.
- شاخه (Branch) پیشفرض شاخه اصلی Repository انتخابی است، اما شما میتوانید هر شاخهای را که میخواهید انتخاب کنید؛ همچنین میتوانید مسیر فایل را در صورت نیاز شخصیسازی کنید.
در نهایت، یک پیام commit خوب بنویسید و روی «Ok» کلیک کنید، commit شما اکنون به Repository انتخابی GitHub منتقل میشود.
بهاین ترتیب، میتوانید تمامی نوتبوکهای Colab خود را به مخازن GitHub منتقل کنید؛ همچنین این امر انتشار دانش و رونق پروژههای منبع باز را تسهیل میکند.
کار با دادهها از منابع مختلف
یکی از نکاتی که باید در آموزش Google Colab برای دانشمندان داده بدانید این است که در هر پروژه علم داده باید با واردکردن مجموعه داده در محیط کاری خود شروع کنید. در این بخش با روشهای مختلفی که میتوانید این کار را در Google Colab انجام دهید آشنا خواهید شد.
بارگیری (load) دادهها از دستگاه محلی شما
برای آپلود فایلهای حاوی داده از دستگاه محلی خود مطابق شکل زیر روی آیکون File upload در تب «Files» کلیک کنید و فایلی را که میخواهید آپلود کنید انتخاب کنید.
نصب (Mounting) Google Drive در Colab
اگر ترجیح میدهید همه فایلهای خود را در Google Drive ذخیره کنید، میتوانید بهراحتی آن را روی نوتبوک فعلی Colab نصب کنید. این به شما امکان میدهد به تمامی مجموعه دادهها و فایلهای ذخیرهشده در درایو خود دسترسی داشته باشید.
چند راه وجود دارد که میتوانید این کار را انجام دهید:
میتوانید روی آیکون «Drive» در تب «Files» کلیک کنید و اعلانهای روی صفحه را دنبال کنید.
پس از اینکه درایو شما با موفقیت نصب شد، باید بتوانید پوشه «drive» را که بهعنوان یک فهرست موجود در برگه «Files» فهرست شده است مشاهده کنید.
برای نصب Drive Google خود به نمونه کنونی Colab میتوانید خطوط کد زیر را در یک سلول کد در نوتبوک خود اجرا کنید:
from google.colab import drive
drive.mount(‘content/drive’)
از شما خواسته میشود اجازه دسترسی بدهید. گزینه «Connect to Google Drive» را انتخاب کنید. مانند روش قبلی، باید بتوانید پوشه «Drive» فهرستشده در برگه «Files» را مشاهده کنید.
پیشنهاد میکنیم درباره پرکاربردترین کتابخانههای پایتون هم مطالعه کنید.
شبیهسازی (Cloning) یک Repository GitHub در Colab
اگر به دسترسی به تمامی فایلهای موجود در یک Repository GitHub خاص نیاز دارید، میتوانید آن را بهصورت زیر در فضای کاری فعلی خود کلون کنید:
اجرای کد زیر به شما این امکان را میدهد که هر Repository ریموت GitHub را کلون کنید. کافی است بهسادگی URL مدنظر را جایگزین کنید:
!git clone <URL of the repo>
واکشی (Fetching) دادههای ریموت
گاهی ممکن است لازم باشد مجموعه داده خود را از وب Fetch کنید. نحوه انجامدادن این کار بهاین صورت است:
همانطور که میتوانید دستورهای shell معمول را در محیط نوتبوک اجرا کنید، میتوانید از دستور «wget» برای fetch کردن دادههای ریموت با مشخصکردن URL آنها استفاده کنید.
اکنون بیایید سعی کنیم مجموعه داده مسکن بوستون (Boston housing dataset) را که بسیار معروف است و معمولاً در دورههای آموزشی از آن استفاده میشود Fetch کنیم. مجموعه داده را میتوان در این URL پیدا کرد و تصویر زیر نشان میدهد که چگونه میتوانید با موفقیت آن را بازیابی کنید:
ذخیرهسازی خودکار و کنترل نسخه
آیا تابهحال برای بازیابی فایلهای ازدسترفته در پروژه خود مشکل داشتهاید؟ با Colab ازدستدادن فایلهای پروژه شما مشکلی نیست؛ زیرا همه نوتبوکها بهطور خودکار در Drive Google حسابی که با آن وارد شدهاید ذخیره میشوند. حتی زمانی که با دوستان و همکاران خود در پروژهای همکاری میکنید، میتوانید با جستوجو در تاریخچه ویرایش، تمامی تغییرات ایجادشده در نوتبوک را در طول زمان پیگیری کنید. به «History Revision» → «File» بروید؛ میتوانید تغییرات و زمان ایجاد یک تغییر خاص را مشاهده کنید. در این شکل نمونهای از History Revision آمده است:
دسترسی به شتابدهندههای سخت افزاری کامپیوتر مانند GPU و TPU
در اغلب موارد مشخصات سیستم محلی شما و محدودیتهای قدرت پردازش آن میتواند نگرانی ایجاد کند، بهخصوص هنگام کار با مدلهای یادگیری عمیق بزرگ. برای غلبه بر این محدودیتهای سختافزاری، Colab دسترسی به شتابدهندههای سختافزار ـ واحد پردازش گرافیک (GPU) و واحد پردازش تنسور (TPU) را برای آموزش سریعتر مدلهای یادگیری عمیق فراهم میکند. شکلهای زیر نشان میدهند که چگونه میتوانید استفاده از پردازندههای گرافیکی را در نوتبوک Colab فعال کنید. این کار را میتوان در دو مرحله ساده انجام داد.
به «Change runtime type» → «Runtime» بروید.
شتابدهنده سختافزار را در صورت نیاز روی GPU یا TPU تنظیم کنید
جمعبندی آموزش Google Colab برای دانشمندان داده
در این مطلب به آموزش Google Colab برای دانشمندان داده پرداختیم و با ویژگیهای مفید Google Colab از دیدگاه علمداده آشنا شدید؛ درواقع میتوان گفت محیط Google Colab برای تمامی افرادی که بهتازگی وارد علمداده شدهاند و میخواهند شروع به یادگیری کنند گزینه بسیار مناسبی محسوب میشود. ما نیز در دورههای علمداده کافهتدریس کار در این محیط را آموزش داده و استفاده از همین محیط را برای یادگیری پیشنهاد میکنیم.
برای آشنایی با کلاسهای آنلاین علم داده کافهتدریس روی این لینک کلیک کنید: