Merhabalar,

Bugün benim için de görece yeni olan generatif yapay zeka kavramları üzerine bir yazı yazmak istedim. Generatif AI artık her çözümün içine yerleştirilmeye çalışıldığı için ilgili kavramları bilmemiz çözümlerle ilgili daha farkında olmamızı sağlayacaktır.

Generatif AI, mevcut içerikten yararlanarak orijinal içerik üreten belirli bir yapay zeka türüdür diyebiliriz. IBM’in araştırma blogu, generatif AI’yı şu şekilde tanımlıyor: “Generatif AI, ham verileri – tüm Vikipedi veya Rembrandt’ın toplu eserleri gibi – alabilen ve ‘öğrenerek’ istatistiksel olarak olası çıktılar üreten derin öğrenme modellerine atıfta bulunur.” Generatif AI, görüntüler, metinler veya sesler gibi yeni içerikler oluşturabilen modeller yaratmayı içeren bir yapay zeka dalıdır. Bu modeller, derin öğrenme ve sinir ağları gibi teknikler kullanarak orijinal ve gerçekçi çıktılar üretir.

Generatif AI araçları, makine öğrenimi modelleri, AI algoritmaları ve generatif adversarial ağlar (GAN’lar) gibi teknikleri birleştirerek içerik üretir. Büyük veri kümeleri üzerinde eğitilirler ve büyük dil modelleri gibi generatif modeller kullanarak içerik oluştururlar. Örneğin, doğal dil işleme (NLP) teknikleri kullanarak kelimeleri ve noktalama işaretlerini anlamlı cümlelere dönüştürürler.

Generatif yapay zeka modelleri, farklı görevler için çeşitli mimariler ve teknikler kullanır. Transformer mimarisi, metin ve dil işleme görevlerinde yaygın olarak kullanılırken, GAN’lar genellikle görüntü üretiminde kullanılır. Bu modeller, büyük veri setleri üzerinde eğitilerek ve çeşitli optimizasyon teknikleri kullanılarak geliştirilir ve uygulamalarda yüksek performans sağlar.

Popüler olan generatif yapay zeka modellerini kullandıkları tekniklere göre sıralarsak bakın neler çıkıyor karşımıza.

GPT-3 ve GPT-4 (OpenAI)

Mimari: Transformer

Kullanım Alanları: Metin üretimi, çeviri, özetleme, sohbet botları

Özellikler: GPT-3 ve GPT-4, metin tabanlı görevlerde üstün performans gösteren büyük dil modelleridir. Transformer mimarisini kullanarak metinlerin anlamını derinlemesine öğrenir ve insan benzeri metinler üretebilirler.

DALL-E (OpenAI)

Mimari: Transformer

Kullanım Alanları: Görüntü oluşturma

Özellikler: DALL-E, doğal dil açıklamalarına dayalı olarak yüksek kaliteli görüntüler oluşturabilir. Metin girdilerini alır ve bunları gerçekçi görüntülere dönüştürür.

BERT (Google)

Mimari: Transformer

Kullanım Alanları: Metin sınıflandırma, sorgu yanıtlama

Özellikler: BERT, iki yönlü dil temsili kullanarak metinleri anlama ve analiz etmede üstün performans gösterir. Özellikle metin sınıflandırma ve soru yanıtlama görevlerinde etkilidir.

StyleGAN (NVIDIA)

Mimari: Generative Adversarial Networks (GANs)

Kullanım Alanları: Görüntü oluşturma, sanatsal çalışmalar

Özellikler: StyleGAN, gerçekçi insan yüzleri ve diğer görüntüler oluşturabilen bir GAN modelidir. Generatör ve diskriminatör ağları arasında rekabetçi bir öğrenme süreci kullanır.

T5 (Google)

Mimari: Transformer

Kullanım Alanları: Metin tabanlı görevler (çeviri, özetleme, soru yanıtlama)

Özellikler: T5, metin tabanlı görevleri birleştiren ve bir metni başka bir metne dönüştüren güçlü bir modeldir.

Codex (OpenAI)

Mimari: Transformer

Kullanım Alanları: Kod oluşturma

Özellikler: Codex, doğal dil komutlarından kod yazabilen bir modeldir ve GitHub Copilot gibi araçların arkasında yer alır. Geliştiricilere kod yazmada yardımcı olur.

VQ-VAE-2 (DeepMind)

Mimari: Varyasyonel Otomatik Kodlayıcı (VAE)

Kullanım Alanları: Görüntü oluşturma

Özellikler: VQ-VAE-2, yüksek kaliteli ve çeşitli görüntüler oluşturabilen bir modeldir. Görüntü üretiminde kullanılan ileri düzey bir tekniktir.

CLIP (OpenAI)

Mimari: Transformer

Kullanım Alanları: Görsel-işitsel içerik analizi

