Pelatihan dan pengujian himpunan data

Dalam proyek Ucapan Kustom, Anda dapat mengunggah himpunan data untuk pelatihan, pemeriksaan kualitatif, dan pengukuran kuantitatif. Artikel ini membahas jenis data pelatihan dan pengujian yang dapat Anda gunakan untuk Ucapan Kustom.

Teks dan audio yang Anda gunakan untuk menguji dan melatih model kustom harus menyertakan sampel dari beragam rangkaian speaker dan skenario yang Anda perlu dikenali model Anda. Pertimbangkan faktor-faktor ini saat mengumpulkan data untuk pengujian dan pelatihan model kustom:

  • Menyertakan data teks dan audio untuk membahas jenis pernyataan verbal yang akan dibuat pengguna Anda saat berinteraksi dengan model. Misalnya, model yang menaikkan dan menurunkan suhu memerlukan pelatihan terkait pernyataan yang mungkin dibuat orang untuk meminta perubahan semacam itu.
  • Sertakan semua varian ucapan yang Anda perlu model Anda kenali. Banyak faktor yang dapat memvariasikan ucapan, termasuk aksen, dialek, pencampuran bahasa, usia, jenis kelamin, nada suara, tingkat penekanan, dan waktu.
  • Sertakan sampel dari lingkungan yang berbeda, misalnya, kebisingan dalam, luar ruangan, dan jalan, tempat model Anda akan digunakan.
  • Rekam audio dengan perangkat keras yang akan digunakan sistem produksi. Jika model Anda harus mengidentifikasi ucapan yang direkam pada perangkat dengan kualitas yang berbeda-beda, data audio yang Anda berikan untuk melatih model Anda juga harus mewakili skenario yang beragam ini.
  • Jaga agar himpunan data tetap beragam dan mewakili persyaratan proyek Anda. Anda dapat menambahkan data lainnya ke model nanti.
  • Hanya sertakan data yang perlu ditranskripsikan oleh model Anda. Menyertakan data yang tidak sesuai dalam persyaratan pengenalan model kustom Anda dapat mengurangi kualitas pengenalan secara keseluruhan.

Jenis data

Tabel berikut mencantumkan jenis data yang diterima, kapan setiap jenis data harus digunakan, dan jumlah yang disarankan. Tidak semua jenis data diperlukan untuk membuat model. Persyaratan data akan bervariasi bergantung pada apakah Anda membuat pengujian atau melatih model.

Jenis data Digunakan untuk pengujian Kuantitas yang Disarankan Digunakan untuk pelatihan Kuantitas yang disarankan
Audio saja Ya (inspeksi visual) 5+ file audio Tidak Tidak berlaku
Audio + transkrip berlabel manusia Ya (evaluasi akurasi) 0,5-5 jam audio Ya 1-20 jam audio
Teks biasa Tidak Tidak berlaku Ya 1-200 MB teks terkait
Teks terstruktur (pratinjau publik) Tidak Tidak berlaku Ya Hingga 10 kelas dengan maksimal 4.000 item dan maksimal 50.000 kalimat pelatihan
Pengucapan Tidak Tidak berlaku Ya 1 KB - 1 MB teks pengucapan

Pelatihan dengan teks biasa atau teks terstruktur biasanya selesai dalam beberapa menit.

Tip

Mulailah dengan data teks biasa atau data teks terstruktur. Data ini akan meningkatkan pengenalan istilah dan frasa khusus. Pelatihan dengan teks jauh lebih cepat daripada pelatihan dengan audio (menit dibandingkan dengan hari).

Mulailah dengan himpunan data sampel kecil yang sesuai dengan bahasa, akustik, dan perangkat keras tempat model Anda akan digunakan. Himpunan data kecil dari data representatif dapat mengekspos masalah sebelum Anda berinvestasi dalam mengumpulkan himpunan data yang lebih besar untuk pelatihan. Untuk mengetahui sampel data Ucapan Kustom ini, lihat repositori GitHub ini.

Jika Anda akan melatih model kustom dengan data audio, pilih wilayah sumber daya Ucapan dengan perangkat keras khusus yang tersedia untuk melatih data audio. Di wilayah dengan perangkat keras kustom untuk pelatihan Ucapan Kustom, layanan Ucapan akan menggunakan hingga 20 jam data pelatihan audio Anda, dan dapat memproses sekitar 10 jam data per hari. Di wilayah lain, layanan Ucapan menggunakan hingga 8 jam data audio Anda, dan dapat memproses sekitar 1 jam data per hari. Setelah model dilatih, Anda dapat menyalin model ke wilayah lain sesuai kebutuhan dengan REST API CopyModelToSubscription.

