BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf,...

34
II-1 BAB II STUDI LITERATUR Secara garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi graf, jenis-jenis graf, dan representasi graf. Teori graf ini diperlukan karena social network biasanya dimodelkan dalam bentuk graf. Pembahasan mengenai social network mencakup definisi social network, data social network, konsep SNA, teknik SNE, serta perangkat lunak social network. Sedangkan pembahasan mengenai text classification mencakup definisi permasalahan klasifikasi, pemilihan atribut klasifikasi, dan algoritma klasifikasi. Studi literatur ini akan memberikan pemahaman yang lebih detil mengenai topik-topik tersebut sehingga akan memudahkan proses pembangunan social network dari dokumen web pada bab selanjutnya. 2.1 Teori Graf 2.1.1 Definisi Graf Secara matematis, graf G didefinisikan sebagai pasangan himpunan (V,E), dimana: V = himpunan tidak-kosong dari simpul-simpul (vertices) = { v 1 , v 2 , ... , v n } E = himpunan sisi (edges) yang menghubungkan sepasang simpul = {e 1 , e 2 , ... , e n } atau dapat ditulis dengan notasi G = (V,E). Gambar II-1 Graf G

Transcript of BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf,...

Page 1: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-1

BAB II STUDI LITERATUR

Secara garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social

network dan text classification. Pembahasan mengenai teori graf mencakup definisi graf,

jenis-jenis graf, dan representasi graf. Teori graf ini diperlukan karena social network

biasanya dimodelkan dalam bentuk graf. Pembahasan mengenai social network

mencakup definisi social network, data social network, konsep SNA, teknik SNE, serta

perangkat lunak social network. Sedangkan pembahasan mengenai text classification

mencakup definisi permasalahan klasifikasi, pemilihan atribut klasifikasi, dan algoritma

klasifikasi. Studi literatur ini akan memberikan pemahaman yang lebih detil mengenai

topik-topik tersebut sehingga akan memudahkan proses pembangunan social network dari

dokumen web pada bab selanjutnya.

2.1 Teori Graf

2.1.1 Definisi Graf

Secara matematis, graf G didefinisikan sebagai pasangan himpunan (V,E), dimana:

V = himpunan tidak-kosong dari simpul-simpul (vertices)

= { v1 , v2 , ... , vn }

E = himpunan sisi (edges) yang menghubungkan sepasang simpul

= {e1 , e2 , ... , en }

atau dapat ditulis dengan notasi G = (V,E).

Gambar II-1 Graf G

Page 2: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-2

Sebagai contoh, pada Gambar II-1, G merupakan graf dengan himpunan simpul V dan

himpunan sisi E sebagai berikut:

V = { 1, 2, 3, 4 }

E = { (1, 2), (2, 3), (1, 3), (1, 3), (2, 4), (3, 4), (3, 4) }

= { e1, e2, e3, e4, e5, e6, e7}

Terdapat beberapa terminologi dasar di dalam teori graf, yaitu:

1. Derajat

Derajat suatu simpul pada graf tak-berarah merupakan jumlah sisi yang bersisian

dengan simpul tersebut. Pada graf berarah, terdapat derajat-masuk (in-degree)

dan derajat keluar (out-degree). Derajat-masuk pada suatu simpul merupakan

banyaknya busur yang masuk ke simpul tersebut. Sedangkan derajat-keluar dari

suatu simpul merupakan banyaknya busur yang keluar dari simpul tersebut.

2. Lintasan (Path)

Lintasan yang panjangnya n dari simpul awal v0 ke simpul tujuan vn di dalam graf

G ialah barisan berselang-seling simpul-simpul dan sisi-sisi yang berbentuk v0, e1,

v1, e2, v2,... , vn –1, en, vn sedemikian sehingga e1 = (v0, v1), e2 = (v1, v2), ... , en = (vn-

1, vn) adalah sisi-sisi dari graf G. Panjang lintasan merupakan jumlah sisi (en)

dalam lintasan tersebut.

3. Graf berbobot (weighted graph)

Graf berbobot adalah graf yang setiap sisinya diberi sebuah harga (bobot).

2.1.2 Jenis-Jenis Graf

Graf dapat dibedakan berdasarkan tiga hal, yaitu ada tidaknya gelang atau sisi ganda,

jumlah simpul, dan orientasi arah pada sisi. Berdasarkan ada tidaknya gelang atau sisi

ganda pada suatu graf, maka graf digolongkan menjadi dua jenis, yaitu:

1. Graf sederhana (simple graph)

Graf sederhana merupakan graf yang tidak mengandung gelang maupun sisi-

ganda.

2. Graf tak-sederhana (unsimple-graph)

Graf yang mengandung sisi ganda atau gelang dinamakan graf tak-sederhana

(unsimple graph). Graf G pada Gambar II-1 merupakan contoh graf tak-

sederhana.

Page 3: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-3

Berdasarkan jumlah simpul pada suatu graf, maka secara umum graf dapat digolongkan

menjadi dua jenis, yaitu:

1. Graf berhingga (limited graph)

Graf berhingga adalah graf yang jumlah simpulnya, n, berhingga. Graf G pada

Gambar II-1 merupakan graf berhingga.

2. Graf tak-berhingga (unlimited graph)

Graf yang jumlah simpulnya, n, tidak berhingga banyaknya disebut graf tak-

berhingga.

Berdasarkan orientasi arah pada sisi, maka secara umum graf dibedakan atas dua jenis,

yaitu:

1. Graf tak-berarah (undirected graph)

Graf yang sisinya tidak mempunyai orientasi arah disebut graf tak-berarah. Graf

G pada Gambar II-1 merupakan graf tak-berarah.

2. Graf berarah (directed graph atau digraph)

Graf yang setiap sisinya diberikan orientasi arah disebut sebagai graf berarah.

2.1.3 Representasi Graf

Untuk maksud pemrosesan pada graf dengan program komputer, maka graf harus

direpresentasikan di dalam memori. Karena itu, terdapat beberapa representasi yang

mungkin untuk graf. Representasi yang biasa digunakan adalah matriks ketetanggaan,

matriks bersisian, dan senarai ketetanggaan.

1. Matriks ketetanggaan (adjacency matrix)

Matriks ketetanggaan merupakan representasi graf yang paling umum. Misalkan

G=(V,E) adalah graf dengan n simpul, n ≥ 1. Matriks ketetanggaan G adalah

matriks berukuran n x n. Bila matriks tersebut dinamakan A = [aij], maka

