Panduan pemula AutoML Translation

Pengantar

Bayangkan bahwa Anda memiliki layanan pelaporan keuangan yang memiliki peluang untuk berekspansi ke negara-negara baru. Pasar tersebut mengharuskan agar dokumen keuangan yang mendesak untuk diterjemahkan secara real time. Alih-alih mempekerjakan staf keuangan yang dapat berbicara dua bahasa atau mengontrak penerjemah spesialis, yang memerlukan biaya tinggi karena keahlian dalam bidang mereka serta kebutuhan Anda untuk menyelesaikan terjemahan dalam waktu yang cepat, AutoML Translation dapat membantu Anda mengotomatiskan proses penerjemahan dengan cara yang skalabel, sehingga memungkinkan Anda memasuki pasar-pasar baru dengan cepat.

Terjemahan

Coba sendiri

Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa Cloud Translation dalam skenario dunia nyata. Pelanggan baru mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.

Coba Cloud Translation secara gratis

Mengapa Machine Learning (ML) merupakan alat yang tepat untuk masalah ini?

Pemrograman klasik mengharuskan programmer menentukan petunjuk langkah demi langkah yang harus diikuti oleh komputer. Namun, pendekatan yang sama tidak mungkin untuk dilakukan dalam penerjemahan. Bahasa alami sangatlah kompleks, dan demikian pula penerjemahannya. Sejak beberapa dekade lalu, terjemahan berbasis aturan sudah tidak lagi menjadi pendekatan terbaik. Kini terjemahan mesin dilakukan hampir seluruhnya menggunakan pendekatan statistik, dengan korpora paralel berskala besar yang menggantikan pakar linguistik untuk menyesuaikan kumpulan aturan yang lebih khusus secara manual.

Anda memerlukan sistem yang dapat melakukan generalisasi ke berbagai skenario terjemahan, tetapi tetap memiliki fokus pada kasus penggunaan dan domain linguistik khusus tugas pada pasangan bahasa yang penting bagi Anda. Dalam skenario ketika urutan aturan spesifik sudah pasti akan diperluas secara eksponensial, Anda memerlukan sistem yang dapat belajar dari contoh. Untungnya, sistem machine learning sangat tepat untuk menyelesaikan masalah ini.

Apakah alat yang tepat untuk saya Translation API atau AutoML Translation?

Translation API mencakup sejumlah besar pasangan bahasa dan berfungsi dengan baik dalam teks yang digunakan sehari-hari. Keunggulan AutoML Translation yang sebenarnya terletak pada "kilometer terakhir" antara tugas terjemahan umum dan kosakata khusus yang spesifik. Model kustom kami dimulai dari model Translation API umum, tetapi ditambah lapisan yang secara khusus membantu model tersebut untuk mendapatkan terjemahan yang tepat untuk konten khusus domain yang penting bagi Anda.

Membandingkan Translation API dengan AutoML Translation

Coba Translation API Mulai menggunakan AutoML

Apa saja yang tercakup dalam machine learning di AutoML Translation?

Machine learning melibatkan penggunaan data untuk melatih algoritma guna mencapai hasil yang diinginkan. Detail algoritma dan metode pelatihan berubah berdasarkan masalah yang dihadapi. Ada banyak subkategori machine learning, yang semuanya dapat memecahkan masalah yang berbeda dan bekerja dalam batasan yang berbeda. AutoML Translate memungkinkan Anda menjalankan supervised learning, yang melibatkan pelatihan komputer untuk mengenali pola dari pasangan kalimat yang diterjemahkan. Dengan supervised learning, kita dapat melatih model kustom untuk menerjemahkan konten khusus domain yang penting bagi Anda.

Persiapan Data

Untuk melatih model kustom dengan AutoML Translation, Anda menyediakan pasangan kalimat yang cocok dalam bahasa sumber dan target, yaitu pasangan kalimat yang memiliki arti sama dalam bahasa sumber dan target bahasa. Tentu saja, terjemahan bukanlah ilmu pasti, tetapi semakin dekat makna pasangan kalimat Anda, semakin baik pula performa model Anda.

