1 puan yazan GN⁺ 2024-10-20 | 1 yorum | WhatsApp'ta paylaş
  • Yapay zeka işlemenin temel hesaplaması olan kayan noktalı çarpma (FPM) işlemini tamsayı toplamasına çevirmek, BitEnergy AI'ye göre güç tüketimini %95'e kadar azaltabilir
  • Linear-Complexity Multiplication (L-Mul), daha basit işlemlerle FPM'e yakın sonuçlar üretirken doğruluk ve hassasiyeti korumayı hedefliyor
  • Güç verimliliğinde iyileşme potansiyeli büyük olsa da, Nvidia Blackwell GPU gibi güncel ana akım donanımlar bu algoritmayı çalıştırmak üzere tasarlanmış değil
  • Yapay zeka donanımına hâlihazırda milyonlarca ila milyarlarca dolar yatırım yapmış şirketler, L-Mul performansı doğrulansa bile yeni sistemleri devreye alma yükünden kaçınmakta zorlanabilir
  • Yapay zeka veri merkezlerinin elektrik talebinin şebekeler ve iklim hedefleri üzerinde baskı yarattığı bir ortamda, L-Mul performansı büyütmeyi ve enerji tasarrufunu birlikte hedefleyen bir yaklaşım olarak görülebilir

FPM'yi tamsayı toplamasına çeviren L-Mul

  • BitEnergy AI, yapay zeka çıkarım teknolojilerinde uzmanlaşmış bir şirket ve yapay zeka işlemede FPM'yi tamsayı toplaması ile değiştiren bir yöntem geliştirdi
  • Bu yeni yaklaşımın adı Linear-Complexity Multiplication (L-Mul)
  • L-Mul'ün, daha basit bir algoritmayla FPM'e yakın sonuçlar üretip FPM'nin yüksek doğruluğunu ve hassasiyetini koruyabildiği iddia ediliyor
  • TechXplore'a göre bu yöntem, yapay zeka sistemlerinin güç tüketimini %95'e kadar azaltabilir

Donanım uyumluluğu benimsenmenin önünde engel

  • L-Mul yeni bir işleme yöntemi olduğu için, piyasadaki yaygın donanımlar bunu doğrudan çalıştıracak şekilde tasarlanmış değil
  • Nvidia'nın yeni nesil Blackwell GPU'su da bu algoritmayı çalıştırmak esas alınarak tasarlanmamış örnekler arasında gösteriliyor
  • BitEnergy AI'nin algoritması FPM ile aynı düzeyde performans sunsa bile, pratik kullanım için bunu çalıştırabilecek sistemler gerekiyor
  • Yapay zeka donanımına zaten milyonlarca ila milyarlarca dolar yatırım yapmış şirketler için yeni sistem gereksinimi büyük bir yük oluşturabilir
  • Yapay zeka çip üreticileri bu algoritmaya uygun ASIC geliştirirse, %95 güç tasarrufu potansiyeli büyük teknoloji şirketlerinin ilgisini çekebilir

Yapay zeka elektrik talebinin yarattığı baskı

  • Yapay zeka geliştirmede elektrik başlıca kısıtlardan biri haline geliyor
  • Geçen yıl satılan veri merkezi GPU'ları bile bir yıl içinde 1 milyondan fazla hanenin kullandığından daha fazla elektrik tüketiyor olarak aktarılıyor
  • Google'da yapay zeka kaynaklı elektrik talebi nedeniyle iklim hedefleri geri plana itildi ve sera gazı emisyonları 2019'a kıyasla %48 arttı
  • Google'ın eski CEO'su, iklim hedeflerinin gevşetilmesini ve daha fazla elektrik üretimine izin verilmesini, gelişmiş yapay zekayla küresel ısınma sorununu çözmeye yönelik bir yaklaşım olarak önermişti

Güç verimliliğindeki iyileşmenin değiştirebilecekleri

  • Yapay zeka işleme daha enerji verimli hale gelirse, gelişmiş yapay zeka teknolojileri korunurken çevresel yük de azaltılabilir
  • Enerji kullanımının %95 azalması, büyük veri merkezlerinin ulusal elektrik şebekeleri üzerindeki yükünü de düşürür
  • Şebeke üzerindeki baskı azalırsa, gelecekteki yapay zeka altyapısını hızla büyütmek için daha fazla enerji santrali kurma ihtiyacı da azalabilir

Performans artışı ile verimlilik arasındaki denge

  • Yeni yapay zeka çipleri, her nesilde daha büyük hesaplama performansı sunmalarıyla öne çıkıyor
  • Ancak gerçek ilerleme, işlemciler aynı anda hem daha güçlü hem de daha verimli olduğunda mümkün
  • L-Mul iddia edildiği gibi çalışırsa, yapay zeka performansını büyütmek ve güç verimliliğini artırmak aynı anda mümkün olabilir

