IMPLEMENTASI ALGORITMA SELF ORGANIZING MAP UNTUK REKOMENDASI MUSIC INTEREST
DALAM APLIKASI FACEBOOK
KOMPETENSI KOMPUTASI
SKRIPSI HALAMAN JUDUL
GUSTI AYU VIDA MASTRIKA GIRI NIM. 0808605056
JURUSAN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS UDAYANA
BUKIT JIMBARAN 2012
ii
LEMBAR PENGESAHAN TUGAS AKHIR
Judul : Implementasi Algoritma Self Organizing Map untuk Rekomendasi Music Interest dalam Aplikasi Facebook
Kompetensi : Komputasi
Nama : Gusti Ayu Vida Mastrika Giri
NIM : 0808605056
Tanggal Seminar : 30 Maret 2012
Disetujui oleh:
Pembimbing I Penguji I
Agus Muliantara, S.Kom., M.Kom. Dra. Luh Gede Astuti, M.Kom.
NIP. 19800616 200501 1 001 NIP. 19640114 199402 2 001
Pembimbing II Penguji II
I Made Widiartha, S.Si., M.Kom. Ngurah Agus Sanjaya ER, S.Kom., M.Kom.
NIP. 19821220 200801 1 008 NIP. 19780321 200501 1 001
Penguji III
I Wayan Supriana, S.Si., M.Cs.
NIP. -
Mengetahui,
Jurusan Ilmu Komputer FMIPA UNUD Ketua,
Drs. I Wayan Santiyasa, M.Si NIP. 19670414 199203 1 002
iii
Judul : Implementasi Algoritma Self Organizing Map untuk Rekomendasi Music Interest dalam Aplikasi Facebook
Nama : Gusti Ayu Vida Mastrika Giri
NIM : 0808605056
Pembimbing I : Agus Muliantara, S.Kom., M.Kom.
Pembimbing II : I Made Widiartha, S.Si., M.Kom.
ABSTRAK
Perkembangan keragaman musik dan teknologi yang pesat menyebabkan para pendengar musik membutuhkan rekomendasi musik-musik yang sejenis dengan musik favoritnya dalam suatu media yang mudah diakses seperti jejaring sosial di internet. Rekomendasi music interest tidak hanya didapat dari genre musik yang sama, karena kemiripan fitur-fitur musik juga dapat digunakan untuk memberikan rekomendasi.
Dalam penelitian ini akan diimplementasikan sebuah aplikasi bernama Music Information by Computer Science (MICS) Recommendations pada jejaring sosial Facebook. MICS Recommendations dapat memberikan rekomendasi music interest menggunakan algoritma Self Organizing Map disertai analisis keterkaitan antara kemiripan audio dengan genre musik. Fitur-fitur musik yang digunakan dalam penelitian ini adalah key, mode, loudness, energy, dan tempo.
Dataset fitur musik yang digunakan berjumlah 280 buah lagu dari 14 genre berbeda. Dataset dibagi menjadi data awal sebanyak 196 dataset dan data pengujian sebanyak 86 dataset. Dalam penelitian ini, genre dengan nilai keterkaitan terbesar adalah masing-masing Acoustic dan Jazz, dengan nilai 43,33%. Sedangkan genre dengan nilai keterkaitan terkecil adalah masing-masing Electronic dan Rock, dengan nilai 6,67%.
Kata Kunci : self organizing map, rekomendasi musik, Facebook music interest, Facebook music page, nilai keterkaitan.
iv
Title : Implementation of Algorithm of Self Organizing Map on the Recommendations of Music Interest in the Application of Facebook.
Name : Gusti Ayu Vida Mastrika Giri
NIM : 0808605056
Supervisor I : Agus Muliantara, S.Kom., M. Kom.
Supervisor II : I Made Widiartha, S.Si., M. Kom.
ABSTRACT
The rapid development of the diversity of music and technology caused the music listeners to need recommendations of the types of music which were identical with their favorite ones from the media which was easily accessed such as face book on the internet. The recommendations of music interest could not only be obtained from the same genre of music but also from the similar music features used to give recommendations.
In this present study the application of Music Information by Computer Science (MICS) Recommendations which could be used to recommend music interest using self organizing map algorithm, and the analysis related to the similarity of audio to genre were implemented. The musical features used in this study were key, mode, loudness, energy, and tempo.
The dataset used totaled different 280 songs and 14 genres. The dataset were divided into 196 as the initial dataset and 86 dataset for testing. In this present study, the genres with the biggest score of relatedness were Acoustic and Jazz; the score was 43.33%. The genres with the lowest score of relatedness were Electronic and Rock; the score was 6.67%.
Keywords : self organizing map, music recommendation, music interest Facebook, music page Facebook, score of relatedness.
v
KATA PENGANTAR
Penelitian dengan judul Implementasi Algoritma Self Organizing Map untuk Rekomendasi Music Interest dalam Aplikasi Facebook ini disusun dalam rangkaian kegiatan pelaksanaan Tugas Akhir di Jurusan Ilmu Komputer Fakultas MIPA Universitas Udayana.
Sehubungan dengan telah terselesaikannya penelitian ini, maka diucapakan terima kasih dan penghargaan kepada berbagai pihak yang telah membantu, antara lain:
1. Bapak Drs. I Wayan Santiyasa, M.Si., selaku Ketua Jurusan Ilmu Komputer Fakultas MIPA Universitas Udayana yang telah mengarahkan dan memberi fasilitas sehingga laporan ini dapat disusun dengan baik.
2. Bapak Agus Muliantara, S.Kom., M.Kom. sebagai Pembimbing I yang telah banyak meluangkan waktu untuk membantu pelaksanaan penelitian ini.
3. Bapak I Made Widiartha, S.Si., M.Kom. sebagai Pembimbing II yang telah bersedia memeriksa dan memberikan saran untuk penelitian ini.
4. Ibu Kadek Cahya Dewi, S.T., M.Cs., yang telah meluangkan waktu untuk memberikan ide, saran, dan mendukung jalannya penelitian ini.
5. Seluruh dosen, staf pegawai, dan rekan-rekan di Jurusan Ilmu Komputer Fakultas MIPA Universitas Udayana yang telah meluangkan waktu untuk memberikan saran dan masukan untuk menyempurnakan penelitian ini.
Disadari pula bahwa hasil-hasil penelitian ini masih mengandung kelemahan dan kekurangan. Karena hal tersebut, masukan dan saran-saran untuk penyempurnaan proposal sangat diharapkan.
Bukit Jimbaran, Maret 2012
Penulis
vi DAFTAR ISI
HALAMAN JUDUL ... i
LEMBAR PENGESAHAN TUGAS AKHIR ... ii
ABSTRAK ... iii
ABSTRACT ... iv
KATA PENGANTAR ... v
DAFTAR ISI ... vi
DAFTAR GAMBAR ... viii
DAFTAR TABEL ... ix
DAFTAR LAMPIRAN ... x
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang ... 1
1.2 Rumusan Masalah ... 2
1.3 Tujuan ... 2
1.4 Batasan Masalah ... 3
1.5 Manfaat ... 3
BAB II TINJAUAN PUSTAKA ... 4
2.1 Fitur-Fitur Musik ... 4
2.2 Genre Musik ... 5
2.3 Music Information Retrieval (MIR) ... 6
2.4 Pengumpulan Dataset ... 7
2.5 Self Organizing Map (SOM) ... 9
2.6 Facebook Applications ... 13
2.7 Facebook Platform ... 14
2.8 Facebook Query Language (FQL) ... 15
BAB III METODOLOGI PENELITIAN... 17
3.1 Variabel Penelitian ... 17
3.2 Metode Pengumpulan Data ... 17
3.3 Dataset ... 17
3.4 Perancangan Sistem ... 19
3.4.1 Concept Map ... 19
3.4.2 Data Flow Diagram (DFD) ... 20
3.4.3 Deskripsi Data ... 21
3.4.4 Flowchart Sistem ... 23
3.4.5 Arsitektur Sistem ... 28
3.4.6 Desain Antarmuka ... 29
3.5 Pengkodean ... 30
3.6 Pengujian Sistem dan Analisis Hasil ... 31
BAB IV HASIL DAN PEMBAHASAN ... 33
4.1 Implementasi Facebook Application ... 33
4.2 Pengumpulan Dataset ... 36
vii
4.3 Implementasi Proses Clustering Menggunakan Self Organizing Map .. 37
4.4 Mendapatkan Music Interest Pengguna... 42
4.5 Proses Klasifikasi ... 43
4.6 Penentuan Rekomendasi ... 45
4.7 Tampilan Sistem ... 46
4.7.1 Tampilan Music Interest Pengguna ... 47
4.7.2 Tampilan Rekomendasi Artist Page ... 48
4.7.3 Fitur-Fitur Tambahan ... 49
4.8 Analisis Sistem ... 50
4.8.1 Analisis Bobot dan Learning Rate ... 50
4.8.2 Analisis Nilai Keterkaitan ... 54
4.9 Pengujian Tampilan Sistem ... 55
BAB V SIMPULAN DAN SARAN ... 59
5.1 Simpulan ... 59
5.2 Saran ... 59
DAFTAR PUSTAKA ... 61
viii
DAFTAR GAMBAR
Gambar Halaman
Gambar 2. 1 Fitur - Fitur Musik ...7
Gambar 2. 2 Contoh Dataset Ekstraksi Fitur Lagu dari Echo Nest ...9
Gambar 2. 3 Jaringan Self Organizing Map ...10
Gambar 2. 4 Request for Permissions Pada Facebook Application ...14
Gambar 3. 1 Struktur Jaringan Self Organizing Map untuk Data Awal ...18
Gambar 3. 2 Concept Map MICS Recommendations ...20
Gambar 3. 3 Context Diagram MICS Recommendations ...20
Gambar 3. 4 DFD Level 0 MICS Recommendations ...21
Gambar 3. 5 Deskripsi Tabel musicDataset ...22
Gambar 3. 6 Deskripsi Tabel page ...22
Gambar 3. 7 Flowchart Self Organizing Map ...23
Gambar 3. 8 Flowchart Proses Pengelompokan Lagu ...24
Gambar 3. 9 Flowchart MICS Recommendations ...25
Gambar 3. 10 Flowchart Proses Mencari Music Interest Pengguna ...26
Gambar 3. 11 Flowchart Proses Mencari Fitur Musik Dengan Echo Nest API ...26
Gambar 3. 12 Flowchart Proses Klasifikasi ...27
Gambar 3. 13 Flowchart Proses Penentuan Rekomendasi ...27
Gambar 3. 14 Flowchart Proses Menampilkan Music Interest dan Rekomendasi ...28
Gambar 3. 15 Arsitektur Sistem MICS Recommendations ...29
Gambar 3. 16 Desain Antarmuka Aplikasi MICS Recommendations ...30
Gambar 4. 1 Pendaftaran Nama Aplikasi ...33
Gambar 4. 2 URL MICS Recommendations ...34
Gambar 4. 3 Integrasi Aplikasi ...34
Gambar 4. 4 Menggunakan Perintah Git Clone untuk Mengunduh File ....35
Gambar 4. 5 Menambah dan Mengubah File MICS Recommendations ...35
Gambar 4. 6 Hasil Perintah Heroku SQL dan Heroku Config ...36
Gambar 4. 7 Tampilan Music Interest pada Profil Pengguna ...42
Gambar 4. 8 Tampilan MICS Recommendations ...46
Gambar 4. 9 Tampilan Music Interest Pengguna ...47
Gambar 4. 10 Tampilan Rekomendasi Music Page ...48
Gambar 4. 11 Window Post To Wall ...49
Gambar 4. 12 Window Send To Friends ...49
Gambar 4. 13 Fitur Like Button dan Fitur Comment ...50
Gambar 4. 14 Nilai Rata-Rata Cohesion dan Separation pada Setiap Penelitian . 54 Gambar 4. 15 Nilai Keterkaitan ...55
Gambar 4. 16 Tampilan Tidak Relevan ...56
ix
DAFTAR TABEL
Tabel Halaman
Tabel 2. 1 Parameter Audio ...8
Tabel 2. 2 Daftar Tabel Facebook ...16
Tabel 4. 1 Kode Program Pencarian dan Penyimpanan Dataset ...36
Tabel 4. 2 Kode Program Inisialisasi ...37
Tabel 4. 3 Kode Program Fungsi Euclidean Distance ...38
Tabel 4. 4 Kode Program Penghitungan Euclidean Distance ...38
Tabel 4. 5 Kode Program Mencari Neuron Pemenang ...39
Tabel 4. 6 Kode Program Perubahan Bobot ...39
Tabel 4. 7 Kode Program Memperbaharui Learning Rate ...39
Tabel 4. 8 Kode Program Pengurangan Jari-Jari Ketetanggaan ...40
Tabel 4. 9 Kode Program Penghitungan Selisih Bobot ...40
Tabel 4. 10 Kode Program Pengecekan Selisih Bobot ...40
Tabel 4. 11 Kode Program Perkalian Array Input dan Array Bobot ...41
Tabel 4. 12 Kode Program Menentukan Nomor Cluster ...42
Tabel 4. 13 Kode Program Menggunakan Graph API ...42
Tabel 4. 14 Kode Program Mencari Nama Artis pada Tabel Dataset ...43
Tabel 4. 15 Kode Program Mengalikan Dataset Fitur dengan Bobot ...44
Tabel 4. 16 Kode Program untuk Menentukan Nomor Cluster ...44
Tabel 4. 17 Kode Program untuk Mencari Rekomendasi ...45
Tabel 4. 18 Kode Program Menampilkan Music Interest Pengguna ...47
Tabel 4. 19 Kode Program Menampilkan Rekomendasi Music Page ...48
Tabel 4. 20 Daftar Penelitian ...51
Tabel 4. 21 Data Hasil Pengujian Tampilan Music Interest Pengguna ...56
Tabel 4. 22 Data Hasil Pengujian Tampilan Rekomendasi ...57
x
DAFTAR LAMPIRAN
Lampiran 1. Dataset
2. Tabel Nilai Keterkaitan 3. Tabel Hasil Pengujian
4. Anggota Himpunan Hasil Pengujian Tampilan