Cara Kerja Natural Language Processing  (NLP)
Pemrosesan Bahasa Alami (NLP)
Bagian (2)
Â
Bekerja dalam pemrosesan bahasa alami (NLP) biasanya melibatkan penggunaan teknik komputasi untuk menganalisis dan memahami bahasa manusia. Mncakup tugas-tugas seperti pemahaman bahasa, pembuatan bahasa, dan interaksi bahasa.
1. Input Teks dan Pengumpulan Data
- Pengumpulan Data: Mengumpulkan data teks dari berbagai sumber seperti situs web, buku, media sosial, atau basis data milik sendiri.
- Penyimpanan Data: Menyimpan data teks yang dikumpulkan dalam format terstruktur, seperti basis data atau kumpulan dokumen.
2. Praproses Teks
Praproses sangat penting untuk membersihkan dan menyiapkan data teks mentah untuk analisis. Langkah-langkah praproses yang umum meliputi:
Tokenisasi : Membagi teks menjadi unit yang lebih kecil seperti kata atau kalimat.
Huruf kecil : Mengubah semua teks menjadi huruf kecil untuk memastikan keseragaman.
Penghapusan Stopword : Menghapus kata-kata umum yang tidak memberikan makna signifikan, seperti "dan," "itu," "adalah."
Penghapusan Tanda Baca : Menghapus tanda baca.
Stemming dan Lemmatisasi : Meringkas kata menjadi bentuk dasar atau akarnya. Stemming memotong sufiks, sedangkan lemmatisasi mempertimbangkan konteks dan mengubah kata menjadi bentuk dasar yang bermakna.
Normalisasi Teks : Standarisasi format teks, termasuk mengoreksi kesalahan ejaan, memperluas kontraksi, dan menangani karakter khusus.
Â
3. Representasi Teks
Bag of Words (BoW) : Mewakili teks sebagai kumpulan kata-kata, mengabaikan tata bahasa dan urutan kata tetapi tetap melacak frekuensi kata.
Term Frequency-Inverse Document Frequency (TF-IDF) : Statistik yang mencerminkan pentingnya kata dalam dokumen relatif terhadap kumpulan dokumen.
- Penanaman Kata : Menggunakan representasi vektor kata yang padat di mana kata-kata yang secara semantik mirip lebih berdekatan dalam ruang vektor (misalnya, Word2Vec, GloVe).
4. Ekstraksi Fitur
Mengekstrak fitur-fitur yang bermakna dari data teks yang dapat digunakan untuk berbagai tugas NLP.
N-gram : Menangkap urutan N kata untuk mempertahankan beberapa konteks dan urutan kata.
Fitur Sintaksis : Menggunakan tag bagian-bagian pidato, dependensi sintaksis, dan pohon penguraian.
Fitur Semantik : Memanfaatkan penempatan kata dan representasi lain untuk menangkap makna dan konteks kata.
5. Pemilihan dan Pelatihan Model
Memilih dan melatih model pembelajaran mesin atau pembelajaran mendalam untuk melakukan tugas NLP tertentu.
Pembelajaran Terawasi : Menggunakan data berlabel untuk melatih model seperti Support Vector Machines (SVM), Random Forests, atau model pembelajaran mendalam seperti Convolutional Neural Networks (CNN) dan Recurrent Neural Networks (RNN).
Pembelajaran Tanpa Pengawasan : Menerapkan teknik seperti pengelompokan atau pemodelan topik (misalnya, Alokasi Dirichlet Laten) pada data yang tidak berlabel.
Model yang telah dilatih sebelumnya : Memanfaatkan model bahasa yang telah dilatih sebelumnya seperti BERT, GPT, atau model berbasis transformer yang telah dilatih pada korpora besar.
Â
6. Penerapan dan Inferensi Model
Menyebarkan model terlatih dan menggunakannya untuk membuat prediksi atau mengekstrak wawasan dari data teks baru.
Klasifikasi Teks : Mengkategorikan teks ke dalam kelas-kelas yang telah ditentukan sebelumnya (misalnya, deteksi spam, analisis sentimen).
Pengenalan Entitas Bernama (NER) : Mengidentifikasi dan mengklasifikasikan entitas dalam teks.
Terjemahan Mesin : Menerjemahkan teks dari satu bahasa ke bahasa lain.
Tanya Jawab : Memberikan jawaban atas pertanyaan berdasarkan konteks yang disediakan oleh data teks.
Â
7. Evaluasi dan Optimasi
Mengevaluasi kinerja algoritma NLP menggunakan metrik seperti akurasi, presisi, ingatan, skor F1, dan lain-lain.
Penyetelan Hiperparameter : Menyesuaikan parameter model untuk meningkatkan kinerja.
Analisis Kesalahan : Menganalisis kesalahan untuk memahami kelemahan model dan meningkatkan ketahanan.
Â
8. Iterasi dan Peningkatan
Terus meningkatkan algoritma dengan menggabungkan data baru, menyempurnakan teknik praproses, bereksperimen dengan berbagai model, dan mengoptimalkan fitur.
Teknologi yang berhubungan dengan Pemrosesan Bahasa Alami
Ada berbagai teknologi yang terkait dengan pemrosesan bahasa alami (NLP) yang digunakan untuk menganalisis dan memahami bahasa manusia. Beberapa yang paling umum meliputi:
- Pembelajaran mesin: NLP sangat bergantung pada teknik pembelajaran mesin seperti pembelajaran terawasi dan tanpa pengawasan, pembelajaran mendalam, dan pembelajaran penguatan untuk melatih model guna memahami dan menghasilkan bahasa manusia.
- Natural Language Toolkits (NLTK) dan pustaka lainnya: NLTK adalah pustaka sumber terbuka populer dalam Python yang menyediakan alat untuk tugas-tugas NLP seperti tokenisasi, stemming, dan penandaan part-of-speech. Pustaka populer lainnya termasuk spaCy, OpenNLP, dan CoreNLP.
- Parser: Parser digunakan untuk menganalisis struktur sintaksis kalimat, seperti penguraian ketergantungan dan penguraian konstituensi.
- Sistem Text-to-Speech (TTS) dan Speech-to-Text (STT): Sistem TTS mengubah teks tertulis menjadi kata-kata lisan, sementara sistem STT mengubah kata-kata lisan menjadi teks tertulis.
- Sistem Pengenalan Entitas Bernama (NER) : Sistem NER mengidentifikasi dan mengekstrak entitas bernama seperti orang, tempat, dan organisasi dari teks.
- Analisis Sentimen : Sebuah teknik untuk memahami emosi atau opini yang diungkapkan dalam sebuah teks, dengan menggunakan berbagai teknik seperti metode berbasis Lexicon, berbasis Machine Learning, dan berbasis Deep Learning.
- Terjemahan Mesin: NLP digunakan untuk penerjemahan bahasa dari satu bahasa ke bahasa lain melalui komputer.
- Chatbot: NLP digunakan untuk chatbot yang berkomunikasi dengan chatbot lain atau manusia melalui metode pendengaran atau tekstual.
- Perangkat Lunak AI: NLP digunakan dalam perangkat lunak tanya jawab untuk representasi pengetahuan, penalaran analitis, serta pengambilan informasi.
Â
Aplikasi Pemrosesan Bahasa Alami (NLP)
- Filter Spam: Salah satu hal yang paling menyebalkan tentang email adalah spam. Gmail menggunakan pemrosesan bahasa alami (NLP) untuk membedakan email mana yang sah dan mana yang spam. Filter spam ini memeriksa teks di semua email yang Anda terima dan mencoba mencari tahu artinya untuk mengetahui apakah itu spam atau bukan.
- Perdagangan Algoritmik: Perdagangan algoritmik digunakan untuk memprediksi kondisi pasar saham. Dengan menggunakan NLP, teknologi ini meneliti berita utama tentang perusahaan dan saham dan mencoba memahami maknanya untuk menentukan apakah Anda harus membeli, menjual, atau menahan saham tertentu.
- Tanya Jawab: NLP dapat dilihat dalam praktiknya dengan menggunakan Google Search atau Layanan Siri. Penggunaan utama NLP adalah membuat mesin pencari memahami makna dari apa yang kita tanyakan dan menghasilkan bahasa alami sebagai balasannya untuk memberi kita jawaban.
- Merangkum Informasi: Di internet, terdapat banyak sekali informasi, dan banyak di antaranya yang berbentuk dokumen atau artikel panjang. NLP digunakan untuk menguraikan makna data dan kemudian memberikan ringkasan data yang lebih pendek sehingga manusia dapat memahaminya dengan lebih cepat.
Ruang LingkupÂ
- Bot: Chatbot membantu klien untuk langsung ke pokok permasalahan dengan menjawab pertanyaan dan mengarahkan mereka ke sumber daya dan produk yang relevan kapan saja, baik siang maupun malam. Agar efektif, chatbot harus cepat, cerdas, dan mudah digunakan. Untuk mencapai hal ini, chatbot menggunakan NLP untuk memahami bahasa, biasanya melalui interaksi teks atau pengenalan suara.
- Mendukung UI Tak Terlihat: Hampir setiap koneksi yang kita miliki dengan mesin melibatkan komunikasi manusia, baik secara lisan maupun tertulis. Amazon Echo hanyalah salah satu ilustrasi tren yang mengarah pada upaya mendekatkan manusia dengan teknologi di masa depan. Konsep antarmuka pengguna yang tak terlihat atau tanpa pengguna akan bergantung pada komunikasi langsung antara pengguna dan mesin, baik melalui suara, teks, atau kombinasi keduanya. NLP membantu mewujudkan konsep ini di dunia nyata.
- Pencarian yang Lebih Cerdas: Masa depan NLP juga mencakup pencarian yang lebih baik, sesuatu yang telah lama kami bahas di Expert System. Pencarian yang lebih cerdas memungkinkan chatbot untuk memahami permintaan pelanggan dan dapat mengaktifkan fungsi "mencari seperti Anda berbicara" (seperti Anda dapat bertanya kepada Siri) daripada berfokus pada kata kunci atau topik. Google baru-baru ini mengumumkan bahwa kapabilitas NLP telah ditambahkan ke Google Drive, yang memungkinkan pengguna untuk mencari dokumen dan konten menggunakan bahasa alami.
Peningkatan di Masa Depan
Perusahaan seperti Google bereksperimen dengan Jaringan Saraf Dalam (DNN) untuk mendorong batasan NLP dan memungkinkan interaksi manusia-mesin terasa seperti interaksi manusia-ke-manusia.
Kata-kata dasar dapat dibagi lagi menjadi semantik yang tepat dan digunakan dalam algoritma NLP.
Algoritma NLP dapat digunakan dalam berbagai bahasa yang saat ini tidak tersedia seperti bahasa daerah atau bahasa yang digunakan di daerah pedesaan, dll.
Penerjemahan kalimat dalam satu bahasa ke kalimat yang sama dalam Bahasa lain dalam cakupan yang lebih luas.
Baca konten-konten menarik Kompasiana langsung dari smartphone kamu. Follow channel WhatsApp Kompasiana sekarang di sini: https://whatsapp.com/channel/0029VaYjYaL4Spk7WflFYJ2H