penerapan k-means untuk pengelompokan pengguna...

22
Penerapan K-Means Untuk Pengelompokan Pengguna Internet Berdasarkan Elapsed dan Byte Transferred Artikel Ilmiah Diajukan kepada Fakultas Teknologi Informasi Untuk memperoleh Gelar Sarjana Komputer Oleh: Kushendra Satria Prabawa (672009121) Dr. Irwan Sembiring, S.T., M.Kom. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga Desember 2015

Upload: dangngoc

Post on 31-Mar-2018

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

Penerapan K-Means Untuk Pengelompokan Pengguna Internet

Berdasarkan Elapsed dan Byte Transferred

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

Untuk memperoleh Gelar Sarjana Komputer

Oleh:

Kushendra Satria Prabawa (672009121)

Dr. Irwan Sembiring, S.T., M.Kom.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

Desember 2015

Page 2: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website
Page 3: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website
Page 4: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website
Page 5: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website
Page 6: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website
Page 7: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

Penerapan K-Means Untuk Pengelompokan Pengguna Internet

Berdasarkan Elapsed dan Byte Transferred 1)

Kushendra Satria Prabawa 2)

Irwan Sembiring

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Jl. Diponegoro 52-60, Salatiga 50711, Indonesia

Email: 1) [email protected],

2)[email protected],

Abstract

Agencies providing Internet to its employees, to send and receive information.

Internet connection is provided is often misused to access websites that do not provide

benefits to the institution. Websites that do not provide these benefits need to be identified

and then blocked access. This is done with the purpose so that the user can be more

focused on productivity. The analysis process can be done by reading and processing the

access log files contained on the Internet proxies, such as for example Squid. Process

analysis was performed using data mining, by processing the file acces log using

algorima K-Means Clustering based on elapsed and bytes transferred. The process

analysis on the file is expected to provide an overview for the network administrator,

about the Group's website as well as users anywhere who use its Internet access is high,

and whether the available internet service actually used for the benefit of the Agency.

Keywords: Data mining, K-Means, elapsed, byte transferred, Acces log

Abstrak

Pada suatu instansi, Internet disediakan untuk mengirim dan menerima informasi.

Koneksi Internet yang disediakan sering kali disalahgunakan untuk mengakses website-

website yang tidak memberikan manfaat bagi instansi tersebut. Website yang tidak

memberikan manfaat tersebut perlu dikenali kemudian diblokir aksesnya. Hal ini

dilakukan dengan tujuan supaya pengguna dapat lebih terfokus pada produktivitasnya.

Proses analisis dapat dilakukan dengan membaca dan mengolah file access log yang

terdapat pada proxy Internet, seperti contohnya Squid. Proses analisis dilakukan dengan

menggunakan data mining, tepatnya dengan mengolah file acces log tersebut

menggunakan algorima K-Means Clustering berdasarkan elapsed dan byte transferred.

Proses analisis pada file tersebut diharapkan dapat memberikan gambaran bagi

administrator jaringan, tentang kelompok website maupun pengguna mana saja yang

pemakaiannya akses internetnya tinggi, dan apakah layanan internet yang tersedia benar-

benar digunakan untuk kepentingan instansi.

Kata Kunci: Data mining, K-Means, elapsed, byte transferred, Acces log

______________________________________

1)Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya

Wacana 2) Staf Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.

Page 8: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

1

1. Pendahuluan

Pada era digital saat ini, tidak bisa dibayangkan dunia tanpa komunikasi.

Manusia memiliki kepentingan bertukar informasi untuk berbagai tujuan. Internet

memiliki peran sebagai penyedia informasi dari berbagai titik di dunia, kepada

tempat manapun di dunia. Informasi dapat diperoleh dengan mudah dan cepat.

Pada suatu instansi, Internet disediakan untuk mengirim dan menerima

informasi. Koneksi Internet yang disediakan sering kali disalahgunakan untuk

mengakses website yang tidak memberikan manfaat bagi instansi tersebut.

Website yang mengalihkan perhatian pengguna Internet, dapat menurunkan

kinerja pengguna tersebut, dan dapat mengganggu kinerja instansi.

Website yang tidak memberikan manfaat tersebut perlu dikenali kemudian

diblokir aksesnya. Hal ini dilakukan dengan tujuan supaya pengguna dapat lebih

