Implementasi Prinsip MDL untuk Kompresi Graph Database Menggunakan Algoritma Greedy

Implementasi Prinsip MDL untuk Kompresi Graph Database Menggunakan Algoritma Greedy

Harris Febryantony Z 1 , Kemas Rahmat Saleh W, ST., M.Eng 2 , Alfian Akbar Gozali, ST., MT 3

1,2,3 Fakultas teknik Informatika – Universitas Telkom

1 harryz@students.telkomuniversity.ac.id , 2 bagindokemas@tass.telkomuniversity.ac.id ,

3 alfian@tass.telkomuniversity.ac.id ,

Abstrak

Graph secara konsep merupakan abstraksi yang secara fundamental telah lama dipakai, yang memungkinkan untuk memodelkan pada sistem di dunia nyata. Begitu pula pada data, data jenis apapun dapat dimodelkan relasi antar data tersebut menggunakan graph. Graph database diadopsi untuk memudahkan dan membantu dalam memahami, memodelkan, serta menganalisis suatu proses. Graph database sangat cocok digunakan pada data bersifat tidak terstruktur dan semi terstruktur dibanding relational database yang mana memiliki kelemahan jika data dan ukuran tabel bertambah menyebabkan kemungkinan join antar tabel sangat besar. Dalam aplikasinya jumlah data pada graph database semakin lama akan berkembang semakin besar menjadi jutaan bahkan miliaran node dan edge, sehingga cost untuk untuk melakukan analisa dan visualisasi graph databse menjadi sangat besar untuk kemampuan sistem saat ini. Untuk menyelesaikan permasalahan tersebut maka diperlukan suatu metode untuk mengurangi ukuran dari graph tetapi tetap menyimpan informasi-informasi penting dari graph. Dengan menerapkan prinsip Rissaenen ’s Minimum Description Length (MDL) dan melakukan penggabungan secara greedy serta mengombinasikan dengan representasi graph G yang terdiri dari Graph Summary dan sebuah set Correction , maka dapat dihasilkan graph database yang dikompres dengan baik.

Kata Kunci: graph database, graph summarization, graph representation, MDL principle, lossles, lossy, compression, greedy, Rissaenen ’s Minimum Description Length

Abstract

Graph is an abstract concept that is fundamentally has been used, which allows to model the real world system. So did in data, any type of data can be modelled using the relationship of graph. Graph database was adopted to facilitate and assist in understanding, modeling, and analyzing a process. Graph database very suitable to use in unstructured and semi-structured data, compare to relational database which have a disadvantage that when increasing data that involving increasing possibility of joining between table. As well, the need to analyze and visualize large database. In application, the amount of data in graph database are rapidly growing to millions and event billions of nodes and edges so the computation cost to perform analysis and visualization of the graph can be very hard for current system capabilities. To resolve these problem above, we need a method that can reduce the size of the graph without losing it important information, by implementing the Principle of Minimum Description Length Rissaenen's (MDL) with greedy to merge and combine it with the representation graph G which consists of Graph Summary and a set of Correction, then the resulting graph database is highly compressed.

Keywords: graph database, graph summarization, graph representation, MDL principle, lossles, lossy, compression, greedy, Rissaenen ’s Minimum Description Length Keywords: graph database, graph summarization, graph representation, MDL principle, lossles, lossy, compression, greedy, Rissaenen ’s Minimum Description Length

’s Minimum Description Length (MDL).

1. PENDAHULUAN

Graph representation ini memungkinkan Teori graph telah secara aktif diteliti dan supernode untuk memiliki self-edges, yang ditingkatkan oleh matematikawan, sosiolog, sangat efektif untuk menyatukan kelompok antropolog, serta berbagai bidang keilmuan yang berdekatan menjadi satu supernode. lainnya. Semenjak pelopori oleh Euler pada Kedua, di sini menyimpan superedge antara abad ke 18 hingga sampai pada masa sekarang

1.1. Latar Belakang

supernode � dan � hanya jika node di 𝑨 ini. Tidak terkecuali, dunia teknologi informasi

sangat dek terhubung dengan 𝑨 � . Sehingga � secara representasi ini lebih sedikit ter-cluster, ukuran

juga ikut berpartisipasi dalam penerapan, kecil, dan lebih cocok untuk visual data mining penelitian, serta penggunaan teori graph, salah

satunya adalah pada graph database. Graph database telah menjadi tren saat ini

karena kemampuannya dalam memproses data-

data yang bersifat struktural dan semi struktural

dibanding RDBMS(Relational Database

memodelkan permasalahan dunia nyata yang

mencakup pada

rekomendasi, World Wide Web(WWW), pemantauan jaringan, manajemen data center, serta banyak lainnya. Hal ini juga digerakkan

oleh kesuksesan

secara

komersial oleh

perusahaan-perusahaan besar seperti Facebook, Gambar 0-1 Perbandingan Algoritma Google, dan Twitter [1] yang telah memusatkan

Kompresi Graph [2] bisnis model mereka pada teknologi graph. Sejalan dengan perkembangannya, ukuran

dapat dilihat graph database ikut berkembang secara masif.

padaGambar 0-1, greedy memberikan kompresi Sehingga merupakan suatu tantangan untuk

tertinggi pada graph representation dibanding melakukan visualisasi serta analisis terhadap

metode kompresi yang ada, serta dengan cost informasi pada database dengan milyaran

melakukan komputasi yang minimum dan bahkan triliunan node dan edge. Database

efektif.

tersebut terlalu besar untuk dimasukkan

2. LANDASAN TEORI

semuanya ke dalam memory [2] sistem saat ini.

Oleh karena itu diperlukan representasi graph sekumpulan objek Sebuah graph � = (��, ��) dibentuk oleh 𝑉 = {� 1 , � 2 , � 3 , … } yang

2.1. Teori Graph

database tersebut dengan ukuran yang lebih disebut himpunan node (vertex, titik, atau kecil.

simpul) dan sebuah himpunan objek 𝐸= Ada berdapat beberapa algoritma kompresi

1 , � 2 , � 3 , … } yang disebut himpunan edge(line atau sisi) sedemikian hingga tiap edge

graph database, seperti: Reference � �

Encoding(REF) [3]-teknik ini sangat sukses dan menghubungkan pasangan node ( � � , � � ). Atau

populer untuk

secara sederhana graph dibentuk dari node dan Graclus(Grac) [4]-ini merupakan algoritma

kompresi

web-graph;

