Panduan klasifikasi audio

Tugas MediaPipe Audio Classifier memungkinkan Anda mengklasifikasikan klip audio ke dalam sekumpulan kategori yang ditentukan, seperti musik gitar, peluit kereta, atau kicauan burung. Kategori ditentukan selama pelatihan model. Tugas ini beroperasi pada data audio dengan model machine learning (ML) sebagai klip audio independen atau streaming berkelanjutan dan menghasilkan daftar kategori potensial yang diurutkan berdasarkan skor probabilitas menurun.

Cobalah!

Mulai

Mulai gunakan tugas ini dengan mengikuti salah satu panduan penerapan ini untuk platform target Anda. Panduan khusus platform ini akan memandu Anda dalam menerapkan dasar tugas ini, termasuk model yang direkomendasikan, dan contoh kode dengan opsi konfigurasi yang direkomendasikan:

Panduan khusus platform ini akan memandu Anda dalam menerapkan dasar tugas ini, termasuk model yang direkomendasikan, dan contoh kode dengan opsi konfigurasi yang direkomendasikan.

Detail tugas

Bagian ini menjelaskan kemampuan, input, output, dan opsi konfigurasi tugas ini.

Fitur

  • Pemrosesan audio input - Pemrosesan mencakup resampling audio, buffering, framing, dan transformasi Fourier.
  • Lokalitas peta label - Menyetel bahasa yang digunakan untuk nama tampilan
  • Batas skor - Memfilter hasil berdasarkan skor prediksi.
  • Deteksi top-k - Memfilter hasil deteksi angka.
  • Daftar label dan daftar tolak yang diizinkan - Menentukan kategori yang terdeteksi.
Input tugas Output tugas
Input dapat berupa salah satu jenis data berikut:
  • Klip audio
  • Streaming audio
Pengklasifikasi Audio menghasilkan daftar kategori yang berisi:
  • Indeks kategori: indeks kategori dalam output model
  • Skor: skor keyakinan untuk kategori ini, biasanya probabilitas dalam [0,1]
  • Nama kategori (opsional): nama kategori seperti yang ditentukan dalam Metadata Model TFLite, jika tersedia
  • Nama tampilan kategori (opsional): nama tampilan untuk kategori seperti yang ditentukan dalam Metadata Model TFLite, dalam bahasa yang ditentukan melalui opsi lokal nama tampilan, jika tersedia

Opsi konfigurasi

Tugas ini memiliki opsi konfigurasi berikut:

Nama Opsi Deskripsi Rentang Nilai Nilai Default
running_mode Menetapkan mode berjalan untuk tugas. Pengklasifikasi Audio memiliki dua mode:

AUDIO_CLIPS: Mode untuk menjalankan tugas audio pada klip audio independen.

AUDIO_STREAM: Mode untuk menjalankan tugas audio pada streaming audio, seperti dari mikrofon. Dalam mode ini, resultListener harus dipanggil untuk menyiapkan pemroses guna menerima hasil klasifikasi secara asinkron.
{AUDIO_CLIPS, AUDIO_STREAM} AUDIO_CLIPS
display_names_locale Menetapkan bahasa label yang akan digunakan untuk nama tampilan yang diberikan dalam metadata model tugas, jika tersedia. Defaultnya adalah en untuk bahasa Inggris. Anda dapat menambahkan label yang dilokalkan ke metadata model kustom menggunakan TensorFlow Lite Metadata Writer API Kode lokal id
max_results Menetapkan jumlah maksimum opsional hasil klasifikasi dengan skor tertinggi yang akan ditampilkan. Jika < 0, semua hasil yang tersedia akan ditampilkan. Semua bilangan positif -1
score_threshold Menetapkan nilai minimum skor prediksi yang menggantikan skor yang diberikan dalam metadata model (jika ada). Hasil di bawah nilai ini ditolak. [0,0, 1,0] Tidak ditetapkan
category_allowlist Menetapkan daftar opsional nama kategori yang diizinkan. Jika tidak kosong, hasil klasifikasi yang nama kategorinya tidak ada dalam kumpulan ini akan difilter. Nama kategori duplikat atau tidak diketahui akan diabaikan. Opsi ini sama-sama bersifat eksklusif dengan category_denylist dan menggunakan keduanya akan menghasilkan error. String apa pun Tidak ditetapkan
category_denylist Menetapkan daftar opsional nama kategori yang tidak diizinkan. Jika tidak kosong, hasil klasifikasi yang nama kategorinya ada dalam kumpulan ini akan difilter. Nama kategori duplikat atau tidak diketahui akan diabaikan. Opsi ini sama-sama bersifat eksklusif dengan category_allowlist dan menggunakan keduanya akan menghasilkan error. String apa pun Tidak ditetapkan
result_callback Menetapkan pemroses hasil untuk menerima hasil klasifikasi secara asinkron saat Pengklasifikasi Audio dalam mode streaming audio. Hanya dapat digunakan saat mode lari disetel ke AUDIO_STREAM T/A Tidak ditetapkan

Model

Pengklasifikasi Audio memerlukan model klasifikasi audio untuk didownload dan disimpan di direktori project Anda. Mulailah dengan model default yang direkomendasikan untuk platform target Anda saat Anda mulai mengembangkan aplikasi dengan tugas ini. Model lain yang tersedia biasanya melakukan kompromi antara performa, akurasi, resolusi, dan persyaratan resource, dan dalam beberapa kasus, menyertakan fitur tambahan.

Model Yamnet adalah pengklasifikasi peristiwa audio yang dilatih pada set data AudioSet untuk memprediksi peristiwa audio yang ditentukan dalam data AudioSet. Untuk mengetahui informasi tentang peristiwa audio yang dikenali oleh model ini, lihat daftar label model.

Nama model Bentuk input Jenis kuantisasi Versions
YamNet 1 x 15.600 Tidak ada (float32) Terbaru

Tolok ukur tugas

Berikut adalah tolok ukur tugas untuk seluruh pipeline berdasarkan model terlatih di atas. Hasil latensi adalah latensi rata-rata di Pixel 6 yang menggunakan CPU / GPU.

Nama Model Latensi CPU Latensi GPU
YamNet 12,29 md -