Skip to content

Instantly share code, notes, and snippets.

@gsamil
Last active August 27, 2025 03:07
Show Gist options
  • Select an option

  • Save gsamil/0a5ca3bf44e979151e6c5d33345ede16 to your computer and use it in GitHub Desktop.

Select an option

Save gsamil/0a5ca3bf44e979151e6c5d33345ede16 to your computer and use it in GitHub Desktop.
Turkish Translation for "The Illustrated DeepSeek-R1"

The Illustrated DeepSeek-R1

Jay Alammar'ın yazdığı The Illustrated DeepSeek-R1 isimli blog'un Türkçe çevirisidir.

illustrated_deepseek_img_001

DeepSeek-R1, yapay zeka modellerinin istikrarlı ilerleyişindeki son etkileyici adımdır. Temel olarak iki sebepten dolayı büyük bir gelişme olduğunu söyleyebiliriz:

  1. Açık kaynak ağırlıklara sahip bir model olması (daha küçük, damıtık versiyonları da dahil)
  2. OpenAI-O1 tarzı bir akıl yürütme modelini yeniden üretmek için bir eğitim yöntemini tasarlayıp paylaşması

Bu yazıda modelin oluşum sürecini göreceğiz.

İçerik:

  • Özet: Büyük Dil Modelleri (LLM) nasıl eğitilir
  • DeepSeek-R1 Eğitmenin Adımları
    1. Uzun akıl yürütme zincirlerinden (chains of reasoning) oluşan Gözetimli İnce Ayarlama (SFT) verisi
    2. Geçici olarak kullanılacak ("ara model" olarak bahsedeceğim) yüksek Kaliteli bir akıl yürütme LLM'i (ancak akıl yürütme harici görevlerde daha kötü olabilir)
    3. Büyük ölçekli pekiştirmeli öğrenme (RL) yöntemiyle eğitilen akıl yürütme modelleri
      1. Büyük ölçekli ve akıl yürütme odaklı RL (R1-Zero)
      2. Yukarda bahsedilen ara model kullanılarak SFT akıl yürütme verisi oluşturma
      3. Genel RL eğitim aşaması
  • Mimari

Böyle bir modelin nasıl çalıştığını anlamanız için ihtiyaç duyacağınız birçok temel bilgi, kitabımız Hands-On Large Language Models'de mevcuttur.

illustrated_deepseek_img_002

Kitabın resmi web sitesi. Kitabı Amazon'dan sipariş edebilirsiniz. Tüm kod GitHub'a yüklendi.

Özet: LLM'ler Nasıl Eğitilir

Tıpkı halihazırdaki birçok LLM gibi, Deepseek-R1 da bir seferde bir token (sözcük birimi) üretiyor. Ancak matematik ve akıl yürütme problemlerini çözmede üst seviyelerde. Çünkü düşünce zincirini (chain of thought) açıklamasını sağlayan "düşünce token"ları üreterek problem üzerinde bir anlamda daha fazla zaman harcayabiliyor.

illustrated_deepseek_img_003

Kitabımızın 12. bölümünden alınan aşağıdaki figür, yüksek kalite bir LLM oluşturmanın 3 adımını gösteriyor:

illustrated_deepseek_img_004

  1. Dil Modelleme adımı : Çok büyük miktarlarda web verisi kullanılarak sıradaki kelimeyi tahmin etme üzerine bir model eğitilir. Bu adımın sonunda temel model (base model) elde edilir.

  2. Gözetimli İnce Ayar adımı : Komutları takip etme ve soruları cevaplama alanlarında modelin daha faydalı hale getirildiği adım. Bu adımın sonunda elde edilen model Komutla Ayarlanmış (Instruction Tuned) model ya da SFT model olarak isimlendirilir.

  3. Tercih Ayarlama adımı : Modelin davranışlarının daha da iyileştirildiği ve kullanıcı tercihlerine daha uyumlu hale getirildiği adım. Bu adımın sonunda elde edilen modele Tercih Ayarlanmış (Preference Tuned) model denilir ve son kullanıcılar bu modeli kullanır.

