From Perceptron to Deep Neural Network pada Machine Learning
Sebelum masuk kita akan bahas terlebaih dahulu apa itu Machine Learning, Istilah machine learning pada dasarnya adalah proses komputer untuk belajar dari data (learn from data). Tanpa adanya data, komputer tidak akan bisa belajar apa-apa. Oleh karena itu jika kita ingin belajar machine learning, pasti akan terus berinteraksi dengan data. Semua pengetahuan machine learning
pasti akan melibatkan data. Data bisa saja sama, akan tetapi algoritma
dan pendekatan nya berbeda-beda ununtukmendapatkan hasil yang optimal.
Deep learning
Deep learning adalah , merupakan tumpukan atau stack dari beberapa algoritma atau
metode, sehingga berkembang berbagai pendekatan deep learning dengan
berbagai arsitektur. Beberapa tujuan dari tumpukan metode ini adalah feature extraction, juga memanfaatkan seluruh resource seoptimal mungkin. Resource apa? data, sebagian besar data di dunia ini tidak berlabel
(terkategorisasi), deep learning biasanya merupakan tumpukan stack
algoritma unsur pervised dan supervised learning sehingga dapat
memanfaatkan data yang berlabel maupun tidak berlabel. Dengan pemanfaatan informasi yang lebih optimal tentunya akan meningkatkan performa model yang dihasilkan.
Dalam melakukan modifikasi arsitektur dari network yang digunakan pendekatan yang sering digunakan untuk
mengimplementasikan deep learning adalah graphical methods atau
multilayer representation, atau multilayer graphical model seperti belief network, neural network, hidden markov,
dan lain-lain. Pada dasarnya metode-metode tersebut seperti halnya
machine learning biasa merupakan metode statistik dan stokastik yang
sebenarnya sudah banyak dikenal di dunia matematika terutama statistik.
Deep Neural Network
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. metode dari beberapa pakar atau professor
dalam area machine learning terutama dalam deep network adalah
multilayer ataupun multilayer graphocal model. Neural network salah
satunya, dengan melihat ide diatas, maka dapat dibangun menjadi Deep
Neural Network dengan tujuan meniru cara kerja dari otak manusia.
Neural Network dalam Deep network dibuat memiliki lebih dari satu hidden
layer, namun yang jadi permasalahan adalah ketika kita membuat lebih
dari satu hidden layer. Kita ketahui fungsi yang berlaku dalam metode
neural network backpropagation misalkan seperti ini :
Masalah yang muncul adalah nilai setiap gradient yang akan muncul akan
semakin kecil (mendekati nol) untuk setiap hidden layer yang mendekati
output layer, sehingga akurasi bukannya semakin baik, malah semakin
buruk. Lalu bagaimana penyelesaiannya? untuk kasus Deep Network dapat dengan
manambahkan algoritma atau metode yang melakukan inisialisasi pada saat
awal pembangunan network sebelum melakukan tuning . Salah satu metode yang dapat digunakan dan menurut saya paling mudah adalah dengan menggunakan autoencoder, Autoencoder ini fungsinya sebenarnya adalah mengekstrak informasi
relatif mirip seperti PCA yang dapat mengurangi dimensi dari data pada
dataset.
Fungsi dari Neural Network diantaranya adalah:
- Pengklasifikasian pola
- Memetakan pola yang didapat dari input ke dalam pola baru pada output
- Penyimpan pola yang akan dipanggil kembali
- Memetakan pola-pola yang sejenis
- Pengoptimasi permasalahan
- Prediksi
perceptron
Perceptron adalah salah satu algoritma paling elegan yang pernah ada dalam pembelajaran mesin. Dibuat kembali pada tahun 1950an, algoritma sederhana ini dapat dikatakan sebagai fondasi untuk titik awal perkembangan teknologi algoritma pembelajaran yang banyak, seperti regresi logistik, dukungan mesin vektor dan bahkan jaringan syaraf dalam. Jadi bagaimana cara kerja perceptron?
Perceptron adalah salah satu algoritma paling elegan yang pernah ada dalam pembelajaran mesin. Dibuat kembali pada tahun 1950an, algoritma sederhana ini dapat dikatakan sebagai fondasi untuk titik awal perkembangan teknologi algoritma pembelajaran yang banyak, seperti regresi logistik, dukungan mesin vektor dan bahkan jaringan syaraf dalam. Jadi bagaimana cara kerja perceptron?
Gambar di atas menunjukkan algoritma perceptron dengan tiga input, x1, x2 dan x3 dan unit neuron yang dapat menghasilkan nilai output. Untuk menghasilkan output, Rosenblatt memperkenalkan aturan sederhana dengan memperkenalkan konsep bobot. Bobot pada dasarnya adalah bilangan real yang mengungkapkan pentingnya masing-masing input terhadap output [1]. Neuron yang digambarkan di atas akan menghasilkan dua nilai yang mungkin, 0 atau 1, dan ditentukan oleh apakah jumlah tertimbang setiap masukan, Σ wjxj, kurang dari atau lebih besar dari nilai ambang batas tertentu. Oleh karena itu, gagasan utama algoritma perceptron adalah mempelajari nilai bobot w yang kemudian dikalikan dengan fitur input untuk membuat keputusan apakah neuron menyala atau tidak. Kita bisa menulis ini dalam ekspresi matematis seperti yang digambarkan di bawah ini:
Sekarang, ketika kita menggabungkan kembali ke arsitektur perceptron kita, kita akan memiliki arsitektur yang lengkap seperti pesetron dibawah ini :
Perseptron
lapisan tunggal yang khas menggunakan fungsi langkah Heaviside sebagai
fungsi aktivasi untuk mengubah nilai yang dihasilkan menjadi 0 atau 1,
sehingga mengklasifikasikan nilai masukan sebagai 0 atau 1.
Fungsi aktivasi
Fungsi aktivasi merupakan salah satu komponen terpenting dalam jaringan syaraf tiruan. Secara khusus, fungsi aktivasi nonlinier sangat penting setidaknya karena tiga alasan:
- Ini membantu neuron untuk belajar dan memahami sesuatu yang sangat rumit.
- Mereka memperkenalkan sifat nonlinier ke Jaringan kami.
- kami ingin perubahan kecil dalam berat hanya menyebabkan perubahan kecil yang sesuai pada keluaran dari jaringan.
Tidak ada komentar:
Posting Komentar