Menilai kasus penggunaan Anda

Saat menyusun set data, selalu mulailah dengan kasus penggunaan. Anda bisa mulai dengan pertanyaan-pertanyaan berikut:

  • Apa hasil yang ingin Anda capai?
  • Jenis kalimat apa yang perlu Anda terjemahkan untuk mencapai hasil ini? Apakah ini tugas yang dapat langsung dilakukan Translation API?
  • Mungkinkah manusia menerjemahkan kalimat ini dengan cara yang sesuai dengan ekspektasi Anda? Jika tugas terjemahan bersifat ambigu, sehingga orang yang fasih dalam kedua bahasa mengalami kesulitan untuk menghasilkan terjemahan yang sesuai dengan ekspektasi Anda, Anda mungkin mendapati bahwa AutoML Translation juga memiliki performa yang serupa.
  • Jenis contoh apa yang paling mencerminkan jenis dan rentang data yang perlu diterjemahkan oleh sistem Anda?

Prinsip utama yang mendasari produk ML Google adalah machine learning yang berpusat pada manusia, yaitu pendekatan yang mengedepankan praktik responsible AI, termasuk keadilan. Tujuan keadilan dalam ML adalah untuk memahami dan mencegah perlakuan yang tidak adil atau merugikan orang-orang sehubungan dengan ras, pendapatan, orientasi seksual, agama, gender, dan karakteristik lain yang secara historis telah didiskriminasi dan dimarginalkan, saat perlakuan tersebut muncul dalam sistem algoritma atau pengambilan keputusan dengan bantuan algoritma. Anda dapat membaca selengkapnya dalam panduan kami dan melihat catatan "memastikan keadilan" ✽ pada pedoman di bawah ini. Saat Anda mempelajari pedoman untuk menyusun set data, sebaiknya pertimbangkan keadilan dalam machine learning, jika relevan dengan kasus penggunaan Anda.

Mendapatkan data Anda

Setelah menentukan data yang akan diperlukan, Anda harus menemukan cara untuk mendapatkannya. Anda dapat memulai dengan memperhitungkan semua data yang dikumpulkan organisasi Anda. Anda mungkin mendapati bahwa Anda sudah mengumpulkan data yang diperlukan untuk melatih model terjemahan. Jika Anda tidak memiliki data yang dibutuhkan, Anda dapat memperolehnya secara manual atau melakukan outsourcing ke penyedia pihak ketiga.

Mencocokkan data dengan domain permasalahan Anda

Anda melatih model terjemahan kustom karena memerlukan model yang sesuai dengan domain linguistik tertentu. Pastikan pasangan kalimat Anda memiliki performa yang sebaik mungkin dalam menangani keunikan kosakata, penggunaan, dan tata bahasa di industri atau area yang menjadi fokus Anda. Temukan dokumen berisi penggunaan umum yang akan Anda temui dalam tugas terjemahan yang ingin diselesaikan, dan pastikan padanan frasa Anda semirip mungkin dengan makna yang ingin disampaikan. Tentu saja, terkadang bahasa tidak dapat dipetakan dengan sempurna dalam hal kosakata atau sintaksis, tetapi cobalah untuk menangkap keragaman semantik yang Anda temui, jika memungkinkan. Anda membangun model kustom menggunakan model yang memiliki performa yang cukup baik dalam menerjemahkan teks tujuan umum - contoh Anda adalah langkah terakhir yang khusus untuk membuat AutoML Translation berfungsi secara spesifik untuk kasus penggunaan Anda, jadi pastikan model Anda relevan dan mampu mewakili penggunaan yang Anda harapkan.

Menangkap keragaman ruang linguistik Anda

