2 puan yazan GN⁺ 2023-12-24 | 1 yorum | WhatsApp'ta paylaş
  • Ferret, serbest biçimli referans hedeflerini girdi olarak alan ve yanıtlarında konumu temellendiren uçtan uca bir MLLM olup, ayrıntı düzeyinden ve konumdan bağımsız referans verme ile temellendirmeyi hedefler
  • Temel bileşenleri Hybrid Region Representation ve Spatial-aware Visual Sampler’dır; bunlar MLLM’de ayrıntılı open-vocabulary referans verme ve temellendirmeyi destekler
  • Proje yaklaşık 1,1 milyon örnekten oluşan GRIT Dataset, Ferret-Bench, 7B·13B checkpoint delta’ları ile eğitim, değerlendirme ve demo çalıştırma prosedürlerini birlikte sunar
  • Eğitim 8×A100 80GB ortamı temel alınarak yapılır; GPU sayısı daha az olduğunda global batch size’ı korumak için per_device_train_batch_size, gradient_accumulation_steps, num_gpus kombinasyonu ayarlanmalıdır
  • Veri ve kod yalnızca araştırma amaçlıdır; dataset CC BY NC 4.0 kapsamında yalnızca ticari olmayan kullanıma izin verir ve LLaMA, Vicuna, GPT-4 lisans koşullarına da uyulmalıdır

Ferret’in hedefi ve yapısı

  • Ferret, “Refer and Ground Anything Anywhere at Any Granularity” yaklaşımını öne çıkaran uçtan uca bir MLLM’dir
  • Rastgele biçimdeki referans girdilerini kabul etmeyi ve yanıtlarda hedefi temellendirmeyi amaçlar
  • Başlıca katkılar üç başlıkta özetlenir
    • Ferret Model: Hybrid Region Representation ve Spatial-aware Visual Sampler kullanarak ayrıntılı open-vocabulary referans verme ve temellendirmeyi mümkün kılar
    • GRIT Dataset: Yaklaşık 1,1 milyon örneklik, büyük ölçekli, hiyerarşik ve sağlam ground-and-refer instruction tuning dataset’i
    • Ferret-Bench: Referans verme ve temellendirme, anlam, bilgi ve akıl yürütmeyi birlikte gerektiren multimodal değerlendirme benchmark’ı

Sürümler ve model durumu

  • 8 Ekim 2024’te Ferret-UI yayımlandı
    • UI odaklı bir MLLM olarak, referring, grounding ve reasoning görevlerini etkili biçimde çalıştırabildiği belirtiliyor
  • 10 Temmuz 2024’te Ferret-v2 COLM 2024’e kabul edildi
  • 15 Şubat 2024’te Ferret ICLR 2024 Spotlight olarak kabul edildi
  • 14 Aralık 2023’te Ferret checkpoint’leri 7B·13B yayımlandı
  • 30 Ekim 2023’te FERRET model kodu ve Ferret-Bench yayımlandı

Kurulum ve eğitim koşulları

  • Kurulum, depoyu klonladıktan sonra python=3.10 Conda ortamında paketleri kurma akışını izler
    • pip install -e .
    • pycocotools
    • protobuf==3.20.0
  • Eğitim için ek paketler olarak ninja ve flash-attn --no-build-isolation kurulumu gerekir
  • FERRET eğitimi için referans ortam her biri 80GB belleğe sahip 8 A100 GPU’dur
  • Daha az GPU ile eğitim yaparken global batch size korunmalıdır
    • Global batch size = per_device_train_batch_size × gradient_accumulation_steps × num_gpus
  • İnce ayar hiperparametreleri LLaVA(Vicuna) ile benzer bir yapı kullanır
    • FERRET-7B: Global Batch Size 128, Learning rate 2e-5, Epochs 3, Max length 2048, Weight decay 0
    • FERRET-13B: Global Batch Size 128, Learning rate 2e-5, Epochs 3, Max length 2048, Weight decay 0

Temel model ve checkpoint kullanımı

  • Eğitimden önce Vicuna v1.3 tabanlı model ağırlıkları hazırlanmalıdır
  • LLaVA’nın 1. aşama ön eğitim projector ağırlıkları da gereklidir
    • 7B projector
    • 13B projector
  • Açık checkpoint’ler, ön eğitim modelinin tamamı olarak değil Vicuna ile delta biçiminde sunulur
  • Kullanıcı önce Vicuna ağırlıklarını almalı, ardından Ferret’in 7B veya 13B delta’sını indirmeli ve ferret.model.apply_delta betiğiyle Vicuna ağırlıklarına offset uygulamalıdır
  • Apple’ın sağladığı weight differentials için CC-BY-NC lisansı geçerlidir; LLaMA veya diğer üçüncü taraf yazılımlar kendi koşullarına tabidir