edge yang menghubungkan antar node. Cara graph clustering yang membagi node dari graph

menggambarkan atau berbobot menjadi cluster sehingga jumlah

umum

untuk

adalah berupa bobot

merepresentasikan

graph

diagram, yaitu dengan menggambar sebuah titik Sampling(SAMP)-metode

untuk setiap node dan menggabungkan kedua sederhana.

edge

sampling

titik tersebut dengan sebuah garis(edge). Garis Dalam penelitiannya S. Navlakha, R.

penghubung tersebut dapat berupa garis lurus Rastogi dan N. Shrivastava [2], mereka

atau garis lengkung, Demikian pula ukurannya, mengemukakan teknik

dalam penggambaran bukanlah satu yang komputasi

untuk

melakukan

yang perlu menghasilkan hasil kompresi dengan baik,

diperhatikan. Hal terpenting

diperhatikan adalah incidece antara node dengan representasi tersebut terdiri atas dua bagian:

edge-nya, perhatikan contoh graph berikut: pertama graph summary(lebih kecil dari graph

Dalam graph memiliki himpunan node 𝑉 = input) yang menampung cluster penting dan

{ � 1 , � 2 , � 3 , � 4 , � 5 } dan edge 𝐸 = hubungan di dalam graph input, bagian kedua

adalah suatu set correction yang nantinya jika

atau bisa dituliskan

kembali graph input. Untuk membentuk representasi graph, digunakan algoritma greedy kembali graph input. Untuk membentuk representasi graph, digunakan algoritma greedy

�� � dari node dalam �, dan setiap edge (�, �) ∈ Dalam graph derajat sebuah node u adalah

�� 𝑆 , disebut dengan superedge yang jumlah edge yang terhubung dengan node

merepresentasikan edge antara setiap pasang tersebut. Karena pada graph tak berarah sebuah

�� � . Bagian kedua dari edge bisa berarah keluar dari sebuah node atau

node di �� � dan

representation adalah sebuah himpunan masuk dari sebuah node, maka derajat sebuah

correction 𝐶 yang berisi koreksi dari superedge node pada graph tak berarah dikalikan dengan

untuk edge pada graph G, yang memiliki notasi

2. Derajat rata-rata sebuah graph merupakan positif ( ′ + ′) atau negatif (′ − ′).

jumlah edge dalam sebuah graph dibagi dengan Penggunaan struktur summary � pada

jumlah nodenya.

Perhitungan ini dapat

representasi graph adalah untuk memanfaatkan kesamaan struktur hubungan antar node yang

digunakan untuk mengetahui kepadatan suatu graph. Pada graph tak berarah, derajat rata-

secara umum banyak terdapat pada graph. Jika dua node memiliki edge ke sebuah himpunan

ratanya dapat dihitung dengan rumus:

𝐽� �� � ℎ � �𝑔 node yang sama(atau set sangat mirip), maka

kedua node tersebut dapat digabungkan

2.2. Graph Database

menjadi satu edge yang kemudian disebut

Salah satu penerapan teori graph pada dengan supernode kemudian kedua edge bidang teknologi informasi adalah graph

menuju tetangga yang sama diganti dengan database, yaitu struktur data yang menggunakan

sebuah superedge. Jika kedua node yang graph untuk merepresentasikan entitas satu

digabungkan dihubungkan oleh sebuah edge, objek sebagai node dan bagaimana entitas itu

maka tambahkan self-edge pada supernode berhubungan

hasil penggabungan. Ini jelas akan mengurangi objek), yang mana hubungan tersebut sebagai

dengan

lingkungannya(antar

jumlah total edge yang akan disimpan secara edge.

merepresentasikan informasi terkait node dan Pada bagian correction 𝐶 memiliki fungsi edge.

untuk menyimpan koreksi terhadap superedge Model graph yang paling banyak digunakan

( �, �) ∈ �� 𝑆 pada saat melakukan pembentukan

[1] pada graph database adalah model property kembali dari summary graph menjadi graph graph. yaitu struktur graph yang terdiri atas

awal. 𝐶 berisi entri dengan bentuk ′ − (�, �)′ node,

untuk edge yang tidak terdapat pada �, jika

merepresentasikan dan menyimpan data, seperti superedge yang sama tidak dimasukkan ke contoh pada Gambar 0-2 dibawah ini:

dalam �)′ untuk edge yang terdapat dalam �. �, 𝐶 akan berisi entri dengan bentuk ′ + (�, Rekonstruksi dari summary graph dilakukan

dengan mengembangkan summary �, sehingga

Id: 21

Type: Group Id:3 Label :Bergabung Name:Pelaut Sejak :1996

Id:1 supernode dipecah kembali menjadi node-node

g n bu a Nama: luffy pembentuknya. Untuk setiap supernode bentuk node baru pada himpunan �∈ 𝑉 ,

Id: B �, �) ∈ ��

21 e Umu r: 18 rg 1997 : kemudian pada setiap superedge ( , �� � 𝑆 ,

S e k tambahkan edge antar semua pasangan node el 𝑆 : ja

La b ( �, �) sehingga � ∈ �� � dan � ∈ �� � . Dari

Id:2 pengembangan superedge tersebut,

Nama: zorro

Umur: 19 memungkinkan adanya edge hasil bentukan yang seharusnya tidak terdapat pada graph �

Gambar 0-2 Contoh Struktur Graph Databse mana setiap node �∈ 𝑉 𝑆 , disebut dengan

2.3. Representasi Umum Graph

Representasi dari sebuah graph merupakan gambaran gambaran terhadap graph terseut. tersebut. Secara umum, untuk merepresentasikan sebuah graph

[2] dapat

dijabarkan sebagai berikut, jika diberikan � adalah � = (�, ��) yang terdiri dari graph sebuah graph � = (𝑉 𝐺 , 𝐸 𝑔 ), representasi untuk graph summary edge corrections � = (𝑉

��. Graph summary 𝑆 , �� 𝑆 ) dan sebuah himpunan

tersebut merupakan struktur graph agregasi, di tersebut merupakan struktur graph agregasi, di

��.

Dilakukan dengan cara: didefinisikan fungsi berisi entri ada dalam graph ekuivalen

��(�) yang memetakan buah representasi � ke � jika dan hanya jika salah satu (a) 𝐶 superedge ( � sehingga sebuah edge (�, �) dan

′ + (�, �)′, atau (b) � berisi Jika 𝐶 tidak memiliki entri ′ − (�, �)′. menyoroti struktur dan pola kunci dari graph �, �) sehingga � ∈ �� � merupakan graph summary yang � dan � ∈ �� � maka corrections

𝐶 memungkinkan untuk �,

merekonstruksi keseluruhan graph. Berikut adalah gambaran graph beserta graph summary- nya:

lebih kecil dibanding cost penyimpanan term pertama | himpunan edge �� dan ��). Pada persamaan cost, jika kedua |

