1 puan yazan GN⁺ 3 시간 전 | 1 yorum | WhatsApp'ta paylaş
  • Dil modelleri, modern NLP uygulamalarının temelidir ve tek bir genel amaçlı sistemle çeşitli alt görevleri ele alan yeni bir paradigma açar
  • Bu ders, ön eğitim için veri toplama ve temizleme, Transformer kurma, eğitim ve dağıtım öncesi değerlendirmeye kadar dil modeli geliştirme sürecinin tamamını bizzat uygulamayı sağlar
  • Ödevler, tokenizer, model mimarisi ve optimizer uygulamalarıyla başlayıp GPU optimizasyonuna, FlashAttention2'nin Triton implementasyonuna ve dağıtık eğitim koduna kadar genişler
  • Dersi almak için Python ve yazılım mühendisliği yetkinliği, PyTorch, bellek hiyerarşisi gibi sistem kavramları ile kalkülüs, lineer cebir, olasılık-istatistik ve makine öğrenmesi bilgisi gerekir
  • 5 üniteli, implementasyon odaklı bir derstir; mevcut kodlara bakmayı ve LLM ile doğrudan çözüm üretmeyi kısıtlar, GPU eğitimi ve benchmark öncesinde CPU debugging yapılmasını önerir

Dersin hedefi ve kapsamı

  • Dil modelleri, modern doğal dil işleme (NLP) uygulamalarının temel taşıdır ve tek bir genel amaçlı sistemle birden fazla alt görevi ele alan yeni bir paradigma açar
  • AI, ML ve NLP alanları büyümeyi sürdürdükçe, hem araştırmacılar hem de mühendisler için dil modellerine dair derin bir anlayış daha önemli hale gelir
  • İşletim sistemleri derslerinde tüm işletim sistemini sıfırdan kurma yaklaşımından ilham alan bu ders, öğrencilerin doğrudan bir dil modeli geliştirme sürecinin tamamını izlemesini sağlar
  • Kapsam; ön eğitim verisinin toplanması ve temizlenmesi, Transformer modelinin kurulması, modelin eğitimi ve dağıtım öncesi değerlendirmeye kadar uzanır

Gerekli yetkinlikler

  • Ödevlerin çoğu Python ile yapılır ve diğer AI derslerine göre çok daha az iskelet kod sağlanır
  • Yazılması gereken kod miktarı diğer derslere göre en az bir mertebe daha fazladır; bu nedenle Python ve yazılım mühendisliği becerileri çok önemlidir
  • Nöral ağ dil modellerini birden çok makinedeki GPU'larda hızlı ve verimli çalıştırmak dersin önemli bir bölümünü oluşturur
  • PyTorch'a güçlü bir aşinalık ve bellek hiyerarşisi gibi temel sistem kavramları beklenir
  • Matris-vektör gösterimi ve işlemleri, olasılık, Gaussian dağılımı, ortalama, standart sapma ile makine öğrenmesi ve derin öğrenmenin temellerinde rahat olmak gerekir
  • Ders 5 ünitelidir ve implementasyon yoğunluğu çok yüksektir; bu yüzden yeterli zaman ayırmak gerekir

Ödev yapısı

  • Assignment 1 Basics, standart bir Transformer dil modelini eğitmek için gerekli tokenizer, model mimarisi ve optimizer'ı uygular ve minimal bir dil modeli eğitir
  • Assignment 2 Systems, Assignment 1'deki model ve katmanları gelişmiş araçlarla profile eder ve benchmark yapar, FlashAttention2'yi kendi Triton implementasyonuyla optimize eder ve bellek verimli dağıtık eğitim kodu yazar
  • Assignment 3 Scaling, Transformer'ın her bileşeninin işlevini anlamayı ve eğitim API'sini sorgulayarak model ölçekleme tahmini için scaling law uydurmayı içerir
  • Assignment 4 Data, ham Common Crawl dökümlerini kullanılabilir ön eğitim verisine dönüştürür ve filtreleme ile duplicate removal sayesinde model performansını iyileştirir
  • Assignment 5 Alignment and Reasoning RL, bir LM'in matematik problemlerini çözerken akıl yürütecek şekilde eğitilmesi için supervised fine-tuning ve reinforcement learning uygular
  • Assignment 5'in Optional Part 2 bölümü, DPO gibi güvenlik hizalama yöntemlerini uygular ve hayata geçirir

