Google Colaboratory

Czy słyszałe(a)ś o notatniku Jupyter? Jeśli nie, możesz przeczytać ten artykuł by dowiedzieć się czym jest ten projekt i jak go używać. Notatnik Jupyter integruje kod i jego dane wyjściowe w jednym dokumencie, który łączy wizualizacje, opis, równania matematyczne i inne multimedia. Jest to dokument, w którym można uruchamiać kod, wyświetlać dane wyjściowe, a także dodawać objaśnienia, formuły, wykresy i sprawić, że praca będzie bardziej przejrzysta, zrozumiała, powtarzalna i udostępniana. Sam notatnik pobierasz np. jako pakiet Python i po uruchomieniu serwisu masz dostęp do prostego serwisu web w którym tworzysz i zarządzasz swoimi notatnikami. Lokalnie.

Wyobraź sobie że jest jednak znacznie wygodniejsze środowisko by tworzyć notatniki zawierające szczegóły twoich projektów w języku Python. Środowisko gotowe do użycia, zawierające wszystko czego potrzebujesz bez tracenia czasu na instalację, pobierania wymaganych modułów i pakietów. Tym gotowym serwisem jest Google Colaboratory - w skócie Google Colab.

Co to jest Colaboratory?

Colaboratory (czyli w skrócie „Colab”) to usługa opracowana przez Google Research. Colab umożliwia każdemu użytkownikowi pisanie i uruchamianie w przeglądarce dowolnego kodu Python. Usługa ta nadaje się zwłaszcza do analizy danych, 'machine learning' i nauki. Od strony technicznej Colab to hostowana usługa notatników Jupyter, do której używania nie trzeba niczego konfigurować. Zapewnia ona bezpłatny dostęp do zasobów obliczeniowych obejmujących m.in. układy GPU.

Czy korzystanie z tej usługi naprawdę jest bezpłatne? Jakie są ograniczenia tej usługi?

Tak. Korzystanie z Colab jest bezpłatne. Jaki jest haczyk? Zasoby Colab nie są gwarantowane ani nieograniczone, a limity wykorzystania czasem się zmieniają. Jest to konieczne, by ta usługa udostępniała zasoby bezpłatnie. Użytkownicy, którym zależy na bardziej niezawodnym dostępie do lepszych zasobów, powinni się zainteresować usługą Colab Pro.

Czym różnią się Jupyter i Colab?

Jupyter to projekt open source, na którym opiera się działanie usługi Colab. Umożliwia ona korzystanie z notatników Jupyter i udostępnianie ich innym użytkownikom bez konieczności pobierania, instalowania ani uruchamiania żadnych aplikacji.

Gdzie są przechowywane moje notatniki i czy mogę je udostępniać?

Notatniki Colab są przechowywane na Dysku Google, ale można je też wczytywać z usługi GitHub. Można je udostępniać w taki sam sposób jak inne pliki w Dokumentach i Arkuszach Google. Wystarczy kliknąć przycisk „Udostępnij” w prawym górnym rogu dowolnego notatnika Colab lub wykonać te instrukcje udostępniania plików na Dysku Google.

Korzystanie z usługi Colab

By korzystać Colab, musisz mieć konto Google. Będąc zalogwanym otwierasz stronę https://colab.research.google.com. Po otwarciu strony zobaczysz ekran podobny do tego poniżej:

Jak widzisz możesz nie tylko stworzyć swój notatnik, wybrać ten który stworzyłe(a)ś wcześniej ale też masz dostęp do publicznie udostępnionych notatników, przykładów itp. Kliknij na link "New notebook" lub "Nowy notatnik" jeśli Twoja przeglądarka ma wybrany język polski.

Nowe komórki dodajesz w notatniku podobnie jak w Jupyter. Jeśli nie wiesz co to jest "komórka" - dokument notatnika zwiera sekwencję kodów i tekstu. Tekst to np tytuł, opis. Kod to... kod języka, np. pobierz dane, wyświetl coś. By dodać nową komórkę, kliknij na obszar zaznaczony na poniższym obrazku:

Gotowe fragmenty kodu

Google Colabs ma gotowe, wbudowane fragmenty kodu ktore możesz użyć jako przykłady w swoich projektach. Wybierz z lewego paska menu "Fragmenty kodu". Wyszukaj kod który Cię interesuje i kliknij "Wstaw":

 

Udostępnianie notatnika

Masz do dyspozycji kilka opcji udostępnienia swojego projektu. Możesz to zrobić udostępniając jako dokument w Google Drive. Innym sposobem jest publikacja notatnika w GitHub (wybierz z menu "Plik" opcję "Zapisz kopię w usłudze GitHub". Możesz wreszcie zapisać notatnik jako plik na swoim dysku i udostępnić preferowaną przez Ciebie metodą. Pamiętaj że plik notatnika Google Labs jest kompatybilny z Jupyter Notebook czy JupyterLab.

Baza projektów

Pod adresem https://research.google.com/seedbank znajdziesz wiele gotowych przykładów projektów rożnej tematyki. Jest to świetne miejsce do nauki Machine Learning, analizy danych i innych zastosowań.

Interaktywne tabele

Jedna z "fajniejszych" opcji Colab są Interaktywne Tabele. Dzięki nim możesz przy pracy z zestawem danych wygodnie przeglądać wczytane dane, sortować je i filtrować. Wczytaj gotowy notatnik/przykład z adresu https://colab.research.google.com/notebooks/data_table.ipynb

Wiecej o interaktywnych tabelach znajdziesz w materiale video: https://www.youtube.com/watch?v=rNgswRZ2C1Y