گوگل کولب، محیطی ابری است که در آن میتوانید به زبان پایتون کدنویسی کرده و برنامههای خود را توسعه دهید. این ابزار بهراحتی از طریق مرورگر قابل استفاده است و برای بهرهمندی از آن نیازی به دانلود و نصب برنامه خاصی روی سیستم خود ندارید. در این مطلب از مجله فرادرس، سعی بر این است تا به زبانی ساده و تا حد ممکن بهطور کامل به شما بگوییم که گوگل کولب چیست، برای چه منظوری استفاده میشود و نحو کار با آن چگونه است.
گوگل کولب را میتوانید محیطی شبیه به ژوپیتر نوتبوک در نظر بگیرید که به صورت ابری ارائه شده است و به گوگلدرایو شما متصل است. درصورتیکه از قبل با ژوپیتر نوتبوک آشنایی ندارید، باید بگوییم که این پلتفرم یک وباپلیکیشن اوپن سورس است که به شما بهعنوان یک برنامهنویس یا دیتا ساینتیست امکان میدهد تا اسناد کدنویسی یا همان نوتبوکهایی را ایجاد کنید که شامل کد، متن یا سایر عناصر چندرسانهای باشند. در این پلتفرم شما میتوانید سلولهای متعدد و گوناگونی را ایجاد کرده و کدهای خود را درون آن نوشته و پس از اجرا، نتیجه آن را در خروجی پایین سلول مشاهده کنید. این سلولها افزون بر کدهای برنامهنویسی میتوانند شامل متن معمولی هم باشند که در این صورت، توضیحات بیشتری را در مورد پروژه یا کدهای نوشته شده به مخاطب منتقل میکنند.
فایلها یا همان نوتبوکهایی که در گوگل کولب ایجاد میکنید را میتوانید بهراحتی و مانند اسناد گوگلداک، از طریق گوگلدرایو با دیگر برنامهنویسان به اشتراک بگذارید. این امکان نیز وجود دارد که نسخهای از نوتبوک خود را بهطور مستقیم به گیتهاب خود منتقل کنید. در این حالت، وجود سلولهای متنی که توضیحاتی را در مورد کدها ارائه میدهند میتوانند برای اطلاع دیگران از کدها و کاری که انجام دادهایم بسیار مفید باشد. این سلولها میتوانند متن و توضیحات ما را با استایلهای خاصی نمایش دهند. بهطور مثال، میتوان از تیترها، فرمولها، فهرستها و سایر عناصر بصری نظیر عکسها، نمودارها و غیره در آنها استفاده کرد. در این نوشتار، علاوه بر معرفی گوگلکولب، با رابط کاربری آن نیز آشنا میشوید و همچنین، یاد میگیرید که کدهای پایتون خود را در سلولهای کد آن نوشته و خروجی را مشاهده کنید. سلول متنی نیز مؤلفه دیگری است که در این مطلب به آن اشاره کردهایم. در ادامه و پس از بیان مزیتها و معایب این پلتفرم، گوگلکولب را با ژوپیتر مقایسه کردهایم و نقاط قوت هر یک را توضیح دادهایم.
گوگل کولب چیست؟
گوگل کولب، محیطی آنلاین برای برنامهنویسی است که بهراحتی در مرورگر شما اجرا شده و میتوانید به زبان پایتون در آن برنامهنویسی کنید. این ابزار همچنین، یک سرویس ابری و رایگان محسوب میشود که با داشتن یک اکانت جیمیل میتوان به آن دسترسی پیدا کرد و از قابلیتهای آن بهرهمند شد.
Google Colab با نام کامل «Google Colaboratory»، یک محیط کدنویسی تعاملی را در اختیار شما قرار میدهد تا بتوانید کدهای پایتونی خود را در آن نوشته و اجرا کنید. همچنین خوب است بدانید که استفاده از این ابزار، رایگان است و میتوانید بهراحتی برنامهنویسی را با آن شروع کنید. بهکارگیری این ابزار بین برنامهنویسان علم داده و هوش مصنوعی بسیار رایج است. برای بهرهمندی از این پلتفرم نیازی نیست تا برنامهای را روی کامپیوتر خود نصب کنید و با داشتن یک مرورگر وب امکان استفاده از امکانات و قابلیتهای آن وجود دارد.
گوگل Colab، امکان استفاده رایگان سختافزار پردازشی GPU را نیز در اختیار کاربران خود قرار میدهد و بهدلیل امکان پردازش موازی که از این طریق فراهم میشود، میتوانید مدلهای دیپلرنینگ خود را بهینهتر آموزش دهید.
برای استفاده از Google Colab، فرایند راهاندازی سخت و پیچیدهای در پیش ندارید و همه چیز در مرورگر وب شما اجرا میشود. همچنین با توجه به اینکه این پلتفرم، یک سیستم ابری است، پردازشهای لازم نیز روی سرور انجام شده و بدون نگرانی از مشخصات سختافزاری سیستم کامپیوتری خود میتوانید برنامههای علم داده، هوش مصنوعی، ماشینلرنینگ و سایر حوزهها را بنویسید و اجرا کنید.
نوتبوکهایی که در گوگل کولب میسازید بهشکلی ذخیره میشوند که توسط سایر پلتفرمهای مشابه نظیر «ژوپیتر نوتبوک» و «ژوپیترلب» نیز قابل اجرا باشند. بههمین دلیل میتوانید از نوتبوکهای موجود روی اینترنت که برای مقاصد مختلفی نوشته شدهاند نیز برای یادگیری و توسعه برنامههای خود استفاده کنید.
نحوه استفاده از گوگل کولب چگونه است؟
برای ورود به پلتفرم گوگل کولب کافی است تا وارد وبسایت آن شوید. همچنین میتوانید نام آن را به انگلیسی در گوگل سرچ کنید. در ادامه، لینک مربوط به سایت این ابزار را آوردهایم.
- لینک ورود به سایت گوگل کولب: «+»
توجه داشته باشید که این ابزار ممکن است با IP برخی کشورها باز نشود. در این حالت میتوانید از روشهای مربوطه برای تغییر آیپی استفاده کنید.
باز کردن نوت بوک موجود
پس از ورود به وبسایت Google Colab، دو دکمه پیش روی شما قرار میگیرد که هر یک را در ادامه توضیح دادهایم.
- Open Colab: برای ورود به محیط گوگل کولب، روی این دکمه کلیک کنید.
- New Notebook: اگر بخواهید بهطور مستقیم پروژه جدیدی را در گوگل کولب شروع کنید، روی این دکمه میبایست کلیک کنید.
با انتخاب Open Colab، با صفحهای مشابه آنچه که در ادامه آوردهایم رو به رو خواهید شد. توجه داشته باشید، در صورتیکه پیغام مربوط به Sign-in نشان داده شد میبایست اطلاعات جیمیل خود را وارد کنید تا عمل ورود به این پلتفرم با موفقیت انجام شود و بتوانید از امکانات آن بهرهمند شوید.
در سمت چپ این پنجره، روشهایی برای دسترسی به نوتبوکهای موجود مشاهده میکنید که در ادامه، توضیح دادهایم.
- Recent: این زبانه که بهطور پیشفرض نشان داده میشود، فهرست نوتبوکهایی که به تازگی باز کردهاید را نمایش میدهد.
- Examples: این زبانه شامل نوتبوکهای متعددی است که قابلیتهای گوناگون کولب را توضیح داده و مثال زدهاند. با انتخاب این زبانه، فهرستی از نوتبوکها نمایش داده میشود که با انتخاب هر کدام، نوتبوک مورد نظر باز میشود.
- Google Drive: فایلهای نوتبوک گوگل کولب روی گوگلدرایو ذخیره میشوند که در این زبانه میتوانید به آنها دسترسی داشته باشید.
- Github: شما میتوانید از پروژهها و نوتبوکهای موجود روی گیتهاب نیز استفاده کنید. برای باز کردن نوتبوک مورد نظر کافی است تا آدرس ریپوزیتوری گیتهاب را در کادر مربوطه وارد کنید تا فهرستی از نوتبوکهای موجود در آن به شما نشان داده شود.
- Upload: ممکن است نوتبوکی را با سایر پلتفرمها ایجاد کرده باشید یا اینکه نوتبوک گوگل کولب را روی سیستم خود ذخیره کرده باشید. در هر حال، برای باز کردن نوتبوکی که روی کامپیوتر شما وجود دارد میتوانید از این زبانه اقدام کرده و روی Browse کلیک کنید. سپس فایل نوتبوک با فرمت .ipynb
را از روی هارد خود انتخاب کرده و آپلود کنید.
ایجاد نوت بوک جدید
در صورتی که قصد ایجاد نوتبوک جدیدی را دارید میتوانید از پایین این پنجره روی دکمه آبیرنگ + New notebook
کلیک کنید تا نوتبوک جدید شبیه به آنچه که در تصویر زیر مشاهده میکنید برایتان باز شود.
شما همچنین، هر زمانی که بخواهید میتوانید از طریق منوی File و گزینه New notebook نیز نوتبوک جدیدی را ایجاد کنید.
نحوه تغییر نام نوت بوک
هنگامیکه نوتبوک جدیدی را ایجاد میکنید نام پیشفرضی شبیه به Untitled.ipynb
به آن نسبت داده میشود. این نام در بالا و سمت چپ محیط گوگل کولب نشان داده میشود. برای تغییر نام یک نوتبوک به نام دلخواه، کافی است تا از منوی File گزینه Rename را انتخاب کنید تا نام نوتبوک به حالت ویرایش درآید. اکنون میتوانید نام دلخواه خود را وارد کرده و در آخر، کلید Enter را از روی کیبرد بفشارید.
نحوه ذخیره و دانلود و تکثیر نوت بوک
برای ذخیره نوتبوک فعلی میتوانید از منوی File گزینه Save را انتخاب کنید یا اینکه دکمههای ترکیبی Ctrl+S
را از روی کیبرد بفشارید.
با استفاده از گزینههای Save a copy نیز میتوانید یک نسخه کپی از نوتبوک فعلی در گوگلدرایو یا گیتهاب ایجاد کنید.
همچنین اگر قصد دانلود فایل نوتبوک روی کامپیوتر خود را دارید کافی است تا وارد زیرمنوی Download شده و نوتبوک کنونی را با فرمتهای .ipynb
یا .py
دانلود کنید. فایلی که بهصورت .ipynb
دانلود شود ساختار نوکبوک را به لحاظ سلولها حفظ کرده و توسط سایر پلتفرمهای پشتیبانیکننده از نوتبوک مانند ژوپیتر نوتبوک قابل اجرا است.
یادگیری پایتون با فرادرس چگونه است؟
در صورتیکه قصد یادگیری مهارت جدیدی را داشته باشید، راههای متعددی مانند شرکت در کلاسهای حضوری، دورههای آنلاین، دنبال کردن وبسایتهای آموزشی و تماشای آموزشها در پلتفرمهایی نظیر یوتیوب، مطالعه کتب آموزشی و غیره پیشِ روی شما قرار دارد. هر یک از این روشها مزایا و معایب خود را دارند. در این میان، تماشای فیلمهای آموزشی یکی از شیوههای مدرن و مؤثر در یادگیری مهارتهای جدید بهشمار میروند و فارغ از اینکه موقعیت جغرافیایی شما کجاست، چه ساعاتی میخواهید از آموزشها استفاده کنید و سایر شرایطی که دارید، این آموزشها شما را در مسیر یادگیری مهارت مورد نظرتان تنها نمیگذارند.
فرادرس بهعنوان یکی از بهترین پلتفرمهای آموزشی کشور برای یادگیری مهارتهای گوناگون، فیلم آموزشی با کیفیت بالا منتشر کرده است. در ادامه فیلمهای آموزشی مقدماتی تا پیشرفته برنامهنویسی پایتون از فرادرس را آوردهایم. فرقی نمیکند ابتدای این راه هستید یا اینکه بهعنوان یک برنامهنویس بخواهید گام بعدی را برای یادگیری پایتون به عنوان زبان برنامه نویسی گوگل کولب بردارید. در هر حال، فیلمهای آموزشی متنوع و رایگان وغیررایگان فرادرس در این حوزه، نیازهای شما را رفع خواهند کرد.
در ادامه، عناوین برخی از این فیلمهای آموزشی را آوردهایم.
و بسیاری فیلم آموزشی دیگر که جنبههای گوناگون برنامهنویسی پایتون را پوشش میدهند و در محیط گوگل کولب نیز قابل اجرا هستند.
نحوه کدنویسی و اجرای کدها در گوگل کولب چگونه است؟
برای شروع کدنویسی و توسعه برنامههای خود در گوگل کولب میبایست ابتدا از متصل بودن به سرور و رانتایم پایتون مطمئن شوید. برای این منظور، اگر در سمت راست و بالای محیط گوگلکولب دکمه Connect یا Reconnect را مشاهده کردید باید روی آن کلیک کنید.
فلش قرمرزرنگ در تصویر زیر این مورد را نشان میدهد.
در نهایت و در صورت عدم وجود مشکل میبایست تیک سبزرنگ و شاخصهای RAM و Disk که با فلش سبزرنگ نشان داده شدهاند را ببینید. اکنون میتوانید کدنویسی را شروع کنید.
در هر نوتبوک جدیدی که ایجاد میشود، یک سلول برای کدنویسی نیز وجود دارد که میتوانید کدهای خود را درون آن بنویسید. «محل نوشتن کدها» در تصویر زیر، این مورد را بهخوبی نشان میدهد. سپس میتوانید با اجرای کدها – دکمهای که با فلش قرمز رنگ نشان داده شده است – خروجی کدهای این سلول را در پایین آن که با «خروجی برنامه» نشان داده شده، ببینید.
ایجاد سلول کد
شما میتوانید به هر تعدادی که مایل باشید سلول کد ایجاد کرده و کدهای خود را به صورت جداگانه درون آن نوشته و اجرا کنید. برای ایجاد یک سلول کد، کافی است تا روی دکمه «Code +» کلیک کنید. کلیدهای ترکیبی Ctrl+M B
نیز همین کار را انجام میدهند.
ایجاد سلول متنی
غیر از سلولهای کد، نوع دیگری از سلولها وجود دارند که برای نمایش متون، رسانهها و بهطور کلی عناصر نمایشی بهکار میروند. تصویری که در ادامه آورده شده را در نظر بگیرید.
ناحیه مشخص شده با خطچین سبزرنگ، یک سلول متنی را نشان میدهد. این نوع سلولها را میتوانید با کلیک روی دکمه «Text +» ایجاد کنید. در ادامه، تصویری را آوردهایم که در آن، برخی قابلیتهای موجود در سلول متنی را آزمایش کردهایم. شما میتوانید با گزینههای موجود در نوار ابزار بالای آن، از امکانات مخصوص این نوع سلولها استفاده کنید. پیش نمایش این سلول نیز در سمت راست آن نمایش داده میشود.
برخی از مؤلفههایی که در این نوع سلولها میتوانید درج کنید را در ادامه فهرست کردهایم.
- درج سطوح مختلف تیتر شامل H1 و غیره.
- فهرستهای عددی و غیرعددی
- نوشتههای نقل قول
- نمایش متن بهصورت کد
- لینکها
- تصاویر
- اموجیها
- و بسیاری موارد دیگر که از طریق نوار ابزار قابل دسترسی هستند.
نحوه فعال سازی GPU یا TPU در گوگل کولب چگونه است؟
برای مشخص کردن این مورد که چه نوع سختافزار پردازشی – GPU یا TPU – میبایست کدهایمان را اجرا کند، کافی است تا از سمت راست و بالای محیط گوگلکولب روی «گزینههای اضافی مربوط به اتصال» کلیک کنید تا منوی آن باز شود. سپس «Change runtime type» را انتخاب میکنیم. تصویر زیر این مورد را بهخوبی نشان میدهد.
در پنجره باز شده میتوانید شتابدهندههای سختافزاری موجود را ببینید و مورد دلخواه را از بین آنها انتخاب کنید.
در فهرست مربوط به نوع رانتایم نیز میتوانید زبان پایتون یا R را انتخاب کنید. همچنین از قسمت سختافزار میتوانید CPU (حالت پیشفرض)، GPU یا TPU را انتخاب کنید.
تغییر تنظیمات ظاهری گوگل کولب چگونه است؟
برای ورود به بخش تنظیمات گوگلکولب، کافی است تا از سمت راست و بالای محیط آن روی آیکن چرخدنده یا «Open Setting» کلیک کنید.
در پنجره باز شده میتوانید مواردی مانند آنچه که در ادامه فهرست شده را تنظیم کنید.
- تِم گوگلکولب شامل حالتهای تیره و روشن
- تنظیم «نمایش نوتیفیکیشن هنگام اجرای کدها» و غیره
- تنظیمات مربوط به ادیتور شامل تغییر فونت، اندازه فونت، فواصل بین کاراکترها و غیره
- اتصال به گیتهاب
- و سایر گزینههای قابل تنظیم
نصب و import کردن کتابخانه در گوگل کولب چگونه است
در این قسمت به شما توضیح میدهیم که نحوه نصب و وارد کردن کتابخانهها و فریمورکها در گوگل کولب چگونه است.
برای وارد کردن کتابخانه، ابتدا وارد سلول کد مورد نظر شده و از دستور import
بهشکل زیر استفاده میکنیم.
ابتدا دستور import
را نوشته و پس از آن، نام کتابخانه مورد نظر را مینویسیم. در نهایت روی دکمه اجرا که با فلش قرمزرنگ نشان داده شده، کلیک میکنیم تا سلول جاری اجرا شود. تیک سبزرنگ کنار سلول، اجرای موفقیتآمیز کدها را نشان میدهد. در صورتی که خطایی در این مرحله رخ دهد، مانند نصب نبودن کتابخانه یا غیره، پیغامی مرتبط در خروجی، یعنی در پایین سلول جاری نشان داده میشود.
اگر میخواهید بدانید که کتابخانه مورد نظر شما در حال حاضر روی گوگلکولب نصب است یا خیر و اینکه چه نسخهای از یک کتابخانه در حال حاضر روی سیستم شما وجود دارد، کافی است تا از دستور !pip show بهصورت زیر استفاده کنید.
!pip show tensorflow
بهجای tensorflow
میتوانید نام کتابخانه مورد نظر خود را قرار دهید.
در صورتیکه میخواهید کتابخانه یا فریم ورک را نصب کنید، میبایست از دستور !pip install به شکل زیر استفاده کنید.
!pip install pandas
در این مثال، pandas
نام کتابخانهای است که قصد داریم تا آن را نصب کنیم. خوب است بدانید که بسیاری از کتابخانههای ضروری، از قبل روی گوگلکولب نصب شدهاند. در صورتی که میخواهید نسخه خاصی از یک کتابخانه را نصب کنید. کافی است بهشکل زیر عمل کنید.
!pip install tensorflow==1.2
در این مثال، نسخه 1.2 از tensorflow
را نصب میکنیم.
نکتهای که باید به یاد داشته باشید این است که موارد نصب شده با از بین رفتن جلسه – مانند زمانیکه نوتبوک را میبندیم – از بین میروند و دفعه بعد که این فایل را باز کردید لازم است تا دستور نصب کتابخانهها را نیز دوباره اجرا کنید.
بارگذاری دیتاست در گوگل کولب چگونه است؟
برای اینکه بتوانید دیتاست یا دادههای مورد نیاز پروژههای خود را از گوگلدرایو به درون گوگلکولب ایمپورت کنید چندین راه گفته شده در زیر را پیش رو دارید.
- متصل کردن گوگلدرایو به نوتبوک گوگلکولب
- استفاده از PyDrive
- بهکارگیری REST API
مورد اول را در ادامه، بیشتر توضیح میدهیم.
وارد کردن دیتاست از روی گوگل درایو
برای متصل کردن Google Drive به نوتبوک گوگلکولب کدهای زیر را در یک سلول کد کپی کرده و آن را اجرا کنید.
1from google.colab import drive
2drive.mount('/content/drive')
پس از اجرای این کدها، صفحه ورورد به حساب کاربری گوگل باز میشود تا اکانت خود را انتخاب کنید و به آن وارد شوید. پس از انجام احراز هویت و تأیید اتصال، میتوانید کدهایی که در ادامه آوردهایم را در یک سلول کد کپی کرده و آن را اجرا کنید. با این کار، از اتصال نوتبوک به گوگلدرایو مطمئن خواهید شد. اجرای این مرحله ضروری نیست و تنها به شما نشان میدهد که میتوانید اطلاعاتی را از گوگلدرایو خوانده یا در آن ذخیره کنید.
1with open('/content/drive/My Drive/foo.txt', 'w') as f:
2 f.write('Hello Google Drive!')
3!cat /content/drive/My Drive/foo.txt
4
5drive.flush_and_unmount()
این کدها در واقع یک فایل متنی با محتوای ‘Hello Google Drive!’
را روی درایو شما ایجاد و ذخیره میکند. تصویر آورده شده در زیر، این مورد را نشان میدهد.
دیتاستهای شما زمانیکه روی پروژههای تحلیل داده، هوش مصنوعی یا ماشینلرنینگ و غیره کار میکنید، بهطور معمول بهصورت جدولی هستند و در قالب فایلهایی با فرمت csv یا xlsx ذخیره شدهاند. برای استفاده از این دادهها میبایست آنها را داخل دیتافریمهای پانداس قرار دهید. پس میبایست مراحل زیر را دنبال کنید.
- فایل دیتاست مورد نظر خود را روی گوگلدرایو آپلود کنید.
- درایو خود را با روشی که توضیح دادیم به نوتبوک متصل کنید.
فرض کنید که فایل دیتاست خود بهنام Name.csv
را روی گوگلدرایو آپلود کردهاید. این فایل بهطور معمول در مسیر «”content/drive/MyDrive/Name.csv/”» قرار میگیرد که Name.csv
در واقع همان نام فایل دیتاست شما است. توجه داشته باشید، اگر فایل دادهها را درون فولدر خاصی قرار داده باشید میبایست نام پوشه یا پوشهها را نیز در این آدرس لحاظ کنید. بهطور مثال اگر فایل csv دادههای خود را درون فولدری بهنام myDatasets
آپلود کرده باشید، آنگاه برای دسترسی به آن میبایست از آدرس «’content/drive/MyDrive/myDatasets/Name.csv’» استفاده کنید.
حالا میتوانید کدنویسی مربوط به انتقال دادههای موجود در فایل دیتاست به دیتافریمهای پانداس را شروع کنید. پس یک سلول کد ایجاد کنید و کدهای زیر را به درون آن کپی کنید.
1import pandas as pd
2path = "/content/drive/MyDrive/Name.csv"
3df = pd.read_csv(path)
4df #displays dataframe
توضیح این کدها را در ادامه، آوردهایم.
- ابتدا کتابخانه pandas
را با نام مستعار pd
وارد میکنیم.
- سپس مسیر فایل دادهها را در متغیری بهنام path
قرار دادهایم.
- با استفاده از تابع read_csv()
و پاس دادن مسیر فایل دیتاست به آن، دادهها را بهطور مستقیم درون دیتافریمی بهنام df
قرار دادهایم.
- در خط آخر نیز با آوردن نام دیتافریم، محتوای آن در خروجی نشان داده میشود.
تصویر زیر اجرای این کد را بهخوبی نشان میدهد.
آپلود کردن دیتاست از روی کامپیوتر خود
روش دیگری که برای بارگذاری فایل دیتاست روی گوگلکولب وجود دارد این است که فایل دادههای خود را بهطور مستقیم آپلود کنید. برای این کار میتوانید از کدهای آورده شده در زیر استفاده کنید.
1from google.colab import files
2uploaded = files.upload()
با اجرای این کد، دکمه Choose Files در خروجی سلول نمایش داده میشود که با کلیک روی آن میتوانید فایل دادههای خود را از روی سیستم، انتخاب و آپلود کنید.
همانطور که در تصویر بالا هم مشخص شده است، فایل آپلود شده در شاخه content
قرار گرفته است و برای خواندن و بارگذاری آن در دیتافریم پانداس میتوانید از همین مسیر استفاده کنید. یا اینکه از تابع BytesIO
بهشکل زیر استفاده کرده و دادههای خود را به درون دیتافریم پانداس منتقل کنید. توجه داشته باشید که BytesIO
در ماژول io
قرار دارد.
1import io
2df2 = pd.read_csv(io.BytesIO(uploaded['Name.csv']))
دقت داشته باشید که شما میبایست نام فایل دیتاست خود را بهجای Name.csv
قرار دهید.
چرا از گوگل کولب استفاده کنیم؟
پیش از این اشاره کردهایم که استفاده از پلتفرم گوگل کولب بین مهندسان علم داده، هوش مصنوعی و ماشین لرنینگ رایج است.
اکنون و در ادامه میخواهیم دلایل آن را بگوییم.
- قابلیت دسترسی: برای نوشتن برنامههای مورد نظر خود به خصوص در حوزه هوش مصنوعی و یادگیری عمیق میتوانید از قابلیتهای فراوان و رایگان گوگلکولب مانند شتابدهندههای سخت افزاری GPU و TPU موجود استفاده کنید. بدون این پلتفرم شاید دسترسی به این سختافزارها برای افراد معمولی آسان نباشد.
- استفاده آسان: استفاده از گوگلکولب بسیار آسان است. این پلتفرم شما را از انجام فرایند نصب محیطهای گوناگون برای کدنویسی که سختی یا مشکلات خاص خود را میتوانند داشته باشند، رها میسازد و شما میتوانید بهجای درگیر شدن با این مسائل، فکر و انرژی خود را روی کدنویسی و توسعه پروژه بگذارید. گوگلکولب یک محیط آنلاین و ابری است. به این معنی که از هر جایی و از طریق اینترنت میتوانید به آن دسترسی داشته باشید و برای استفاده از دستگاههای مختلف نیز محدودیتی نخواهید داشت.
- امکانپذیر کردن مشارکت و همکاری: یکی از خصوصیات گوگلکولب این است که امکان مشارکت و همکاری اعضای تیم توسعه را تسهیل میکند. یعنی، شما میتوانید نوتبوکهای گوگلکولب را مانند اسناد گوگل یا همان Goolge Doc-ها، با سایر افراد به اشتراگ بگذارید تا دیگران نیز در مورد آن نظر بدهند یا اینکه نوتبوک شما را ویرایش کنند و کارهای اینچنینی را انجام دهند.
- تلفیق با گوگلدرایو: نوتبوکها و پروژههایی که در گوگل کولب میسازید بهطور خودکار در گوگلدرایو شما ذخیره میشوند. با وجود این قابلیت، احتمال از بین رفتن کدهایتان کاهش پیدا میکند و از این بابت نگرانی نخواهید داشت.
- کتابخانههای آماده: بسیاری از کتابخانههای کاربردی و مفید در زمینههای تخصصی، نظیر کتابخانههای هوش مصنوعی تنسورفلو، پایتورچ، کراس و غیره، از قبل در گوگلکولب تعبیه شدهاند. این قابلیت باعث میشود تا فرایند کدنویسی را سریع شروع کنید و درگیر مسائلی مانند نصب و بهروزرسانی کتابخانهها نشوید.
مزایای گوگل کولب چیست؟
پلتفرم ابری گوگل کولب دارای مزیتهای زیادی است که در ادامه برخی از آنها را بیان کردهایم.
- رایگان بودن: استفاده از امکانات گوگل کولب در حالت عادی، هزینهای ندارد. همچنین اگر قصد دارید تا توان پردازشی و قابلیتهای آن را ارتقا دهید میتوانید از پلنهای پریمیوم استفاده کنید. این پلنها، برخی از محدودیتهای نسخه رایگان را نیز رفع میکنند.
- یادگیری و استفاده آسان: Google Colab محیط چندان پیچیدهای ندارد و به سادگی میتوانید کدهای خود را درون آن نوشته و اجرا کنید. همچنین، با توجه به ابری و آنلاین بودن گوگل کولب، نیازی نیست تا برای اجرای آن کامپیوتر یا سیستمی قوی داشته باشید و تنها، داشتن یک مرورگر برای اجرا این وباپلیکیشن کفایت میکند.
- امکان دسترسی به GPU و TPU: یکی از بهترین خصوصیات گوگل کولب که کدنویسی در آن را برای مهندسان ماشین لرنینگ جذاب میکند، قابلیت استفاده از GPU و TPU است که بهراحتی میتوانید آن را انتخاب کنید.
- امکان به اشتراکگذاری آسان کدها با سایر توسعهدهندگان: شما میتوانید نوتبوکها، کدها و برنامههای خود را از طریق گوگلدرایو، گیتهاب یا از طریق انتقال دستی فایلهای .ipynb
با سایرین به اشتراک بگذارید.
- مصورسازی بی دردسر: گوگل کولب دارای سلولهایی است که میتوانید کدهای خود را درون آن نوشته و اجرا کنید. برخی از این سلولها میتوانند برای نوشتن توضیحات، درج تصاویر و لینک یا غیره بهکار گرفته شوند.
معایب گوگل کولب چیست؟
علیرغم تمامی مزایایی که میتوان برای گوگل کولب متصور شد، این پلتفرم، محدودیتهایی نیز دارد که در ادامه به آنها اشاره کردهایم.
- بهکارگیری GPU و TPU ارائه شده در این پلتفرم، با محدودیتهایی همراه است. بهطور مثال، در حالت رایگان شما میتوانید بهمدت ۱۲ ساعت از این پلتفرم استفاده کنید و پس از آن سیستم یا بهتر بگوییم جلسه، ریست میشود. در حالت Pro این میزان به ۲۴ ساعت میرسد. البته این مدتزمان برای استفاده مداوم از سیستم است و در صورت بیکار بودن، جلسه شما بسیار زودتر منقضی میشود.
- با هر اجرا و جلسه جدیدی که شروع میکنید، لازم است تا کتابخانهها، فریمورک و موارد اینچنینی را دوباره نصب کنید. در واقع هر مرتبه که نوتبوکی را باز میکنیم لازم است تا وابستگیهای پروژه را بهطور مجدد نصب کنیم.
- با توجه به محدودیتهای گوگل کولب، مدیریت و کار با کلان دادهها در آن مشکل است. هنگامی که بخواهیم روی دیتاستهای بسیار بزرگی کار کنیم بهطور معمول آنها را روی گوگلدرایو خود آپلود میکنیم. با توجه به محدودی ۱۵ گیگابایتی فضای ذخیرهسازی گوگلدرایو، جایدادن و مدیریت اینگونه دادههای حجیم و کلاندادهها شاید غیر ممکن باشد.
- دیباگ برنامه در محیط تعاملی و نوتبوک گوگل کولب راحت نیست.
- GPU و TPU فراهم شده در این سیستم، بهترین و قویترین سختافزارهای موجود در بازار نیستند. نسخههای رایگان و Pro گوگل کولب امکان استفاده از GPU-هایی بسیار قویتر از آنچه روی کامپیوترهای خود دارید را فراهم میکنند. با این حال، در صورتیکه هزینه بیشتری بخواهید بپردازید گزینههای بهتری هم در دسترس هستند که میتوانید از آنها استفاده کنید.
گوگل کولب چه منابعی را فراهم میکند؟
گوگل کولب، امکانات و منابع زیادی را بهخصوص در زمینه علم داده و یادگیری عمیق برای برنامهنویس فراهم کرده که در ادامه به برخی از آنها اشاره کردهایم.
- کتابخانههاییکه از قبل در این پلتفرم نصب شده و قابل استفاده هستند. تعداد زیادی از کتابخانه معروف و پرطرفدار این حوزه از قبل در گوگلکولب نصب شدهاند و خیلی سریع میتوانید از آنها استفاده کنید بهجای اینکه وقت خود را بابت نصب آنها هدر دهید.
- قابلیتهای همکاری: درست مانند گوگلداک، میتوانید از قابلیتهای اشتراکگذاری و همکاری آنی در نوتبوکها نیز بهرهمند شوید.
- نوتبوکهای آموزشی: شما میتوانید از طریق منوی File و گزینه Open notebook و انتخاب زبانه Examples به نوتبوکهای آموزشی متعددی که توسط گوگلکولب ارائه شده دسترسی داشته باشید. این نوتبوکها مباحث گوناگونی مانند ماشین لرنینگ، مصورسازی دادهها و غیره را در بر میگیرند.
- نمونه کدهای مفید: از نوار کناری سمت چپ رابط گوگلکولب میتوانید به بخش «Code Snippets» دسترسی داشته باشید. در اینجا میتوانید قطعه کدهای مفیدی را در موضوعات مختلف پیدا کرده و به نوتبوک خود اضافه کنید. این مورد میتواند سرعت توسعه برنامه شما را افزایش دهد.
استفاده از گوگل کولب چقدر هزینه دارد؟
شما میتوانید قابلیتهای گوگل کولب بهطور رایگان مورد استفاده قرار دهید اما پلنهای پولی و شرکتی نظیر «پرو»، «پرو پلاس» و «پرداخت به اندازه میزان استفاده» نیز برای این پلتفرم وجود دارد که میزان حافظه و قابلیتهای محاسباتی بیشتری را در قبال دریافت هزینه، در اختیار کاربران میگذارند. از جمله قابلیتهایی که با خرید پلنهای پولی در اختیار کاربران قرار میگیرد میتوان به موارد آورده شده در زیر اشاره کرد.
- توان محاسباتی بیشتر
- ارائه حافظه بیشتر
- ارائه GPU-هایی با سرعت بیشتر
- قابلیت تکمیل خودکار به کمک هوش مصنوعی
- تولید کد با AI
ادامه یادگیری پایتون برای علم داده و هوش مصنوعی با فرادرس
اگر قصد گسترش مهارتهای پایتونی خود در زمینه علوم داده و هوش مصنوعی را دارید، توصیه میشود تا فیلمهای آموزشی فرادرس که در ادامه فهرست کردهایم را مشاهده کنید. کدهای موجود در این فیلمهای آموزش در محیط گوگل کولب نیز قابل پیادهسازی هستند.
پلتفرم های جایگزین گوگل کولب چیست؟
در ادامه عناوین پلتفرمهایی را فهرست کردهایم که میتوانند بهعنوان ابزاری جایگزین برای گوگل کولب محسوب شوند. شما میتوانید با توجه به شرایط خود، مناسبترین مورد را انتخاب کنید.
- Kaggle
- آژور نوتبوکز
- «فلویدهاب» (FloydHub)
- Paperspace Gradient
- Amazon SageMaker
- ژوپیتر نوتبوک را نیز میتوان یکی از پلتفرمهای جایگزین گوگل کولب دانست. در یکی از مطلب پیشین مجله فرادرس، ترفندهای ژوپیتر نوتبوک را در قالب یک راهنمای کاربردی بیان کردهایم.
دانلود گوگل کولب
در این قسمت، ۳ موضوع زیر را توضیح دادهایم.
- دانلود نوتبوک گوگلکولب
- به اشتراکگذاری نوتبوک گوگل کولب
- راهاندازی گوگلکولب بهصورت آفلاین
گاهی اوقات نیاز است تا فایل نوتبوک پروژه خود را با دیگران به اشتراک بگذارید. مانند زمانیکه پروژه دانشگاهی خود را انجام دادهاید و میخواهید آن را برای استادتان ارسال کنید یا هنگامیکه میخواهید فایل نوتبوک خود را درون سایر برنامهها همچون ژوپیتر نوتبوک باز کرده و توسعه بدهید.
دانلود فایل گوگل کولب
برای دانلود فایل پروژه خود در گوگل کولب میتوانید از طریق منوی File و گزینه Download، فرمت فایلی مدنظر خود شامل ipynb
یا py
را انتخاب و فایل کدهای خود را با این فرمتها دانلود کنید. این فرمتهای را پیشتر توضیح دادهایم.
اشتراک گذاری فایل گوگل کولب
برای اینکه بتوانید پروژه گوگل کولب خود را به اشتراک بگذارید میتوانید طبق روش گفته شده فایل آن را دانلود و سپس از طریق روشهای معمول نظیر ایمیل و غیره به اشتراک بگذارید.
روش دیگر این است که به گوگلدرایو خود رفته و از فولدر Colab Notebooks
، فایل نوت بوک مورد نظر را Share کنید. برای این کار، روی فایل مورد نظر راستکلیک کرده و گزینه Share را انتخاب کنید. سپس فرد یا افرادی که میخواهید به فایل نوتبوک شما دسترسی داشته باشند را اضافه کنید. البته در محیط گوگلکولب، سمت راست و بالای صفحه و در کنار عکس پروفایل کاربر نیز دکمه Share وجود دارد که همین کار را انجام میدهد.
اجرای گوگل کولب به صورت محلی
گفتیم که گوگل کولب یکی از پلتفرمهای آنلاین کدنویسی در محیط ژوپیتر نوتبوک است که محبوبیت زیادی بین برنامهنویسان و دانشمندان علم داده دارد تا از طریق آن برنامههای خود را در محیط تعاملی فراهم شده بهصورت رایگان توسعه دهند. این ابزار به دلیل فراهم آوردن ابزارها و کتابخانههای متعدد و همچنین، منابع پردازشی قدرتمند، گزینه بسیار خوبی برای انجام پروژههای مربوط به علم داده، تحلیل داده و یادگیری ماشین محسوب میشود.
گاهی اوقات ممکن است به دلایل گوناگون لازم باشد تا گوگلکولب را بهصورت محلی و آفلاین در سیستم خود اجرا کنید. منظور، مواقعی است که میخواهید روی پروژههای خود بهصورت آفلاین کار کنید، یا اینکه دادههای مورد استفاده شما از حساسیت ویژهای برخوردارند و اشتراکگذاری آنها در محیط ابر خطرناک باشد یا سایر موارد اینچنینی.
برای این کار، لازم است تا مواردی که در ادامه گفته میشود را دنبال کنید.
گام اول: آناکوندا را نصب کنید
اگر جزو طرفدارن علم داده باشید به احتمال زیاد نام Anaconda به گوشتان خورده است. آناکوندا در واقع پلتفرمی است که مواردی همچون یک نسخه از پایتون، مدیر بسته و مدیر «محیط» (Environment) را در یک مکان گردآوری کرده و در اختیار شما قرار میدهد. با استفاده از این پلتفرم میتوانید محیطهای مجازی جداگانهای را برای پروژههای خود ایجاد کرده و وابستگیهای آن شامل بستهها، کتابخانهها و ابزارهای ضروری را مدیریت کنید.
برای نصب آناکوندا، ابتدا به وبسایت آن مراجعه کرده و پس از انتخاب نسخه مناسب برای سیستم عامل کامپیوتر خود، فایل نصبی آن را دانلود کنید. نصب این پلتفرم بسیار آسان است.
- آدرس صفحه دانلود آناکوندا در سایت رسمی آن: «+»
گام دوم: یک محیط جدید بسازید
اکنون که آناکوندا را نصب کردید، توصیه میشود تا محیط جدیدی برای اجرای کولب بسازید. بدینترتیب، ابزارها، بستهها و کتابخانههای لازم برای کولب را در این محیط، نصب و مدیریت میکنید بدون اینکه تداخلی با پایتون و سایر بستههای روی سیستم داشته باشد.
برای ساخت محیط جدید در آناکوندا تنها کافی است تا وارد رابط گرافیکی آن شده، به زبانه Environments بروید و سپس با کلیک روی دکمه Create محیط جدیدی را با نام دلخواه – بهطور مثال، colab – و نسخه مورد نظر از پایتون ایجاد کنید. در این قسمت میتوانید جدیدترین نسخه پایتون را انتخاب کنید. پس از کلیک روی Create میبایست کمی منتظر بمانید تا با نصب کتابخانهها و ابزارهای ضروری، محیط جدید آماده استفاده شود.
گام سوم: ژوپیتر نوتبوک را نصب کنید
ژوپیتر نوتبوک محیطی تعاملی برای کدنویسی، خروجی گرفتن، درج توضیحات، ترسیم نمودارها و مناسبسازی کدها برای ارائه و اشتراکگذاری آن است که بهصورت یک وباپلیکیشن در مرورگر شما اجرا میشود. برای اینکه بتوانید ژوپیتر نوتبوک را از طریق آناکوندا روی سیستم خود نصب کنید، ابتدا وارد رابط گرافیکی آناکوندا شوید. سپس، مطمئن شوید محیط جدیدی که در مرحله قبل ساختهاید، از لیست کشویی موجود، انتخاب شده است. پس از آن، از میان ابزارهای موجود، بهدنبال Jupyter Notebook بگردید و سپس روی دکمه Install کنار آن کلیک کنید. با کمی منتظر ماندن ژوپیتر نوتبوک نصب خواهد شد و میتوانید آن را باز و استفاده کنید.
گام چهارم: گوگل کولب را نصب کنید
تا اینجای کار، محیط مجازی جدید را در آناکوندا ساختهاید و ژوپیتر نوتبوک نیز روی آن نصب شده است. اکنون برای اجرای گوگلکولب لازم است تا بسته colab
را نصب کنید. برای نصب بستهها، کتابخانهها و غیره میتوانید از مدیر بسته pip
استفاده کنید. پس گامهای زیر را دنبال کنید.
- میبایست محیط جدید را فعال کنید تا عملیات نصب روی آن انجام شود. برای اینکار، ابزار خط فرمان را باز کرده و محیط خود را با دستوری که در ادامه آورده شده فعال کنید. در این دستور، <env> به «نام محیط جدید» شما اشاره دارد که میبایست تغییر دهید.
conda activate <env>
- اکنون با اجرای دستور زیر، کولب روی محیط جدید شما نصب خواهد شد.
pip install colab
گام پنجم: گوگل کولب را به صورت آفلاین اجرا کنید
برای اجرای آفلاین گوگلکولب کافی است تا ژوپیتر نوتبوک را در محیط جدید اجرا کنید. برای این کار طبق مراحل زیر دنبال کنید.
- محیطی که ساختهاید را فعال کنید. conda activate
برای این منظور بهکار میرود. فراموش نکنید که نام محیط خود را بهجای <env>
قرار دهید.
conda activate <env>
- با دستور زیر میتوانید ژوپیتر نوتبوک را اجرا کنید.
jupyter notebook
با اجرای این دستور، رابط مبتنی بر وب ژوپیتر نوتبوک در مروگر وب شما اجرا خواهد شد. در این رابط میتوانید نوتبوکجدیدی ایجاد کنید، نوتبوکهای موجود را باز کنید و کارهای اینچنینی را انجام دهید. فراموش نکنید که بسته colab را نیز میبایست ایمپورت کنید.
فرق ژوپیتر نوت بوک و گوگل کولب چیست؟
ژوپیتر نوتبوک و گوگلکولب، ۲ پلتفرم جداگانه و مشابه هستند که هر یک، خصوصیات، مزیتها و معایب خود را دارند و برای اینکه بدانید کدام مورد برای پروژههای شما مناسبتر است میبایست ماهیت پروژه خود و موارد گوناگونی نظیر منابع پردازشی، میزان فراهم بودن قابلیت همکاری، حریم شخصی و حساس بودن دادههای مورد استفاده، دسترسیپذیری و غیره را در نظر داشته باشید. بدینترتیب میتوانید بهترین گزینه را برای انجام پروژههای خود انتخاب کنید.
خلاصه ویژگی های گوگل کولب در مقابل ژوپیتر نوت بوک
گوگلکولب پلتفرمی آنلاین است و ژوپیتر نوتبوک میتواند بهصورت آفلاین کار کند. این مورد را شاید بتوان بهعنوان مهمترین تفاوت این ۲ پلتفرم در نظر گرفت که گوگلکولب پلتفرمی ابری است و ژوپیتر نوتبوک قابلیت کار بهصورت آفلاین را ارائه میدهد. به همین دلیل، فایلهای پروژه گوگلکولب شما در فضای ابری و آنلاین گوگلدرایو ذخیره میشوند و نیازی نیست که برنامهای را روی کامپیوتر خود نصب کنید. در سمت دیگر ژوپیتر نوتبوک را داریم که میبایست روی سیستم شما نصب و راهاندازی شود و فایلهای پروژه یا همان نوتبوکها نیز در کامپیوتر خود شما ذخیره میشوند.
با این تفاصیل، اینکه کدامیک از اینها ابزار بهتری هستند، بهطور کامل به شرایط پروژه و نظر و سیلقه شما بر میگردد. اگر میخواهید بدون نگرانی و صرف وقت بابت نصب و راهاندازی برنامهها، خیلی سریع به سراغ نوشتن کدها بروید، یا اینکه بتوانید فایلهای خود را بهآسانی به اشتراک بگذارید و همچنین با همتیمیهای خود مشارکت کنید و از سختافزارهای قوی و رایگان استفاده کنید، گوگلکولب انتخاب مناسبتری برای شما خواهد بود. اما اگر فایلهای شما حساسیت بالایی دارند به نحویکه نمیتوانید آنها را در فضای آنلاین استفاده کنید، یا اینکه میخواهید بستهها و بهطور کلی وابستگیهای پروژه را خودتان مدیریت کنید و بهصورت آفلاین کار کنید، انتخاب ژوپیتر نوتبوک برای توسعه پروژه، شاید بهتر باشد.
توصیه میشود بدون تعصب و با توجه به نیازها و شرایط پروژه از هر ۲ پلتفرم کمک بگیرید و از مزیتهای هر دوی آنها استفاده کنید. بهطور کلی اگر قصد آزمایش مدلهای یادگیری عمیق و ماشینلرنینگ را دارید، توصیه میشود از کولب استفاده کنید. این پلتفرم، سختافزاهای قدرتمندی را بهصورت ابری در اختیارتان قرار میدهد. همچنین اگر میخواهید کارهای خود را بهصورت آفلاین پیش ببرید و ایمنی بیشتری را برای دادههای خود فراهم کنید، ژوپیتر نوتبوک گزینه خوبی است.
برخی از خصوصیات این ۲ ابزار را در ادامه فهرست کردهایم.
- گوگل کولب نیازمند اتصال به اینترنت است و ژوپیتر نوتبوک میتواند بهصورت آفلاین کار کند.
- گوگل کولب میتواند از منابع سختافزاری قدرتمند ابری شامل GPU و TPU استفاده کند و ژوپیتر نوتبوک وابسته به قدرت سختافزاری سیستم شما است.
- در گوگل کولب نیازی به نصب برنامه روی سیستم خود ندارید و تنها با یک مرورگر میتوانید کار خود را انجام دهید.
جمعبندی
در این مطلب از مجله فرادرس، با گوگل کولب آشنا شدیم و نحوه کار با آن را با هم بررسی کردیم. گوگل کولب را میتوان یکی از محبوبترین پلتفرمهای کدنویسی آنلاین دانست که محبوبیت زیادی بین کارشناسان یادگیری ماشین، دانشمندان علم داده و برنامهنویسان هوش مصنوعی پیدا کرده و کتابخانههای متعددی را در این رابطه بههمراه دارد. این پلتفرم، محیطی شبیه به نوتبوکهای ژوپیتر دارد و قابلیت استفاده از GPU را نیز در دسترس کاربران قرار میدهد.
در این آموزش گوگل کولب، مباحث مختلفی مانند کدنویسی و اجرای کد در گوگل کولب، ایجاد سلول متنی، تغییر تنظیمات Google Colab، مزیتها و معایب این پلتفرم، نحوه بارگذاری و ایمپورت کردن دیتاست درون کولب و بسیاری نکات دیگر را بیان کردیم.
source