Bilişim dünyasına kaliteli, özgün ve Türkçe içerikler kazandırmayı hedefleyen bir platform..

friends friends friends

Colab

Colab

Colab » online olarak kod çalıştırabileceğimiz ve yapay zekâ modelleri eğitebileceğimiz, Google’ın sunduğu ücretsiz bir platform.

Google Colaboratory ile ücretsiz Tesla K80 GPU üzerinde Keras, Tensorflow ve PyTorch kullanarak Derin Öğrenme uygulamaları geliştirilebilir. Google Colab üzerinde normal CPU, Tesla K80 GPU ile veya Google tarafından geliştirilen TPU ile eğitim işlemi gerçekleştirilebilmektedir.

Colab kullanmak için Gmail ve Google Drive hesabı olması gerekir.

Linux komutları kullanarak çeşitli bilgiler elde edebiliriz.

Bulunduğumuz Dizini Öğrenme

pwd

Bulunduğumuz Dizinde dosyaları listeleme

!ls

Ayrıca aşağıdaki kodları da kullanabilirsiniz:

ls -alh
##total 40K
##drwxr-xr-x 3 root root 4.0K Dec 27 13:42 ./
##drwxr-xr-x 1 root root 4.0K Dec 27 13:42 ../
##-rw-r--r-- 1 root root 1.3K Dec 27 13:42 config.py.template
##-rw-r--r-- 1 root root 6.1K Dec 27 13:42 gen.py
##drwxr-xr-x 8 root root 4.0K Dec 27 13:42 .git/
##-rw-r--r-- 1 root root  395 Dec 27 13:42 .gitignore
##-rw-r--r-- 1 root root 1.1K Dec 27 13:42 LICENSE
##-rw-r--r-- 1 root root 4.6K Dec 27 13:42 README.md

Dizin Değiştirme

import os
os.chdir("/content/drive/My Drive/Demo")

##veya
cd /content/drive/MyDrive/Demo/models/research/object_detection

Sistem Özelliklerini Öğrenme

%cat /etc/lsb-release

Ram Özelliklerini Öğrenme

!cat /proc/meminfo

Hangi GPU Rezerve Edilmiş

# GPU kullanıyoruz mu test edelim

!nvidia-smi

Google Drive Bağlama

from google.colab import drive
drive.mount("/content/drive")

Drive'daki Dosyaları Listeleme

!ls "/content/drive/My Drive"

Git Repo İndirme

!git clone https://github.com/tensorflow/models.git

.py Uzantılı Dosyaları Çalıştırma

!python3 demo.py

Bir Dizinden Başka Dizine Dosya Kopyalama

!cp /content/myfolder/myitem.txt /content/gdrive/MyDrive/mydrivefolder/

Yeni Klasör Oluşturma

!mkdir images

#iki tane ayrı klasör oluşturma
!mkdir test train

Yeni Dosya Oluşturma

!touch '/content/drive/MyDrive/Demo/models/research/object_detection/training/label_map.pbtxt'

Uzak Sunucudan Dosya Çekme

Uzak sunucudan çekeceğiniz dosyanın raw olmasına dikkat edin yani URL'nin raw ile başlamasına dikkat edin. Aksi halde URL'ye ait web sayfasının kaynak kodları olan HTML kodlarını çekersiniz.

!wget "https://raw.githubusercontent.com/TannerGilbert/Tensorflow-Object-Detection-with-Tensorflow-2.0/master/detect_from_image.py" -P "/content/drive/MyDrive/Demo/models/research/object_detection"

İnternetten Resim Çekip Kaydetmek

!wget -O yeni_resim_adi.jpg https://www.siteadi.com/resim.jpg

Bir Dosyanın İçini Görüntüleme

!cat generate_tfrecord.py

Bir Klasörü Kopyalama

import shutil

kaynak_klasor = '/content/drive/MyDrive/Demo'
hedef_klasor = '/content/drive/MyDrive/Demorginal'

shutil.copytree(kaynak_klasor, hedef_klasor)