�� 𝑆 ��| sama dengan (B). Dengan demikian, 𝑆 | sama dengan (A) dan term ฀̂ = (฀̂, 𝐶̂ ) menunjukkan cost minimal representation, maka prinsip MDL mengatakan bahwa ฀̂ merupakan “kemungkinan terbaik” summary dari graph. Dengan kata lain ฀̂,

฀̂ yang mana merupakan graph �, juga

sebagai tambahan sebagai representasi yang terkompresi mengandung terbaik dari graph

summary terbaik. Sehingga cost minimal Gambar 0-3 Kiri: Graph Original. Kanan

representasi ฀̂ disebut dengan representasi Graph Representatio yang Berisi Graph

Summary(s), Correction(c), dan Pemetaan representasi Himpunan edge supernode yang terdapat dalam �, ditentukan hanya berdasarkan �� 𝑆 dan 𝐶 akibat dari cost 𝑉 𝑆 Supernode . Cara menghitungnya dilakukan sebagai berikut,

MDL [2].

anggap supernode sembarang � dan � dalam Pada Gambar di atas, memperlihatkan graph

𝑉 𝑆 . Definisikan �� �� sebagai himpunan dari yang dikompres dari ukuran (jumlah edges) 11

�, �), sedemikian sehingga menjadi 6 (4 pada graph summary dan 2 pada

semua pasangan (

dan b ∈ �� � ; set ini merepresentasikan correction), untuk melakukan rekonstruksi dari

semua kemungkinan edge pada graph � yang

graph di atas , dilakukan dengan memilih mungkin ada antar kedua supernode tersebut. tetangga dari sebuah node (misal g) di dalam

Selanjutnya, didefinisikan �� �� ⊆ �� �� sebagai graph, langkahnya sebagai berikut: Pertama,

himpunan edge yang benar-benar ada dalam temukan supernode(y) yang mengandung g.

graph original �(�� �� = �� �� ∩ �� 𝐺 ). Sekarang. Kemudian tambahkan edges dari g ke semua

Kita memiliki dua cara untuk enkoding edge node pada supernode yang bertetangga dengan

pada �� �� menggunakan struktur summary dan y. Ini menghasilkan edges

corrections. Cara pertama adalah untuk {(g,a),(g,d),(g,e),(g,f)}. Selanjutnya, lakukan

edges menambahkan superedge ( untuk menambahkan node dalam himpunan �� ��, dan yang kedua adalah untuk �� − �� �� sebagai correction negatif �, �) untuk � dan �� koreksi ke himpunan edge, yaitu dengan

sebagai correction positif untuk ��. Memori �� yang dibutuhkan untuk kedua alternatif adalah

menghapus semua edge dengan entri ‘-’(edge (1 + | �� �� − �� �� |) dan (| �� �� |). Kemudian (g,d)), dan tambahkan edge dengan entri

‘+’(tidak ada pada contoh ini). Ini dipilih mana yang kebutuhan memorinya lebih

kecil untuk enkoding edge �� �� [2]. Maka menghasilkan set edge pada tetangga g sebagai

menghitung cost untuk merepresentasikan {(g,a),(g,e),(g,f)}, yang sama dengan graph

himpunan edge �� �� antara supernode � dan � original. Tahapan ini bisa dilakukan berulang

graph �.

pada semua node

� superedge ( �� 2.4. Representasi MDL = ���{|�� �� − �� �� | + 1, | �� |} Selanjutnya � jika dan hanya jika �� correction positif dan negatif �, �) akan ada pada graph summary �� >( �� �� �� + 1) ∕ 2; Prinsip Minimum Description Length

𝑉 𝐺 untuk merekonstruksi

dalam representasi adalah:

kemudian dipilih berdasarkan hasil perhitungan (MDL)

inferensi(penarikan kesimpulan) induktif yang

2.5. Algoritma Greedy dalam Kompresi

memberikan

solusi umum

pemilihan masalah [8], MDL berdasarkan pada Dalam kompresi graph database, greedy pemahaman berikut: setiap regularitas dalam

akan membentuk kandidat solusi dengan data dapat digunakan untuk untuk mengompres

melakukan perhitungan terhadap nilai cost data tersebut, misalnya untuk menggambarkan

reduction pada sembarang pasangan node dam suatu data menggunakan simbol yang lebih

graph. Menurut pengamatan Saket Navlakha [2], sedikit dibanding penggunaan simbol yang

sembarang pasangan node akan memiliki nilai diperlukan sebenarnya. Secara kasarnya [2],

cost reduction jika pasangan tersebut memiliki MDL menyatakan bahwa teori terbaik untuk

tetangga yang sama. Semakin besar jumlah menyimpulkan suatu bentuk set data adalah

tetangga yang sama semakin besar pula yang meminimalisasi jumlah dari (A) ukuran dari teori dan (B) ukuran data ketika di encode dengan teori.

Untuk penerapan dalam graph, data merupakan graph input summary � dan correction 𝐶 secara � sedangkan teori adalah esensial merepresentasikan enkoding data sehubungan dengan teori. Didefinisikan cost dari representation � = (�, ��) menjadi jumlah

storage cost dari dua komponennya sendiri, sehingga menyimpan dan memetakan ����(�) = |�� 𝑆 | + | ��|. (hiraukan cost supernode

karena ini secara umum �� � �∈ 𝑉 untuk 𝑆 karena ini secara umum �� � �∈ 𝑉 untuk 𝑆

dilakukan proses tersebut. Berdasarkan observasi tersebut maka

komputasi sedemikian sehingga menghasilkan dapat definisikan �(�, �) adalah cost reduction

representasi graph yang terkompres dan

untuk sembarang pasangan supernode summary -nya yang dapat dijadikan untuk ( �, �) dengan persamaan sebagai berikut:

analisis lebih lanjut. Untuk mengetahui �(�, �) = (�

validitas hasil representasi graph dilakukan Definisikan

dan v ∈𝑉 𝑆 , dengan

rekosntruksi terhadap graph representasi untuk himpunan tetangganya masing-masing �� � dan dilakukan perbandingan hasil query dengan

�� , terdapat edge ( �, �) dalam graph � dengan � graph input. Berikut gambaran umum dari node � ∈ �� � dan � ∈ ��

� Pada persamaan di

sistem yang akan dibangun:

atas, nilai �(�, �) didapat dari perhitungan

3.2. Graph Summaryzation

perbandingan atau rasio pengurangan dari: cost

berfungsi untuk hasil penggabungan digabungkan. Di mana nilai baru �, dan jumlah cost � dan � sebelum � dan � menjadi supernode dari supernode � yang didapat dengan � � merupakan cost

Graph summaryzation

melakukan komputasi terhadap graph masukan, menjumlahkan semua cost dari superedge

keluaran berupa ( �, �), � merupakan tetangga dari nodesuper �

kemudian menghasilkan

representasi graph dalam bentuk summary dan dengan � ∈ �� � , lihat persamaan, maka nilai correction dengan kompresi yang baik. � � = � �� = ���{|�� �� − �� �� | + 1, | �� �� |} Library Graphstream [10] digunakan untuk

Alasan memilih bagian kecil daripada cost memudahkan perhitungan, pemodelan struktur reduction absolut adalah bahwa akhir secara

data, visualisasi graph, serta fungsionalitas inheren terbias ke arah node dengan derajat

lainnya. Pada graphstream terdapat objek lebih tinggi. Dikarenakan pada dasarnya

graph, node, dan edge yang dapat ditambahkan memilih pasangan node dengan jumlah

atribut dengan tipe apa saja baik itu tipe primitif tetangga sama yang tertinggi. Node tersebut

(string, integer, array, dst) atau tipe bentukan, juga bisa memiliki jumlah tetangga tak sama

Ini digunakan pada supernode, yang merupakan yang tertinggi. Yang secara tidak langsung

objek node dengan tambahan atribut “node” menyatakan bahwa node tersebut harus

untuk menyimpan node-node pembentuknya. memiliki prioritas lebih rendah dibanding dua

Sedangkan untuk kebutuhan visualisasi graph node dengan derajat lebih rendah dengan set

pada sistem digunakan objek viewer. tangga yang identik. Fractional cost reduction

a. Fase inisialisasi

menjamin bahwa kasus tersebut tidak terjadi Padap fase ini yang proses pertama adalah dengan menormalisasikan cost reduction

membentuk supernode 𝑉 𝑆 dari setiap node 𝑉 𝐺 dengan cost sebenarnya. Sangat penting untuk

graph masukan, kemudian lakukan diamati bahwa normalisasi tersebut tidak

perhitungan cost reduction �(�, �) terhadap membuat cit dari pasangan manapun berganti

semua kombinasi pasangan supernode yang dari negatif menjadi positif(atau kosong) atau

berjarak dua hop.

Perhitungan cost reduction menggunakan menggabungkan sepasang memberi cost

reduction. Maka �(∙) tidak akan menghalangi melakukan perhitungan � � , namun pada � dan � untuk proses ini tidak dilakukan penghapusan node

persamaan memerlukan penggabungan sementara pasangan node

untuk memilihnya dengan cepat. (tapi hanya bisa mengubah urutan). Perhatikan nilai

� dan � tetapi node � akan dihapus setelah perhitungan selesai.

maksimum yang dapat diterima �(�, �) adalah Pemilihan pasangan node yang berjarak .5, ketika set tetangga dari dua mode identik [2].

dua hop dilakukan karena berdasarkan Dalam prosesnya, algoritma greedy secara

pengamatan pada paper rujukan [2] yang mana iteratif menggabungkan pasangan ( �, �) pada pasangan node akan mempunyai nilai cost graph dengan nilai maksimum

reduction �(�, �)(pasangan terbaik). positif jika memiliki tetangga yang

sama. Jika memiliki tetangga yang sama, tentu tetangga tersebut menjadi penghubung antar

3. PERANCANGAN SISTEM

kedua node tersebut yang memberikan jarak

3.1. Deskripsi Sistem

dua hop,

Dalam Tugas Akhir ini akan dibangun dan Selanjutnya, dari hasil perhitungan dilakukan pengujian terhadap sistem yang

didapat nilai cost reduction untuk setiap mengimplementasikan prinsip MDL untuk

pasangan yang di masukkan dalam heap tersebut bernilai positif ( � jika nilai cost reduction ( �, �, �(�, �)) ke melakukan komputasi representasi graph

�(�, �) > 0). Heap � merupakan struktur data Max-heap yang

dengan algoritma greedy terhadap graph input. selalu menempatkan nilai maksimum di posisi Dataset input yang digunakan dalam pengujian

akan selalu sistem adalah dataset SNAP [9]. Kemudian dari

head- nya.Ini

digunakan

memberikan nilai cost reduction maksimum memberikan nilai cost reduction maksimum

memiliki nilai cost reduction positif.

b. Fase Penggabungan Iteratif

c. Fase Output

Setelah dilakukan fase inisiasi maka Fase terakhir merupakan proses diperoleh nilai heap dari setiap pasangan node

menelusuri setiap pasangan supernode penggabungan yang untuk setiap pasangan superedge ( mungkin ( 𝑉 𝑆 ). Prosesnya adalah dengan �, �) hasil � dan Penggabungan

pembentukan edge summary dan correction

untuk

digabungkan.

�, kemudian lakukan perhitungan cost untuk superedge (

�, �), yaitu dengan menghitung supernode dilakukan pada fase ini secara

�� berulang hingga isi heap menjadi kosong.

jumlah edge yang mungkin (

�� )dan jumlah

�� Langkah pertama, ambil satu pasangan

edge yang benar benar ada (

�� ) di antara kedua supernode Dapat dilihat jika

> ( �, �) dari posisi head (dengan nilai cost ( �� �� + 1) ∕ 2 maka superedge akan terdapat reduction maksimum) dari heap. Kemudian

dalam graph. gabungkan pasangan node tersebut menjadi

Dari perhitungan di atas kemudian supernode ( � = � ∪ �). Pada proses lakukan pembentukan data correction dengan penggabungan, setiap node anggota yang

tambahkan correction melihat kondisi: jika �� �� ′ − (�, �)′ untuk > ( �� �� + 1) ∕ 2, berada dalam atribut

tambahkan correction “node” pada � dan � semua ( . �, �) ∈ �� ′ + (�, �)′ untuk semua (�, �� − �� �� , sebaliknya

dimasukkan ke dalam atribut “node” pada � .

3.3. Rekonstruksi Graph

Selanjutnya tambahkan superedge untuk Pembentukan kembali graph summary setiap tetangga � dan � terhadap � , Terdapat

masukan awal

beberapa kondisi penambahan superedge menggunakan summary dan correction, di sini pada penggabungan node, yaitu:

penulis melakukan cara yang sedikit berbeda - Jika pada salah satu pasangan antar

dengan cara pada paper rujukan [2], yaitu node anggota � dengan � terdapat

dilakukan dengan mengembangkan node

edge, maka supernode akan memiliki anggota semua supernode dan kemudian selfedge .

lakukan perbaikan dengan menggunakan data - Jika � dan � memiliki tetangga yang

dari koreksi, berikut proses yang berlangsung

sama, maka superedge ditambahkan

pada proses rekonstruksi:

dari � ke tetangga tersebut.

1. Untuk semua supernode pada ( 𝑉 𝑆 ),

Setelah proses penggabungan selesai, bentuk node baru berdasarkan node- Dikarenakan node maka hapus kedua node

node anggota dari atribut dalam heap yang mengandung 𝑉 𝑆 , maka hapus setiap pasangan dalam � dan � sudah tidak ada � dan � dari 𝑉 𝑆 ’node’pada

� atau �. Kemudian

lakukan perhitungan cost reduction kembali supernode .(semua atribut node anggota dengan mengganti � atau � dengan � untuk

disalin ke dalam node baru)

pasangan yang dihapus tersebut. Selanjutnya �, �) lakukan

2. Untuk semua superedge(

tambahkan ke dalam heap pasangan tersebut penambahan edge untuk setiap pasangan jika memiliki nilai cost reduction positif.

node anggota � dengan �. Misalnya:

3. Tambahkan edge( �, �) untuk setiap - (

�, �)hapus dari heap. ′ + (�, �)′.

entri correction

( �, �)tambahkan ke dalam heap

4. Hapus edge( �, �) untuk setiap entri

correction ′−( �, �)′

jika cost reduction-nya positif.

- ( �, �)hapus dari heap. Setelah proses di atas dilakukan, akan (

�, �)tambahkan ke dalam heap didapat graph rekonstruksi yang sesuai dengan jika cost reduction-nya positif.

graph awal.

Dengan adanya penggabungan � dan �,

4. PENGUJIAN DAN ANALISIS

tidak hanya akan mempengaruhi nilai cost

atau reduction � tetapi juga akan mempengaruhi nilai pasangan yang mengandung �, �, Tujuan pengujian yang dilakukan pada

4.1. Tujuan Pengujian

cost reduction pasangan yang mengandung dengan node (misalkan tetangga � dan/atau � (sekarang menjadi �) yang sebelumnya bertetangga �) ; � ∈ �� penelitian ini adalah:

1. Untuk melakukan analisis terhadap hasil memperbarui nilai heap pasangan yang

dilakukan perhitungan kembali untuk �

. Maka, perlu

implementasi kompresi graph database mengandung � ∈ �� � tersebut, seperti langkah dengan mengimplementasikan algoritma

sebelumnya(penghapusan dan penambahan

greedy .

heap ).

2. Untuk melakukan analis terhadap tingkat Kemudian lakukan perulangan ke langkah

kompresi graph database awal dan hasil pertama hingga didapat hasil optimum, di

kompresi oleh sistem.

3. Untuk melakukan analisis terhadap

4.3. Skenario Pengujian

performasi representasi graph hasil. Untuk mengamati serta mengevaluasi

4. Untuk melakukan pengecekan performa sistem dalam membentuk representasi lossless/lossy compression terhadap graph

graph dilakukan dengan mengujikan pada rekonstruksi dari graph yang dikompres.

masukan dataset yang bervariasi. Setiap graph

masukan akan diproses masing-masing dengan Untuk melakukan pengujian terhadap

4.2. Data Pengujian

greedy yang sistem yang dibangun digunakan graph

menggunakan

algoritma

menghasilkan representasi graph masukan, masukan yang diambil dari beberapa dataset

kemudian dibandingkan dan dihitung parameter- dan juga menggunakan graph masukan yang

parameter seperti waktu, derajat rata-rata, digenerate/dibentuk

rasio kompresi, serta cost reduction- nya. menggunakan beberapa metode pembentukan

4.4. Analisis Hasil Pengujian

graph. Berikut rincian data yang digunakan: Pada bagian ini akan dikemukakan hasil

pengujian dari skenario di atas dan kemudian Dataset untuk graph masukan merupakan

a. Dataset Graph

dilakukan analisis.

dataset dengan jumlah node dan edge

a. Analisis Performa Implementasi Sistem

bervariasi, diambil dari beberapa dataset

1. Analisis Graph Generator Random

gephi yang tersedia pada [5]. Percobaan graph random di atas dilakukan  Les Miserables: Merupakan data

pembentukan graph dengan menaikkan hubungan karakter dalam novel Les

jumlah edge pada masing-masing graph dengan Miserables, D. E. Knuth, The Stanford

node 100 dan 1000. Untuk mengetahui GraphBase:

A Platform

for

seberapa besar pengaruh jumlah Combinatorial Computing, Addison-

edge Wesley, Reading, MA (1993).

terhadap besar edge reduction. Dari tabel hasil  Facebook: Merupakan dataset graph

di atas dapat dilihat bahwa sistem dapat tidak berarah hubungan pertemanan

mengurangi jumlah edge maksimum yaitu facebook yang di ekstrak dari akun

dengan edge facebook

pada graph

Rand1000_b

reduction sebesar 84% dan pengurangan menggunakan NetGet [11]. NetGet

penulis

sendiri

jumlah edge terkecil adalah pada graph merupakan versi modifikasi dari

rand100_a sebesar 66,96% yang mana derajat aplikasi Netvizz oleh Bernhard Rieder,

rata-rata dari graph tersebut adalah 1,13, ini  Net Science: Merupakan dataset

menunjukkan bahwa setiap node memiliki jaringan tulisan ilmuwan yang meneliti

tetangga rata-rata 1.13 dengan demikian pada dan

saat penggabungan dua node, kedua node jaringan, yang disusun oleh M.

bereksperimen dengan teori

tersebut tidak memiliki tetangga yang sama Newman pada May 2006.

superedge menuju  Power: Merupakan graph undirected

yang mengakibatkan

tetangga salah satu node tidak ada. Semakin yang merepresentasikan topologi dari

banyak superedge yang tidak terbentuk makan Power Grid di Amerika Serikat. Data

graph akan semakin menjadi ter-cluster, dirangkum oleh D. Watts dan S. H.

perhatikan pada gambar di bawah dapat dilihat Stronggatz. D. J. Watts and S. H.

bagaimana graph original rand100_a saat Strogatz,

dibentuk summary-nya terpecah menjadi sub- (1998).

Nature 393,

440-442

 Internet Routers: Gambaran struktur

graph

internet pada level sistem autonomous, Pada percobaan yang dilakukan, graph oleh Mark Newman pada 22 july 2006.

masukan tetap memberikan summary yang ter- cluster sampai pada graph rad100_c dengan

nilai derajat rata-ratanya 8.60. Pada graph Pada pembentukan graph masukan

b. Graph yang di-generate

rand1000_b memberikan summary yang ter- dengan cara generate, jumlah node dapat

cluster walau dengan derajat rata-rata 11,04, ditentukan dan disesuaikan dengan kebutuhan

graph yang dihasilkan berikutnya sudah tidak pengujian, sedangkan jumlah edge yang

ter-cluster.

dihasilkan bergantung kepada variabel- variabel masukan untuk membentuk graph

Perbandingan jumlah node antara graph dari jenis generator itu sendiri, Berikut

masukan dengan graph hasil kompresi di generator yang digunakan:

mana tidak terjadi pengurangan yang cukup  Generator Graph Random

signifikan untuk jumlah edge yang berbeda  Generator Barabàsi-Albert

yaitu dengan rata-rata 38%. Sedangkan untuk

 Generator Graph Dorogovtsev-Mendes perbandingan pengurangan edge terjadi  Generator Graph Dorogovtsev-Mendes perbandingan pengurangan edge terjadi

Bara100_e sebesar 38,90% dan rand100_a menjadi 79,24% dari jumlah edge

graph

terbesar pada graph Bara1000_b 60,60% 819 pada rand100_d, kemudian terjadi

dengan pengurangan node rata-rata 49,96%, penurunan pada graph dengan jumlah edge

sedang pengurangan edge paling besar pada selanjutnya. Dengan rata-rata pengurangan

Bara1000_e sebesar 79,64% dan terkecil pada edge -nya adalah 67%.

Bara1000_a sebesar 68,67%, dengan rata rata pengurangan edge sebesar 75,61%.

Dari pengujian yang dilakukan pada graph Graph

2. Analisis Graph Barabàsi-Albert

Barabàsi-Albert dapat dihasilkan graph output memberikan hasil summary yang tidak jauh

generator

Barabàsi-Albert

dengan rasio kompresi rata rata yaitu berbeda dengan generator random. Berikut

69,47%, serta edge reductionnya di bawah potongan hasil pengamatan (Lebih Lengkap

random dengan rata-rata 74,43% dapat dilihat pada lampiran) terhadap graph

Barabàsi-Albert:

3. Analisis Graph Generator

Percobaan graph Barabàsi-Albert di atas

Dorogovtsev-Mendes

dilakukan

Pengujian pada graph Dorogovtsev- menaikkan jumlah edge pada masing-masing

Mendes menghasilkan edge reduction yang graph dengan node 100 dan 1000. Untuk

bernilai rata-rata 55.11% dan dikarenakan mengetahui seberapa besar pengaruh jumlah

pada generator ini selalu menghasilkan graph edge terhadap besar edge reduction. Dari

dengan kisaran derajat rata-rata yang rendah, tabel hasil di atas dapat dilihat bahwa sistem

maka menghasilkan graph yang sedikit tar- dapat mengurangi jumlah edge maksimum

cluster . berikut data hasil kompresi graph yaitu pada graph Bara1000_e dengan edge

Dorogovtsev-Mendes :

reduction sebesar 79,64% dan pengurangan Karena proses pembentukan graph input jumlah edge terkecil adalah pada graph

Dorogovtsev-Mendes sama untuk variabel rand1000_a sebesar 68,67% yang mana derajat

masukan berbeda, graph yang dihasilkan rata-rata dari graph tersebut adalah

memiliki derajat rata rata relatif sama, yaitu 4. 1,29, ini menunjukkan bahwa setiap node

Sehingga cost reduction yang didapat juga memiliki tetangga rata-rata 1.29 dengan

relatif sama yaitu pada nilai rata rata 55.11%, demikian pada saat penggabungan dua node,

tidak terlalu terjadi perubahan hasil kompresi kedua node tersebut tidak memiliki tetangga

graph dengan adanya variasi jumlah node dan yang sama yang mengakibatkan superedge

edge,

menuju tetangga salah satu node tidak ada. Pengurangan jumlah node tertinggi Semakin banyak superedge yang tidak

terjadi pada graph Dorogov_b dan terbentuk makan graph akan semakin menjadi

Dorogov_c sebesar 45,50%, dan yang terkecil ter-cluster, perhatikan pada gambar di bawah

pada Dorogov_a sebesar 43%, sedangkan dapat dilihat bagaimana graph original

ada pada bara1000_a saat dibentuk summary-nya

Dorogov_a sebesar 64,47% dan terkecil pada terpecah menjadi sub-graph.

Dorogov_e dengan nilai 56,96%. Dari hasil pengujian ini dapat dilihat

4. Analisis Graph Dataset.

secara visual tidak terjadi peng-clusteran Dari data di atas dapat dilihat bahwa graph mulai dari graph Bara100_d dengan derajat

masukan dari dataset menghasilkan cost rata-rata 15,28 dan pada graph Bara1000_e

reduction dengan rata-rata 69.66% dengan dengan derajat rata-rata 31,73.

cost reduction terbesar pada graph Facebook Pengurangan node untuk graph Bara100

sebesar 78,02% dan terkecil pada graph tidak dipengaruhi secara signifikan oleh

Power 58,38%.

penambahan jumlah edge. Terjadi penurunan Pengurangan jumlah node untuk setiap jumlah pengurangan pada graph Bara100 dari

masing-masing graph input dengan rata-rata awal hingga graph Bara100_e kemudian naik

sebesar 49.05% yang terbesar adalah pada pada graph Bara100_f. Pengurangan node

masukan LesMiserables sebesar terkecil sebesar 40% pada graph Bara100_d

graph

59.74% dan yang terkecil pada graph dan Bara100_e dan yang terbesar pada graph

Facebook sebesar 41.09%, sedangkan untuk Bara100_a sebesar 52% dan dengan rata-

pengurangan edge didapat hasil rata-rata ratanya adalah sebesar 43,33%, sedangkan

76,93% dengan pengurangan edge terbesar untuk pengurangan edge terbesar terjadi pada

pada graph LesMiserables sebesar 79.92%, graph Bara100_f sebesar 78,55% dan terkecil

dan yang terkecil pada graph Power sebesar pada graph Bara100_c sebesar 69,49%

dengan pengurangan edge rata-rata sebesar 73.44%.

4.5. Analisis Waktu Kompresi. a a

Dari beberapa dataset yang telah diujikan,

d b bd

dapat dilihat bahwa jumlah edge sangat mempengaruhi lama waktu eksekusi yang

diperlukan oleh sistem untuk membentuk

summary . Berikut adalah waktu yang diperlukan oleh system dalam milidetik:

Waktu yang diperlukan untuk membentuk Gambar 0-4 Query Error pada graph Kiri: graph summary semakin besar sebanding

Graph Masukan, Kanan: Graph hasil dengan jumlah edge pada graph tersebut,

dengan jumlah yang besar tentu derajat rata- Berikut pengamatan yang dilakukan pada rata graph tersebut menjadi tinggi dan

graph dataset LesMiserables, dipilih karena membuat iterasi penentuan kandidat solusi

ukuran yang kecil untuk memudahkan pasangan yang akan digabungkan menjadi

pengamatan.

semakin lama, karena kemungkinan sepasang node berjarak 2-Hop semakin banyak maka kandidat pasangan yang dimasukkan ke dalam heap untuk diproses semakin besar, dan tentu perhitungan cost reduction untuk masing-masing kandidat menambah waktu proses. Dapat diperhatikan pada data masukan Facebook, walaupun jumlah node graph

Gambar 0-5Kompresi Graph LesMiserables masukan etscience lebih besar dari node

Facebook, tetapi waktu yang dibutuhkan Dari kompresi diatas, kemudian dilakukan untuk melakukan summary sangat jauh lebih

query terhadap graph masukan dan summary besar pada graph masukan Facebook daripada

dengan ID node awal “0” yang memberikan Netscience.

hasil query pada Tabel 0-1 .

4.6. Analisis Performa Graph Kompresi

Pengujian dilakukan dengan Tabel 0-1 Hasil Query Node 0 Graph Les Miserables menggunakan skenario yang telah dijelaskan sebelumnya menggunakan query terhadap tetangga node yang dipilih secara random

pada masing-masing graph masukan. Untuk

detail hasil yang didapat dapat dilihat pada

lampiran.

Berdasarkan pengujian yang dilakukan,

hasil yang diperoleh untuk query pada node

random terdapat perbedaan node tetangga antara graph masukan dengan graph hasil pada setiap level kedalamannya, hal ini terjadi dikarenakan adanya informasi yang hilang

Pada Tabel 0-1 , dapat dilihat bahwa terdapat atau edge yang terputus dari satu supernode

perbedaan hasil query antara graph awal ke tetangga node pembentuknya pada saat

dengan graph summary, pada depth ke-1 tidak penggabungan

terjadi eror, sedangkan pada depth ke-2 terjadi diakibatkan penggabungan dua buah node

eror pada 3 node, yaitu node dengan ID 64 dan yang awalnya jika dilakukan query dari suatu

58 yang seharusnya ada pada graph summary, node. Contoh kasus misalkan dari node � pada

dan node dengan ID 54 seharusnya tidak ada

Gambar 0-4 yang pasangan node � dengan � pada graph summary. Untuk menelusuri apa digabungkan, maka pada hasil query pada

penyebab eror tersebut maka dilakukan graph masukan pada depth ke-1 adalah node

penelusuran terhadap graph input, summary �, sedangkan pada graph hasil adalah node �

pada hasil adalah node dan masukan adalah node �, dan pada depth ke-2 hasil pada graph �, node e tidak masuk �, � dan �, sedangkan

dan correction.

ke dalam hasil query karena tidak terhubung

dalam correction ( oleh edge ( �, �). Edge tersebut masuk ke +). Jika dilakukan pembacaan correction, ini akan

Tabel 0-2 Correction

meminimalisasi perbedaan hasil query akibat penggabungan pasangan node.

5. PENUTUP

5.1. Kesimpulan

Berdasarkan hasil pengujian dan analisis yang telah dilakukan, maka diperoleh kesimpulan sebagai berikut:

1. Sebuah graph yang tidak berarah dapat dihitung dan dibentuk representasinya menggunakan algoritma greedy dengan

menerapkan prinsip Minimum Description Pertama lakukan penelusuran node 64, dari

(MDL) dapat menghasilkan Tabel 0-1 node

Length

sebuah representasi yang dikompres pada depth ke-3 dalam graph summary, ini

64 masuk ke dalam hasil query

dengan baik. Serta bisa dibentuk kembali terjadi karena penghapusan edge (11,64) dan

menjadi menjadi graph yang sama dengan masuk ke dalam correction, begitu juga untuk

graph awal(losless) dengan menggunakan node dengan ID 58. Untuk node 54 yang masuk

Corrections .

ke dalam hasil query depth ke-2, yang

2. Graph masukan dengan jumlah edge seharusnya masuk ke dalam depth ke-3, ini

mendekati jumlah edge maksimum yang terjadi karena penggabungan antara node 54

dapat dibentuk oleh graph tersebut akan dengan node 26, 51, dan 49. Dimana node 49

memberikan compression ratio yang dan 26 merupakan tetangga pada depth ke-2

semakin besar. Jika graph berbentuk graph dari node 0. Untuk node eror dan correction

representasi yang terkait diberi warna merah pada tabel diatas.

sempurna,

maka

dihasilkan berupa satu node dan satu Jika correction digunakan untuk

dengan compression ratio pemrosesan query maka hasil query yang

selfedge,

sebesar 0.99%.

didapat akan semakin besar erornya, ini

3. Dari analis pengujian menunjukkan disebabkan oleh node yang digabung menjadi

bahwa graph dapat dikompres dengan besar rata rata compression rate yang

supernode akan ikut masuk ke dalam hasil query pada depth tertentu, sehingga node hasil query

dihasilkan pada dataset yang digenerate bertambah dengan node yang tidak seharusnya.

Random, Pada contoh kasus di atas adalah misalnya untuk

menggunakan

generator

Barabàsi-Albert, dan Dorogovtsev – Mendes berturut turut adalah 75.35%,

node

64 kemudian mengikutsertakan correction +(11,64) maka node 65, 58, 57, 62, 59, 61, dan

69,47%, dan 55.11%, serta pada graph

63 akan ikut termasuk ke dalam query pada dataset dengan compression rate pada depth ke-2, yang seharusnya node tersebut

masing-masing graph LesMiserables, masuk ke dalam hasil query depth ke-3.

Poewer, dan Waktu eksekusi query ketetanggaan graph

Facebook,

Netscience,

InternetRouters berturut-turut sebesar pada masing-masing kedalaman antara graph

75.23%, 78.02%, 67.61%, 58.38%, dan masukan dengan graph summary. Bergantung

kepada berapa tetangga yang diproses oleh

4. Compression rate terbesar terjadi pada graph masukan rand1000e yaitu sebesar

query tersebut.

4.7. Analisis Kompresi Lossless/Lossy

79,51%, dikarenakan graph tersebut memiliki edge sebesar 40345 yang

Dari pengamatan terhadap pengujian yang membuat graph tersebut memiliki derajat dilakukan berdasarkan skenario di atas, hasil

rata-rata sebesar 80.69.

dapat dilihat dari hasil query tetangga untuk

5. kemungkinan representasi yang setiap

dihasilkan menjadi ter-cluster. sebaliknya, memberikan hasil yang berbeda dengan graph

nilai dengan derajat rata-ratanya yang input namun dengan yang eror relatif kecil, besar akan menghasilkan representasi semakin dalam kedalaman yang digunakan yang dengan kemungkinan ter-cluster eror yang didapat semakin besar. Maka graph

semakin kecil.

summary yang dihasilkan bersifat lossy.

6. Dengan adanya data yang loss atau error sedangkan graph yang direkonstruksi kembali pada graph representasi, maka metode ini menggunakan correction memberikan hasil lebih cocok digunakan jika kebutuhan query yang sama dengan graph masukan untuk kompresi graph yang bisa graph rekonstruksi dari summary bersifat mentolerir data loss, contohnya: visualisi lossless. graph, visual Mining, dan lain lain.

5.2. Saran

Berikut saran yang dapat diberikan untuk pengembangan lebih lanjut terhadap graph compression:

1. Sistem selanjutnya agar dapat melakukan pengujian terhadap dataset maupun data generate graph yang berarah.

2. Penanganan terhadap data loss atau error pada saat penggabungan edge, sehingga summary yang dihasilkan bisa bersifat lossless dan efisien.

3. Pembacaan correction pada saat melakukan transversal atau query terhadap

graph

summary s

sehingga

didapat hasil query yang relevan dan sesuai dengan graph masukan.

Daftar Pustaka

[1] Bernhard Rieder. NetGet. http://snacourse.com/getnet . Diakses Pada November 2014.

[2] Gephi Dataset. https://wiki.gephi.org/index.php/Datasets . Diakses Pada April 2014.

[3] Paolo Boldi and Sebastiano Vigna, "The Webgraph Framework I:Compression Techniques.," WWW '04 Proceedings of the 13th international conference on World Wide Web, pp. 595 –602, 2004.

[4] Ian Robinson, Jim Webber, and Emil Eifrem, Graph Databases.: O'Reilly Media, June 17, 2013.

[5] Inderjit Dhillon, Yuqiang Guan, and Brian Kulis, "A Fast Kernel-Based Multilevel Algorithm for Graph Clustering.," KDD, pp. 629 –634, 2005.

[6] Jorma Rissanen, "An Introduction to The MDL Principle".

[7] Peter Grunwald, A Tutorial Introduction to the Minimum Description Length Principle., 2004.

[8] Rio Eduardo Bangkit Gideon, Transformasi Relational Database ke Graph Database pada Website Sosial Network., 2013.

[9] Ruohonen Keijo, Graph Theory.,2013. [10] Saket Navlakha, Rajeev Rastogi, and

Nisheeth Shrivastava, "Graph Summarization with Bounded Error," SiGMOD, 2008.

[11] Stefan Balev, Julien Baudry, Antoine Dutot, Yoann Pigné, and Guilhelm Savin. GraphStream - A Dynamic Graph Library. http://graphstream-project.org/

Dokumen yang terkait

PERBANDINGAN PENGGUNAAN METODE AHP DAN METODE SAW UNTUK SISTEM PENDUKUNG KEPUTUSAN PEMILIHAN PAKET LAYANAN INTERNET SKRIPSI Diajukan untuk memenuhi sebagian persyaratan mendapatkan gelar Strata Satu Jurusan Informatika

1 1 137

IMPLEMENTASI METODE SIMILARITY UNTUK PENDUKUNG KEPUTUSAN DIAGNOSIS KANKER SERVIKS SKRIPSI Diajukan untuk memenuhi sebagian persyaratan mendapatkan gelar Strata Satu Jurusan Informatika

0 0 44

MENTERI PENDAYAGUNAAN APARATUR NEGARA DAN REFORMASI BIROKRASI REPUBLIK INDONESIA, Menimbang : a. bahwa untuk pengisian jabatan pelaksana di lingkungan instansi pemerintah diperlukan keseragaman nomenklatur jabatan pelaksana, kualifikasi pendidikan, dan tu

2 4 488

6. Isi dan Sampul Batik Tambal untuk Kakek 0

0 2 62

Antena Mikrostrip UWB untuk Radar Tembus Tembok

0 1 13

Analisis Performansi Metode Graph Decomposition Index pada Graph Database

0 0 7

Model User Experience Aplikasi Pengenalan Belajar Membaca Untuk Pendidikan Anak Usia Dini Menggunakan Metode Hierarchical Task Analysis

0 0 7

Analisis dan Implementasi Process Mining dengan Algoritma Heuristic Miner studi kasus: event logs Rabobank Group ICT Netherlands Analysis And Implementation Of Process Mining with Heuristic Miner Algorithm Case study: Event logs of Rabobank Group ICT Neth

0 0 7

Analisis Dan Implementasi Algoritma Neural Network Pada Classification Dalam Melakukan Prediksi Pelanggan Churn Telkom Speedy

0 0 10

Sistem Pengenalan Individu berbasis Pembuluh Darah Telapak Tangan Menggunakan Sampling Point Approach dan Iterative Closest Point People Identification System Based on Palm Vein using Sampling Point Approach and Iterative Closest Point

0 0 9