Pendahuluan Natural Language Processing (NLP)

Natural Language Processing

Apa itu Natural Language Processing (NLP) ?

Natural Language Processing atau NLP adalah subset bidang yang berkaitan dengan interaksi antara komputer dan bahasa manusia (misalnya bahasa Indonesia) – baik dari ucapan maupun teks.

Software yang diaplikasikan NLP banyak digunakan dalam kehidupan sehari-hari dengan berbagai cara, contoh:

  • Asisten pribadi :
    • Siri
    • Cortana
    • Asisten Google
  • Pelengkapan otomatis:
    • Sistem translasi bahasa mesin Google
  • Pengoreksi teks:
    • IDE/Text Editor
      • Visual Studio
      • Sublime Text
    • Aplikasi Desktop
      • Microsoft Word
      • Microsoft Excel

 Mengapa Natural Language Processing (NLP) Susah

Bahasa manusia istimewa karena beberapa alasan. Ini secara khusus dibangun untuk menyampaikan maksud pembicara/penulis. Ini adalah sistem yang kompleks, meskipun anak-anak kecil dapat mempelajarinya dengan cukup cepat.

Hal lain yang luar biasa tentang bahasa manusia adalah bahwa itu semua tentang simbol. Menurut Chris Manning, seorang profesor pembelajaran mesin di Stanford, ini adalah sistem pensinyalan yang diskrit, simbolis, dan kategoris. Ini berarti kita dapat menyampaikan makna yang sama dengan cara yang berbeda (yaitu, ucapan, isyarat, tanda, dll.) Pengkodean oleh otak manusia adalah pola aktivasi berkelanjutan di mana simbol ditransmisikan melalui sinyal suara dan penglihatan yang berkelanjutan.

Memahami bahasa manusia dianggap sebagai tugas yang sulit karena kompleksitasnya. Misalnya, ada banyak sekali cara berbeda untuk menyusun kata dalam sebuah kalimat. Juga, kata-kata dapat memiliki beberapa arti dan informasi kontekstual diperlukan untuk menafsirkan kalimat dengan benar. Setiap bahasa kurang lebih unik dan ambigu. Lihat saja judul surat kabar berikut “Bayi Paus menginjak gay.” Kalimat ini jelas memiliki dua interpretasi yang sangat berbeda, yang merupakan contoh yang cukup bagus dari tantangan dalam NLP.

Perhatikan bahwa pemahaman bahasa yang sempurna oleh komputer akan menghasilkan AI yang dapat memproses seluruh informasi yang tersedia di internet, yang pada gilirannya mungkin akan menghasilkan kecerdasan umum buatan.

Bagaimana cara Komputer mengerti Teks

Komputer tidak bisa langsung memahami tipe data string (teks) secara langsung. Oleh karena itu, data teks string tersebut harus dirubah lebih dahulu dari string menjadi nilai integer. Ini biasanya dilakukan dengan tokenisasi.

  Tokenisasi

Secara esensinya, tokenisasi merupakan cara dimana kita memisahkan suatu kalimat menjadi suatu urutan angka yang bersekuensi berdasarkan kata-kata tersebut. Kata-kata yang sudah di tokenisasi menjadi nilai integer (bilangan bulat) dipanggil tokens.

Tokenisasi sendiri terbagi menjadi beberapa jenis, supaya berikut contoh tokenisasi. Misal ada kalimat “saya suka nlp”

  • Tokenisasi kata-kata akan membelah kalimat menjadi :
    • [“saya”, “suka”, “nlp”]
  • Tokenisasi karakter akan membelah kalimat menjadi :
    • [“s”, “a”, “y”, “a”, ” “, “s”, “u”, “k”, “a”, ” “, “n”, “l”, “p”]

Tokenisasi sub-kata sendiri bersifat heuristik, dan bergantung dari data dan algoritma yang ditentukan untuk tokenisasi sub-kata itu sendiri membelah kalimat. Contoh tersimple adalah “membelah” menjadi [“mem”, “belah”] dimana ia memisah ejaan dan kata kerja.

Tokenisasi sub-kata sendiri terbagi menjadi beberapa jenis, seperti :

  • BPE (Byte Pair Encoding), tokenisasi yang digunakan GPT-N (baik GPT-1, GPT-2 maupun GPT-3)
  • WordPiece, tokenisasi yang digunakan BERT
  • Unigram

Jenis-Jenis Natural Language Processing (NLP)

Natural Language Processinng (NLP), Natural Language Generation (NLG) and Natural Language Understanding (NLU) diagram

Natural Language Processing (NLP) sendiri terbagi menjadi 2 jenis.

Natural Language Generation (NLG)

NLG merupakan bidang subset dari Natural Language Processing (NLP), dimana NLG sering digunakan untuk pemrograman kecerdasan buatan (AI) untuk menghasilkan struktur paragraf/narasi tertulis atau teks dari kumpulan data. NLG yang terkait dengan interaksi manusia-ke-mesin maupun mesin-ke-manusia, biasanya dipanggil komputasi linguistik, Natural Language Processing (NLP), dan Natural Language Understanding (NLU).

Penelitian yang terkait dengan NLG sering berfokus pada pembuatan program komputer yang menyediakan titik data dengan konteks kalimat tersebut. Software NLG yang canggih dapat melakukan data mining yang bersifat numerik dalam jumlah yang sangat besar, mengidentifikasi pola dari data tersebut, dan membagikan informasi itu dengan cara yang mudah dipahami manusia. Kecepatan (disini kecepatan dikaitkan dengam waktu komputasi) aplikasi NLG sangat berguna untuk menghasilkan berita dan cerita yang sensitif dengan waktu lainnya di internet (real-time application). Keluaran NLG yang bagus dapat memprediksi kata demi kata sehingga dapat dijadikan menjadi aplikasi dunia nyata, seperti konten web, artikel, dan masih banyak lagi.

Banyak riset yang sudah dilakukan di NLG hingga digunakan di aplikasi dunia nyata maupun bisnis, seperti :

Natural Language Understanding (NLU)

Natural Language Understanding (NLU) merupakan bidang subset dari Natural Language Processing (NLP), yang melibatkan transformasi bahasa manusia menjadi format yang dapat dibaca mesin.

Natural Language Understanding (NLU) ditujukan untuk komputer mempelajari dan memahami data teks yang diberikan. Ini bisa memungkinkan melalui Machine Learning (supervised maupun unsupervised) dan metode NLP. Adapun juga metode reinforcement learning untuk mendorong pemahaman komputer lebih lanjut mengenai arti dari data teks yang diberikan.

Baca juga : Jenis Jenis Machine Learning yang harus Kamu Tahu di 2022

Dengan bantuan Natural Language Understanding (NLU) dan Machine Learning, komputer dapat secara otomatis menganalisis data teks dalam hitungan detik (bergantung juga dengan time complexity dan daya komputasi dari hardware), menghemat banyak waktu dan sumber daya bisnis saat menganalisis data teks dari user.

Banyak riset yang sudah dilakukan di NLU sehingga digunakan juga di aplikasi dunia nyata maupun bisnis, seperti :

Tinggalkan Komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *