Text Processing pada Sentiment Labelled Sentences

Salma Ashiila Rabbani

Sosial Media


1 orang menyukai ini
Suka

Summary

Text processing adalah proses pengolahan dan analisis teks dalam bentuk tulisan. Hal ini melibatkan penggunaan algoritma dan teknik komputasi untuk memanipulasi dan memahami informasi yang terkandung dalam teks. Beberapa langkah umum dalam text processing meliputi:

  1. Pembersihan (Cleaning)
  2. Tokenisasi
  3. Normalisasi
  4. Stopword Removal
  5. Stemming atau Lemmatization
  6. Analisis dan Ekstraksi Fitur
  7. Klasifikasi, Klasifikasi Sentimen, atau Pemrosesan Lainnya

Langkah-langkah tersebut memberikan kerangka dasar untuk memproses teks dalam bentuk yang lebih terstruktur dan memungkinkan analisis lebih lanjut. Namun, langkah-langkah yang tepat dapat bervariasi tergantung pada tujuan dan jenis analisis yang dilakukan.

Description

Text processing adalah proses pengolahan teks menggunakan komputer untuk mengubah, memanipulasi, dan menganalisis teks dengan tujuan tertentu. Tahapan umum dalam text processing meliputi:

 

Pembersihan (Cleaning)

Pembersihan (Cleaning) adalah tahap awal dalam text processing yang bertujuan untuk membersihkan teks dari karakter-karakter yang tidak diinginkan atau tanda baca yang tidak relevan. Beberapa langkah yang umum dilakukan dalam tahap pembersihan adalah:

  • Penghapusan tanda baca: Tanda baca seperti titik, koma, tanda tanya, dan tanda seru sering kali tidak memberikan kontribusi signifikan dalam analisis teks. Oleh karena itu, tahap ini melibatkan penghapusan tanda baca yang tidak diperlukan agar fokus dapat diberikan pada kata-kata dan makna yang lebih penting.
  • Menghapus karakter khusus: Beberapa teks mungkin mengandung karakter khusus seperti simbol, emoji, atau karakter aneh. Tahap pembersihan ini melibatkan penghapusan karakter-karakter tersebut agar tidak mengganggu analisis atau pengolahan lebih lanjut.
  • Menghilangkan angka: Jika teks yang sedang diproses tidak berkaitan dengan data numerik, maka menghilangkan angka dari teks dapat membantu menjaga fokus pada kata-kata dan makna yang lebih relevan.
  • Menghapus spasi ekstra: Teks kadang-kadang memiliki spasi yang berlebihan, baik di antara kata-kata maupun di awal atau akhir teks. Pada tahap ini, spasi ekstra dihapus untuk menyederhanakan dan membersihkan teks.
  • Menghilangkan URL atau tag HTML: Jika teks mengandung URL atau tag HTML, seringkali tidak relevan untuk analisis teks. Oleh karena itu, tahap ini melibatkan penghapusan URL atau tag HTML dari teks.

Tahap pembersihan adalah langkah kritis dalam text processing karena membersihkan teks dari elemen-elemen yang tidak diinginkan atau tidak relevan dapat meningkatkan kualitas hasil analisis dan memastikan bahwa fokus tetap pada informasi yang penting.
 

Tokenisasi: 