Pertimbangkan himpunan data berdasarkan skenario

Model yang dilatih pada subset skenario hanya dapat berjalan dengan baik dalam skenario tersebut. Pilih dengan cermat data yang merepresentasikan cakupan skenario lengkap yang diperlukan supaya dapat dikenali oleh model kustom Anda. Tabel berikut menunjukkan himpunan data yang perlu dipertimbangkan untuk beberapa skenario pengenalan suara:

Skenario Data teks biasa dan data teks terstruktur Audio + transkrip berlabel manusia Kata-kata baru dengan pengucapan
Pusat panggilan Dokumen pemasaran, situs web, ulasan produk yang terkait dengan aktivitas pusat panggilan Panggilan pusat panggilan ditranskripsikan oleh manusia Istilah yang memiliki pengucapan ambigu (lihat contoh Xbox di bagian sebelumnya)
Asisten suara Daftar kalimat yang menggunakan berbagai kombinasi perintah dan entitas Perintah suara pembicaraan yang direkam di perangkat, dan mentranskripsikan ke dalam teks Nama (film, lagu, produk) yang memiliki pengucapan unik
Dikte Input tulis, seperti pesan instan atau email Mirip dengan contoh sebelumnya Mirip dengan contoh sebelumnya
Teks tertutup video Skrip acara TV, film, konten pemasaran, ringkasan video Transkrip video yang tepat Mirip dengan contoh sebelumnya

Untuk membantu menentukan himpunan data mana yang akan digunakan untuk mengatasi masalah Anda, lihat tabel berikut:

Kasus penggunaan Jenis data
Meningkatkan akurasi pengenalan pada kosakata dan tata bahasa khusus industri, seperti terminologi medis atau jargon IT. Teks biasa atau data teks terstruktur
Menentukan bentuk kata atau istilah fonetik dan ditampilkan yang memiliki pengucapan tidak standar, seperti nama produk atau akronim. Data pengucapan atau pengucapan fonetik dalam teks terstruktur
Meningkatkan akurasi pengenalan pada gaya berbicara, aksen, atau suara latar belakang tertentu. Audio + transkrip berlabel manusia

Audio + data transkrip berlabel manusia untuk pelatihan atau pengujian

Anda dapat menggunakan audio + data transkrip berlabel manusia untuk tujuan pelatihan dan pengujian. Anda harus menyediakan transkripsi berlabel manusia (kata per kata) untuk perbandingan:

  • Untuk meningkatkan aspek akustik seperti sedikit aksen, gaya berbicara, dan suara bising di latar belakang.
  • Untuk mengukur akurasi ucapan ke teks Microsoft saat memproses file audio Anda.

Untuk daftar model dasar yang mendukung pelatihan dengan data audio, lihat Dukungan bahasa. Meskipun model dasar mendukung pelatihan dengan data audio, layanan mungkin hanya menggunakan sebagian audio. Tetap saja, layanan tersebut akan menggunakan semua transkrip.

Penting

Jika model dasar tidak mendukung penyesuaian dengan data audio, hanya teks transkripsi yang akan digunakan untuk pelatihan. Jika Anda beralih ke model dasar yang mendukung penyesuaian dengan data audio, waktu pelatihan dapat meningkat dari beberapa jam menjadi beberapa hari. Perubahan waktu pelatihan akan paling terlihat saat Anda beralih ke model dasar di wilayah tanpa perangkat keras khusus untuk pelatihan. Jika data audio tidak diperlukan, Anda harus menghapusnya untuk mengurangi waktu pelatihan.

Audio dengan transkrip berlabel manusia menawarkan peningkatan akurasi terbesar jika audio berasal dari kasus penggunaan target. Sampel harus mencakup cakupan lengkap ucapan. Misalnya, pusat panggilan untuk toko retail akan mengoptimalkan panggilan tentang pakaian renang dan kacamata hitam selama bulan-bulan musim panas. Pastikan bahwa sampel Anda menyertakan cakupan lengkap ucapan yang ingin dideteksi.