{ 1, jika simpul i dan j bertetangga

aij

0, jika simpul i dan j tidak bertetangga

Page 4: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-4

Karena matriks ketetanggaan hanya berisi 0 dan 1, maka matriks ini dinamakan

juga matriks nol-satu. Namun, pada perkembangan selanjutnya, matriks

ketetanggaan dapat juga digunakan untuk merepresentasikan graf tak-sederhana

dan graf berbobot. Jika digunakan untuk merepresentasikan graf tak-sederhana,

maka elemen aij pada matriks ketetanggaan sama dengan jumlah sisi yang

berasosiasi dengan (vi, vj). Jika digunakan untuk merepresentasikan graf

berbobot, maka elemen aij pada matriks ketetanggaan sama dengan bobot sisi

yang menghubungkan simpul i dan simpul j. Pada graf berbobot ini, jika tidak

terdapat sisi yang menghubungkan simpul i dan simpul j, maka elemen aij pada

matriks ketetanggaannya diberi simbol tak berhingga (∞).Keuntungan

representasi dengan matriks ketetanggaan adalah elemen matriksnya dapat

diakses langsung melalui indeks.

Gambar II-2 Graf (atas) dan Matriks Ketetanggaannya (bawah)

Gambar II-2 menunjukkan matriks ketetanggaan untuk empat buah jenis graf

yang berbeda. Gambar II-2(a) menunjukkan matriks ketetanggan untuk graf

sederhana dan tak-berarah. Gambar II-2(b) menunjukkan matriks ketetanggan

untuk graf sederhana dan berarah. Gambar II-2(c) menunjukkan matriks

ketetanggan untuk graf tak-sederhana. Gambar II-2(d) menunjukkan matriks

ketetanggan untuk graf berbobot.

Page 5: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-5

2. Matriks bersisian (incidency matrix

Matriks bersisisan menyatakan kebersisian simpul dengan sisi. Misalkan G=(V,E)

adalah graf dengan n simpul dan m buah sisi. Matriks bersisian G adalah matriks

berukuran n x m. Baris menunjukkan label simpul, sedangkan kolom

menunjukkan label sisi. Bila matriks tersebut dinamakan A = [aij], maka

{ 1, jika simpul i berisisian dengan sisi j

aij

0, jika simpul i tidak bersisian dengan sisi j

Matriks bersisian ini dapat diterapkan pada berbagai jenis graf, seperti halnya

pada matriks ketetanggaan. Gambar II-3 menunjukkan matriks bersisian untuk

graf yang direpresentasikannya.

Gambar II-3 Graf (atas) dan Matriks Bersisiannya (bawah)

3. Senarai ketetanggaan (adjacency list)

Senarai ketetanggaan mengenumerasi simpul-simpul yang bertetangga dengan

setiap simpul di dalam graf. Sebagai contoh, senarai ketetanggaan untuk graf

pada Gambar II-2 (a) adalah:

Page 6: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-6

1: 2, 3

2: 1, 3

3: 1, 2, 4

4: 3

5: -

2.2 Social Network

Social network merupakan suatu kajian di bidang sosiologi yang dikembangkan pertama

kali oleh Jacob L. Moreno, seorang psikiater dan ilmuwan di bidang sosial dari

Universitas Harvard, pada tahun 1934. Beliau memperkenalkan istilah sociometry dan

sociogram. Sociometry merupakan studi mengenai social network sedangkan sociogram

merupakan graf yang merepresentasikan social network [KAD04].

Perkembangan kajian social network selanjutnya dilatarbelakangi oleh percobaan yang

dilakukan oleh Stanley Milgram, seorang profesor di bidang sosiologi dari Universitas

Harvard. Pada percobaan tersebut, Milgram mengirimkan seuntaian surat secara acak

kepada 160 orang yang tinggal di daerah pedesaan Wichita dan Omaha, Amerika Serikat.

Orang-orang tersebut diminta untuk meneruskan surat tadi kepada seorang pialang saham

yang tinggal di Boston, yang alamatnya tidak diberitahukan. Penerima surat hanya

diberitahu bahwa jika mereka tidak mengenal pialang saham tersebut, maka mereka harus

meneruskan surat itu kepada orang lain yang menurut mereka mengenal si pialang saham

tadi. Tujuan percobaan ini adalah untuk mengetahui berapa langkah yang dibutuhkan agar

surat tersebut sampai ke tempat tujuan. Hasilnya, pialang saham tersebut ternyata

menerima 42 surat dari 160 surat pada batas waktu yang telah ditentukan. Secara rata-

rata, setiap surat diteruskan sebanyak enam kali sebelum sampai ke tangan pialang

saham tadi. Percobaan yang dilakukan oleh Milgram dan para mahasiswanya pada tahun

1960 tersebut menghasilkan suatu teori yang disebut Teori Six Degrees Of Separation.

Teori ini menyatakan menyatakan bahwa jika hubungan setiap orang di dunia dipetakan

ke dalam graf, maka secara rata-rata setiap orang akan saling terhubung dengan panjang

lintasan sebesar enam [HAM04]. Panjang lintasan merupakan banyaknya sisi yang dilalui

dalam lintasan tersebut.

Page 7: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-7

2.2.1 Definisi Social Network

Social network merupakan pola-pola interaksi sosial yang terjadi antar individu di dalam

suatu komunitas tertentu [EHR05]. Social network biasanya digambarkan dalam bentuk

graf, dimana simpul merepresentasikan aktor dan sisi merepresentasikan relasi sosial

antara aktor-aktor tersebut. Aktor dapat berupa individual maupun kolektif. Contoh aktor

individual adalah manusia dan hewan. Sedangkan contoh aktor kolektif adalah kelompok,

organisasi, departemen, kota, dan negara. Aktor memiliki atribut-atribut yang melekat

pada dirinya. Contoh atribut adalah jenis kelamin dan bidang keahlian. Selanjutnya, pada

Tugas Akhir ini, penyebutan individu akan merujuk pada aktor.

Relasi sosial yang terjadi dapat bermacam-macam, antara lain [BOR92]:

1. Relasi komunikasi, misalnya siapa yang menasihati atau memberikan informasi

kepada siapa.

2. Relasi resmi atau official, siapa yang “melapor” kepada siapa, atau siapa yang

memimpin siapa.

3. Relasi afektif, siapa yang menyukai siapa, siapa yang mempercayai siapa, siapa

yang melakukan hubungan seksual dengan siapa, atau relasi pertemanan.

4. Relasi aliran materi atau aliran kerja, misalnya siapa yang “memberikan” uang

atau materi lainnya kepada siapa.

5. Relasi kognitif, misalnya siapa yang mengenal siapa.

6. Relasi afiliasi, misalnya relasi antara individu-individu yang berada dalam klub

atau organisasi yang sama.

7. Relasi kekeluargaan, misalnya relasi suami-istri, ibu-anak, ayah-anak, atau

kakak-adik.

Relasi sosial yang terjalin antar individu dapat lebih dari satu. Hal ini disebut sebagai

multiple relationship. Sebagai contoh, dua orang individu dapat memiliki relasi resmi

atau official, relasi kekeluargaan, dan relasi afektif.

Selain itu, relasi sosial dapat dikategorikan berdasarkan dua hal, yaitu bobot relasi dan

arah relasi [KIL00]. Berdasarkan bobot relasi, terdapat dua jenis relasi sosial, yaitu:

1. Relasi tak-berbobot (dichotomous relation)

Relasi tak-berbobot hanya mengandung nilai 0 dan 1, sehingga sering disebut

juga relasi boolean atau dichotomous relation. Nilai 0 menyatakan tidak adanya

Page 8: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-8

relasi antara dua buah individu, sedangkan nilai 1 menyatakan adanya relasi

antara dua buah individu. Dengan demikian penggunaan relasi tak-berbobot

hanya ditujukan untuk menyatakan ada tidaknya relasi antara dua buah individu.

2. Relasi berbobot (valued relation)

Pada relasi berbobot, terdapat nilai yang menjadi bobot relasi, sehingga disebut

juga valued relation. Nilai tersebut dapat merepresentasikan beberapa hal, yaitu

kapasitas materi (misalnya informasi, uang, dan lain-lain) yang dialirkan, jarak

antar individu, dan intensitas serta frekuensi hubungan yang terjadi [BOR92].

Berdasarkan arah relasi, terdapat dua jenis relasi sosial, yaitu:

1. Relasi berarah (directed relation)

Relasi berarah memperhatikan asal dan tujuan relasi. Contoh relasi berarah

adalah relasi “menyukai”. Pada relasi menyukai, jika terdapat relasi berarah dari

individu A ke individu B maka A menyukai B tetapi tidak sebaliknya.

2. Relasi tak-berarah (undirected relation)

Relasi tak-berarah tidak memperhatikan asal dan tujuan relasi. Relasi ini

digunakan untuk menyatakan hubungan resiprokal, misalnya saling menyukai

atau saling mengenal.

Gambar II-4 menunjukkan social network pada komunitas peneliti di bidang ilmu

komputer. Gambar tersebut diambil dari [MIK04]. Dari Gambar II-4 dapat dilihat

deskripsi mengenai aktor dan relasi yang telah dijelaskan sebelumnya. Aktor-aktor

merupakan para peneliti yang dikelompokkan berdasarkan bidang penelitian mereka.

Sedangkan relasi sosial yang terjadi meliputi relasi research collaborator, teaching

collaborator, academic committee, dan educational relationship. Relasi sosial tersebut

merupakan relasi tak-berbobot dan tak-berarah. Pada sociogram tersebut dapat dilihat

bahwa terjadi multiple relationship.

Beberapa terminologi dasar yang sering digunakan dalam social network, antara lain:

1. Sociogram

Sociogram merupakan graf yang merepresentasikan social network. Simpul pada

sociogram merepresentasikan individu sedangkan sisi pada sociogram

merepresentasikan relasi sosial antar individu.

Page 9: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-9

Gambar II-4 Social Network pada Komunitas Ilmu Komputer

2. Sociomatrix

Sociomatrix merupakan matriks yang merepresentasikan social network. Baris

dan kolom pada matriks merupakan individu sedangkan isi sel merupakan bobot

relasi, baik untuk relasi tak-berbobot maupun relasi berbobot.

3. Path

Path merupakan lintasan dalam sociogram tanpa ada simpul (individu) yang

berulang.

4. Geodesic

Geodesic merupakan path terpendek antara dua buah simpul.

5. Geodesic distance

Geodesic distance merupakan jarak geodesic atau nilai lintasan terpendek antara

dua buah individu.

Page 10: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-10

2.2.2 Data Social Network

Sumber data yang digunakan untuk membangun social network dapat berupa dokumen

terstruktur maupun dokumen yang tidak terstruktur. Contoh dokumen yang terstruktur

adalah dokumen XML. Sedangkan contoh dokumen tidak terstruktur adalah dokumen

web dan email. Data social network yang dihasilkan dari dokumen terstruktur dan

dokumen tidak terstruktur biasanya direpresentasikan dalam sociomatrix. Sociomatrix

kemudian digunakan sebagai masukan untuk membangun sociogram dan melakukan

berbagai pengukuran dalam SNA.

Kelebihan dari dokumen terstruktur adalah kemudahan dalam proses ekstraksi sumber

datanya. Sedangkan kelemahan dari dokumen terstruktur adalah kurangnya informasi,

terbatasnya jenis relasi yang dapat diungkapkan, serta perlunya usaha tersendiri untuk

menghasilkan dokumen terstruktur tersebut. Contoh usaha yang biasa dilakukan untuk

mengumpulkan data masukan bagi sociogram adalah kuesioner, wawancara, maupun

observasi langsung terhadap komunitas target. Pada kuesioner atau wawancara, para

responden yang merupakan anggota dari suatu komunitas biasanya diberikan daftar nama

seluruh anggota komunitas tersebut. Kemudian, responden diminta untuk memberikan

tanda pada nama-nama dalam daftar yang memiliki hubungan dengannya. Responden

juga dapat diminta untuk memberikan informasi mengenai seberapa sering mereka

mengadakan kontak atau mengenai substansi interaksi sosial yang terjadi. Proyek FOAF

(www.foaf-project.org) merupakan contoh usaha yang dilakukan untuk menghasilkan

dokumen terstruktur. Kebanyakan perangkat lunak social network yang ada di pasaran

saat ini menggunakan dokumen terstruktur sebagai sumber data untuk melakukan SNA.

Perangkat lunak ini akan dibahas pada bagian 2.2.5.

Berlawanan dengan dokumen terstruktur, dokumen yang tidak terstruktur sangat kaya

akan informasi sehingga dapat menghasilkan sociogram yang lebih lengkap dari segi

banyaknya individu dan jenis relasi yang dapat diungkapkan. Namun, diperlukan usaha

yang lebih rumit untuk mengekstrak sumber datanya. Contoh perangkat lunak social

network yang menggunakan masukan berupa dokumen tidak terstruktur adalah

Polyphonet [MAT06]. Polyphonet inilah yang digunakan sebagai acuan utama dalam

pembangunan perangkat lunak dalam Tugas Akhir ini.

Page 11: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-11

2.2.3 SNA

SNA merupakan metode-metode yang melibatkan perhitungan matematis yang

menggunakan graf dan dilengkapi dengan statistik serta model aljabar [PAP06]. Teori

SNA melibatkan berbagai disiplin ilmu, antara lain sosiologi, psikologi sosial,

matematika, ilmu politik, komunikasi, antropologi, dan ekonomi.

2.2.3.1 Ukuran-Ukuran pada SNA

SNA memiliki beberapa ukuran dasar yang sering digunakan, yaitu centrality,

betweenness, closeness, dan density. Centrality, betweenness, dan closeness merupakan

pengukuran jaringan secara individual. Sedangkan density merupakan pengukuran

jaringan secara kelompok. Selain ukuran-ukuran dasar di atas, masih terdapat banyak

ukuran kompleks lainnya yang digunakan untuk menganalisis struktur social network

lebih lanjut, misalnya centrality eigenvector, clustering coefficient, radiality, connectivity,

cohesion, eigen decomposition, structural equivalence, QAP correlation, dan transitivity

[BOR05a] [BOR05b]. Ukuran-ukuran tersebut sudah disediakan oleh berbagai perangkat

lunak social network, misalnya UCINET. Karena itu, perangkat lunak yang dihasilkan

pada Tugas Akhir ini hanya menangani ukuran-ukuran dasar SNA.

1. Centrality

Nilai centrality suatu individu merupakan banyaknya relasi langsung yang dimiliki oleh

individu tersebut. Semakin tinggi nilai centrality suatu individu, semakin sentral

posisinya dalam keseluruhan jaringan. Individu yang menjadi pusat dalam jaringan

biasanya mudah mempengaruhi dan dipengaruhi oleh individu-individu di sekitarnya

[BOR92]. Secara formal, centrality suatu individu ( ) di dalam sociomatrix X

dinyatakan pada persamaan II.1.

= = (II.1)

yang dalam hal ini,

ni = individu ke i

N = jumlah individu

xji = isi sel sociomatrix X baris ke i kolom ke j; sociomatrix tersebut

merupakan matriks boolean dengan nilai 0 menyatakan tidak adanya

relasi dan nilai 1 menyatakan adanya relasi.

Page 12: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-12

Persamaan II.1 merupakan absolute centrality. Absolute centrality tidak dapat

dibandingkan dengan social network lain yang berbeda jumlah individunya. Untuk itu,

persamaan II.1 harus dinormalisasi dengan cara membandingkan absolute centrality dari

setiap individu dengan maksimum jumlah relasi yang mungkin dimiliki oleh seorang

individu. Jika banyak individu dalam komunitas adalah N, maka maksimum jumlah relasi

yang mungkin dimiliki oleh seorang individu adalah N-1. Dengan demikian, nilai

centrality akan berkisar antara 0 dan 1. Centrality yang telah dinormalisasi ini disebut

dengan relative centrality. Jika absolute centrality individu n adalah d(n) dan total

individu adalah N maka relative centrality individu n dinyatakan pada persamaan II.2.

(II.2)

Pada sociogram yang mengandung relasi berarah, terdapat dua macam centrality, yaitu

in-degree centrality dan out-degree centrality. In-degree centrality merupakan banyaknya

relasi langsung yang menuju ke sebuah individu. Out-degree centrality merupakan

banyaknya relasi langsung dari sebuah individu.

2. Betweenness

Betweenness bertujuan untuk mengetahui seberapa besar kemungkinan seorang individu

menjadi perantara dalam hubungan setiap pasangan individu dalam jaringan. Nilai

betweenness suatu individu merupakan banyaknya kehadiran individu tersebut dalam

lintasan terpendek setiap pasangan individu dibandingkan dengan banyaknya lintasan

terpendek setiap pasangan individu tersebut dalam jaringan. Berbeda dengan centrality,

betweennes merujuk pada banyaknya relasi tidak langsung yang dimiliki oleh sebuah

individu. Individu dengan nilai betweenness tertinggi biasanya merupakan individu yang

sering bertindak sebagai perantara dalam jaringan. Secara formal, betweenness suatu

individu ( ) dalam sociogram X dinyatakan pada persamaan II.3.

(II.3)

Page 13: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-13

yang dalam hal ini,

ni = individu ke i; i ≠ j dan i ≠ k

gjk = jumlah geodesic dari individu j ke individu k

gjk (ni) = jumlah geodesic dari individu j ke individu k yang mengandung

individu i.

Persamaan II.3 merupakan absolute betweenness. Normalisasi terhadap persamaan II.3

dilakukan dengan cara membandingkan absolute betweenness suatu individu n dengan

jumlah pasangan individu dalam komunitas tanpa kehadiran individu n tersebut. Jika

banyak individu dalam komunitas adalah N, maka banyaknya pasangan individu yang

mungkin tanpa kehadiran individu n adalah C(N-1, 2). Dengan demikian, nilai betweenness

akan berkisar antara 0 dan 1. Betweenness yang telah dinormalisasi ini disebut dengan

relative betweenness. Jika absolute betweenness individu n adalah cB(n) dan jumlah total

individu adalah N, maka relative betweenness individu n dinyatakan pada persamaan II.4.

Persamaan II.4 ini hanya berlaku bagi relasi tak-berarah.

(II.4)

3. Closeness

Closeness bertujuan untuk mengetahui seberapa dekat seorang individu dengan semua

individu lainnya dalam jaringan. Nilai closeness suatu individu merupakan total geodesic

distance yang menghubungkan individu tersebut dengan setiap individu dalam jaringan.

Individu yang memiliki nilai closeness yang tinggi biasanya merupakan individu yang

paling cepat mengetahui informasi atau isu yang sedang berkembang di komunitasnya.

Selain itu, individu yang memiliki nilai closeness dan centrality yang tinggi umumnya

memegang peranan sebagai pemimpin komunitas [BOR92]. Closeness merupakan invers

dari centrality sehingga secara formal, closeness suatu individu ( ) dalam

sociomatrix dinyatakan pada persamaan II.5.

(II.5)

Page 14: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-14

yang dalam hal ini,

ni = individu ke i; i ≠ j

N = jumlah individu

d(ni,nj) = geodesic distance antara individu ke i dan individu ke j

Persamaan II.5 merupakan absolute closeness. Normalisasi terhadap persamaan II.5

dilakukan dengan mengalikan absolute closeness suatu individu n dengan jumlah

maksimal relasi sosial yang mungkin dimiliki oleh individu n tersebut. Jika banyak

individu dalam komunitas adalah N, maka jumlah maksimal relasi sosial yang mungkin

dimiliki oleh individu n adalah N-1. Dengan demikian, nilai closeness akan berkisar

antara 0 dan 1. Closeness yang telah dinormalisasi ini disebut dengan relative closeness.

Jika absolute closeness individu n adalah cc(n) dan jumlah total individu adalah N, maka

relative closeness individu n dinyatakan pada persamaan II.6.

(II.6)

4. Density

Density menyatakan kerapatan suatu jaringan. Nilai density suatu jaringan merupakan

perbandingan antara banyaknya relasi sosial yang ada dengan banyaknya relasi sosial

yang mungkin dalam jaringan tersebut. Semakin terhubung suatu jaringan, semakin besar

kerapatannya. Jaringan yang rapat adalah jaringan dimana terdapat banyak relasi sosial

yang kuat antara anggotanya [PAP06]. Secara formal, density (∆) suatu sociomatrix X

dengan jumlah individu sebanyak N dinyatakan pada persamaan II.7. Persamaan II.7

hanya berlaku untuk relasi tak-berarah.

(II.7)

yang dalam hal ini,

N = jumlah individu

xji = isi sel sociomatrix X baris ke i kolom ke j; sociomatrix tersebut

Page 15: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-15

merupakan matriks boolean dengan nilai 0 menyatakan tidak adanya relasi

dan nilai 1 menyatakan adanya relasi.

2.2.3.2 Aplikasi SNA

Seiring dengan berkembangnya bidang kajian social network, maka terdapat beberapa

penelitian untuk menerapkan SNA di berbagai bidang, antara lain:

1. Pada bidang medis, Corner (2003) menerapkan teori social network untuk

memodelkan penyebaran penyakit TBC melalui udara pada hewan-hewan di New

Zealand. Hasilnya, penyebaran penyakit TBC tersebut dapat diprediksi melalui

interaksi antara hewan-hewan tersebut [CON06].

2. Pada bidang sosiologi, Liljeros (2001) menganalisis kelakuan seksual manusia

dengan menggunakan teori social network. Hasilnya individu dalam social

network yang berperan sebagai penghubung antar kelompok, cenderung tidak

memilih-milih pasangannya dan cenderung menjadi tersangka utama dalam

penyebaran penyakit menular seksual [CON05]. Selain itu, terdapat juga

penerapan SNA untuk menganalisis kelakuan atau behavior para anggota gang di

New York. Penelitian ini dilakukan oleh [PAP06]. Selanjutnya, Shaw dan McKay

(1942) menerapkan SNA untuk meneliti behaviour para pelaku kejahatan. Hasil

penelitiannya menunjukkan bahwa, para pelaku kejahatan biasanya bergantung

pada jaringan teman-temannya untuk membantu mereka melakukan kejahatan.

Para kriminal pada derah-daerah tertentu di Amerika ternyata tidak hanya

berhubungan dengan para kriminal sebayanya tetapi juga dengan para kriminal

yang lebih tua, yang ternyata juga memiliki hubungan dengan para kriminal yang

lebih tua lagi dan seterusnya. Dari hasil penelitian ini dapat disimpulkan bahwa

tradisi kejahatan diwariskan melalui generasi yang lebih tua dan generasi sebaya

[ZEN06].

3. Pada bidang manajemen personalia, [TAN07] menggunakan konsep SNA untuk

mengatasi masalah pembentukan tim evaluasi proyek yang independen. Masalah

ini terutama muncul pada proyek-proyek berskala besar yang menyerap banyak

tenaga kerja, sehingga sulit untuk membentuk tim evaluasi yang benar-benar

objektif dan independen dari tim proyek.

4. Pada bidang pengembangan proyek perangkat lunak, [HAH06] menerapkan SNA

untuk mengamati pola pembentukan tim pengembang perangkat lunak.

Penelitiannya menggunakan data proyek perangkat lunak dari SourceForge.net.

Page 16: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-16

Selanjutnya, [BIR06] menerapkan SNA untuk mengetahui kaitan kelakuan para

peserta proyek Open Source Software (OSS) terhadap pekerjaan pengembangan

proyek perangkat lunak. Penelitiannya menggunakan aliran email dan arsip

Concurrent Versioning System untuk mendeteksi pola-pola interaksi yang terjadi.

Proyek OSS yang dijadikan objek penelitian adalah proyek Apache HTTP Server

dan Postgres.

5. Pada bidang knowledge management, [ANK03] menerapkan SNA untuk

menganalisis pola-pola relasi, aliran kerja, dan aliran informasi yang terjadi

dalam suatu perusahaan. Hasil analisisnya digunakan sebagai masukan untuk

pengembangan Knowledge Management System (KMS) di perusahaan.

Selanjutnya, [CRO01] melakukan evaluasi efektivitas penggunaan KMS suatu

perusahaan. Hasilnya, ternyata sebagian besar karyawan lebih suka mendapatkan

pengetahuan langsung dari karyawan lain meskipun sudah tersedia arsip-arsip

perusahaan dalam KMS tersebut. Hal ini membuktikan pentingnya integrasi SNA

dalam KMS.

6. Pada bidang keamanan, [ODO06] dan [HOL01] menerapkan SNA pada sumber

data yang berupa aliran pengiriman email untuk mendeteksi keberadaan akun

email yang tidak sah.

7. Pada bidang pemasaran, [DOM05] membangun social network dari situs-situs

knowledge-sharing. Social network yang dihasilkan digunakan sebagai masukan

untuk mendesain strategi pemasaran yang memaksimumkan potensi word-of-

mouth diantara para pelanggan. Berdasarkan hasil penelitian yang dilakukan,

strategi pemasaran yang melibatkan interaksi antar pelanggan ini ternyata mampu

menghasilkan keuntungan yang lebih banyak dibandingkan strategi pemasaran

tradisional.

2.2.4 SNE dari Dokumen Web

SNE merupakan proses ekstraksi sumber data social network untuk mendapatkan

sociogram maupun sociomatrix. Pada bagian ini hanya akan dibahas teknik SNE dari

dokumen web karena sumber data yang digunakan pada Tugas Akhir ini adalah dokumen

web.

Page 17: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-17

2.2.4.1 Teknik SNE dari Dokumen Web

Secara garis besar, proses SNE meliputi penentuan daftar aktor, penentuan keterhubungan

antar aktor, dan penentuan jenis relasi sosial.

1. Menentukan Daftar Aktor

Daftar nama aktor atau individu pada suatu komunitas yang akan diekstrak social

network-nya dapat dikumpulkan melalui dua cara, yaitu secara manual dan secara

otomatis dengan bantuan search engine. Secara manual, nama-nama individu suatu

komunitas didaftarkan terlebih dahulu. Secara otomatis, hanya diperlukan minimal

sebuah nama. Dari sebuah nama tersebut, kemudian dikumpulkan nama-nama lainnya

dengan menggunakan search engine.

ExpandPerson(X,k)

/*mengekstrak nama individu dari halaman web yang terambil oleh

search engine*/

D GoogleTop(“X”,k)

E ExtractEntities (D)

return (E)

Algoritma II-1 Algoritma Ekstraksi Nama Individu dari Dokumen Web

Algoritma untuk mengekstrak nama individu secara otomatis ini dinyatakan dalam

Algoritma II-1. GoogleTop(“X”, k) mengembalikan k dokumen teratas berdasarkan query

untuk nama individu X. ExtractEntities merupakan algoritma yang digunakan untuk

mengekstrak nama orang dari dokumen web. Algoritma ini tidak dijelaskan pada Tugas

Akhir ini karena nama-nama individu pada Tugas Akhir ini dikumpulkan secara manual.

Hal ini dapat dilihat pada bagian 1.4 nomor 4.

2. Menentukan Keterhubungan antar Aktor

Kebanyakan sistem SNE menggunakan bantuan search engine dan prinsip co-occurrence

setiap pasang nama pada dokumen web untuk menentukan keterhubungan antar individu.

Hal ini berdasarkan hipotesis bahwa segala informasi mengenai seseorang yang terdapat

pada suatu situs merefleksikan interaksi sosial yang dimiliki orang tersebut di dalam

dunia nyata [ADA03]. Demikian juga segala informasi mengenai sepasang individu pada

suatu situs merefleksikan interaksi sosial yang dimiliki oleh sepasang individu tersebut.

Page 18: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-18

Karena itu, prinsip co-occurrence dapat digunakan untuk menentukan ada tidaknya relasi

sosial antara sepasang individu berdasarkan ”kedekatan” sepasang individu tersebut pada

dokumen web.

Search engine yang digunakan bisa bermacam-macam, namun yang paling sering

digunakan adalah Google. Properti Google yang digunakan dalam SNE adalah Google hit

dan Google top. Google hit merupakan banyaknya dokumen yang terambil oleh Google

berdasarkan query yang diberikan [ZEN04]. Google top merujuk pada dokumen-

dokumen yang menempati posisi teratas atau paling relevan dengan query yang diberikan.

Proses perankingan dokumen tersebut menggunakan algoritma Google page-rank yang

dapat dilihat pada [BRI98].

Terkait prinsip co-occurrence, terdapat beberapa koefisien dalam bidang Information

Retrieval (IR) yang dapat digunakan untuk mengukur co-occurrence antara dua buah

entitas. Koefisien-koefisien tersebut adalah Matching Coefficient, Mutual Information,

Dice Coefficient, Overlap Coefficient, Jaccard Coefficient, dan Cosine Coefficient.

Masukan untuk setiap koefisien ini didapatkan dari hasil query ke search engine. Sistem

SNE akan menggunakan salah satu dari koefisien ini untuk mengukur co-occurrence dari

setiap pasang nama individu. Apabila nilai co-occurrence dari setiap pasang nama

individu melebihi threshold tertentu, maka kedua individu tersebut dideteksi memiliki

relasi sosial.

Rumusan koefisien-koefisien untuk mengukur co-occurrence dua buah entitas x dan y

dinyatakan pada persamaan II.8, II.9, II.10, II.11, II.12, dan II.13 [MAT06].

a. Matching Coefficient

(II.8)

b. Mutual Information

(II.9)

Page 19: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-19

c. Dice Coefficient

(II.10)

d. Overlap Coefficient

(II.11)

e. Jaccard coefficient

(II.12)

f. Cosine coefficient

(II.13)

Keterangan:

nx = banyaknya kemunculan entitas x

ny = banyaknya kemunculan entitas y

nx^y = banyaknya kemunculan entitas x dan entitas y bersama-sama

nxvy = banyaknya kemunculan entitas x atau entitas y bersama-sama

N = banyaknya dokumen dalam koleksi dokumen

Rumusan koefisien co-occurrence di atas ditujukan untuk penentuan relasi tak-berarah.

Namun, beberapa dari rumusan koefiesien co-occurrence tersebut, yakni persamaan II.9,

II.10, dan II.12 dapat dimodifikasi untuk penentuan relasi berarah. Menurut [TOM03],

untuk menentukan relasi berarah dari simpul asal x, maka penyebut dari persamaan II.9,

II.10, dan II.12 harus diganti dengan nx, dan sebaliknya.

Terdapat dua jenis parameter hasil pencarian Google yang digunakan sebagai masukan

bagi koefisien co-occurrence, yaitu Google hit dan Google top document. Umumnya,

sistem SNE menggunakan salah satu dari kedua parameter tersebut. Secara ringkas,

Page 20: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-20

teknik SNE yang menggunakan parameter Google hit dinyatakan dalam Algoritma II-2.

GoogleHit(“X”) mengembalikan banyaknya dokumen yang terambil oleh Google

berdasarkan query untuk nama individu X. Sedangkan GoogleHit(“X Y”) mengembalikan

banyaknya dokumen yang terambil oleh Google berdasarkan query untuk nama individu

X dan Y. CoocFunction(nx, ny, nx^y) merupakan rumusan koefisien co-occurrence yang

digunakan.

GoogleCoocHit(X,Y)

/*masukan berupa nama individu X dan Y, mengembalikan co

occurrence X dan Y*/

nx GoogleHit(“X”)

ny GoogleHit(“Y”)

nx^y GoogleHit(“X Y”)

rx,y CoocFunction(nx, ny, nx^y)

return (rx,y)

Algoritma II-2 Algoritma Co-occurrence Menggunakan Google Hit

GoogleCoocTop(X,Y,k)

/*masukan berupa nama individu X dan Y, mengembalikan co-

occurrence X dan Y */

Dx GoogleTop(“X”,k)

Dy GoogleTop(“Y”,k)

nx NumEntity(Dx U Dy,X)

ny NumEntity(Dx U Dy,Y)

nx^y NumCooc(Dx U Dy,X,Y)

rx,y CoocFunction(nx, ny, nx^y)

return (rx,y)

Algoritma II-3 Algoritma Co-occurrence Menggunakan Google Top.

Teknik SNE yang menggunakan parameter Google top dinyatakan dalam Algoritma II-3.

GoogleTop(“X”, k) mengembalikan k dokumen teratas berdasarkan query untuk nama

individu X. NumEntity(Dx U Dy, X) mengembalikan banyaknya nama individu X yang

terdapat dalam himpunan dokumen Dx U Dy. NumCooc(Dx U Dy, X,Y) mengembalikan

banyaknya kemunculan nama individu X dan individu Y secara bersama-sama di setiap

dokumen dalam himpunan dokumen Dx U Dy. CoocFunction(nx, ny, nx^y) merupakan

rumusan koefisien co-occurrence yang digunakan. Setelah melakukan query dan

Page 21: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-21

perhitungan co-occurrence, maka dapat dibangun social network dengan menggunakan

Algoritma II-4. GoogleCoocHit yang digunakan pada algoritma ini dapat diganti dengan

GoogleCoocTop.

GetSocialNet(L)

/*masukan berupa daftar nama individu L, mengembalikan social

network G*/

for each X Є L

do set a node in G

for each X Є L and Y Є L

do rx,y GoogleCoocHit(X,Y)

for each X Є L and Y Є L and rx,y > threshold

do set an edge in G

return (G)

Algoritma II-4 Algoritma SNE Menggunakan GoogleCoocHit

3. Menentukan Jenis Relasi Sosial

Terdapat dua cara untuk menentukan jenis relasi sosial antar individu. Cara pertama

adalah membuat daftar jenis relasi sosial secara manual berdasarkan domain komunitas.

Cara yang kedua adalah menentukan jenis relasi sosial secara otomatis berdasarkan isi

dokumen web.

a. Membuat daftar jenis relasi sosial secara manual berdasarkan domain

komunitas

Pada cara yang pertama ini, ditentukan jenis relasi apa saja yang mungkin terjadi

berdasarkan domain komunitas. Kemudian dibangun aturan klasifikasi bagi setiap

jenis relasi sosial. Aturan klasifikasi ini lalu diterapkan pada setiap pasang

individu untuk mendapatkan jenis relasi sosialnya. Dengan demikian, cara

pertama ini dapat diselesaikan dengan pendekatan text classification pada

dokumen web hasil query sepasang nama individu. Yang menjadi kelas target

dari permasalahan text classification adalah jenis-jenis relasi sosial yang telah

ditentukan sebelumnya. Algoritma penentuan relasi ini dapat dilihat pada

Algoritma II-5. Classifier pada algoritma tersebut merupakan berbagai algoritma

klasifikasi yang dapat digunakan, misalnya Naïve Bayes, ID3, dan SVM.

Page 22: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-22

ClassifyRelation(X,Y,k)

/*masukan berupa nama sepasang individu X dan Y,

mengembalikan kelas relasi sosial */

Dx^y GoogleTop(“X Y”,k)

for each d Є Dx^y

do cd Classifier(d,X,Y)

class determine on cd Є Dx^y

return (class)

Algoritma II-5 Algoritma Klasifikasi Relasi Sosial

b. Menentukan jenis relasi sosial secara otomatis berdasarkan isi dokumen

web

Pada cara yang kedua ini, jenis relasi sosial yang terjadi ditentukan berdasarkan

banyaknya kata yang muncul pada dokumen web hasil query yang memuat dua

buah nama individu. Misalnya kata yang paling banyak muncul adalah ”course”,

maka disimpulkan bahwa sepasang individu tersebut memiliki relasi sosial

terlibat dalam suatu mata kuliah yang sama. Pendekatan Term Frequency (TF)

dan Index Document Frequency (IDF) merupakan salah satu pendekatan yang

sering dilakukan pada cara kedua ini. Terkait dengan batasan masalah nomor tiga

pada bagian 1.4, maka cara ini tidak dijelaskan lebih lanjut.

2.2.4.2 Sistem SNE dari Dokumen Web

Sehubungan dengan teknik SNE dari dokumen tidak terstruktur, terdapat tiga sistem SNE

yang telah dikembangkan sejauh ini. Ketiga sistem tersebut membangun social network

pada komunitas akademis. Tinjauan umum mengenai sistem-sistem tersebut dapat dilihat

pada Tabel II-1.

Tabel II-1 Sistem Software Network Extraction dari Dokumen Web

No. Nama

Program

Penentuan

Nama

Individu

Penentuan Keterhubungan antar

Individu Penentuan Jenis Relasi

Karakteristik

Relasi Sosial Parameter search

engine (Google)

Koefisien

Co-ocurrence

1 Referral Web Otomatis Google hit dan

Google top

Jaccard

Coefficient

Tidak ditentukan jenis

relasi sosial

Tak-berarah,

berbobot

2 Flink Manual Google hit Jaccard

Coefficient

Manual dengan

menggunakan proyek

FOAF

Tak-berarah,

tak-berbobot

3 Polyphonet Manual Google hit Overlap

Coefficient

Manual dengan

pendekatan text

classification

Tak-berarah,

tak-berbobot

Page 23: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-23

2.2.5 Perangkat Lunak Social Network

Perangkat lunak social network (social network software) merupakan aplikasi yang

mampu melakukan SNE, SNA, dan visualisasinya. Secara ringkas, beberapa contoh

perangkat lunak social network tersebut dapat dilihat pada Tabel II-2 [HUI03]. Perangkat

lunak social network yang terdapat pada Tabel II-2 merupakan perangkat lunak yang

sudah relatif stabil. Perangkat lunak tersebut menggunakan dokumen terstruktur sebagai

data masukannya. Perangkat lunak-perangkat lunak tersebut umumnya telah mampu

menangani berbagai ukuran SNA yang kompleks. Sebaliknya, perangkat lunak social

network yang menggunakan dokumen tidak terstruktur sebagai masukannya umumnya

lebih fokus pada teknik SNE daripada ukuran-ukuran SNA.

Pada Tabel II-2, setiap perangkat lunak dideskripsikan berdasarkan versi terakhir

perangkat lunak, data masukan, fungsionalitas, serta ketersediaannya. Data masukan

terdiri dari dua jenis, yaitu matriks, serta simpul dan sisi. Fungsionalitas perangkat lunak

terdiri dari ukuran-ukuran SNA dan kemampuan visualisasi sociogram. Ukuran-ukuran

SNA dibedakan menjadi empat jenis, yaitu descriptive methods, structure and location,

roles and positions, dyadic and triadic methods, serta statistical methods. Contoh

descriptive methods adalah centrality dan transitivity. Contoh structure and location

adalah centrality, betweenness, closeness, dan cohesive subgroup. Contoh ukuran roles

and positions adalah structural equivalence dan eigen decompositions. Contoh dyadid

dan triadic methods adalah dyad census, mutuality, dan triad census. Sedangkan contoh

statistical methods adalah QAP correlation [HUI03]. Beberapa ukuran tersebut tidak

dijelaskan pada Tugas Akhir ini karena sangat kompleks dan merupakan istilah-istilah di

bidang sosiologi. Berdasarkan sifat ketersediaannya, terdapat perangkat lunak yang

tersedia dengan bebas dan perangkat lunak yang bersifat komersial. Dari Tabel II-2 dapat

dilihat bahwa hampir semua perangkat lunak komersial menyediakan manual.

Sebaliknya, tidak semua perangkat lunak bebas menyediakan manual.

Dari berbagai perangkat lunak pada Tabel II-2, UCINET (www.analytictech.com)

merupakan perangkat lunak social network yang paling komprehensif dari segi

fungsionalitas. UCINET juga merupakan perangkat lunak social network yang paling

banyak digunakan saat ini [HUI03]. Sayangnya UCINET merupakan perangkat lunak

komersial sehingga pengguna harus membayar untuk mendapatkannya. Sebagai

Page 24: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-24

alternatif, Pajek (vlado.fmf.uni-lj.si/pub/networks/pajek/default.htm) merupakan

perangkat lunak social network yang tersedia secara bebas dan memiliki fungsionalitas

yang relatif lengkap. Akan tetapi, Pajek tidak dilengkapi dengan manual.

Tabel II-2 Perangkat Lunak Social Network

Nama

Program Versi

Data

Masukan

m=matriks, ln=link/node

Fungsionalitas

Ketersediaan

b=bebas,

k= komersial

Manual

a=ada,

t=tidak ada

SNA

d=descriptive methods,

sl=structured and

location, rp=roles and positions, dt=dyadic and

triadic methods,

s=statistical methods

Visualisasi

a=ada, t=tidak ada

Agna 2.0.7 m d, sl a b a

FATCAT1 4.2 ln d, s t b t

GRADAP1 2.0 ln d, sl, dt t k a

InFlow 3.0 ln d, sl, rp a k a

Multinet4 4.24 ln d, rp, s a b t

NEGOPY1 4.30 ln d, sl, rp a k a

NetDraw 1.0 m, ln d, sl a b a

NetMinerII2, 3 2.3.0 m, ln d, sl, rp, dt, s a k a

NetVis2 2.0 m, ln d, sl a b t

Pajek 0.94 m, ln d, sl, rp, dt a b t

PermNet 0.94 m dt, s t b t

PGRAPH5 2.7 ln d, rp t b t

SM

LinkAlyzer3

2.1 ln d a k a

SNAFU 2.0 m, ln d, sl a b t

Snowball1 - ln s t b a

StOCNET 1.4 m d, dt, s t b a

STRUCTURE1 4.2 m sl, rp t b a

UCINET3 6.05 m, ln d, sl, rp, dt, s a k a

Visone 1.0b1 m, ln d, sl a b t

Keterangan:

1 = Aplikasi berbasis DOS yang tidak dikembangkan lagi

2 = Aplikasi dapat diakses langsung dari internet secara bebas

3 = Tersedia versi demo

4 = Aplikasi hanya menyediakan manual untuk beberapa modul tertentu

5 = Aplikasi menyediakan manual setelah melalui proses registrasi manual setelah melalui proses

registrasi.

Page 25: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-25

Selain perangkat lunak social network, terdapat layanan social network (social network

service). Layanan social network merupakan aplikasi yang berfungsi untuk memperluas

social network para penggunanya. Contoh layanan social network adalah friendster

(www.friendster.com), orkut (www.orkut.com), Imeem (www.imeem.com), Yahoo!360

(www.yahoo.com), dan myspace (www.myspace.com). Agar dapat menggunakan layanan

tersebut, pengguna harus mendaftar terlebih dahulu. Layanan social network ini

memungkinkan pengguna untuk saling membagikan informasi pribadi, foto, maupun

arsip pribadi. Pengguna juga dapat mencari seorang individu tertentu dan mengetahui

radius keterhubungannya dengan individu tersebut. Namun, individu yang dicari haruslah

terdaftar pada aplikasi yang bersangkutan. Selain itu, layanan-layanan social network

yang ada pun belum menyediakan fasilitas untuk melakukan SNA. Hal ini dikarenakan

tujuan layanan social network adalah untuk memudahkan perluasan pergaulan dan

sharing informasi di antara para penggunanya, bukan untuk menganalisis struktur social

network yang terjadi.

2.3 Text Classification

2.3.1 Klasifikasi

Klasifikasi merupakan proses untuk mengelompokkan sejumlah objek atau instans ke

dalam kelas-kelas target yang sudah ditentukan sebelumnya. Objek atau instans dapat

berupa dokumen, data relasional, dan lain-lain. Terdapat sejumlah algoritma yang dapat

digunakan pada proses klasifikasi, yaitu Naïve Bayes, ID3, k-Nearest Neighbour, dan

SVM.

Proses klasifikasi terdiri dari dua tahap, yaitu tahap pembelajaran dan tahap klasifikasi itu

sendiri [HAN01]. Proses klasifikasi memerlukan dua jenis data, yaitu training set dan test

set. Baik training set dan test set direpresentasikan dalam tupple-tupple yang memiliki

pasangan atribut dan nilai. Setiap tupple pada training set dan test set telah diberikan

kelas target masing-masing. Karena itu, klasifikasi tergolong dalam supervised learning

[HAN01].

Tahap pembelajaran menghasilkan model klasifikasi dengan menerapkan algoritma

klasifikasi tertentu pada training set. Hal ini diilustrasikan pada Gambar II-5 [HAN01].

Page 26: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-26

Model klasifikasi dapat berupa aturan klasifikasi (classification rule), pohon keputusan,

atau formula matematika.

Gambar II-5 Tahap Pembelajaran pada Proses Klasifikasi

Gambar II-6 Tahap Klasifikasi pada Proses Klasifikasi

Pada tahap klasifikasi, dilakukan pengujian terhadap akurasi model klasifikasi yang

didapatkan dari tahap pembelajaran. Pengujian tersebut melibatkan test set. Akurasi

model klasifikasi merupakan persentase data pada test set yang diklasifikasi dengan benar

Page 27: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-27

oleh model klasifikasi [HAN01]. Jika nilai akurasi dapat diterima atau melebihi threshold

tertentu, maka model klasifikasi tersebut dapat digunakan untuk mengklasifikasikan data

yang baru, yaitu data yang kelas targetnya belum diketahui. Hal ini diilustrasikan pada

Gambar II-6 [HAN01].

2.3.2 Pemilihan Atribut Klasifikasi pada Text Classification

Permasalahan yang dijumpai pada text classification adalah penentuan atribut klasifikasi

(feature selection). Objek yang sering dijadikan atribut adalah kata-kata yang terdapat

dalam training set. Namun, seberapa valid suatu kata dapat dijadikan atribut klasifikasi

merupakan inti permasalahan feature selection. Beberapa penelitian di bidang text

classification menggunakan pendekatan Mutual Information untuk menentukan atribut

klasifikasi [JOA96].

Mutual Information (MI). MI merupakan pendekatan yang paling sering digunakan

untuk menentukan atribut klasifikasi dalam text classification. MI tergolong pendekatan

bags-of-words, yaitu dokumen direpresentasikan sebagai vektor kata. MI menentukan

kata-kata apa saja yang paling mendeskripsikan suatu kelas target tertentu. Jika terdapat

sebuah kata t dan sebuah kelas target c, maka MI kata t dan kelas target c, yaitu I(t,c)

dinyatakan dalam persamaan II.14. I(t,c) akan bernilai 0 jika kata t dan target kelas c

bersifat independen.

(II.14)

yang dalam hal ini,

A : jumlah kemunculan kata t dalam kelas target c

B : jumlah kemunculan kata t di luar kelas target c

C : jumlah kemunculan kelas target c yang tidak mengandung kata t

N : jumlah total koleksi dokumen

Selain pendekatan bags-of-words, terdapat pendekatan bersifat subjektif, sesuai dengan

tujuan klasifikasi. Pada Tugas Akhir ini, akan dikaji penentuan atribut klasifikasi dengan

pendekatan subjektif pada Polyphonet. Atribut klasifikasi pada Polyphonet ini dikaji

Page 28: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-28

karena tujuan klasifikasinya sama dengan tujuan klasifikasi pada Tugas Akhir ini, yaitu

untuk menentukan jenis relasi sosial antar individu.

Tabel II-3 Kelompok Kata pada Polyphonet

Kelas

Target Kata-Kata

A Publication, paper, presentation, activity, theme, award, authors, etc

B Member, lab, group, laboratory, institute, team, etc

C Project, committee

D Workshop, conference, seminar, meeting, sponsor, symposium, etc

E Association, program, national, journal, session, etc

F Professor, major, graduate student, lecturer, etc

Pada Polyphonet, terlebih dahulu dilakukan pengelompokkan kata-kata yang paling

sering muncul di setiap kelas target. Pengelompokkan tersebut berdasarkan pengukuran

TF-IDF. Hasilnya berupa kelompok kata pada Tabel II-3. Pada Tabel II-3, kelas target

merupakan jenis relasi sosial. Polyphonet mendeteksi empat jenis relasi sosial dari

beberapa jenis relasi sosial yang diidentifikasi. Empat jenis relasi sosial yang dianggap

paling dominan tersebut adalah relasi co-author, lab, proj, dan conf. Keempat jenis relasi

sosial tersebut direpresentasikan berturut-turut oleh abjad A, B, C, dan D pada Tabel II-3.

Sedangkan abjad E dan F merepresentasikan jenis relasi sosial lainnya yang kurang

dominan [MAT06]. Selanjutnya, atribut klasifikasi pada Polyphonet didapatkan secara

eksperimental hingga dicapai akurasi yang cukup tinggi. Atribut klasifikasi tersebut dapat

dilihat pada Tabel II-4. Kemudian, dengan menerapkan algoritma ID3, didapatkan aturan

klasifikasi pada Tabel II-5. Dengan menggunakan atribut klasifikasi pada Tabel II-4 dan

aturan klasifikasi pada Tabel II-5, didapatkan rata-rata precision sebesar 81,7% dan rata-

rata recall sebesar 85,98%. Precision dan recall tersebut menunjukkan tingkat akurasi

klasifikasi yang tinggi.

Page 29: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-29

Tabel II-4 Atribut Klasifikasi dan Nilainya pada Polyphonet

Atribut Keterangan Nilai

NumberCo Jumlah kemunculan nama individu X dan Y zero, one, more_than_one

SameLine Apakah nama individu X dan Y muncul pada baris yang

sama pada dokumen yes, no

FreqX Frekuensi kemunculan nama individu X zero, one, more_than_two

FreqY Frekuensi kemunculan nama individu Y zero, one, more_than_two

GroTitle Apakah minimal sebuah kata pada kelompok kata (A-F)

muncul pada judul dokumen

yes, no (untuk setiap

kelompok)

GroFFive Apakah minimal sebuah kata pada kelompok kata (A-F)

muncul pada lima baris pertama dokumen

yes, no (untuk setiap

kelompok)

Tabel II-5 Aturan Klasifikasi pada Polyphonet

Kelas

Target

Aturan

Co-author SameLine=yes

Lab

(NumCo=more_than_one & GroTitle(D)=no & GroFFive(A)=yes &

GroFFive(E)=yes) | (FreqX=more_than_two & FreqY=more_than_two &

GroFFive(A)=yes & GroFFive(D)=no

Proj (SameLine=no & GroTitle(A)=no & GroFFive(F)=yes

Conf (GroTitle(A)=no & GroFFive(B)=no & GroFFive(D)=yes) | (GroFFive(A)=no

& GroFFive(D)=no & GroFFive(E)=yes)

2.3.3 Algoritma Klasifikasi

2.3.3.1 Naïve Bayes

Naive Bayes diterapkan untuk tugas pembelajaran di mana setiap instans x

direpresentasikan dalam bentuk konjungsi dari pasangan-pasangan atribut-nilai

{a1,a2,...,an} dan terdapat fungsi target f(x) untuk mengklasifikasikan setiap instans ke

dalam kelas target tertentu. Himpunan kelas target merupakan suatu himpunan terbatas V.

Pendekatan Bayesian untuk mengklasifikasikan suatu instans yang baru didapatkan

dengan mencari nilai probabilitas tertinggi vMAPuntuk setiap kelas target, jika diberikan

Page 30: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-30

pasangan atribut-nilai {a1,a2,...,an} yang merepresentasikan instans tersebut. Hal ini

dinyatakan dalam persamaan II.15.

(II.15)

Naive Bayes menggunakan asumsi bahwa setiap pasangan atribut-nilai tidak memiliki

ketergantungan agar dapat diklasifikasikan ke dalam kelas target tertentu. Dengan

demikian, probabilitas suatu instans diklasifikasikan ke dalam suatu kelas target

merupakan perkalian dari probabilitas setiap pasangan atribut-nilai untuk kelas target

tersebut. Berdasarkan asumsi ini, maka P(a1,a2,...,an |vj) = i P(ai|vj) [MIT97]. Dengan

mensubstitusikan P(a1,a2,...,an |vj) = i P(ai|vj) ke dalam persamaan II.15, didapatkan

rumusan Naive Bayes yang dinyatakan pada persamaan II.16. Secara ringkas, algoritma

Naive Bayes dinyatakan pada Algoritma II-6.

(II.16)

yang dalam hal ini,

vNB : nilai kelas target yang dihasilkan oleh rumusan Naive Bayes

P(vj) : probabilitas suatu instans memiliki kelas target vj

P(ai| vj) : probabilitas atribut-nilai ai berada dalam kelas target vj

Naive_Bayes_Learn (examples)

/* examples merupakan training set*/

for each target value vj

P(vj) estimate P(vj)

for each attribute value ai of each attribute a

P(ai|vj) estimate P(ai|vj)

Classify_New_Instance (x)

Algoritma II-6 Algoritma Naive Bayes

Page 31: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-31

2.3.3.2 SVM

SVM merupakan teknik pembelajaran yang relatif baru dibandingkan dengan teknik lain,

tetapi memiliki performansi yang lebih baik di berbagai bidang aplikasi seperti

bioinformatics, pengenalan tulisan tangan, klasifikasi teks dan lain sebagainya [JOA04].

SVM merupakan teknik pembelajaran yang berdasarkan prinsip Structural Risk

Minimization (SRM) [JOA04]. Prinsip SRM adalah menemukan sebuah hipotesis h dari

suatu ruang hipotesis H dimana hipotesis h tersebut memiliki probabilitas kesalahan

minimum pada training set S. Hipotesis-hipotesis pada H direpresentasikan dalam bentuk

bidang pemisah. Implementasi SRM pada SVM menggunakan fungsi linier yang akan

dibahas pada bagian 2.3.3.2.1.

2.3.3.2.1 SVM pada Linearly Separable Data

Linearly separable data merupakan data yang dapat dipisahkan secara linier. Misalkan

nxx ,...,1 adalah data set dan 1,1 iy adalah kelas target dari data xi.. Pada

Gambar II-7 dapat dilihat berbagai alternatif bidang pemisah yang dapat memisahkan

semua data set sesuai dengan kelasnya. Dari berbagai alternatif bidang pemisah tersebut,

akan dicari bidang pemisah yang memiliki margin paling besar, seperti ditunjukkan pada

Gambar II-8. Gambar II-7 dan Gambar II-8 diambil dari [SEM07].

Data yang berada pada bidang pembatas ini disebut support vector. Pada contoh di

Gambar II-7 dan Gambar II-8, dua kelas dapat dipisahkan oleh sepasang bidang pembatas

yang sejajar. Bidang pembatas pertama membatasi kelas pertama sedangkan bidang

pembatas kedua membatasi kelas kedua, sehingga diperoleh:

11.

11.

ii

ii

yforbwx

yforbwx (II.17)

yang dalam hal ini, w adalah normal bidang dan b adalah posisi bidang relatif terhadap

pusat koordinat.

Page 32: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-32

Gambar II-7 Alternatif Bidang Pemisah

Gambar II-8 Bidang Pemisah Terbaik dengan Margin m Terbesar

Dengan menggunakan lagrange multiplier, maka persoalan pencarian bidang pemisah

terbaik dapat dirumuskan pada persamaan II.18.

0,0..

.2

1

1

1,11max

ii

n

i

i

jiji

n

ji

ji

n

i

iD

yts

xxyyL

(II.18)

Dengan demikian, dapat diperoleh nilai i yang nantinya digunakan untuk menemukan

w. Terdapat nilai i untuk setiap data pelatihan. Data pelatihan yang memiliki nilai

Class 1

Class 2

Class 1

Class 2

Bidang pembatas kelas 2: xi . w+b = 1

Kelas 1

Kelas 2

m Support Vector

Bidang pemisah: xi . w+b = 0

Bidang pembatas kelas 1: xi . w+b = -1

w

b

Page 33: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-33

0i adalah support vector sedangkan sisanya memiliki nilai 0i . Dengan

demikian fungsi keputusan yang dihasilkan hanya dipengaruhi oleh support vector.

Fungsi keputusan untuk mengklasifikasikan suatu data x dinyatakan pada persamaan

II.19.

bxxyxf ii

ns

i

i

.)(1

, ( ix = support vector) (II.19)

2.3.3.2.2 Multi Class SVM

Pada dasarnya, SVM hanya dapat digunakan untuk mengklasifikasi koleksi data ke dalam

dua buah kelas target. Namun, terdapat penelitian lebih lanjut untuk mengembangkan

SVM sehingga bisa mengklasifikasikan koleksi data yang memiliki lebih dari dua kelas

target atau multi class. Multi class SVM dapat dilakukan dengan menggabungkan

beberapa SVM biner.

Terdapat beberapa teknik yang sering digunakan untuk mengimplementasikan multi class

SVM dengan pendekatan SVM biner. Berdasarkan penelitian yang dilakukan oleh

[HSU02], teknik one-against-one merupakan teknik multi class SVM yang memberikan

performansi maksimum dari segi akurasi klasifikasi pada linearly separable data, waktu

pelatihan dan pengujian, serta jumlah support vector. Karena itu, pada bagian ini akan

dibahas mengenai teknik one-against-one.

Teknik One-against-one. Pada teknik ini, dibangun

2

1kk buah model klasifikasi

biner (k adalah jumlah kelas target). Setiap model klasifikasi dilatih pada data yang

berasal dari dua kelas target. Setiap fungsi keputusan yang dihasilkan oleh setiap model

klasifikasi tersebut digunakan untuk menentukan kelas target data yang baru dengan

menggunakan metode pemungutan suara (voting) [HSU02]. Sebagai contoh, terdapat

masalah klasifikasi dengan tiga buah kelas target, maka dibangun tiga buah model

klasifikasi SVM biner seperti pada Tabel II-6. Contoh penggunaanya untuk memprediksi

kelas target data baru dapat dilihat pada Gambar II-9.

Page 34: BAB II STUDI LITERATUR garis besar, bab dua berisi berbagai studi literatur mengenai teori graf, social network dan text classification. Pembahasan mengenai teori graf mencakup definisi

II-34

Gambar II-9 Contoh Klasifikasi dengan Teknik One-against-one

Tabel II-6 Contoh 3 SVM Biner dengan Teknik One-against-one

1iy 1iy Hipotesis

Kelas 1 Kelas 2 111 )()( bxwxf

Kelas 1 Kelas 3 222 )()( bxwxf

Kelas 2 Kelas 3 333 )()( bxwxf