Senin, 17 Juni 2013

Neural Network

share



Neural Network
Cabang ilmu kecerdasan buatan cukup luas, dan erat kaitannya dengan disiplin ilmu yang lainnya. Hal ini bisa dilihat dari berbagai aplikasi yang merupakan hasil kombinasi dari berbagai ilmu. Seperti halnya yang ada pada peralatan medis yang berbentuk aplikasi. Sudah berkembang bahwa aplikasi yang dibuat merupakan hasil perpaduan dari ilmu kecerdasan buatan dan juga ilmu kedokteran atau lebih khusus lagi yaitu ilmu biologi.
Neural Network merupakan kategori ilmu Soft Computing. Neural Network sebenarnya mengadopsi dari kemampuan otak manusia yang mampu memberikan stimulasi/rangsangan, melakukan proses, dan memberikan output. Output diperoleh dari variasi stimulasi dan proses yang terjadi di dalam otak manusia. Kemampuan manusia dalam memproses informasi merupakan hasil kompleksitas proses di dalam otak. Misalnya, yang terjadi pada anak-anak, mereka mampu belajar untuk melakukan pengenalan meskipun mereka tidak mengetahui algoritma apa yang digunakan. Kekuatan komputasi yang luar biasa dari otak manusia ini merupakan sebuah keunggulan di dalam kajian ilmu pengetahuan.
Pengertian Jaringan Syaraf Tiruan (Neural Network) Jaringan Syaraf Tiruan atau Neural Network adalah paradigma pemrosesan suatu informasi yang terinspirasi oleh sistim sel syaraf biologi, sama seperti otak yang memproses suatu informasi. Elemen mendasar dari paradigma tersebut adalah struktur yang baru dari sistim pemrosesan informasi. Jaringan Syaraf Tiruan (Neural Network), seperti manusia, belajar dari suatu contoh. Jaringan Syaraf Tiruan (Neural Network) dibentuk untuk memecahkan suatu masalah tertentu seperti pengenalan pola atau klasifikasi karena proses pembelajaran. Jaringan Syaraf Tiruan atau Neural Network berkembang secara pesat pada beberapa tahun terakhir. Jaringan Syaraf Tiruan telah dikembangkan sebelum adanya suatu komputer konvensional yang canggih dan terus berkembang walaupun pernah mengalami masa vakum selama beberapa tahun.
Fungsi dari Neural Network diantaranya adalah:
  1. Pengklasifikasian pola
  2. Memetakan pola yang didapat dari input ke dalam pola baru pada output
  3. Penyimpan pola yang akan dipanggil kembali
  4. Memetakan pola-pola yang sejenis
  5. Pengoptimasi permasalahan
  6. Prediksi
Sejarah Neural Network
Perkembangan ilmu Neural Network sudah ada sejak tahun 1943 ketika Warren McCulloch dan Walter Pitts memperkenalkan perhitungan model neural network yang pertama kalinya. Mereka melakukan kombinasi beberapa processing unit sederhana bersama-sama yang mampu memberikan peningkatan secara keseluruhan pada kekuatan komputasi.
Gambar 2.1 McCulloch & Pitts, penemu pertama Neural Network
Hal ini dilanjutkan pada penelitian yang dikerjakan oleh Rosenblatt pada tahun 1950, dimana dia berhasil menemukan sebuah two-layer network, yang disebut sebagai perceptron. Perceptron memungkinkan untuk pekerjaan klasifikasi pembelajaran tertentu dengan penambahan bobot pada setiap koneksi antar-network.
Gambar 2.2 Perceptron
Keberhasilan perceptron dalam pengklasifikasian pola tertentu ini tidak sepenuhnya sempurna, masih ditemukan juga beberapa keterbatasan didalamnya. Perceptron tidak mampu untuk menyelesaikan permasalahan XOR (exclusive-OR). Penilaian terhadap keterbatasan neural network ini membuat penelitian di bidang ini sempat mati selama kurang lebih 15 tahun. Namun demikian, perceptron berhasil menjadi sebuah dasar untuk penelitian-penelitian selanjutnya di bidang neural network. Pengkajian terhadap neural network mulai berkembang lagi selanjutnya di awal tahun 1980-an. Para peneliti banyak menemukan bidang interest baru pada domain ilmu neural network. Penelitian terakhir diantaranya adalah mesin Boltzmann, jaringan Hopfield, model pembelajaran kompetitif, multilayer network,  dan teori model resonansi adaptif.
Untuk saat ini, Neural Network sudah dapat diterapkan pada beberapa task, diantaranya classification, recognition, approximation, prediction, clusterization, memory simulation dan banyak task-task berbeda yang lainnya, dimana jumlahnya semakin bertambah seiring berjalannya waktu.