Tokenisasi adalah langkah dalam text processing di mana teks dibagi menjadi unit-unit terpisah yang disebut token. Token dapat berupa kata, frasa, atau karakter tergantung pada kebutuhan analisis. Tokenisasi adalah langkah penting karena memungkinkan komputer untuk memahami struktur dan makna dari teks yang diproses. Beberapa aspek penting dalam tokenisasi adalah:

  • Pembagian kata: Teks sering kali terdiri dari kata-kata yang merupakan unit dasar dalam bahasa. Dalam tokenisasi, teks dibagi menjadi kata-kata terpisah. Misalnya, kalimat "Saya suka makan nasi goreng" akan di-tokenisasi menjadi ["Saya", "suka", "makan", "nasi", "goreng"]. Pembagian kata penting untuk analisis teks karena kata-kata sering menjadi unit dasar dalam pemahaman bahasa alami.
  • Frasa atau pengelompokan kata: Selain membagi teks menjadi kata-kata terpisah, tokenisasi juga dapat melibatkan pengelompokan kata menjadi frasa. Frasa dapat terdiri dari dua atau lebih kata yang memiliki makna khusus ketika digabungkan bersama. Misalnya, dalam kalimat "mesin pencari" frasa ini memiliki makna spesifik yang berbeda dibandingkan dengan kata-kata yang diambil secara terpisah.
  • Karakter terpisah: Dalam beberapa kasus, terkadang diperlukan untuk membagi teks menjadi karakter terpisah. Ini dapat terjadi dalam pengolahan teks yang lebih lanjut seperti pemodelan bahasa karakter atau analisis teks yang mempertimbangkan setiap karakter secara individual.

Tokenisasi memungkinkan teks untuk diolah secara lebih terperinci dan memungkinkan analisis yang lebih lanjut seperti ekstraksi fitur, klasifikasi, atau pemodelan bahasa. Melalui langkah ini, komputer dapat memahami struktur teks dan menginterpretasikan makna dari unit-unit yang terpisah.

 

Normalisasi: 

Normalisasi melibatkan mengubah teks menjadi bentuk standar yang seragam. Ini mencakup langkah-langkah seperti mengubah huruf besar menjadi huruf kecil (lowercasing), menghapus tanda baca yang tidak relevan, dan mengganti bentuk kata ke bentuk dasar (misalnya, "menyanyikan" menjadi "nyanyi"). Normalisasi membantu mengurangi variasi dan memastikan konsistensi dalam pemrosesan teks. Beberapa aspek penting dalam normalisasi teks adalah:

  • Mengubah huruf besar menjadi huruf kecil: Normalisasi sering melibatkan mengubah semua huruf dalam teks menjadi huruf kecil. Ini membantu menghilangkan variasi dalam penulisan yang mungkin terjadi dan memastikan konsistensi dalam pemrosesan teks. Misalnya, kata "RUMAH" akan diubah menjadi "rumah" dalam tahap normalisasi.
  • Menghapus tanda baca yang tidak relevan: Tanda baca yang tidak memberikan kontribusi dalam analisis teks, seperti tanda koma, titik, atau tanda tanya yang tidak relevan, biasanya dihapus dalam tahap normalisasi. Ini membantu menyederhanakan teks dan memfokuskan pada makna kata-kata yang lebih penting.
  • Mengganti bentuk kata ke bentuk dasar: Normalisasi juga melibatkan mengubah kata-kata ke bentuk dasarnya. Misalnya, mengubah kata-kata dalam berbagai bentuk seperti kata kerja berimbuhan ("-kan", "-i", "-lah"), kata benda jamak, atau kata sifat dengan akhiran berbeda menjadi bentuk dasar yang lebih umum. Misalnya, kata "bermain", "bermainkan", dan "bermainlah" akan diubah menjadi "main" dalam tahap normalisasi.

Normalisasi membantu memastikan konsistensi dalam pemrosesan teks dan memudahkan analisis lebih lanjut seperti pembandingan kata-kata, ekstraksi fitur, atau klasifikasi. Dengan mengubah teks menjadi bentuk standar, komputer dapat lebih mudah memahami dan memanipulasi teks secara konsisten dalam tahap selanjutnya dari text processing.

 

Stopword Removal: 

