- Bağlantıyı al
- X
- E-posta
- Diğer Uygulamalar
- Bağlantıyı al
- X
- E-posta
- Diğer Uygulamalar
Python öğrenme yolculuğunuzda veya bir veri bilimi projesinde ilerlerken, "kendi bilgisayarımda bir şeyler kurmakla uğraşmasam keşke" dediğiniz oldu mu? İşte tam bu noktada, dev bir kurtarıcı sahneye çıkıyor: Google Colaboratory (kısaca Colab)!
Bu yazıda, Colab'ın ne olduğunu, neden bu kadar popüler olduğunu ve Python eğitiminizde size nasıl yardımcı olacağını adım adım keşfedeceğiz. Hazırsanız, bulut tabanlı kodlama maceramıza başlayalım!
Google Colab, Google tarafından sunulan, Jupyter Notebook ortamının bulut tabanlı bir versiyonudur.
Basitçe söylemek gerekirse:
Tarayıcınızda Kodlama: Bilgisayarınıza hiçbir şey (Python, kütüphaneler, özel donanım) kurmanıza gerek kalmadan, doğrudan web tarayıcınız üzerinden Python kodu yazmanıza, çalıştırmanıza ve paylaşmanıza olanak tanır.
Tamamen Ücretsiz: Google Hesabınızla erişilebilir ve kullanımı büyük ölçüde ücretsizdir.
Google Drive Entegrasyonu: Oluşturduğunuz tüm defterler (Notebook'lar) otomatik olarak Google Drive hesabınızda saklanır ve yönetilir.
Colab, özellikle öğrenme aşamasındaki kullanıcılar için bir dizi eşsiz avantaj sunar:
Kurulum Derdi Yok!: Yeni başlayanlar için en büyük engel olan Python ve gerekli kütüphanelerin (NumPy, Pandas, Matplotlib vb.) kurulumu ile uğraşmazsınız. Her şey kullanıma hazırdır.
Donanım Gücü (Ücretsiz GPU/TPU Erişimi): Veri bilimi veya makine öğrenimi gibi yoğun hesaplama gerektiren konulara geçtiğinizde, Colab, ücretsiz olarak GPU (Grafik İşlemci Birimi) ve TPU (Tensor İşlemci Birimi) donanımı sunar. Bu, normal bir bilgisayarda saatler sürecek işlemleri çok daha hızlı yapabileceğiniz anlamına gelir.
GPU: Bilgisayarların ekran kartlarında bulunan, fiziksel bir işlemci birimidir.
TPU: Google tarafından özel olarak tasarlanmış, veri merkezlerinde kullanılan fiziksel bir yonga (ASIC) ve işlemci birimidir.
Google Colab size bu fiziksel donanımlara, Google'ın bulut sunucuları üzerinden uzaktan erişim imkanı sağlar. Yani siz kendi bilgisayarınızdan kod yazarken, o kodlar Colab'ın sağladığı güçlü GPU veya TPU donanımları üzerinde çalıştırılır.
TPU'lar, ev kullanıcıları veya genel şirketler için üretilmiş standart bir donanım değildir. Bunlar, Google'ın kendi veri merkezlerindeki sunucularında, Yapay Zeka (AI) ve Makine Öğrenimi (ML) görevleri için özel olarak tasarlanmış ve konuşlandırılmış donanımlardır.
Kolay Paylaşım ve İşbirliği: Bir Colab defteri, tıpkı Google Dokümanlar gibi, kolayca paylaşılabilir. Eğitmen olarak siz, öğrencilerinize anında çalıştırılabilir kod örnekleri gönderebilir; öğrencileriniz de ödevlerini veya projelerini size kolayca iletebilir.
Etkileşimli Notlar: Bir Colab defteri; kod blokları, metin blokları, resimler ve hatta HTML içerebilir. Bu sayede, ders notlarınız, açıklamalarınız ve kodlarınız aynı sayfa üzerinde, birbiriyle entegre şekilde durur.
Colab'ı kullanmaya başlamak inanılmaz derecede kolaydır:
Google Drive'a gidin.
Yeni (Sol üst köşede) ➜ Diğer ➜ Google Colaboratory seçeneğini bulun ve tıklayın. (İlk defa kullanıyorsanız bu seçeneği bulmak için "Uygulama Bağla" kısmından Colaboratory uygulamasını eklemeniz gerekebilir.)
Karşınıza çıkan yeni defterde, bir kod hücresine (Code Cell) Python kodunuzu yazın ve çalıştırmak için Shift + Enter tuşlarına basın veya oynat (▶) simgesine tıklayın.
Colab arayüzü, üç ana bölüme ayrılır: Kontrol Merkezi (Üst Menü), Yardımcı Araçlar (Sol Kenar Çubuğu) ve Çalışma Alanı.
Bu çubuk, not defterinin YÖNETİMİ ve PERFORMANS ayarları için kullanılır.
Dosya (File): Not defterinizi kaydetme, indirme ve Drive'a taşıma gibi temel dosya işlemlerini yaparsınız.
Çalışma Zamanı (Runtime): En önemli kısımdır. Kod çalıştırmayı yönetir ve not defterinizin hızını belirleyen Çalışma Zamanı Türünü Değiştir (CPU, GPU, TPU) seçeneği buradadır.
Ekle (Insert): Yeni Kod veya Metin hücreleri eklemenin ana yoludur.
Bu bölüm, çalışma alanınızı düzenlemek ve harici kaynaklara erişmek için kullanılır.
İçindekiler: Not defterindeki başlıkları listeler, hızlı gezinme sağlar.
Dosyalar (📂 Simgesi): Veri yönetimi için kilit noktadır. Buradan not defterinin sanal diskine dosya yükleyebilir ve Google Drive'ınızı kolayca bağlayabilirsiniz.
Kod Snippet'leri, Google Colab arayüzünün sol tarafındaki panelde bulunan ve kullanıma hazır, küçük kod bloklarını içeren bir kütüphanedir.(Kamera Erişimi (Capturing images using webcam), Pandas DataFrame'i kaydetme... )
Gizli Anahtarlar (Secrets) özelliği, hassas bilgileri (API anahtarları, parolalar, özel token'lar vb.) notebook kodunuzda doğrudan göstermeden güvenli bir şekilde saklamanıza ve kullanmanıza yarar.
Colab'in kalbidir. Kodlarınızı yazdığınız Kod Hücreleri ve açıklamalarınızı yazdığınız Metin Hücreleri bu alanda bulunur.
Kod Hücreleri: Python kodlarınızı yazdığınız ve çalıştırdığınız alanlar.
Metin Hücreleri: Açıklamalar, başlıklar ve dokümantasyon için kullandığınız alanlar.
Yazdığımız kodu açıklamak ve not defterimizi düzenlemek için Metin hücrelerini kullanırız. Yeni bir Metin hücresi ekleyin. Bu hücreler Markdown formatını destekler. Başlıklar, listeler, kalın yazılar ekleyebilir, hatta LaTeX formülleri yazarak not defterinizi akademik bir makale gibi düzenleyebilirsiniz.
Örnek Metin Hücresi
Aşağıdaki metni, Colab defterinizde yeni bir metin hücresi oluşturup yapıştırabilirsiniz:
# Python Değişkenleri ve Veri Tipleri
Bu bölümde, Python'ın temel yapı taşlarından olan değişkenleri ve farklı veri tiplerini inceleyeceğiz.
---
### 1. Temel Kavramlar
* **Değişkenler:** Veri saklamak için kullanılan adlandırılmış bellek alanlarıdır.
* **Atama Operatörü:** `=` işareti ile değişkenlere değer atanır.
### 2. Sık Kullanılan Veri Tipleri
| Veri Tipi | Açıklama | Örnek |
| :--- | :--- | :--- |
| `int` | Tam sayılar | `sayi = 10` |
| `float` | Ondalıklı sayılar | `pi = 3.14` |
| `str` | Metin (Karakter dizisi) | `isim = "Ahmet"` |
| `bool` | Mantıksal (True/False) | `aktif = True` |
### 3. Ek Bilgi (Markdown Desteği)
Matematiksel bir ifade ekleyebiliriz (LaTeX ile):
$$E = mc^2$$
> **İpucu:** Değişken adları her zaman bir harf veya alt çizgi (`_`) ile başlamalıdır.Şimdi Colab'ın en güçlü özelliğine geliyoruz. Normalde kodunuz standart CPU üzerinde çalışır. Ancak Makine Öğrenimi projeleri için bu yeterli değildir.
Üst menüden 'Çalışma Zamanı' menüsüne gidin, ardından 'Çalışma Zamanı Türünü Değiştir' seçeneğini seçin. Burada 'Donanım hızlandırıcı' menüsünde GPU veya TPU seçeneklerini göreceksiniz. Projenizin türüne göre bu hızlandırıcılardan birini seçip kaydedin. Artık kodunuz Google'ın yüksek performanslı donanımı üzerinde çalışmaya hazır!"
Bu seçenek, kodunuzun hangi dilde çalışacağını belirler. Muhtemelen varsayılan olarak Python 3 seçilidir. Colab, Python'dan başka dilleri (örneğin R veya Julia) destekler.
Bu, Colab'ın size sağladığı ekstra işlem gücü seçeneğidir. Buradaki seçenekler şunlardır:
Açıklama: Kodunuz, Colab'ın sanal makinesindeki standart CPU (Merkezi İşlem Birimi) üzerinde çalışır.
Temel Python eğitimi, değişkenler, döngüler, listeler gibi konular.
Hesaplama yoğunluğu düşük olan küçük veri setleriyle yapılan analizler.
Colab'da not alırken veya sadece Markdown (metin) kullanırken.
Avantajı: Bu, standart ve güvenilir ayardır.
Derin Öğrenme (Deep Learning): TensorFlow, PyTorch gibi kütüphanelerle büyük sinir ağlarını eğitirken.
Büyük matris işlemleri gerektiren Makine Öğrenimi (Machine Learning) görevleri.
Çok büyük veri setlerinin işlenmesi.
Avantajı: CPU'ya göre kat kat hızlı eğitim süreleri sağlar.
Açıklama: Bu, Google tarafından özellikle Makine Öğrenimi (ML) iş yükleri için geliştirilmiş, son derece uzmanlaşmış bir hızlandırıcıdır. TPU'lar, Google'ın kendi geliştirdiği TensorFlow gibi çerçevelerle çalışmak için optimize edilmiştir.
Çok büyük ve karmaşık derin öğrenme modellerini eğitirken.
TensorFlow kullanılarak yapılan çok büyük ölçekli ML projeleri.
Avantajı: GPU'dan bile daha hızlı olabilir, ancak kullanımı genellikle GPU'dan biraz daha fazla kurulum ve optimizasyon gerektirir.
Bu seçenek, not defterinizdeki yoğun hesaplama gerektiren (özellikle makine öğrenimi) kodların hangi özel donanım üzerinde çalışacağını belirler.
1. CPU
Standart Merkezi İşlem Birimi (CPU).
Kullanım Alanı: Basit kodlar, hafif veri analizi, GPU veya TPU gerektirmeyen tüm genel görevler.
Not: En temel seçenektir, ancak derin öğrenme için yavaştır.
2. T4 GPU
NVIDIA Tesla T4 Grafik İşlem Birimi.
Kullanım Alanı: Başlangıç ve orta seviye derin öğrenme modellerinin eğitimi, genel GPU hızlandırması.
Not: Ücretsiz Colab kullanıcıları için genellikle sunulan, iyi bir performans dengesine sahip popüler bir karttır.
3. L4 GPU
NVIDIA L4 GPU.
Kullanım Alanı: T4'e göre daha yeni ve gelişmiş. Orta seviye eğitimler ve özellikle yapay zeka çıkarım (inference) görevleri için optimize edilmiştir.
Not: İyi bir performans/enerji verimliliği dengesi sunar.
4. A100 GPU
NVIDIA A100 GPU.
Kullanım Alanı: En güçlü GPU seçeneğidir. Büyük ölçekli ve karmaşık derin öğrenme modelleri (örneğin Geniş Dil Modelleri - LLM) ve en yoğun hesaplama gerektiren görevler.
Not: Genellikle Colab Pro/Pro+ aboneliklerinde bulunur ve yüksek hesaplama kredisi tüketir. Hız kritik projeler için idealdir.
5. V5e-1 TPU / V6e-1 TPU
Google tarafından yapay zeka için tasarlanmış özel Tensör İşlem Birimleri (TPU).
Kullanım Alanı: Özellikle TensorFlow ile oluşturulmuş, çok büyük veri kümeleri ve modellerin eğitimi.
Not: GPU'dan farklı bir mimariye sahiptir ve kodun TPU'ya özel ayarlanmasını gerektirebilir. V6e, V5e'ye göre daha yeni ve gelişmiş bir nesildir.
Veri biliminde en çok ihtiyaç duyulan şey veri setleridir. Sol menüdeki klasör simgesine tıklayarak dosya gezinicisini açın. Burada Drive simgesini göreceksiniz. Bu simgeye tıklayarak birkaç basit izin adımıyla Google Drive'ınızdaki dosyalara doğrudan erişim sağlayabilirsiniz. Böylece devasa veri setlerini yerel diskinize indirmek zorunda kalmazsınız.
Google Drive'ı bağlamanın en hızlı ve yaygın kullanılan yolu sol menüdeki klasör simgesini kullanmak olsa da, bunu doğrudan kod ile yapmak da mümkündür. Bu yöntem, bazen otomasyon veya daha hızlı bağlantı kurma için tercih edilir.
Kod Hücresini Hazırlama: Yeni bir kod hücresi oluşturun.
Gerekli Modülü İçe Aktarma: Google Colab ortamından drive modülünü içe aktarın.
Drive'ı Bağlama Komutu: drive.mount() komutunu çalıştırın.
# Google Colab'dan drive modülünü içe aktar
from google.colab import drive
# Drive'ı bağlama komutunu çalıştır
drive.mount('/content/drive')
Yukarıdaki kodu çalıştırdığınızda, çıktı olarak bir URL ve bir metin kutusu alırsınız.
URL'ye tıkladığınızda, Colab'in Google Drive'ınıza erişmesine izin vermeniz istenir. Doğru Google hesabını seçip izin verdikten sonra size bir doğrulama kodu (Token) verilir.
Bu doğrulama kodunu (token) Colab çıktısındaki metin kutusuna yapıştırıp Enter tuşuna basmanız gerekir.
Bağlantı başarılı olduğunda, çıktı olarak: Mounted at /content/drive mesajını görürsünüz.
Drive'ınızı başarıyla bağladıktan sonra, Drive'ınızdaki tüm dosyalara Colab ortamınız içinde /content/drive/MyDrive yolu üzerinden erişebilirsiniz.
Örnek Dosya Erişimi:
# Drive'da "data" klasöründeki "proje.csv" dosyasına erişim
dosya_yolu = "/content/drive/MyDrive/data/proje.csv"
# Pandas ile dosyayı okuma
# import pandas as pd
# df = pd.read_csv(dosya_yolu)Colab, NumPy, Pandas, TensorFlow gibi birçok popüler kütüphane yüklü olarak gelir. Ancak ihtiyacınız olan özel bir kütüphane varsa, kod hücresinin başına bir ünlem işareti (!) koyarak Linux Bash komutlarını çalıştırabilirsiniz. Örneğin, !pip install kütüphane_adı yazarak saniyeler içinde istediğiniz kütüphaneyi ortamınıza ekleyebilirsiniz.
pip Kullanımı)! işareti konulur.| Komut | Açıklama | Kullanım Amacı |
!ls | Bulunulan dizindeki dosyaları listeler. | Dizin içeriğini kontrol etme. |
!pwd | Bulunulan dizinin tam yolunu gösterir. | Çalışma dizinini doğrulama. |
!mkdir veri_klasoru | Yeni bir dizin (klasör) oluşturur. | Proje yapısını oluşturma. |
!rm -rf dosya_adı | Belirtilen dosyayı veya klasörü siler. | Gereksiz dosyaları temizleme. |
!wget bağlantı_adresi | Belirtilen bağlantıdan bir dosyayı indirir. | Harici veri setlerini veya modelleri indirme. |
!unzip dosya.zip | Sıkıştırılmış bir dosyayı açar. | İndirilen veri setlerini hazırlama. |
Özetle, Google Colab, kurulum zorluğu olmadan anında kod yazmaya başlamak ve özellikle yapay zeka projelerinde ücretsiz GPU gücünden faydalanmak için eşsiz bir araçtır. Bu bilgileri kullanarak artık veri analizi ve makine öğrenimi yolculuğunuza güçlü bir başlangıç yapabilirsiniz.
Bu seçenek, üzerinde çalıştığınız Colab not defterinin bir kopyasını doğrudan sizin Google Drive hesabınıza kaydeder.
Mevcut not defterinin içeriğini ve kod çıktılarını yeni bir dosya olarak Google Drive'ınızdaki "Colab Notebooks" klasörüne (veya belirlediğiniz bir yere) kaydeder.
Not defterinizin en son halini Google Drive'da güvenli bir şekilde saklamak, Drive üzerinden başkalarıyla kolayca paylaşmak veya not defterini Drive'ınızda düzenli tutmak istediğinizde idealdir. Bu, temel yedekleme ve depolama yöntemidir.
Bu seçenek, not defterinizi GitHub Gist servisinde bir "gist" olarak kaydeder. Gistler, genellikle küçük kod parçacıklarını, tek dosyaları veya notları hızlı ve kolay bir şekilde paylaşmak için kullanılır.
Colab not defterinizin kod ve markdown içeriğini tek bir Gist dosyası olarak GitHub hesabınıza kaydeder. Gistler varsayılan olarak herkese açıktır.
Not defterinizdeki bir kod parçasını veya basit bir projeyi hızla internet üzerinde paylaşmak, bir blog yazısına veya foruma gömmek (embed) istediğinizde kullanılır. Gistler, tam bir GitHub deposu oluşturmaktan daha hafiftir ve hızlı paylaşım amaçlıdır.
Bu seçenek, not defterinizi GitHub'daki bir depoya (repository) kaydetmenizi sağlar. Bu, projelerinizi versiyon kontrolü ile yönetmek için kullanılır.
Colab not defterinizi (bir .ipynb dosyası olarak) seçtiğiniz bir GitHub deposuna ve dala (branch) kaydeder. Bu işlem, not defterinizin sürüm geçmişini GitHub'da tutar ve diğer geliştiricilerle işbirliği yapmanızı sağlar.
Büyük bir projenin parçası olan, işbirliği gerektiren veya versiyon kontrolü ile yönetmek istediğiniz not defterleri için kullanılır. Bu sayede, not defterinizde yapılan tüm değişiklikleri takip edebilir ve geri alabilirsiniz. Bu seçenek, genellikle profesyonel ve ekip çalışması odaklı projeler için tercih edilir.
Geçicidir (Ephemeral): Scratchpad hücresinde yazdığınız hiçbir kod veya çıktı, not defterinin .ipynb dosyasına kaydedilmez. Bu, ana not defterinizi temiz tutmanızı sağlar.
Mevcut Ortama Erişir: Bu hücre, not defterinizdeki daha önce çalıştırdığınız tüm değişkenlere, fonksiyonlara ve yüklü kütüphanelere erişebilir. Yani, mevcut çalışma zamanı (runtime) oturumunuzla bağlantılıdır.
Hızlı Denemeler İçin İdeal: Bir fonksiyonun belirli bir girdiyle nasıl davrandığını hızlıca görmek, küçük bir matematiksel hesaplama yapmak veya bir değişkenin anlık değerini kontrol etmek için mükemmeldir.
Hata Ayıklama Yardımı: Hata aldığınızda, ana not defterinizi bozmadan veya yeniden çalıştırmadan, değişkenleri ve kod parçacıklarını izole bir şekilde test edebilirsiniz.
Scratchpad, ana not defteri arayüzünden bağımsız, genellikle ayrı bir pencere veya kenar panelinde açılan özel bir kod alanıdır.
Ekle menüsü altında Scratchpad kod kücresi seçeneğini tıklayınız.
İşlev: Buraya kodunuzu yazar ve normal bir kod hücresi gibi çalıştırırsınız (Ctrl/Cmd + Enter). Çıktı hemen altında görünür, ancak not defteri kaydedildiğinde bu kod ortadan kalkar.
Yorumlar
Yorum Gönder