Cara menyiapkan data dan menentukan skema untuk NER kustom

Untuk membuat model NER kustom, Anda akan memerlukan data berkualitas untuk melatihnya. Artikel ini membahas bagaimana Anda harus memilih dan menyiapkan data Anda, bersama dengan menentukan skema. Mendefinisikan skema adalah langkah pertama dalam siklus hidup pengembangan proyek, dan ini menentukan jenis/kategori entitas yang Anda perlukan model Anda untuk mengekstrak dari teks saat runtime.

Desain skema

Skema mendefinisikan jenis/kategori entitas yang perlu diekstrak model Anda dari teks saat runtime.

  • Tinjau dokumen dalam kumpulan data Anda agar terbiasa dengan format dan strukturnya.

  • Identifikasi entitas ingin Anda ekstrak dari data.

    Misalnya, jika Anda mengekstrak entitas dari email dukungan, Anda mungkin perlu mengekstrak "Nama pelanggan", "Nama produk", "Tanggal permintaan", dan "Informasi kontak".

  • Hindari ambiguitas jenis entitas.

    Ambiguitas terjadi saat jenis entitas yang Anda pilih mirip satu sama lain. Semakin ambigu skema Anda, semakin banyak data berlabel yang Anda perlukan untuk membedakan antara jenis entitas yang berbeda.

    Misalnya, jika Anda mengekstraksi data dari kontrak hukum, untuk mengekstrak "Nama pihak pertama" dan "Nama pihak kedua" Anda perlu menambahkan lebih banyak contoh untuk mengatasi ambiguitas karena nama kedua belah pihak terlihat serupa. Hindari ambiguitas karena menghemat waktu, tenaga, dan menghasilkan hasil yang lebih baik.

  • Hindari entitas yang kompleks. Entitas yang kompleks bisa sulit untuk dipilih dengan tepat dari teks, sehingga pertimbangkan untuk memecahnya menjadi beberapa entitas.

    Misalnya, mengekstrak "Alamat" akan menjadi tantangan jika tidak dipecah menjadi entitas yang lebih kecil. Ada begitu banyak variasi tentang bagaimana alamat muncul sehingga diperlukan banyak entitas berlabel untuk mengajari model mengekstrak alamat, secara keseluruhan, tanpa memecahnya. Namun, jika Anda mengganti "Alamat" dengan "Nama Jalan", "Kotak Pos", "Kota", "Negara" dan "Kode Pos", model akan membutuhkan lebih sedikit label per entitas.

Pemilihan data

Kualitas data yang Anda gunakan untuk melatih model sangat memengaruhi performa model.

  • Gunakan data sungguhan yang mencerminkan ruang masalah domain Anda untuk melatih model secara efektif. Anda dapat menggunakan data sintetis untuk mempercepat proses pelatihan model awal, tetapi kemungkinan akan berbeda dari data sungguhan dan membuat model kurang efektif saat digunakan.

  • Seimbangkan distribusi data Anda sebanyak mungkin tanpa menyimpang jauh dari distribusi di kehidupan nyata. Misalnya, jika Anda melatih model Anda untuk mengekstrak entitas dari dokumen hukum yang mungkin ditulis dalam berbagai format dan bahasa, Anda harus memberikan contoh yang menunjukkan keragaman seperti yang akan ditemukan di kehidupan nyata.

  • Gunakan data yang beragam jika mungkin untuk menghindari overfitting pada model Anda. Kurangnya keragaman dalam data pelatihan dapat menyebabkan model Anda mempelajari korelasi palsu yang mungkin tidak ada dalam data di kehidupan nyata.

  • Hindari duplikat dokumen dalam data Anda. Data duplikat memiliki efek negatif pada proses pelatihan, metrik model, dan performa model.

  • Pertimbangkan asal data Anda. Jika Anda mengumpulkan data dari satu orang, departemen, atau bagian dari skenario Anda, kemungkinan Anda kehilangan keragaman yang mungkin penting bagi model Anda untuk dipelajari.

Catatan

Jika dokumen Anda dalam beberapa bahasa, pilih opsi aktifkan multibahasa selama pembuatan proyek dan setel opsi bahasa ke bahasa sebagian besar dokumen Anda.

Penyiapan data

Sebagai prasyarat untuk membuat proyek, data pelatihan Anda perlu diunggah ke kontainer blob di akun penyimpanan Anda. Anda dapat membuat dan mengunggah dokumen pelatihan dari Azure secara langsung, atau melalui alat Azure Storage Explorer. Dengan menggunakan alat Azure Storage Explorer, Anda dapat mengunggah lebih banyak data dengan cepat.

Anda hanya dapat menggunakan .txt dokumen. Jika data Anda dalam format lain, Anda dapat menggunakan perintah urai CLUtils untuk mengubah format dokumen Anda.

Anda dapat mengunggah himpunan data beranotasi atau Anda dapat mengunggah yang tidak beranotasi dan memberi label pada data Anda di Language Studio.

Set pengujian

Saat menentukan set pengujian, pastikan untuk menyertakan contoh dokumen yang tidak ada dalam set pelatihan. Menentukan set pengujian adalah langkah penting untuk menghitung performa model. Selain itu, pastikan bahwa set pengujian menyertakan dokumen yang mewakili semua entitas yang digunakan dalam proyek Anda.

Langkah berikutnya

Jika Anda belum melakukannya, buat proyek NER kustom. Jika ini adalah pertama kalinya Anda menggunakan NER kustom, pertimbangkan untuk mengikuti mulai cepat ini untuk membuat proyek contoh. Anda juga dapat melihat artikel petunjuk untuk detail lebih lanjut tentang apa yang Anda butuhkan untuk membuat proyek.