terfokus pada produktivitasnya. Pola penggunaan Internet tersebut perlu dianalisis

untuk mengetahui seberapa besar persentase penggunaan data untuk mengakses

website-website tersebut.

Proses analisis dapat dilakukan dengan membaca dan mengolah file access

log yang terdapat pada proxy Internet, seperti contohnya Squid. Pada file tersebut

terdapat rekaman waktu akses, sumber dan tujuan akses, lama akses, dan besar

data yang ditransmisikan. Proses analisis dilakukan dengan menggunakan data

mining, tepatnya dengan menggunakan algorima K-Means Clustering. Proses

analisis pada file tersebut diharapkan dapat memberikan gambaran bagi

administrator jaringan, tentang kelompok website dan user mana saja yang

mempunyai akses tinggi, dan apakah layanan internet yang tersedia benar-benar

digunakan untuk kepentingan instansi.

Berdasarkan permasalahan tersebut, dilakukan penelitian untuk

mengelompokkan pengunaan internet baik dari user maupun website yang

dikunjungi. Analisis dilakukan untuk mengetahui seberapa besar throughput yang

digunakan untuk kepentingan instansi. Analisis dilakukan dengan

mengembangkan aplikasi berbasis desktop.

2. Tinjauan Pustaka

Pada penelitian Sutiknyo [1], diimplementasikan K-Means dalam proses

penggolongan suara berdasarkan usia. Data suara dikumpulkan dengan proses

sampling kemudian dianalisis dengan K-Means untuk dikelompokan dalam

cluster usia dewasa dan anak-anak. Pada saat ada sinyal baru yang masuk, maka

akan dibandingkan dengan data yang telah terklaster. Perbandingan dilakukan

dengan menghitung titik tengah data baru, dengan titik tengah tiap cluster,

sehingga diketahui cluster terdekat dengan data baru (sinyal suara baru) tersebut.

Penelitian tersebut menghasilkan aplikasi penggolongan suara, yang berdasarkan

pengujian, memiliki tingkat keberhasilan 100%.

Pada penelitian Rismawan [2], dibahas mengenai membangun suatu sistem

untuk mengelompokkan data yang ada berdasarkan status gizi dan ukuran

rangkanya dengan memasukkan parameter kondisi fisik dari orang tersebut.

Pengelompokkan data dilakukan dengan menggunakan metode clustering K-

Page 9: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

2

Means yaitu dengan mengelompokkan n buah objek ke dalam k kelas berdasarkan jaraknya dengan pusat kelas. Dari hasil penelitian terhadap 20 data sampel

diperoleh 3 kelompok mahasiswa berdasarkan nilai BMI dan ukuran rangka, yaitu

: BMI normal dan kerangka besar, BMI obesitas sedang dan kerangka sedang,

BMI obesitas berat dan kerangka kecil.

Data Mining [3] merupakan solusi yang mampu menemukan kandungan

informasi yang tersembunyi berupa pola dan aturan sekumpulan data yang besar

agar mudah dipahami. Data Mining didefinisikan sebuah proses untuk

menemukan hubungan, pola, dan tren baru yang bermakna dengan menyaring data

yang sangat besar, yang tersimpan dalam penyimpanan. menggunakan teknik

pengenalan pola seperti teknik statistik dan matematika. Data Mining dan

knowledge discovery in database (KDD) [4] merupakan istilah yang memiliki

konsep yang berbeda akan tetapi saling berkaitan karena data mining adalah

bagian dalam proses knowledge discovery in database.

Salah satu metode yang diterapkan dalam KDD adalah clustering.

Clustering adalah membagi data ke dalam grup-grup yang mempunyai obyek

yang karakteristiknya sama [5]. Garcia-Molina [6] menyatakan clustering adalah

pengelompokan item data ke dalam sejumlah kecil grup sedemikian sehingga

masing-masing grup mempunyai sesuatu persamaan yang esensial. Clustering

memegang peranan penting dalam aplikasi data mining, misalnya eksplorasi data

ilmu pengetahuan, pengaksesan informasi dan text mining, aplikasi basis data

spasial, dan analisis web.

Tan [7] membagi clustering dalam dua kelompok, yaitu hierarchical and

partitional clustering. Partitional Clustering [8] disebutkan sebagai pembagian