Boş olmayan klasörü silme

import shutil

shutil.rmtree('/content/drive/MyDrive/Demo/folder_name')

.jpg, .xml ve .png uzantılı dosyaları silme

import glob
import os

folder = '/content'

# Klasör içindeki tüm resim dosyalarının listesini al
image_files = glob.glob(os.path.join(folder, '*.jpg')) + glob.glob(os.path.join(folder, '*.xml')) + glob.glob(os.path.join(folder, '*.png'))

# Her bir dosya için
for file_name in image_files:
    # Dosyayı sil
    os.remove(file_name)

tar Dosyası Çıkarma

!tar -xvf /content/drive/MyDrive/Demo/models/research/object_detection/efficientdet_d0_coco17_tpu-32.tar.gz

#başka bir dizine çıkarma

!tar -xvf  'test.tar' -C 'content/cell_images'

.rar dosyası çıkarma

!unrar x "/content/drive/MyDrive/Demo/models/research/object_detection/images/images.rar" "/content/drive/MyDrive/Demo/models/research/object_detection/images/"

.zip dosyası çıkarma

!unzip '/content/drive/My Drive/file_name.zip' -d '/content/drive/My Drive'

Google Colab'da başka dizine dosya taşımak için

Google Colab'da bir dosya taşımak için, önce dosyaların bulunduğu dizine erişmeniz gerekir. Ardından, dosyaları hedef dizine taşımak için Python'un os modülünü kullanabilirsiniz.

Aşağıdaki kod örneği, xml ve jpg uzantılı dosyaları bulundukları dizinden bir üst dizine taşımak için kullanılabilir:

import os
from shutil import move

source_dir = "/content/your/source/directory"  # Kaynak dizini buraya yazın
target_dir = "/content/your/target/directory"  # Hedef dizini buraya yazın

# Dizindeki her dosya için işlem yap
for filename in os.listdir(source_dir):
    if filename.endswith(".xml") or filename.endswith(".jpg"):
        # Dosyanın tam yolu
        file_path = os.path.join(source_dir, filename)
        # Dosyayı hedef dizine taşı
        move(file_path, target_dir)

XML dosyası içinde kelime değiştirme

import os
import glob
import fileinput

folder_path = '/content/drive/MyDrive/Demo/models/research/object_detection/images/test'
old_word = '<path>/test'
new_word = '<path>/content/drive/MyDrive/Demo/models/research/object_detection/images/test'
print(folder_path)
os.chdir(folder_path)
for file in glob.glob("*.xml"):
    with fileinput.FileInput(file, inplace=True) as f:
        for line in f:
            print(line.replace(old_word, new_word), end='')

Tensorboard

#load tensorboard
%load_ext tensorboard 
%tensorboard --logdir '/content/drive/MyDrive/Demo2/models/research/object_detection/training'

Kütüphane Kurulumları

Aşağıdaki komutu kod hücresine yazarak varsayılan olarak yüklenmemiş kütüphaneleri yükleyebiliriz:

! pip install [kütüphane_ismi]

Google Colab Pro ve Colab Pro+

Bize ücretsiz olarak sunulan plan dışında bir de Google Colab Pro ve Google Colab Pro+ planları mevcut. Bu planlar arasındaki farklara beraber bir göz gezdirelim:

  Colab Colab Pro Colab Pro+
GPU K80 K80, T4 ve T100 K80, T4 ve T100
RAM 16 GB 32 GB 52 GB
Çalıştırma ortamı 12 saat 24 saat 24 saat
Arka planda çalıştırma Hayır Hayır Evet
Fiyat Ücretsiz $9.99/ay $49.99/ay

Bağlantının Kesilmesini Durdurmak

Google Colab Kısayolları