Özellikler: CLIP, görüntü ve metin arasındaki ilişkileri anlamada üstündür. Görsel-işitsel içeriklerde, örneğin, görüntü tanıma ve metin tabanlı görüntü arama görevlerinde kullanılır.

Megatron-Turing NLG (NVIDIA ve Microsoft)

Mimari: Transformer

Kullanım Alanları: Doğal dil işleme görevleri

Özellikler: Megatron-Turing NLG, büyük dil modelleri üzerinde eğitilmiş ve çeşitli dil görevlerinde üstün performans gösteren bir modeldir.

BigGAN (DeepMind)

Mimari: Generative Adversarial Networks (GANs)

Kullanım Alanları: Görüntü oluşturma

Özellikler: BigGAN, büyük ve çeşitli görüntü veri setleri üzerinde eğitilmiş bir GAN modelidir. Yüksek çözünürlüklü ve gerçekçi görüntüler üretir.

IBM Watsonx

Mimari: Çok Modlu AI ve Derin Öğrenme Teknikleri

Kullanım Alanları: Doğal dil işleme, veri analizi, otomasyon

Özellikler: IBM Watsonx, gelişmiş yapay zeka ve veri analitiği platformudur. Çeşitli iş süreçlerinde veri analizleri ve otomasyon için kullanılır.

Transformer mimarisi en çok kullanılanlar arasında.  Transformer mimarisi, doğal dil işleme (NLP) ve makine öğreniminde kullanılan güçlü bir sinir ağı mimarisidir. Transformer, özellikle metinleri anlama ve işleme konusunda yüksek performans gösterir ve büyük dil modellerinin temelini oluşturur.

Temel Bileşenler:

Giriş Verisi ve Tokenizasyon:

Giriş verisi olarak bir metin alınır ve bu metin kelimelere veya kelime parçalarına (tokenlara) ayrılır. Örneğin, “Transformers are very effective” cümlesi [“Transformers”, “are”, “very”, “effective”] tokenlarına ayrılır.

Embedding:

Her token, bir vektöre dönüştürülür. Bu vektörler, kelimenin anlamını ve bağlamını temsil eder. Örneğin, “Transformers” kelimesi bir vektör olarak temsil edilir.

Encoder-Decoder Yapısı:

Transformer, encoder ve decoder olmak üzere iki ana bileşenden oluşur. Encoder, giriş verisini işler ve bir gizli temsil (hidden representation) oluşturur. Decoder ise bu gizli temsili alır ve istenen çıktıyı üretir.

Encoder

Self-Attention Mekanizması:

Her token’ın diğer tokenlarla olan ilişkisini hesaplar. Bu, modelin bağlamı anlamasına yardımcı olur.

Her token için üç vektör hesaplanır: Query (sorgu), Key (anahtar) ve Value (değer).

Query ve Key vektörleri arasındaki nokta çarpımı yapılarak skorlar hesaplanır. Bu skorlar, softmax fonksiyonu ile normalize edilir.

Normalize edilmiş skorlar, Value vektörleri ile ağırlıklandırılarak toplanır. Bu, her token’ın diğer tokenlarla olan ilişkisini temsil eder.

Çok Kafalı (Multi-Head) Attention:

Paralel olarak birden fazla attention mekanizması kullanılır. Bu, modelin farklı bağlamları paralel olarak öğrenmesini sağlar.

Farklı başlıklardan (heads) gelen sonuçlar birleştirilir ve tam bağlantılı (fully connected) bir katmandan geçirilir.

Feed-Forward Katman:

Self-attention katmanından sonra, her token bir tam bağlantılı katmandan geçirilir ve çıktı elde edilir.

Decoder

Masked Self-Attention:

Decoder’da, self-attention mekanizması maskelenir. Bu, modelin gelecekteki kelimeleri tahmin ederken sadece önceki kelimeleri dikkate almasını sağlar.

Encoder-Decoder Attention:

Decoder, encoder’ın gizli temsillerini dikkate alarak daha doğru tahminler yapar.

Çıktı Üretimi:

Decoder, gizli temsilleri kullanarak istenen çıktıyı (örneğin, özet metin) üretir.

Transformer mimarisi, self-attention mekanizması ve çok katmanlı yapısı sayesinde büyük veri setlerinde verimli ve etkili bir şekilde çalışır. Her token’ın diğer tokenlarla olan ilişkisini anlamak için self-attention kullanılır, bu da modelin bağlamı derinlemesine öğrenmesini sağlar. Çok kafalı attention, modelin farklı bağlamları paralel olarak işlemesine olanak tanır. Encoder ve decoder yapısı, giriş verisini işleyerek anlamlı bir çıktı üretir.

