MediaPipe Ses Sınıflandırıcı görevi, ses kliplerini gitar müziği, tren düdüğü veya kuş şarkısı gibi bir dizi tanımlanmış kategoriye göre sınıflandırmanıza olanak tanır. Kategoriler, modelin eğitilmesi sırasında tanımlanır. Bu görev, bağımsız ses klipleri veya sürekli akış olarak bir makine öğrenimi (ML) modeliyle ses verileri üzerinde çalışır ve azalan olasılık puanına göre sıralanmış potansiyel kategorilerin bir listesini oluşturur.
Başlayın
Hedef platformunuz için bu uygulama rehberlerinden birini izleyerek bu görevi kullanmaya başlayın. Bu platforma özel kılavuzlar, önerilen bir model ve önerilen yapılandırma seçenekleriyle birlikte kod örneği dahil olmak üzere, bu görevin temel bir şekilde uygulanmasında size yol gösterir:
- Android - Kod örneği - Kılavuz
- Python: Kod örneği Kılavuz
- Web - Kod örneği - Kılavuz
Bu platforma özel kılavuzlar, önerilen bir model ve önerilen yapılandırma seçeneklerinin yer aldığı kod örneği de dahil olmak üzere, bu görevin temel bir şekilde uygulanması konusunda size yol gösterir.
Görev ayrıntıları
Bu bölümde, bu görevin özellikleri, girişleri, çıkışları ve yapılandırma seçenekleri açıklanmaktadır.
Özellikler
- Giriş sesi işleme: İşleme ses yeniden örnekleme, arabelleğe alma, çerçeveleme ve Fourier dönüştürme işlemlerini içerir.
- Harita yerel ayarını etiketle - Görünen adlar için kullanılan dili ayarlayın
- Puan eşiği - Sonuçları tahmin puanlarına göre filtreleyin.
- Üst-k algılama - Sayı algılama sonuçlarını filtreleyin.
- Etiket izin verilenler listesi ve ret listesi - Algılanan kategorileri belirtin.
Görev girişleri | Görev çıkışları |
---|---|
Giriş, aşağıdaki veri türlerinden biri olabilir:
|
Ses Sınıflandırıcı aşağıdakileri içeren bir kategori listesi verir:
|
Yapılandırma seçenekleri
Bu görev aşağıdaki yapılandırma seçeneklerine sahiptir:
Seçenek Adı | Açıklama | Değer Aralığı | Varsayılan Değer |
---|---|---|---|
running_mode |
Görevin çalışma modunu ayarlar. Ses Sınıflandırıcı'nın iki modu vardır: AUDIO_CLIPS: Ses görevini bağımsız ses kliplerinde çalıştırma modu. AUDIO_STREAM: Ses görevini mikrofon gibi bir ses akışında çalıştırma modu. Bu modda, sınıflandırma sonuçlarını eşzamansız olarak almak için bir işleyici ayarlamak üzere resultListener çağrılmalıdır. |
{AUDIO_CLIPS, AUDIO_STREAM } |
AUDIO_CLIPS |
display_names_locale |
Varsa görev modelinin meta verilerinde sağlanan görünen adlar için kullanılacak etiketlerin dilini ayarlar. İngilizce için varsayılan değer en şeklindedir. TensorFlow Lite Metadata Writer API'yi kullanarak özel modelin meta verilerine yerelleştirilmiş etiketler ekleyebilirsiniz
| Yerel ayar kodu | en |
max_results |
İsteğe bağlı olarak döndürülecek en yüksek puanlı sınıflandırma sonuçlarının isteğe bağlı maksimum sayısını ayarlar. < 0 ise mevcut tüm sonuçlar döndürülür. | Pozitif sayılar | -1 |
score_threshold |
Model meta verilerinde belirtilen eşiği (varsa) geçersiz kılan tahmin puanı eşiğini ayarlar. Bu değerin altındaki sonuçlar reddedilir. | [0,0, 1,0] | Belirlenmedi |
category_allowlist |
İsteğe bağlı olarak izin verilen kategori adları listesini ayarlar. Boş değilse kategori adı bu grupta yer almayan sınıflandırma sonuçları filtrelenir. Yinelenen veya bilinmeyen kategori adları yoksayılır.
Bu seçenek, category_denylist ile birlikte kullanılamaz ve her iki sonucun da kullanılması hataya neden olur. |
Herhangi bir dize | Belirlenmedi |
category_denylist |
İzin verilmeyen kategori adlarının isteğe bağlı listesini ayarlar. Boş değilse kategori adı bu kümede yer alan sınıflandırma sonuçları filtrelenir. Yinelenen veya bilinmeyen kategori adları yoksayılır. Bu seçenek category_allowlist ile birlikte kullanılamaz ve her iki sonucun da kullanılması hataya neden olur. |
Herhangi bir dize | Belirlenmedi |
result_callback |
Ses Sınıflandırıcı, ses akışı modundayken sonuç işleyiciyi, sınıflandırma sonuçlarını eşzamansız olarak alacak şekilde ayarlar. Yalnızca çalıştırma modu AUDIO_STREAM olarak ayarlandığında kullanılabilir |
Yok | Belirlenmedi |
Modeller
Ses Sınıflandırıcı, bir ses sınıflandırma modelinin indirilip proje dizininizde depolanmasını gerektirir. Bu görevle geliştirmeye başladığınızda hedef platformunuz için varsayılan, önerilen modelle başlayın. Mevcut diğer modeller genellikle performans, doğruluk, çözünürlük ve kaynak gereksinimleri arasında denge kurar ve bazı durumlarda ek özellikler içerir.
Yamnet modeli (önerilir)
Yamnet modeli, AudioSet verilerinde tanımlanan ses etkinliklerini tahmin etmek için AudioSet veri kümesi üzerinde eğitilmiş bir ses etkinliği sınıflandırıcıdır. Bu model tarafından tanınan ses etkinlikleri hakkında bilgi için modelin etiket listesine bakın.
Model adı | Giriş şekli | Nicelleştirme türü | Sürümler |
---|---|---|---|
YamNet | 1 x 15.600 | Yok (float32) | En son |
Görev karşılaştırmaları
Yukarıda önceden eğitilmiş modellere dayalı olarak ardışık düzenin tamamı için görev karşılaştırmaları aşağıda verilmiştir. Gecikme sonucu, Pixel 6'da CPU / GPU kullanılarak elde edilen ortalama gecikmedir.
Model Adı | CPU Gecikmesi | GPU Gecikmesi |
---|---|---|
YamNet | 12,29 ms. | - |