Memang mudah untuk berasumsi bahwa cara orang menulis tentang domain tertentu cukup seragam, sehingga sejumlah kecil sampel teks yang diterjemahkan oleh sejumlah kecil penerjemah seharusnya cukup untuk melatih model yang memiliki performa baik untuk orang lain yang menulis tentang domain tersebut. Tapi kita semua adalah individu, dan masing-masing dari kita menghadirkan kepribadian kita dalam kata-kata yang kita tulis. Set data pelatihan dengan pasangan kalimat dari banyak pilihan penulis dan penerjemah memiliki kemungkinan yang lebih besar dalam memberi Anda model yang berguna untuk menerjemahkan tulisan dari berbagai organisasi. Selain itu, pertimbangkan berbagai panjang dan struktur kalimat; set data yang semua kalimatnya memiliki ukuran yang sama atau memiliki struktur tata bahasa yang serupa tidak akan memberikan cukup informasi pada AutoML Translation untuk membuat model baik yang mampu mencakup semua kemungkinan.

Mempertahankan human in the loop

Jika memungkinkan, pastikan ada orang yang memahami kedua bahasa tersebut yang telah memvalidasi bahwa pasangan kalimat sudah benar dan mewakili terjemahan yang dapat dipahami dan akurat. Kesalahan sederhana seperti tidak menyelaraskan barisan spreadsheet data pelatihan dapat menghasilkan terjemahan yang terdengar tidak masuk akal. Data berkualitas tinggi adalah hal terpenting yang dapat Anda berikan ke AutoML Translation untuk mendapatkan model yang dapat digunakan untuk bisnis Anda.

Membersihkan data yang berantakan

Sangat mudah untuk membuat kesalahan saat prapemrosesan, dan beberapa kesalahan tersebut dapat benar-benar membingungkan model AutoML Translation. Utamanya, temukan masalah data berikut yang dapat Anda perbaiki:

  • Hapus kalimat sumber duplikat, terutama jika kalimat tersebut memiliki terjemahan target yang berbeda. AutoML Translation hanya menggunakan contoh yang pertama kali dilihat dan menghapus semua pasangan lainnya pada waktu impor. Dengan menghapus duplikat, Anda memastikan AutoML Translation menggunakan terjemahan pilihan Anda.
  • Selaraskan kalimat sumber ke kalimat target yang benar.
  • Cocokkan kalimat dengan bahasa yang ditentukan; misalnya, hanya sertakan kalimat bahasa China dalam set data bahasa China.
  • Untuk kalimat target yang menyertakan bahasa campuran, pastikan bahwa kata yang tidak diterjemahkan sengaja tidak diterjemahkan, seperti nama produk atau organisasi. Kalimat target yang keliru menyertakan kata yang tidak diterjemahkan akan menambah derau pada data pelatihan Anda, yang dapat menghasilkan model berkualitas lebih rendah.
  • Perbaiki kalimat yang memiliki kesalahan tipografi atau tata bahasa sehingga model Anda tidak belajar dari kesalahan ini.
  • Hapus konten yang tidak dapat diterjemahkan, seperti tag placeholder dan tag HTML. Konten yang tidak dapat diterjemahkan dapat menyebabkan error tanda baca.
  • Hapus konten khusus lokalitas. Informasi yang ditujukan untuk lokal yang berbeda mungkin tidak dapat diterjemahkan secara langsung, seperti nomor telepon untuk lokalitas tertentu.
  • Jangan menyertakan terjemahan yang menggantikan entitas umum dengan kata benda spesifik. Misalnya, Anda mungkin memiliki contoh yang mengubah "presiden" menjadi nama presiden tertentu, seperti "JFK" atau "John F Kennedy". Model dapat belajar untuk mengubah semua instance "presiden" menjadi "JFK". Sebagai gantinya, hapus terjemahan ini atau ubah kata benda tertentu menjadi kata benda yang umum.
  • Hapus kalimat duplikat dalam set pelatihan dan pengujian. (Pelajari set pelatihan dan pengujian lebih lanjut)
  • Bagi beberapa kalimat menjadi pasangan kalimat yang berbeda. Melakukan pelatihan pada set data dengan banyak item yang memiliki lebih dari 50 token (kata) akan menghasilkan model berkualitas lebih rendah. Bagi item menjadi kalimat individu, jika memungkinkan.
  • Gunakan huruf besar/kecil yang konsisten. Penggunaan huruf besar/kecil memengaruhi cara model belajar, misalnya, untuk membedakan teks judul dengan isi.
  • Hapus tag TMX saat mengimpor data ke dari file TSV. Dalam beberapa kasus, Anda dapat mengekspor memori terjemahan yang sudah ada ke file TSV, yang mungkin menyertakan tag TMX. Namun, AutoML Translation hanya menghapus tag unit terjemahan saat Anda mengimpor file TMX (bukan untuk file TSV).