obyek-obyek data ke dalam kelompok yang tidak saling overlap sehingga setiap

data berada tepat di satu cluster. Hierarchical clustering [9] adalah sekelopok

cluster yang bersarang seperti sebuah pohon berjenjang (hirarki). Algoritma

clustering terbagi ke dalam kelompok besar seperti berikut: 1. Partitioning

algorithms: algoritma dalam kelompok ini membentuk bermacam partisi dan

kemudian mengevaluasinya dengan berdasarkan beberapa kriteria. 2. Hierarchy

algorithms: pembentukan dekomposisi hirarki dari sekumpulan data

menggunakan beberapa kriteria. 3. Density-based [10] : pembentukan cluster

berdasarkan pada koneksi dan fungsi densitas. 4. Grid-based: pembentukan

cluster berdasarkan pada struktur multiple-level granularity 5. Model-based:

sebuah model dianggap sebagai hipotesa untuk masing-masing cluster dan model

yang baik dipilih diantara model hipotesa tersebut.

Algoritma K-Means adalah algoritma clustering yang paling popular dan

banyak digunakan dalam dunia industri [5]. Algoritma ini disusun atas dasar ide

yang sederhana. Algoritma K-Means merupakan model centroid. Model centroid

adalah model yang menggunakan centroid untuk membuat cluster. Centroid

adalah “titik tengah” suatu cluster yang berupa nilai. Centroid digunakan untuk

menghitung jarak suatu obyek data terhadap centroid. Pada awalnya ditentukan

berapa cluster yang akan dibentuk. Sembarang obyek atau elemen pertama dalam

cluster dapat dipilih untuk dijadikan sebagai titik tengah (centroid point) cluster.

Algoritma K-Means selanjutnya akan melakukan pengulangan langkah-langkah

berikut sampai terjadi kestabilan (tidak ada obyek yang dapat dipindahkan): 1.

Page 10: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

3

menentukan koordinat titik tengah setiap cluster, 2. menentukan jarak setiap obyek terhadap koordinat titik tengah, 3. mengelompokkan obyek-obyek tersebut

berdasarkan pada jarak minimumnya. Gambar 1 menunjukkan diagram alir dari

algoritma K-Means. Secara umum metode K-Means menggunakan algoritma

sebagai berikut [11]:

1. Tentukan k sebagai jumlah cluster yang dibentuk.

Untuk menentukan banyaknya cluster k dilakukan dengan beberapa

pertimbangan seperti pertimbangan teoritis dan konseptual yang

mungkin diusulkan untuk menentukan berapa banyak cluster.

2. Bangkitkan k Centroid (titik pusat cluster) awal secara random.

Penentuan centroid awal dilakukan secara random/acak dari objek-

objek yang tersedia sebanyak k cluster, kemudian untuk menghitung

centroid cluster ke-i berikutnya,

3. Hitung jarak setiap objek ke masing-masing centroid dari masing-

masing cluster. Ada beberapa cara penghitungan jarak yang biasa

digunakan yaitu :

Euclidean distance

Manhattan distance disebut juga taxicab

Chebichev distance 4. Alokasikan masing-masing objek ke dalam centroid yang paling

terdekat.

Untuk melakukan pengalokasian objek kedalam masing-masing cluster

pada saat iterasi secara umum dapat dilakukan dengan dua cara yaitu

dengan hard k-means, dimana secara tegas setiap objek dinyatakan

sebagai anggota cluster dengan mengukur jarak kedekatan sifatnya

terhadap titik pusat cluster tersebut, cara lain dapat dilakukan dengan

fuzzy C-Means.

5. Lakukan iterasi, kemudian tentukan posisi centroid baru dengan

menggunakan persamaan (1).

6. Ulangi langkah 3 jika posisi centroid baru tidak sama.

Pengecekan konvergensi dilakukan dengan membandingkan matriks

group assignment pada iterasi sebelumnya dengan matrik group

assignment pada iterasi yang sedang berjalan. Jika hasilnya sama maka

algoritma k-means cluster analysis sudah konvergen, tetapi jika

berbeda maka belum konvergen sehingga perlu dilakukan iterasi

berikutnya.

Page 11: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

4

Gambar 1 Alur algoritma K-Means [12]

