Google Colab - Hızlı Kılavuz

Google, AI araştırmasında oldukça agresif. Uzun yıllar boyunca Google,TensorFlow ve adında bir geliştirme aracı Colaboratory. Bugün TensorFlow açık kaynaklı ve 2017'den beri, Google Colaboratory'u herkesin kullanımına açık hale getirdi. Colaboratory artık Google Colab olarak biliniyor veyaColab.

Google'ın geliştiricilere sunduğu bir diğer çekici özellik de GPU kullanımıdır. Colab, GPU'yu destekler ve tamamen ücretsizdir. Bunu halka açık hale getirmenin nedenleri, yazılımını akademisyenlerde makine öğrenimi ve veri bilimi öğretmek için bir standart haline getirmek olabilir. Ayrıca, kullanım başına satılan Google Cloud API'leri için bir müşteri tabanı oluşturmak için uzun vadeli bir perspektife sahip olabilir.

Sebeplerden bağımsız olarak, Colab'ın tanıtımı, makine öğrenimi uygulamalarının öğrenilmesini ve geliştirilmesini kolaylaştırdı.

Öyleyse, Colab ile başlayalım.

Kullandıysanız Jupyternot defteri daha önce, Google Colab'ı kullanmayı hızlı bir şekilde öğreniyordunuz. Kesin olmak gerekirse, Colab tamamen bulutta çalışan ücretsiz bir Jupyter dizüstü bilgisayar ortamıdır. En önemlisi, bir kurulum gerektirmez ve oluşturduğunuz not defterleri ekip üyeleriniz tarafından eşzamanlı olarak düzenlenebilir - tıpkı Google Dokümanlar'daki belgeleri düzenlediğiniz gibi. Colab, dizüstü bilgisayarınıza kolayca yüklenebilen birçok popüler makine öğrenimi kitaplığını destekler.

Colab Size Ne Sunuyor?

Bir programcı olarak, Google Colab kullanarak aşağıdakileri gerçekleştirebilirsiniz.

  • Python'da kod yazın ve yürütün

  • Matematiksel denklemleri destekleyen kodunuzu belgeleyin

  • Defterleri Oluştur / Yükle / Paylaş

  • Defterleri Google Drive'dan / Google Drive'a Aktarma / Kaydetme

  • Not defterlerini GitHub'dan İçe Aktar / Yayınla

  • Örneğin Kaggle'dan harici veri kümelerini içe aktarın

  • PyTorch, TensorFlow, Keras, OpenCV'yi entegre edin

  • Ücretsiz GPU ile ücretsiz Bulut hizmeti

Bu bölümde, ilk önemsiz not defterinizi oluşturacak ve çalıştıracaksınız. Gereken her yerde verilen adımları izleyin.

Note - Colab, not defterlerinizi saklamak için dolaylı olarak Google Drive'ı kullandığından, devam etmeden önce Google Drive hesabınızda oturum açtığınızdan emin olun.

Step 1 - Tarayıcınızda aşağıdaki URL'yi açın - https://colab.research.google.com Tarayıcınız aşağıdaki ekranı görüntüleyecektir (Google Drive'ınızda oturum açtığınızı varsayarak) -

Step 2 - tıklayın NEW PYTHON 3 NOTEBOOKekranın altındaki bağlantı. Aşağıdaki ekranda gösterildiği gibi yeni bir defter açılacaktır.

Fark etmiş olabileceğiniz gibi, dizüstü bilgisayar arayüzü Jupyter'de sağlanan ile oldukça benzerdir. Python kodunuzu gireceğiniz bir kod penceresi vardır.

Defter Adını Ayarlama

Varsayılan olarak, not defteri UntitledXX.ipynb adlandırma kuralını kullanır. Defterin adını değiştirmek için, bu ada tıklayın ve burada gösterildiği gibi düzenleme kutusuna istediğiniz adı yazın -

Bu defteri şu şekilde adlandıracağız MyFirstColabNotebook. Bu adı düzenleme kutusuna yazın ve ENTER tuşuna basın. Defter, şimdi verdiğiniz adı alacaktır.

Kodu Girme

Şimdi kod penceresine önemsiz bir Python kodu girecek ve onu çalıştıracaksınız.

Kod penceresine aşağıdaki iki Python ifadesini girin -

import time
print(time.ctime())

Yürütme Kodu

Kodu yürütmek için kod penceresinin sol tarafındaki oka tıklayın.

Bir süre sonra, burada gösterildiği gibi kod penceresinin altında çıktıyı göreceksiniz -

Mon Jun 17 05:58:40 2019

Çıktı ekranının sol tarafındaki simgeye tıklayarak istediğiniz zaman çıktıyı temizleyebilirsiniz.

Kod Hücreleri Ekleme

Not defterinize daha fazla kod eklemek için aşağıdakileri seçin menu seçenekler -

Insert / Code Cell

Alternatif olarak, fareyi Kod hücresinin alt orta kısmına getirin. Ne zamanCODE ve TEXTdüğmeleri görünür, yeni bir hücre eklemek için KOD üzerine tıklayın. Bu, aşağıdaki ekran görüntüsünde gösterilmektedir -

Mevcut hücrenin altına yeni bir kod hücresi eklenecektir. Yeni oluşturulan kod penceresine aşağıdaki iki ifadeyi ekleyin -