Değerlendirme ve demo çalıştırma

  • Değerlendirme ayrıntılı prosedürleri ayrı EVAL.md belgesinde ele alır
  • Yerel demo Gradio web UI kullanır ve FERRET eğitimi ile checkpoint’lerin yerel kullanımını gerektirir
  • Demo çalıştırma akışı üç adımdan oluşur
    • controller çalıştırma: ferret.serve.controller
    • Gradio web sunucusunu çalıştırma: ferret.serve.gradio_web_server
    • GPU’da çıkarım yapan model worker’ı çalıştırma: ferret.serve.model_worker
  • model worker, --model-path ile belirtilen tek bir modelden sorumludur
  • Model yüklemesi bittikten sonra “Uvicorn running on ...” görünürse, çalıştırılan modeli listede doğrulamak için Gradio web UI yenilenebilir

Kullanım kısıtları ve kaynaklar

  • Veri ve kod yalnızca araştırma amaçlı tasarlanmış ve lisanslanmıştır
  • Kullanım, LLaMA, Vicuna ve GPT-4 lisans sözleşmelerine uyulmasıyla sınırlıdır
  • Dataset CC BY NC 4.0 kapsamındadır ve yalnızca ticari olmayan kullanıma izin verir
  • Dataset ile eğitilen modeller araştırma amacı dışında kullanılmamalıdır
  • Proje LLaVA kod tabanına ve Vicuna LLM kod tabanına dayanır

