Yapay zeka modelleri ve platformları

Mamba: Dizi Modellemesini Yeniden Tanımlayan ve Transformer Mimarisini Geride Bırakan Model

Aayush Mittal
Unite.AI sitesini Google'daki tercih ettiğiniz kaynaklara ekleyin
Öne çıkan noktalarMamba'nın seçici durum-uzay modeli, uzun dizileri doğrusal zamanda işleyerek…
Daha fazla göster
  • Mamba'nın seçici durum-uzay modeli, uzun dizileri doğrusal zamanda işleyerek Transformer modellerini geride bırakıyor.
  • Donanım odaklı tasarımı, daha hızlı çıkarım ve daha iyi GPU kullanımı için dikkat bloklarını ortadan kaldırıyor.
  • Mamba, dil, ses ve genomik görevlerde Transformer performansını yakalıyor veya aşıyor.

Bu makalede, Mamba hakkında bilgi vereceğiz. Mamba, Albert Gu ve Tri Dao tarafından geliştirilen yenilikçi bir durum uzayı modeli (SSM)dir. Mamba, dil işleme, genomik ve ses analizi gibi alanlardaki karmaşık dizilerin işlenmesinde verimliliği ile dikkat çeker. Doğrusal zaman dizisi modellemesi ve seçici durum uzayları, bu farklı veri türlerinde üstün performans sağlar.

Mamba, geleneksel Transformers’ın karşılaştığı hesaplamalı zorlukların üstesinden gelme yeteneğini inceleyeceğiz. Seçici durum uzayı modelleri, daha hızlı çıkarım ve dizinin uzunluğu ile doğrusal ölçekleme sağlar, bu da verimliliği önemli ölçüde artırır.

Mamba’nın benzersizliği, hızlı işleme yeteneği, seçici SSM katmanı ve FlashAttention’dan esinlenen donanım dostu tasarımıdır. Bu özellikler, Mamba’yı birçok mevcut modeli, özellikle de transformer tabanlı olanları geride bırakmasını sağlar ve makine öğrenimi alanında önemli bir ilerleme sağlar.

Transformers vs Mamba

GPT-4 gibi Transformer modelleri doğal dil işlemede standartlar belirledi. Ancak, daha uzun dizilerde verimlilikleri düşer. İşte Mamba, daha uzun dizileri daha verimli bir şekilde işleyebilme yeteneği ile öne çıkıyor ve benzersiz mimarisi ile tüm süreci basitleştiriyor.

Transformers, dil modelleri için dizilerle veri işleme konusunda uzmanlaşmıştır. Önceki modellerin aksine, Transformers tüm dizileri aynı anda işler, böylece karmaşık ilişkileri yakalamalarına olanak sağlar.

Dikkat mekanizması kullanır, bu da modelin öngörülerde bulunurken dizinin farklı kısımlarına odaklanmasını sağlar.

Bu dikkat, girdi verisinden türetilen sorgular, anahtarlar ve değerler olmak üzere üç küme ağırlık kullanılarak hesaplanır. Dizideki her bir öğe, diğer her bir öğe ile karşılaştırılır, böylece her bir öğeye öngörülerde bulunulurken ne kadar “dikkat” gösterilmesi gerektiğini belirten bir ağırlık sağlar.

Transformers, girdi verisini işleyen bir kodlayıcı ve çıktı üreten bir dekoder olmak üzere iki ana bloğa sahiptir. Kodlayıcı, çoklu başlı self-attention mekanizması ve basit, konum-bazlı tam bağlantılı bir feed-forward ağdan oluşan birden fazla katmandan oluşur. Her bir alt-katmanda normalize etme ve artık bağlantılar kullanılır, bu da derin ağların eğitilmesine yardımcı olur.

Dekoder de, kodlayıcıya benzer şekilde iki alt-katmandan oluşan katmanlara sahiptir, ancak çıktı için çoklu başlı attention gerçekleştiren bir üçüncü alt-katman daha ekler. Dekoderin sıralı doğası, bir konum için öngörülerin yalnızca önceki konumları dikkate alabilmesini sağlar, böylece otoregresif özelliği korunur.

Mamba modeli ise farklı bir yaklaşım benimser. Transformers, uzun dizilerle başa çıkmak için daha karmaşık dikkat mekanizmaları kullanırken, Mamba seçici durum uzaylarını kullanır, bu da daha verimli bir işlem sağlar.

