Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, Alp adlı bir eğitmenin yapay sinir ağları ve derin öğrenme konularında verdiği kapsamlı bir eğitim içeriğidir.
- Video, yapay sinir ağlarının temel prensiplerinden başlayarak, üç katmanlı yapısı, forward propagation ve back propagation teknikleri, aktivasyon fonksiyonları ve kara kutu problemi gibi konuları ele alıyor. Ardından CNN teknikleri, TensorFlow, Keras ve PyTorch gibi kütüphaneler tanıtılarak, nesne tanıma ve el yazısı rakam tanıma gibi pratik uygulamalar gösteriliyor. Son bölümde ise MAX katmanları, filtre boyutları, eğitim parametreleri ve modelin test edilmesi konuları detaylı olarak anlatılıyor.
- Videoda ayrıca veri setinin hazırlanması, eğitim ve test verilerinin ayrılması, piksel değerlerinin normalleştirilmesi ve etiketlerin kodlanması gibi temel adımlar adım adım gösteriliyor. Webcam ile çekilen video üzerinde nesne tanıma uygulaması da pratik bir örnek olarak sunuluyor.
- 00:01Yapay Sinir Ağları Nedir?
- Yapay sinir ağları, canlıların beyinlerinin çalışma şekli replike edilecek şekilde tasarlanmış, nöronların etkileşimlerinden yola çıkarak oluşturulmuştur.
- Bir yapay sinir ağı üç adet katmandan oluşur: giriş (input), gizli (hidden) ve çıkış (output) katmanları.
- Yapay sinir ağları, veri setlerindeki ilişkileri öğrenerek sınıflandırma veya değer tahmini gibi görevleri gerçekleştirebilir.
- 02:49Yapay Sinir Ağlarının Çalışma Prensibi
- Forward propagation, verilen input hakkında tahminde bulunma sürecidir.
- Back propagation, eğitim sırasında gizli katmandaki ağırlıkları optimize etme işlemidir.
- Yapay sinir ağları, input değerleri ile ağırlıkları çarpıp toplayarak aktivasyon fonksiyonuna sokarak (örneğin sigmoid) çıktı üretir.
- 08:08Yapay Sinir Ağlarının Kısıtlamaları
- Yapay sinir ağları "kara kutu" olarak adlandırılır çünkü içindeki işlemlerin açıklanması oldukça zordur.
- Yapay sinir ağları, verilen tahminin neden yapıldığı konusunda açıklayıcı değildir.
- 08:37Görüntü İşleme ve Yapay Sinir Ağları
- CNN (Convolutional Neural Networks) adı verilen yapay sinir ağları, görsel verileri analiz etmek için kullanılır.
- CNN'ler, görüntü sınıflandırma, nesne tanıma ve optik karakter tanıma gibi görevleri gerçekleştirebilir.
- Görüntüler bilgisayarda piksel değerlerinden oluşan matrisler olarak temsil edilir.
- 10:32CNN'lerin Çalışma Prensibi
- CNN'lerin katmanları, görsel üzerinde filtreler kaydırarak işlem yapar.
- Filtreler, görseldeki belirli şekilleri yakalayabilir (örneğin, bir rakamın farklı çizgilerini).
- Bu filtreler, back propagation tekniği ile öğrenilir ve görselleri sınıflandırmada kullanılır.
- 12:52Yapay Sinir Ağları İçin Kullanılan Araçlar
- Yapay sinir ağları genellikle Python programlama dilinde tasarlanır.
- En çok kullanılan kütüphane TensorFlow'dur ve GitHub deposunda birçok önceden eğitilmiş model bulunmaktadır.
- Keras kütüphanesi, TensorFlow'ü arka planda kullanarak daha kolay kullanım sunar.
- 14:10Yapay Sinir Ağları İçin Kütüphaneler
- TensorFlow'un ikinci versiyonu ile birlikte TensorFlow Keras şeklinde import edip kullanabiliyoruz.
- PyTorch, Facebook tarafından geliştirilen ve son zamanlarda çok ilgi gören başka bir kütüphane.
- Python ve bu üç kütüphaneyi bilmekle birlikte internette bulunan kaynaklar ve tutorieller sayesinde yapay sinir ağları kolayca kullanılabilir.
- 15:18Object Detection ve Eğitim Süreci
- Object Detection API kullanarak convolutional neural network ile nesne tanıma yapılabilir ve bu network, COCO (Common Objects in Context) dataseti üzerinde eğitilmiştir.
- COCO dataseti çok fazla sınıfa sahip olup, araçlar, hayvanlar ve bina gibi nesneleri tanıyabilir.
- Object Detection API ile video üzerinde nesne tanıma yapılabilir ve bu işlem yaklaşık 20 dakika sürer.
- 17:15Eğitim Sürecini Hızlandırma
- Yapay sinir ağlarını eğitmek için çok fazla veriye ihtiyaç vardır ve eğitim süreci zaman alır.
- CUDA kullanarak eğitim süresi 15-20 saat yerine daha kısa sürede tamamlanabilir.
- Google Colab gibi platformlar eğitim sürecini hızlandırmak için kullanılabilir.
- GPU, çok sayıda çekirdek sayesinde hem eğitim hem de test aşamalarında daha hızlı hesaplamalar yapabilir.
- 19:47Keras ile Yapay Sinir Ağları
- Keras ile küçük bir sinir ağı yaklaşık 10 dakikada eğitilebilir.
- Görsel verilerde, verinin boyutu ve sınıf sayısı önceden bilinirse, bu bilgiler doğrudan kodlanabilir.
- Eğitim ve test verileri genellikle %80-%20 oranında ayrılır ve piksel değerleri normalize edilir.
- 23:36Veri Ön İşleme ve Sinir Ağı Oluşturma
- Görsel veriler matrislere dönüştürülür ve her bir görsel kendi matrisi içinde network tarafından işlenir.
- Etiketler kategorik olarak kodlanır, örneğin bir sınıf için [0, 0, 0, 0, 0, 1, 0, 0, 0, 0] gibi bir vektör oluşturulur.
- Sinir ağı oluşturulurken input katmanı belirlenir, konvolüsyon katmanları eklenir ve max pooling gibi boyut azaltma teknikleri kullanılır.
- Eğitim sırasında loss fonksiyonu, optimizasyon tekniği ve takip edilecek metrikler belirlenir.
- 28:45Model Seyretme ve Kullanımı
- Tren aşamasında görülmeyen, network tarafından algılanmayan bir veri doğrulama işlemi bulunmaktadır.
- Model, kendi içindeki fonksiyonu sayesinde H5 formatında seyredildikten sonra herhangi bir yerde açılarak kullanılabilir.
- Lokalde çalıştırıldığında, 16 test atasından 16 görsel alınarak hem görsel hem de sınıflandırması ekrana yazılır.
- 29:53Sunumun Kapanışı
- Sunucu, bu hafta anlatmak istediği konuların nasıl model oluşturulacağını, nasıl çalışacağını ve hangi veri tiplerinde çalışabileceğini anlatmak olduğunu belirtiyor.
- Sunucu, dinleyicilere teşekkür ederek sunumu sonlandırıyor.