Access log adalah file yang mencatat semua akses yang dilakukan terhadap

web server. Data yang disediakan oleh web server logs berisi informasi tentang

remotehost (ip address), rfc931, authuser, timestamp, request, status, dan size

serta jenis agen yang digunakan untuk mengakses website Tabel 1 Format dan Contoh Access log

Field Keterangan Contoh

time Unix timestamp 1301572114

elapsed Durasi akses. Dalam milidetik 4014

client ip address Alamat IP komputer local 192.168.67.71

code/status Squid result code TCP_MISS/206

bytes Ukuran byte yang ditransmisikan 279858

method Metode yang digunakan untuk

mendapatkan objek GET

URL Alamat url yang diakses https://www.google.co.id/

rfc931 -

peerstatus/peerhost DIRECT/119.110.77.232

type Tipe data application/x-rar-

compressed

3. Metode dan Perancangan Sistem

Penelitian yang dilakukan, diselesaikan melalui tahapan penelitian yang

terbagi dalam empat tahapan, yaitu: (1) Analisis kebutuhan dan pengumpulan

Page 12: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

5

data, (2) Perancangan sistem, (3) Implementasi sistem yaitu Perancangan aplikasi/program, dan (4) Pengujian sistem serta analisis hasil pengujian.

Gambar 2 Tahapan Penelitian

Tahapan penelitian pada Gambar 2, dapat dijelaskan sebagai berikut.

Tahap pertama: yaitu melakukan analisis kebutuhan; Tahap kedua: yaitu

melakukan perancangan sistem yang meliputi perancangan proses K-Means,

atribut-atribut yang digunakan di access log untuk diterapkan pada proses

clustering; Tahap ketiga: yaitu mengimplementasikan rancangan yang telah

dibuat di tahap dua ke dalam sebuah aplikasi/program sesuai kebutuhan sistem;

Tahap keempat: yaitu melakukan pengujian terhadap sistem yang telah dibuat,

serta menganalisis hasil pengujian tersebut, untuk melihat apakah aplikasi yang

telah dibuat sudah sesuai dengan yang diharapkan atau tidak, jika belum sesuai

maka akan dilakukan perbaikan.

Tentukan Pusat Cluster Awal

Mulai

K=jumlah cluster

I = jumlah iterasi

Access Log

Hitung Jarak tiap-tiap record terhadap tiap-tiap cluster

Hitung Ulang Titik Pusat masing-masing

cluster

Jika Semua Iterasi selesai

dijalankan

Mulai Proses Iterasi

FALSE

SelesaiTRUE

Masukkan tiap record ke dalam cluster terdekat

Gambar 3 Alur Proses Clustering Data Access log

Alur proses clustering pada penelitian ini ditunjukkan pada Gambar 3.

Access log yang diperoleh dari squid, disimpan dalam database, dengan tujuan

dapat diolah dan dibaca kembali. Proses clustering memerlukan dua variabel

masukan, yaitu jumlah cluster dan dan jumlah iterasi yang harus dilakukan.

Jumlah iterasi menentukan kondisi kapan proses clustering berhenti. Tiap cluster

harus ditentukan titik pusat awal. Titik pusat ini berupa angka x dan y. X

Page 13: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

6

mewakili nilai elapsed time, dan y menentukan byte transferred. Rumus untuk menentukan titik pusat awal cluster adalah sebagai berikut:

(1)

(2)

Xi adalah titik pusat cluster ke i. Untuk menentukan titik tengah awal,

maka diperlukan nilai “selisih”. Selisih, pada rumus 1 adalah nilai peningkatan

dari satu cluster ke cluster berikutnya. Xmax adalah nilai x terbesar dalam

kumpulan record. Xmin adalah nilai x terkecil dalam kumpulan record. Sebagai

contoh, diketahui Xmin = 2, Xmax = 4, jumlah cluster = 5. Maka selisih yang

diperoleh adalah (4-2)/5 = 0.4.

Rumus 2 digunakan untuk menentukan nilai titik pusat awal tiap-tiap

cluster. Jika selisih yang digunakan adalah 0.4, seperti diperoleh pada rumus 1,

maka titik pusat awal

cluster 0 adalah 2 + (0.4 x 0) = 2,

cluster 1 adalah 2 + (0.4 x 1) = 2.4,