Eylem: Kısayol:
Seçilmiş hücreyi çalıştırma Ctrl / Cmd + Enter
Seçilmiş hücreyi çalıştırma ve yeni hücreye geçme Shift + Enter
Yukarıya kod hücresi ekleme Ctrl / Cmd + M + A
Aşağıya kod hücresi ekleme Ctrl / Cmd + M + B
Seçilmiş hücreyi silme Ctrl / Cmd + M + D
Kodun yürütülmesini durdurma Ctrl / Cmd + M + I
Seçilmiş hücreyi kod hücresine dönüştürme Ctrl / Cmd + M + Y
Seçilmiş hücreyi metin hücresine dönüştürme Ctrl / Cmd + M + M
Seçilmiş satırları yoruma dönüştürme Ctrl / Cmd + /
Bulma ve değiştirme Ctrl / Cmd + M

Hangi GPU’yu Kullanıyorum?

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

GPU kullanıyorsanız aşağıdaki gibi bir uyarı alacaksınız:

[name: "/device:CPU:0"
 device_type: "CPU"
 memory_limit: 268435456
 locality {
 }
 incarnation: 7312550878927926302
 xla_global_id: -1, name: "/device:GPU:0"
 device_type: "GPU"
 memory_limit: 14444920832
 locality {
   bus_id: 1
   links {
   }
 }
 incarnation: 12258297045353238447
 physical_device_desc: "device: 0, name: Tesla T4, pci bus id: 0000:00:04.0, compute capability: 7.5"
 xla_global_id: 416903419]

Eğer GPU kullanmıyorsanız aşağıdaki gibi bir bilgi görebilirsiniz:

[name: "/device:CPU:0"
 device_type: "CPU"
 memory_limit: 268435456
 locality {
 }
 incarnation: 17150428785495959519
 xla_global_id: -1]

GPU Test ve Device İsimleri

import tensorflow as tf
tf.test.gpu_device_name()

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

Hangi GPU Bizim İçin Ayrılmış?

Tesla T4 veya Tesla K80? Çalışma zamanının türünü GPU olarak değiştirdikten sonra aşağıdaki kodu çalıştırabilirsiniz:

!pip install nvidia-smi
!nvidia-smi
nvidia-smi
nvidia-smi

Menüden Runtime(Çalışma Zamanı) Factory reset Runtime(Çalışma zamanını yeniden başlat) ile tekrar çalıştırıp yine değişip değişmediğini kontrol edebilirsiniz. Tesla T4 veya Tesla K80 hangisi daha iyi onu anlamak için biraz araştırma yapmanız gerekecek.

GPU arka ucuna bağlanılamıyor

Uzun bir süredir ücretsiz olarak GPU kullandığınız için sınıra geldiğiniz için böyle bir uyarı alırsınız. Dolayısıyla Google Colab sizleri ücretli versiyonlara yönlendirmek isteyecektir.

Google Colab Üzerinde R Kodlarını Çalıştırmak

Google Colab üzerinde R kodlarını çalıştırmak için aşağıdaki adımları izleyebilirsiniz:

  1. Öncelikle Colab'a giriş yapın, tahmin edebilirsiniz ki gmail hesabıyla kullanabilirsiniz.
  2. Daha sonra Colab menüsünden Çalışma zamanı Çalışma zamanı türünü değiştir R' seçin
  3. Daha sonra R kodlarınıza yazarak çalıştırabilirsiniz.
    getwd()
    #'/content'
    
    print(version)
    
    #platform       x86_64-pc-linux-gnu         
    #arch           x86_64                      
    #os             linux-gnu                   
    #system         x86_64, linux-gnu           
    #status                                     
    #major          4                           
    #minor          3.2                         
    #year           2023                        
    #month          10                          
    #day            31                          
    #svn rev        85441                       
    #language       R                           
    #version.string R version 4.3.2 (2023-10-31)
    #nickname       Eye Holes    
colab Git Repo İndirme load tensorboard
1 Beğeni
Bilişim Terimleri Google
Önceki Yazı

TinyPNG

27 Nis. 2022 tarihinde yayınlandı.
Sonraki Yazı

Css Kullanmadan Dark Mode

27 Nis. 2022 tarihinde yayınlandı.
arrow