Stopword removal adalah langkah dalam text processing di mana kata-kata yang umum dan sering muncul dalam teks, tetapi memiliki sedikit kontribusi dalam analisis, dihapus. Stopword biasanya terdiri dari kata-kata umum seperti "dan," "atau," "juga," "di," "ke," dan sejenisnya. Beberapa poin penting terkait stopword removal adalah:

  • Mengurangi dimensi: Stopword removal membantu mengurangi dimensi teks dengan menghapus kata-kata yang sering muncul namun tidak memiliki nilai informasi yang signifikan. Dengan menghilangkan stopwords, kita dapat fokus pada kata-kata yang lebih informatif dan berarti.
  • Meningkatkan kualitas analisis: Dengan menghapus stopwords, kita dapat meningkatkan kualitas analisis teks. Stopwords sering kali tidak memberikan makna yang signifikan dan dapat mengganggu proses pemrosesan teks. Dengan menghilangkannya, kita dapat memusatkan perhatian pada kata-kata yang lebih penting dan relevan dalam konteks analisis.
  • Mempercepat pemrosesan: Dengan menghapus stopwords, kita dapat mempercepat pemrosesan teks. Menghilangkan kata-kata yang sering muncul dapat mengurangi jumlah kata yang harus diproses, mempercepat waktu komputasi, dan meningkatkan efisiensi dalam analisis teks.

Namun, penting untuk dicatat bahwa tidak semua kasus membutuhkan penghapusan stopwords. Terkadang, stopwords dapat memiliki nilai informasi yang penting tergantung pada konteks analisis yang sedang dilakukan. Oleh karena itu, dalam beberapa kasus, perlu dilakukan evaluasi lebih lanjut untuk menentukan apakah penghapusan stopwords diperlukan atau tidak. Stopword removal adalah langkah yang umum dilakukan dalam text processing untuk meningkatkan kualitas analisis, mempercepat pemrosesan, dan memfokuskan perhatian pada kata-kata yang lebih relevan dalam teks yang diproses.

 

Stemming atau Lemmatization: 

Stemming dan lemmatization adalah dua teknik yang digunakan dalam text processing untuk mengubah kata ke bentuk dasarnya. Tujuan dari kedua teknik ini adalah untuk mengurangi variasi kata dalam teks sehingga kata-kata yang memiliki akar yang sama dapat dianggap setara.

  • Stemming: Stemming adalah proses menghapus awalan dan akhiran kata untuk mendapatkan akar kata yang disebut "stem." Stemming dilakukan dengan menggunakan aturan heuristik untuk menghapus imbuhan kata. Misalnya, kata-kata seperti "berjalan," "berjalanlah," dan "berjalan-jalan" akan dipotong menjadi akar kata "jalan" dengan menggunakan algoritma stemming. Stemming biasanya lebih cepat dibandingkan dengan lemmatization karena mengandalkan aturan yang sederhana dan tidak memerlukan pemahaman konteks kata.
  • Lemmatization: Lemmatization adalah proses mengubah kata ke bentuk dasarnya yang disebut "lemma." Lemmatization melibatkan pemahaman konteks kata dan menggunakan kamus kata (lexicon) yang lebih lengkap. Dalam lemmatization, kata-kata dikonversi ke bentuk dasar yang memiliki makna yang tepat dalam bahasa tersebut. Misalnya, kata-kata "menyanyikan," "menyanyi," dan "menyanyikanlah" akan diubah menjadi bentuk dasar "nyanyi" melalui proses lemmatization. Lemmatization memberikan hasil yang lebih akurat dibandingkan dengan stemming, tetapi juga lebih kompleks secara komputasional.

Stemming dan lemmatization digunakan untuk mengurangi variasi kata dalam teks sehingga kata-kata yang memiliki akar yang sama dapat dianggap setara. Tujuan dari kedua teknik ini adalah untuk memfasilitasi analisis teks dengan mengurangi dimensi kata dan memperoleh pemahaman yang lebih baik tentang konten teks. Pemilihan antara stemming dan lemmatization tergantung pada kebutuhan dan tujuan spesifik dari analisis teks yang dilakukan.


Analisis dan Ekstraksi Fitur: 

