Oleh :
Inayah Eka Firdausi
NRP. 06111540000018
Dosen Pembimbing :
Dr. Budi Setiyono, S.Si, MT
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA, KOMPUTASI, DAN SAINS DATA
INSTITUT TEKNOLOGI SEPULUH NOPEMBER
SURABAYA
2019
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
ii
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
LEMBAR PENGESAHAN
LAPORAN KERJA PRAKTIK
Oleh:
Inayah Eka Firdausi
NRP. 06111540000018
Surabaya, . . .
Menyetujui,
Dosen Pembimbing
Mengetahui,
Kepala Departemen Matematika
FMKSD ITS
iii
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
LEMBAR PENGESAHAN
LAPORAN KERJA PRAKTIK
iv
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
Oleh:
NRP. 06111540000018
Departemen Matematika
Surabaya
Menyetujui,
Pembimbing Lapangan
Martina Widodo
v
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
vi
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
KATA PENGANTAR
Puji syukur penulis ucapkan kehadirat Allah SWT atas rahmat dan
hidayah-Nya sehingga penulis dapat menyelesaikan Laporan Kerja Praktik
Yang Berjudul “Analisis Sentimen Tanggapan Pelanggan Operator
Telekomunikasi Di Twitter Dengan Algoritma SVM (Studi Kasus : PT. XL
Axiata. Tbk)” dengan tepat waktu.
Laporan Kerja Praktik ini disusun berdasarkan apa yang penulis
dapatkan selama melaksanakan Kerja Praktik di PT. XL Axiata. Tbk
sebagai syarat untuk memenuhi mata kuliah Kerja Praktik di Departemen
Matematika FMKSD ITS Surabaya.
Pelaksanaan Kerja Praktik ini tidak akan berjalan lancar tanpa
adanya bantuan dan dukungan dari berbagai pihak. Oleh karena itu tidak
lupa penulis mengucapkan terima kasih kepada:
1. Bapak Dr. Imam Mukhlas, S.Si, MT, selaku Kepala Departemen
Matematika ITS, atas kesempatan melaksanakan Kerja Praktik yang
telah diberikan kepada penulis,
2. Bapak Dr. Budi Setiyono, S.Si, MT. selaku Dosen Pembimbing di
Bidang Studi Ilmu Komputer Program Studi Sarjana Matematika
FMKSD ITS, yang telah membimbing serta memberi masukan kepada
penulis serta kawan – kawan dalam pelaksanaan Kerja Praktik dan
penyusunan laporan ini,
3. Bapak Iwan Syafrizal, selaku Human Resource Development (HRD)
PT. XL Axiata. Tbk yang telah memberikan kesempatan untuk
melaksanakan Kerja Praktik serta bimbingan dan bantuan kepada
penulis dan kawan – kawan selama pelaksanaan Kerja Praktik,
4. Ibu Martina Widodo selaku PIC dari BICC Data Engineer PT. XL
Axiata. Tbk sekaligus pembimbingan lapangan.
5. Nurtantio Quidar dan Ali Bin Salewangeng pembimbing Kerja Praktik
dari PT. XL Axiata. Tbk, yang telah dengan sabar membimbing dan
membantu penulis dan kawan – kawan selama pelaksanaan Kerja
Praktik,
6. Rekan – rekan di PT. XL Axiata. Tbk yang tidak bisa penulis sebutkan
satu persatu, yang telah menerima penulis dan kawan – kawan dengan
ramah dan memberikan dukungan penuh,
vii
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
7. Ramadhani Prasyanto dan Nida Nabilah Nuzul L., selaku rekan Kerja
Praktik, yang telah menemani penulis selama pelaksanaan Kerja Praktik
dan memberikan dukungan kepada penulis secara terus – menerus,
8. Orang tua, keluarga, dan teman-teman tercinta yang telah memberikan
dukungan moriil baik imoriil yang tiada henti.
Penulis menyadari bahwa penyusunan laporan ini masih belum sempurna.
Untuk itu, penulis sangat mengharapkan adanya kritik dan saran demi
kemajuan di kemudian hari. Akhir kata, penulis mohon maaf apabila ada
kesalahan selama kegiatan Kerja Praktik berlangsung hingga tersusunnya
laporan ini.
Penulis
viii
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
DAFTAR ISI
LEMBAR PENGESAHAN .................................................................... iv
KATA PENGANTAR ............................................................................ vii
DAFTAR ISI............................................................................................ ix
DAFTAR TABEL ................................................................................... xi
DAFTAR GAMBAR ............................................................................... xi
DAFTAR KODE ..................................................................................... xi
DAFTAR DATA ...................................................................................... xi
BAB I PENDAHULUAN ..........................................................................1
1.1 Latar Belakang .......................................................................... 1
1.2 Rumusan Masalah ..................................................................... 3
1.3 Batasan Masalah ....................................................................... 3
1.4 Tujuan ....................................................................................... 3
1.5 Manfaat ..................................................................................... 3
1.6 Metode Penelitian ..................................................................... 4
1.7 Pelaksana Kerja Praktik ............................................................ 6
1.8 Tempat dan Waktu Pelaksanaan ............................................... 6
1.9 Sistematika Penulisan Laporan ................................................. 6
BAB II GAMBARAN UMUM PT. XL Axiata. Tbk ..............................9
2.1 Informasi Umum ....................................................................... 9
2.2 Sejarah....................................................................................... 9
2.3 Visi PT XL Axiata Tbk ........................................................... 15
2.4 Struktur Perusahaan ................................................................ 15
2.5 Struktur Grup dan Kepemilikan .............................................. 15
BAB III TINJAUAN PUSTAKA ...........................................................17
3.1 Analisis Sentimen ................................................................... 17
3.2 Machine Learning ................................................................... 17
3.3 Natural Languange Processing ............................................... 18
3.4 Tf-idf ....................................................................................... 18
ix
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
x
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
DAFTAR TABEL
Tabel 1 Spesifikasi Perangkat Keras Laptop............................................ 23
Tabel 2 Daftar Library ............................................................................. 23
Tabel 3 Hasil Pelabelan............................................................................ 32
Tabel 4 Perbandingan Jumlah Data pada Kelas Sentimen ....................... 32
Tabel 5 Perbandingan Data Train dan Data Test ..................................... 33
Tabel 6 Hasil TF-IDF ............................................................................... 33
DAFTAR GAMBAR
Gambar 1 Diagram Alur Metode Penelitian .............................................. 5
Gambar 2 Struktur Perusahaan PT XL Axiata Tbk. ................................. 15
Gambar 3 Struktur Grup dan Kepemilikan .............................................. 16
Gambar 4. Gambar SVM ......................................................................... 21
Gambar 5 Word Cloud Tweet Negatif ...................................................... 34
Gambar 6 Word Cloud Tweet Positif....................................................... 34
Gambar 7 Hasil Prediksi Label ................................................................ 36
DAFTAR KODE
Kode 1 Scrapping Data ............................................................................ 25
Kode 2 Mengubah kata menjadi huruf kecil ............................................ 26
Kode 3 Menghapus URL ......................................................................... 27
Kode 4 Menghapus Tanda Baca,Simbol, dan Angka ............................... 28
Kode 5 Menghapus Huruf yang Berulang................................................ 28
Kode 6 Tokenizing ................................................................................... 29
Kode 7 Membaca Dictionary ................................................................... 29
Kode 8 Mencari Kata Typo ...................................................................... 30
Kode 9 Mengganti Kata Typo .................................................................. 30
Kode 10 Menghilangkan Stopword.......................................................... 31
Kode 11 Membagi data test dan data train ............................................... 32
Kode 12 TF-IDF ...................................................................................... 33
Kode 13 Menampilkan TF-IDF ............................................................... 33
Kode 14 Implementasi SVM .................................................................... 35
Kode 15 Prediksi Label ............................................................................ 35
DAFTAR DATA
Data 1 Hasil Scrapping yang disimpan di CSV ....................................... 26
Data 2 Hasil Pre-processing yang disimpan di CSV ............................... 31
xi
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
xii
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
BAB I
PENDAHULUAN
1.1 Latar Belakang
Pengguna telepon seluler (ponsel) di tanah air mencapai 371,4 juta
pengguna atau 142 persen dari total populasi sebanyak 262 juta jiwa.
Pengguna internet di dunia semakin meningkat setiap tahunnya [1].
Menurut situs riset Internet World Stats Indonesia berada di posisi kelima
dalam penggunaan internet di Asia mengungguli Jepang dan Rusia [1].
Berdasarkan data wearesocial.sg, pengguna internet di Indonesia mencapai
132,7 juta dengan penetrasi sekitar 51 persen dari populasi. Untuk
pengguna media sosial aktif mencapai 106 juta dengan penetrasi sekitar
40%, dan pengguna media sosial mobile aktif mencapai 92 juta atau sekitar
35% dari populasi. Dibandingkan dengan tahun 2016, pengguna ponsel
Indonesia meningkat 14%. Sementara untuk penetrasi pengguna media
sosial aktif meningkat 34%, dan penetrasi pengguna media sosial mobile
aktif bertambah 39%. Berdasarkan Siaran Pers No.
112/HM/KOMINFO/05/2018, menyatakan bahwa jumlah pelanggan
provider di Indonesia adalah sejumlah 254.792.159 pelanggan. Dengan
jumlah pengguna telepon seluler yang terus meningkat ini dapat
dimanfaatkan oleh perusahaan yang memberikan layanan jasa
telekomunikasi untuk memberikan tawaran yang menarik kepada
konsumen. Adanya media sosial telah memberikan tempat bagi pengguna
internet mengekspresikan dan berbagi pemikiran dan pendapat mereka
tentang topik yang berbeda dan acara. Twitter adalah salah satu media sosial
yang digunakan oleh perusahaan-perusahaan telekomunikasi untuk
memonitor reputasi dan merek mereka dengan mengekstrak dan
menganalisis sentimen dari tweet yang diposting oleh publik tentang
mereka, pasar mereka, dan pesaing. Pada kasus ini, penulis akan mengolah
data yang terkait analisis sentimen melalui twitter. Sebab di Indonesia
pengguna twitter aktif dalam satu hari mencapai 77% dan para pengguna
twitter menghasilkan 500 juta kicauan setiap harinya. Bahkan dua
perusahaan provider di industri telekomunikasi pun mendapati peringkat
tiga besar dalam keaktifannya di twitter. Teks mining penting dalam analisa
sentimen sebagai pengidentifikasi emosial suatu pernyataan, sehingga
banyak studi tentang analisa sentimen dilakukan [2]. Analisis sentimen
1
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
1.4 Tujuan
Tujuan dari kerja praktik ini meliputi :
1. Mengklasifikasikan tanggapan konsumen dari perusahaan
telekomunikasi di Twitter menggunakan algoritma Support Vector
Machine (SVM).
2. Manganalisa berapa banyak tweet yang bersifat negatif dan positif
di Twitter perusahaan PT. XL Axiata. Tbk.
3. Mengukur akurasi serta mendapatkan kata yang paling banyak
muncul .
1.5 Manfaat
Manfaat dari kerja praktik ini :
1. Bagi Perusahaan
3
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
4
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
5
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
BAB I Pendahuluan
Memuat latar belakang perumusan masalah, batasan masalah, tujuan,
metodologi pelaksanaan kerja praktik, pelaksanaan kegiatan, rentang
waktu pelaksanaan, serta sistematika penulisan laporan.
6
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
BAB V Penutup
Pada bab penutup dirumuskan kesimpulan serta saran dari
pembahasan kerja praktik ini.
Daftar Pustaka
7
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
8
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
BAB II
GAMBARAN UMUM PT. XL Axiata. Tbk
2.1 Informasi Umum
XL Axiata (1996) menjadi perusahaan seluler swasta pertama di
Indonesia. Saat ini, saham XL Axiata dimiliki oleh Axiata Investments
(Indonesia) (66,4%) yang tergabung dalam Axiata Group Berhad,
perusahaan telekomunikasi terbesar di Asia dan publik (33,6%). XL
Axiata terus berinovasi dan menjadi operator telekomunikasi pertama
di Indonesia yang meluncurkan 4,5G. [8]
2.2 Sejarah
Pada tahun 1989 PT XL Axiata Tbk, sebelumnya bernama PT
Excelcomindo Pratama Tbk, merupakan perusahaan operator
telekomunikasi seluler swasta pertama yang didirikan merupakan
awal perjalanan berdirinya perusahan XL di Indonesia. [9]
Tahun 1996, Perusahaan ini memperoleh izin selular system GSM
900 dan resmi beroperasi secara komersial dengan fokus di area
Jakarta, Bandung dan Surabaya. [10]
Tahun 1997, telah membangun jaringan microcell terpadu di
kawasan Segitiga Emas Jakarta. Segitiga ini dibentuk oleh beberapa
jalan utama Jakarta, yakni Jalan M. H. Thamrin-Jalan Jenderal
Sudirman (Utara-barat Daya), Jalan H. R. Rasuna Said (Utara-
Tenggara), dan Jalan Jenderal Gatot Subroto (Timur-Barat). [10]
Tahun 1998, perusahaan ini mulai meluncurkan merek proXL
untuk produk layanan prabayar. [10]
Tahun 2000, Setelah mulai secara komersial di wilayah Jakarta,
Bandung dan Surabaya. Pada tahun 2000 ini perusahaan XL mulai
memasuki pangsa pasar di Sumatera dan Batam. [10]
Tahun 2001, Mendapatkan alokasi spectrum DCS 1800 dan
menyelesaikan pembangunan jaringan utama serat optic, dan
Menghadirkan layanan m-banking and m-fun. [10]
Tahun 2002,PT XL melebarkan sayapnya di wilayah Indonesia
Utara ditandai dengan mendapatkan alokasi jaringan ke Kalimantan
dan Sulawesi. Serta Meluncurkan layanan baru yaitu sirkuit sewa dan
IP (Internet Protocol). [10]
9
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
10
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
opsi bagi perorangan maupun perumahan dan UKM. Di tahun ini juga
XL Axiata merupakan operator telekomunikasi pertama yang secara
komersial meluncurkan 4,5G Ready di spektrum 1.800 MHZ.
Kemudian XL Axiata meluncurkan “XL Prioritas” bagi pelanggan
pasca bayar. Dengan 3 keuntungan utama yaitu : Prioritised, Control,
dan Worry-Free. Ketiga keuntungan ini merupakan hal baru dalam
berkomunikasi yang dikemas dalam bentuk kualitas layanan dan
jaringan yang lebih baik. Implementasi strategi Dual Brand: XL dan
AXIS. Serta di tahun ini XL Axiata memasuki tahap akhir
Transformasi Logo Brand XL untuk produk layanan. [10]
Pada tahun 2017 XL Axiata menandatangani Perjanjian Jual Beli
Bersyarat ("CSPA") untuk melepas seluruh kepemilikan sahamnya di
PT XL Planet ("elevenia") termasuk juga seluruh saham dari SK
Planet Global Holdings Pte. Ltd. (SK Planet), kepada PT Jaya
Kencana Mulia Lestari dan Superb Premium Pte. Ltd. Pilihan strategis
untuk melepas kepemilikan elevenia adalah agar XL Axiata semakin
fokus kepada kekuatan utama dan mengembangkan bisnis layanan
data untuk menjadi pemimpin pasar dari penyedia layanan mobile data
di Indonesia. XL Axiata bekerjasama dengan Kementerian Kelautan
dan Perikanan (KKP) Republik Indonesia serta Kementerian
Komunikasi dan Informatika Republik Indonesia mendukung penuh
realisasi program “Nelayan Go Online” dengan aplikasi berupa
“Nelayan Pintar (NELPIN)” kepada para nelayan di berbagai daerah.
Implementasi yang sudah terlaksana antara lain di Makasssar, Medan,
Banda Aceh, Lampung, Banyuwang, dan Sabang. XL Axiata
meluncurkan “Gerakan Donasi Kuota” (GDK) guna menggalang
partisipasi pelanggan dan masyarakat untuk mendonasikan kuota
miliknya, yang selanjutnya disalurkan bagi peningkatan kualitas
pendidikan sekolah-sekolah di berbagai pelosok Indonesia. XL Axiata
menandai peringatan hari jadi ke-21 dengan membangun infrastuktur
jaringan melalui program Kewajiban Pelayanan Universal/Universal
Service Obligation (USO). Proses pembangunan jaringan
telekomunikasi tersebut dilakukan secara bersamaan di 4 provinsi,
mencakup 40 titik lokasi Base Transceiver Station (BTS) yang hampir
semuanya berlokasi di daerah terpencil. XL Axiata terlibat penuh
13
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
14
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
15
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
16
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
BAB III
TINJAUAN PUSTAKA
3.1 Analisis Sentimen
Analisis sentimen adalah disiplin yang mengekstraksi perasaan,
pendapat, pikiran, dan perilaku orang-orang dari data teks pengguna
menggunakan metode Natural Language Processing (NLP) [11].
Selain itu, analisis sentimen juga dikenal sebagai opinion mining.
Analisis sentimen dapat digunakan untuk menemukan pola opini
dalam populasi seperti di mana orang lebih bahagia atau apa persepsi
publik tentang suatu merek produk atau layanan baru. Ada beberapa
metode dalam analisis sentimen, yaitu metode berbasis leksikon,
metode berbasis machine learning, dan metode Hybrid [12]. Metode
berbasis machine learning dibagi menjadi tiga yaitu unsupervised
learning, supervised learning, dan semi-supervised learning [12].
Pada supervised learning terdapat beberapa algoritma klasifikasi
seperti SVM, Naïve Bayes, dan Neural Network
3.4 Tf-idf
Menurut Zafikri (2008) term weighting atau pembobotan term
sangat dipengaruhi oleh hal-hal berikut ini :
18
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
19
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
𝐷𝐷
𝑤𝑤𝑖𝑖𝑖𝑖 = 𝑡𝑡𝑓𝑓𝑖𝑖𝑖𝑖 × log � �
𝑑𝑑𝑓𝑓𝑗𝑗
Keterangan :
𝑤𝑤𝑖𝑖𝑖𝑖 : adalah bobot term 𝑡𝑡𝑗𝑗 terhadap dokumen 𝑑𝑑𝑑𝑑
𝑡𝑡𝑡𝑡𝑖𝑖𝑖𝑖 : adalah jumlah kemunculan term 𝑡𝑡𝑗𝑗 dalam dokumen 𝑑𝑑𝑖𝑖
20
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
kategori data yang terdapat pada SVM tersebut. SVM dapat diaplikasikan
pada bidang angka, termasuk handwriting digit recognition, object
recognition dan speaker identification SVM mengolah data text menjadi
vector.
Dalam konsep SVM berusaha menemukan fungsi pemisah
(hyperplane) terbaik diantara fungsi yang tidak terbatas jumlahnya.
Hyperplane pemisah terbaik antara kedua kelas dapat 3 ditemukan dengan
mengukur margin hyperplane tersebut dan mencari titik maksimalnya.
Adapun data yang berada pada bidang pembatas disebut support vector.
Secara matematika, konsep dasar SVM yaitu :
1
min |𝑤𝑤|2
2
Untuk mendapatkan nilai kelas dapat dirumuskan sebagai berikut:
𝑓𝑓(𝑥𝑥) = 𝑤𝑤. 𝑥𝑥 + 𝑏𝑏
Keterangan:
x : vektor data (input)
𝑊𝑊 : vector bobot
𝑏𝑏 : bias
21
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
22
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
BAB IV
ANALISIS, PERANCANGAN DAN HASIL PEMBAHASAN
23
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
24
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
import tweepy
import csv
auth = tweepy.auth.OAuthHandler(ckey, csecret)
auth.set_access_token(atoken, asecret)
api = tweepy.API(auth)
csvFile = open('xl12juli.csv', 'a')
csvWriter = csv.writer(csvFile)
for tweet in tweepy.Cursor(api.search, q = "@myxlcare
until:2018-7-12 -filter:retweets -
filter:replies",tweet_mode='extended').items():
print (tweet.full_text)
csvWriter.writerow([tweet.full_text.encode('utf-8')])
csvFile.close()
Sayang.... kamu kok gada sinyal pas malam hari hingga jam 05.53
ya, padahal udah pilih paket xl prioritas, dulu kamu ga begini
tp skrg berubah, lumayan loh sebulan 150k @myXLCare
Halo @myXLCare saya ingin aktivasi nomor XL saya yg telah
hangus, bagaimana langkah2 nya ?
Otw ganti provider xl emng paling gak jelas @myXLCare
Knapa sih XL suka seenaknya motongin pulsa, sampe gk ngeh
trnyata ada paket paket gajelas kaya ringtone dan sms apa gt
kepotong tiap minggu @myXLCare
Maksudnya kuota lifestyle apa ya min? @myXLCare
https://t.co/9FehKxSdkd
Halo @myXLCare boleh tahu kenapa sinyal bapuk banget daerah
lenteng agung? padahal udah 4G lho, masa browsing google aja
ngga bisa?? https://t.co/wCxJB1NtrJ
b'Sayang.... kamu kok gada sinyal pas malam hari hingga jam 05.53 ya, padahal
udah pilih paket xl prioritas, dulu kamu ga begini tp skrg berubah, lumayan loh
sebulan 150k @myXLCare'
b'Halo @myXLCare saya ingin aktivasi nomor XL saya yg telah hangus,
bagaimana langkah2 nya ?'
b'Otw ganti provider xl emng paling gak jelas @myXLCare'
b'Knapa sih XL suka seenaknya motongin pulsa, sampe gk ngeh trnyata ada paket
paket gajelas kaya ringtone dan sms apa gt kepotong tiap minggu @myXLCare'
b'Maksudnya kuota lifestyle apa ya min? @myXLCare https://t.co/9FehKxSdkd'
b'Halo @myXLCare boleh tahu kenapa sinyal bapuk banget daerah lenteng
agung? padahal udah 4G lho, masa browsing google aja ngga bisa??
https://t.co/wCxJB1NtrJ'
4.3.1 Lowercase
Seringkali memodifikasi huruf atau kalimat untuk
mempermudah mencocokkan kata atau token tertentu. Biasanya ada
dua jenis operasi konversi kasus yang banyak digunakan. Ini adalah
konversi huruf kecil dan huruf besar, di mana kata dikonversi
sepenuhnya menjadi huruf kecil atau huruf besar.
Pada proses ini yang di gunakan adalah perubahan data teks tweet
menjadi huruf kecil semua.
def lowercase(string):
return string.lower()
26
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
tok = WordPunctTokenizer()
pat1 = r'@[A-Za-z0-9_]+'
pat2 = r'https?://[A-Za-z0-9./]+'
pat3 = r'#[A-Za-z0-9]+'
pat4 = r'\[A-Za-z0-9]+'
combined_pat = r'|'.join((pat1, pat2, pat3,pat4))
def url_clean(a):
soup = BeautifulSoup(a, 'lxml')
souped = soup.get_text()
stripped = re.sub(combined_pat, '', souped)
try:
clean = stripped.decode("utf-8-
sig").replace(u"\ufffd", "?")
except:
clean = stripped
return (" ".join(clean)).strip()
27
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
sering tanda baca atau karakter khusus tidak memiliki banyak arti
ketika kita menganalisis teks dan menggunakannya untuk
mengekstraksi fitur atau informasi berdasarkan NLP dan ML.
def tweet_cleaner(a):
b = re.sub("[^a-zA-Z]", " ", a)
return b
Kode 4 menghapus tanda baca, simbol dan angka atau dengan kata
lain hanya mengambil kata saja.
def tweet_cleaner(a):
c = re.sub(r'(.)\1{2,}', r'\1\1',a)
return c
4.3.5 Tokenizing
Tokenisasi kata adalah proses pemisahan atau pengelompokan
kalimat menjadi kata-kata pokoknya. Kalimat adalah kumpulan kata-
kata, dan dengan tokenization kita pada dasarnya membagi kalimat
menjadi daftar kata yang dapat digunakan untuk merekonstruksi
kalimat. Tokenisasi kata sangat penting dalam banyak proses,
terutama dalam membersihkan dan menormalkan teks di mana operasi
seperti stemming dan lemmatization bekerja pada setiap kata
berdasarkan pada masing-masing kata.
28
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
Kode 6 Tokenizing
Output 2 Tokenizing
d = {}
with open("dictionary.txt") as text:
for line in text:
if line.strip():
key, val = line.split(None, 1)
d[key]=val.split()
29
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
Output 3 Dictionary
def mencaritypo(kata):
for key in d:
list1=d.get(key)
if kata in list1:
return key
return kata
Kode 9 mengganti kata yang typo. Kata yang didapat pada kode 8
akan diganti pada kode 9.
30
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
def stopWord(tupel):
temp_data=[]
for kalimat in tupel:
temp_kalimat=[]
for kata in kalimat:
lit=str.remove(kata)
if(lit!=''):
temp_kalimat.append(lit)
temp_data.append(temp_kalimat)
return temp_data
31
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
4.4 Pelabelan
Membuat machine learning harus membuat data set yang
merupakan data tweet yang sudah ada dan melalui pre-processing.
Kekurangan pelabelan secara manual ini rawan dengan adanya
subjektivitas. Namun untuk mengurangi subjektivitas, pelabelan di
lakukan oleh 3 orang yaitu Ramadhani Prasyanto, Nida Nabilah N.L
dan Inayah Eka Firdausi. Data yang akan dilabelin sebanyak 568 data.
text label
membelikan paket data via aplikasi myxl nomor 1
dear baca dm terimakasih 1
kesal banget lemot daerah jakarta timur peningkatan melulu daerah -1
jaringan gangguan luas gangguannya rajin tiarap nkenapa -1
Tabel 3 Hasil Pelabelan
4.5 TF-IDF
Kode 11 untuk membagi data test dan data train secara acak dengan
perbandingan 80:20. Perbandingan ini merupakan default dari library
sklearn.
32
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
vect = TfidfVectorizer(min_df=5).fit(X_train)
len(vect.get_feature_names())
Kode 12 TF-IDF
Kode 12 adalah mengubah kata menjadi vector, dan hanya kata dengan
minimal 5 kali kemunculan yang akan diambil. Dan didapat 134 kata yang
frekuensi kemunculannya lebih dari sama dengan 5.
pd.DataFrame(vect.fit_transform(X_train).toarray(),
columns=vect.get_feature_names())
33
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
34
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
X_train_vectorized = vect.transform(X_train)
model = LinearSVC()
model.fit(X_train_vectorized, y_train)
predictions = model.predict(vect.transform(X_test))
import csv
tr =
pd.read_csv('cleantesting.csv',header=None,names=['text'])
def testing_result(text):
result_label = model.predict(vect.transform([text]))
return result_label[0]
tr['new_label'] = tr['text'].apply(lambda t:
testing_result(t))
tr
35
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
36
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
BAB V
PENUTUP
5.1. Kesimpulan
Kesimpulan yang didapatkan dari proses pengerjaan tugas kerja
praktek yang telah dilakukan antara lain :
1. Pada proses penyimpanan data scrapping ke dalam csv seharusnya
menggunakan tweet.encode('utf-8') untuk mengkonvert URL menjadi
lebih rapi.
2. Pada pre-processing data tidak menggunakan stemming, karena
stemming pada library Sastrawi mengubah kata penting ‘lemot’
menjadi ‘lot’. Pada proses pembersihan data juga belum bersih.
3. Pada proses tf-idf mendapatkan hasil array yang besar karena
banyaknya varian kata karena data belum benar-benar bersih sehingga
bobot kata menjadi kecil.
4. Akurasi yang didapat dari algoritma SVM adalah sebesar
0.7687258687258687
5.2. Saran
Pada proses pelabelan seharusnya 3 anotator. Masing-masing
anotator akan memberikan label pada tweet dengan tujuan
mempertimbangkan asumsi masing-masing anotator. Untuk
mendapatkan label akhir dari masing-masing tweet apabila dua orang
atau lebih memilih label yang sama, maka label akhirnya adalah
berdasarkan pemilihan tersebut.
37
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
38
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
DAFTAR PUSTAKA
[1] Databoks. 2017. “Pengguna Ponsel Indonesia Mencapai 142% dari
Populasi,” [Online]. Available:
https://databoks.katadata.co.id/datapublish/2017/08/29/pengguna-
ponsel-indonesia-mencapai-142-dari-populasi. [Diakses 25 January
2019].
[2] Liu, B., 2012. Sentiment Analysis and Opinion Mining. San Rafael:
Morgan & Claypool Publishers
[3] “Sentiment Analysis and Opinion Mining. San Rafael,” 2012.
[4] Ali, F., Kwak, K., dan Kim, Y. 2016. Opinion mining based on fuzzy
domain ontology and Support Vector Machine: A proposal to
automate online review classification. Elsevier. 47:235-250
[5] D. Y. Praptiwi. 2018. “Analisis sentimen online review pengguna e-
commerce menggunakan metode support vector machine dan
maximum entropy,” Yogyakarta.
[6] V. Singh dan S. K. Dubey. “Opinion mining and analysis : a
literature review”.
[7] XL Axiata. [Online]. Available:
https://www.xlaxiata.co.id/perusahaan-kami. [Diakses 18 Mei 2019].
[8] XL Axiata. [Online]. Available:
https://www.xlaxiata.co.id/id/perusahaan-kami/tentang-
kami/perjalanan-kami. [Diakses 18 Mei 2019].
[9] XL Axiata. [Online]. Available:
https://www.xlaxiata.co.id/id/perusahan-kami/tentang-kami.
[Diakses 18 Mei 2019].
[10] M. Bonzanini. 2016. 'Mastering Sosial Media Mining with Python,
Birmingham: Packt.
[11] A. C. Pandey, M. Saraswat dan D. S. Rajpoot. 2017. “Twitter
sentiment analysis using hybrid cuckoo search method,” elsevier, vol.
53, pp. 764-779.
[12] P. Dangeti. 2017. "Statistic for Machine Learning", Birmingham:
Pact.
[13] A. s., “Text Mining for Biology and Biomedicine”.
39
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
[14] S. Ananiadou dan J. McNaught. 2006. "Text Mining for Biology and
Biomedicine", Boston and London: Artech House.
[15] F. Christianini dan S. T. Jhon. 2000. "An introduction to support
vector machines and other kernel-based learning methods",
Cambridge: Cambridge University Press.
40
LAPORAN KERJA PRAKTIK
PT XL AXIATA TBK
JAKARTA
BIODATA PENULIS
41