Pencabar sumber terbuka menggunakan Terjemahan Google

Para penyelidik telah melancarkan sistem rangkaian neural sumber terbuka untuk melakukan terjemahan bahasa yang dapat menjadi alternatif bagi perkhidmatan terjemahan kotak hitam milik.

Open Source Neural Machine Translation (OpenNMT) menggabungkan kerja dari penyelidik di Harvard dengan sumbangan dari pencipta perisian terjemahan mesin lama Systran. Ia berjalan pada kerangka pengkomputeran saintifik Torch, yang juga digunakan oleh Facebook untuk projek pembelajaran mesinnya.

Sebaik-baiknya, OpenNMT dapat berfungsi sebagai alternatif terbuka untuk projek sumber tertutup seperti Google Translate, yang baru-baru ini mendapat perombakan rangkaian neural utama untuk meningkatkan kualiti terjemahannya.

Tetapi algoritma bukan bahagian yang sukar; ia hadir dengan sumber data yang baik untuk menyokong proses terjemahan — di mana Google dan syarikat gergasi awan lain yang menyediakan terjemahan mesin sebagai perkhidmatan mempunyai kelebihan.

Bercakap dengan lidah

OpenNMT, yang menggunakan bahasa Lua untuk berinteraksi dengan Torch, berfungsi seperti produk lain di kelasnya. Pengguna menyiapkan sekumpulan data yang mewakili dua pasangan bahasa yang akan diterjemahkan — biasanya teks yang sama dalam kedua bahasa seperti yang diterjemahkan oleh penterjemah manusia. Setelah melatih OpenNMT mengenai data ini, pengguna kemudian dapat menggunakan model yang dihasilkan dan menggunakannya untuk menterjemahkan teks.

Torch dapat memanfaatkan percepatan GPU, yang bermaksud proses latihan untuk model OpenNMT dapat mempercepat banyaknya pada sistem yang dilengkapi GPU. Walaupun begitu, proses latihan dapat memakan waktu yang lama— "kadang-kadang bertahun-minggu." Tetapi proses latihan dapat diambil dan dilanjutkan berdasarkan permintaan jika diperlukan. Sekiranya anda ingin menggunakan model terlatih pada CPU dan bukan GPU, anda perlu menukar model tersebut ke dalam mod CPU. OpenNMT menyediakan alat untuk melakukan perkara yang betul.

Demo langsung yang disediakan oleh Systran mendakwa menggunakan OpenNMT bersempena dengan karya Systran sendiri. Untuk pasangan bahasa biasa seperti Inggeris / Perancis, terjemahannya agak tepat. Untuk pasangan di mana terdapat kemungkinan teks yang lebih kecil tersedia, atau di mana pasangan bahasa tidak saling memetakan dengan tepat antara satu sama lain — katakanlah, Bahasa Inggeris / Jepun — terjemahannya sedikit lebih jelas dan tidak tepat. Dalam satu contoh ayat Jepun, demo Systran keliru dengan kata "camar" dalam bahasa Jepun sebagai "gulungan gantung;" Terjemahan Google menerjemahkannya dengan betul.

Perkataan, kata, kata

Elemen paling penting yang belum dibekalkan oleh OpenNMT adalah data model bahasa yang telah dilatih. Pautan ke Model Contoh di laman GitHub untuk projek ini menghasilkan ralat. Mungkin pada waktunya ini akan menampilkan data sampel yang dapat digunakan untuk membuat penanda aras sistem atau merasakan bagaimana proses latihan dan penerapan berfungsi. Tetapi kemungkinan tidak termasuk data yang dapat digunakan dalam lingkungan produksi.

Ini mengehadkan betapa berguna OpenNMT di luar kotak, kerana data model sekurang-kurangnya sangat penting untuk terjemahan mesin seperti algoritma itu sendiri. Menterjemahkan antara pasangan bahasa memerlukan korporat selari, atau teks dalam kedua-dua bahasa yang saling berkaitan antara satu sama lain pada tahap ayat demi ayat atau frasa demi frasa, dan dapat dilatih untuk menghasilkan model dalam produk seperti OpenNMT.

Banyak korporat tersedia secara percuma, tetapi memerlukan penyatuan bersama-sama dengan tangan untuk menjadi berguna kepada rata-rata pemaju. Penjual seperti Google — dan IBM, dengan sistem Penterjemah Bahasa di Watson — mempunyai kelebihan kerana mereka dapat membina syarikat dengan mudah dengan perkhidmatan mereka yang lain. Google secara automatik dapat mengumpulkan sejumlah besar data bahasa yang sentiasa diperbaharui melalui mesin cariannya.

Namun, OpenNMT pasti berguna bagi mereka yang ingin membina fungsi baru di atas kod pemodelan dan latihan OpenNMT, dan tidak mahu bergantung pada algoritma API di belakang seperti Google untuk melakukannya.