Analisis dan ekstraksi fitur adalah langkah penting dalam text processing yang melibatkan pemahaman lebih mendalam tentang teks dan ekstraksi informasi yang relevan untuk analisis lebih lanjut. Berikut ini adalah penjelasan tentang kedua konsep tersebut:

  • Analisis: Analisis teks melibatkan pemahaman dan penafsiran teks untuk mendapatkan wawasan atau informasi yang berarti. Ini bisa meliputi analisis sentimen, klasifikasi teks, ekstraksi entitas, topik modeling, atau analisis lainnya. Misalnya, dalam analisis sentimen, teks dianalisis untuk menentukan sentimen atau perasaan yang terkait dengan teks tersebut, apakah itu positif, negatif, atau netral. Dalam analisis teks lainnya, kita dapat mengidentifikasi topik utama dari teks, mengklasifikasikan teks ke dalam kategori yang spesifik, atau mengekstraksi entitas seperti nama orang, tempat, atau organisasi.
  • Ekstraksi fitur: Ekstraksi fitur melibatkan mengidentifikasi dan mengekstraksi informasi yang relevan atau penting dari teks. Fitur-fitur ini bisa berupa kata-kata kunci, frase, atau atribut lain yang mewakili karakteristik penting dari teks. Pada dasarnya, ekstraksi fitur membantu mewakili teks dalam bentuk yang dapat digunakan oleh model atau algoritma dalam analisis lebih lanjut. Misalnya, dalam klasifikasi teks, kita dapat menggunakan ekstraksi fitur untuk mewakili teks sebagai vektor numerik yang menggambarkan keberadaan atau frekuensi kata-kata tertentu dalam teks.

Analisis dan ekstraksi fitur berperan penting dalam memahami, menganalisis, dan memanfaatkan informasi yang terdapat dalam teks. Dengan menerapkan metode dan teknik yang sesuai, kita dapat memperoleh wawasan yang berharga dari teks yang diproses, membangun model yang akurat, atau mengambil keputusan yang berdasarkan pada analisis teks.

 

Klasifikasi, Klasifikasi Sentimen, atau Pemrosesan Lainnya: 

Klasifikasi, klasifikasi sentimen, dan pemrosesan lainnya merupakan aplikasi yang umum dilakukan dalam text processing. Berikut adalah penjelasan singkat tentang masing-masing konsep:

  • Klasifikasi: Klasifikasi teks melibatkan pengelompokkan teks ke dalam kategori atau kelas yang sudah ditentukan sebelumnya. Tujuannya adalah untuk mengidentifikasi pola atau karakteristik yang membedakan teks-teks dalam kelas yang berbeda. Contohnya, dalam klasifikasi berita, teks-teks berita dapat diklasifikasikan ke dalam kategori seperti politik, olahraga, atau hiburan. Algoritma klasifikasi, seperti Naive Bayes, Decision Tree, atau Support Vector Machine (SVM), dapat digunakan untuk melatih model yang dapat mengklasifikasikan teks secara otomatis.
  • Klasifikasi Sentimen: Klasifikasi sentimen adalah bentuk khusus dari klasifikasi teks di mana tujuannya adalah untuk mengidentifikasi sentimen atau perasaan yang terkandung dalam teks. Sentimen dapat berupa positif, negatif, atau netral. Dalam klasifikasi sentimen, teks-teks dapat dikategorikan berdasarkan ekspresi emosional yang terkandung di dalamnya. Ini sering digunakan dalam analisis sentimen untuk mengevaluasi pandangan pengguna atau umpan balik pelanggan terhadap produk, layanan, atau merek tertentu. Teknik seperti analisis berbasis aturan, Naive Bayes, atau pemodelan jaringan saraf dapat diterapkan dalam klasifikasi sentimen.
  • Pemrosesan Lainnya: Pemrosesan teks juga melibatkan berbagai jenis pemrosesan lainnya tergantung pada tujuan dan konteks aplikasinya. Contohnya, ekstraksi entitas bertujuan untuk mengidentifikasi dan mengekstraksi informasi entitas seperti nama orang, tempat, atau organisasi dari teks. Pemrosesan bahasa alami (natural language processing/NLP) juga dapat melibatkan pemahaman sintaksis atau semantik dalam teks untuk menerapkan fitur-fitur seperti parsing, pohon sintaksis, atau coreference resolution. Selain itu, ada juga tugas seperti penerjemahan mesin, ringkasan otomatis, atau generasi teks yang melibatkan teknik-teknik khusus dalam pemrosesan teks.

