🎧 Ses Analiz Modelleri: YAMNet, VGGish, OpenL3, CREPE ve VADNet
Bu yazıda, ses işleme alanında yaygın şekilde kullanılan beş farklı önceden eğitilmiş modelin (YAMNet, VGGish, OpenL3, CREPE, VADNet)…
🎧 Ses Analiz Modelleri: YAMNet, VGGish, OpenL3, CREPE ve VADNet
Bu yazıda, ses işleme alanında yaygın şekilde kullanılan beş farklı önceden eğitilmiş modelin (YAMNet, VGGish, OpenL3, CREPE, VADNet) mimarilerini, farklılıklarını ve kullanım amaçlarını karşılaştırmalı olarak ele alıyorum. Hangi görev için hangi modelin uygun olduğunu merak ediyorsanız, doğru yerdesiniz.
1. YAMNet (“yamnet”)
● Ağ Adı: YAMNet (Yet Another MobileNetwork for Audio)
● Giriş Şekli: 96-x-64-x-1-x-T (T zaman çerçevesi sayısı olmak üzere, her biri 96x64 boyutunda tek kanallı log-mel spektrogramları)
● Ön İşleme Fonksiyonu: yamnetPreprocess
● Temel Mimarisi ve İşlevi: YAMNet, ses olaylarını sınıflandırmak için tasarlanmış bir derin öğrenme modelidir. Temel olarak Google tarafından geliştirilen MobileNetV1 mimarisini kullanır. Bu mimari, özellikle mobil ve kaynak kısıtlı ortamlarda verimli çalışacak şekilde tasarlanmış derinlik-ayrımlı evrişimli katmanlara (depthwise separable convolutions) dayanır. Model, ham ses dalga formunu alır (genellikle 16 kHz mono olarak yeniden örneklenir), bunu 0.96 saniyelik pencerelere (0.48 saniye kaydırmalı) böler ve her pencereden 96x64 boyutunda bir log-mel spektrogramı çıkarır. Bu spektrogramlar daha sonra MobileNetV1 tabanlı ağa beslenir. YAMNet, AudioSet ontolojisinde tanımlanmış 521 farklı ses olayını (örneğin, konuşma, alkış, araba kornası, hayvan sesleri vb.) tanıyabilir. Çıktı olarak, her bir ses olayı için olasılık skorları ve sesten çıkarılan bir öznitelik vektörü (embedding) üretir.
● Farkları:
○ Diğer genel amaçlı öznitelik çıkarıcılardan (VGGish, OpenL3) farklı olarak, YAMNet doğrudan ses olaylarını sınıflandırmaya odaklanır.
○ MobileNet tabanlı olması, onu VGG tabanlı VGGish’e göre daha hafif ve hesaplama açısından daha verimli kılar.
2. VGGish (“vggish”)
● Ağ Adı: VGGish
● Giriş Şekli: 96-x-64-x-1-x-T (T zaman çerçevesi sayısı olmak üzere, her biri 96x64 boyutunda tek kanallı log-mel spektrogramları)
● Ön İşleme Fonksiyonu: vggishPreprocess
● Temel Mimarisi ve İşlevi: VGGish, ses verilerinden yüksek kaliteli öznitelik vektörleri (embeddings) çıkarmak amacıyla geliştirilmiş bir modeldir. Mimarisi, görüntü tanımada oldukça başarılı olan VGG modelinin (özellikle Konfigürasyon A) bir varyasyonudur. VGGish, 96x64 boyutundaki log-mel spektrogramlarını giriş olarak alır. Orijinal VGG modelindeki beş evrişimli/havuzlama katmanı grubu yerine dört grup kullanır. Bu katmanlar, ses özelliklerini hiyerarşik bir şekilde işlemeyi sağlar. Modelin sonunda, 1000 birimlik tam bağlı katman yerine 128 birimlik bir tam bağlı katman bulunur. Bu 128 boyutlu çıktı, sesin kompakt bir temsili olan “embedding” vektörüdür. Bu embedding’ler, daha sonra çeşitli ses anlama görevlerinde (örneğin, sınıflandırma, benzerlik bulma) girdi olarak kullanılabilir. MathWorks dokümantasyonuna göre VGGish, öğrenilebilir ağırlıklara sahip 6 evrişimli ve 3 tam bağlı katman olmak üzere toplamda 24 katmana sahip olabilir.
● Farkları:
○ YAMNet gibi doğrudan sınıflandırma yapmak yerine, genel amaçlı ses öznitelikleri (embeddings) üretmeye odaklanır.
○ Temel aldığı VGG mimarisi, MobileNet tabanlı YAMNet’e göre daha ağırdır ancak genellikle güçlü öznitelikler çıkarır.
○ OpenL3 de embedding üretir ancak VGGish, VGG mimarisine daha sadık bir yapı kullanır.
3. OpenL3 (“openl3”)
● Ağ Adı: OpenL3 (Open-source Look, Listen, and Learn)
● Giriş Şekli: N-x-M-x-1-x-T (N ve M, SpectrumType’a bağlı olarak değişir; T zaman çerçevesi sayısı olmak üzere, tek kanallı spektrogramlar)
● Ön İşleme Fonksiyonu: openl3Preprocess
● Temel Mimarisi ve İşlevi: OpenL3, hem ses hem de isteğe bağlı olarak video verilerinden zengin ve esnek öznitelik vektörleri (embeddings) üretmek için tasarlanmış bir modeldir. Özellikle ses girdisi için, ham ses dalga formunu veya önceden hesaplanmış spektrogramları (örneğin, mel-spektrogram veya lineer spektrogram) işleyebilir. Model, giriş sesini bir dizi Evrişimli Sinir Ağı (CNN) katmanından geçirir. Bu katmanlar, kısa zaman dilimleri ve frekans bantları üzerindeki yerel özellikleri çıkarır. Daha derin katmanlar, bu özellikleri birleştirerek sesin genel yapısını özetleyen kompakt bir vektör oluşturur. MathWorks’teki bir örneğe göre, OpenL3 mimarisi birkaç evrişimli (Conv2D), toplu normalleştirme (Batch Normalization), ReLU aktivasyon ve maksimum havuzlama (MaxPooling) katman bloğundan oluşabilir ve sonunda bir evrişimli gömme katmanı ve düzleştirme katmanı içerebilir (örneğin, 8 evrişimli katman içeren 30 katmanlı bir DAGNetwork). OpenL3, genellikle kendi kendine denetimli öğrenme (self-supervised learning) yöntemleriyle eğitilir; bu sayede kapsamlı manuel etiketlemeye ihtiyaç duymadan benzer ses sinyallerini embedding uzayında birbirine yakın gruplamayı öğrenir. Elde edilen embedding’ler, müzik önerisi, ses sahnesi analizi gibi çeşitli analiz görevlerinde kullanılabilir.
● Farkları:
○ VGGish gibi genel amaçlı embedding’ler üretir ancak farklı CNN mimarileri ve eğitim stratejileri kullanabilir.
○ Giriş spektrogram tipinde (SpectrumType ile belirtilen mel, lineer vb.) esneklik sunar, bu da girdi boyutu N ve M’nin değişmesine neden olur.
○ Kendi kendine denetimli öğrenmeye vurgu yapar.
4. CREPE (“crepe”)
● Ağ Adı: CREPE (Convolutional Representation for Pitch Estimation)
● Giriş Şekli: 1024-x-1-x-1-x-T (T zaman çerçevesi sayısı olmak üzere, her biri 1024 örnek içeren tek kanallı ham ses dalga formu)
● Ön İşleme ve Son İşleme Fonksiyonları: crepePreprocess, crepePostprocess
● Temel Mimarisi ve İşlevi: CREPE, özellikle müzikal seslerden temel frekans (pitch) tahmini yapmak için geliştirilmiş bir derin öğrenme modelidir. Diğer modellerin aksine spektrogram yerine doğrudan ham ses dalga formunu (time-domain audio) giriş olarak alır. Genellikle 16 kHz’de örneklenmiş 1024 örnek uzunluğundaki ses parçacıklarıyla çalışır. Mimarisi, altı evrişimli katmandan (CNN) oluşur. Bu evrişimli katmanlar, ham ses verisinden ilgili özellikleri çıkararak 2048 boyutlu bir gizli (latent) temsil oluşturur. Bu gizli temsil daha sonra, 360 düğümlü bir tam bağlı (dense) çıktı katmanına bağlanır. Bu çıktı katmanındaki her bir düğüm, belirli bir perde değerine (cent cinsinden logaritmik olarak aralıklı, genellikle 31.7 Hz ile 2005.5 Hz arası) karşılık gelir ve sigmoid aktivasyon fonksiyonu kullanır. crepePostprocess fonksiyonu, bu 360 olasılık değerini alarak nihai perde tahminini (genellikle Hz cinsinden) ve bu tahminin güvenilirliğini hesaplar.
● Farkları:
○ Diğer modellerin aksine olay sınıflandırma veya genel embedding çıkarma yerine, spesifik bir görev olan temel frekans (pitch) tahminine odaklanır.
○ Giriş olarak spektrogram yerine doğrudan ham ses dalga formunu kullanır.
○ Çıktısı, sınıf etiketleri veya embedding’ler değil, belirli bir frekans değeri ve güven skorudur.
5. VADNet (“vadnet”)
● Ağ Adı: Voice Activity Detection (VAD) Network
● Giriş Şekli: 40-x-T (T zaman çerçevesi sayısı olmak üzere, her biri 40 boyutta öznitelik vektörü; genellikle MFCC gibi ses öznitelikleri)
● Ön İşleme ve Son İşleme Fonksiyonları: vadnetPreprocess, vadnetPostprocess
● Temel Mimarisi ve İşlevi: VADNet, bir ses sinyalinde insan konuşmasının varlığını veya yokluğunu tespit etmek için kullanılan bir sinir ağıdır; yani ses aktivite tespiti (Voice Activity Detection — VAD) yapar. Tabloda belirtilen VADNet, özellikle Espressif Sistemleri tarafından düşük güç tüketimli mikrodenetleyiciler (MCU’lar) için geliştirilmiş bir model olabilir. Bu tür modeller, genellikle verimli çalışmak üzere optimize edilmiş kompakt sinir ağı mimarilerine sahiptir. Espressif’in VADNet’i, yine kendilerinin geliştirdiği WakeNet (uyanma kelimesi tespit modeli) ile benzer bir model yapısı kullanır ve Mel-Frekans Kepstral Katsayıları (MFCC) gibi 40 boyutlu öznitelikleri girdi olarak alır. Bu öznitelikler, vadnetPreprocess fonksiyonu ile sesin kısa zaman çerçeveleri üzerinden hesaplanır. Ağ, bu öznitelik dizisini işleyerek her bir zaman çerçevesi için konuşma olup olmadığına dair bir olasılık üretir. vadnetPostprocess fonksiyonu ise bu olasılıkları kullanarak konuşma segmentlerinin başlangıç ve bitiş zamanlarını belirleyebilir. Bu model, binlerce saatlik çok dilli veri ile eğitilmiş olabilir.
● Farkları:
○ Diğer modellerden temel farkı, sesin içeriğini (ne söylendiği veya hangi ses olayı olduğu) anlamak yerine, sadece konuşmanın var olup olmadığını tespit etmeye odaklanmasıdır.
○ Genellikle kaynak kısıtlı cihazlarda çalışmak üzere tasarlanmış, daha küçük ve daha hızlı bir modeldir.
○ Giriş olarak genellikle MFCC gibi düşük boyutlu, konuşma için optimize edilmiş öznitelikler kullanır.
Elbette! İşte Medium’da paylaşım için daha profesyonel, sadeleştirilmiş ve okunabilir hâle getirilmiş versiyonu:
🔎 Genel Karşılaştırma ve Sonuç
Bu beş model, ses işleme alanındaki farklı görevler için geliştirilmiş çeşitli derin öğrenme mimarilerini temsil eder:
- YAMNet: MobileNet tabanlıdır, ses olaylarını sınıflandırmak için kullanılır.
- VGGish: VGG mimarisine dayanır, genel amaçlı ses embedding’leri üretir.
- OpenL3: Esnek bir CNN mimarisi kullanır, kendi kendine denetimli öğrenmeyle ses embedding’leri üretir.
- CREPE: Doğrudan ham ses dalgası üzerinden temel frekans (pitch) tahmini yapar.
- VADNet: Kompakt ve hızlı çalışan bir modeldir, yalnızca konuşma var/yok tespiti (VAD) yapar.
Her modelin farklı giriş verisi biçimi, ön işleme yöntemi ve mimarisi vardır. Bu çeşitlilik, onları farklı uygulamalarda özel olarak faydalı kılar. Kullanım amacınıza göre en uygun modeli seçebilir veya birden fazlasını birlikte kullanarak daha gelişmiş ses işleme sistemleri oluşturabilirsiniz.
🔍 Özellik Çıkarımı Yapan (Embedding) Modeller
Bu modeller, sınıflandırma yapmaz. Bunun yerine sesi temsil eden sayısal vektörler (embedding) üretir.
Model Açıklama OpenL3 Görsel ve işitsel bağlamdan öğrenilmiş, derin ses embedding modeli. Sınıf tahmini yapmaz. VGGish Google’ın VGG tabanlı ses embedding modeli. Özellik çıkarımı yapar, sınıflandırma yapmaz.
🗂️ Sınıflandırma Yapan Modeller
Bu modeller doğrudan sesin ne olduğunu tanımlar: Örneğin “köpek havlaması”, “konuşma”, “alarm” gibi.
Model Açıklama YAMNet AudioSet sınıflarına göre ses sınıflandırması yapar (521 farklı sınıf). Çıktısı: sınıf olasılıkları.
🌀 Spesifik Görevli (Özel Amaçlı) Modeller
Bu modeller sesin belirli bir özelliğini hedefler. Genel bir embedding ya da ses sınıfı üretmez.
Model Açıklama CREPE Pitch (frekans) tahmini yapar. Müzik, konuşma gibi sürekli frekans içeren verilerde etkilidir. VADNet Voice Activity Detection (VAD) yapar. “Konuşma var mı/yok mu?” sorusuna zaman bazlı yanıt verir.
✅ Kısa Özet
Model Türü Ne Yapar? YAMNet Sınıflandırma “Bu ses nedir?” sorusuna yanıt verir. VGGish Özellik çıkarımı Sesi vektör haline getirir. OpenL3 Özellik çıkarımı Sesi vektör haline getirir. CREPE Pitch analizi Sesin frekansını (Hz) tahmin eder. VADNet Konuşma tespiti (VAD) Konuşma var mı/yok mu? belirtir.
📚 Kaynakça
- Gemmeke, J. F., Ellis, D. P. W., Freedman, D., Jansen, A., Lawrence, W., Moore, R. C., Plakal, M., & Ritter, M. (2017). Audio Set: An ontology and human-labeled dataset for audio events. In 2017 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) (pp. 776–780). IEEE. https://doi.org/10.1109/ICASSP.2017.7952261
- Hershey, S., Chaudhuri, S., Ellis, D. P. W., Gemmeke, J. F., Jansen, A., Moore, R. C., Plakal, M., Saurous, R. A., Seybold, B., Slaney, M., Weiss, R. J., & Wilson, K. (2017). CNN architectures for large-scale audio classification. In 2017 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) (pp. 131–135). IEEE. https://doi.org/10.1109/ICASSP.2017.7952132
- Cramer, J., Wu, H. H., Salamon, J., & Bello, J. P. (2019). Look, listen, and learn more: Design choices for deep audio embeddings. In 2019 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) (pp. 3852–3856). IEEE. https://doi.org/10.1109/ICASSP.2019.8682475
- Kim, J. W., Salamon, J., Li, P., & Bello, J. P. (2018). CREPE: A convolutional representation for pitch estimation. In 2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) (pp. 161–165). IEEE. https://doi.org/10.1109/ICASSP.2018.8461329
- Ravanelli, M., Parcollet, T., Plantinga, P., et al. (2021). SpeechBrain: A general-purpose speech toolkit. arXiv. https://arxiv.org/abs/2106.04624
- MathWorks. (n.d.). Audio Pretrained Network. MathWorks Documentation. https://www.mathworks.com/help/audio/ref/audiopretrainednetwork.html
메타데이터
- post_id
- 85a55d5ccf76
- slug
- ses-analiz-modelleri-yamnet-vggish-openl3-crepe-ve-vadnet-85a55d5ccf76
- url
- https://medium.com/@a.haydar.kadioglu/ses-analiz-modelleri-yamnet-vggish-openl3-crepe-ve-vadnet-85a55d5ccf76
- canonical_url
- https://medium.com/@a.haydar.kadioglu/ses-analiz-modelleri-yamnet-vggish-openl3-crepe-ve-vadnet-85a55d5ccf76
- author_url
- https://medium.com/@a.haydar.kadioglu
- status
- ok
- fetched_at
- 2026-07-19 23:03:27