Pendahuluan Artificial Neural Networks

Perceptron

Artificial Neural Networks (ANN) dikembangkan berdasarkan dengan dasar neural network jaringan otak.
ANN berusaha meniru apa yang dikerjakan oleh otak manusia.

Pada istilah biologi neuron, pada ANN disebut perceptron. Jika digambarkan secara sederhana, sell dari neuron dari otak adalah seperti ini


Secara sederhana, Neuron memiliki banyak dendrites yang menerima signal listrik dan menyampaikan pada body dari neuron, dan akan menghasilkan output melalui axon. Yang dimana axon bisa terhubung lagi dengan dendrites lainnya.

Perceptron ANN juga meniru dari sistem biological neuron tersebut. Berikut gambaran dari perceptron.


Note, angka 12 dan 4 adalah hanya contoh angka saja. Weight 0 bukan bernilai 0 tetapi index ke 0. Begitu juga dengan weight 1.

Body dari perceptron berfungsi  sebagai Activation Function yang mengolah input dan bias menjadi output. Banyak jenis activation function yang akan kita bahas selanjutnya.

Jadi kalau mau dituliskan modelnya secara matematis adalah


Artificial Neural Network

Artifical neural network adalah gabungan dari perceptron. Layer dimana perceptron yang menerima input disebut input layer. Perceptron yang terletak diantara input dan ouput disebut hidden layer. Dan peceptron yang berhubngan dengan output disebut output layer.



Hidden layer yang memiliki lebih dari 2 layer perceptron (pada contoh gambar hanya 2 layer yaitu biru dan hijau) disebut deep network.


Activation Function

Activation function cukup banyak, berikut beberapa yang umum digunakan

Sigmoid Function



Hyperbolic Tangent : Tanh(z)



Rectified Linear Unit (ReLU)
Fungsi sederhana max(0, z). Jika nilai z < 0 (negatif), maka nilai max adalah 0, jika z > nol, maka nilai max adalah z.


Cost Function

Adalah sebuah fungsi untuk mengevaluasi performa dari neuron. Cost function akan mengukur terhadap nilai yang diharapkan.

Berikut variable yang digunakan dalam cost function
y : nilai sesungguhnya
a : nilai prediksi dari neuron

Cost function yang umum digunakan

Quadratic Cost
C = ∑ (y-a)2 / n

Makin besar error, makin menonjol angka tersebut karena di kuardratkan.
Kurang baik untuk performa karena dapat melambatkan learning speed dari model.

Cross Entropy
C = (-1/n)  ∑ y * ln(a) + (1-y) * ln(1-a)

Cost function ini Lebih cepat dalam hal speed learning, makin besar perbedaan antara y dan a, makin cepat proses pembelajaran neuron.

Gradient Descent

Adalah algoritma untuk melakukan optimisasi untuk mendapatkan function paling minimum agar cost function menjadi rendah.

Contoh sederhana gradient descent 1 dimensi, Y axis adalah cost function, x axis adalah weight.


1. Kita menentukan weight secara random
2. Gradient descent berusaha mencari fungsi minimum,
3. Langkah ke-2 dilakukan berulang hingga mencapai paling minimum

Contoh ini hanya untuk sebagai gambaran ide bagaimana gradient descent bekerja, pada prakteknya akan lebih rumit karena lebih dari 1 parameter.

Oleh karena itu dalam prakteknya kita akan menggunakan fungsi yang sudah disedikan oleh library deep learning.

Backpropagation

  • Digunakan untuk menghitung error contribution setiap neuron setelah sekumpulan data diproses. 
  • Tergantung chain rule untuk melakukan update pada network dan menghitung error.
  • Menghitung error pada output dan mendistribusikan kembali ke network layer. 
  • Memerlukan data label untuk perbandingan (supervised learning)






Pendahuluan Artificial Neural Networks Pendahuluan Artificial Neural Networks Reviewed by noname needed on May 21, 2018 Rating: 5

No comments:

Powered by Blogger.