Oleh
MARISA DWI SARI
11150940000032
2019 M/1440 H
i
KATA PENGANTAR
iii
DAFTAR ISI
LEMBAR PENGESAHAN.....................................................................................ii
KATA PENGANTAR.............................................................................................ii
DAFTAR ISI...........................................................................................................iv
DAFTAR GAMBAR..............................................................................................vi
BAB I PENDAHULUAN........................................................................................1
1.1 Latar Belakang...........................................................................................1
1.2 Rumusan Masalah......................................................................................2
1.3 Batasan Masalah.........................................................................................2
1.4 Tujuan Penulisan........................................................................................2
1.5 Manfaat Penulisan......................................................................................2
BAB II PROFIL PT. PREMIER OPTIMA SATTIGA............................................4
2.1 Sejarah Umum............................................................................................4
2.2 Struktur Perusahaan dan Bidang Usaha......................................................5
2.3 Visi PT. Premier Optima Sattiga................................................................5
2.4 Misi PT. Premier Optima Sattiga................................................................5
2.5 Klien...........................................................................................................6
2.5.1 Konsuldok..............................................................................................6
2.5.2 Bash........................................................................................................6
2.5.3 Tupay......................................................................................................6
2.5.5 DigiLeaps...............................................................................................6
2.5.6 CBD Indonesia.......................................................................................6
2.5.7 PT. Pangripta..........................................................................................6
2.5.8 SmartFren...............................................................................................6
2.5.9 SAKA Energy.........................................................................................6
2.5.10 HESS......................................................................................................6
BAB III TINJAUAN PUSTAKA............................................................................7
3.1 Pemodelan Topik........................................................................................7
3.2 Scraping......................................................................................................7
3.3 Preprosesing Data......................................................................................8
3.4 Part-of-Speech Tagging/Postagging...........................................................9
3.5 Vector Space Model..................................................................................10
3.6 Latent Dirichlet Allocation (LDA)...........................................................11
iv
BAB IV METODOLOGI PENELITIAN..............................................................12
4.1 Tempat dan Waktu...................................................................................12
4.2 Metode Pengumpulan Data.......................................................................12
4.3 Metode Pengolahan Data..........................................................................12
4.4. Alur Penelitian..........................................................................................13
BAB V PEMBAHASAN.......................................................................................14
5.1 Analisis Data............................................................................................14
5.2 Preprocessing...........................................................................................14
5.3 Wordcloud dan Wordlink..........................................................................15
5.4 Hasil Pemodelan Latent Dirichlet Allocation...........................................16
BAB VI KESIMPULAN DAN SARAN...............................................................19
6.1 Kesimpulan...............................................................................................19
6.2 Saran.........................................................................................................19
DAFTAR PUSTAKA............................................................................................20
v
DAFTAR GAMBAR
Gambar 2. 1 Bagan Struktur AI Team PT. Premier OPTIMA...............................5
vi
BAB I
PENDAHULUAN
1
Berdasarkan uraian di latar belakang yang telah dijelaskan penulis ingin
meneliti hal apa saja yang sering dikeluhkan oleh pelanggan dengan menerapkan
Topik Modeling pada data yang diambil dari Twitter, Oleh karena itu penulis
mrmutuskan untuk membuat laporan Praktik Kerja Lapangan “Topik Modeling
terhadap Layanan Ojek Online Menggunakan Latent Dirichlet Allocation ( Studi
Kasus : GOJEK )
2
Semoga penelitian ini dapat memberikan informasi yang berguna untuk
penelitian di Premier Optima Sattiga.
3. Bagi pembaca
Semoga penelitian ini dapat menambah wawasan serta informasi yang
berguna bagi pembaca khususnya bagi pembaca yang tertarik untuk
melakukan penelitian yang sama.
3
BAB II
4
2.2 Struktur Perusahaan dan Bidang Usaha
5
3. Menyediakan solusi Bussiness Intellegence untuk perusahaan seperti dashboard,
analytics, dan warehouse.
4. Menyediakan analitik bisnis untuk perusahaan klien seperti abnormal dan
anomaly detection, Fraud Detection / Deteksi Penipuan, dan tugas tidak
terstruktur lainnya.
5. Menyediakan teknologi Arificial Intellegence seperti Machine Learning, Image
Processing,dan Deep Learning
2.5 Klien
Klien dari PT. Premier Optima Sattiga yaitu:
2.5.1 Konsuldok
Konsuldok adalah Health Care Application yang berjalan di mobile platform.
2.5.2 Bash
Bash adalah aplikasi Event Organizer yang berjalan di iOS dan Android.
2.5.3 Tupay
Tupay adalah solusi pembaran online ke offline dan pembayaran offline ke online.
2.5.4 Dwi Tunggal Citra Catering
Perusahaan ini membuat profil situs web untuk Klien Dwi Tunggal Citra
Catering.
2.5.5 DigiLeaps
Perusahaan ini menyediakan Data Science dan Artificial Intellegence untuk agensi
pemasaran DigiLeaps.
2.5.6 CBD Indonesia
Perusahaan menyediakan Website Technology, Artificial Intellegence dan
Bussiness Solution untuk Kampus CBD Indonesia.
2.5.7 PT. Pangripta
Perusahaan ini menyediakan teknologi untuk PT. Pangripta Geomatika Indonesia.
2.5.8 SmartFren
Perusahaan ini melakukan Data Core Audit Project.
2.5.9 SAKA Energy
Perusahaan ini menyediakan Infrastructure dan Operation Cost Management
Project.
2.5.10 HESS
6
Perusahaan ini menyediakan Infrastructure dan Operation Cost Management
Project (untuk Indonesia, Malaysia, dan Australia).
7
BAB III
TINJAUAN PUSTAKA
3.2 Scraping
Dalama pengambilan data twitter dibutuhkan teknik dalam pengambilan data
dari halaman web twitter. Scraping merupakan teknik untuk mengumpulkan data
online secara langsung, dengan kata lain scraping merupakan teknis secara
langsung mengekstrasi informasi dari kumpulan data pada situs web [4]. Tujuan
dari web scraper adalah mencari jenis informasi dari kumpulan data pada situs
web [5]. Oleh sebab itu, sehubug dengan data yang ingin digunakan pada
penelitian kali ini yaitu data media sosial twitter, dimana data ini merupakan data
berbasis online maka diperlukan teknik scraping untuk membantu dalam
mengekstasi informasi yang ada pada media sosial twitter.
8
3.3 Preprosesing Data
Data yang sudah didapat dapat di lakukan Preprocessing. Preprocessing
adalah tahap proses awal text mining terhadap teks untuk mempersiapkan teks
menjadi data yang dapat diolah lebih lanjut dan dapat mempersiapkan data teks
untuk dilakukan proses pengklasifikasi. Dalam proses Preprocessing terdapat
beberapa bagian yaitu tokenisasi, slang, case folding, penghapusan simbol atau
emoticon, penghapusan kata – kata stop word, dan lemmatisasi.
3.3.1. Tokenisasi
Tokenisasi merupakan metode pengambilan data teks pada suatu dokumen
untuk dipisahkan menjadi beberapa karakter/token. Contoh untuk tokenisasi
terdapat pada Table 3.1.
9
3.3.3. Slang
Dalam proses preprosesing, fungsi slang bertujuan untuk menghilangkan kata –
kata yang salah atau singkatan agar kalimat yang di hasilkan lebih di mengerti
oleh komputer. Sebagai contoh dapat dilihat pada table 3.3
3.3.4. Filtering
Tahap filtering adalah tahap mengambil kata-kata penting dari hasil token.
Proses filtering dapat menggunakan algoritma stop words. Stop Words berfungsi
untuk menghilangkan kata – kata yang tidak memiliki makna dalam suatu
dokumen [6]. Penghilangan stop words dapat mengurangi tingkat noise pada data,
namun bukan berarti dapat meningkatkan hasil akurasi. Dalam proses filtering,
bukan hanya kata – kata yang merupakan stop words saja yang dihilangkan, tetapi
juga kata – kata yang memiliki frekuensi kemunculan sedikit.
3.3.5. Lematisasi
Lematisasi adalah proses transformasi untuk menemukan bentuk normalisasi
suatu kata [7]. Lematisasi mengganti kata-kata ke bentuk kata dasarnya.
Lematisasi membutuhkan kamus tambahan untuk pencarian dan pengindeksan,
yang meningkatkan akurasinya dalam ekstraksi fitur.
10
sebagainya. Hal tersebut dapat mengakibatkan berkurangnya frekuensi kata yang
lebih informatif dalam menggambarkan topik. Oleh karena itu dibutuhkan salah
satu proses penyaringan data seperti mengambil kata-kata yang informatif
terhadap topik sdengan menggunakan Part-of-Speech (POS) Tagging. POS tag
adalah kategori grametikal, biasanya termasuk kata kerja, kata sifat, kata
keterangan, dan lain-lainnya. [8]
11
3.6 Latent Dirichlet Allocation (LDA)
Latent Dirichlet Allocation (LDA) merupakan metode dari topik modeling
dan topik analisis yang sering digunakan. Metode LDA menjadi metode yang
salah satu dipilih dalam melakukan analisis pada dokumen yang berukuran sangat
besar. LDA digunakan untuk meringkas, dan menghubungkan maupun
memproses data yang sangat besar, karena LDA menghasilkan daftar topik yang
diberi bobot pada masing-masing dokumen. Ide dasar yang diusulkan metode
LDA adalah setiap dokumen direpresentasikan sebagai campuran acak atas topik
yang tersembunyi, yang mana setiap topik memiliki karakter yang ditentukan
berdasarkan distribusi kata-kata yang terdapat di dalamnya. [10]
12
BAB IV
METODOLOGI PENELITIAN
13
4. Melakukan stopwords untuk menghilangkan kata – kata yang tidak
bermakna seperti yang, di, aku, saya, kemana dan lain sebagainya.
5. Melakukan Term Frequency-Inverse Document Frequency (TF-IDF) untuk
mengubah kalimat atau Tweet menjadi bentuk matriks berdasarkan
banyaknya kata yang muncul pada suatu kalimat.
6. Melakukan Klasifikasi menggunakan LDA digunakan untuk melihat topik
yang dihasilkan pada setiap dokumen.
7. Membuat kesimpulan dengan melihat topik apa yang di bicarakan pada
tweet yang diperoleh.
4.4. Alur Penelitian
Prosedur yang dilakukan untuk melakukan klasifikasi data media
sosial Twitter adalah sebagai berikut :
Preprocessing:
Start Scraping
1. Case Folding
2. Tokenizing
3. Filtering
4. Lemmatizing
5. Postagging
Pembentukan
Finish Model LDA
Post tagging
14
BAB V
PEMBAHASAN
5.2 Preprocessing
Pada tahap ini data terlebih dahulu harus dibersihkan terlebih dahulu,
karena data teks memiliki banyak noise, diantaranya menghapus simbil,
url, menghapus kata yang tidak penting, dan merapihkan kata yang tidak
baku. Hasil dari proses preprocessing tersebut berbentuk Comma
Separated Value (CSV) seperti pada Tabel 5.2
Cleaned Tweet
Tweet
@gupiguber Hai, mohon mohon hati hati hadap pihak luar guna nama
berhati-hati thd pihak luar jek indonesia untuk distribusi voucher pay
menggunakan nama GO-JEK atau minta data pribadi anda pastikan tidak
Indonesia untuk beri kode verifikasi kepada siapapun yang
mendistribusikan voucher GO- minta.
PAY atau meminta data pribadi
Anda. Pastikan tdk
15
memberikan kode verifikasi
kpd siapapun yg meminta. Info
selengkapnya klik: https://t.co
@lemparsenyum
YADEEUUUU... Kalo jalan di
depan udh buntu, gojekin aja yadeeuu kalau jalan depan sudah buntu
gan... gojekin aja agan
16
Gambar 5. 1 Wordcloud dan Wordlink Sentiment Positif
2. Sentiment Negatif
Jika dilihat dari wordcloud dan wordlink, diindikasi sentiment
negatif yang muncul tentang pengemudi gojek, juga masalah tentang saldo
dan promosi. Permasalahan pengemudi gojek yang muncul mungkin
karena driver yang sering mengcancel pesanan, dan permasalahan tentang
saldo maupun promosi dikarenakan promosi yang di lakukan oleh pihak
gojek yang menggunakan pembayaran lewat gopay, hal tersebut
mempengaruhi sentimen negatif masyarakat.
17
Gambar 5. 2. Wordcloud dan Wordlink Sentiment Negatif
18
menggunakan PosTag dan akan mempersulit proses pendefinisiannya. Akan
tetapi dengan menggunakan PosTag hasil kata-kata yang muncul lebih bersih jika
dibandingkan dengan tidak menggunakan PosTag. Pada data tweet gojek, peneliti
menggunakan model VSM dengan menggunakan TF (Term Frequency) dengan
PosTag. Untuk dapat melihat plot dari hasil klasifikasi dari masing-masing
sentiment perhatikan pada Gambar 5.3.
19
Gambar 5.5 dan Gambar 5.6 dapat diperoleh kata-kata untuk setiap topik pada
data sentiment positif dan sentiment negative, dan pada topik tersebut dapat
disimpulkan secara garis besar yang menjadi keluhan masyarakat terhadap
layanan ojek online khususnya pada aplikasi gojek.
6.1 Kesimpulan
Dari hasil pemodelan topik pada layanan ojek online khususnya pada
gojek yang diambil dari Twitter, dapat ditarik kesimpuln bahwa layanan
ojek online yaitu gojek mempunyai keunggulan atau kelebihan dimana
ramahnya para driver, banyaknya promo untuk mendapatkan voucher.
Pada layanan ojek online yaitu gojek mempunyai kelemahan atau
kekurangan dimana cukup banyak driver yang mengcancel pelanggan,
disaat hujan tarif gojek meningkat, untuk mendapatkan promo biasanya
hanya berada untuk pemesanan yang membayar dengan Go-pay.
6.2 Saran
20
Hal yang perlu ditingkatkan lagi untuk layanan ojek online
khususnya pada aplikasi Gojek agar bisa lebih berkembang adalah :
1. Perbanyak promo yang dapat menarik konsumen tidak hanya melalu
pembayaran dengan Go-pay.
2. Adakan Workshop atau pelatihan kepada para driver agar tidak
melakukan tindakan-tindakan yang negatif seperti pelecehan
3. Menindak Tegas kepada pelaku yang terbukti melakukan tindakan-
tindakan yang negatif berupa suspend atau pemecata
21
DAFTAR PUSTAKA
[1] S. JF, Sosial Media, Mass Media and the Public Sphere. Differentiation,
Complementarity and Co-Existence., Germany, 2016.
[6] M. F. Y. H. a. H. A. H. Saif, "On Stopwords, Filtering and Data Sparsity for Sentimen
Analysis of Twitter," Proc. Ninth Int. Conf. Lang. Resour. Eval, pp. 810 - 817, 2014.
[9] B. P. a. L. Lee, Opinion Mining and Sentiment Analysis. 2nd Edition, Walthan:
Elsevier, 2012.
22
LAMPIRAN II
LAMPIRAN II
LAMPIRAN VIII
Like
Username Replies Retweet Tweet Cleaned_Tweet
s
abis : habis
agma : agama aleg : caleg
about : tentang
agree : setuju alih2 : alih-alih
abu2 : abu-abu
ahoax : ahok alsn : alasan
acah2 : acah-acah
aj : saja america : amerika
acara2 : acara-acara
aja : saja ama : sama
acc : terima
ajah : saja ampe : sampai
account : akun
ajak2 : ajak-ajak amrik :amerika
acr : acara
aje : saja anak2 : anak-anak
activists : aktifis
ak : aku anak2nya : anak-
actually : sebenarnya
akar2nya : akar- anaknya
ad : ada
akarnya anak2x : anak-anak
ada2 : ada-ada
akaun : akun ancur : hancur
adl : adalah
akherat : akhirat and : dan
adlh : adalah
akhir2 : akhir-akhir anda : kamu
administ :
akn : akan ane : saya
administrasi
aksi2 : aksi-aksi aneh2 : aneh-aneh
adoption : adopsi
aktifis2:aktivis-aktivis ang : anggota
advertisement : iklan
aktivi : aktivis angg : anggota
advocate :
akun2 : akun-akun anggep : anggap
menganjurkan
alang-alang : untuk
anggota2 : anggota-
anggota
LAMPIRAN X
import numpy as np
import pandas as pd
import TSutanto_lib as TS
from bs4 import BeautifulSoup as bs
import re,csv, os, itertools
from tqdm import tqdm
from nltk.tokenize import RegexpTokenizer
from nltk.stem import WordNetLemmatizer
from nltk import sent_tokenize, word_tokenize
from spacy.lang.id import Indonesian
from html import unescape
from unidecode import unidecode
#Cleaning Teks
def LoadStopWords(lang):
L = lang.lower().strip()
if L == 'en' or L == 'english' or L == 'inggris':
lemmatizer = WordNetLemmatizer()
stops = set([t.strip() for t in LoadDocuments(file =
'C:/WPy64-3680/notebooks/datapkl/stopwords_eng.txt')[0]])
elif L == 'id' or L == 'indonesia' or L=='indonesian':
lemmatizer = Indonesian()
stops = set([t.strip() for t in LoadDocuments(file =
'C:/WPy64-3680/notebooks/datapkl/stopwords_id.txt')[0]])
else:
print('Warning, language not recognized. Empty StopWords Given')
stops = set(); lemmatizer = None
return stops, lemmatizer
def LoadSlang(DirSlang):
Slangs =TS.LoadDocuments(file = DirSlang)
SlangDict={}
for slang in Slangs[0]:
try:
key, value = slang.split(':')
SlangDict[key.strip()] = value.strip()
except:
pass
return SlangDict
#Menghilangkan Hastag
def fixTags(tweet):
getHashtags = re.compile(r"#(\w+)")
pisahtags = re.compile(r'[A-Z][^A-Z]*')
t = tweet
tagS = re.findall(getHashtags, tweet)
for tag in tagS:
proper_words = ' '.join(re.findall(pisahtags, tag))
t = t.replace('#'+tag,proper_words)
return t
ct.set_model_file('C:/WPy64-3680/notebooks/datapkl/all_indo_man_tag_corpus_
model.crf.tagger')
#directorynya disesuaikan meletakan file crfnya, harus download dlu file crfnya
pt = ct.tag(tokenized_sents)
ptN = []
noun = set(['NN','NNP', 'NNS','NNPS'])
tmp = []
for w in pt:
if w[1] in noun:
tmp.append(w[0])
if len(tmp)>0:
ptN.append(' '.join(tmp))
return ' '.join(ptN)
dataPos = pd.read_csv("data gojek positive bersih fix banget.csv")
dataPos.head()
#Dengan Postag
Top_PosTag = [d for d in dataPos['Anotasi']]