time.sleep(5)
print (time.ctime())

Şimdi, bu hücreyi çalıştırırsanız, aşağıdaki çıktıyı göreceksiniz -

Mon Jun 17 04:50:27 2019

Elbette, iki zaman dizisi arasındaki zaman farkı 5 saniye değildir. Yeni kodu eklemek için biraz zaman ayırdığınız için bu açıktır. Colab, dizüstü bilgisayarınızdaki tüm kodları kesintisiz olarak çalıştırmanıza olanak tanır.

Tümünü Çalıştır

Not defterinizdeki kodun tamamını kesintisiz olarak çalıştırmak için aşağıdaki menü seçeneklerini yürütün:

Runtime / Reset and run all…

Size aşağıda gösterildiği gibi çıktı verecektir -

İki çıkış arasındaki zaman farkının şimdi tam olarak 5 saniye olduğuna dikkat edin.

Yukarıdaki eylem, aşağıdaki iki menü seçeneği uygulanarak da başlatılabilir -

Runtime / Restart runtime…

veya

Runtime / Restart all runtimes…

Bunu takiben

Runtime / Run all

Aşağıdaki farklı menü seçeneklerini inceleyin. Runtime dizüstü bilgisayarı yürütmek için kullanabileceğiniz çeşitli seçenekleri tanımak için menü.

Hücre Sırasını Değiştirme

Defteriniz çok sayıda kod hücresi içerdiğinde, bu hücrelerin çalışma sırasını değiştirmek istediğiniz durumlarla karşılaşabilirsiniz. Bunu, taşımak istediğiniz hücreyi seçipUP CELL veya DOWN CELL aşağıdaki ekran görüntüsünde gösterilen düğmeler -

Hücreyi tek bir konumdan daha fazla taşımak için düğmelere birden çok kez tıklayabilirsiniz.

Hücre Siliniyor

Projenizin geliştirilmesi sırasında, defterinize şu anda istenmeyen birkaç hücre eklemiş olabilirsiniz. Bu tür hücreleri tek bir tıklama ile projenizden kolayca kaldırabilirsiniz. Kod hücrenizin sağ üst köşesindeki dikey noktalı simgeye tıklayın.

Tıkla Delete cell seçeneği ve mevcut hücre silinecektir.

Şimdi, önemsiz bir defterin nasıl çalıştırılacağını öğrendiğinizde, Colab'ın diğer yeteneklerini keşfedelim.

Kod hücresi tam Python sözdizimini desteklediğinden, Python'u kullanabilirsiniz. commentsKod penceresinde kodunuzu açıklamak için. Bununla birlikte, ML algoritmalarını göstermek için çoğu zaman basit metin tabanlı yorumlardan daha fazlasına ihtiyacınız vardır. Makine öğrenimi yoğun bir şekilde matematiği kullanır ve bu terimleri ve denklemleri okuyucularınıza açıklamak için matematiksel temsiller için bir dil olan LaTex'i destekleyen bir editöre ihtiyacınız vardır. Colab sağlarText Cells bu amaç için.

Makine öğrenimi için tipik olarak kullanılan birkaç matematiksel denklem içeren bir metin hücresi aşağıdaki ekran görüntüsünde gösterilmektedir -

Bu bölümde ilerlerken, yukarıdaki çıktının üretilmesi için kodu göreceğiz.

Metin Hücreleri kullanılarak biçimlendirilir markdown- basit bir biçimlendirme dili. Şimdi not defterinize nasıl metin hücreleri ekleyeceğinizi görelim ve ona matematiksel denklemler içeren bazı metinler ekleyelim.

Markdown Örnekleri

Yeteneklerini göstermek için birkaç biçimlendirme dili sözdizimi örneğine bakalım.

Metin hücresine aşağıdaki metni yazın.

This is **bold**.
This is *italic*.
This is ~strikethrough~.

Yukarıdaki komutların çıktısı, burada gösterildiği gibi Hücrenin sağ tarafında oluşturulur.

Matematiksel Denklemler

Ekle Text Cell not defterinize girin ve metin penceresine aşağıdaki markdown sözdizimini girin -

$\sqrt{3x-1}+(1+x)^2$

Metin hücresinin sağ tarafındaki panelde indirim kodunun hemen oluşturulduğunu göreceksiniz. Bu, aşağıdaki ekran görüntüsünde gösterilmektedir -

Hit Enter ve indirgeme kodu metin hücresinden kaybolur ve yalnızca oluşturulan çıktı gösterilir.

Burada gösterildiği gibi daha karmaşık bir denklem deneyelim -

$e^x = \sum_{i = 0}^\infty \frac{1}{i!}x^i$

Oluşturulan çıktı, hızlı başvuru için burada gösterilmektedir.

Örnek Denklemler için Kod

İşte daha önceki bir ekran görüntüsünde gösterilen örnek denklemlerin kodu -

Constraints are
   - $3x_1 + 6x_2 + x_3 =< 28$
   - $7x_1 + 3x_2 + 2x_3 =< 37$
   - $4x_1 + 5x_2 + 2x_3 =< 19$
   - $x_1,x_2,x_3 >=0 $

