Social Web Data Mining – Sebuah Pendahuluan

“Dunia jejaring sosial tidak selugu apa yang kita kira. Apa yang kita tampilkan dan kita katakan di jejaring sosial, ternyata memberikan keuntungan yang luar biasa untuk beberapa pihak di luar sana. Tentu, bagi mereka yang tahu bagaimana memperlakukan data dengan cara yang istimewa….”

Internet data mining, atau analisa data internet, adalah salah satu hobi yang saya tekuni, di luar penelitian akademis yang saya lakukan di kampus. Hobi ini berkembang karena latar belakang saya, yang pernah mengais dan mencari rizki dengan cara menjadi freelance web developer di berbagai institusi dan industri di Jogja. Teknologi internet, khususnya aplikasi web, berkembang dengan sangat pesat setiap detik. Menurut Mark J. Newman [1], salah seorang pengarang buku terkenal “Networks: An Introduction”, transaksi data di internet mengalami perkembangan yang luar biasa. Pada tahun 1990, transaksi data di internet adalah 100.000 GB / tahun. Pada tahun 2008, 18 tahun setelahnya, transaksi data di internet adalah 100.000 GB / detik. Ini berarti, dalam waktu kurang dari dua dasawarsa, telah terjadi transformasi yang luar biasa di dunia teknologi internet, baik dari segi infrastruktur fisik, algoritma, maupun aplikasi.

Di luar itu semua, perkembangan web 2.0 (baca : web two oh), atau web versi dua, yang memungkinkan pengguna internet untuk berinteraksi secara real-time dengan teknologi web, mengubah cara berpikir manusia mengenai diri sendiri dan orang lain. Kita semakin terbuka kepada mereka yang jauh jaraknya dari kita, dan semakin tertutup kepada mereka yang dekat dengan kita. Pola interaksi antar manusia pun berubah. Di sisi lain, informasi yang ditampilkan dari kerumunan manusia di aplikasi jejaring sosial menjadi sumber daya yang tak ternilai harganya, khususnya untuk mereka yang tahu dan mengerti betapa berharganya data.

Salah satu yang sangat berpotensi untuk menjadi sumber data ‘gratisan’ secara online adalah jejaring sosial yang memanfaatkan teks untuk sarana interaksi user dan memiliki API [2], seperti Twitter dan Facebook. Dengan berbekal kemampuan interpreter programming, seperti bahasa Python, kita bisa menggali data dan mengekstrak data dari situs jejaring sosial. Data yang kita ekstrak tersebut memberikan berbagai macam informasi, seperti persepsi pengguna terhadap sebuah isu / produk tertentu, potensi perkembangan isu tertentu di jejaring sosial, topik yang berpengaruh dalam jenjang waktu tertentu, dan sebagainya. Banyak kalangan di ‘luar’ komunitas jejaring sosial tersebut yang memanfaatkan data yang melimpah ini untuk berbagai kepentingan, mulai dari militer (sekuritas) sampai dengan kepentingan bisnis [8].

Di bawah ini, saya mencoba memberikan satu potongan source code yang termaktub dalam ‘kitab suci’ internet data mining, “Mining The Social Web”, karangan Matthew Russell [3]. Saya mencoba melakukan hal yang paling sederhana dari konsep analisa data di internet. Salah satunya adalah mengekstrak “trending topics” di Twitter. Trending topics adalah topik pembicaraan yang paling populer, dan setiap saat bisa berubah (dinamis).

Untuk keperluan ekstraksi data ini, diperlukan program python 2.7.3, Twitter-python, numpy, dan networkx. Selain itu, diperlukan pula pengetahuan tentang akses ke API Twitter [4-7]. Trending topics ini sebenarnya bisa diakses melalui browser [5]. Namun, dengan menggunakan program kecil ini, kita bisa mengekstrak data yang kita inginkan (tentu dengan ‘menyingkirkan’ data-data lain yang tidak kita perlukan). Dalam contoh program di bawah, saya mencoba mengekstrak konten dari variabel “name” dari data trending topics.

>>> import twitter
>>> twitter_api = twitter.Twitter()
>>> WORLD_WOE_ID = 1 >>> world_trends = twitter_api.trends._(WORLD_WOE_ID)
>>> [trend['name'] for trend in world_trends()[0]['trends']]

Di bawah ini contoh keluaran dari trending topics yang saat ini muncul di Twitter. Perlu dicatat, hasil ini sangat spesifik dan tergantung pada hari /waktu ekstraksi program.

#contoh output
[u'#ProudToBeAFanOf', u'#MentionSomeonePretty', u'#ICantStandWhen', u'#sputtanandoilmioperiodoMONDODIPATTY', u'#Gexe7miu015feGidecekOlsam', u'Fredo', u'Advent', u'Waffle House', u'South Africa', u'OLLG']

Dari hasil trending topics yang ada, kita bisa melakukan banyak hal, seperti membuat komparasi seberapa sering munculnya satu topik tertentu dibanding topik yang lain, atau melakukan monitoring kemunculan topik tersebut dalam jangka waktu tertentu. Pada kesempatan berikutnya, kita akan membahas lebih jauh hasil “riset kecil-kecilan” ini. Jika Sampeyan tertarik dengan apa itu internet data mining, bolehlah melihat-lihat referensi di bawah ini.

Semoga bermanfaat :)

Referensi:

[1] http://www-personal.umich.edu/~mejn/
[2] http://en.wikipedia.org/wiki/Application_programming_interface
[3] http://www.jonhume.co.uk/2011/07/07/book-review-mining-the-social-web-by-matthew-russell/
[4] https://github.com/ptwobrussell/Mining-the-Social-Web
[5] https://api.twitter.com/1/trends/1.json
[6] https://dev.twitter.com/docs/api/1/get/trends/%3Awoeid
[7] https://github.com/sixohsix/twitter/issues/56
[8] http://www.economist.com/node/16910031
[9] http://dm.kaist.ac.kr/kse625/


 

Be Sociable, Share!
Categories: Machine Learning

1 Comment

Leave a Reply