Bir transformer nasıl çalışır:

  1. Giriş İşleme: Transformers, girdi verilerini modelin anlayabileceği bir forma dönüştürür, genellikle konumlarını da içeren gömme işlemlerini kullanır.
  2. Dikkat Mekanizması: Dikkat mekanizması, mevcut öğeyi anlamlandırırken girdi dizisinin diğer bölümlerine ne kadar odaklanılacağını belirleyen puanlar hesaplar.
  3. Kodlayıcı-Dekoder Mimarisi: Transformer modeli, girdi verisini işleyen bir kodlayıcı ve çıktı üreten bir dekoderden oluşur. Her biri, modelin girdi verisini anlamasını iyileştiren birden fazla katmandan oluşur.
  4. Çoklu Başlı Dikkat: Kodlayıcı ve dekoderde, çoklu başlı dikkat, modelin aynı dizinin farklı bölümlerine, farklı temsil uzaylarından aynı anda odaklanmasını sağlar, bu da öğrenme yeteneğini artırır.
  5. Konum-Bazlı Feed-Forward Ağlar: Dikkat mekanizmasından sonra, basit bir sinir ağı her konumun çıktısını ayrı ayrı ve aynı biçimde işler. Sonuç, bir artık bağlantıyla girdiye eklenir ve ardından katman normalizasyonu uygulanır.
  6. Çıktı Üretimi: Dekoder, girdi verisi ve ürettiği çıktıya dayanarak bir çıktı dizisi üretir.

Transformer’lerin paralel dizileri işleme ve güçlü dikkat mekanizması, çeviri ve metin oluşturma gibi görevler için güçlü bir araç yapar.

Mamba modeli ise seçici durum uzaylarını kullanarak dizileri işler, bu da geleneksel modellerin uzun dizilerle başa çıkma zorluğunu giderir. Mamba’nın tasarımı, daha hızlı çıkarım ve doğrusal ölçekleme sağlar, bu da dizileri modelleme için yeni bir paradigmaya yol açar.

Mamba

Mamba’nın benzersizliği, geleneksel dikkat ve MLP bloklarından ayrılmasıdır. Bu basitleştirme, daha hafif ve hızlı bir model sağlar ve dizinin uzunluğu ile doğrusal olarak ölçeklenir, bu da önceki modellerin ulaşamadığı bir başarıdır.

Mamba’nın ana özellikleri şunlardır:

  1. Seçici SSM’ler: Mamba, alakasız bilgileri filtreleme ve ilgili verilere odaklanma yeteneği sağlar, bu da dizileri işleme yeteneğini artırır. Bu seçicilik, içerik temelli akıl yürütme için çok önemlidir.
  2. Donanımı Dikkate Alan Algoritma: Mamba, modern donanımlar için optimize edilmiş bir paralel algoritma kullanır, özellikle de GPU’lar için. Bu tasarım, daha hızlı hesaplama ve geleneksel modellere kıyasla azaltılmış bellek gereksinimleri sağlar.
  3. Basitleştirilmiş Mimarisi: Seçici SSM’leri entegre ederek ve dikkat ve MLP bloklarını ortadan kaldırarak, Mamba daha basit ve daha homojen bir yapı sunar. Bu, daha iyi ölçeklenebilirlik ve performans sağlar.

Mamba, dil, ses ve genomik gibi çeşitli alanlarda üstün performans göstermiştir. Örneğin, dil modellemede, Mamba daha büyük Transformer modellerinin performansını eşler veya aşar.

Mamba’nın kodu ve önceden eğitilmiş modelleri, GitHub adresinde topluluk tarafından kullanılabilir.

Standart Kopyalama görevleri lineer modeller için basittir. Seçici Kopyalama ve Endüksiyon Başlıkları, LLM'ler için dinamik, içerik-farkında belleğe ihtiyaç duyar.

Standart Kopyalama görevleri lineer modeller için basittir. Seçici Kopyalama ve Endüksiyon Başlıkları, LLM’ler için dinamik, içerik-farkında belleğe ihtiyaç duyar.