Pertimbangkan detail ini:

  • Pelatihan dengan audio akan membawa keuntungan maksimal jika audio juga sulit dimengerti bagi manusia. Di sebagian besar kasus, Anda harus mulai berlatih hanya dengan menggunakan teks terkait.
  • Jika Anda menggunakan salah satu bahasa yang paling banyak digunakan seperti Inggris Amerika Serikat, sepertinya Anda tidak perlu berlatih dengan data audio. Untuk bahasa semacam itu, model dasar telah menawarkan hasil pengenalan yang sangat baik di sebagian besar skenario sehingga hal tersebut mungkin cukup untuk berlatih dengan teks terkait.
  • Ucapan kustom hanya dapat menangkap konteks kata untuk mengurangi kesalahan penggantian, bukan kesalahan penyisipan atau penghapusan.
  • Hindari sampel yang menyertakan kesalahan transkripsi, tetapi sertakan keragaman kualitas audio.
  • Hindari kalimat yang tidak terkait dengan domain masalah Anda. Kalimat yang tidak terkait dapat membahayakan model Anda.
  • Ketika kualitas transkrip bervariasi, Anda dapat menduplikasi kalimat yang sangat bagus, seperti transkripsi luar biasa yang menyertakan frasa kunci, untuk menambah bobotnya.
  • Layanan Azure Cognitive Service untuk Ucapan akan otomatis menggunakan transkrip tersebut untuk meningkatkan pengenalan kata dan frasa khusus domain, seolah-olah ditambahkan sebagai teks terkait.
  • Penyelesaian operasi pelatihan dapat memakan waktu beberapa hari. Untuk meningkatkan kecepatan pelatihan, pastikan untuk membuat langganan layanan Azure Cognitive Service untuk Ucapan Anda di wilayah yang memiliki perangkat keras khusus untuk pelatihan.

Himpunan data pelatihan yang besar diperlukan untuk meningkatkan pengenalan. Umumnya, sebaiknya sediakan transkripsi kata per kata selama 1 hingga 20 jam audio. Namun, bahkan hanya 30 menit dapat membantu meningkatkan kualitas hasil pengenalan. Meskipun membuat transkripsi berlabel manusia dapat memakan waktu, peningkatan pengenalan hanya akan sebagus data yang Anda berikan. Anda hanya boleh mengunggah transkrip berkualitas tinggi saja.

File audio dapat memiliki keheningan di awal dan akhir rekaman. Jika memungkinkan, sertakan setidaknya setengah detik keheningan sebelum dan sesudah ucapan di setiap file sampel. Meskipun audio dengan volume perekaman rendah atau kebisingan latar belakang yang mengganggu tidak membantu, itu tidak akan membatasi atau menurunkan model kustom Anda. Selalu pertimbangkan untuk meningkatkan mikrofon dan perangkat keras pemrosesan sinyal Anda sebelum mengumpulkan sampel audio.

Proyek Ucapan Kustom memerlukan file audio dengan properti berikut:

Properti Nilai
Format file RIFF (WAV)
Tingkat sampel 8\.000 Hz atau 16.000 Hz
Saluran 1 (mono)
Panjang maksimum per audio 2 jam (pengujian) / 60 dtk (pelatihan)
Format sampel PCM, 16-bit
Format arsip .zip
Ukuran zip maksimum 2 GB atau 10,000 files

Data teks biasa untuk pelatihan

Anda dapat menambahkan kalimat teks biasa dari teks terkait untuk meningkatkan pengenalan kata dan frasa khusus domain. Kalimat teks terkait dapat mengurangi kesalahan substitusi yang terkait dengan kesalahan pengenalan kata umum dan kata khusus domain dengan menunjukkannya dalam konteks. Kata-kata khusus domain dapat berupa kata-kata yang tidak biasa atau dibuat-buat, tetapi pengucapannya harus mudah dikenali.

Berikan kalimat terkait domain dalam satu file teks. Gunakan data teks yang mendekati ucapan lisan yang diharapkan. Ucapan tidak harus lengkap atau benar secara tata bahasa, tetapi harus secara akurat mencerminkan masukan lisan yang Anda harapkan dikenali oleh model. Jika memungkinkan, cobalah untuk mengontrol satu kalimat atau kata kunci pada baris yang terpisah. Untuk menambah bobot suatu istilah seperti nama produk, tambahkan beberapa kalimat yang menyertakan istilah tersebut. Jangan menyalin terlalu banyak - ini dapat memengaruhi tingkat pengenalan secara keseluruhan.

Catatan

Hindari kalimat teks terkait yang menyertakan kebisingan seperti karakter atau kata yang tidak dapat dikenali.

Gunakan tabel ini untuk memastikan bahwa file himpunan data teks biasa Anda diformat dengan benar:

Properti Nilai
Pengodean teks UTF-8 BOM
Jumlah ungkapan per baris 1
Ukuran file maksimal 200 MB