Dalam semua aplikasi ini, text processing berperan penting dalam memproses, menganalisis, dan memahami teks secara otomatis. Metode dan algoritma yang digunakan bervariasi tergantung pada tugas yang ingin dicapai, dan teknik-teknik tersebut terus berkembang dengan kemajuan dalam bidang pemrosesan bahasa alami dan machine learning.
 

Pembahasan Kode Text Processing Sentiment Labelled Sentences

  • Melakukan koneksi pada Google Colaboratory dengan Google Drive.

  • Mengimport library nltk (Natural Language Toolkit) dan mengunduh package punkt, stopwords, vader_lexicon, dan wordnet.

  • Mengimport library pandas, nltk, string, dan re (reguler).

  • Membaca file CSV yang menyimpan data imdb, amazon, dan yelp.

  • Menggabungkan setiap data menjadi satu kolom dan mengecualikan pengambilan nilai NaN. Setelah data bersih diperoleh, digabung menjadi satu data frame dengan nama kolom Amazon, IMDB, dan Yelp.

  • Melakukan Tokenisasi pada setiap data di dalam dataframe.

  • Melakukan penghapusan terhadap stopwords pada setiap data di dataframe.

  • Melakukan Lemmatisasi pada setiap data dalam dataframe.

  • Menghapus tanda baca yang tidak penting.

  • Menghapus kata tidak diperlukan yang merupakan langkah opsional karena data sudah melalui proses penghapusan stopword.

  • Menghapus elemen list kosong pada data yang juga merupakan langkah opsional, tetapi lebih baik dilakukan untuk menghindari adanya elemen list yang kosong.

  • Menggabungkan kata-kata yang telah diolah untuk menjadi sebuah kalimat yang utuh.

  • Output yang diperoleh:


 

Kesimpulan

Text processing adalah suatu proses atau serangkaian proses yang dilakukan pada teks untuk mengolah, menganalisis, dan memanipulasi informasi yang terkandung dalam teks tersebut. Text processing melibatkan berbagai tahapan, termasuk preprocessing, tokenization, filtering, stemming, lemmatization, dan masih banyak lagi. Dalam text processing, tujuan utama adalah untuk mengubah teks menjadi bentuk yang dapat dimengerti oleh komputer dan kemudian menerapkan teknik-teknik pemrosesan bahasa alami (natural language processing) untuk mendapatkan pemahaman yang lebih dalam tentang teks tersebut. Text processing penting dalam banyak aplikasi seperti mesin pencari, klasifikasi teks, analisis sentimen, terjemahan mesin, dan banyak lagi.

Melalui text processing, kita dapat melakukan berbagai tugas seperti mencari kata kunci dalam teks, mengelompokkan dokumen berdasarkan topik, mengenali entitas seperti nama orang atau tempat, memahami konteks dan makna dari teks, dan banyak lagi. Dengan memanfaatkan algoritma dan teknik pemrosesan teks yang tepat, text processing dapat membantu kita mengatasi kompleksitas dan volume besar data teks yang ada di dunia digital saat ini. Kesimpulannya, text processing memberikan kerangka kerja dan alat yang diperlukan untuk memproses, memanipulasi, dan memahami teks secara efisien, sehingga memungkinkan pengembangan berbagai aplikasi dan sistem yang bergantung pada pemahaman dan analisis teks.


 

Informasi Course Terkait
  Kategori: Natural Language Processing
  Course: Basic Text Processing