The trial vector is calculated as follows:
- $u_i(t) = x_i(t) + \beta(\hat{x}(t) − x_i(t)) + \beta \sum_{k = 1}^{n_v}(x_{i1,k}(t) − x_{i2,k}(t))$
$f(x_1, x_2) = 20 + e - 20exp(-0.2 \sqrt {\frac {1}{n} (x_1^2 + x_2^2)}) - exp (\frac {1}{n}(cos(2\pi x_1) + cos(2\pi x_2))$

$x ∈ [-5, 5]$
>$A_{m,n} =
   \begin{pmatrix}
   a_{1,1} > a_{1,2} > \cdots > a_{1,n} \\
   a_{2,1} > a_{2,2} > \cdots > a_{2,n} \\
   \vdots > \vdots > \ddots > \vdots \\
   a_{m,1} > a_{m,2} > \cdots > a_{m,n}
   \end{pmatrix}$

Tam işaretleme sözdizimini açıklamak bu eğiticinin kapsamı dışındadır. Bir sonraki bölümde, çalışmanızı nasıl kaydedeceğinizi göreceğiz.

Colab, çalışmanızı Google Drive'a veya hatta doğrudan GitHub deponuza kaydetmenize olanak tanır.

Google Drive'a Kaydediliyor

Colab, çalışmanızı Google Drive'ınıza kaydetmenize olanak tanır. Defterinizi kaydetmek için aşağıdaki menü seçeneklerini seçin -

File / Save a copy in Drive…

Aşağıdaki ekranı göreceksiniz -

İşlem, dizüstü bilgisayarınızın bir kopyasını oluşturacak ve onu sürücünüze kaydedecektir. Daha sonra kopyayı seçtiğiniz adla yeniden adlandırabilirsiniz.

GitHub'a kaydetme

Aşağıdaki menü seçeneklerini seçerek çalışmanızı GitHub deponuza da kaydedebilirsiniz -

File / Save a copy in GitHub...

Menü seçimi, hızlı başvuru için aşağıdaki ekran görüntüsünde gösterilmektedir -

GitHub'a giriş ekranını görene kadar beklemeniz gerekecek.

Şimdi kimlik bilgilerinizi girin. Bir deponuz yoksa, yeni bir tane oluşturun ve aşağıdaki ekran görüntüsünde gösterildiği gibi projenizi kaydedin -

Bir sonraki bölümde, çalışmanızı başkalarıyla nasıl paylaşacağınızı öğreneceğiz.

Oluşturduğunuz not defterini diğer ortak geliştiricilerle paylaşmak için, Google Drive'ınızda oluşturduğunuz kopyayı paylaşabilirsiniz.

Not defterini genel hedef kitleye yayınlamak için GitHub deponuzdan paylaşabilirsiniz.

Çalışmanızı paylaşmanın bir yolu daha var ve bu da SHAREColab not defterinizin sağ üst köşesindeki bağlantı. Bu, burada gösterildiği gibi paylaşım kutusunu açacaktır -

Mevcut belgeyi paylaşmak istediğiniz kişilerin e-posta kimliklerini girebilirsiniz. Yukarıdaki ekranda gösterilen üç seçenekten birini seçerek erişim türünü ayarlayabilirsiniz.

Tıkla Get shareable linkNot defterinizin URL'sini alma seçeneği. Kimlerle paylaşacağınız seçenekleri aşağıdaki gibi bulacaksınız -

  • Belirli bir grup insan

  • Kuruluşunuzdaki meslektaşlar

  • Bağlantıya sahip olan herkes

  • Tümü web üzerinde herkese açık

Şimdi. bir not defterini nasıl oluşturacağınızı / yürüteceğinizi / kaydedeceğinizi / paylaşacağınızı biliyorsunuz. Kod hücresinde şimdiye kadar Python kullandık. Kod hücresi, sistem komutlarını çağırmak için de kullanılabilir. Bu daha sonra açıklanacaktır.

Jupyter, birçok yaygın sistem işlemi için kısayollar içerir. Colab Kod hücresi bu özelliği destekler.

Basit Komutlar

Sistem komutu yankısını kullanan Kod hücresine aşağıdaki kodu girin.

message = 'A Great Tutorial on Colab by Tutorialspoint!'
greeting = !echo -e '$message\n$message'
greeting

Şimdi, hücreyi çalıştırırsanız, aşağıdaki çıktıyı göreceksiniz -

['A Great Tutorial on Colab by Tutorialspoint!', 'A Great Tutorial on Colab by Tutorialspoint!']

Uzak Veri Alma

Veri kümesini uzaktaki bir sunucudan yükleyen başka bir örneğe bakalım. Kod hücrenize aşağıdaki komutu yazın -

!wget http://mlr.cs.umass.edu/ml/machine-learning-databases/adult/adult.data -P "/content/drive/My Drive/app"

Kodu çalıştırırsanız, aşağıdaki çıktıyı görürsünüz -

--2019-06-20 10:09:53-- http://mlr.cs.umass.edu/ml/machine-learning-databases/adult/adult.data
Resolving mlr.cs.umass.edu (mlr.cs.umass.edu)... 128.119.246.96
Connecting to mlr.cs.umass.edu (mlr.cs.umass.edu)|128.119.246.96|:80... connected. 
HTTP request sent, awaiting response... 200 OK 
Length: 3974305 (3.8M) [text/plain] 
Saving to: ‘/content/drive/My Drive/app/adult.data.1’

adult.data.1 100%[===================>] 3.79M 1.74MB/s in 2.2s

2019-06-20 10:09:56 (1.74 MB/s) - ‘/content/drive/My Drive/app/adult.data.1’ saved [3974305/3974305]

Mesajın dediği gibi, adult.data.1dosyası şimdi sürücünüze eklendi. Sürücünüzün klasör içeriğini inceleyerek bunu doğrulayabilirsiniz. Alternatif olarak, aşağıdaki kodu yeni bir Kod hücresine yazın -

import pandas as pd
data = pd.read_csv("/content/drive/My Drive/app/adult.data.1")
data.head(5)

Kodu şimdi çalıştırın ve aşağıdaki çıktıyı göreceksiniz -

Benzer şekilde, sistem komutlarının çoğu kod hücrenizde komutun başına bir Ünlem İşareti (!) Eklenerek çağrılabilir. Çağırabileceğiniz komutların tam listesini vermeden önce başka bir örneğe bakalım.

Git Deposunu Klonlama

GitHub deposunun tamamını kullanarak Colab'a klonlayabilirsiniz. gitkomut. Örneğin, keras öğreticisini klonlamak için Kod hücresine aşağıdaki komutu yazın -

!git clone https://github.com/wxs/keras-mnist-tutorial.git

Komutu başarılı bir şekilde çalıştırdıktan sonra, aşağıdaki çıktıyı görürsünüz -

Cloning into 'keras-mnist-tutorial'...
remote: Enumerating objects: 26, done.
remote: Total 26 (delta 0), reused 0 (delta 0), pack-reused 26
Unpacking objects: 100% (26/26), done.

Depo klonlandıktan sonra, içinde bir Jupyter projesi (örn. Keras.ipyab'da MINST) bulun, dosya adına sağ tıklayın ve Open With / Colaboratory Colab'da projeyi açmak için menü seçeneği.

Sistem Takma Adları

Genel işlemler için kısayolların bir listesini almak için aşağıdaki komutu yürütün -

!ls /bin

Listeyi aşağıda gösterildiği gibi çıktı penceresinde göreceksiniz -

bash*             journalctl*       sync*
bunzip2*          kill*             systemctl*
bzcat*            kmod*             systemd@
bzcmp@            less*             systemd-ask-password*
bzdiff*           lessecho*         systemd-escape*
bzegrep@          lessfile@         systemd-hwdb*
bzexe*            lesskey*          systemd-inhibit*
bzfgrep@          lesspipe*         systemd-machine-id-setup*
bzgrep*           ln*               systemd-notify*
bzip2*            login*            systemd-sysusers*
bzip2recover*     loginctl*         systemd-tmpfiles*
bzless@           ls*               systemd-tty-ask-password-agent*
bzmore*           lsblk*            tar*
cat*              lsmod@            tempfile*
chgrp*            mkdir*            touch*
chmod*            mknod*            true*
chown*            mktemp*           udevadm*
cp*               more*             ulockmgr_server*
dash*             mount*            umount*
date*             mountpoint*       uname*
dd*               mv*               uncompress*
df*               networkctl*       vdir*
dir*              nisdomainname@    wdctl*
dmesg*            pidof@            which*
dnsdomainname@    ps*               ypdomainname@
domainname@       pwd*              zcat*
echo*             rbash@            zcmp*
egrep*            readlink*         zdiff*
false*            rm*               zegrep*
fgrep*            rmdir*            zfgrep*
findmnt*          run-parts*        zforce*
fusermount*       sed*              zgrep*
grep*             sh@               zless*
gunzip*           sh.distrib@       zmore*
gzexe*            sleep*            znew*
gzip*             stty*
hostname*         su*

Yaptığımız gibi bu komutlardan herhangi birini çalıştırın. echo ve wget. Bir sonraki bölümde, önceden oluşturduğunuz Python kodunuzu nasıl çalıştıracağınızı göreceğiz.

Diyelim ki, Google Drive'ınızda depolanan bazı Python kodunuz var. Şimdi, daha fazla değişiklik yapmak için bu kodu Colab'a yüklemek isteyeceksiniz. Bu bölümde, Google Drive'ınızda depolanan kodun nasıl yüklenip çalıştırılacağını göreceğiz.

Montaj Sürücüsü

Tools / Command palette

Bu ekran görüntüsünde gösterildiği gibi komutların listesini göreceksiniz -

Bağlama komutunu bulmak için arama kutusuna "m" gibi birkaç harf yazın. SeçinizMount Drivelisteden komut. Aşağıdaki kod, Kod hücrenize eklenecektir.

# Run this cell to mount your Google Drive.
from google.colab import drive
drive.mount('/content/drive')

Bu kodu çalıştırırsanız, kimlik doğrulama kodunu girmeniz istenecektir. İlgili ekran aşağıda gösterildiği gibi görünür -

Tarayıcınızda yukarıdaki URL'yi açın. Google hesabınıza giriş yapmanız istenecektir. Şimdi, aşağıdaki ekranı göreceksiniz -

İzinleri verirseniz, kodunuzu aşağıdaki şekilde alacaksınız -

Bu kodu Kod hücresine kesip yapıştırın ve ENTER tuşuna basın. Bir süre sonra, sürücü aşağıdaki ekran görüntüsünde görüldüğü gibi monte edilecektir -

Artık sürücünüzün içeriğini Colab'da kullanmaya hazırsınız.

Sürücü İçeriklerini Listeleme

Aşağıdaki gibi ls komutunu kullanarak sürücünün içeriğini listeleyebilirsiniz -

!ls "/content/drive/My Drive/Colab Notebooks"

Bu komut Colab Notebooks klasörünüzün içeriğini listeleyecektir. Sürücü içeriklerimin örnek çıktıları burada gösterilmektedir -

Greeting.ipynb hello.py LogisticRegressionCensusData.ipynb LogisticRegressionDigitalOcean.ipynb MyFirstColabNotebook.ipynb SamplePlot.ipynb

Python Kodunu Çalıştırma

Şimdi, Google Drive'ınızda depolanan hello.py adlı bir Python dosyasını çalıştırmak istediğinizi söyleyelim. Kod hücresine aşağıdaki komutu yazın -

!python3 "/content/drive/My Drive/Colab Notebooks/hello.py"

Merhaba.py'nin içeriği referansınız için burada verilmiştir -

print("Welcome to TutorialsPoint!")

Şimdi aşağıdaki çıktıyı göreceksiniz -

Welcome to TutorialsPoint!

Colab, metin çıktısının yanı sıra grafik çıktıları da destekler. Bunu bir sonraki bölümde göreceğiz.

Colab ayrıca grafikler gibi zengin çıktıları da destekler. Kod hücresine aşağıdaki kodu yazın.

import numpy as np
from matplotlib import pyplot as plt

y = np.random.randn(100)
x = [x for x in range(len(y))]

plt.plot(x, y, '-')
plt.fill_between(x, y, 200, where = (y > 195), facecolor='g', alpha=0.6)

plt.title("Sample Plot")
plt.show()

Şimdi, kodu çalıştırırsanız, aşağıdaki çıktıyı göreceksiniz -

Grafik çıktının Kod hücresinin çıktı bölümünde gösterildiğine dikkat edin. Aynı şekilde, program kodunuz boyunca birkaç tür grafik oluşturabilecek ve görüntüleyebileceksiniz.

Şimdi, Colab'ın temellerine aşina olduğunuz için, Colab'deki Python kod geliştirmenizi kolaylaştıran özelliklere geçelim.

Günümüz geliştiricileri, dil ve kitaplık sözdizimlerine yönelik bağlama duyarlı yardıma büyük ölçüde güveniyor. Bu nedenle IDE'ler yaygın olarak kullanılmaktadır. Colab not defteri düzenleyicisi bu kolaylığı sağlar.

Bu bölümde, Colab'de Python kodu yazarken bağlama duyarlı yardımın nasıl isteneceğini görelim. Gereken her yerde verilen adımları izleyin.

İşlev Listesi

Step 1 - Yeni bir not defteri açın ve Kod hücresine aşağıdaki kodu yazın -

import torch

Step 2- Kod hücresinin sol panelindeki Çalıştır simgesine tıklayarak kodu çalıştırın. Başka bir Kod hücresi ekleyin ve aşağıdaki kodu yazın -

Tensor = torch.

Bu noktada, içinde mevcut olan çeşitli işlevlerin neler olduğunu unuttuğunuzu varsayalım. torchmodül. İşlev adlarında bağlama duyarlı yardım isteyebilirsiniz.TABanahtar. Varlığına dikkat edinDOT sonra torchanahtar kelime. Bu DOT olmadan bağlam yardımını göremezsiniz. Ekranınız buradaki ekran görüntüsünde gösterildiği gibi görünecektir -

Şimdi listeden istediğiniz işlevi seçin ve kodlamaya devam edin.

İşlev Dokümantasyonu

Colab size herhangi bir function veya class bağlama duyarlı yardım olarak.

Kod pencerenize aşağıdaki kodu yazın -

Tensor = torch.cos(

Şimdi vur TAB ve belgeleri göreceksiniz cosBuradaki ekran görüntüsünde gösterildiği gibi açılır pencerede. Yazmanız gerektiğini unutmayınopen parenthesis TAB tuşuna basmadan önce.

Bir sonraki bölümde göreceğiz Magics Colab'de sistem takma adlarıyla yaptığımızdan daha güçlü şeyler yapmamızı sağlıyor.

Magics, mini kapsamlı bir komut dili sağlayan bir dizi sistem komutudur.

Sihirler iki türdendir -

  • Çizgi büyücüler

  • Hücre büyüsü

Adı olarak satır büyüsü, tek bir komut satırından oluştuğunu gösterirken, hücre büyüsü kod hücresinin tüm gövdesini kaplar.

Satır büyüsü durumunda, komutun başına tek bir% karakteri eklenir ve hücre büyüsü durumunda, başına iki% karakter (%%) eklenir.

Bunları açıklamak için her ikisinin bazı örneklerine bakalım.

Çizgi Büyüleri

Kod hücrenize aşağıdaki kodu yazın -

%ldir

Yerel dizininizin içeriğini göreceksiniz, buna benzer bir şey -

drwxr-xr-x 3 root 4096 Jun 20 10:05 drive/
drwxr-xr-x 1 root 4096 May 31 16:17 sample_data/

Aşağıdaki komutu deneyin -

%history

Bu, daha önce yürüttüğünüz komutların tam geçmişini gösterir.

Hücre Büyüleri

Kod hücrenize aşağıdaki kodu yazın -

%%html
<marquee style='width: 50%; color: Green;'>Welcome to Tutorialspoint!</marquee>

Şimdi, kodu çalıştırırsanız ve burada gösterildiği gibi ekranda kayan hoş geldiniz mesajını göreceksiniz -

Aşağıdaki kod, belgenize SVG ekleyecektir.

%%html
<svg xmlns="https://www.w3.org/2000/svg" viewBox="0 0 600 400" width="400" height="400">
   <rect x="10" y="00" width="300" height="100" rx="0" style="fill:orange; stroke:black; fill-opacity:1.0" />
   <rect x="10" y="100" width="300" height="100" rx="0" style="fill:white; stroke:black; fill-opacity:1.0;" />
   <rect x="10" y="200" width="300" height="100" rx="0" style="fill:green; stroke:black; fill-opacity:1.0;" />
</svg>

Kodu çalıştırırsanız, aşağıdaki çıktıyı görürsünüz -

Sihir Listesi

Desteklenen sihirlerin tam bir listesini almak için aşağıdaki komutu uygulayın -

%lsmagic

Aşağıdaki çıktıyı göreceksiniz -

Available line magics:
%alias %alias_magic %autocall %automagic %autosave %bookmark %cat %cd %clear
%colors %config %connect_info %cp %debug %dhist %dirs %doctest_mode %ed %edit
%env %gui %hist %history %killbgscripts %ldir %less %lf %lk %ll %load %load_ext
%loadpy %logoff %logon %logstart %logstate %logstop %ls %lsmagic %lx %macro
%magic %man %matplotlib %mkdir %more %mv %notebook %page %pastebin %pdb %pdef
%pdoc %pfile %pinfo %pinfo2 %pip %popd %pprint %precision %profile %prun
%psearch %psource %pushd %pwd %pycat %pylab %qtconsole %quickref %recall
%rehashx %reload_ext %rep %rerun %reset %reset_selective %rm %rmdir %run %save
%sc %set_env %shell %store %sx %system %tb %tensorflow_version %time %timeit
%unalias %unload_ext %who %who_ls %whos %xdel %xmode

Available cell magics:
%%! %%HTML %%SVG %%bash %%bigquery %%capture %%debug %%file %%html %%javascript
%%js %%latex %%perl %%prun %%pypy %%python %%python2 %%python3 %%ruby %%script
%%sh %%shell %%svg %%sx %%system %%time %%timeit %%writefile

Automagic is ON, % prefix IS NOT needed for line magics.

Daha sonra, program değişkenlerini çalışma zamanında ayarlamak için Colab'de başka bir güçlü özellik öğreneceksiniz.

Colab, çalışma zamanında kullanıcıdan gelen girdileri kabul etmenize olanak tanıyan Formlar adlı çok kullanışlı bir yardımcı program sağlar. Şimdi not defterinize nasıl form ekleyeceğinizi görelim.

Form Ekleme

Daha önceki bir derste, bir zaman gecikmesi oluşturmak için aşağıdaki kodu kullandınız -

import time
print(time.ctime())
time.sleep(5)
print (time.ctime())

Diyelim ki, 5 saniyelik sabit bir gecikme yerine kullanıcının ayarladığı bir zaman gecikmesi istiyorsunuz. Bunun için, uyku zamanını kabul etmek için Kod hücresine bir Form ekleyebilirsiniz.

Yeni bir defter açın. TıklaOptions(dikey noktalı) menü. Aşağıdaki ekran görüntüsünde görüldüğü gibi bir açılır menü belirir -

Şimdi seçin Add a formseçeneği. Formu, buradaki ekran görüntüsünde görüldüğü gibi bir Varsayılan başlıkla Kod hücrenize ekleyecektir -

Formun başlığını değiştirmek için, Settingsdüğmesi (sağdaki kalem simgesi). Burada gösterildiği gibi bir ayarlar ekranı açılacaktır:

Form başlığını şu şekilde değiştirin: “Form”ve formu kaydedin. Seçtiğiniz başka bir adı kullanabilirsiniz. Eklediğine dikkat edin@title kod hücrenize.

Yukarıdaki ekranda diğer seçenekleri daha sonra keşfedebilirsiniz. Bir sonraki bölümde, forma giriş alanlarının nasıl eklendiğini öğreneceğiz.

Form Alanları Ekleme

Bir form alanı eklemek için, Options Kod hücresindeki menü, Formalt menüleri ortaya çıkarmak için. Ekran aşağıda gösterildiği gibi görünecektir -

Seçiniz Add a form fieldmenü seçeneği. Burada görüldüğü gibi bir iletişim kutusu açılır -

Bırak Form field type -e input. Değiştir Variable name -e sleeptime ve ayarla Variable type -e integer. Tıklayarak değişiklikleri kaydedin.Save buton.

Ekranınız şimdi aşağıdaki gibi görünecektir. sleeptime değişken koda eklendi.

Sonra, formun nasıl test edileceğini görelim ve bunu kullanan bir kod ekleyerek sleeptime değişken.

Test Formu

Form hücresinin altına yeni bir Kod hücresi ekleyin. Aşağıda verilen kodu kullanın -

import time
print(time.ctime())
time.sleep(sleeptime)
print (time.ctime())

Bu kodu önceki derste kullandınız. Geçerli saati yazdırır, belirli bir süre bekler ve yeni bir zaman damgası yazdırır. Programın beklediği süre, adı verilen değişkende belirlenir.sleeptime.

Şimdi geri dönün Form Hücre ve 2 değerini yazın. sleeptime. Aşağıdaki menüyü seçin -

Runtime / Run all

Bu, tüm dizüstü bilgisayarı çalıştırır. Aşağıda gösterildiği gibi bir çıktı ekranı görebilirsiniz.

İçin giriş değerinizi 2 aldığına dikkat edin.

uyku zamanı

. Bunu farklı bir değerle değiştirmeyi deneyin ve Run all etkisini görmek için.

Metin Girme

Formunuzda bir metin girişini kabul etmek için aşağıdaki kodu yeni bir kod hücresine girin.

name = 'Tutorialspoint' #@param {type:"string"}
print(name)

Şimdi, Kod hücresini çalıştırırsanız, formda ayarladığınız ad ne olursa olsun ekrana yazdırılır. Varsayılan olarak, ekranda aşağıdaki çıktı görünecektir.

Tutorialspoint

Bir tam sayı girişi oluşturmak için menü seçeneklerini kullanabileceğinizi unutmayın. Text giriş alanı.

Açılır liste

Formunuza bir açılır liste eklemek için aşağıdaki kodu kullanın -

color = 'green' #@param ["red", "green", "blue"]
print(color)

Bu, üç değer içeren bir açılır liste oluşturur - kırmızı, yeşil ve mavi. Varsayılan seçim yeşildir.

Açılır liste aşağıdaki ekran görüntüsünde gösterilmektedir -

Tarih Girişi

Colab Formu, kodunuzdaki tarihleri ​​doğrulamalarla birlikte kabul etmenizi sağlar. Kodunuza tarih girmek için aşağıdaki kodu kullanın.

#@title Date fields
date_input = '2019-06-03' #@param {type:"date"}
print(date_input)

Form ekranı aşağıdaki gibi görünür.

Yanlış bir tarih değeri girmeyi deneyin ve doğrulamaları gözlemleyin.

Şimdiye kadar Colab'ı Python kodunuzla Jupyter not defterlerini oluşturmak ve yürütmek için nasıl kullanacağınızı öğrendiniz. Sonraki bölümde, popüler makine öğrenimi kitaplıklarını dizüstü bilgisayarınıza nasıl yükleyeceğinizi göreceğiz, böylece bunları Python kodunuzda kullanabilirsiniz.

Colab, piyasada bulunan makine öğrenimi kitaplıklarının çoğunu destekler. Bu bölümde, bu kitaplıkların Colab dizüstü bilgisayarınıza nasıl kurulacağına hızlı bir bakış atalım.

Bir kitaplık kurmak için şu seçeneklerden birini kullanabilirsiniz -

!pip install

veya

!apt-get install

Keras

Python'da yazılan Keras, TensorFlow, CNTK veya Theano'nun üzerinde çalışır. Sinir ağı uygulamalarının kolay ve hızlı prototiplenmesini sağlar. Hem evrişimli ağları (CNN) hem de tekrarlayan ağları ve bunların kombinasyonlarını destekler. Sorunsuz bir şekilde GPU'yu destekler.

Keras'ı yüklemek için aşağıdaki komutu kullanın -

!pip install -q keras

PyTorch

PyTorch, derin öğrenme uygulamaları geliştirmek için idealdir. Optimize edilmiş bir tensör kitaplığıdır ve GPU etkindir. PyTorch'u kurmak için aşağıdaki komutu kullanın -

!pip3 install torch torchvision

MxNet

Apache MxNet, derin öğrenme için başka bir esnek ve verimli kitaplıktır. MxNet'i kurmak için aşağıdaki komutları uygulayın -

!apt install libnvrtc8.0
!pip install mxnet-cu80

OpenCV

OpenCV, makine öğrenimi uygulamaları geliştirmek için açık kaynaklı bir bilgisayar görme kitaplığıdır. Yüzleri tanıma, nesneleri tanımlama, hareketli nesneleri izleme, görüntüleri dikme vb. Gibi çeşitli uygulamaları destekleyen 2500'den fazla optimize edilmiş algoritmaya sahiptir. Google, Yahoo, Microsoft, Intel, IBM, Sony, Honda, Toyota gibi devler bu kitaplığı kullanıyor. Bu, gerçek zamanlı görüş uygulamaları geliştirmek için son derece uygundur.

OpenCV'yi yüklemek için aşağıdaki komutu kullanın -

!apt-get -qq install -y libsm6 libxext6 && pip install -q -U opencv-python

XGBoost

XGBoost, Hadoop gibi büyük dağıtılmış ortamlarda çalışan dağıtılmış bir gradyan artırma kitaplığıdır. Oldukça verimli, esnek ve taşınabilirdir. Gradient Boosting çerçevesi altında ML algoritmalarını uygular.

XGBoost'u yüklemek için aşağıdaki komutu kullanın -

!pip install -q xgboost==0.4a30

GraphViz

Graphviz, grafik görselleştirmeleri için açık kaynaklı bir yazılımdır. Ağ oluşturma, biyoinformatik, veritabanı tasarımı ve bunun için verilerin görsel arayüzünün istendiği birçok alanda görselleştirme için kullanılır.

GraphViz'i kurmak için aşağıdaki komutu kullanın -

!apt-get -qq install -y graphviz && pip install -q pydot

Bu zamana kadar, popüler makine öğrenimi kitaplıklarını içeren Jupyter not defterleri oluşturmayı öğrendiniz. Artık makine öğrenimi modellerinizi geliştirmeye hazırsınız. Bu, yüksek işlem gücü gerektirir. Colab, dizüstü bilgisayarlarınız için ücretsiz GPU sağlar.

Bir sonraki bölümde, dizüstü bilgisayarınız için GPU'yu nasıl etkinleştireceğinizi öğreneceğiz.

Google, Colab not defterleriniz için ücretsiz GPU kullanımı sağlar.

GPU'yu etkinleştirme

Dizüstü bilgisayarınızda GPU'yu etkinleştirmek için aşağıdaki menü seçeneklerini seçin -

Runtime / Change runtime type

Çıktı olarak aşağıdaki ekranı göreceksiniz -

Seçiniz GPUve dizüstü bilgisayarınız işlem sırasında bulutta sağlanan ücretsiz GPU'yu kullanır. GPU işleme hissini yaşamak için, örnek uygulamayı şuradan çalıştırmayı deneyin:MNIST daha önce klonladığınız öğretici.

!python3 "/content/drive/My Drive/app/mnist_cnn.py"

GPU etkin olmadan aynı Python dosyasını çalıştırmayı deneyin. Yürütme hızındaki farkı fark ettiniz mi?

GPU için test ediliyor

Aşağıdaki kodu çalıştırarak GPU'nun etkin olup olmadığını kolayca kontrol edebilirsiniz -

import tensorflow as tf
tf.test.gpu_device_name()

GPU etkinleştirilirse, aşağıdaki çıktıyı verecektir -

'/device:GPU:0'

Listeleme Cihazları

Dizüstü bilgisayarınızın bulutta yürütülmesi sırasında kullanılan cihazları merak ediyorsanız, aşağıdaki kodu deneyin -

from tensorflow.python.client import device_lib
device_lib.list_local_devices()

Çıkışı aşağıdaki gibi göreceksiniz -

[name: "/device:CPU:0"
   device_type: "CPU"
   memory_limit: 268435456
   locality { }
   incarnation: 1734904979049303143, name: "/device:XLA_CPU:0"
   device_type: "XLA_CPU" memory_limit: 17179869184
   locality { } 
   incarnation: 16069148927281628039
   physical_device_desc: "device: XLA_CPU device", name: "/device:XLA_GPU:0"
   device_type: "XLA_GPU"
   memory_limit: 17179869184
   locality { }
   incarnation: 16623465188569787091
   physical_device_desc: "device: XLA_GPU device", name: "/device:GPU:0"
   device_type: "GPU"
   memory_limit: 14062547764
   locality {
      bus_id: 1
      links { } 
   }
   incarnation: 6674128802944374158
physical_device_desc: "device: 0, name: Tesla T4, pci bus id: 0000:00:04.0, compute capability: 7.5"]

RAM kontrol ediliyor

İşleminiz için mevcut olan bellek kaynaklarını görmek için aşağıdaki komutu yazın -

!cat /proc/meminfo

Aşağıdaki çıktıyı göreceksiniz -

MemTotal: 13335276 kB
MemFree: 7322964 kB
MemAvailable: 10519168 kB
Buffers: 95732 kB
Cached: 2787632 kB
SwapCached: 0 kB
Active: 2433984 kB
Inactive: 3060124 kB
Active(anon): 2101704 kB
Inactive(anon): 22880 kB
Active(file): 332280 kB
Inactive(file): 3037244 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 412 kB
Writeback: 0 kB
AnonPages: 2610780 kB
Mapped: 838200 kB
Shmem: 23436 kB
Slab: 183240 kB
SReclaimable: 135324 kB
SUnreclaim: 47916
kBKernelStack: 4992 kB
PageTables: 13600 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 6667636 kB
Committed_AS: 4801380 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
AnonHugePages: 0 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 303092 kB
DirectMap2M: 5988352 kB
DirectMap1G: 9437184 kB

Artık Google Colab kullanarak Python'da makine öğrenimi modellerinin geliştirilmesine hazırsınız.

Google Colab, Python'da makine öğrenimi modellerini öğrenmek ve hızla geliştirmek için güçlü bir platformdur. Jupyter not defterine dayanır ve işbirliğine dayalı geliştirmeyi destekler. Ekip üyeleri, not defterlerini uzaktan da olsa paylaşabilir ve eşzamanlı olarak düzenleyebilir. Defterler ayrıca GitHub'da yayınlanabilir ve genel halkla paylaşılabilir. Colab, PyTorch, TensorFlow, Keras ve OpenCV gibi birçok popüler ML kitaplığını destekler. Bugünkü kısıtlama, henüz R veya Scala'yı desteklemiyor olmasıdır. Ayrıca seanslar ve büyüklükte bir sınırlama vardır. Faydaları düşünüldüğünde, bunlar yapılması gereken küçük fedakarlıklardır.