cluster 2 adalah 2 + (0.4 x 2) = 2.8,

cluster 3 adalah 2 + (0.4 x 3) = 3.2, dan

cluster 4 adalah 2 + (0.4 x 4) = 3.6.

Pada tiap record, dihitung jarak antara record dengan titik tengah tiap-tiap

cluster. Rumus perhitungan jarak euclidean ditunjukkan pada rumus 3. Rumus 4

merupakan rumus perhitungan rata-rata (mean) digunakan untuk menghitung

ulang titik pusat cluster. Rata-rata suatu cluster diperoleh dengan menjumlahkan

nilai member pada cluster tersebut, dibagi dengan jumlah member di dalam

cluster itu. Rata-rata dihitung untuk tiap atribut, yaitu x untuk elapsed time, dan y

untuk byte transferred. Pada rumus 4 ditunjukkan rumus untuk atribut x (elapsed

time), yang juga dapat berlaku untuk atribut y (byte transferred)

(3)

(4)

Berikut diberikan contoh proses clustering terhadap data access log.

Format data access log adalah sebagai berikut: Tabel 2 Format Access log

Field Keterangan Contoh

Time Unix timestamp 1301572114

Elapsed Durasi akses. Dalam milidetik 4014

client ip address Alamat IP komputer local 192.168.67.71

Page 14: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

7

code/status Squid result code TCP_MISS/206

Bytes Ukuran byte yang ditransmisikan 279858

Method Metode yang digunakan untuk

mendapatkan objek GET

URL Alamat url yang diakses https://www.google.co.id/

rfc931 -

peerstatus/peerhost DIRECT/119.110.77.232

Type Tipe data application/x-rar-compressed

Setelah melalui proses pembersihan, dimisalkan hasil ringkasan access log

adalah sebagai berikut: Tabel 3 Contoh Hasil Ringkasan Access log

IP Elapsed (X) Byte Transferred (Y)

192.168.67.10 16335 3362067

192.168.67.16 25665 6042126

192.168.67.22 16677 3619241

192.168.67.23 17698 3723590

192.168.67.24 17643 3733322

192.168.67.28 18290 3648499

192.168.67.39 16507 3459869

192.168.67.41 17722 3769288

192.168.67.56 16706 3822160

192.168.67.57 16641 3625630

Data tersebut akan dikelompokkan dalam 3 cluster yaitu A, B, C, dengan

jumlah iterasi adalah 2. Titik tengah tiap cluster yang dihasilkan dari perhitungan

dengan rumus 1, dan rumus 2 yaitu:

A = (16335, 3362067),

B = (19445, 4255420), dan

C = (22555, 5148773).

Hasil iterasi pertama adalah: Tabel 4 Hasil Iterasi Pertama

IP Elapsed

(X)

Byte Transferred

(Y) A B C

192.168.67.10 16335 3362067 0 893358.4 1786717

192.168.67.16 25665 6042126 2680075 1786717 893358.4

192.168.67.22 16677 3619241 257174.2 636185 1529543

192.168.67.23 17698 3723590 361525.6 531832.9 1425191

192.168.67.24 17643 3733322 371257.3 522101.1 1415460

192.168.67.28 18290 3648499 286438.7 606922.1 1500280

192.168.67.39 16507 3459869 97802.15 795556.4 1688915

192.168.67.41 17722 3769288 407223.4 486135.1 1379493

192.168.67.56 16706 3822160 460093.1 433268.7 1326626

192.168.67.57 16641 3625630 263563.2 629796.2 1523154

Pada hasil iterasi pertama diperoleh keanggotaan pada cluster A sebanyak

8 anggota (192.168.67.10, 192.168.67.22, 192.168.67.23, 192.168.67.24,

Page 15: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

8

192.168.67.28, 192.168.67.39, 192.168.67.41, 192.168.67.57), ditunjukkan dengan cetak tebal dan miring. Demikian juga pada cluster B ada 1 anggota