DeepSeek-R1 Eğitme Rehberi

DeepSeek-R1 da bu genel adımları izler. İlk adımın detayları DeepSeek-V3'nin tarif edildiği bir önceki makalede açıklanmıştır. R1 bir önceki makaledeki temel modeli kullanmaktadır (3. adımın sonunda elde edilen son DeepSeek-V3 modelini değil) ve SFT ile Tercih Ayarlama adımlarından geçmektedir. Ancak bu adımları uygulama şeklindeki farklılıklar vardır.

illustrated_deepseek_img_005

R1'in oluşturulma sürecinde vurgulanması gereken 3 önemli ayrıntı var:

1 - Uzun akıl yürütme zincirleri SFT verisi

illustrated_deepseek_img_006

Çok miktarda (600,000 adet) uzun akıl yürütme zinciri örnekleri kullanılmıştır. Bu örnekleri toparlamak çok zordur ve insanlar tarafından etiketlenmesi bu ölçeklerde çok pahalıdır. Bundan dolayı bu örneklerin oluşturulma süreci vurgulanması gereken ikinci önemli şey.

2 - Ara model - yüksek kaliteli bir akıl yürütme LLM'i (ancak akıl yürütme dışı görevlerde daha kötü olabilir)

Bu veri R1'ın bir öncüsü olan model kullanılarak oluşturulur, akıl yürütmede uzmanlaşmış isimsiz bir kardeş. Bu isimsiz kardeş, birazdan bahsedeceğimiz R1-Zero isimli bir modelden esinlenmiştir. Çok önemli bir model, ama çok iyi olduğu için değil; büyük ölçekli Pekiştirmeli Öğrenme yöntemiyle çok az etiketli veri kullanılarak elde edildiği ve akıl yürütme problemlerinde çok başarılı olduğu için.

Artık bu isimsiz akıl yürütme modelinin çıktıları akıl yürütme içermeyen görevleri de yapabilen daha genel bir model eğitmek için kullanılabilir, hem de bir kullanıcının herhangi bir LLM'den beklediği seviyede.

illustrated_deepseek_img_007

3 - Büyük ölçekli Pekiştirmeli Öğrenme ile akıl yürütme modelleri oluşturma

Bu 2 adımdan oluşmaktadır:

illustrated_deepseek_img_008

3.1 Büyük ölçekli ve akıl yürütme odaklı Pekiştirmeli Öğrenme (R1-Zero)

Bu aşamada pekiştirmeli öğrenme yöntemi kullanılarak ara akıl yürütme modeli eğitilir. SFT eğitiminde kullanılacak akıl yürütme örnekleri de bu modelle üretilir. Bu modelin oluşturulabilmesini mümkün kılan şey, önceki deneylerden birinin sonucunda elde edilen DeepSeek-R1-Zero isimli bir model.

illustrated_deepseek_img_009

R1-Zero özel bir model, çünkü eğitiminde çok fazla SFT verisi kullanılmamasına rağmen akıl yürütme görevlerinde çok başarılıdır. Ön-eğitilmiş (pre-trained) modele direk olarak (ara bir SFT aşaması olmadan) Pekiştirmeli Öğrenme yöntemi uygulanarak elde edilir. Sonunda o1'le rekabet edebilecek seviyede bir model elde edilir.

illustrated_deepseek_img_010

Bu çok önemli bir gelişme, çünkü şimdiye kadar veri her zaman Makine Öğrenmesi modellerinin yakıtı olarak kabul ediliyordu, şimdi nasıl oldu da klasik kabullerle uyuşmazlık oldu? Buradan çıkarılabilecek iki sonuç var:

1 - Modern temel modeller belirli bir kalite ve kapasite eşiğini aşmış durumda (bu temel model 14.8 trilyon yüksek kalite sözcük birimi kullanılarak eğitildi)