Cara AutoML melakukan prapemrosesan data

AutoML Translation akan berhenti mengurai file input data Anda saat:

  • Ada format yang tidak valid
  • Ada pasangan kalimat yang terlalu panjang (10 MB)
  • File menggunakan encoding selain UTF-8

AutoML Translation mengabaikan error untuk masalah yang dapat dideteksi, seperti:

  • Elemen <tu> dalam file TMX tidak memiliki bahasa sumber atau target bahasa.
  • Salah satu pasangan kalimat input kosong.

Dalam mode AutoSplit, AutoML Translation melakukan pemrosesan tambahan:

  • Setelah set data diupload, AutoML Translation akan menghapus pasangan kalimat dengan kalimat sumber yang sama.
  • AutoML Translation membagi data Anda secara acak menjadi tiga set dengan rasio pembagian 8:1:1 sebelum pelatihan.

Pertimbangkan bagaimana AutoML Translation menggunakan set data Anda saat membuat model kustom

Set data Anda berisi set pelatihan, validasi, dan pengujian. Jika pembagian tersebut tidak ditentukan (silakan melihat Mempersiapkan data pelatihan Anda dan set data Anda berisi kurang dari 100.000 pasangan kalimat, AutoML Translation akan otomatis menggunakan 80% dokumen konten Anda untuk pelatihan, 10% untuk validasi, dan 10% untuk pengujian. Jika data Anda lebih besar dari itu, Anda harus melakukan pembagian data sendiri.

Set Pelatihan

Sebagian besar data Anda harus berada dalam set pelatihan. Ini adalah data yang "dilihat" model Anda selama pelatihan: data ini digunakan untuk mempelajari parameter model, yaitu bobot koneksi antara node jaringan neural.

Set Validasi

Set validasi, yang terkadang disebut sebagai set "dev", juga digunakan selama proses pelatihan. Selama pembelajaran model, framework menggunakan set pelatihan untuk melatih serangkaian model kandidat, kemudian menggunakan performa model pada set validasi untuk memilih model terbaik yang dihasilkan. Framework tersebut menggunakan performa model pada set validasi untuk menyesuaikan hyperparameter model, yang merupakan variabel yang menentukan struktur model. Jika Anda menggunakan set pelatihan untuk menyesuaikan hyperparameter, model tersebut akan terlalu fokus pada data pelatihan Anda. Menggunakan set data yang cukup baru untuk menyesuaikan struktur model berarti model Anda akan digeneralisasi dengan lebih baik.

Set Pengujian

Set pengujian sama sekali tidak terlibat dalam proses pelatihan. Setelah model telah sepenuhnya menyelesaikan pelatihan, kami akan menggunakan set pengujian sebagai tugas yang benar-benar baru untuk model Anda. Performa model dalam set pengujian dimaksudkan untuk memberikan gambaran yang cukup baik tentang performa model Anda pada data dunia nyata.

Pembagian Manual

AutoML dapat membagi data Anda menjadi set pelatihan, validasi, dan pengujian untuk Anda, atau Anda dapat melakukannya sendiri jika ingin memiliki kontrol yang lebih besar atas prosesnya, jika Anda menginginkan persentase pembagian yang berbeda, atau jika ada contoh tertentu yang yakin ingin disertakan dalam bagian tertentu dari siklus proses pelatihan model Anda.

 

Menyiapkan data Anda untuk diimpor

Setelah memutuskan apakah pembagian data manual atau otomatis tepat untuk Anda, ada dua cara untuk menambahkan data di AutoML Translation:

  • Anda dapat mengimpor data sebagai file nilai yang dipisahkan tab (TSV) yang berisi kalimat sumber dan target, dengan satu pasangan kalimat per baris.
  • Anda dapat mengimpor data sebagai file TMX, yang merupakan format standar untuk menyediakan pasangan kalimat ke alat model terjemahan otomatis (pelajari format TMX yang didukung lebih lanjut). Jika file TMX berisi tag XML yang tidak valid, AutoML Translation akan mengabaikannya. Jika file TMX tidak sesuai dengan format XML dan TMX yang tepat – misalnya, jika file tidak memiliki tag akhir atau elemen <tmx> – AutoML Translation tidak akan memprosesnya. AutoML Translation juga mengakhiri pemrosesan dan menampilkan error jika sudah melewati lebih dari 1.024 elemen <tu> yang tidak valid.

Evaluasi

Setelah model dilatih, Anda akan menerima ringkasan performa model Anda. Klik tab Latih setelah model menyelesaikan pelatihan untuk melihat analisis mendetail.

Apa yang harus saya perhatikan sebelum mengevaluasi model saya?

Proses debug model seharusnya lebih difokuskan pada proses debug data, dan bukan pada model itu sendiri. Jika model Anda mulai bertindak secara tidak terduga saat Anda mengevaluasi performanya sebelum dan setelah dikirim ke produksi, Anda harus kembali dan memeriksa data untuk melihat bagian yang dapat ditingkatkan.

Skor BLEU

Skor BLEU adalah cara standar untuk mengukur kualitas sistem terjemahan mesin. AutoML Translation menggunakan skor BLEU yang dihitung pada data pengujian yang Anda berikan sebagai metrik evaluasi utamanya. (Pelajari skor BLEU lebih lanjut.)

Model Google NMT, yang mendukung Translation API, dibuat untuk penggunaan umum. Model ini mungkin bukan solusi terbaik jika Anda menginginkan terjemahan khusus untuk bidang Anda sendiri. Model kustom yang dilatih biasanya memiliki performa yang lebih baik daripada model NMT dalam bidang yang terkait dengan set pelatihan Anda.

Setelah melatih model kustom dengan set data Anda sendiri, skor BLEU dari model kustom dan model Google NMT akan ditampilkan di tab Latih. Ada juga peningkatan performa skor BLEU dari model kustom di tab Latih. Semakin tinggi skor BLEU, semakin baik pula terjemahan yang dapat diberikan model Anda untuk kalimat yang mirip dengan data pelatihan Anda. Jika skor BLEU berada dalam rentang 30-40, model dianggap dapat memberikan terjemahan yang baik.

Menguji model Anda

Meskipun skor BLEU terlihat bagus, sebaiknya periksa sendiri model untuk memastikan performanya sesuai dengan ekspektasi Anda. Jika data pelatihan dan pengujian Anda diambil dari kumpulan sampel yang sama dan salah, skornya mungkin akan sangat baik meski terjemahannya tidak masuk akal. Buat beberapa contoh pengujian mandiri untuk di-input pada tab Prediksi AutoML Translation dan bandingkan dengan hasil dari model dasar Google NMT, atau gunakan petunjuk terkait untuk memanggil AutoML API agar dapat menggunakan model Anda dalam pengujian otomatis. Anda mungkin mendapati bahwa model Anda menghasilkan prediksi yang sama dengan model dasar, terutama pada kalimat pendek, atau jika Anda memiliki set pelatihan yang lebih kecil. Hal ini wajar - model dasarnya sudah memiliki performa yang cukup bagus untuk berbagai kasus penggunaan. Coba beberapa kalimat yang lebih panjang atau lebih kompleks. Namun, jika semua hasil kalimat Anda sama dengan prediksi dari model dasar, hal ini mungkin mengindikasikan masalah data.

Jika Anda mengkhawatirkan kesalahan yang kemungkinan dapat dibuat oleh model, (misalnya, fitur pasangan bahasa yang membingungkan yang sering kali juga dapat membingungkan penerjemah manusia, atau kesalahan terjemahan yang mungkin sangat merugikan dalam hal kapital atau reputasi) pastikan set atau prosedur pengujian Anda mencakup kasus tersebut dengan memadai, agar Anda merasa tenang saat menggunakan model dalam tugas sehari-hari.