Sebelum Anda dapat melatih model pada data teks, biasanya Anda perlu memproses (atau melakukan praproses) teks tersebut. Dalam banyak kasus, teks perlu ditokenisasi dan divektorisasi sebelum dapat dimasukkan ke dalam model, dan dalam beberapa kasus, teks memerlukan langkah praproses tambahan seperti normalisasi dan pemilihan fitur.
Setelah teks diproses menjadi format yang sesuai, Anda dapat menggunakannya dalam alur kerja pemrosesan bahasa alami (NLP) seperti klasifikasi teks, pembuatan teks, peringkasan, dan penerjemahan.
TensorFlow menyediakan dua pustaka untuk pemrosesan teks dan bahasa alami: KerasNLP ( GitHub ) dan TensorFlow Text ( GitHub ).
KerasNLP adalah pustaka pemodelan NLP tingkat tinggi yang mencakup semua model berbasis transformator terbaru serta utilitas tokenisasi tingkat rendah. Ini adalah solusi yang direkomendasikan untuk sebagian besar kasus penggunaan NLP. Dibangun di atas TensorFlow Text, KerasNLP mengabstraksi operasi pemrosesan teks tingkat rendah ke dalam API yang dirancang untuk kemudahan penggunaan. Namun, jika Anda tidak ingin menggunakan Keras API, atau Anda memerlukan akses ke operasi pemrosesan teks tingkat rendah, Anda dapat menggunakan TensorFlow Text secara langsung.
KerasNLP
Cara termudah untuk mulai memproses teks di TensorFlow adalah dengan menggunakan KerasNLP . KerasNLP adalah pustaka pemrosesan bahasa alami yang mendukung alur kerja yang dibangun dari komponen-komponen modular dengan bobot dan arsitektur preset yang canggih. Anda dapat menggunakan komponen KerasNLP dengan konfigurasi bawaannya. Jika Anda membutuhkan kontrol lebih, Anda dapat dengan mudah menyesuaikan komponen. KerasNLP menyediakan komputasi dalam grafik untuk semua alur kerja sehingga Anda dapat mengharapkan kemudahan produksi menggunakan ekosistem TensorFlow.
KerasNLP berisi implementasi menyeluruh dari arsitektur model populer seperti BERT dan FNet . Dengan menggunakan model, lapisan, dan tokenizer KerasNLP, Anda dapat menyelesaikan berbagai alur kerja NLP mutakhir, termasuk penerjemahan mesin , pembuatan teks , klasifikasi teks , dan pelatihan model transformator .
KerasNLP adalah ekstensi dari API inti Keras, dan setiap modul KerasNLP tingkat tinggi adalah sebuah Layer
atau Model
. Jika Anda familiar dengan Keras, Anda pasti sudah memahami sebagian besar tentang KerasNLP.
Teks TensorFlow
KerasNLP menyediakan modul pemrosesan teks tingkat tinggi yang tersedia sebagai lapisan atau model. Jika Anda memerlukan akses ke alat tingkat rendah, Anda dapat menggunakan TensorFlow Text . TensorFlow Text menyediakan operasi dan pustaka untuk membantu Anda bekerja dengan string teks dan dokumen mentah. TensorFlow Text dapat melakukan prapemrosesan yang secara rutin dibutuhkan oleh model berbasis teks, dan juga mencakup fitur-fitur lain yang berguna untuk pemodelan sekuens.
Dengan menggunakan TensorFlow Text, Anda dapat melakukan hal berikut:
- Terapkan tokenizer kaya fitur yang dapat memisahkan string pada spasi, memisahkan kata dan tanda baca, dan mengembalikan offset byte dengan token, sehingga Anda tahu di mana string dapat ditemukan dalam teks sumber.
- Periksa apakah token cocok dengan pola string yang ditentukan. Anda dapat memeriksa kapitalisasi, tanda baca, data numerik, dan fitur token lainnya.
- Gabungkan token menjadi n-gram.
- Memproses teks dalam grafik TensorFlow, sehingga tokenisasi selama pelatihan cocok dengan tokenisasi pada inferensi.
Dimana untuk memulai
Sumber daya berikut akan membantu Anda memulai pemrosesan teks TensorFlow:
- TensorFlow Text : Tutorial, panduan, dan sumber daya lainnya untuk membantu Anda memproses teks menggunakan TensorFlow Text dan KerasNLP.
- KerasNLP : Dokumentasi dan sumber daya untuk KerasNLP.
- Tutorial TensorFlow : Dokumentasi inti TensorFlow (panduan ini) mencakup beberapa tutorial pemrosesan teks.
- Google Machine Learning: Panduan Klasifikasi Teks : Pengantar langkah demi langkah untuk klasifikasi teks. Ini adalah tempat yang baik untuk memulai jika Anda baru mengenal pembelajaran mesin.