GPU compute ve maliyet

  • Dersi evden takip edenler, ödevleri tamamlamak için bulut sağlayıcılarının GPU compute kaynaklarını kullanabilir
  • 28 Mart 2026 itibarıyla tek bir B200 GPU'nun liste fiyatı Modal için saatte $6.25, Lambda Labs için saatte $6.69, RunPod için saatte $4.99, Nebius için saatte $5.50 veya spot olarak saatte $3.05, Together için saatte $7.49'dur
  • Modal aylık $30 ücretsiz compute sunar, yalnızca gerçek kullanım için ücret alır ve yerel geliştirmeden büyük ölçekli GPU deneylerine geçişi kolaylaştırır
  • Maliyeti azaltmak ve kullanım kolaylığı sağlamak için, implementasyonun doğruluğunu önce CPU üzerinde debug etmeniz; eğitim çalıştırmaları veya GPU işlem benchmark'ları içinse ödevde önerilen sayıda GPU kullanmanız tavsiye edilir

Ders işleyişi ve teslim kuralları

  • Dersler pazartesi ve çarşamba 3:00–4:20pm saatlerinde Skilling Auditorium'da yapılır; kayıtlar YouTube playlist üzerinden sunulur
  • Dersle ilgili tüm sorular herkese açık Slack kanalında sorulmalıdır ve tüm duyurular da Slack üzerinden yapılır
  • Tüm ödevler son teslim tarihine kadar Gradescope üzerinden gönderilir; e-posta ile teslim kabul edilmez
  • Son teslim tarihine kadar istenildiği kadar yeniden gönderim yapılabilir ve yalnızca son gönderim notlandırılır
  • Kısmi teslim, hiç teslim etmemekten daha iyidir
  • Her öğrenci toplam 6 gün late day kullanabilir ve 1 late day son tarihi 24 saat uzatır
  • Her ödev için en fazla 3 late day kullanılabilir
  • Notlandırmada nesnel bir hata olduğunu düşünüyorsanız, notların açıklanmasından sonraki 3 gün içinde Gradescope üzerinden yeniden değerlendirme talebi gönderebilirsiniz

İşbirliği ve AI araçları politikası

  • Çalışma gruplarına izin verilir; ancak her öğrenci kendi ödevini anlamalı ve bizzat tamamlamalıdır, ayrıca öğrenci başına tek bir ödev teslim edilmelidir
  • Grup halinde çalışıldıysa, ödevin başına çalışma grubundaki kişilerin adları yazılmalıdır
  • ChatGPT gibi LLM prompt'larına düşük seviyeli programlama soruları veya dil modelleriyle ilgili yüksek seviyeli kavramsal sorular için izin verilir
  • Problemleri doğrudan LLM kullanarak çözmek yasaktır
  • Ödev yaparken Cursor Tab, GitHub CoPilot gibi AI autocomplete araçlarının devre dışı bırakılması kuvvetle önerilir; fonksiyon adı tamamlama gibi AI olmayan autocomplete araçlarına ise izin verilir
  • Ders materyalleri kendi implementasyonunuzu yapmanız için gerekli içeriği sunduğundan, ödev yönergesinde ayrıca açıkça izin verilmedikçe çevrimiçi mevcut implementasyon kodlarına bakılmamalıdır