Konsep Neural Network
1.  Proses Kerja Jaringan Syaraf Pada Otak Manusia
Ide dasar Neural Network dimulai dari otak manusia, dimana otak memuat  sekitar 1011 neuron. Neuron ini berfungsi memproses setiap informasi yang masuk. Satu neuron memiliki 1 akson, dan minimal 1 dendrit. Setiap sel syaraf terhubung dengan syaraf lain, jumlahnya mencapai sekitar 104 sinapsis. Masing-masing sel itu saling berinteraksi satu sama lain yang menghasilkan kemampuan tertentu pada kerja otak manusia.
Gambar 2.3 Struktur Neuron pada otak manusia
Dari gambar di atas, bisa dilihat ada beberapa bagian dari otak manusia, yaitu:


  1. Dendrit (Dendrites) berfungsi untuk mengirimkan impuls yang diterima ke badan sel syaraf.
  2. Akson (Axon) berfungsi untuk mengirimkan impuls dari badan sel ke jaringan lain
  3. Sinapsis berfungsi sebagai unit fungsional di antara dua sel syaraf.
Proses yang terjadi pada otak manusia adalah:
Sebuah neuron menerima impuls dari neuron lain melalui dendrit dan mengirimkan sinyal yang dihasilkan oleh badan sel melalui akson. Akson dari sel syaraf ini bercabang-cabang dan berhubungan dengan dendrit dari sel syaraf lain dengan cara mengirimkan impuls melalui sinapsis. Sinapsis adalah unit fungsional antara 2 buah sel syaraf, misal A dan B, dimana yang satu adalah serabut akson dari neuron A dan satunya lagi adalah dendrit dari neuron B. Kekuatan sinapsis bisa menurun/meningkat tergantung seberapa besar tingkat propagasi (penyiaran) sinyal yang diterimanya. Impuls-impuls sinyal (informasi) akan diterima oleh neuron lain jika memenuhi batasan tertentu, yang sering disebut dengan nilai ambang (threshold).


2.  Struktur Neural Network
Dari struktur neuron pada otak manusia, dan proses kerja yang dijelaskan di atas, maka konsep dasar pembangunan neural network buatan (Artificial Neural Network) terbentuk. Ide mendasar dari Artificial Neural Network (ANN) adalah mengadopsi mekanisme berpikir sebuah sistem atau aplikasi yang menyerupai otak manusia, baik untuk pemrosesan berbagai sinyal elemen yang diterima, toleransi terhadap kesalahan/error, dan juga parallel processing.


Gambar 2.4 Struktur ANN
Karakteristik dari ANN dilihat dari pola hubungan antar neuron, metode penentuan bobot dari tiap koneksi, dan fungsi aktivasinya. Gambar di atas menjelaskan struktur ANN secara mendasar, yang dalam kenyataannya tidak hanya sederhana seperti itu.
  1. Input, berfungsi seperti dendrite
  2. Output, berfungsi seperti akson
  3. Fungsi aktivasi, berfungsi seperti sinapsis
Neural network dibangun dari banyak node/unit yang dihubungkan oleh link secara langsung. Link dari unit yang satu ke unit yang lainnya digunakan untuk melakukan propagasi aktivasi dari unit pertama ke unit selanjutnya. Setiap link memiliki bobot numerik. Bobot ini menentukan kekuatan serta penanda dari sebuah konektivitas.
Proses pada ANN dimulai dari input yang diterima oleh neuron beserta dengan nilai bobot dari tiap-tiap input yang ada. Setelah masuk ke dalam neuron, nilai input yang ada akan dijumlahkan oleh suatu fungsi perambatan (summing function), yang bisa dilihat seperti pada di gambar dengan lambang sigma (∑). Hasil penjumlahan akan diproses oleh fungsi aktivasi setiap neuron, disini akan dibandingkan hasil penjumlahan dengan threshold (nilai ambang) tertentu. Jika nilai melebihi threshold, maka aktivasi neuron akan dibatalkan, sebaliknya, jika masih dibawah nilai threshold, neuron akan diaktifkan. Setelah aktif, neuron akan mengirimkan nilai output melalui bobot-bobot outputnya ke semua neuron yang berhubungan dengannya. Proses ini akan terus berulang pada input-input selanjutnya.
ANN terdiri dari banyak neuron di dalamnya. Neuron-neuron ini akan dikelompokkan ke dalam beberapa layer. Neuron yang terdapat pada tiap layer dihubungkan dengan neuron pada layer lainnya. Hal ini tentunya tidak berlaku pada layer input dan output, tapi hanya layer yang berada di antaranya. Informasi yang diterima di layer input dilanjutkan ke layer-layer dalam ANN secara satu persatu hingga mencapai layer terakhir/layer output. Layer yang terletak di antara input dan output disebut sebagai hidden layer. Namun, tidak semua ANN memiliki hidden layer, ada juga yang hanya terdapat layer input dan output saja.
Referensi:
http://www.internetworkingindonesia.org/Vol-1-No2-Fall2009/iij_vol1_no2_meinanda.pdf
http://www.instiperjogja.ac.id/download/jurnal/JST-LAHAN-PRODUKTIVITAS-PERKEBUNAN.PDF

