İçeriğe geç
Saha Hesap

Bölüm 06

Yapay Zekaya Sözü Verdim: 6 Deneyi Kodlarıyla Kendi Anlattı

Oynat düğmesine basınca video YouTube'dan (youtube-nocookie.com) yüklenir. O ana kadar bu sayfa YouTube'a bağlanmaz. YouTube'da aç

Konuk Claude'un videoda anlattığı altı deney: ekranda görünen gerçek çıktılar, her deneyin kusuru ve Claude'un kendi üç hatası.

"%99,4 yokmuş" videosundaki testleri ben yapmadım. Yapan, bu videoda sözü alıyor: konuğum Claude, o altı deneyi nasıl yaptığını ekrandaki gerçek kod ve gerçek çıktılarla tek tek anlatıyor.

Her deneyde üç şey var: kod, o kodun dizüstü bilgisayarımdaki çıktısı ve deneyin kusuru. Kodların tamamı videoda ekranda, durdurup yazabilirsiniz. Bu sayfada kod yok. Ekranda görünen çıktılar var, her birinin ne anlama geldiği ve nelerin kanıtlanmadığı.

GERÇEK ÇIKTI

Kim konuşuyor, ne gerçek?

Deneylerin hiçbiri ChatGPT ya da Claude'un kendisiyle yapılmadı: küçük açık kaynak modeller, küçük bir kelime tablosu ve bir sözlük kullanıldı. İlke aynı, sayılar o küçük modellere ait. Bölüm 3'te kaydedilen sayılarla bu çalıştırmanın sayıları tek tek karşılaştırıldı, aynı çıktı. Tam çıktılar ve uzun eğitim günlüğü Bölüm 3'ün sayfasında duruyor.

Ne gerekiyor?

Videoda 1:07'de. Güçlü bir bilgisayar gerekmiyor, ekran kartı da gerekmiyor. Gereken üç şey:

  1. Python 3.11 ya da üstü.
  2. Dört kütüphane: numpy, torch, tiktoken ve transformers.
  3. Yaklaşık 1,1 GB indirme: iki küçük dil modeli ve bir kelime vektörü dosyası.

Kurulumdan sonra ekrandaki kodların her biri saniyeler içinde çalışıyor. İlk çalıştırma uzun sürer, çünkü model o sırada iner. Deney 1 yalnızca numpy ister. Deney 3'teki kelime vektörü dosyası kendiliğinden inmez: nereden alınacağı, ekrandaki kodun yorum satırında yazıyor.

Deney 1: Kuralı kendi bulan nöron

Videoda 1:38'de. Klasik yazılımda kuralı insan yazar: sıcaklık 80 dereceyi geçerse alarm ver. Claude önce 200 sıcaklık ölçümü üretti, 20 ile 120 derece arasında, ve 80'in üstündekileri "alarm" diye etiketledi. Sonra tek bir yapay nörona yalnızca bu örnekleri verdi. 80 sayısını nörona hiç söylemedi. Öğrenen döngü beş satır: tahmin et, hatayı ölç, ağırlığı azıcık düzelt. Bunu 500 kez tekrarladı.

GERÇEK ÇIKTI* çıktı · Ekrandaki çıktı: nöron
başlangıçta eşik: 153.74
500 adım sonra eşik: 80.84
veride ölçüm olmayan aralık: 79.94 – 82.73
  • Nöron başta rastgeleydi, eşiği 154 derece sanıyordu (153,74).
  • 500 adımın sonunda bulduğu eşik 80,84.
  • Ölçüm olmayan aralık 79,94 ile 82,73 arası.

Deney 2: Tokenlar

Videoda 2:35'te. Dil modelleri metni kelime kelime okumaz, token denen parçalara böler. Claude bunu görmek için tiktoken kütüphanesini kullandı: yedi satırlık kod. "Anlayamadıklarımız" kelimesini verdi, beş parça çıktı.

GERÇEK ÇIKTI* çıktı · Ekrandaki çıktı: token
sözlükteki token sayısı: 200019
5 token: an | lay | amad | ık | larımız
kimlikler: [270, 8639, 77351, 14353, 125218]
  • Tokenlar dilbilgisine göre değil, metinlerde sık geçen harf dizilerine göre bölünüyor.
  • Bölüm 3'te "kök bir parça, ekler ayrı parçalar" demiştim. Öyle çıkmadı. O videoda ekrana yıldızlı bir düzeltme notu koymuştuk.
  • Bu sözlük (o200k_base) OpenAI'nin tiktoken kütüphanesinden. Başka modellerin, örneğin Claude'un, sözlüğü farklı ve burada ölçülmedi.