1 yorum

 
GN⁺ 2024-10-20
Hacker News yorumları
  • https://arxiv.org/abs/2410.00907
    Makalenin özetine göre büyük sinir ağlarındaki işlemlerin çoğu kayan noktalı tensör çarpımı için kullanılıyor; L-Mul ise kayan noktalı çarpmayı tamsayı toplama ile yaklaşık hesaplayarak 8 bit kayan noktadan daha az hesaplama kaynağıyla daha yüksek hassasiyet sağladığını söylüyor.
    Tensör işleme donanımına uygulanırsa eleman bazlı kayan noktalı tensör çarpımı enerjisinin en fazla %95'ini, iç çarpım enerjisinin ise %80'ini azaltabileceğini iddia ediyor; 3–4 bit mantisli L-Mul'un float8 e4m3/e5m2 ile benzer ya da daha iyi olduğu, Transformer'ın attention kısmına da neredeyse kayıpsız uygulanabildiği değerlendiriliyor.

    • Bu, GPU olmadan da verimli biçimde eğitim yapılabileceği anlamına mı geliyor, merak ediyorum.
      İlgi epey artacak gibi.
    • Bu fikri birkaç kez görmüş gibiyim; sanırım HN'de çıkan yazılardı.
      Burada https://news.ycombinator.com/item?id=41784591 da var, ondan önce de vardı. Bu alanda derin bilgisi olanlar için belki de bariz bir fikir olabilir.
      Sezgisel olarak bakınca, sonuçta Boolean'a yakın kararlar vermek için kayan nokta kullanmak israf gibi görünüyor; ama türevlenebilir algoritmalar yapmak için böyle olması gerektiğini sanıyordum.
    • Eskiden çeşitli DSP mimarilerinde DSP algoritmaları için sabit noktalı çarpma (Q Format) kullanılırdı. https://en.wikipedia.org/wiki/Q_(number_format)
      Çok hızlıydı ve kayan noktalı çarpmaya yakın doğruluk veriyordu. Hem hızlı çarpma hem de paralellik elde etmek için bu tür DSP bloklarını Tensor/GPU'nun bir parçası olarak kullanmak gerekebilir.
    • Bu, gerçekten kuantize etmeden kuantizasyon etkisi yaratmak mı?
  • Oldukça kaba bir yaklaşım. Örneğin 1.75 * 2.5 == 3 oluyor; ama sayılar 0'a yaklaştıkça daha iyiye gidiyor gibi.
    llamafile'ın tinyBLAS'ında AVX512 için uygulayıp Llama-3.2-3B-Instruct.F16.gguf üzerinde denedim; çıktı bozuldu. Düzgün çalışması için modelin baştan bu çarpma yaklaşımını kullanacak şekilde eğitilip tasarlanması ya da yalnızca belirli katmanlar veya işlemler için ayarlanması gerekecek gibi.
    Yine de hız fena değildi; Threadripper'da prefill 850 token/sn'den 200 token/sn'ye düştü ama tahmin hızı 34 token/sn olarak aynı kaldı. Birisi bu algoritmayı kullanan bir LLM yapısını ve ağırlıklarını Hugging Face'te yayımlarsa, özel donanım olmadan da epey hızlı çalıştırılabilir gibi.

    • 1.75 * 2.5 için kernel hatalı görünüyor.
      Makaleye göre 1.75 == (1+0.75)*2^0, 2.5 == (1+0.25)*2^1 olduğundan sonuç (1+0.75+0.25+2^-4)*2^1 == 4.125 olur. Doğru sonuç 4.375.
  • Sıra dışı iddialar sıra dışı kanıtlar gerektirir.
    Mümkün olabilir, ama bu alanda uzun süredir çok çalışan, çok akıllı pek çok grup var. Bu yüzden aynı performansta enerji maliyetini %95 azaltma iddiası sıra dışı kategorisine giriyor. Elbette sular çekilince göreceğiz.

    • Bu tıklama tuzağı bir başlık; iddianın kendisi sıra dışı değil. arXiv ön baskısı daha önce burada paylaşılmıştı.
      %95 iyileşme özellikle yalnızca çarpma işlemi için geçerli. Çıkarım zaten hesaplamadan çok belleğin payının yüksek olduğu bir süreç; gerçek kazanç çok daha küçük olacaktır.
      Teknik gazetecilik, aslında neredeyse tüm gazetecilik, hayatta kalmak için tıklamalara ve gelire odaklandığından grounded news beklemek zor.
    • Bu iddianın sıra dışı olduğunu düşünmüyorum. Matematiksel olarak imkânsız ya da akla yatkın olmayan bir şey değil; sadece doğrulaması çok zahmetli.
      Çok fazla yeniden eğitim ve fine-tuning gerektirir; elinizde zaten büyük ölçekli paralel donanım yoksa maliyetli olur. Ya da yatırım riski yüksek bir ASIC/FPGA üretmek gerekir.
      Kabaca tahmin edersek llama-2 gibi düşük çözünürlüklü modeller iyi olabilir. Çünkü llama-2 büyük sorun yaşamadan kuantize edilebiliyor. Ama llama-3 gibi yüksek çözünürlüklü modellerde büyük ölçekli yeniden eğitim olmadan kolay olmayacak gibi.
    • Enerji tasarrufu iddiası yaklaşık %70 seviyesine kadar doğrulanabilir. Çıkarım uygulaması burada:
      https://github.com/microsoft/BitNet
    • Araştırmacılar şimdiye kadar daha çok ağ yapıları ya da daha iyi sonuç veren ağlar oluşturma gibi başka taraflarla uğraştı.
      Düşük seviyeli matematik işlemlerinin verimliliğini artıranlar da vardı; bu, o çalışmaların meyvesine daha yakın. Böyle şeyleri ortaya çıkarmak hiç de kolay değil.
    • Üstteki ve alttaki yorumların hepsini hesaba katsak da bu hâlâ sıra dışı bir iddia.
      Mümkün değil ya da yalan demiyorum; ama gerçek makinelerde, gerçek enerji kullanarak eşdeğer performansın mümkün olduğuna dair kanıt gerekiyor.
      “Uygun çip yok” savunması biraz özensiz. %95 tasarruf gerçekten mümkünse akıllı bir çip üreticisi hesabını yapıp çipi üretir. Doğruysa o şirket çok para kazanır, değilse üretmez.
  • Bu alanda, yani yaklaşık hesaplama konusunda hem GPU hem de silikon tarafında araştırma yapmış biri olarak, güç tüketimi iddiası da doğruluk iddiası da tamamen saçmalık.
    Makale “L-Mul, fp8 e4m3 çarpmadan daha doğru” diyor ama Mul ile L-Mul'un hata analizi ve karmaşıklık tahmininde “nearest even yuvarlamayı dikkate almıyoruz” diyor. Referans algoritmada doğruluğu sağlayan kısmı çıkarıp analiz ederseniz istediğiniz sonucu seçebilirsiniz.
    Kayan noktalı çarpma, nearest even ile yuvarlandığında, asıl değerlerin sonsuz hassasiyetle çarpılıp doğru şekilde yuvarlanmış sonucu olur; IEEE 754 de temel işlemlerde bunu gerektirir. Bunu çıkarırsanız çok daha fazla kuantizasyon gürültüsü ve sapma gürültüsü oluşur.
    Enerji maliyetinin önemli bir kısmı DRAM/HBM gibi harici bellek ile bağlantılar arasındaki veri hareketinden, SRAM ve flip-flop tamponlamasından gelir. Kombinasyonel mantık maliyeti genelde büyük sorun değildir; sabit işlevli matris çarpma birimleri çoksa bu maliyet artsa da toplam hızlandırıcı güç tasarrufu muhtemelen en fazla %10–20 civarında olur.
    Ayrıca H100 gibi ortamlarda karşılaşılan yeniden ölçekleme veya ara sonuçların yüksek hassasiyetli birikimiyle ilgili ayrıntılar görünmüyor. Bu bilgiler olmadan değerlendirme sonuçlarına güvenmek de zor.

  • Ön baskının ilk tartışması: https://news.ycombinator.com/item?id=41784591

  • Bu sadece “log(x) + log(y) = log(xy)”den yararlanmak değil mi?
    IEEE754 kayan nokta gösterimi işaret, mantis ve üssü saklar. İlk ikisini yok sayarsak, zaten kuantize ettiğimiz için üs, float’ın log() değerini saklayan bir tamsayıdan ibarettir

    • Tam olarak değil. Yararlanılan şey (1+a)(1+b) = 1 + a + b + ab
      a ve b’nin ikisi de belli ölçüde küçükse ab çok küçük olur ve göz ardı edilebilir. Bu yüzden (1+a)(1+b), 1+a+b’ye dönüştürülüyor. İkisi kesinlikle aynı değil ama makinenin tahmin yaptığı işlerde bu fark pek umursanmıyor gibi görünüyor
    • Doğru. Sıradaki soru şu oluyor: “Güzel, peki toplama işlemini nasıl yapacağız?”
  • Yaklaşık bir hafta önce bunu paylaşmıştım:
    https://news.ycombinator.com/item?id=41816598
    Bu tür yöntemler dijital devrelerde, FPGA’lerde, dijital sinyal işlemede vb. onlarca yıldır yapılıyor. Kayan nokta çok kaynak ve güç tükettiği için, özel kayan nokta işleme donanımı olmadan kayan nokta kullanmaktan, gerçekten gerekli olmadığı sürece onlarca yıldır kaçınıldı

    • Doğru. ML tarafı, optimizasyonun yalnızca lineer cebir sembollerinin sayısını azaltmakla ilgili olmadığını, silikon basitliğine göre ayarlamanın da önemli olduğunu yavaş yavaş öğreniyor
      Sabit noktayı yeniden keşfetmeleri zaten yeterince sinir bozucuydu; “pozları quaternion ile ifade ederseniz her şey daha iyi olur” tarzı tepkiler ise son 30 yıldır oyun motoru geliştiricilerini çıldırtıyor
    • ML araştırma alanında eski kavramlara yeni adlar verip bunları novel diye yeniden markalamak sık görülen bir şey
    • Konuya pek hâkim olmayanlar için biraz daha açıklasanız iyi olur
  • Doğuştan şüpheci olduğumdan mı bilmem; başlık “x yöntemi y’yi z% azaltır” derken, metin belirli bir adımı optimize ederseniz “y’yi en fazla z% azaltabilirsiniz” dediğinde her seferinde kuşkulanıyorum
    Neden iddiayı, birkaç özel durumda bile olsa, kanıtlayan gerçek benchmark’lar yayımlamadıklarını merak ediyorum

    • Birincisi, o başlığı araştırmacılar atmadı; popüler medya haberinden geliyor ve burada paylaşılan asıl yazı da başka bir popüler medya haberini yeniden haberleştirmiş. Makalenin iddia etmediği şeyleri makale yazarlarının benchmark’larla gerekçelendirmesini beklemek tuhaf
      “%95’e kadar” ifadesi de makaleden gelmiyor. Maliyet düşüşleri işlem ve hassasiyet bazında alıntılanmış; en fazla %97,3’e kadar çıkıyor ve modern hesaplama donanımındaki matematiksel işlem enerji maliyetlerine dair önceki çalışmalara dayanıyor. Uçtan uca maliyet düşüşü iddiası yok
      İkincisi, gerçekte iddia edilen enerji maliyeti düşüşü deneysel soru da değil. Modern donanımda farklı işlemler arasındaki enerji maliyeti farkları başka araştırmalarda zaten ortaya konmuş durumda; buradaki deneysel mesele, daha düşük enerjili işlemleri mümkün kılan matematik tekniğinin LLM çıkarımında mevcut uygulamalarla çıktı kalitesi açısından rekabet edip edemediğiydi
    • Öte yandan, şaşırtıcı derecede büyük bir sinir ağının 20W güçle çalışabildiğine dair canlı kanıt var; dolayısıyla güç tüketimini birkaç mertebe azaltabilme beklentisi mantıksız değil
    • https://github.com/microsoft/BitNet
      “bitnet.cpp’nin ilk sürümü CPU çıkarım desteğini hedefliyor. ARM CPU’da 1,37x–5,07x hız artışı sağlıyor; daha büyük modellerde performans kazanımı daha yüksek. Enerji tüketimini de %55,4–%70,0 azaltarak genel verimliliği artırıyor. x86 CPU’da ise 2,37x–6,17x hız artışı ve %71,9–%82,2 enerji tasarrufu gösteriyor. Ayrıca bitnet.cpp, tek bir CPU üzerinde 100B BitNet b1.58 modelini çalıştırıp insan okuma hızına benzer şekilde 5–7 token/sn’ye ulaşabiliyor; bu da LLM’leri yerel cihazlarda çalıştırma olasılığını büyük ölçüde artırıyor. Ayrıntılar yakında sağlanacak”
    • Modern hayat hayal kırıklığı yaratsa da trafik çekmek için tık tuzağı başlık gerekiyor. Yine de makaleyi okuman iyi olmuş. Bilgi başlıkta değil, metnin içinde
  • https://en.wikipedia.org/wiki/Jevons_paradox bu durumda da geçerli olur mu?

    • İlginç
      Enerji maliyeti kesinlikle bir giriş engeli oluşturuyor; maliyet düşünce giriş engeli de düşüyor. Böylece katılımcı sayısı artıyor, talep de yükseliyor
    • Bu illa kötü bir şey olmayabilir. Yapay zeka dolandırıcılarına gerçekten faydalı bir şeyler yapmaları için zaman kazandırabilir
    • Elbette. Jevons paradox her zaman geçerlidir
  • Algoritmanın enerji tüketimini değiştireceğini sanmıyorum
    Hesaplama açısından her zaman maksimum kapasiteye ihtiyaç olur. Yarın yeni bir algoritma performansı 4 kat artırırsa, biz sadece 4 kat daha fazla hesaplama yaparız