2 - Akıl yürütme problemleri, genel sohbet veya metin üretme problemlerinin aksine otomatik olarak doğrulanabilir ve etiketlenebilir. Bunu bir örnekle gösterelim:

Örnek: Bir akıl yürütme probleminin otomatik olarak doğrulanması

Pekiştirmeli Öğrenme aşamasının bir parçası olarak kullanılabilecek bir istem (prompt) ya da soru düşünelim:

Bir Python kodu yaz; bir numara listesini girdi olarak alsın, bunları sıralanmış şekilde dönsün, ama listenin en başına 42 eklesin.

Bu tarz bir problem için kullanılabilecek birçok otomatik doğrulama yöntemi bulunabilir. Bu örneği eğitmekte olduğumuz modele girdi olarak verdiğimizi düşünelim, model de bir tamlama (completion) üretti:

  • Bir kod analiz (linter) aracıyla tamamlayıcının doğru bir Python kodu olup olmadığını kontrol edebiliriz.
  • Python kodunu çalıştırabiliriz ve çalışıp çalışmadığını görebiliriz.
  • Başka modern LLM'lere birim testler yazdırabiliriz, bunu yapmak için akıl yürütmede çok başarılı olmalarına gerek yok. Bu birim testleri beklenen davranışı doğrulamak için kullanabiliriz.
  • Hatta bir adım daha ileri gidebiliriz ve farklı kodların yürütme sürelerini ölçüp eğitim sürecinde daha performanslı alternatiflerin tercih edilmesini sağlayabiliriz.

Bu şekilde bir soruyu modele eğitimin bir adımında sunabilir ve birçok olası cevap üretebiliriz.

illustrated_deepseek_img_011

İlk tamamlayıcının kod olmadığını insan kontrolüne gerek olmadan otomatik olarak kontrol edebiliriz. İkincisi kod olmasına rağmen Python kodu değil. Üçüncüsü olası bir çözüm, ama birim testlerden geçemedi, dördüncüsü ise doğru çözüm.

illustrated_deepseek_img_012

Bütün bunlar modeli geliştirmede direk olarak kullanılabilecek işaretlerdir. Tabii ki bu işlemler bir çok örnek özerinde mini-paketler (batch) halinde ve ardışık eğitim adımlarıyla yapılır.

illustrated_deepseek_img_013

Bu ödül işaretleri (reward signals) ve model güncellemeleri; modelin pekiştirmeli öğrenme ile bu görevlerde daha başarılı hale geldiğini açıklar. Makaledeki Figure-2'de de eğitim süreci görülebilir.

illustrated_deepseek_img_014

Modelin kapasitesinin gelişmesine bağlı olarak üretilen cevabın uzunluğu da değişmektedir, çünkü model problemi işlerken daha fazla düşünce token'ı üretir.

illustrated_deepseek_img_015

Bu faydalı bir süreç, ancak R1-Zero modeli akıl yürütme problemlerinde yüksek skorlar almasına rağmen, beklendiği kadar kullanılamamasına sebep olan bazı problemleri var.

DeepSeek-R1-Zero çok güçlü akıl yürütme kapasitesi göstermesine rağmen, ve aynı zamanda bu beklenmeyen ve güçlü akıl yürütme kapasitesini otonom olarak geliştirmesine rağmen, birçok sorun içerir. Örnek olarak DeepSeek-R1-Zero'nun ürettiği metinlerin okunulurluğu daha düşüktür ve bazen farklı dilleri birbirine karıştırır.

R1'ın ise daha kullanılabilir bir model olması hedeflenmiştir. Bundan dolayı tamamen tek pekiştirmeli öğrenme tekniğine güvenmek yerine, iki farklı yerde kullanılmıştır.

  1. Ara bir Akıl Yürütme Modeli oluşturup bununla SFT verisi oluşturma
  2. R1 modelini akıl yürütme gerektiren ve gerektirmeyen problemlerde geliştirmek için eğitmek. (Akıl yürütme gerektirmeyen problemlerde farklı tipte doğrulayıcılar kullanıllır)