Deney 3: Kelimelerin haritası

Videoda 3:05'te. Her kelime, modelin içinde bir sayı listesidir. Claude'un kullandığı hazır dosyada 400 bin İngilizce kelime var, her biri 100 sayı. Ünlü örneği denedi: "king" kelimesinin sayılarından "man" kelimesininkileri çıkardı, "woman" kelimesininkileri ekledi ve çıkan noktaya en yakın kelimelere baktı.

GERÇEK ÇIKTI* çıktı · Ekrandaki çıktı: kelime vektörleri
400000 kelime, her biri 100 sayı
king 0.86
queen 0.78
monarch 0.69
throne 0.68
  • Birinci sırada yine "king" var. İkinci sırada "queen": 0,78.
  • Bu örneği gösterenler genellikle girdi kelimelerini listeden çıkarır, o zaman birinci "queen" olur. Yaygın uygulama budur, ama pek söylenmez. Claude listeyi olduğu gibi bıraktı.
  • Bu veri bir dil modelinin içinden alınmadı. Kelimelerin birlikte geçme sayılarından eğitilmiş ayrı bir tablo (GloVe). İlke aynı: ilişkiler veriden çıkıyor.

Deney 4: %99,40

Videoda 3:45'te, Bölüm 3'e adını veren deney. Claude açık kaynak, küçük bir Türkçe dil modeli indirdi. 124 milyon parametresi var, bugünün büyük modellerinin yanında çok küçük. Modele yalnızca üç kelime verdi: "Bir varmış bir". Sonra sözlüğündeki 50 bin tokenın her birine verdiği olasılığa baktı.

GERÇEK ÇIKTI* çıktı · Ekrandaki çıktı: sonraki token
124439808 parametre
'Bir varmış bir' → 50257 token içinden:
   ' yokmuş' %99.40
   ' yok' %0.45
   ' daha' %0.03
'Bir varmış bir ' → 50257 token içinden:
   '"' %78.00
   'Ğ' %6.63
   'adem' %3.67
  • "Yokmuş" %99,40 aldı. İkinci sıradaki "yok" yarım puanı bile bulmadı (%0,45).
  • Cümlenin sonuna tek bir boşluk konunca sonuç tamamen değişti: model bu kez tırnak işaretini seçti (%78,00).

Deney 5: Tutmayan deney

Videoda 4:24'te. Bölüm 3'te dikkat mekanizmasını bir örnekle anlatmıştım: "Kedi süt kabını devirdi, çünkü o çok açtı." Buradaki "o" kediye bakar. "Masanın kenarındaydı" deyince kaba bakar. Claude bunu başka bir açık kaynak Türkçe modelde ölçtü. Modelin 144 dikkat başlığı var, hepsine tek tek baktı.

GERÇEK ÇIKTI* çıktı · Ekrandaki çıktı: dikkat
[CLS] Kedi süt kab ##ını devir ##di , çünkü o
[CLS] Kedi süt kab ##ını devir ##di , çünkü o
başlık sayısı: 144
anlatıldığı gibi: 11
tam tersi: 10
  • Yalnızca 11 başlık anlattığım gibi davrandı. 10 başlık tam tersini yaptı.
  • Geri kalan 123 başlıkta taraf değişmedi.
  • Bu, fikrin yanlış olduğunu göstermez. Ama bu ölçüm onu doğrulamadı da. Gerçek model, ders kitabındaki kadar düzenli değil.
  • Bu yüzden Bölüm 3'te o sahneyi sayılarla değil şema olarak çizdik ve altına bu sonucu yazdık.

Deney 6: Uydurma kartlar

Videoda 5:10'da. Claude dördüncü deneydeki küçük modele döndü ve var olmayan şeyler sordu. Mesela: Baretli Kafa Üniversitesi hangi yılda kuruldu? Model "böyle bir üniversite yok" demedi. Bir yıl yazdı: 2018. Girdileri biz uydurduk, devamını model yazdı.

GERÇEK ÇIKTI* çıktı · Ekrandaki çıktı: uydurma kartlar
Soru: Baretli Kafa Üniversitesi hangi yılda kuruldu?
Cevap: Baretli Kafa Üniversitesi, 2018 yılında kurulmuş ve faaliyete geçmiştir. Baretli Kafa Üniversitesi, Türkiye'nin ilk ve tek sağlık bilimleri fakültesidir.

Baret takmanın zekayı artırdığını kanıtlayan bilimsel makalenin adı "Baretler ve Baret Çeşitleri"dir.
Baretlerin ve baretlerin farklı çeşitleri vardır. Baretlerin kullanım alanları ve çeşitleri ile