1 yorum

 
GN⁺ 3 시간 전
Hacker News yorumları
  • 2025 sürümü dersi yakın zamanda bitirdim; videoları ve ödevlerin çoğunu yaptım ama maliyeti yüksek bazı işleri atladım. Sadece ilk iki ödev bile çok ciddi düşünme ve debug gerektirdi; derin öğrenme temeli biraz olmasına rağmen iş çıkışı ve hafta sonlarında azar azar zaman ayırarak aylar sürdü
    Stanford öğrencilerinin ödevleri iki haftada bir teslim etmesini nasıl başardığını hayal etmek zor. Hocalar ve asistanlar ders tasarımına, güncel gelişmeleri içeren slaytlara ve mükemmel ödev hazırlıklarına gerçekten büyük emek vermiş; küçük bileşenlerden başlayıp gerçek bir dil modeli kurarken ve LLM pipeline'ının ana parçalarını doğrularken her şeyin nasıl birleştiğini doğrudan görmek çok tatmin edici
    Yine de çalıştırma ortamı gereksinimleri daha net anlatılsa iyi olurdu. Harness en iyi Linux + NVIDIA GPU üzerinde çalışıyor ve belli CUDA sürümleri ya da mimariler bekliyor; araştırmacılar için doğal olsa da kişisel ortamlarda nadir. Evde takip etmek için Windows + WSL2 + NVIDIA GPU ya da çeşitli platformlardan kiralık GPU ikinci en iyi seçenek, ama ikisi de ne kolay ne ucuz. Uyumlu GPU'su olmayanların süreçten nasıl en yüksek verimi alabileceğine dair yönlendirme de iyi olurdu; ayrıca Mac OS'te bellek analizine dikkat etmezseniz Python kodunun kilitlenip yeniden başlatmayı zorunlu kılabildiğini de öğrenmiş oldum

    • Asistan tarafından doğrulandı. Artık daha fazla ortamı test edecek kaynağımız var ve mümkün olduğunca bunu yapacağız. Kendi yazdığınız kodda aşırı bellek kullanımı nedeniyle kilitlenme her yerde olabilir, ama tokenizer ödevinde sınırlı bellek kullanımına ulaşılması için daha sıkı yönlendirme verebileceğimizi düşünüyorum
      Bu yorumlarda GPU kiralama maliyeti biraz abartılıyor da olabilir. Geliştirmenin büyük kısmı yerelde yapılabilir; sadece gerektiğinde kısa süreliğine on-demand GPU çalıştırmanız yeterli. Ödev 1 GPU olmadan da tamamen yerel makinede çalıştırılabiliyor; ödev 1 ve 2 de birkaç saatlik kiralamayla büyük ölçüde çözülebilir. Kiralık GPU'yu çok dikkat etmeden sürekli kullansanız bile yaklaşık 200 dolar civarı tutar; problem boyutunu küçültmeye razıysanız bunu 50 doların altına indirmek de kolay. Bunları ve nasıl ayarlanacağını daha net tablolaştırabiliriz gibi görünüyor
      Ek geri bildirim ya da sorunlar varsa depoda issue açmanız harika olur. Çünkü bilmediğimiz sorunları düzeltmek zor
  • Birkaç gün önce Claude ile gpt-1'in geliştirilmiş bir sürümünü implemente etmeyi denedim. Ben bir makine öğrenmesi mühendisi değilim, sıradan bir backend mühendisiyim; sonuçta gpt-1 ile KellerJordan'ın modded-nanogpt'sinin karışımı bir şey çıktı
    Oyun bilgisayarımla orijinal gpt-1 makalesindeki sonuçları yeniden üretebildim ve çok fazla VRAM de gerekmiyor. NVIDIA GeForce RTX 2060 SUPER ile 1 saatlik eğitimde sonuçların çoğunu yeniden ürettim; LLM pretraining ile ilgileniyorsanız aynı şekilde denemenizi tavsiye ederim
    Kod burada: https://github.com/epoyraz/modded-gpt-1
    Ya da Claude 4.8'e veya Codex 5.5'e doğrudan sorabilirsiniz

  • richardsocher'ın verdiği cs224d için güzel anılarım var. Transformer öncesi dönemde hazırlanmıştı, bu yüzden bugün biraz eski kalıyor ama o zamanlar derin öğrenmeyi doğal dil işlemeye uygulamak için çok harika bir giriş dersiydi
    https://cs224d.stanford.edu

    • Ben de benzer hissetmiştim. O zaman internetin potansiyelini fark ettim; üst düzey araştırma üniversitelerinde yüksek lisans yapan biri olmasanız bile en ön saftaki konuları öğrenebiliyordunuz
  • “Kendi kendine öğrenme için GPU compute” deniyor ama önerilerdeki B200 saatlik 4,99 dolardan başlıyor. Başlamak için buna gerçekten gerek var mı emin değilim
    Ben de sıfırdan bir LLM yapmaya çalışıyorum ve ilk aşamalarda Vast.ai'deki 4090'dan fazlasına ihtiyaç duymadım

    • Asistan bakış açısından hiç de öyle değil. İlk ödev için yerel compute'a, hatta M serisi GPU'lara bile uygun küçültülmüş bölümleri açıkça ekledik. Ödev 2'de GPU'nun Triton desteğini gerektiren birkaç bölüm var, ama bunların hepsi çok daha ucuz GPU'lara göre ayarlanabilir
      Bu yıl Stanford öğrencileri için Blackwell GPU bulabilmiş olmamız biraz şanstı; bu yüzden ödev açıklamaları ağırlıklı olarak o baz alınarak yazıldı
    • Bence FPGA'lere oldukça benziyor. Üretim ortamında gereken donanım görece küçük olabilir, çünkü üretim modeli ya da bitstream hedef kullanım senaryosunun ihtiyaç duyduğu şeyler dışında her şey çıkarılarak boyut açısından yoğun biçimde optimize edilmiştir
      Buna karşılık compute kernel ya da IP bloklarının nasıl tasarlanacağını öğrenip deney yaparken ihtiyaç duyulan donanım çok daha güçlü ya da daha yüksek kapasiteli olmak zorunda olabilir. Deneysel çalışmalar kasıtlı olarak optimizasyonun ters yönündedir; her aşamada okunaklı, incelenebilir ve debug edilebilir olsun diye yapıldıklarından ortaya çıkan model ya da bitstream büyük ölçüde şişmiş ve optimize edilmemiş olur
      Başkasının tamamlayıp 4090 gibi cihazlarda çalışacak şekilde optimize ettiği bir modeli kendi prompt'unuzla çalıştırmak da bir deney sayılır ama ucuza yapılabilir. Bu, 20 dolarlık bir FPGA için tasarlanıp sentezlenmiş başkasının bitstream'ini aynı FPGA'ya yükleyip kendi giriş sinyallerinizi vermeye benzer. Ama bu derste kendi model tasarımınızı öğrenirken yapacağınız deneyler bu türden değil
    • Gerekli kaynakların eğitim kurumu tarafından sağlanmaması tuhaf görünüyor
    • Kendi LLM'inizi eğitmek için GPU şart değil
    • Şüphe etmekte haklısınız. TinyStories veri kümesiyle oldukça iyi bir küçük dil modelini 4060Ti 16GB üzerinde sorunsuz eğittim. Sorunlar ancak fikirlerin “küçük sayılabilecekten daha büyük” modellere ölçeklenip ölçeklenmediğini test etmeye başlayınca çıkıyor
  • Bu ders ilgi çekici görünüyor, ancak ön koşulları da merak ediyorum. Makine öğrenmesi ve derin öğrenme temellerine aşina olmak gerektiği yazıyor; bu konuları uygulama odaklı şekilde kendi kendine çalışmak için uygun kaynaklar ya da Stanford ders kayıtları deneyimi varsa duymak isterim

  • Gerçekten harika. Son bir aydır benzer bir şey yapıyordum ve ek zorluk olarak Python standart kütüphanesi dışında hiçbir kütüphane kullanmadım; numpy bile yoktu
    Word2Vec ile başladım, RNN ve LSTM yaptım, şu anda da transformer mimarisini yaklaşık yarısına kadar uygulamış durumdayım

  • İnternette açık olan YouTube videoları ve ders materyalleriyle bu dersi birlikte takip etmek için bir grup kurduk. Zordu ama tatmin ediciydi ve haftada 1 ders videosu hızında ilerledik
    30'dan fazla kişiyle başladık ama son oturumda sadece 8 kişi kalmıştı

  • Denemek istiyorum ama henüz gereken yetkinliklere sahip olmadığım için endişeliyim. Belki bir gün yapabilirim

    • O zaman ön koşul derslerden biriyle başla
  • Bu dersi evde takip etmek için minimum GPU'nun ne olduğunu merak ediyorum. Bende 5080 16GB var; gerçekten bundan fazlası mı gerekiyor?

    • İlk bölüm M1 çipte bile yapılabilir gibi görünüyor, ikincisi ise Triton desteği gerektiriyor gibi, bu yüzden 5080 yeterli olmalı
  • İlk iki ödevi bir yıl boyunca bağımsız olarak yaptım ve gerçekten çok şey öğrendim. Sonrasında hangi dersleri aldığını merak ediyorum