Anda juga harus mematuhi batasan berikut:

  • Hindari mengulangi karakter, kata-kata, atau kelompok kata-kata lebih dari tiga kali, seperti dalam "aaaa," "yeah yeah yeah yeah," atau "itu saja itu saja itu saja itu saja itu saja." Layanan Azure Cognitive Service untuk Ucapan mungkin menghilangkan baris yang berisi terlalu banyak pengulangan.
  • Jangan gunakan karakter khusus atau karakter UTF-8 di atas U+00A1.
  • URI akan ditolak.
  • Untuk beberapa bahasa seperti Jepang atau Korea, mengimpor data teks dalam jumlah besar dapat memakan waktu lama atau hingga kehabisan waktu. Pertimbangkan untuk membagi himpunan data menjadi beberapa file teks dengan masing-masing hingga 20.000 baris.

Data teks terstruktur untuk pelatihan

Catatan

Data teks terstruktur untuk pelatihan ada dalam pratinjau umum.

Gunakan data teks terstruktur saat data Anda mengikuti pola tertentu dalam ucapan tertentu yang hanya berbeda menurut kata atau frasa dari daftar. Untuk menyederhanakan pembuatan data pelatihan dan untuk memungkinkan pemodelan yang lebih baik di dalam model Bahasa Kustom, Anda dapat menggunakan teks terstruktur dalam format Markdown untuk menentukan daftar item dan pengucapan fonetik kata. Lalu, Anda dapat mereferensikan daftar tersebut dalam ungkapan pelatihan.

Ungkapan yang diharapkan sering kali mengikuti pola tertentu. Salah satu pola umum adalah bahwa ungkapan hanya berbeda pada kata atau frasa dari suatu daftar. Contoh dari pola ini bisa berupa:

  • "Saya memiliki pertanyaan tentangproduct", di mana product adalah daftar kemungkinan produk.
  • "Jadikan objectcolor tersebut," di mana object adalah daftar bentuk geometris, sedangkan color adalah daftar warna.

Untuk daftar model dasar dan lokasi yang didukung untuk pelatihan dengan teks terstruktur, lihat Dukungan bahasa. Anda harus menggunakan model dasar terbaru untuk lokasi-lokasi berikut. Untuk lokasi yang tidak mendukung pelatihan dengan teks terstruktur, layanan akan mengambil kalimat pelatihan apa pun yang tidak mereferensikan kelas apa pun sebagai bagian dari pelatihan dengan data teks biasa.

File teks terstruktur harus memiliki ekstensi .md. Ukuran file maksimum adalah 200 MB, dan pengodean teks harus UTF-8 BOM. Sintaksis Markdown sama dengan sintaksis dari model LUIS, khususnya entitas daftar dan contoh ungkapan. Untuk informasi lebih lanjut tentang sintaksis markdown lengkap, lihat Markdown LUIS.

Berikut adalah detail utama tentang format Markdown yang didukung:

Properti Deskripsi Batas
@list Daftar item yang dapat dirujuk dalam contoh kalimat. Maksimum 10 daftar. Maksimum 4.000 item per daftar.
speech:phoneticlexicon Daftar pengucapan fonetik menurut Universal Phone Set. Pengucapan disesuaikan untuk setiap contoh di mana kata tersebut muncul dalam daftar atau kalimat pelatihan. Misalnya, jika Anda memiliki kata yang terdengar seperti "kucing" dan Anda ingin menyesuaikan pengucapannya menjadi "k ae t", Anda dapat menambahkan - cat/k ae t ke daftar speech:phoneticlexicon. Maksimum 15.000 entri. Maksimal 2 pengucapan per kata.
#ExampleSentences Simbol pound (#) membatasi bagian dari contoh kalimat. Judul bagian hanya boleh berisi huruf, angka, dan garis bawah. Contoh kalimat harus mencerminkan rentang ucapan yang diharapkan model Anda. Kalimat pelatihan dapat merujuk ke item di bawah @list dengan menggunakan kurung kurawal kiri dan kanan di sekitarnya ({@list name}). Anda dapat merujuk ke beberapa daftar dalam kalimat pelatihan yang sama, atau tidak sama sekali. Maksimum 50.000 contoh kalimat
// Komentar mengikuti garis miring ganda (//) . Tidak berlaku

Berikut ini contoh file teks terstruktur:

// This is a comment because it follows a double slash (`//`).

// Here are three separate lists of items that can be referenced in an example sentence. You can have up to 10 of these.
@ list food =
- pizza
- burger
- ice cream
- soda

@ list pet =
- cat
- dog
- fish

@ list sports =
- soccer
- tennis
- cricket
- basketball
- baseball
- football

// List of phonetic pronunciations
@ speech:phoneticlexicon
- cat/k ae t
- fish/f ih sh

// Here are two sections of training sentences. 
#TrainingSentences_Section1
- you can include sentences without a class reference
- what {@pet} do you have
- I like eating {@food} and playing {@sports}
- my {@pet} likes {@food}