Yapılandırılmış Durum Uzayı (S4) modelleri, son zamanlarda verimli ve uyarlanabilir dizileri modelleme için yeni bir metodoloji sunan bir dizi model olarak ortaya çıktı. Bu modeller RNN'lerin, CNN'lerin ve klasik durum uzayı modellerinin özelliklerini bir araya getirir. S4 modelleri, sürekli sistemlerden, özellikle de bir boyutlu fonksiyonları veya dizileri örtük bir gizli durum aracılığıyla eşleyen bir sistem türünden esinlenir. Derin öğrenmede, bu, dizileri modelleme için yeni bir yaklaşım sağlar.

S4 Modellerinin Dinamikleri

SSM (S4) Bu, temel yapılandırılmış durum uzayı modelidir. Bir diziyi x alır ve öğrenilen parametreler A, B, C ve bir gecikme parametresi Δ kullanarak bir çıktı y üretir. Dönüşüm, parametreleri diskretleştirme (sürekli fonksiyonları diskret fonksiyonlara dönüştürme) ve SSM işlemini uygulama içerir, bu da zaman-değişmezdir – yani farklı zaman adımlarında değişmez.

Discretizasyonun Önemi

Discretizasyon, sürekli parametreleri diskret parametrelere dönüştürerek S4 modellerinin sürekli-zaman sistemleriyle bağlantısını korumasını sağlar. Bu, modellere ek özellikler kazandırır, örneğin çözünürlük değişmezliği ve normalize etme, bu da modelin stabilitesini ve performansını artırır. Discretizasyon ayrıca, bilgi akışını ağ boyunca yönetmek için kritik olan RNN’lerdeki kapı mekanizmalarına benzerlik gösterir.

Doğrusal Zaman Değişmezliği (LTI)

S4 modellerinin temel bir özelliği, doğrusal zaman değişmezliğidir. Bu, modelin dinamiklerinin zaman boyunca tutarlı kalması anlamına gelir, tüm zaman adımlarında parametreler sabittir. LTI, tekrarlanma ve konvolüsyonların temel taşıdır ve dizileri modelleme için basitleştirilmiş ancak güçlü bir çerçeve sunar.

Temel Sınırlamaların Üstesinden Gelmek

S4 çerçevesi, geleneksel olarak LTI doğası nedeniyle sınırlı olmuştur, bu da adaptif dinamikler gerektiren verilere modelleme zorlukları yaratır. Yakın tarihli bir araştırma makalesi, bu sınırlamaları aşmak için zaman-değişken parametreler sunar, böylece LTI kısıtlaması kaldırılır. Bu, S4 modellerinin daha çeşitli bir dizi verilere ve görevlere uyum sağlamasını sağlar, bu da uygulamalarını önemli ölçüde genişletir.

Durum uzayı modeli terimi, gizli bir durum içeren herhangi bir yinelemeli süreci geniş anlamda kapsar ve farklı disiplinlerde çeşitli kavramları tanımlamak için kullanılır. Derin öğrenmede, S4 modelleri veya yapılandırılmış SSM’ler, verimli hesaplamayı korurken karmaşık dizileri modelleme yeteneğine sahip özel bir model sınıfını ifade eder.

S4 modelleri, uçtan uca sinir ağları mimarilerine bağımsız dizileri dönüştürme olarak entegre edilebilir. Bunlar, CNN’lerdeki konvolüsyon katmanlarına benzer bir şekilde, çeşitli sinir ağları mimarilerinde dizileri modelleme için temel oluşturur.

SSM vs SSM + Seçim

SSM vs SSM + Seçim

Dizileri Modellemede Seçiciliğin Motivasyonu

Yapılandırılmış SSM'ler

Yapılandırılmış SSM’ler

Makale, dizileri modellemenin temel bir yönünün, bağlamı yönetilebilir bir duruma sıkıştırma olduğunu savunur. Girişleri filtreleme veya seçme yeteneğine sahip modeller, daha verimli ve güçlü dizileri modelleme için bu sıkıştırılmış durumu korumak için daha etkili bir yol sunar. Bu seçicilik, modellerin dizinin boyutu boyunca bilgi akışını adaptif olarak kontrol etme yeteneği için çok önemlidir.

