DEEP LEARNING
Teknologi AI saat ini
JURUSAN TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER
PENGENALAN DEEP
LEARNING
VIDEO ON YOUTUBE
NVIDIA SURVEY
STARTUP
INVESTASI MULTI-BILLION DOLLAR
LINK DEEPMIND DAN WAVENET
2013 Facebook – AI Lab, Deep Face 2013 Yahoo – LookFlowe
2013 Ebay - AI lab
2013 Allen Institute for AI 2013 Google – DNNresearch 2014 IBM - $1 billion in Watson
2014 Google – DeepMind $500 million https://deepmind.com/
https://deepmind.com/blog/wavenet-generative-model-raw-audio/ http://icml.cc/2016/?page_id=2009
2014 Vicarios - $70 million
2014 Microsoft – Project Adam, Cortana 2015 Fanuc – Machine Learning for Robotics
DEFINISI DEEP LEARNING
Sejak tahun 2006, Deep Structured Learning atau yang lebih dikenal dengan Deep learning atau Hierarchical Learning telah muncul sebagai area baru dalam
penelitian Machine Learning yang berdasarkan pada suatu set algoritma yang mencoba untuk memodelkan abstraksi tingkat tinggi pada data dengan
menggunakan graf yang mendalam dengan beberapa lapisan pengolahan, yang terdiri dari beberapa transformasi linier dan non-linier. (Bengio, 2009).
Referensi lengkap tentang definisi : https://en.wikipedia.org/wiki/Deep_learning
Deep Learning pada dasarnya merupakan istilah baru untuk ANN yang memiliki lapisan tersembunyi yang banyak (lebih dari 1).
DEEP ARCHITECHTURE (BENGIO, 2009)
Kemampuan untuk mempelajari sesuatu yang kompleks dan fungsi yang sangat bervariasi dari sampel data pelatihan.
Untuk dapat belajar dengan sedikit masukan dari manusia pada level abstraksi rendah, sedang, dan tinggi pada data.
Waktu komputasi seharusnya memakan waktu yang terskala dengan baik pada sampel data dan mendekati linier.
Untuk dapat belajar dari sampel data tanpa label dan bekerja dengan pengaturan semi-supervised, dimana sampel mungkin memiliki label yang salah.
Mempunyai pembelajaran tak terawasi (unsupervised learning) yang kuat yang dapat menangkap sebagian besar struktur statistik pada data yang diobservasi.
TERINSPIRASI DARI OTAK
HTTP://WWW.AGING-VISION-ACTION.FR/AVA_TEACHING/UE_5BN04/SLIDES/THORPE.PDF
Terbukti Otak manusia melakukan sesuatu hal
yang sama persis seperti, hirarki pertama
pada neuron menerima informasi pada visual
cortex yang sensitif terhadap gambaran tepi
dan gumpalan khusus, sedangkan daerah
otak bagian bawah merupakan elemen
pemrosesan (pipeline) visual yang sensitif
terhadap struktur yang lebih kompleks seperti
wajah.
Otak kita memiliki banyak sekali neuron yang
saling terhubung dan memiliki kekuatan
koneksi (bobot sinaptik) antar neuron
SEJARAH SINGKAT (1)
SEJARAH SINGKAT (2)
PARADIGMA/STRUKTUR/ARSITEKTUR/
TOPOLOGI JST
Paradigma Arsitektur/Topologi Algoritma Training
Supervised/Diskriminatif Perceptron MLP Reccurent NN LSTM Convolution NN Backpropagation Bolztmann
Learning Vector Quantization
Unsupervised/Generatif RBM BM RNN LSTM Kohonen SOM Backpropagation Contrastive Divergence Kohonen Hybrid RBF DBN RBF Pretraining+Training
ALGORITMA DEEP
LEARNING
DEEP LEARNING PADA SPEECH RECOGNITION
DAN IMAGE CLASSIFICATION
(HINTON 2012) HTTP://STATIC.GOOGLEUSERCONTENT.COM/MEDIA/RESEARCH.GOOGLE.COM/EN//PUBS/ARCHIVE/38131.PDF
ANN BIASA VS ANN DEEP LEARNING
(BENGIO, 2009) HTTPS://WWW.IRO.UMONTREAL.CA/~LISA/POINTEURS/TR1312.PDF
Banyak peneliti berhasil melakukan training pada jaringan syaraf tiruan dengan 1 atau 2 lapisan tersembunyi, tetapi melakukan training pada lebih dari 1 lapisan selalu memberikan hasil yang semakin memburuk.
Jadi pada Deep Learning terdapat algoritma baru untuk training (dengan cara yang berbeda) pada banyak lapisan jaringan.
ALGORITMA-ALGORITMA DEEP
LEARNING (TOPOLOGI)
HTTPS://WHATSTHEBIGDATA.COM/2016/10/10/NEURAL-NETWORKS-TYPOLOGY/
SEBELUM KE SALAH SATU ALGORITMA MARI
MELIHAT CARA KERJA UNIT/NEURON TERSEMBUNYI
MEMPELAJARI FITUR TINGKATYANG LEBIH TINGGI (HIGHER-LEVEL FEATURES)
dll …
Mendeteksi garis2posisi yang spesifik
v Higher level detetors
( garis horisontal, “vertika”
“melingkar”, etc…
dll …
BANYAK HIDDEN LAYER AKAN BERGUNA
TRAINING DENGAN CARA BARU
DEEP BELIEF NETWORK
Setiap lapisan non output dianggap sebagai RBM dan dilatih dengan algoritma Contrastive Divergence/CD-1/PCD
Setelah setiap lapisan non-output dilatih pada setiap waktu, lakukan fine-tuning pada keseluruhan jaringan dengan menambahkan lapisan output dengan
AUTOENCODER / DEEP AUTOENCODER
Setiap lapisan non output dianggap sebagai Auto Encoder
Setelah setiap lapisan non-output dilatih pada setiap waktu, lakukan fine-tuning pada keseluruhan jaringan dengan menambahkan lapisan output dengan
CONVOLUTION NN (CNN)
Konsep sejak 1969 oleh Hubel (Neocognitron), Dilanjutkan oleh Yann LeCun.
Terdapat layer convolution sebagai detector fitur yang secara automagically mempelajarinya untuk menyaring informasi yang tidak diperlukan dari input dengan menggunakan kernel konvolusi.
Layer Pooling menghitung nilai maksimal atau rata2 dari fitur atas daerah tertentu dari input. Yang juga dapat membantu mendeteksi objek pada beberapa tempat yang tidak biasa dan mengurangi ukuran memori
LONG SHORT-TERM MEMORY RNN
(LSTM)
LSTM merupakan jenis tertentu dari RNN yang bekerja sedikit lebih baik dalam prakteknya, karena memiliki persamaan
pembaharuan bobot yang lebih kuat dan beberapa diterapkan juga backpropagation yang dinamis
Unit-unit LSTM memberikan sel-sel memory pada jaringan dengan operasi membaca, menulis, dan me-reset. Selama pelatihan, jaringan dapat belajar saat jaringan seharusnya mengingat data dan ketika sedang melupakan data.
FUNGSI AKTIVASI DALAM DEEP
LEARNING
Banyak Deep Networks menggunakan RELU RELU = max(0,x)
Biasanya pada lapisan tersembunyi
Dapat belajar lebih cepat lebih ekspresif daripada sigmoid
Dapat mencegah permasalahan kelenyapan Gradien (gradient vanishing problem)
GPU PROGRAMMING
Banyaknya layer pada arsitektur jaringan syaraf mendalam akan membuat jumlah bobot yang terbentuk pada jaringan juga menjadi banyak.
Hal tersebut akan mengakibatkan waktu training yang menjadi lama.
Dengan parallel GPU setiap pemrosesan untuk beberapa data training dapat
dibagi kedalam core-core pada GPU, sehingga dengan komputasi parallel tersebut dapat mempersingkat waktu training.
Parallel CPU juga dapat dilakukan namun lebih sangat cepat jika menggunakan GPU.
Lalu GPU seperti apa? Silahkan liat Nvidia Deep Learning Library atau CuDNN atau CUDA.
NVIDIA PASCAL
OVERFITTING DAN REGULARISASI
Overfitting is a big problem!
Overfitting adalah jika kita mempunyai banyak fitur dan dilakukan training dan pada data training memiliki performa yang bagus, tetapi gagal untuk
mengeneralisir data baru (atau pada data testing). Kurangi jumlah fitur
Secara maual pilih fitur yang diinginkan Algoritma seleksi model.