1 yorum

 
GN⁺ 2023-12-24
Hacker News yorumları
  • Şimdiden multimodale mi geçiyoruz? Google bu alandaki erişilebilirlikte görüntü açıklamalarını “şirket logosu” seviyesinden daha iyi hâle getiremezse Apple’a dönmeyi düşünüyorum.
    Apple’ın da hataları azaltması ve VoiceOver’ın en ufak dokunuşta dağılacakmış gibi hissettirmesini gidermesi gerekiyor ama LLM olmadan bile görüntü açıklamaları zaten temiz ve net.
    Örneğin “siyah arka plan üzerinde yeşil logo”ya daha yakın; Google ise az önce söylediğim gibi “şirket logosu”na daha yakın. Yapay zekanın iyi, yüksek kaliteli verilerle eğitilmek yerine kitle kaynaklı hâle getirildiğinde ortaya çıkan sonuç gibi.

    • Google’ın Lookout uygulaması, görme engelliler ve az görenler için bir erişilebilirlik uygulaması; yaklaşık 6 ay önce zaten multimodal LLM ile güncellendi.
      Flamingo model ailesini kullanıyor: https://deepmind.google/discover/blog/tackling-multiple-task...
    • Makale şimdi yayımlandıysa Apple’ın en az 1-2 yıl önceden beri bunun üzerinde çalışıyor olması çok muhtemel.
      Gelecek yılki macOS / iOS sürümlerine LLM özellikleri geleceği de söyleniyor.
  • Bununla ilgili bakılmaya değer bir şey: “LLM in a flash: Efficient Large Language Model Inference with Limited Memory”
    Apple, bu tür LLM’leri kullanarak cihaz üzerinde çıkarımda büyük bir ilerlemeye hazırlanıyor gibi görünüyor.
    https://arxiv.org/abs/2312.11514

  • Makale eski (Ekim 2023), ama ağırlıklar yeni yayımlandı (Aralık 2023).
    https://lifearchitect.ai/models-table/

  • Apple LLM konusunda sessiz görünüyordu, ama gösterişli reklamlar olmadan donanım+yazılım yapay zeka yığınını istikrarlı biçimde geliştirmeyi sürdürdü.
    Yeni bir iOS sürümünün bir anda OpenAI/Bard sohbet penceresini gülünç derecede eski gösterecek hâle getirmesi durumunda Microsoft/OpenAI ve Google’ı geride bırakabileceğini düşünüyorum.
    Yapay zeka kullanımının önemli bir kısmı Apple donanımına kayarsa bu Nvidia için de tehdit olur; Arm ve TSMC’nin ise bundan fayda görmesi muhtemel.

    • Apple’ın ChatGPT tarzı büyük bir chatbot yapacağını sanmıyorum.
      Aynı teknolojiyi Siri veya klavye otomatik tamamlama gibi ürünlerde kademeli iyileştirmeler için “sadece” kullanması daha olası; bence doğru yön de bu.
    • Apple, başka şirketlerin yapay zeka çalıştırması için hesaplama zamanı satmıyor; yapay zeka eğitimi için büyük ölçekli özel donanım da satmıyor.
      Girişim sermayesi almaya çalışmıyor ve ana işi de “aramanın evrimi” olarak yapay zekanın tehdidi altında değil.
      Ürün tarafında şimdiye kadar duyduğumuz tek mesaj, M3 Max’in makine öğrenmesi modellerini çalıştırmaya uygun olduğu türünden.
      Gerçek tüketici ürünü hazır olana kadar finans toplantılarında usulen bahsedip analistleri idare etmesi yeterli.
    • Apple’ın yapay zeka konusundaki geçmişine ve CoreML’i kaderine terk etmiş olmasına bakınca bu senaryo pek olası görünmüyor.
      Geliştirici güvenini yeniden kazanmak da uzun zaman alır; bunun olacağını sanmıyorum.
    • Örnek verebilir misin? Araba kullanırken kişisel asistanı çok kullandığım için Android’e geçtim; Siri gerçekten berbattı.
    • Bundan nasıl bu kadar emin olabiliyorsun? Bu bağlantı bile başkalarının çalışmalarının üzerine kurulmuş; Apple’ın düşünüldüğü kadar çok katkı yapıp yapmadığından pek emin değilim.
  • “MLLM”in ne anlama geldiğini tanımlayabilir misiniz?

    • Multimodal Large Language Model, yani multimodal büyük dil modeli.
    • Dil modelinin işleri daha küçük dil modellerine devredip ardından GPU zamanı maliyetini aşırı yüksek faturalandırması şeklinde çalışıyor.
    • Peki FERRET bir kısaltma mı?
  • Apple’ın en erken gelecek yıl, iyi bir cihaz üzerinde çalışan özel LLM asistanı olan iPhone çıkarmasını umuyorum.
    Donanım buna gayet uygun görünüyor.
    Öyle olursa normalde yaklaşık 4 yılda bir yaptığım değiştirme döngüsünü bozup yeni telefon alabilirim. Benim için Siri neredeyse kullanılamaz durumda.

    • Söylentilere göre Apple, iOS 18’i yapay zeka odaklı bir sürüm olarak hazırlıyor.
      Çevrimiçi/çevrimdışı duruma göre farklı özellikler mi sunacağı, yoksa tamamen çevrimdışı mı olacağı ilginç.
      Arka plan için bir yazı: https://archive.is/en3VL
    • GPT-4 voice gerçekten harika.
      Bir ses aracından beklenen şeye çok yakın. Siri’deki gibi belirli komutları yüksek sesle söylemek yerine, sıradan bir insanla konuşur gibi konuşabiliyorsunuz.
    • Bu arada otomatik düzeltmenin arkasında zaten küçük bir LLM var.
      https://jackcook.com/2023/09/08/predictive-text.html
    • iOS 17’de tahminli metin girişine çok küçük bir LLM koydular.
      En yeni iPhone’u kullanıyorum ama gerçekten çalıştığını gördüğüm durumlar çok nadir.
      Şimdilik ya yazma hızıma yetişemeyecek kadar yavaş ya da model çok küçük olduğu için yeterince faydalı öneri sunamıyor gibi.
    • Henüz kimse LLM modellerini ehlileştiremedi; Apple da istisna değil.
      Bugün bile ChatGPT’ye çok korkunç şeyler söyletebilirsiniz; Apple cihaz üzerinde bir şey çıkarırsa onu da kötü bir robota dönüştürmek mümkün olacaktır.
      Kişisel olarak LLM’lerin hâlâ halka yönelik üretim kullanımı için güvenli olmadığını düşünüyorum.
  • “FERRET, 80 GB belleğe sahip 8 adet A100 GPU ile eğitildi” denmiş; demek ki Apple da CUDA tuzağından kurtulamamış gibi
    Nvidia ile ahlaki bir karşıtlık içindeyken kısmen ona bağımlı hale gelmeleri ilginç

    • Apple’ın şu anda AI tarafında sadece suyun derinliğini yokladığını hissediyorum
      Ancak yeterince derine dalmaya karar verirse kendi hesaplama altyapısına para harcayabilir
      Nvidia şu anda GPU hesaplamasının kralı ve benzer donanım geliştirmek ne küçük ne de ucuz bir iş; ama Apple yatırım yapmaya karar verirse bunu başarabilecek çok iyi bir konumda
      Şirketler arasında gerilim olsa bile, bir süreç daha ucuz ya da kolay hale geliyorsa şirketlerin bunu seve seve göze alacağını düşünüyorum
    • Apple Silicon iyi ama taşınabilir cihazlar için tasarlanmış çipler
      Studio ve Mac Pro bile daha çok dizüstü çiplerinin birbirine eklenmiş hali gibi; ağır işler için ağır ekipman kullanmak gerekir
      Nvidia ile ilişkilerinin kötüleştiğini biliyorum ama AMD/ROCm ekosistemini güçlendirmelerini isterdim
      Elbette Apple’ın da bu alanda kendine ait bir şeyler geliştiriyor olması çok muhtemel. Nakit benzeri varlıkları onlarca milyar dolar seviyesinde, dolayısıyla ciddi bir Ar-Ge’ye harcıyor olabilirler
    • “Bağımlılık” çok güçlü bir ifade
      Sonuçta bu tür derin öğrenme modelleri her donanımda çalışır ve biraz performans kaybını göze alırsanız bir donanım türünü başka biriyle kolayca değiştirebilirsiniz
      Temelde genel amaçlı bir emtiaya yakınlar
  • Ticari olarak kullanılabilen ve iPhone’da yerel olarak çalıştırılabilen en iyi açık kaynak modelin hangisi olduğunu bilen var mı?

    • Bunu yapabilen bir Flutter eklentisi yaptım, ayrıca bunun için örnek bir uygulama da hazırladım
      Açık kaynak ve başlıca platformlarda native olarak çalışıyor. iPad Mini, Pixel 7, iPhone 12, Surface Pro (Windows 10 & Ubuntu Jellyfish), Mac (Intel & M mimarisi) üzerinde çalıştığını gösteren videolar da paylaştım
      Tamamlanmış bir uygulama kesinlikle değil. Flutter’da cihaz üzerinde AI kullanmak istediğim için llama.cpp portuyla başladım; ileride whisper.cpp, bark.cpp gibi güncel uygulamaları da port etmeyi düşünüyorum
      Depo: https://github.com/BrutalCoding/aub.ai
      Apple cihazlarında şunu kullanabilirsiniz: https://testflight.apple.com/join/XuTpIgyY
      Uygulama herhangi bir GGUF dosyasıyla uyumlu, ancak sohbet UI’ının/konuşma balonlarının bozulmaması için ChatML prompt formatında olması gerekiyor. Henüz özelleştirilebilir hale getirmedim; sonuçta bu sadece eklentinin örnek uygulaması. Yine de hedeflediğim şekle getirmek için aktif olarak çalışıyorum
    • Mistral 7B oldukça iyi; instruct v0.2, MLC Chat üzerinden iPhone’umda çalışıyor
      Yine de kullanılabilirlik açısından ChatGPT4 uygulaması çok daha iyi. Model de daha iyi; metin/görsel/ses dahil multimodal özellikleri ve UI’ı da daha iyi
  • “Veriler ve kod yalnızca araştırma amaçlı kullanım için tasarlanmış ve lisanslanmıştır. Ayrıca LLaMA, Vicuna ve GPT-4’ün lisans sözleşmelerine uygun kullanımla sınırlıdır. Veri kümesi CC BY NC 4.0 lisanslıdır ve yalnızca ticari olmayan kullanıma izin verir; bu veri kümesiyle eğitilen modeller araştırma amaçları dışında kullanılmamalıdır”
    Bir dakika, GPT-4 burada nasıl devreye girdi?

    • Muhtemelen bir aşamada GPT-4 tarafından üretilen eğitim verileri kullanıldığı içindir. Vicuna tarafı da olabilir
    • Değerlendirme yığınında yanıtları GPT-4 ile puanladıkları için de eklenmiş olabilir
    • İlginç. Apple, eğitimde GPT-4 kullandığını açıkça söylemiş gibi görünüyor