PYTORCH C++ İLE DERİN ÖĞRENME -1: Proje Oluşturma
Herkese merhabalar. Yeni bir seriye başlıyoruz Pytorch C++ ile derin öğrenme. Bu serimizde derin öğrenme algoritmalarını detaylı bir şekilde işleyip Pytorch C++ ortamında kodlayacagız.
Bu seride, derin öğrenme konusunu yazılımsal olarak daha detaylı bir şekilde anlamak amaçlanmaktadır. Ayrıca nesneye yönelik programlama yaklaşımı kullanılacaktır. Bu durumda sınıf ve metotlar oluşturacağız.
Serinin ilerleyen bölümlerinde derin öğrenme algoritmaları kullanılarak sınıflandırma, nesne tespit etme, tahmin vb. uygulamalar yapılacaktır. Serinin bu bölümünde proje oluşturmak için kullanılacak programların kurulması ve proje oluşturma şablonu anlatılacaktır.
Bu serinin hem eğitici hem de rehber olmasından dolayı alt içerik sayısı fazla olacaktır.
Bu seriye başlamadan önce Ubuntu 18.04 LTS işletim sisteminin kurulu olması, NVIDIA ekran kartınızın olması gerekmektedir. Derin öğrenme algoritmalarını CUDA ve CUDNN programları kullanılarak yapılacaktır. Program veya işletim sistemi yükleme konusunda birçok video ve yazı bulunmasından dolayı kurulumlar anlatılmayacaktır. Kurulum için ilgili sitelere yönlendirileceksiniz.
LINUX kurulumu için;
https://ubuntu.com/tutorials/tutorial-install-ubuntu-desktop#1-overview
CUDA kurulumu için;
https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html
CUDNN kurulumu için;
https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html
Pytorch C++ kurulumu için;
https://pytorch.org/cppdocs/installing.html
Kod geliştirmek için IDE olarak Qt Creator IDLE kullanılacacaktır. Kodları derlemek için ise CMake programı kullanılacaktır. Kurlum için;
https://www.veribilimiokulu.com/wp-admin/post.php?post=14455&action=edit
Kurulum aşamasından sonra kodları yazıp derleyebiliriz.
Proje için CMakeLists.txt dosyası ve C++ uzantılı dosya oluşturmamız gerekmektedir.
CMakeLists.txt ve Pytorch_giris.cpp Dosyası Oluşturmak
ilk önce proje klasörü oluşturuyoruz.
$ mkdir Pytorch_giris
mkdir komutu ile klasör oluşturuldu.
$ cd Pytorch_giris/
Komut ile klasörün içerisine giriyoruz.
$ touch CMakeLists.txt
Komut ile CMakeLists.txt dosyası oluşturuldu.
$ touch Pytorch_giris.cpp
Komut ile Pytorch_giris.cpp dosyası oluşturuldu.
CMakeLists.txt Dosyasına Eklenecekler
CMakeLists.txt dosyasının içerisine giriyoruz.
cmake_minimum_required(VERSION 3.0 FATAL_ERROR) project(Pytorch_giris) find_package(Torch REQUIRED) add_executable(pytorch Pytorch_giris.cpp) target_link_libraries(Pytorch_giris "${TORCH_LIBRARIES}") set_property(TARGET Pytorch_giris PROPERTY CXX_STANDARD 14)
Yazıları CMakeLists.txt dosyasına ekliyoruz ve kaydediyoruz.
CMakeList.txt dosyasını her projede oluşturmamız ve açtığımız her projede küçük değişikler yapmamız gerekmektedir.
Dosyanın içerisinde bulunan Pytorch_giris.cpp uzantılı kısma proje için oluştulan .cpp dosyasının adı yazılmalı ve Pytorch_giris kısmı yerine projenizin ismi yazılmalıdır. Bu dosyayı küçük değişiklikler ile projelerinizde kullanabilirsiniz.
Pytorch_giris.cpp Dosyasına Eklenecekler
QtCreator programı ile Pytorch_giris.cpp dosyamızı açıyoruz.
#include <torch/torch.h> #include <iostream> int main() { torch::Tensor tensor = torch::eye(3); std::cout << tensor << std::endl; }
Kodları Pytorch_giris.cpp dosyamıza ekliyoruz. QtCreator programını derlemek değil kodları yazmak için kullanıyoruz. Bu yüzden dosyalarımızı kaydedip QtCreator’ ı kapatıyoruz.
Kodları Derlemek ve Çalıştırmak
Derleme yapmak için proje klasörünün içerisine build klasörü oluşturup dizin içerisine gireceğiz.
$ mkdir build
Komut ile build klasörü oluşturuldu.
$ cd build
Komut ile build klasörüne girildi.
$ cmake .. && make
Komut ile derleme işlemini yapıyoruz.
Derleme işlemini bitirdik. Herşey doğru çalıştı ise projeyi çalıştırıyoruz.
$ ./Pytorch_giris
komutunu çalıştırarak program çıktısı alınmaktadır.
Böylelikle Pytorch C++ kütüphanesini kullanarak derin öğrenme için ilk adımı atmış olduk.
Bu bölümde QtCreator, CMake programlarının kurulumunu anlattık ve Pytorch C++ ile derin öğrenme projesi oluşturma, derleme ve çalıştırma işlemleri yapıldı.
Proje dosyasına,
https://github.com/enesdoruk/Pytorch-C-Deep-Learning
github hesabımdan ulaşabilirsiniz.
Görüşmek dileğiyle.
Kaynakça
- https://ubuntu.com/tutorials/tutorial-install-ubuntu-desktop#1-overview
- https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html
- https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html
- https://pytorch.org/cppdocs/installing.html
- https://www.veribilimiokulu.com/wp-admin/post.php?post=14455&action=edit