امروز در این مقاله قصد داریم شما را با اموزش گوگل کولب آشنا سازیم. اگر در زمینه یادگیری ماشینی یا عمیق فعالیت میکنید، احتمالاً با این ابزار آشنا هستید و آگاهید که با خرید اکانت Google Colab Pro گوگل کولب پرو می توانید از تمام امکانات آن بهره مند بشوید.
این مقاله به عنوان یک راهنمای مقدماتی و کاربردی در نظر گرفته شده است تا به کسانی که تا به حال با Colab کار نکردهاند، کمک کند. امیدوارم این اموزش گوگل کولب برای شما مفید واقع شود. همراه ما در ادامه این مقاله باشید.
برای آشنایی با گوگل کولب حتما مقاله Google Colab گوگل کولب چیست را در یوتیک مطالعه بفرمایید.
لیست عناوین مقاله
Google colab چیست و اموزش گوگل کولب
گوگل کولب، معروف به Colaboratory، یک پلتفرم نوتبوک با امکانات سختافزاری رایگان است که به طور کامل در محیط ابری کار میکند. این سرویس توسط گوگل برای تسهیل دسترسی و پیشرفت در عرصه هوش مصنوعی ایجاد شده است. کولب از GPU و TPU قدرتمند برای پردازش الگوریتمهای هوش مصنوعی مبتنی بر پایتون بهره میبرد. با استفاده از اموزش گوگل کولب، شما و همکارانتان قادر به کار بر روی پروژههای مشترک بدون نیاز به سختافزارهای پیچیده هستید.
این سرویس، که کاربری آن شبیه به Google Docs است، تمامی فعالیتهایش را به صورت آنلاین انجام میدهد. کولب به طور پیشفرض میزبان کتابخانههای محبوب هوش مصنوعی نظیر TensorFlow، Keras، PyTorch، OpenCV، Numpy و Scikit-learn است، که به شما امکان استفاده راحت و بدون دغدغه از این ابزارها را میدهد در ادامه به اموزش گوگل کولب می پردازیم.
ایجاد نوتبوک در Google Colab طی اموزش گوگل کولب
اولین گام در اموزش گوگل کولب برای تهیه یک نوتبوک مرجع، ایجاد یک نوتبوک جدید در Google Colab است. در ادامه،با ارائه دستورالعملهای گام به گام اموزش گوگل کولب، شما را در فرایند ساخت یک فایل نوتبوک در Google Colab راهنمایی خواهیم کرد. لطفا مراحل ذکر شده را دنبال کنید.
چگونگی ایجاد نوتبوک در Google Colab در طی اموزش گوگل کولب
مرحله 1:در اموزش گوگل کولب ابتدا به وبسایت Google Colab بروید. خبر خوب این است که دسترسی به این سایت برای کاربران ایرانی بدون مشکل است. پس از ورود به سایت، احتمالا با صفحهای مشابه شکل 1 مواجه خواهید شد.
مرحله 2: برای استفاده از Google Colab طی اموزش گوگل کولب، نیاز است که آن را به یک حساب جیمیل متصل کنید. امروزه اکثر افراد دارای حساب جیمیل هستند. پس مطابق با شکل 1، بر روی گزینه ‘Sign in’ کلیک کنید تا پس از وارد کردن نام کاربری و رمز عبور جیمیل خود، Colab به حساب جیمیل شما متصل گردد.
توضیح: چرا اتصال Colab به جیمیل ضروری است؟ دلیلش ساده است؛ چنانکه قبلاً ذکر شد، Colab یک سرویس ابری است و شما قرار است در این فضای ابری برنامهنویسی کنید. پس، کدها و فایلهای شما نیاز به ذخیرهسازی در جایی دارند تا هر زمان که بخواهید به آنها دسترسی داشته باشید. در نهایت، حساب جیمیل به عنوان واسط عمل میکند و Colab به Google Drive (فضای ابری گوگل) متصل میشود.
نکتهای کلیدی در اموزش گوگل کولب: حالا که میدانید کدها و فایلهایتان در Google Drive ذخیره میشوند، به این موضوع توجه داشته باشید که Google به صورت پیشفرض 15 گیگابایت فضای رایگان در Drive به شما ارائه میدهد.
گرچه فایلهای نوتبوک فضای زیادی اشغال نمیکنند، ممکن است بخواهید مدلها و دیتاستها را نیز در درایو ذخیره کنید، که این میتواند به مشکلات مربوط به فضای ذخیرهسازی منجر شود. شاید ایده خوبی باشد که برای کار با Colab یک حساب جیمیل جداگانه داشته باشید.
مرحله 3: در طی اموزش گوگل کولب پس از اتصال Colab به حساب جیمیل، با محیطی مشابه تصویر زیر مواجه خواهید شد. یک پنجره pop-up شامل چندین نوتبوک آماده نمایان میشود، اما بهتر است خودتان یک نوتبوک جدید بسازید. برای این کار، روی گزینه ‘NEW NOTEBOOK’ کلیک کنید
پس از آن، با محیطی همچون شکل 3 روبرو میشوید که Colab آماده است تا شما اولین کد خود را تایپ کنید
بررسی دقیق نوتبوک در اموزش گوگل کولب Google Colab
پیش از گام بعدی در اموزش گوگل کولب، بیایید نگاهی به محیط نوتبوک Colab بیندازیم. در شکل، بخشهای مختلف نوتبوک در Colab را با رنگهای گوناگون مشخص کردهایم. این بخشها عبارتاند از:
1.این کادر شامل منوهای Google Colab است. هرچند گزینههای منو خیلی پیچیده نیستند، اما نیازی نیست که همین ابتدا با جزئیات آنها آشنا شوید. در طول اموزش گوگل کولب، تدریجا با مهمترین گزینههای منو آشنا خواهیم شد.
2.این قسمت نام نوتبوک شما را نشان میدهد. با کلیک بر روی این بخش، میتوانید نام فایل را تغییر دهید، اما دقت کنید که پسوند فایل (ipynb.) را تغییر ندهید. توصیه میشود نامهای مناسبی برای فایلهایتان انتخاب کنید تا در آینده راحتتر بتوانید آنها را در Colab پیدا کنید. به عنوان مثال، نام نوتبوک را به “introduction to google colab” تغییر دهید.
3.این بخش نشاندهنده وضعیت اتصال به ماشین مجازی (VM) گوگل است. وقتی به VM متصل هستید، میزان استفاده از رَم و فضای دیسک را نشان میدهد. در صورتی که اتصال برقرار نباشد، گزینه “connect” ظاهر میشود که باید برای برقراری اتصال روی آن کلیک کنید. اتصال ممکن است کمی زمان ببرد.
4.این کادر محلی است که در آن کد یا متن مورد نظرتان را مینویسید. توضیحات بیشتری در ادامه اموزش گوگل کولب ارائه خواهم داد.
در تصویر 4، برخی از جزئیات را به دلیل عدم نیاز فعلی توضیح ندادهایم. بهتر است به تدریج و به سبکی پیش برویم. حال بیایید با اصول ابتدایی آشنا شویم در اموزش گوگل کولب و یک کد ساده را اجرا کنیم. در سلولی که به عنوان کادر 4 معرفی کردیم، دستور زیر را تایپ کرده و دکمه Play یا Run را فشار دهید. Colab در حال اجرای کد شما خواهد بود و بزودی خروجی را مشاهده خواهید کرد:
print(‘Hello Colab!’)
خروجی زیر باید ظاهر شود:
!Hello Colab
تمام! به همین سادگی میتوانید کد پایتون را در Colab بنویسید و اجرا کنید، و نیازی به نصب پایتون نیست.
نکته: وقتی موس را بر روی بخش نمایش میزان استفاده از رَم و هارد قرار میدهید، یک باکس متنی ظاهر میشود که میزان رَم و فضای دیسک استفاده شده را نشان میدهد. در بالای این باکس، میتوانید متن زیر را ببینید:
`Connected to “Python 3 Google Compute Engine Backend”`
این نشان میدهد که به یک سرور پردازشی گوگل با پایتون 3 متصل شدهاید. فعلاً اشارهای به استفاده از GPU نشده است، اما متعاقباً در این مورد بیشتر خواهیم دید.
کد سادهای که بالا نوشتیم، در یک سلول قرار گرفت. در نوتبوکهای مرجع، ما با سلولهای متعددی سروکار داریم که برخی فقط متن دارند، نه کد. در ادامه اموزش گوگل کولب، توضیحات بیشتری درباره سلولها خواهیم داد
معرفی سلولها در اموزش گوگل کولب
در اموزش گوگل کولب هر نوتبوک در Google Colab از تعدادی سلول (Cell) تشکیل شده است. این سلولها به دو دسته تقسیم میشوند:
1. سلول کد: در این نوع سلول، شما میتوانید به آسانی کدهای پایتون را بنویسید و آنها را اجرا کنید.
2. سلول متن: سلول متن بسیار شبیه به یک سند متنی (مثل ورد یا گوگل داکس) عمل میکند. در اینجا میتوانید توضیحات را با استفاده از انواع قالببندیها مانند هدینگ، بولد، ایتالیک، لینک و حتی اضافه کردن تصاویر بنویسید. به این ترتیب، نوتبوک شما میتواند به عنوان یک گزارش کار آنلاین عمل کند!
روشهای ساخت سلول در اموزش گوگل کولب
برای ساخت سلول در Google Colab طی اموزش گوگل کولب چهار راه وجود دارد. راحتترین روش آن است که ماوس را به جایی که کد می نویسیم حرکت دهید، سپس دو گزینه ‘Code’ و ‘Text’ ظاهر میشوند. همانطور که قبلا ذکر کردیم، سلولها میتوانند حاوی کد یا متن باشند و این دو گزینه دقیقا مربوط به همین دو نوع سلول هستند.
اگر میخواهید یک سلول کد ایجاد کنید، کافی است روی گزینه ‘Code’ کلیک کنید. بعد از اینکه یک سلول کد ساختید، حالا یک سلول متن نیز بسازید. شما میتوانید به تعداد نامحدودی سلول کد و متن اضافه کنید.
سه روش دیگر نیز برای افزودن سلولهای کد و متن وجود دارد در طی اموزش گوگل کولب:
1. میتوانید از گزینه های موجود در تصویر برای ایجاد سلولهای کد و متن استفاده کنید، اگرچه من شخصا کمتر از این گزینهها استفاده میکنم، شاید به خاطر تنبلی!
2. با استفاده از کلید میانبر Ctrl+M B میتوانید سلول کد بسازید. شاید من علاقهمند به حفظ کردن کلیدهای میانبر نباشم، اما برخی دوستانم با کلیدهای میانبر مانند رونالدینیو با توپ فوتبال، مهارت دارند!
3. همچنین میتوانید از گزینه ‘Insert’ برای ایجاد سلولهای کد و متن استفاده کنید، اگرچه این روش کمی دور به نظر میرسد و نیاز به حرکت دادن ماوس تا این گزینه دارد!
آسانی Import کردن فریمورکها در Google Colab طی اموزش گوگل کولب
سلول بعدی طی اموزش گوگل کولب که در نوتبوک Google Colab قرار دارد، مربوط به ایمپورت کردن فریمورکهاست. ما برخی از فریمورکهای مشهور و مورد استفاده را فراخوانی خواهیم کرد. خبر خوب این است که اکثر فریمورکهای معروف از قبل در Colab نصب شدهاند. پس بدون هیچ نگرانی در مورد نصب، آنها را فراخوانی میکنیم:
python
import os
import numpy as np
import matplotlib.pyplot as plt
import tensorflow as tf
وقتی صحبت از پکیجهای نصب شده در Colab میشود طی اموزش گوگل کولب، سؤالی که مطرح میشود این است که چه پکیجهایی در دسترس هستند؟ در بخشهای بعدی اموزش گوگل کولب، دستوری را به شما آموزش میدهم که به شما امکان میدهد تا لیست کاملی از پکیجهای نصب شده در Google Colab را مشاهده کنید. در سومین سلول نوتبوک مرجع، یک کد ساده پایتونی برای محاسبه فاکتوریل وجود دارد. یک تابع و یک مثال از اجرای آن را در نظر بگیرید. یک سلول کد جدید ایجاد کرده و کد زیر را در آن وارد و اجرا کنید:
python
def factorial(n):
fact = 1
for num in range(2, n + 1):
fact *= num
return fact
factorial(10)
این هم خروجی مورد انتظار:
3628800
با ایجاد این سه سلول، قدمهایی در جهت ساخت نوتبوک مرجع برداشتهایم در طی اموزش گوگل کولب. اما قبل از ادامه ساخت سایر سلولهای نوتبوک مرجع، بیایید کمی درباره ذخیرهسازی نوتبوکها در Google Drive صحبت کنیم.
ذخیرهسازی نوتبوک در Google Drive طی اموزش گوگل کولب
تا به حال در طی اموزش گوگل کولب یاد گرفتهاید که چگونه Colab را به Google Drive متصل کنید، سلولهای متن و کد بسازید و کدهای پایتون را بنویسید و اجرا کنید. حالا در این قسمت از اموزش گوگل کولب، میخواهیم نحوه ذخیرهسازی فایل نوتبوک شما در Google Drive را به شما آموزش دهیم. ابتدا باید بدانید که Colab به طور خودکار نوتبوکها را ذخیره میکند. با این حال، برای ذخیرهسازی دستی، میتوانید از گزینه ‘Save’ در منوی ‘File’ استفاده کنید. همچنین، کلیدهای ترکیبی Ctrl+S نیز برای ذخیرهسازی کاربرد دارند.
توجه داشته باشید به پیامهای نمایش داده شده در کادر موجود در تصویر زیر. چندین پیام مختلف ممکن است ظاهر شوند:
– All changes saved: این پیام به معنای آن است که تمام تغییرات شما در نوتبوک ذخیره شدهاند و در صورت بسته شدن ناگهانی فایل، دادههای شما از بین نخواهند رفت.
– Cannot save changes: این پیام هشداردهنده است، زیرا ممکن است به دلیلی خاص، تغییرات شما به طور خودکار ذخیره نشده باشند. در چنین حالتی، احتمال دارد که بخشی از کار شما از دست برود. بنابراین، توصیه میشود که حتماً به صورت دستی نوتبوک را ذخیره کنید.
– گاهی اوقات، زمان آخرین ذخیرهسازی در این کادر نمایش داده میشود. اگر از زمان آخرین ذخیرهسازی مدت زیادی گذشته و شما تغییراتی ایجاد کردهاید، بهتر است به صورت دستی نوتبوک را ذخیره کنید.
– …Saving: این پیام نشان دهنده آن است که نوتبوک شما در حال ذخیرهسازی است. این اتفاق معمولاً زمانی رخ میدهد که تغییراتی توسط شما ایجاد شده و Colab تصمیم به ذخیرهسازی آنها گرفته است.
روش اتصال Google Drive به Colab طی اموزش گوگل کولب
در چهارمین سلول نوتبوک مرجع در طی اموزش گوگل کولب، دو خط کد برای اتصال Google Drive به نوتبوک نوشته شده است. این اتصال چگونه انجام میشود و چگونه میتوان از فایلهای موجود در Google Drive استفاده کرد؟ ممکن است شما وزنهای مدل یا دیتاستی را در آن ذخیره کرده باشید. شاید بپرسید که آیا در ابتدای کار نیز Google Drive را به نوتبوک متصل نکردیم؟ درست است، ما این کار را انجام دادیم، اما آن فقط برای ذخیرهسازی فایلهای نوتبوک بود. اگر بخواهید در یک نوتبوک خاص از دادههای موجود در Google Drive خود استفاده کنید، لازم است که Google Drive را Mount کنید. به این معنا که تصور کنید Google Drive شما یک هارد اکسترنال است و هر زمان که بخواهید از دادههای آن استفاده کنید، آن را به کامپیوتر خود وصل میکنید. این کار به سادگی با کلیک کردن بر روی گزینههای 1 و 2 در تصویر زیر انجام میپذیرد.
در طی اموزش گوگل کولب پس از کلیک بر روی این گزینهها، یک پنجره pop-up باز میشود و از شما میپرسد آیا میخواهید Google Drive را به نوتبوک متصل کنید. با تأیید این سؤال، شما میتوانید بدون نوشتن حتی یک خط کد به Google Drive متصل شوید!
دو خط کد برای اتصال Google Drive به Colab در نوتبوک مرجع در طی اموزش گوگل کولب
به جای استفاده از دو گزینه ذکر شده قبلی در طی اموزش گوگل کولب، میتوانید با نوشتن و اجرای دو خط کد زیر، اتصال به Google Drive را برقرار کنید:
from google.colab import drive
drive.mount(‘/content/drive’)
این دو خط کد همانطور که در نوتبوک مرجع آمده، به شما امکان اتصال به Google Drive را میدهد. پس از اجرای این سلول، یک لینک و جعبه متنی ظاهر میشود.
با کلیک کردن بر روی لینک، Google از شما اجازه دسترسی درخواست میکند. پس از انتخاب گزینه ‘Allow’، یک کد طولانی به شما داده میشود که باید آن را کپی کرده و در جعبه متنی وارد کنید. اگر همه چیز به درستی پیش برود، نوتبوک شما به Google Drive متصل شده و پیام زیر را مشاهده خواهید کرد:
`Mounted at /content/drive`
نکته: آیا نیاز است که کد داده شده را حفظ کنید طی اموزش گوگل کولب؟ خیر، این یک کد موقت است و هر بار که نوتبوک را باز کنید و بخواهید به Google Drive متصل شوید، Google یک کد جدید به شما میدهد.
توجه کنید به علامت فلش در شکل زیر؛ در این بخش یک پوشه به نام ‘drive’ اضافه شده که در واقع همان Google Drive شماست. اگر حتی پس از اتصال صحیح، آن را مشاهده نمیکنید، مشکلی نیست، فقط کافی است روی گزینه مشخص شده با کادر قرمز (Refresh) کلیک کنید تا پوشه نمایش داده شود.
استفاده از سیستم عامل لینوکس اموزش گوگل کولب
در این قسمت از اموزش گوگل کولب، به شما نشان میدهم که چگونه میتوانید به راحتی دستورات سیستم عامل لینوکس را در سلولهای کد Colab اجرا کنید. برای اجرای دستورات bash، کافی است قبل از هر دستور، علامت ! را قرار دهید. البته برخی دستورات ساده هستند که نیازی به استفاده از این علامت ندارند. هدف من آموزش دستورات لینوکس نیست، اما میخواهم چند دستور مفید و پرکاربرد را به شما معرفی کنم.
دستور pwd در اموزش گوگل کولب
در اموزش گوگل کولب برای دیدن دایرکتوری فعلی که در آن قرار دارید، باید از دستور pwd استفاده کنید. این دستور به شما نشان میدهد که در چه مسیری هستید و به محتویات کدام پوشه یا مسیر دسترسی دارید. به این صورت:
`pwd`
و خروجی این دستور:
`/content`
توجه کنید که مسیر /content مسیر پیشفرض در Colab است و به همان مسیری که در بخش Files مشاهده میکنید، اشاره دارد. چگونه میتوانیم این موضوع را تأیید کنیم؟ پاسخ در دستور بعدی خواهد بود…
دستور ls در اموزش گوگل کولب
برای مشاهده محتویات یک پوشه یا مسیر در سیستم عاملهای مبتنی بر یونیکس در در اموزش گوگل کولب، دستور ls را به کار ببرید. به این صورت عمل میکنید:
ls
با این کار، خروجی زیر را مشاهده خواهید کرد:
drive/ sample_data/
این نشان میدهد که پوشههای drive و sample_data در دسترس هستند، که drive به گوگل درایو اشاره دارد و sample_data شامل دادههای نمونهای است که به طور پیشفرض در کولب موجود هستند. با این دستور، شما یاد گرفتید چگونه مسیر فعلی و محتویات یک پوشه را ببینید در اموزش گوگل کولب. اما اگر بخواهید مسیر فعلی خود را تغییر دهید، چه باید کرد؟ بیایید به دستور بعدی بپردازیم.
دستور cd در اموزش گوگل کولب
دستور cd در اموزش گوگل کولب به شما امکان میدهد مسیر جاری یا Current Directory خود را تغییر دهید. در نوتبوک مرجع، ما قصد داریم وارد پوشه sample_data شویم، بنابراین این دستور را تایپ میکنیم:
cd sample_data
اکنون بیایید محتویات این پوشه را با دستور ls بررسی کنیم:
ls
anscombe.json* mnist_test.csv
california_housing_test.csv mnist_train_small.csv
california_housing_train.csv README.md*
برای بازگشت به یک پوشه عقبتر، این دستور را بنویسید:
cd ..
دستور wget در در اموزش گوگل کولب
حالا بیایید به دستور wget در نوتبوک مرجع نگاهی بیندازیم در ادامه اموزش گوگل کولب. با استفاده از این دستور میتوانید فایلهای مورد نظر خود را دانلود کنید. به عنوان مثال، در سلول 5 نوتبوک مرجع، دستور زیر را مشاهده میکنید:
!wget http://vision.stanford.edu/Datasets/Stanford40.zip
با اجرای این دستور، فایل مشخص شده به صورت مستقیم دانلود میشود. پس از اجرای سلول، خروجی زیر ظاهر میشود:
–2020-08-27 16:07:03– http://vision.stanford.edu/Datasets/Stanford40.zip
Resolving vision.stanford.edu (vision.stanford.edu)… 171.64.68.10
Connecting to vision.stanford.edu (vision.stanford.edu)|171.64.68.10|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 308432833 (294M) [application/zip]
Saving to: ‘Stanford40.zip’
Stanford40.zip 100%[===================>] 294.14M 14.2MB/s in 21s
2020-08-27 16:07:25 (13.7 MB/s) – ‘Stanford40.zip’ saved [308432833/308432833]
بعد از دانلود، فایل در بخش Files قابل مشاهده است. اگر ظاهر نشد، باید صفحه را تازهسازی کنید.
توجه داشته باشید که با این روش در اموزش گوگل کولب نمیتوانید فایلها را برای استفاده شخصی سریع دانلود کنید. فایلها در VM گوگل ذخیره میشوند و شما باید آنها را از VM دانلود و به کامپیوتر خود انتقال دهید. این فرایند ممکن است زمانبر باشد.
دستور unzip در اموزش گوگل کولب
معمولاً فایلهای دانلودی فشرده هستند و باید آنها را از حالت فشرده خارج کنید در اموزش گوگل کولب. به عنوان مثال، فایل zip دانلود شده در بالا. برای انجام این کار، از دستور unzip استفاده کنید. به توصیه نوتبوک مرجع، یک سلول جدید ایجاد کرده و فایل دانلودی را با این دستور از حالت فشرده خارج کنید:
!unzip Stanford40.zip
پس از اجرای این دستور، متنهای زیادی نمایش داده میشود. اگر خواستید خروجی را حذف کنید، کافی است علامت X را انتخاب کنید.
اگر به پوشه XML Annotations نگاه کنید، فایلهای تصویری و xml را خواهید دید. در نوتبوک مرجع، قرار است با این فایلهای xml کار کنیم. چگونه این فایلها را بخوانیم؟ روشهای مختلفی وجود دارد. من تصمیم گرفتهام این فایلهای xml را فراخوانی و به دیکشنری در پایتون تبدیل کنم.
اما چگونه؟ با استفاده از دستور xml2dict. این دستور در پایتون به صورت پیشفرض وجود ندارد و باید یک کتابخانه مرتبط را نصب کنیم. حالا باید به نحوه نصب این کتابخانه در گوگل کولب و پایتون بپردازیم. برای نصب پکیجهای پایتونی، از pip install استفاده میشود. در ادامه اموزش گوگل کولب، نحوه انجام این کار در گوگل کولب را توضیح خواهم داد…
دستور pip در اموزش گوگل کولب
برای نصب پکیجهای مخصوص پایتون در گوگل کولب، میتوانید از دستور pip install! بهره ببرید در اموزش گوگل کولب. این عملیات ساده است و تنها با اضافه کردن علامت ! امکانپذیر میشود. مثلاً، برای نصب پکیج xml2dict کافی است دستور زیر را تایپ کنید:
!pip install xml2dict
نصب این پکیج بسیار آسان است. اکنون، بر اساس نوتبوک مرجع، یک نمونه فایل xml را باز خواهیم کرد. طبق کد زیر اقدام میکنیم:
import xmltodict
with open(‘/content/XMLAnnotations/applauding_001.xml’) as fd:
dict_file = xmltodict.parse(fd.read())
print(dict_file)
OrderedDict([(‘annotation’, OrderedDict([(‘filename’, ‘applauding_001.jpg’), (‘folder’, ‘Stanford40’), (‘object’, OrderedDict([(‘name’, ‘person’), (‘action’, ‘applauding’), (‘bndbox’, OrderedDict([(‘xmax’, ‘258’), (‘xmin’, ’28’), (‘ymax’, ‘400’), (‘ymin’, ’57’)]))])), (‘size’, OrderedDict([(‘depth’, ‘3’), (‘height’, ‘400’), (‘width’, ‘300’)]))]))])
شاید درک کد فوق برای شما کمی پیچیده باشد، اما نگران نباشید؛ هدف من این است که به شما نحوه نصب یک پکیج جدید در اموزش گوگل کولب را نشان دهم، نه آموزش خواندن فایلهای XML.
تذکر: پکیجهای نصب شده و فایلهای دانلودی در VM به صورت موقت باقی میمانند و پس از بستن کولب حذف خواهند شد. اما این بدان معنا نیست که فوراً پاک میشوند؛ اغلب برای مدت زمان کوتاهی (شاید کمتر از 1 ساعت) در دسترس خواهند بود، در صورتی که به طور تصادفی کولب بسته شود…
برای آشنایی بیشتر با دستورات، به این منبع مراجعه کنید.
تاکنون ما در 8 سلول از نوتبوک مرجع را ایجاد کردهایم و مسیر طولانیای از اموزش گوگل کولب را طی کردهایم. به دو سلول بعدی در نوتبوک مرجع نگاه کنید. یکی از سلولها متنی و دیگری حاوی کد است. سلول متنی پر از نوشتههای متنوع است و سلول کد، آموزش یک شبکه عصبی کانولوشنی را در بر دارد. بیایید ابتدا سلول متن را ایجاد کنیم تا با امکانات ویرایشگر گوگل کولب و نوتبوک بیشتر آشنا شویم در اموزش گوگل کولب…
Markdown در اموزش گوگل کولب
در اموزش گوگل کولب ابتدا، یک سلول متنی ایجاد کنید و محتوای این بخش را در آن قرار دهید.
در ادامه اموزش گوگل کولب، برای اعمال تغییرات بر متن، مطابق با دستورالعملهای نوتبوک مرجع، از آیکونهای نشان داده شده در تصویر زیر استفاده خواهیم کرد. لطفاً برای هر بخش، سلول مربوطه در نوتبوک مرجع را بررسی کنید و سپس تغییرات لازم را بر روی متن فعلی اعمال نمایید.
عنوان در نوتبوک دراموزش گوگل کولب
برای تبدیل یک عبارت معمولی به عنوان در اموزش گوگل کولب، کافی است از آیکون شماره 1 یا T (مختصر Title) استفاده کنید. جالب است که در بخش راست ویرایشگر، شما میتوانید نتیجه تغییرات را مشاهده کنید. به خاطر داشته باشید که با فشار دادن کلید T، تنها یک `#` در ابتدای متن اضافه میشود. بنابراین، شما میتوانید بدون استفاده از آیکون T، با افزودن یک # در ابتدای متن، آن را به یک عنوان تبدیل کنید.
پس از ایجاد یک عنوان در اموزش گوگل کولب، با دوباره فشار دادن آیکون T، دو ## اضافه میشود و اندازه عنوان کوچکتر میگردد، یعنی ما یک عنوان h2 داریم. با فشار دادن مجدد T، سه ### اضافه میشود و اندازه متن بیشتر کوچک میشود، که به این ترتیب یک عنوان h3 ایجاد میشود. با فشار دادن مجدد T، متن به حالت معمولی باز میگردد و همه `#`ها حذف میشوند. بنابراین، با قرار دادن 1 تا 3 # میتوانید عناوین h1، h2 و h3 را ایجاد کنید.
**نکته**: اگر میخواهید از # استفاده کنید اما هدفتان ایجاد عنوان نباشد، باید از \# استفاده کنید.
Bold در نوتبوک اموزش گوگل کولب
در اموزش گوگل کولب برای بولد کردن یک کلمه یا عبارت، از آیکون شماره 2 یا B استفاده کنید. با انتخاب این گزینه، کلمه مورد نظر در داخل دو ** قرار میگیرد. شما میتوانید بدون استفاده از گزینه B، با قرار دادن کلمه در دو ** (مانند **بولد**)، هر کلمه یا عبارتی را بولد کنید. برخی کلمات و عبارات در متن نوتبوک مرجع بولد هستند، که با استفاده از این تکنیک میتوانید آنها را بولد کنید در اموزش گوگل کولب.
Italic در نوتبوک اموزش گوگل کولب
برای ایتالیک کردن یک کلمه یا عبارت در اموزش گوگل کولب، از آیکون I استفاده کنید. اگر نمیخواهید از این آیکون استفاده کنید، کافی است کلمه یا عبارت مورد نظر را در یک * قرار دهید، به این صورت: *ایتالیک*.
متن خطزده در نوتبوک اموزش گوگل کولب
برای خطزدن یک متن، هیچ آیکونی وجود ندارد در اموزش گوگل کولب. اما با استفاده از شورتکات ~~ میتوانید این کار را انجام دهید. پس کافی است بنویسید: ~~متن مدنظر~~.
قرار دادن کد در نوتبوک اموزش گوگل کولب
در نوتبوک مرجع در اموزش گوگل کولب، کدها در باکسهایی با پسزمینه رنگی نشان داده شدهاند تا از سایر متنها متمایز باشند و خوانایی بالاتری داشته باشند. برای افزودن کد در سلول متنی، میتوانید از آیکون <> (شماره 4) استفاده کنید یا از علامت “ ` زیر کلید Esc استفاده کنید. پس از این تغییرات را در نوتبوک مرجع اعمال کنید.
لینک در نوتبوک اموزش گوگل کولب
با استفاده از گزینه شماره 5 اموزش گوگل کولب، شما میتوانید به راحتی هر کلمهای را به یک لینک تبدیل کنید. فقط کافی است کلمه مورد نظر را انتخاب کرده، سپس روی گزینه 5 کلیک کنید و آدرس مورد نظر را وارد نمایید. پس از اعمال دکمه لینک، کلمه انتخاب شده به فرمت زیر در میآید که در آن آدرس لینک در داخل پرانتز قرار میگیرد:
[text](https://)
شورتکات ایجاد لینک کمی متفاوت است. ابتدا باید متن را در داخل براکت [] قرار دهید و سپس بلافاصله پس از آن، یک پرانتز () اضافه کنید که در آن لینک مد نظر قرار میگیرد. اگر فقط میخواهید یک آدرس وب را بدون هیچ متن لینکداری قرار دهید در اموزش گوگل کولب، کافی است آدرس مورد نظر را در سلول کد و با پیشوند http وارد کنید.
تصویر در نوتبوک اموزش گوگل کولب
با استفاده از آیکون شماره 6 اموزش گوگل کولب، میتوانید تصاویر را به سلول خود اضافه کنید. پس از انتخاب این گزینه، پنجرهای باز میشود که در آن میتوانید تصویر مورد نظر خود را انتخاب کنید. با اضافه کردن یک تصویر، کدهای مربوطه به سلول اضافه شده و تصویر در سمت چپ نمایش داده میشود. برای نمایش تصویری از اینترنت، میتوانید از شورتکات زیر استفاده کنید:
![text](https://)
در داخل براکت، متن مورد نظر خود را بنویسید و در داخل پرانتز، آدرس اینترنتی تصویر را قرار دهید. توجه داشته باشید در اموزش گوگل کولب که شورتکات تصویر تنها با اضافه کردن یک ! در ابتدای فرمت لینک متفاوت است.
Indent در نوتبوک اموزش گوگل کولب
تورفتگی یا Indent در اموزش گوگل کولب، یکی دیگر از قابلیتهایی است که در سلول متنی قابل ایجاد است. گاهی اوقات میخواهید بخشی از متن کمی جلوتر از سایر قسمتها باشد. در این حالت، کافی است آیکون 7 را انتخاب کنید و متن مورد نظرتان را تایپ کنید. شورتکات این دستور بسیار ساده است و فقط نیاز به استفاده از < دارید. هر بار استفاده از این علامت، معادل یک تب یا Tab تورفتگی ایجاد میکند.
شمارهگذاری در نوتبوک اموزش گوگل کولب
با استفاده از آیکون 8 اموزش گوگل کولب، میتوانید یک لیست شمارهدار یا Ordered List ایجاد کنید. ابتدا آیکون شماره 8 را فشار دهید و سپس مطابق با نوتبوک مرجع، لیست خود را بسازید. البته، استفاده از شورتکات نیز امکانپذیر است؛ کافی است قبل از هر مورد در لیست، یک عدد و نقطه (مثلاً `1.`) قرار دهید. آیا نیاز است در هر سطر عدد را افزایش دهم؟ خیر، در هر سطر فقط یک عدد یکسان (مثلاً `1.`) بنویسید و بقیه را به نوتبوک بسپارید؛ خود نوتبوک به صورت خودکار شمارهگذاری را انجام میدهد.
Bullet در نوتبوک اموزش گوگل کولب
اگر میخواهید یک لیست با Bullet ایجاد کنید در اموزش گوگل کولب و نیازی به شمارهگذاری نیست، از آیکون شماره 9 استفاده کنید. شورتکات این عملیات نیز بسیار ساده است و فقط به قرار دادن یک `*` در ابتدای هر سطر نیاز دارد.
خط افقی در نوتبوک اموزش گوگل کولب
برای کشیدن یک خط افقی در نوتبوک، باید از آیکون شماره 10 اموزش گوگل کولب استفاده کنید.
در نهایت، آیکون شماره 11 اموزش گوگل کولب، حالت نمایش خروجی Markdown را تغییر میدهد. این گزینه به شما امکان میدهد تا نمایش خروجی را زیر ویرایشگر یا به صورت افقی/عمودی انتخاب کنید.
استفاده از GPU در اموزش گوگل کولب
در اموزش گوگل کولب بدون ورود به جزئیات فنی کدنویسی، در اینجا خلاصهای از چگونگی استفاده از یک شبکه MLP (شبکه عصبی چندلایه) در اموزش گوگل کولب روی دیتاست MNIST را میبینید. این مدل ساده است و برای اهداف خاصی، تعداد لایههای آن افزایش یافته است. کد زیر را برای اجرا در نظر بگیرید:
python
# بارگذاری دیتاست
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
# تعریف مدل
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation=’relu’),
tf.keras.layers.Dense(512, activation=’relu’),
tf.keras.layers.Dense(512, activation=’relu’),
tf.keras.layers.Dense(512, activation=’relu’),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(10)
])
# ایجاد تابع خسارت
loss_fn = tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True)
# کامپایل مدل
model.compile(optimizer=’adam’, loss=loss_fn, metrics=[‘accuracy’])
# آموزش مدل
model.fit(x_train, y_train, epochs=5)
# ارزیابی
model.evaluate(x_test, y_test, verbose=2)
“`
زمان اجرا برای هر epoch تقریباً 17 ثانیه است.
افزایش سرعت با استفاده از GPU در اموزش گوگل کولب
برای بهبود سرعت محاسبات در اموزش گوگل کولب، میتوانیم از GPU استفاده کنیم. این کار از طریق منوی Runtime و گزینه Change runtime type انجام میشود. در این قسمت اموزش گوگل کولب، گزینه None را به GPU تغییر دهید و Save را فشار دهید.
پس از این تغییر، ارتباط با ماشین مجازی فعلی قطع و پس از چند لحظه یک ماشین مجازی جدید با GPU ارائه میشود. توجه داشته باشید که در این حالت فضای دیسک کمتری نسبت به CPU خواهید داشت (تقریباً 40 گیگابایت کمتر). وقتی موتور را به GPU تغییر میدهید، میتوانید میزان رم موجود را در بخش Connect مشاهده کنید.
پس از تغییر به GPU در اموزش گوگل کولب، ممکن است لازم باشد کتابخانهها و اطلاعات را دوباره بارگذاری کنید. برای اجرای مجدد تمام سلولها، از منوی Runtime گزینه Run all را انتخاب کنید یا از شورتکات ctrl+f9 استفاده کنید. با اجرای مجدد کد آموزشی شبکه MLP با استفاده از GPU، خواهید دید که زمان اجرای هر ایپوک به حدود 6 ثانیه کاهش مییابد، که تقریباً یک سوم زمان مورد نیاز برای CPU است.
شناسایی مشخصات GPU در اموزش گوگل کولب
Google Colab با GPU های مختلفی کار میکندکه در اموزش گوگل کولب به آن اشاره کردیم. مشخصات GPU های موجود در Colab عبارتند از:
– K80 با 12 گیگابایت رم
– Tesla T4 با 16 گیگابایت رم
– P100 با 16 گیگابایت رم
– و یک مدل دیگر که دقیقاً یادم نیست، اما فکر میکنم P4 با 8 گیگابایت رم بود.
Colab همچنین TPU (پردازنده اختصاصی گوگل) را نیز ارائه میدهد که در برخی موارد، عملکرد بهتری نسبت به GPU ها دارد. برای مشاهده مشخصات کامل GPU، از دستور `nvidia-smi` استفاده کنید.
توجه داشته باشید در اموزش گوگل کولب که گاهی اوقات ممکن است به Colab متصل باشید ولی از GPU استفاده نکنید. Google در این حالت پیغامی ارسال میکند که اگر از GPU استفاده نمیکنید، آن را غیرفعال کنید تا بیدلیل اشغال نشود.
رسم نمودار در اموزش گوگل کولب
رسم نمودار و نمایش تصویر در اموزش گوگل کولب Google Colab بسیار ساده است. در کد زیر، نمونهای از نحوه رسم نمودار را مشاهده میکنید:
python
ys = 200 + np.random.randn(100)
x = [x for x in range(len(ys))]
plt.plot(x, ys, ‘-‘)
plt.fill_between(x, ys, 195, where=(ys > 195), facecolor=’g’, alpha=0.6)
plt.title(“Fills and Alpha Example”)
plt.show()
سوالات متداول
1. گوگل کولب (Google Colab) چیست؟
گوگل کولب یک سرویس رایگان است که توسط گوگل ارائه میشود و به کاربران اجازه میدهد کدهای پایتون خود را در محیطی مبتنی بر نوتبوک Jupyter اجرا کنند. این سرویس بهویژه برای یادگیری ماشین، علوم داده، و تحلیل دادهها بسیار مفید است زیرا امکاناتی مانند GPU رایگان و اتصال به Google Drive را فراهم میکند.
2. چگونه میتوانم به گوگل کولب دسترسی پیدا کنم؟
برای دسترسی به گوگل کولب:
1. به آدرس [colab.research.google.com](https://colab.research.google.com) بروید.
2. با حساب کاربری گوگل خود وارد شوید.
3. یک نوتبوک جدید ایجاد کنید یا یکی از نوتبوکهای موجود را باز کنید.
3. چگونه میتوانم یک نوتبوک جدید در گوگل کولب ایجاد کنم؟
برای ایجاد یک نوتبوک جدید:
1. به آدرس [colab.research.google.com](https://colab.research.google.com) بروید.
2. روی گزینه “New Notebook” کلیک کنید.
3. نوتبوک جدید باز میشود و شما میتوانید کد پایتون خود را در سلولهای آن بنویسید و اجرا کنید.
4. چگونه میتوانم فایلهای خود را به گوگل کولب آپلود کنم؟
برای آپلود فایلها به گوگل کولب:
1. از منوی سمت چپ گزینه “Files” را انتخاب کنید.
2. روی آیکون آپلود (آیکون پوشه با علامت فلش) کلیک کنید.
3. فایلهای مورد نظر خود را انتخاب و آپلود کنید.
5. چگونه میتوانم گوگل کولب را به Google Drive خود متصل کنم؟
برای اتصال گوگل کولب به Google Drive:
1. از منوی “Tools” گزینه “Mount Drive” را انتخاب کنید.
2. دستور !`from google.colab import drive` و `drive.mount(‘/content/drive’)` را اجرا کنید.
3. به حساب کاربری گوگل خود وارد شوید و مجوزهای لازم را ارائه دهید.
6. آیا گوگل کولب از GPU پشتیبانی میکند؟
بله، گوگل کولب از GPU پشتیبانی میکند. برای فعال کردن GPU:
1. به منوی “Runtime” بروید.
2. گزینه “Change runtime type” را انتخاب کنید.
3. در بخش “Hardware accelerator” گزینه “GPU” را انتخاب کنید.
7. چگونه میتوانم کتابخانههای پایتون را در گوگل کولب نصب کنم؟
برای نصب کتابخانههای پایتون:
1. از دستور `!pip install library-name` در یک سلول جدید استفاده کنید.
2. مثال: `!pip install numpy` برای نصب کتابخانه numpy.
8. چگونه میتوانم خروجی نوتبوک خود را ذخیره و دانلود کنم؟
برای ذخیره و دانلود نوتبوک:
1. به منوی “File” بروید.
2. گزینه “Download .ipynb” یا “Download .py” را انتخاب کنید تا نوتبوک خود را به صورت فایل Jupyter یا فایل پایتون دانلود کنید.
9. چگونه میتوانم با دیگران در گوگل کولب همکاری کنم؟
برای همکاری با دیگران:
1. روی دکمه “Share” در بالای صفحه کلیک کنید.
2. آدرس ایمیل همکاران خود را وارد کنید و سطح دسترسی آنها را تعیین کنید (ویرایش، نظر دادن یا فقط مشاهده).
3. لینک اشتراکگذاری را ارسال کنید تا همکاران شما بتوانند به نوتبوک دسترسی داشته باشند.
10. آیا میتوانم کد R را در گوگل کولب اجرا کنم؟
بله، میتوانید کد R را در گوگل کولب اجرا کنید. برای این کار:
1. ابتدا کتابخانه R را نصب کنید با دستور `!apt-get install r-base`.
2. از سلولهای جادویی (magic cells) برای اجرای کد R استفاده کنید. به عنوان مثال:
“`python
%%R
x <- c(1, 2, 3)
mean(x)
“`
11. چگونه میتوانم دادهها را از منابع آنلاین به گوگل کولب وارد کنم؟
برای وارد کردن دادهها از منابع آنلاین:
1. از کتابخانههای پایتون مانند `requests` یا `pandas` برای خواندن دادهها استفاده کنید.
2. مثال: استفاده از `pandas` برای خواندن یک فایل CSV از یک URL:
“`python
import pandas as pd
url = ‘http://example.com/data.csv’
data = pd.read_csv(url)
“`
12. آیا گوگل کولب محدودیتهای استفاده دارد؟
بله، گوگل کولب محدودیتهایی دارد از جمله:
– محدودیت زمان اجرا (حداکثر 12 ساعت برای هر جلسه).
– محدودیت منابع (رم و GPU).
– محدودیت استفاده از پردازندهها (در صورتی که منابع استفاده شده بالا باشد، ممکن است دسترسی شما موقتا محدود شود).
این سوالات و پاسخها به شما کمک میکنند تا به طور کامل با استفاده از گوگل کولب آشنا شوید و از امکانات این ابزار برای تحلیل دادهها و یادگیری ماشین بهرهمند شوید.
جمع بندی
با پایان یافتن این بخش، اموزش گوگل کولب به اتمام میرسد. امکانات Google Colab بسیار زیاد هستند و ما شما را تنها با بخشی از پایهترین امکانات آن آشنا کردیم. امیدوارم این آموزش برای شما مفید باشد و منتظر نظرات و پیشنهادات شما هستیم و توجه کنید با با خرید اکانت Google Colab Pro گوگل کولب پرو می توانید از تمام امکانات آن بهره مند بشوید.
مقالات مرتبط با اموزش گوگل کولب
How to Use Google Colab for Deep Learning – Complete Tutorial