Deep Learning: Boltzmann Machines

Deep Learning: Boltzmann Machines

Di materi-materi sebelumnya, saya sudah membahas beberapa teknik deep learning (DL) di antaranya ANN, CNN, RNN, dan SOM. Kali ini kita akan membahas teknik DL yang sedikit berbeda dari sebelumnya. Jika teknik-teknik sebelumnya memiliki arah, di mana kita melakukan forward propagation (maju) dan backward propagation (mundur), maka teknik yang ingin saya kenalkan ini tidak memiliki arah. Teknik ini disebut dengan Boltzmann Machines, sebuah teknik unsupervised deep learning.

Untuk bisa memahaminya dengan baik, mari kita lihat ilustrasi dari arsitektur Boltzmann sebagai berikut:

ilusrtasi rancangan Boltzmann
Arsitektur Boltzmann Machines

Gambar di atas menunjukkan ada 2 jenis neurons (nodes) yang berwarna biru dan kuning. Nodes yang berwarna biru adalah nodes yang idak terlihat, sementara yang berwarna kuning adalah yang terlihat. Perlu diperhatikan bahwa pemilihan warna hanyalah untuk ilustrasi saja (membedakan 2 jenis nodes).

Hal yang menarik dari rancangan Boltzmann adalah ia tidak memiliki output layers, dan tidak memiliki arah (ditunjukkan dengan tidaka adanya tanda panah pada rancangan tersebut). Selain itu, masing-masing nodes saling terhubung satu dengan lainnya. Lalu bagaimana cara membacanya?

Anggap saja kita memiliki sebuah rancangan pemanas (heating system) untuk sebuah rumah, di mana rancangan ini memiliki banyak faktor agar bisa diwujudkan menjadi sistem pemanas rumah yang ideal. Masing-masing faktor ini juga memiliki sistemnya sendiri-sendiri. Dengan demikian, kita memiliki sistem gabungan yang terdiri dari beberapa sistem lain yang saling berinteraksi. Ilustrasinya sebagai berikut:

sistem pemanas rumah
Ilustrasi sistem rumah dengan berbagai sistem di sekitarnya

Pada dasarnya kita hanya berfokus pada rumahnya saja, di mana untuk membuat pemanas rumah yang baik maka perlu diperhatikan insulasi dinding yang baik, ketebalan atap, jenis pintu, kualitas bangunan seperti bata, semen dan lain-lain. Di sekitar objek rumah ini, ada faktor lain yang berinteraksi dengan objek rumahnya, misal sungai yang berada di sebelah rumah, jumlah tanaman yang ada di sekitarnya, kendaran bermotor yang lalu lalalng di depan rumah, iklim, cuaca, terik matahari, dan masih banyak lagi.

Tentunya kondisi cuaca akan berpengaruh terhadap sistem pemanas yang ada di rumah. Misal, jika cuaca panas, maka pemanas akan jarang beroperasi, namun jika musim dingin, maka pemanas akan lebih sering menyala. Jumlah tanaman yang berada di sekeliling rumah juga memengaruhi sistem pemanas. Begitu pula dengan polusi, panas aspal, kecepatan angin, dan masih banyak lagi.

Ada banyak sekali sistem yang berada di sekitar objek rumah yang sedang dibahas, dan kita hanya membatasinya sesuai dengan apa yang ada di gambar.

Lalu apa hubungannya dengan Boltzmann Machines?

Masing-masing sistem yang ada di gambar objek rumah di atas mewakili sebuah node di sistem Boltmann, di mana node ini berperilaku seperti sebuah mesin yang berjalan lengkap dengan efek yang dihasilkannya. Faktor-faktor yang bisa kita tentukan nilainya (bisa kita kendalikan) mewakili nodes yang terlihat (visible nodes), namun faktor yang tidak bisa kita kontrol mewakili hidden nodes.

Dengan demikian, semua nodes yang ada membuat sebuah sistem tunggal. Masing-masing saling berinteraksi dan bisa menyesuaikan nilainya secara otomatis seiring berjalannya waktu. Berbeda dengan sistem deep learning lain di mana nilai bobot ditentukan melalui activation function dan proses forward dan back-propagation, maka di Boltmann Machines ini semua berjalan secara otomatis. Sampai di sini saya harap bisa dipahami.

Pada dasarnya konsep pemanas rumah di atas terinspirasi oleh konsep pembangkit listrik tenaga nuklir yang dipaparkan oleh Geoffrey Hinton (The Godfather of AI) karena memang ialah yang pertama kali memaparkan ide tentang Boltmann Machines. Dengan menggunakan konsep unsupervised seperti ini, maka sangat dimungkinkan bagi kita untuk bisa memonitor reaktor nuklir, dan mustahil melakukan monitoring dengan konsep supervised, karena banyak faktor yang tidak bersifat deterministik.

Hal yang perlu diperhatikan, walaupun kita secara visual tahu mana yang menjadi visible nodes dan hidden nodes, Botlzmann Machines memperlakukan keduanya sebagai nodes yang sama.

Kemudian hal lain yang juga penting bahwa alasan dari arsitektur Boltzmann yang memang tidak memiliki output layer dikarenakan tujuannya tidak menghasilkan nilai akhir, melainkan lebih kepada membuat kesetimbangan sistem. Ini juga menjelaskan mengapa semua nodes saling terkoneksi satu dengan yang lainnya.

Untuk melanjutkan membaca silakan klik tombol ke halaman selanjutnya di bawah ini.

Bagikan artikel ini:

Pages: 1 2 3

Leave a Reply

avatar
  Subscribe  
Notify of