Seçici SSM’ler, geleneksel SSM’leri geliştirir ve parametrelerin girdi-bağımlı olmasını sağlar, bu da zaman-değişken SSM’lerine yol açar. Bu, geleneksel modellerden önemli bir sapmadır. Böylece zamanla değişmeyen modellerin sağlayamadığı bir uyarlanabilirlik elde edilir. Zamanla değişen bu SSM'ler artık verimli hesaplama için konvolüsyonları kullanamaz; bunun yerine doğrusal bir yineleme mekanizmasına dayanır.

SSM + Seçim (S6) Bu varyant, bir seçim mekanizması ekler ve parametrelerin B ve C ve bir gecikme parametresi Δ girdi-bağımlı olmasını sağlar. Bu, modelin girdi dizisi x içindeki belirli bölümlere seçici olarak odaklanmasını sağlar. Parametreler, seçimi dikkate alarak diskretleştirilir ve SSM işlemi, zaman-değişken bir şekilde tarama işlemi kullanılarak uygulanır, bu işlem öğeleri sırayla işler ve odağı zaman içinde dinamik olarak ayarlar.

Mamba’nın Performans Özellikleri

Mamba, her bir değerlendirme sonucunda sınıfının en iyisidir

Mamba, her bir değerlendirme sonucunda sınıfının en iyisidir

Mamba, çıkarım hızı ve doğruluğu açısından üstün performans gösterir. Tasarımı, daha uzun bağlamların daha iyi kullanımını sağlar, bu da DNA ve ses modellemede, uzun menzilli bağımlılıklar gerektiren karmaşık görevlerde önceki modelleri aşar. Çeşitli görevlerde örneksiz (zero-shot) değerlendirmelerde de gösterdiği esneklik, bu tür modeller için verimlilik ve ölçeklenebilirlik açısından yeni bir standart belirler.

Mamba ile Başlamak

Mamba’yı kullanmak isteyenler için teknik gereksinimler, Linux işletim sistemi, NVIDIA GPU, PyTorch 1.12+ ve CUDA 11.6+’dir. Kurulum, Mamba deposundan gerekli paketleri yüklemek için basit pip komutlarını içerir. PyTorch sürümleri ile uyumluluk sorunları ortaya çıkarsa, pip ile –no-build-isolation bayrağı kullanmak yardımcı olabilir. Bu modeller, Pile ve SlimPajama veri kümesi gibi geniş veri setlerinde eğitilir ve çeşitli hesaplama ve performans standartlarına uyum sağlar.

Mamba, seçici SSM katmanından Mamba bloğuna ve tam dil modeli yapılarına kadar çeşitli arayüzler sunar. Mamba bloğu, mimarinin temel modülüdür ve causal Conv1d katmanını kullanır ve kolayca sinir ağları tasarımlarına entegre edilebilir. Sağlanan Python örneği, bir Mamba modeli oluşturma ve veri işleme göstererek sistemin basitliğini ve esnekliğini vurgular.

Önceden eğitilmiş Mamba modelleri, Hugging Face adresinde mevcuttur ve 130M ile 2.8B parametre arasında değişen boyutlarda sunulur. Bu modeller, Pile ve SlimPajama veri kümesi üzerinde eğitilir ve GPT-3’nin boyut standartlarına uyar. Kullanıcılar, bu modellerden yüksek verimlilik ve doğruluk bekleyebilir, bu da Mamba’yı çeşitli uygulamalar için güçlü bir seçim haline getirir.

Mamba’nın Etkisi

Mamba, dizileri modelleme için Transformer mimarilerine güçlü bir alternatif sunar. Tasarımı, modern donanımların gereksinimlerine uygun olarak optimize edilmiştir, bu da hem bellek kullanımını hem de paralel işlem yeteneğini iyileştirir. Mamba’nın kod tabanı ve önceden eğitilmiş modellerinin açık kaynak olarak kullanılabilir olması, AI ve derin öğrenme alanındaki araştırmacılar ve geliştiriciler için güçlü ve erişilebilir bir araç haline getirir.

Son beş yıldır Makine Öğrenimi ve Derin Öğrenme dünyasına kendimi adamış bulunuyorum. Tutkum ve uzmanlığım, özellikle AI/ML'ye odaklanarak 50'den fazla çeşitli yazılım mühendisliği projesine katkıda bulunmama yol açtı. Süregelen merakım da beni Doğal Dil İşleme alanına yöneltti, bu alana daha da derinlemesine girmeye hevesliyim.