Wednesday, January 29, 2020

Buku Belajar Machine Learning dengan Matlab

Buku Belajar Machine Learning dengan Matlab
Buku Belajar Machine Learning dengan Matlab

Sinopsis

Perkembangan mengenai machine learning; deep learning; artifical intelegent sudah sangat maju yang ditandai dengan penerapan didunia nyata seperti face detection, face recognition, voice recognition, mobil otonom. Kesemuanya menggunakan algoritma yang dibangun atas beberapa teknologi, salah satunya menggunakan bahasa pemrograman.

Ada banyak bahasa pemrograman serta pustaka yang bersifat berbayar ataupun free. Nah pada buku ini fokus kepada kemudahan dan serta keseragaman bahasa yaitu menggunakan Matlab mengingat kebutuhan dasar seperti pengolahan array, grafik, serta berbasis functional programming yang sangat dibutuhkan oleh para pembaca. Kalian bisa lebih mudah menerapkan algoritma lebih cepat dan lebih mudah menggunakan Matlab.

Kombinasi antara kemudahan dan ketersediaan tools sangat cocok bagi kalian untuk mempelajari secara mendalam topik machine learning menggunakan Matlab. Oiya, dalam kaitannya machine learning kalian harus belajar terlebih dahulu buku dasar-dasar pemrograman Matlab karena machine learning erat kaitannya dengan Matematika dan Statistika, serta jangan lupa belajar Dasar-Dasar Pengolahan Citra Digital dengan Matlab ya.

Pada Buku Belajar Machine Learning dengan Matlab  ini kalian akan mempelajari dasar-dasar machine learning mulai dari percepton, Learning Vector Quantization, serta Backpropagation (belajar jaringan syaraf tiruan dengan matlab) sampai pada tahap sekarang ini yang sedang booming yaitu deep learning

Daftar Isi Buku

  1. Perceptron
  2. Support Vector Machine
  3. Meta Heuristik Algoritma Kunang-Kunang - Firefly
  4. Neural Network Backpropagation untuk Klasifikasi Jenis Kanker
  5. System Hibrid Meta Heuristik dan Particle Swarm Opmization
  6. Peramalan dengan Algoritma Fuzzy Chen 
  7. Algoritma Clustering Fuzzy C-Means Clustering 
  8. Kumpulan Dataset untuk Studi Kasus

Desain Machine Learning

Belajar jaringan syaraf tiruan dengan matlab atau  Machine learning atau dialih bahasakan menjadi pembelajaran mesin merupakan teknik pengambilan keputusan oleh mesin menggunakan sebuah dataset. Dataset tersebut bisa  berjumlah ribuan, jutaaan record/ foto yang akan dimasukan kedalam algoritma pelatihan sehingga kemampuan mesin untuk menggeneralisir seperti layaknya otak manusia. Otak manusia akan tersusun dengan neuron dan sinapsis, dengan meniru tersebut dibuatlah algoritma machine learning seperti bagan berikut:

Bagan diatas adalah algoritma machine learning bertipe neural network backpropagation yang terdiri dari 4 layer yaitu 1 input, 2 hidden, dan 1 output. Masing-masing mempunyai terdiri dari node didalam layer. Setiap layer dihubungkan oleh bobot dan bias dengan fungsi aktifasi logsig. Agar kalian paham cara kerja machine learning, pelajari saja dulu dasar-dasarnya dibawah ini.

Fungsi Aktifasi

Digunakan untuk menyambungkan/penghubung antar node pada setiap layer. Ada beberapa jenis fungsi aktifasi yaitu hard limit; bipolar; purelin; sigmoid. Kalian bisa menggunakan sesuai kebutuhan karena setiap dataset mempunya nilai yang berbeda-beda.

Fungsi hard limit

dengan bentuk keluaran tegas yaitu 1 dan 0 dengan rumus sebagai berikut

\[f(x)=\left\{\begin{array}{rcl}
    0, jika & x<0
    & \\
    & \\
    1, jika & x \geq 0  
   \end{array}
\right. \]



Artinya berapun nilanya akan bernilai output 1 dan 0 sesuai dengan rumus diatas, di Matlab menggunakan function \(y=hardlim(x)\). Misalkan kalian punya input array $$x=[-100:10:100]$$
seperti code berikut dibawah ini

clc;clear all;close all;
x = [-100:1:100];
y = hardlim(x);
figure,
plot(x,y)
grid on
xlabel('x')
ylabel('y')
title('Hard Limit')


Buku Belajar Machine Learning dengan Matlab

Kalian bisa melihat berapun nilai \(x\) akan mengeluarkan output 0 dan 1. biasanya digunakan untuk menangani dataset kategori seperti Ya dan Tidak (terdiri dari 2 kelas saja)

Fungsi Bipolar

Fungsi ini bisa kalian gunakan dengan output yang dihasilkan -1 dan 1, sesuai dengan rumus dibawah ini

\[f(x)=\left\{\begin{array}{rcl}
    +1, jika & x\geq0
    & \\
    & \\
    -1, jika & x < 0 
   \end{array}
\right. \]


Dengan menggunakan function \(hardlims\) seperti kode dibawah ini, kalian bisa lihat bahwa keluaran -1 dan +1

clc;clear all;close all;
x = [-100:1:100];
y = hardlims(x);
figure,
plot(x,y)
grid on
xlabel('x')
ylabel('y')
title('Bipolar')

Buku Belajar Machine Learning dengan Matlab

Fungsi Sigmoid

Bisa kalian gunakan untuk output range \(0\leq x \leq 1\) dengan rumus umum seperti berikut



$$f(x)=\frac{1}{1+e^{-\sigma x}}$$

Kalian bisa gunakan function \(logsig\), seperti berikut dibawah ini

clc;clear all;close all;
x = [-5:0.01:5];
y = logsig(x);
figure,
plot(x,y)
grid on
xlabel('x')
ylabel('y')
title('Sigmoid')


Buku Belajar Machine Learning dengan Matlab


Fungsi Sigmoid Bipolar

Sama seperti sigmoid dengan output keluaran  \(-1\leq x \leq 1\) dengan rumus umum seperti berikut

$$f(x)=\frac{1-e^{-x}}{1+e^{-x}}$$

Kalian bisa menggunakan function \(tansig\) seperti kode dibawah ini

clc;clear all;close all;
x = [-5:0.01:5];
y = tansig(x);
figure,
plot(x,y)
grid on
xlabel('x')
ylabel('y')
title('Tansig')


Buku Belajar Machine Learning dengan Matlab

Jenis-Jenis Jaringan Syaraf Tiruan

Machine learning dibagi menjadi 2 yaitu neural network dan deep learning. Keduanya dibedakan pada proses training nya, dengan deep learning yang lebih kompleks untuk algoritma trainingnya. Sedangkan nueral network banyak sekali jenisnya yaitu
  1. Perceptron
  2. Backpropagation backpropagation (perambatan maju dan mundur)
  3. Learning Vector Quantization
  4. Kohonen
Adapun untuk pembahasan Perceptron dan Learning Vector Quantization telah dimasukan kedalam buku yang diterbitkan oleh Graha Ilmu dengan judul Buku Belajar Pemrograman Octave, kalian bisa beli saja di toko buku terdekat agar lebih paham cara kerja/step by stepnya. Sedangkan pada pembahasan kali ini lebih kepada cara pengunaan function built in di Matlab.


No comments:

Post a Comment