Generative Adversarial Networks (GANs) ise iki sinir ağı (generatör ve discriminatör) arasında rekabetçi bir öğrenme süreci kullanır. Generatör, yeni veri örnekleri oluştururken, discriminatör bu örneklerin gerçek veya sahte olduğunu belirlemeye çalışır.

Generatif yapay zeka kavramlarını kategorilere ayırarak nasıl sıralayabiliriz?

Model Eğitimi ve Optimizasyon

Eğitim (Training):

Modelin, büyük veri setleri üzerinde öğrenme sürecidir.

Fine-Tuning:

Önceden eğitilmiş bir modeli belirli bir görev için optimize etme sürecidir.

Reinforcement Learning (Pekiştirmeli Öğrenme):

Ajanın belirli bir ortamda ödüller alarak nasıl davranacağını öğrenme sürecidir.

Masking:

Modelin belirli bilgileri görmesini engelleyerek öğrenme sürecini yönlendirme tekniği.

Veri ve Temsiller

Örnek Veriler (Sample Data):

Modelin eğitimi veya testi için kullanılan veri örnekleridir.

Token:

Metnin temel birimi olan kelime, karakter veya kelime parçacıklarıdır.

Embedding:

Kelimeleri veya diğer veri türlerini düşük boyutlu, yoğun vektörler olarak temsil eden tekniktir.

Vektör Veri Tabanı (Vector Database):

Verileri vektörler olarak depolayan ve bu vektörler üzerinde arama ve analiz yapmayı sağlayan veri tabanıdır.

Latent Space (Gizli Alan):

Verilerin düşük boyutlu temsillerinin bulunduğu alan.

Model Mimarileri ve Teknikler

Transformer:

Doğal dil işleme görevlerinde üstün performans gösteren bir sinir ağı yapısıdır.

Self-Attention:

Her bir kelimenin tüm diğer kelimelerle olan ilişkisini hesaba katarak bağlamı anlamaya yardımcı olan mekanizma.

Multi-Head Attention:

Farklı bağlamları paralel olarak öğrenmek için birden fazla attention başlığının kullanılması.

Generative Adversarial Networks (GANs):

Generatör ve diskriminatör ağları arasında rekabetçi bir öğrenme sürecidir.

Variational Autoencoders (VAE):

Verilerin düşük boyutlu temsillerini öğrenmek ve yeniden oluşturmak için kullanılan bir derin öğrenme modelidir.

Kullanım ve Uygulama

Çıkarım (Inference):

Eğitilmiş bir modelin yeni veriler üzerinde tahminler yapma sürecidir.

RAG (Retrieval-Augmented Generation):

Bilgi almak ve yanıt üretmek için geri getirme ve jeneratif yöntemleri birleştiren tekniktir.

Zero-shot Learning:

Modelin daha önce görmediği sınıflar veya görevler hakkında tahmin yapma yeteneğidir.

Few-shot Learning:

Modelin çok az sayıda örnekle yeni bir görevde iyi performans gösterme yeteneğidir.

Bu yazıda Hugging Face’den söz etmeden olmaz.  Hugging Face, doğal dil işleme (NLP) ve makine öğrenimi (ML) için güçlü bir araç ve platform sağlayıcısıdır. Temel olarak, kullanıcıların ve geliştiricilerin dil modelleriyle çalışmasını kolaylaştıran açık kaynak kütüphaneler ve araçlar sunar.

Hugging Face birçok modeli kendi platformunda barındırır ve kullanıcıların bu modellere erişimini sağlar. Hugging Face Model Hub, araştırmacıların ve geliştiricilerin önceden eğitilmiş modelleri yükleyebileceği, paylaşabileceği ve kullanabileceği bir platformdur. Bu platformda GPT-2, BERT, T5, RoBERTa gibi birçok popüler model bulunur.

Hugging Face modellerini on-premise (yerel sunucularınıza) alarak kullanabilirsiniz. Hugging Face, modelleri indirip yerel ortamda çalıştırmanıza olanak tanır. Bu, modellerin internet bağlantısı olmadan veya kendi veri merkezinizde kullanılmasını sağlar.

Özet olarak, generatif yapay zeka, günümüzde teknolojinin sunduğu en yenilikçi ve güçlü araçlardan biridir. Bu teknolojiyi anlamak ve doğru kullanmak, işletmelerin ve araştırmacıların yaratıcı çözümler geliştirmelerine, verimliliklerini artırmalarına ve yeni fırsatlar keşfetmelerine olanak tanır. Hugging Face gibi platformlar, bu alanda çalışan herkes için vazgeçilmez kaynaklar sunarak, generatif modellerin entegrasyonunu ve kullanımını kolaylaştırır. Gelecekte, bu teknolojinin daha da yaygınlaşarak hayatımızın birçok alanında devrim yaratacağını öngörmek hiçte zor olmasa gerek.

Sarav Asiye Yiğit – 15 Temmuz 2024