3.2 Ara akıl yürütme modeli kullanılara SFT akıl yürütme verisi oluşturma

Ara akıl yürütme modelini daha faydalı hale getirmek için, birkaç bin akıl yürütme örneği (bu örneklerin bazıları R1-Zero'dan üretilip filtrelenmiştir) kullanılarak bir SFT adımından geçirilir. Makale bu adımı cold-start olarak isimlendirir.

2.3.1 Cold Start DeepSeek-R1-Zero'da taban modele uygulanan pekiştirmeli öğrenme erken ve kararsız bir cold-start aşamasına sebep oldu. Bundan dolayı DeepSeek-R1 modelini başlangıçta RL aktörü olarak ince-ayarlayabilmek için; az bir miktar uzun akıl yürütme zinciri verisi toplanmıştır. Bu datayı toplayabilmek için birçok yöntem kullanıldı: uzun bir akıl yürütme zinciri örneğiyle few-shot istemlemesi (prompting), modelleri direk olarak istemleyerek öz-sorgulama (reflection) ve doğrulama da içeren detaylı cevaplar üretmelerini sağlamak, DeepSeek-R1-Zero çıktılarını okunabilir formatta toparlamak ve sonuçları insan etiketleyiciler yardımıyla iyileştirmek.

illustrated_deepseek_img_017

Soru: Ama bir sn, eğer bu veriye sahipsek neden RL sürecine ihtiyaç duyuyoruz? Cevap: Verinin ölçeğinden dolayı

Bu veri seti 5000 örnekten oluşabilir, ama R1'ı eğitmek için 600,000 örneğe ihtiyaç var. Bu ara model bu boşluğu doldurur ve bu çok değerli veriyi yapay olarak oluşturabilmeyi sağlar.

illustrated_deepseek_img_018

Denetimli İnce Öğrenme (SFT)

İstem ve tamamlayıcılardan oluşan eğitim örnekleriyle modelin eğitildiği sürece SFT denir. 12. bölümdeki şekil birkaç SFT örneği göstermektedir:

illustrated_deepseek_img_019

3.3 Genel RL Eğitim Aşaması

Bu aşama R1'in hem akıl yürütme görevlerinde hem de diğer görevlerde başarılı olmasını sağlar. Daha önce gördüğümüz RL sürecine benzerdir. Ancak akıl yürütme içermeyen uygulamaları da içerdiğinden dolayı, yardımseverlik (helpfulnes) ve güvenlik (safety)'le ilgili istemler için bunlara göre ödül modelleri kullanır (Llama modellerine benzer şekilde).

illustrated_deepseek_img_020

Mimari

GPT-2 ve GPT-3 serisi diğer bütün modeller gibi DeepSeek-R1 da Transformer kod çözücü tuğlalarından oluşan bir bina (61 tanesinden). İlk 3 blok dense, geri kalanları mixture-of-experts katmanlarıdır. (Maarten'in giriş rehberini inceleyebilirsin : A Visual Guide to Mixture of Experts (MoE))

illustrated_deepseek_img_021

Model boyutu büyüklüğü ve diğer hyper-parametreler bakımından da şu şekilde görünüyor:

illustrated_deepseek_img_022

Bundan önceki iki makalede model mimarisi hakkında daha fazla ayrıntıya yer verilmiş:

Sonuç

Bu bilgiler DeepSeek-R1'la ilgili genel bir fikir edinmeni sağlamış olmalı.

illustrated_deepseek_img_023

Eğer bu blog'u anlamak için daha temel bilgilere ihtiyaç duyduğunu düşünüyorsan, Hands-On Large Language Models'ı satın alabilir, ya da O’Reilly'de online olarak okuyabilir ve GitHub reposunu gözden geçirebilirsin.

Diğer tavsiye kaynaklar:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment