Aplikasi Machine Learning

Perancangan Sistem Home Automation Dengan Kendali Perintah Suara Menggunakan Deep Learning Convolutional Neural Network (DL-CNN)


Penerapan Algoritma Machine Learning

Sumber : Lery Sakti Ramba, Muhammad Aria Rajasa Pohan Program Studi Teknik Elektro, Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia Jl. Dipati ukur No 12, Bandung


DAFTAR ISI
1. Tujuan
2. Teori
3. Cara Kerja
4. Contoh Program
5. Video

1. Tujuan

Memahami dan mengetahu perancangan sistem kendali dengan sistem Machine Learning yang berhubungan dengan bidag ilmu Teknik Elektro.

Tujuan dari penelitian ini adalah untuk merancang sebuah sistem pengenalan suara yang
akurat dan mampu berjalan secara stand-alone pada sebuah komputer komersial

2. Teori

Artificial intelligence merupakan bidang ilmu yang menekankan penciptaan sistem/mesin cerdas yang bekerja dan bereaksi sama seperti manusia. Machine learning merupakan salah satu
cabang pengembangan ilmu artificial intelligence yang memungkinkan sistem komputer untuk
belajar dari pengalaman sebelumnya dan meningkatkan perilaku/respon sistem untuk setiap tugas yang diberikan


Terdapat beberapa penelitian di bidang home automation yang memanfaatkan teknologi
automatic speech recognition untuk mengendalikan perangat elektronik yang diinginkan. Namun, aplikasi speech recognition tersebut mengharuskan kita untuk selalu terkoneksi internet. Hal ini dikarenakan proses mengkonversi sinyal audio ke dalam bentuk teks (speech to text) tidak dilakukan pada perangkat yang kita miliki, melainkan dilakukan pada komputer server penyedia layanan speech recognition tersebut. Sehingga dengan demikian, metode ini tidak memungkinkan kita untuk memasang sistem pengenalan suara yang data bekerja secara stand-alone pada komputer atau perangkat yang kita miliki.

3. Cara Kerja

Algoritma LSTM RNNs seperti yang terdapat pada automatic speech recognition dirancang untuk digunakan memproses sequential data. RNN LSTMs menggunakan memori internal untuk memproses setiap input sequential data 


Skematik dari rangkaian yang akan dirancang: 
Arduino Nano secara real-time akan berkomunikasi dengan komputer dimana program pengenalan suara dijalankan. Output dari sistem pengenalan suara akan dijadikan
sebagai acuan utama oleh mikrokontroler untuk mengirim trigger (low atau high) ke rangkaian
relay





Proses konversi sinyal audio dari speech waveform ke dalam bentuk speech spectrogram
merupakan proses yang sangat penting pada sistem ini. Hal ini dikarenakan representasi sinyal audio dalam bentuk spectrogram merupakan input untuk CNN pada sistem ini.



1. Analog to Digital Converter (ADC)
Sinyal yang dideteksi oleh mikrofon pada dasarnya adalah sinyal analog. Oleh karena
itu, sebelum sinyal suara tersebut dapat diproses oleh MATLAB, pertama-tama perlu
mengubah sinyal analog tersebut menjadi sinyal digital

2. Speech Waveform
Speech waveform merupakan sinyal hasil sampling dari sinyal analog yang dideteksi
oleh mikrofon. Pada tahap ini, speech waveform yang ada merupakan sinyal digital
yang memiliki frekuensi sampling 16 KHz, sesuai dengan inisialisasi yang ditentukan
sebelumnya pada program MATLAB

3. Mel Spectrogram
Mel Spectrogram merupakan algoritma yang digunakan untuk menghitung spectrogram dari suatu sinyal audio.

CNN (Convolution Neural Network)
Setiap perulangan tersebut terdiri dari convolutional layer, batch normalization layer, dan ReLU layer. Arsitektur CNN ini akan melakukan proses komputasi terhadap input data sampai menghasilkan klasifikasi terhadap suatu kelas tertentu. 







flowchart proses klasifikasi pada arsitektur CNN yang telah dirancang. Penjelasannya adalah sebagai berikut.

1. Input pada arsitektur CNN ini, merupakan gambar yang berukuran [40 x 98]. Gambar
input tersebut adalah gambar yang diambil dari speech spectrogram dengan durasi satu
detik.

2. Pada convolution layer yang pertama, gambar input akan dikonvolusikan oleh filter
yang berukuran [3 x 3], stride berukuran [1 x 1], dan padding “same”. Dikarenakan
PaddingMode yang digunakan adalah “same”, maka sistem akan memberlakukan
aturan zero padding terhadap input matriks. Nilai dari zero padding dapat ditentukan
menggunakan persamaan (3) berikut ini.






4. Contoh 


Pada sistem ini, nilai epoch yang digunakan adalah 25, yang berarti bahwa arsitektur CNN
akan mengulang siklus belajar dari data training sebanyak 25 kali. Setelah proses training
selesai, sistem akan mengevaluasi model CNN yang telah dilatih dengan menggunakan data
validasi yang sebelumnya telah dipisahkan dari data training. Proses ini bertujuan untuk
mengukur persentase keakuratan klasifikasi dari model CNN yang telah dilatih. 



Pengujian ini dilakukan pada ruangan dengan intensitas background noise rata-rata 24dB. Masing-masing perintah suara yang telah dilatih pada model CNN diuji untuk mengetahui output klasifikasi dari model CNN tersebut

a. Perintah “Nyalakan Lampu”



b. Perintah “Matikan Lampu”



c. Perintah “Kunci Pintu”





d. Perintah “Buka Pintu”



e. Perintah “Kipas Menyala”




f. Perintah Kipas Mati




5. VIdeo Penjelasan








Link Download : disini






Tidak ada komentar:

Posting Komentar