Jumat, 14 Juni 2013

Parallel computing

share



 Parallel computing


Parallel computing adalah penggunakan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Idealnya, parallel processing membuat programberjalan lebih cepat karena semakin banyak CPU yang digunakan. Tetapi dalam praktek,seringkali sulit membagi program sehingga dapat dieksekusi oleh CPU yang berbea-beda tanpa berkaitan di antaranya, Maksudnya program dijalankan dengan banyak CPU secara bersamaan dengan tujuan untuk membuat program yang lebih baik dan dapat diproses dengan cepat. Dapat diambil kesimpulan bahwa pada parallel processing berbeda dengan istilah multitasking, yaitu satu CPU mengangani atau mengeksekusi beberapa program sekaligus, parallel processing dapat disebut juga dengan istilah parallel computing.
 Sejarah mencatat Konferensi internasional tentang ParCo97 komputasi paralel (Parallel Computing 97) diadakan di Bonn, Jerman 19-22 September 1997. Konferensi pertama dalam seri ini dua tahunan diadakan pada tahun 1983 di Berlin. Selanjutnya konferensi diadakan di Leiden (Belanda), London (Inggris), Grenoble (Prancis) dan Gent (Belgia).

Sejak awal tujuan dengan (Komputasi Paralel) konferensi parco adalah untuk mempromosikan penerapan komputer paralel untuk memecahkan masalah kehidupan nyata. Dalam kasus ParCo97 tonggak baru dicapai dalam bahwa lebih dari setengah dari makalah dan poster yang disajikan prihatin dengan aspek aplikasi. Fakta ini mencerminkan kedatangan usia komputasi paralel.

Sekitar 200 makalah yang disampaikan kepada Komite Program oleh penulis dari seluruh dunia. Program akhir terdiri dari empat makalah diundang, 71 kontribusi ilmiah / industri kertas dan 45 poster. Selain diskusi panel tentang Komputasi Paralel dan Evolusi Cyberspace diadakan.

Penekanan praktis konferensi ini ditekankan oleh pameran industri di mana perusahaan menunjukkan perkembangan terbaru dalam peralatan pemrosesan paralel dan perangkat lunak. Pembicara dari perusahaan yang berpartisipasi mempresentasikan makalah dalam sesi industri di mana perkembangan baru dalam komputasi paralel dilaporkan.
Komputer paralel secara kasar dapat diklasifikasikan menurut tingkat di mana hardware mendukung paralelisme, dengan komputer multi-core dan multi-prosesor yang memiliki elemen pemrosesan ganda dalam satu mesin, sedangkan cluster, MPP, dan grid menggunakan beberapa komputer untuk bekerja pada hal yang sama tugas. Khusus arsitektur komputer paralel kadang-kadang digunakan bersama prosesor tradisional, untuk mempercepat tugas-tugas tertentu.

Komputasi paralel membutuhkan:
·                     algoritma
·                     bahasa pemrograman
·                     compiler
Sumber daya komputer (computer resource) dapat terdiri dari sebuah komputer dengan beberapa processor, atau beberapa komputer yang terhubung oleh sebuah jaringan, atau pun kombinasi antara keduanya. Processor mengakses data melalui shared memory. Beberapa supercomputer parallel processing system memiliki ratusan bahkan ribuan microprocessor.
Dengan bantuan dari parallel processing, sejumlah komputasi dapat dijalankan dalam satu waktu, memangkas waktu yang dibutuhkan untuk menyelesaikan sebuah project. Parallel processing sangat berguna untuk project yang membutuhkan komputasi komplek, seperti weather modelling dan efek digital spesial (special effect digital). Untuk lebih memahami konsep dari parallel processing, Anda dapat menyimak analoginya berikut ini.
Dengan bantuan dari parallel processing, masalah yang sangat kompleks dapat terselesaikan dengan efektif dan lebih efisien. Parallel computing dapat secara efektif digunakan untuk tugas-tugas (task) yang melibatkan begitu banyak komputasi, untuk dapat dibagi menjadi task-task yang lebih kecil.
Contoh sistem yang diterapkan pada obyek 3D yang besar dan rinci, interpretasi geometrik yang melekat seri membatasi kecepatan generasi gambar. Untuk mempercepat prosedur menafsirkan, sebuah Graphic Processing Unit (GPU) metode berbasis memanfaatkan Compute Arsitektur Unified Device (CUDA) yang diusulkan dalam tulisan ini. Pendekatan terfokus melibatkan dua tahap: pertama adalah scan sekuensial pada string yang dihasilkan negara dari derivasi dari L-sistem yang berjalan pada CPU, yang kedua adalah komputasi paralel pada GPU dengan CUDA. Simbol dalam string negara diinterpretasikan sebagai perintah penyu dan kura-kura primitif grafis yang menyatakan tergantung pada operasi perkalian matriks di scan sekuensial. Kemudian dengan posisi dan arah tercakup dalam penyu negara, garis (silinder) yang dihasilkan dan primitif grafik diubah menjadi sistem koordinat penyu menggunakan ribuan benang paralel dalam fase komputasi. Dibandingkan dengan metode lain, metode yang diusulkan lebih efisien.