#TrainingSentences_Section2
- you can include more sentences without a class reference
- or more sentences that have a class reference like {@pet} 

Data pengucapan untuk latihan

Kata-kata khusus atau yang dibuat-buat mungkin memiliki pengucapan yang unik. Kata-kata ini dapat dikenali jika kata tersebut dapat dibagi menjadi kata-kata yang lebih kecil untuk mengucapkannya. Misalnya, untuk mengenali "Xbox", ucapkan sebagai "X box". Pendekatan ini tidak akan meningkatkan akurasi secara keseluruhan, tetapi dapat meningkatkan pengenalan kata tersebut dan kata kunci lainnya.

Anda dapat menyediakan file pengucapan kustom untuk meningkatkan pengenalan. Jangan gunakan file pengucapan kustom untuk mengubah pengucapan kata-kata umum. Untuk daftar bahasa yang mendukung pengucapan kustom, lihat dukungan bahasa komputer.

Catatan

Anda dapat menggunakan file data pengucapan sendiri, atau Anda dapat menambahkan pengucapan dalam file data teks terstruktur. Layanan Ucapan tidak mendukung pelatihan model di mana Anda memilih kedua himpunan data tersebut sebagai input.

Bentuk lisan adalah urutan fonetik yang dieja. Bentuk tersebut dapat terdiri dari huruf, kata-kata, suku kata, atau kombinasi dari ketiganya. Tabel ini mencakup beberapa contoh:

Bentuk yang dikenali dan ditampilkan Bentuk lisan
3CPO tiga c p o
CNTK c n t k
IEEE i tiga e

Buat pengucapan dalam satu file teks. Sertakan ungkapan lisan dan pengucapan kustom untuk masing-masing. Setiap baris dalam file harus dimulai dengan bentuk yang dikenali, lalu karakter tab, dan kemudian urutan fonetik yang dibatasi ruang.

3CPO    three c p o
CNTK    c n t k
IEEE    i triple e

Lihat tabel berikut untuk memastikan bahwa file himpunan data pengucapan Anda valid dan diformat dengan benar.

Properti Nilai
Pengodean teks UTF-8 BOM (ANSI juga didukung untuk bahasa Inggris)
Jumlah pengucapan per baris 1
Ukuran file maksimal 1 MB (1 KB untuk tingkat gratis)

Data audio untuk pengujian

Data audio optimal untuk menguji keakuratan model ucapan ke teks dasar Microsoft atau model khusus. Perlu diingat bahwa data audio digunakan untuk memeriksa akurasi ucapan yang berkaitan dengan performa model tertentu. Jika Anda ingin mengukur keakuratan model, gunakan audio + data transkrip berlabel manusia.

Proyek Ucapan Kustom memerlukan file audio dengan properti berikut:

Properti Nilai
Format file RIFF (WAV)
Tingkat sampel 8\.000 Hz atau 16.000 Hz
Saluran 1 (mono)
Panjang maksimum per audio 2 jam
Format sampel PCM, 16-bit
Format arsip .zip
Ukuran arsip maksimum 2 GB atau 10,000 files

Catatan

Saat mengunggah data pelatihan dan pengujian, ukuran file .zip tidak boleh melebihi 2 GB. Jika Anda memerlukan lebih banyak data untuk pelatihan, bagi menjadi beberapa file .zip dan unggah secara terpisah. Nanti, Anda dapat memilih untuk melatih dari beberapa himpunan data. Namun, Anda hanya dapat menguji dari himpunan data tunggal.

Gunakan SoX untuk memverifikasi properti audio atau mengonversi audio yang ada ke format yang sesuai. Berikut adalah beberapa contoh perintah SoX:

Aktivitas Perintah SoX
Periksa format file audionya. sox --i <filename>
Konversi file audio ke satu saluran, 16-bit, 16 KHz. sox <input> -b 16 -e signed-integer -c 1 -r 16k -t wav <output>.wav

Data audio untuk pelatihan

Tidak semua model dasar mendukung pelatihan dengan data audio. Untuk daftar model dasar yang mendukung pelatihan dengan data audio, lihat Dukungan bahasa.

Meskipun model dasar mendukung pelatihan dengan data audio, layanan mungkin hanya menggunakan sebagian audio. Di wilayah dengan perangkat keras khusus yang tersedia untuk data audio pelatihan, layanan Ucapan akan menggunakan hingga 20 jam data pelatihan audio Anda. Di wilayah lain, layanan Ucapan menggunakan hingga 8 jam data audio Anda.

Langkah berikutnya