Altyazı İçin Whisper Model Karşılaştırması: Tiny, Small, Turbo ve Large-v3
Altyazı için Whisper model karşılaştırması: tiny, small, turbo ve large-v3'ün parametresi, indirme boyutu ve hızı — büyük model her zaman daha iyi değildir.
En büyük Whisper modeli, altyazı için otomatik olarak en iyi model değildir. large-v3-turbo, large-v3'ün kabaca yarısı kadar parametreye sahiptir ve yaklaşık sekiz kat daha hızlı çalışır; sıradan görüntülerde bitmiş altyazı dosyasındaki fark, hızın kararı vermesine yetecek kadar küçüktür. Bunun yanında, daha küçük bir modelin daha büyük bir modelden daha iyi bir transkript ürettiği gerçek durumlar da vardır.
İşte rakamlar, bunların özellikle altyazı işi için ne anlama geldiği ve bir modeli gerçekte olduğundan daha kötü gösteren başarısızlık biçimleri.
Modeller yan yana
Parametre sayıları ve bağıl hız OpenAI'nin Whisper model kartından geliyor; boyutlar ise yuvarlanmış tahminler değil, Sablate'ın indirdiği CTranslate2 derlemelerinin gerçek toplamlarıdır.
| Model | Parametre | İndirme | large-v3'e göre hız | Sablate kademesi |
|---|---|---|---|---|
tiny | 39 M | ~78 MB | ~10× | Fast |
small | 244 M | ~486 MB | ~4× | Balanced |
medium | 769 M | ~1,53 GB | ~2× | Yerini turbo'ya bıraktı |
large-v3-turbo | 809 M | ~1,62 GB | ~8× | Accurate |
large-v3 | 1550 M | ~3,09 GB | 1× | Best |
Örüntüyü bozan satır turbo'nunki. medium'dan daha fazla parametresi var, ama yine de yaklaşık dört kat daha hızlı çalışıyor — bu da sadece parametre sayısına bakarak tahmin edilebilecek bir şey değil.
Turbo, öneriyi neden değiştiriyor
Turbo, sıfırdan eğitilmiş daha küçük bir model değildir. Kod çözücüsü 32 katmandan 4'e budanmış, sonra aynı çok dilli transkripsiyon verisi üzerinde iki epoch daha ince ayarlanmış bir large-v3'tür. Whisper zamanının çoğunu kod çözücüde geçirir, bu yüzden onu bu kadar sert kesmek çok büyük bir hız kazancı sağlar; asıl dinleyen kısım olan kodlayıcı ise dokunulmadan kalır.
Bunun yanında iki uyarı geliyor; ikisi de söylenceden değil, OpenAI'nin kendi belgelerinden geliyor:
- Çeviri verisi olmadan ince ayarlandı. Turbo bir transkripsiyon modelidir. Whisper'ın konuşmadan İngilizceye çeviri görevini istiyorsan turbo yanlış araçtır; kaynak dilde transkript çıkar, metni sonra çevir — zaten daha iyi olan iş akışı da bu.
- Bazı dillerde kalite kaybı daha fazladır. Turbo, çoğu dilde
large-v2'yi takip eder, ama Tayca ve Kantoncada belirgin şekilde daha fazla kalite kaybeder. Bu dillerle çalışıyorsan, karar vermeden önce test et.
Bunların dışındaki her şey için turbo, altyazıda mantıklı varsayılan seçimdir: large'a yakın kalite, iki saatlik bir kaydı bile pratik bir işe dönüştüren bir hızda.
En büyük model en iyi altyazıyı mı verir?
Her zaman değil; bu istisnayı bilmeye değer, çünkü onunla karşılaştığında bir hata gibi görünür.
Bunu 101 saniyelik bir Türkçe klip üzerinde, float16 ile bir RTX 3060 Ti'de, uygulamanın kendi transkripsiyon yolundan ölçtük. Her modelin konuşmanın ne kadarını gerçekten yakaladığına göre sıralandığında medium birinci çıktı. large-v3, medium'un doğru şekilde yazıya döktüğü konuşmaları atladı — klibin açılış sözleri ve birkaç kısa ünlem ortaya hiç çıkmadı. Alışılmış kollardan hiçbiri onları geri getirmedi: ses etkinliği filtresini kapatmak, konuşma-yok eşiğini yükseltmek, log-olabilirlik eşiğini kaldırmak, sıcaklığı sabitlemek. Log-olabilirlik eşiğini kaldırmak durumu çok daha kötüleştirdi ve transkripti yaklaşık 1.110 karakterden 429'a düşürdü.
Toplulukta sık tekrarlanan, large-v3 yerine large-v2 kullanma önerisini de test ettik. Bu klipte setin en kötüsü çıktı: 28,7 saniyeden 58,7 saniyeye kadar 30 saniyelik sürekli bir konuşma bölümünü tamamen atladı ve medium'un 178 kelime ürettiği yerde sadece 106 kelime üretti.
Tek bir klip bir benchmark değildir; bu klip de kısa, Türkçe ve sohbet tarzındaydı. Sıralamayı değil yöntemi al: aynı dosyayı iki modelle transkript et, yanlış yazılana değil eksik olana bak ve her şeyi duyan modeli seç. Altyazıda eksikler, yazım hatalarından çok daha maliyetlidir; çünkü izleyici yanlış bir kelimeyi okuyup geçebilir, ama orada olmayan bir satırı okuyamaz.
İyi bir model ne zaman kötü görünür
Üç başarısızlık biçimi, modelle hiçbir ilgisi olmayan "büyük model daha kötü" şikayetlerini doğurur.
1. Kelime zaman damgalarındaki eşitlikler satır bölmeyi bozar. Whisper, kelime başına zaman damgası üretir ve ardışık kelimeler sık sık sınırı tam olarak paylaşır — incelediğimiz klipte 177 kelime boşluğunun 172'si tam olarak 0,000 saniyeydi. Uzun bir altyazı satırını en büyük boşluktan bölen bir bölücü bu yüzden her adayı eşit bulur, ilkini alır ve yeniden çalışır — bu da her seferinde bir kelime koparır. Belirti, tek kelimelik altyazılara parçalanmış bir transkripttir ve bu, en çok kelime üreten modelle daha da kötüleşir. Eşitlik bozma kuralını zamansal orta noktayı tercih edecek şekilde düzeltmek bir klibi 90 altyazı satırından (78'i tek kelimelik) tek bir tek-kelimelik satır içeren 28 altyazı satırına indirdi. Model hiç değişmedi.
2. Seçtiğin model, çalışan model değildir. Model depoları, indirme kayıt defterleri ile çıkarım kütüphaneleri arasında tutarsız şekilde adlandırılır. Diskte bir depo adı altında duran indirilmiş bir model, yükleyici başka bir adı ararken, ya sessiz bir yedek modele düşer ya da doğru modelin 1,6 GB'ı zaten diskte hazır dururken bir ağ sorunu gibi okunan bir hata verir.
3. Başarısız bir yeniden transkripsiyon, ekranda eski transkripti bırakır. Bir yeniden çalıştırma başarısız olur ve uygulama işi geri alırken istenen model adını korursa, artık önceki modelin çıktısına yeni modelin çıktısı diye bakıyorsundur. Bu durumdan yapılan her karşılaştırma yanlıştır. Benchmark yapıyorsan, sonuca varmadan önce metnin gerçekten değiştiğini doğrula — iki farklı modelden aynı çıktı gelmesi bir bulgu değil, bir uyarı işaretidir.
VRAM, disk ve makinen ne çalıştırabilir
Yukarıdaki tablodaki indirme boyutları, transkripsiyon sırasındaki bellek yükü için de iyi bir gösterge sayılır. Pratik öneriler:
- 4 GB VRAM veya daha az, ya da ayrık GPU yok — doğru tercih
small.tinytaslak çıkarmak ve zamanlama kontrolü için, teslim için değil. - 6-8 GB VRAM —
large-v3-turbogönül rahatlığıyla çalışır. Çoğu kişinin bulunması gereken yapılandırma bu. - 10 GB VRAM veya daha fazla — ses buna gerçekten ihtiyaç duyuyorsa
large-v3: ağır aksanlar, üst üste binen konuşmacılar, kötü mikrofonlar. - Sadece CPU — bugün ihtiyacın olan her şey için
small, çalışır halde bırakabiliyorsanturbo.
Burada hassasiyet, model boyutu kadar önemlidir. Whisper'ın üzerinde çalıştığı CTranslate2 derlemeleri float16 ve int8'i destekler; hassasiyeti düşürmek belleği önemli ölçüde azaltır ve bunun kalite maliyeti int8'de küçük, GPU'da float16 için ise genellikle fark edilmezdir.
GPU'da, aynı makinenin CPU'suna kıyasla kabaca beş ile on kat hız artışı bekle. Sablate'in Windows sürümünde NVIDIA CUDA çalışma zamanı, yükleyiciyle birlikte gelmez; ilk GPU çalıştırmasında indirilir — bu da onu hiç kullanmayacak kişiler için indirmeyi küçük tutar.
Gerçekte hangi modeli seçmelisin?
| Durum | Model | Neden |
|---|---|---|
| Zamanlamayı kontrol etmek veya bir altyazı stili denemek | tiny | Saniyeler içinde biter; doğruluk burada önemsizdir |
| Temiz konuşma, tek konuşmacı, iyi mikrofon | small | Hızlıdır, gerisini editör düzeltir |
| Teslim edilen altyazılar için varsayılan | large-v3-turbo | Kabaca 8× hızda, large'a yakın doğruluk |
| Aksanlar, gürültü, üst üste binen konuşmacılar | large-v3 | Ekstra parametreler zamanını burada karşılar |
| Tayca veya Kantonca | large-v3 | Turbo'nun belgelenmiş zayıf noktası |
| Diğer dillere çeviri için kaynak | Karşılayabileceğin en doğru model | Her hata her dile yayılır |
Hesabı değiştiren satır, o son satır. Bir transkript sekiz çevirinin girdisi olduğunda, bir hata tek bir hata değildir — sekiz hatadır. Çok dilli iş akışı, kaynak transkriptin neden yavaş modeli ve dikkatli bir düzeltmeyi hak ettiğini anlatıyor.
Sablate'te Fast ve Balanced (tiny ve small) ücretsiz planda çalışır; Accurate ve Best ise tek seferlik 29 $'lık ödemeyle gelen Pro'nun bir parçasıdır — tam ayrıntı fiyatlandırma sayfasında. Hangi modeli çalıştırırsan çalıştır, çıktı aynı editöre düşer ve aynı formatlara aktarılır — SRT, VTT ve ASS — yani model seçimi neyi üretebildiğinle değil, sonradan ne kadar düzeltme yapacağınla ilgilidir.
Bunu kendi görüntün üzerinde nasıl test edersin
Beş dakikalık doğru yöntem, bu da dahil olmak üzere yayımlanmış her benchmark'tan daha iyidir:
- 60 ile 120 saniye arasında, temsil edici bir klip al — en kötü mikrofonun, alışılmış aksanların, gerçek odan.
- Başka hiçbir şeyi değiştirmeden onu iki aday modelle transkript et.
- Önce eksiklere, sonra yazım hatalarına bak.
- Tek kelimelik altyazı satırlarını say. Bunlardan bir yığın varsa, işaret ettiği şey bölümleme mantığıdır, model değil.
- Ancak o zaman geçen gerçek zamanı karşılaştır ve o zamanın senin için ne değeri olduğuna karar ver.
Kendi malzemende her şeyi duyan model, senin için en iyi modeldir ve bu model her zaman en büyüğü olmak zorunda değildir.