Jika Anda memiliki Perhitungan Toolbox Paralel (PCT) dari Matlab, Anda dapat menggunakan kekuatan dan kemudahan penggunaan untuk menjalankan analisis neuroimaging secara paralel. Baca lebih lanjut di sini dan di sini untuk informasi lebih lanjut tentang toolbox ini. Caranya adalah dengan menggunakan beberapa core CPU pada mesin Anda untuk menjalankan analisis secara paralel. Sebagai contoh, ketika saya menjalankan beberapa analisis pada setiap peserta, saya dapat menggunakan PCT untuk memulai analisis pada 6-8 peserta secara paralel, yang menebang waktu lari ke sekitar 5 kali atau lebih.

Untuk menggunakan toolbox ini, pertama kali membuka kolam matlab sebagai berikut





                   http://en.wikipedia.org/wiki/Parallel_computing

Minggu, 18 November 2012

TOOLKIT

share


Toolkit

1.      Google Webmaster Tools
Google Webmaster Tools adalah alat yang disediakan oleh Google untuk para Webmaster (pemilik website). Alat ini membantu agar website atau blog saudara bisa terpantau dengan maksimal oleh Google, dan di sisi lain memberi laporan yang mendetail tentang blog kepada anda
Ikuti langkah berikut di google webmaster tools.
1. masuk ke http://google.com/accounts dan login dengan user password anda di google
2. Klik Webmaster tools.
3. Bila sites anda belum terdaftarkan, tambahkan dari tombol “add a sites
4. Dilanjutkan “verify this sites
5. Pilih “Upload an HTML file” di Verification method
6. Klik Download  this HTML verification file dan simpan di komputer anda
7. Upload file tersebut ke halaman utama websites anda.
8. Terakhir klik verify setelah sukses melakukan upload
Langkah selanjutnya setelah terverify :
9. Klik nama domain anda di daftar domain list Webmaster tools.
10. Klik Labs di menu sebelah kiri
11. Klik Malware details
12. Ikuti petunjuk untuk menghapus malware di sites anda dari halaman yang terinfeksi.
2.      Security Tool
Security Tool adalah program anti-spyware jahat yang disebarkan melalui pop-ups, trojan dan website malware. Security Tool disebarkan seperti Windows Police Pro atau Green AV (Antivirus) 2009. Program anti-spyware jahat ini didistribusikan melalui website-website yang mensimulasikan virus scan, kemudian penggunanya diberitahukan untuk men-download software untuk membersihkan komputer.
Setelah diinstall, Security Tool secara otomatis akan aktif setiap kali Anda menghidupkan PC dan log in ke Windows. Kemudian dia akan mulai melakukan scanning komputer Anda dan memberikan daftar palsu infeksi virus yang terjadi pada komputer Anda. Ketika Anda mencoba untuk membersihkan file-file yang terinfeksi (padahal tidak), maka Anda akan diingatkan untuk membeli software. Waspadalah, jangan percaya apapun yang dikatakan oleh sofware yang jahat ini, dan jangan hapus/delete file-file yang dikatakannya telah terinfeksi, karena sebenarnya file-file tersebut adalah file yang dalam kondisi bagus, dan diperlukan. 

http://aprildarma14.blogspot.com/2012/11/malware-forensik.html (Part I)
http://achmadsaugi.wordpress.com/2012/11/20/jenis-jenis-malware/ (Part II)
http://cilduk619.blogspot.com/2012/11/forensik-malware.html (Part III)
http://ubayzz.wordpress.com/2012/11/18/honeypot/ (Part V)