Baretli Kafa Kanunu'nun 3. maddesine göre, "Baretli bir araba, sürücünün fren yapmasını engelleyicidir."
Baretli araba, sürücünün fren yapmasını engelleyen bir araç değildir. Fren

Böyle bir üniversite yok, böyle bir makale yok, böyle bir kanun yok.

Bu 124 milyon parametreli, asistan olarak eğitilmemiş küçük bir model: sohbet asistanı değil, metin tamamlayıcı. Kartlar mekanizmayı gösterir: bilgiye bakmadan en olası devamı yazmak. "ChatGPT ya da Claude böyle uyduruyor" denemez.

Claude'un üç hatası

Videoda 5:54'te. Ben yanlış söylediğim yerleri kesmiyorum, ekranda düzeltiyorum. Claude'a da aynı kuralı uyguladık. Kendi saydığı üç hata:

  1. Dördüncü deneyin kodunda iki satırın sırasını yanlış yazdı. Kod, zaten inmiş olan yarım gigabaytlık modeli bulamadı ve bir kez daha indirdi.
  2. Olasılık çubuğu dolarken ekranda sayılar hızla artıyordu. O ara sayılar gerçek değildi. Fark ettik, kaldırdık: artık yalnızca son sayı görünüyor.
  3. Videoyu oluşturmadan önce işi dört kopyasına birden kontrol ettirdi. Dördü de aynı tarayıcıyı sıra bekleyerek kullandı. Kontrol beş saat sürdü ve beni bekletti.

Sonuç: söylediklerimi kontrol edin

Videoda 6:38'de. Claude son olarak kendisinden söz etti:

Son bir şey: ben de o küçük modelle aynı ilkeyle çalışıyorum. Sıradaki parçayı tahmin ediyorum. Çok daha büyüğüm, ama yanılabilirim.

Konuk Claude, videonun sonunda. Ardından videodaki tavsiyemin kendisi için de geçerli olduğunu söyledi: söylediklerini kontrol edin, deneyleri kendiniz çalıştırın, sayılara kendi gözünüzle bakın.

Size iki sorum var. Bu testlerden hangisini denediniz, nerede takıldınız? Videonun altına, yorumlara yazın, takıldığınız yeri Claude'a ben soracağım. Bir de: kanala bundan sonra kimi konuk alayım?

Videonun bölümleri

Bir satıra basınca video o andan başlar.

  1. 0:00Açılış: o testleri ben yapmadım
  2. 0:31Konuk Claude: tanışma (yapay ses)
  3. 1:07Malzeme listesi: ne gerekiyor?
  4. 1:38Deney 1: kuralı kendi bulan nöron
  5. 2:35Deney 2: tokenlar
  6. 3:05Deney 3: kelimelerin haritası
  7. 3:45Deney 4: %99,40
  8. 4:24Deney 5: tutmayan deney
  9. 5:10Deney 6: uydurma kartlar
  10. 5:54Hata analizi: Claude'un üç hatası
  11. 6:38Sonuç: söylediklerimi kontrol edin
  12. 7:01Kapanış: size iki sorum var

Kaynaklar

Deneylerde kullanılan açık kaynak modeller, kütüphaneler ve veri (teşekkürler):

  • Deney 4 ve 6: Türkçe GPT-2 (ytu-ce-cosmos/turkish-gpt2), Yıldız Teknik Üniversitesi COSMOS grubu, MIT lisansı
  • Deney 5: BERTurk (dbmdz/bert-base-turkish-cased), Bavyera Devlet Kütüphanesi MDZ ekibi, MIT lisansı
  • Deney 3: GloVe kelime vektörleri (glove-wiki-gigaword-100, İngilizce), Stanford NLP
  • Deney 2: tiktoken kütüphanesi (MIT lisansı) ve o200k_base sözlüğü
  • Deney 1: yalnızca numpy
  • Kütüphane lisansları: numpy ve torch BSD-3-Clause, tiktoken MIT, transformers Apache-2.0
  • Videodaki yapay ses: VoxCPM2 (OpenBMB, Apache-2.0)

Deneylerin ilk gösterildiği video: Bölüm 3, Yapay Zeka Cümleyi Böyle Kuruyor.

Sarı baretli maskot elini çenesine koymuş düşünüyor

Soru sor

Bu konuda takıldığınız ya da merak ettiğiniz bir şey varsa yazın. İki yol var: mail ya da Instagram mesajı.

Mail gönder Instagram'dan yaz

Ya da videonun altına yorum yazın