Memahami Analisis Semantik Menggunakan Python – NLP


Bagaimana mesin memahami bahasa kita? Recruitment ini membahas analisis semantik, area penting dalam pemrosesan bahasa alami (NLP)

Menuju Tim AI

Penulis: Daksh Trehan, Roberto Iriondo

Kita hidup di dunia yang semakin bergantung pada mesin. Baik itu Siri, Alexa, atau Google, mereka semua dapat memahami bahasa manusia (kebanyakan). Tapi bagaimana mereka melakukannya? Hari ini kita akan mengeksplorasi bagaimana beberapa perkembangan terbaru dalam NLP (Natural Language Processing) dapat memudahkan kita dalam memproses dan menganalisis teks.

Bisakah komputer memahami dan menanggapi bahasa manusia? Salah satu pertanyaan paling mendasar dalam Ilmu Komputer. Manusia telah membahas subjek ini selama berabad-abad: dapatkah mesin “berpikir”, apakah mereka “merasakan”, seberapa dekat kita dengan menciptakan mesin berpikir?

Bagi banyak dari kita, mesin dan komputer adalah misteri. Mereka melakukan apa yang kami app untuk mereka lakukan, tetapi mereka terus-menerus belajar dan beradaptasi (yang menakutkan dalam beberapa kasus). Salah satu hal yang menarik tentang komputer dan kecerdasan buatan adalah bagaimana mereka dapat memahami bahasa manusia. Bagaimana mereka bisa begitu cerah? Sebenarnya, apa yang membuat bahasa kita begitu cerdas sehingga bisa menyampaikan begitu banyak makna dalam beberapa kata? Memahami konsep-konsep ini sangat penting jika kita menginginkan komunikasi yang mulus antara manusia dan komputer. Artikel ini akan menjelaskan bagaimana analisis semantik bekerja dan menguraikan dasar-dasar Python untuk membangun sistem terkait NLP menggunakan salah satu teknik NLP yang paling penting: analisis semantik.

NLP, atau pemrosesan bahasa alami, telah ada selama beberapa dekade. Sangat menarik sebagai seorang pengembang untuk melihat bagaimana mesin dapat mengambil banyak kata dan mengubahnya menjadi data yang bermakna. Itu membutuhkan sesuatu yang kita gunakan sehari-hari, bahasa, dan mengubahnya menjadi sesuatu yang dapat digunakan untuk banyak tujuan. Mari kita lihat beberapa contoh seperti apa proses ini dan bagaimana kita dapat menggunakannya dalam kehidupan kita sehari-hari.

Kami sebelumnya telah merilis tutorial mendalam tentang pemrosesan bahasa alami menggunakan Python. Kali ini, kami ingin menjelajahi analisis semantik secara lebih detail dan menjelaskan apa yang sebenarnya terjadi dengan algoritme yang memecahkan masalah kami. Sumber daya pendamping tutorial ini tersedia di Github dan implementasi penuhnya juga di Google Colab.

Para ahli mendefinisikan bahasa alami sebagai cara kita berkomunikasi dengan rekan kita. Dari ucapan ke teks, semuanya adalah bagian dari bahasa alami. Lihatlah ke sekeliling, dan kita akan mendapatkan ribuan contoh bahasa alami mulai dari surat kabar hingga nasihat yang tidak diinginkan dari sahabat.

Untuk mesin, berurusan dengan bahasa alami itu rumit karena aturannya berantakan dan tidak ditentukan. Bayangkan bagaimana seorang anak menghabiskan waktu bertahun-tahun dalam pendidikannya untuk mempelajari dan memahami bahasa, dan kami berharap mesin dapat memahaminya dalam hitungan detik. Untuk menangani information tekstual semacam itu, kami menggunakan Pemrosesan Bahasa Alami, yang bertanggung jawab atas interaksi antara pengguna dan mesin menggunakan bahasa alami.

Algoritme Pembelajaran Mesin sebagian besar berdasarkan statistik dan bekerja pada angka dan angka, yang merupakan tantangan nyata dari Natural Language. Agar mesin memahami theme kita menggunakan Natural Speech, kita perlu mengubah information tekstual kita ke bentuk yang dapat dimengerti mesin, yaitu angka dalam kasus ini. Tantangan lain yang diajukan version tekstual kita adalah bagaimana membuat version kita memahami theme kita. Seperti yang telah dibahas, aturan all-natural Language berantakan dan longgar, dan mentransfer ide-ide kita ke mesin menggunakan pemrosesan bahasa all-natural adalah tugas yang sulit. Jadi, untuk memudahkan proses, kami telah membuat seperangkat aturan yang telah ditentukan sebelumnya:

Gambar 1: Jenis analisis pemrosesan bahasa alami.

Analisis Leksikal: Ini melibatkan analisis struktur kata, yaitu, memecah potongan teks menjadi paragraf, kalimat, dan kata-kata.

Dua teknik yang paling umum adalah:

Lemmatisasi: Dalam hal ini, kita memerlukan part-of-speech sebelumnya yang menjadi dasar untuk mengonversi kata berikutnya menjadi bentuk akarnya Gambar two: Contoh lemmatisasi. Stemming: Ini adalah konversi kata-kata berbasis aturan dan berfungsi tanpa konteks untuk mendapatkan bentuk generik. Gambar 3: Contoh stemming.

Analisis Sintaksis: Motifnya adalah untuk memeriksa sintaks tata bahasa kalimat. misalnya, “Anak laki-laki adalah laki-laki”. Pengurai akan menolak kalimat ini karena kata-kata tersebut diacak. Meskipun kalimat tersebut menghasilkan makna yang benar, struktur tata bahasanya cacat.

Analisis sintaksis meliputi menganalisis hubungan gramatikal antar kata dan memeriksa pengaturannya dalam kalimat. Part of speech label dan Dependency Grammar memainkan bagian key dalam langkah ini.

Analisis Semantik: Langkah ini bertanggung jawab untuk menghasilkan kemungkinan makna kalimat dengan menggabungkan makna tingkat kata bersama. Ini membantu untuk mengidentifikasi elemen teks dan menemukan makna logisnya.

misalnya,”warna merah” mungkin tampak benar secara tata bahasa, tetapi secara logis itu tidak relevan, sehingga Penganalisis Semantik akan membuangnya.

Integrasi Pengungkapan: Ini berfokus pada pernyataan sebelumnya dan berikutnya untuk menghasilkan arti dari pernyataan saat ini. Ini mengikuti pendekatan berbasis aturan yang terorganisir.

misalnya, “Tom mengalami kecelakaan karena dia terlalu ngebut.” Dengan menggunakan kalimat ini, kita dapat menyimpulkan bahwa Tom mengalami kecelakaan dan itu adalah kesalahannya, tetapi jika kita menghapus beberapa frase atau hanya mempertimbangkan beberapa frase, artinya dapat diubah.

Analisis Pragmatis: Ini membantu mengungkap makna ekstra yang tidak diarahkan dalam teks yang membutuhkan pengetahuan dunia yang luas dan pemahaman konteks.

misalnya, “Bank menolak pinjaman mereka karena mereka tidak memiliki skor kredit yang baik.”

“Bank menolak pinjaman mereka karena mereka takut tidak akan membayar kembali.”

Arti kata”mereka” dalam dua kalimat tersebut sangat berbeda, dan untuk mengetahui perbedaannya, kami membutuhkan pengetahuan dunia dan konteks pembuatan kalimat.

Analisis semantik dapat disebut sebagai proses menemukan makna dari teks. Teks adalah bagian key dari komunikasi, dan sangat penting untuk memahami apa yang disampaikan teks dan juga dalam skala besar. Sebagai manusia, kita menghabiskan bertahun-tahun pelatihan dalam memahami bahasa, jadi ini bukanlah proses yang membosankan. Namun, mesin membutuhkan seperangkat aturan yang telah ditentukan sebelumnya untuk hal yang sama.

Analisis Semantik adalah teknik yang kami harapkan mesin kami untuk mengekstrak makna logis dari teks kami. Ini memungkinkan komputer untuk menafsirkan struktur bahasa dan arrangement tata bahasa dan mengidentifikasi hubungan antar kata, sehingga menciptakan makna.

Ini mencerna struktur logis dan mencoba mengidentifikasi elemen best dalam teks dan hubungan antara konsep yang berbeda. misalnya, Model dapat dengan mudah memahami konsep teks tentang “Sepakbola” meskipun tidak berisi kata-kata yang sebenarnya tetapi teks terkait seperti “Messi”, “Ronaldo”, “Serie-A”, “BRFootball”.

Ini adalah kekuatan pendorong di balik banyak kasus penggunaan pembelajaran mesin seperti chatbots, mesin pencari, layanan cloud berbasis NLP. Karena analisis semantik membantu untuk memahami arti sebenarnya di balik kalimat tersebut, itu banyak digunakan di antara raksasa informasi untuk berpotensi mendapatkan ide pelanggan terhadap organisasi dengan mengekstrak informasi yang berarti dari information tidak terstruktur seperti email, tweet, tiket dukungan, ulasan dan dengan demikian mengambil langkah-langkah untuk meningkatkan umpan balik.