(192.168.67.56, C ada 1 anggota (192.168.67.16). Angka pada tiap cluster adalah

nilai jarak antara member dengan tiap cluster dengan menggunakan rumus

euclidean.

893358.4 adalah hasil perhitungan jarak menggunakan rumus 3

(Euclidean) yaitu (16335− 19445)2 + (3362067− 4255420)2. 16335 adalah

nilai X pada member pertama, dan 3362067 adalah nilai Y pada member pertama.

Angka 19445 dan 4255420 adalah titik tengah cluster B. Member dimasukkan

pada cluster dengan nilai jarak terkecil.

Setelah itu, pada tiap cluster dihitung nilai rata-rata (means), untuk tiap

cluster, yaitu dengan menghitung rata-rata nilai X pada tiap member dan rata-rata

nilai Y pada tiap member cluster. Dari Iterasi pertama menghasilkan titik tengah

cluster baru yaitu:

A = (17189.1, 3617688),

B = (16706, 3822160), dan

C = (25665, 6042126)

Hasil iterasi kedua adalah: Tabel 5 Hasil Iterasi Kedua

IP Elapsed

(X)

Byte Transferred

(Y) A B C

192.168.67.10 16335 3362067 255622.7 460093.1 2680075

192.168.67.16 25665 6042126 2424453 2219984 0

192.168.67.22 16677 3619241 1635.024 202919 2422902

192.168.67.23 17698 3723590 105903 98574.99 2318550

192.168.67.24 17643 3733322 115634.6 88842.94 2308818

192.168.67.28 18290 3648499 30830.41 173668.2 2393638

192.168.67.39 16507 3459869 157820.7 362291.1 2582273

192.168.67.41 17722 3769288 151600.7 52881.76 2272852

192.168.67.56 16706 3822160 204472.3 0 2219984

192.168.67.57 16641 3625630 7960.643 196530 2416513

Hasil dari iterasi kedua ada beberapa member cluster A bergeser dan

berpindah menjadi member di cluster B. Pada iterasi kedua ini jumlah member di

cluster B yang pada iterasi pertama hanya mempunyai satu anggota, pada iterasi

kedua bertambah menjadi 4 member, sedangkan cluster C tidak mengalami

perubahan member. Hasil iterasi kedua dapat disimpulkan Cluster A adalah

cluster dengan kelompok IP yang memiliki waktu akses rendah, dan byte yang

dikirimkan rendah. Cluster B adalah cluster dengan waktu akses tinggi, tapi byte

yang dikirimkan besar. Cluster C adalah cluster dengan nilai waktu tinggi dan

byte tinggi.

Page 16: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

9

4. Hasil dan Pembahasan

Aplikasi yang dikembangkan dalam penelitian ini berupa aplikasi berbasis

desktop. Perangkat pengembangan yang digunakan adalah Visual Studio 2012

Express for Windows Desktop, dengan pustaka .Net Framework 4.5. Database

yang digunakan adalah Microsoft SQL Server Express 2012.

Gambar 4 Hasil Implementasi Clustering pada Aplikasi

Sesuai dengan perancangan, pada aplikasi dikembangkan fitur clustering

dengan menggunakan algoritma K-Means berdasarkan remote host(destination)

maupun local host. Pada Gambar 4, diatur untuk membentuk 4 cluster dengan

object Remote Host ( Destination) menggunakan iterasi 10. Data access log yang

diolah dibatasi oleh rentang waktu yaitu pada jam 7 pagi sampai dengan jam 16.

Gambar 5 Grafik Bar untuk 10 Website Paling Banyak Menggunakan byte data dan Waktu Akses.

Page 17: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

10

Gambar 5 menunjukkan form yang menampilkan grafik bar. Grafik ini merupakan ringkasan dari 10 website yang paling banyak menggunakan byte data

dan waktu akses. Chart sebelah kiri merupakan daftar website dengan penggunaan

byte 10 terbesar. Chart sebelah kanan dihitung berdasarkan total waktu akses

(elapsed) dalam satuan detik. Kedua chart ini dimaksudkan untuk memberikan

informasi secara visual, kepada administrator jaringan, sehingga dapat membantu

dalam pengambilan keputusan pengaturan jaringan.

Tiap satu proses iterasi akan membentuk susunan cluster tersendiri.

Seiring dengan banyaknya proses iterasi yang dilalui, maka pusat cluster akan

semakin menyesuaikan. Titik tengah cluster akan bergeser berdasarkan anggota-

anggota cluster yang dimiliki. Semakin lama, dalam satu cluster, akan terdapat

anggota yang memiliki atribut-atribut yang berdekatan (mirip).

Gambar 6 Hasil Clustering Penggunaan Internet Pada Rentang Jam 7-16 dalam sepekan

Gambar 6 menunjukkan hasil clustering dari sample data access log, yang

terkumpul sepanjang tanggal 7-11 September 2015, dalam rentang jam 7 sampai

dengan 16. Hasil clustering membentuk 4 cluster. Cluster 1 merupakan kelompok

website yang paling banyak diakses, dalam hal waktu dan byte. Pada cluster ini

terdapat website populer yaitu youtube.com, facebook.com dan google.com.

Website-website media dan berita berada di cluster 0. Website-website pendidikan

masuk dalam cluster 2 dan cluster 3, yaitu cluster dengan penggunaan byte data

dan waktu yang paling kecil.

Page 18: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

11

Gambar 7 Ringkasan URL yang diakses oleh beberapa komputer

Pada iterasi terakhir, terdapat satu cluster dengan satu komputer yang

memiliki nilai “byte transferred” dan “elapsed time” terbesar yaitu facebook.com.

Ringkasan penggunaan byte data oleh komputer tersebut dapat dilihat pada fiter

statistik data. Gambar 7 menunjukkan komputer mana saja yang mengakses

website facebook tersebut. Data tersebut jika disajikan dalam bentuk chart,

ditunjukkan pada Gambar 8. Visualisasi data ini bertujuan untuk mempermudah

pemahamaan data.

Gambar 8 Ringkasan URL yang diakses oleh suatu komputer dalam bentuk diagram pie.

Page 19: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

12

Pada Gambar 8 ditunjukkan diagram pie untuk menampilkan 10 besar komputer yang mengakses facebook.com dengan byte transferred terbesar. Disini

dapat dilihat penggunaan terbesar yang mengakses facebook.com adalah member

dengan ip 192.168.67.254

Gambar 9 Hasil Implementasi Clustering pada Aplikasi berdasar local host

Pada Gambar 9 menunjukkan hasil clustering dari sample data access log

berdasarkan local host, yang terkumpul sepanjang tanggal 7-11 September 2015,

dalam rentang jam 7 sampai dengan 16. Hasil clustering membentuk 4 cluster.

Cluster 2 merupakan kelompok local host yang paling banyak menggunakan

akses internet, dalam hal waktu dan byte.

Gambar 10 Grafik Bar untuk 10 Local Host Paling Banyak Menggunakan byte data dan Waktu

Akses.

Page 20: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

13

Gambar 10 menunjukkan form yang menampilkan grafik bar. Grafik ini merupakan ringkasan dari 10 local host yang paling banyak menggunakan byte

data dan waktu akses. Chart sebelah kiri merupakan daftar local host dengan

penggunaan byte 10 terbesar. Chart sebelah kanan dihitung berdasarkan total

waktu akses (elapsed) dalam satuan detik. Kedua chart ini dimaksudkan untuk

memberikan informasi secara visual, kepada administrator jaringan, sehingga

dapat membantu dalam pengambilan keputusan pengaturan jaringan.

Gambar 11 Ringkasan akses yang dilakukan oleh local host

Pada Gambar 10 terdapat satu komputer yang memiliki nilai “byte

transferred” dan “elapsed time” terbesar yaitu ip 192.168.67.16. Ringkasan

penggunaan byte data oleh komputer tersebut dapat dilihat pada fiter statistik data.

Gambar 11 menunjukkan website mana saja yang diakses member dengan ip

192.168.67.16. Data tersebut jika disajikan dalam bentuk chart, ditunjukkan pada

Gambar 12. Visualisasi data ini bertujuan untuk mempermudah pemahamaan data.

Page 21: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

14

Gambar 12 Ringkasan URL yang diakses oleh suatu komputer dalam bentuk diagram pie.

Pada Gambar 12 ditunjukkan diagram pie untuk menampilkan 10 besar

website mana saja yang diakses oleh 192.168.67.16 dengan byte transferred

terbesar. Disini dapat dilihat penggunaan terbesar yang diakses oleh alamat

tersebut adalah mengakses youtube.com

5. Simpulan

Berdasarkan penelitian, pengujian dan analisis terhadap sistem, maka

dapat diambil kesimpulan yaitu pengelompokan penggunaan internet dapat

dianalisis dengan cara mengolah access log dari proxy server, kemudian

diklasterkan dengan menggunakan algoritma K-Means. Hasil clustering

menunjukkan kelompok-kelompok website yang paling sering diakses dan

pengguna yang paling banyak menggunakan byte data pada rentang waktu

tertentu. Rentang waktu ini dapat dispesifikasikan sampai dengan rentang per jam,

sehingga dapat diketahui pola perilaku penggunaan pada jam kerja dan jam

istirahat. Berdasarkan hasil clustering ini, administrator jaringan dapat melihat

website mana saja yang perlu dibatasi aksesnya, sehingga dapat memaksimalkan

penggunaan byte data internet untuk keperluan yang seharusnya. Pola titik tengah

cluster membentuk pola yang menunjukkan bahwa semakin besar waktu yang

digunakan untuk mengakses website tersebut, maka semakin besar pula data byte

yang digunakan.

Saran yang dapat diberikan untuk penelitian dan pengembangan

selanjutnya adalah algoritma untuk penelitian ini menggunakan salah satu

algoritma clustering yaitu K-Means dengan menggunakan atribut elapsed dan byte

Page 22: Penerapan K-Means untuk Pengelompokan Pengguna …repository.uksw.edu/bitstream/123456789/11203/2/T1_672009121_Full... · access log files contained on the ... about the Group's website

15

transferred dalam acceslog. Untuk penelitian selanjutnya dapat ditambahkan atribut lainnya yaitu method yang terdapat pada file acceslog. Untuk penelitian

selanjutnya, dapat dibandingkan dengan menggunakan algoritma asosiasi

(Apriori), atau klasifikasi (KNN).

6. Daftar Pustaka

[1]. Sutiknyo, P. H. P. & Soelistijorini, R. 2011. Penggolongan Suara

Berdasarkan Usia Dengan Menggunakan Metode K-Means. EEPIS Final

Project

[2]. Rismawan & Kusumadewi. Aplikasi K-Means untuk Pengelompokan

Mahasiswa Berdasarkan Nilai Body Mass index (BMI) & Ukuran

Kerangka. Yogyakarta: Seminar Nasional Aplikasi Teknologi Informasi

2008 (SNATI 2008) ISSN: 1907-5022; 2008.

[3]. Soumen Chakrabarti, Martin Ester, Usama Fayyad, Johannes Gehrke,

Jiawei Han, Shinichi Morishita, Gregory Piatetsky-Shapiro, W. W. 2015.

Data Mining Curriculum. http://www.kdd.org/curriculum/index.html.

Diakses 5 Januari 2016.

[4]. Fayyad, U., Piatetsky-Shapiro, G. & Smyth, P. 1996. From data mining to

knowledge discovery in databases. AI magazine 17, 37.

[5]. Berkhin, P. 2004. Survey Of Clustering Data Mining Techniques. Accrue

Software, San Jose, CA, 2002.

[6]. Garcia-Molina, H. 2008. Database systems: the complete book. Pearson

Education India.

[7]. Tan, P.-N., Steinbach, M. & Kumar, V. 2013. Data Mining Cluster

Analysis: Basic Concepts and Algorithms.

[8]. Popat, S. K. & Emmanuel, M. 2014. Review and Comparative Study of

Clustering Techniques. International Journal of Computer Science and

Information Technologies 5, 805–812.

[9]. Zhao, Y. & Karypis, G. 2002. Evaluation of hierarchical clustering

algorithms for document datasets. In Proceedings of the eleventh

international conference on Information and knowledge management, pp.

515–524.

[10]. Chen, Y. & Tu, L. 2007. Density-based clustering for real-time stream

data. In Proceedings of the 13th ACM SIGKDD international conference

on Knowledge discovery and data mining, pp. 133–142.

[11]. Agusta Y. K-Means-Penerapan, Permasalahan dan Metode Terkait.

Denpasar, Bali: Jurnal Sistem dan Informatika (Februari 2007) Vol. 3: 47-

60; 2007. [12]. Andayani, S. 2007. Pembentukan Cluster dalam Knowledge Discovery in

Database dengan Algoritma K-means. SEMNAS Matematika dan

Pendidikan Matematika 2007 dengan tema Trend Penelitian Matematika

dan Pendidikan Matematika di Era Global