Google Colaboratory kısaca (Colab), derin öğrenme uygulamalarını geliştirmek için yüksek GPU kullanabileceğimiz ücretsiz bir bulut hizmetidir. Colab modellerimizi resim, metin, ses gibi formatlarda eğitmek, Tensorflow, Keras, OpenCV gibi popüler kitaplıkları kullanabilmek ve Python programlama dilinde becerilerimizi geliştirmek gibi birçok hizmet için elverişli bir ortam sağlıyor. Üstelik bunu Tesla K80 GPU üzerinde ve ücretsiz olarak sağlıyor. Bu yazıda sizlere Colab kurulumu ile Yolov4 kullanarak model eğitme işlemini anlatacağım.
Googla Colab Nasıl Kullanılır?
Colab kullanabilmek için öncelikle bir Google hesabına sahip olmak gerekiyor. Drive hesabımıza giriş yaparak sağ tıkla yeni bir klasör oluşturuyoruz. Ben “colabEgitim” adlı bir dosya oluşturdum. Yine sağ tıkla “Diğer” seçeneğinden yüklü ise “Google Colaboratory” seçeneğine değilse “Daha fazla uygulama bağla” seçeneğine tıklıyoruz. Yüklü olmadığını farz ederek devam ediyorum. Arama çubuğuna “Colaboratory” diye aratırsanız direkt olarak karşınıza çıkacaktır. Üzerine tıklayarak yükle diyebilirsiniz. colabEgitim adlı dosyaya geri dönersek artık sağ tıkla bir colab ortamı açabiliyor olmamız lazım.
Yolov4 Model Eğitimi
“YOLOv4 İle Gerçek Zamanlı Nesne Tanıma” adlı yazımızda model oluşturmayı anlatmıştık. Şimdi oluşturduğumuz modeli drive hesabımıza yükleyip Colab ortamında eğitme işlemini anlatacağım.
Hatırlarsanız darknet-master adlı dosya içerisinde gerekli olan bütün ortamı hazırlamıştık. Şimdi ilk iş olarak bu dosyayı .zip haline getirip drive hesabına yükleyeceğiz. Sağ tık>Gönder>Sıkıştırılmış klasör ile .zip haline getirip dosyayı drive hesabı içerisinde oluşturduğumuz “colabEgitim” klasörünün içerisine sürükleyip yüklenmesini bekleyin. Drive hesabı içerisinde ağırlıkların kaydedilmesi için “myWeights” adlı bir klasör daha oluşturalım. Son olarak da sağ tıkla bir colab ortamı açalım.
Colaboratory Ortam Düzenleme
Sol üst köşeden “Untitled0.ipynb” yazısına tıklayıp dosyanın adını değiştirebilirsiniz. Önce “çalışma zamanı”na (1) sonrasında “çalışma zamanı türünü değiştir”e (2) tıklayarak GPU seçeneğini (3) işaretleyin ve kaydedin.
Yukarıdaki görseli takip ederek drive hesabımızı colab ortamına bağlayabilirsiniz. Klasöre tıklayın (1) Drive sembolüne tıklayın (2) Bağlanmak için izin verin (3) ve son durumu kontrol edin. Drive içerisinde MyDrive ve onun içerisinde de klasörlerinizi göreceksiniz.
Artık kod yazmaya başlayabiliriz.
1 nolu alanda “Kod”, 2 nolu alanda “Metin” butonuna tıklayarak 3 nolu alandaki gibi bir satır ekleyebiliyoruz. Metin butonunu yorum satırlarınız için kullanabilirsiniz. Biz kod butonuna tıklayarak devam edeceğiz ve kodlarımızı 4 nolu alandaki çalıştır butonuna tıklayarak aktif hale getireceğiz. İlk olarak colab ortamını güncelleştirmek için 1 nolu alana tıklayarak kod satırı oluşturduk. “!apt-get update” yazıp 4 nolu alandaki çalıştır butonuna tıkladık. Bu işlemi yazdığımız her kod satırından sonra yapacağız.
Güncelleme işleminden sonra görseldeki kodları ayrı satırlarda yazıp sırasıyla çalıştırıyoruz. Her birinin ne anlama geldiğini tek tek açıklayacağım.
- 1 nolu satırda, colabEgitim klasörü içerisine yerleştirdiğimiz .zip uzantılı dosyamızı colab ortamına çıkartıyoruz.
- 2 nolu satırda, çalışmak istediğimiz adresin konumunu yazıyoruz
- 3 nolu satırda, %pwd komutu, bizlere o anda hangi klasör içerisinde yer aldığımız bilgisini veriyor.
- 4 nolu satırda, dosyaları okuyabilmesi için Unix formata çevirmemizi sağlayan kodu indiriyor.
- 5 nolu satırda, dosyaları Unix formata çeviriyoruz.
- 6 nolu satırda, Darknet dosyalarını çalıştırabilmek için Linux’tan izin almamızı sağlayan kodu yazıyoruz.
- 7 nolu satırda, Darknet dosyalarını !make komutu ile çalıştırıyoruz.
- 8 ve 9 nolu satırda, darknet içindeki backup dosyasını silip bu dosyanın drive hesabımızda yer almasını sağlıyoruz. Bunu eğitim sırasında oluşan modellerimizin drive hesabımızda kaydolmasını sağlamak için yapıyoruz.
Google Colab ile Yolov4 Eğitimi
Görselde adres yollarını atadığımız “myData.data” içerisinde hazırladığımız verilerin bilgisi, “yolov4.cfg” içerisinde ise CNN yapımız bulunuyor. Artık her şey hazır çalıştır butonuna basıp eğitimin sona ermesini bekleyeceğiz. Sol tarafta darknet dosyalarımızın bulunduğu yerde yaklaşık 1 saat sonra “chart.png” adlı dosya oluşacak, bu dosyaya çift tıklayarak açıp eğitim sürecinin nasıl ilerlediği hakkında bilgi edinebilirsiniz. Chart.png belirli süreçlerde kendini yenileyerek eğitim süreçleri ve doğruluk oranı hakkında bizlere bilgi veriyor. Eğitim sürerken drive içerisinde oluşturduğumuz backup dosyasında .weights uzantılı modelleri görüyor olacaksınız. Yaklaşık 4-5 saat süren eğitim sonunda backup içerisinde oluşan best_weights adlı dosya sizin eğitilmiş en iyi modeliniz olacaktır.