Kelas pelatihan kali ini bersifat private, berisi materi Fast Track to Machine Learning yang berlangsung selama 2 hari penuh, 14 – 15 November 2023. Bapak Sahbuddin Abdulkadir, S.T., M.T., dari Politeknik Negeri Ujungpandang, sangat antusias mendalami ilmu yang satu ini.
Nov 06
Diskusi Ilmiah Internet of Things di Universitas Panca Budi
Diskusi ilmiah *Internet of Things* di Prodi Sistem Komputer Universitas Pembangunan Panca Budi, Medan, 6 November 2023.
Terima kasih Bu Ika Devi yang sudah menjadi moderator, dan Pak Eko Hariyanto yang telah membuka acara.
Sep 23
Internet of Things : 15.09.2023 – 19.09.2023
Pelatihan mengenai Internet of Things yang diselenggarakan secara exclusive khusus untuk Politeknik Caltex Riau (PCR) berlangsung selama 5 hari, 15 – 19 September 2023, secara online.
Diikuti oleh 3 (tiga) srikandi hebat : Elva Susianti, S.ST, M.T., Putri Madona, S.ST., M.T. dan Retno Tri Wahyuni, S.T., M.T.
Sep 22
Energi Meter PZEM-017
PZEM-017 adalah modul komunikasi DC yang dapat mengukur daya DC hingga 300VDC dan pengukuran arus tergantung pada pemasangan shunt eksternal dengan rentang 50A, 100A, 200A, dan 300A. Sebelum menggunakannya, pastikan konfigurasi parameter yang terdapat dalam modul sesuai dengan rentang besaran arus yang akan diukurnya, yakni berdasarkan shunt yang terpasang. Parameter ini dapat diatur melalui function code 0x03 register 0x0003.
- to be continued
Sep 18
Artificial Intelligence dan Perspektif Masa Depan
Senin, 18 September 2023, di awal tahun ajaran baru 2023/2024, Prodi Teknik Elektro Universitas Kristen Maranatha mengadakan pembekalan untuk seluruh mahasiswa Teknik Elektro. Saya diundang menjadi nara sumber untuk tajuk “Artificial Intelligence dan Perspektif Masa Depan“.
Terima kasih Dr. Heri Andrianto, S.T., M.T. yang telah mengundang. Kiranya apa yang disampaikan melalui kesempatan ini, boleh memberkati mahasiswa dan dosen yang hadir 🙂
Sep 05
Fungsi Aktivasi dalam Deep Learning
Deep learning, sebuah sub bidang machine learning, berkembang pesat dalam cara kerja rumit artificial neural network yang terdiri dari beberapa lapisan neuron buatan yang saling berhubungan. Untuk memungkinkan neuron belajar dan membuat prediksi secara akurat, fungsi aktivasi memainkan peran penting. Fungsi aktivasi memperkenalkan non-linearitas ke dalam jaringan saraf, memungkinkannya memodelkan hubungan kompleks antara masukan dan keluaran, dan meningkatkan kekuatan pengambilan keputusan jaringan.
Apa itu Fungsi Aktivasi?
Fungsi aktivasi adalah fungsi matematika yang mengambil jumlah masukan tertimbang dari lapisan neuron sebelumnya dan menerapkan transformasi untuk menghasilkan nilai keluaran atau aktivasi. Tujuan dari transformasi ini ada dua: (1) untuk memperkenalkan non-linearitas dan (2) memungkinkan sinyal menyebar melalui jaringan.
Fungsi aktivasi menormalkan nilai keluaran, menjadikannya berada dalam kisaran tertentu. Kisaran ini sering kali terletak antara 0 dan 1 atau -1 dan 1, bergantung pada jenis fungsi aktivasi yang digunakan. Setiap neuron di jaringan saraf dalam biasanya menggunakan fungsi aktivasi untuk memutuskan kapan dan sejauh mana fungsi tersebut harus diaktifkan.
Fungsi Aktivasi Umum
1. Fungsi sigmoid (Fungsi logistik)
Fungsi sigmoid adalah salah satu fungsi aktivasi paling awal yang digunakan dalam pembelajaran mendalam. Ini memetakan jumlah input tertimbang ke nilai antara 0 dan 1, yang mewakili kemungkinan aktivasi neuron. Namun, fungsi sigmoid mengalami masalah vanishing gradient, di mana gradien menjadi sangat kecil di lapisan yang lebih dalam, sehingga menyebabkan konvergensi lambat selama pelatihan.
2. Rectified Linear Unit (ReLU)
ReLU adalah salah satu fungsi aktivasi yang paling banyak digunakan dalam pembelajaran mendalam saat ini. Ini didefinisikan sebagai f(x) = max(0, x), dengan output adalah 0 untuk nilai negatif dan input tetap tidak berubah untuk nilai positif. ReLU secara efektif memecahkan masalah vanishing gradient dan mempercepat pelatihan. Namun dapat menyebabkan dead neuron jika gradien menjadi nol untuk semua input ke dalam neuron selama pelatihan.
3. Leaky ReLU
Untuk mengurangi masalah neuron mati, Leaky ReLU diperkenalkan. Ini didefinisikan sebagai f(x) = max(αx, x), dengan α adalah konstanta kecil (<1) yang menentukan kemiringan input negatif. Dengan mengizinkan gradien kecil untuk masukan negatif, Leaky ReLU mencegah kematian neuron dan memberikan pembelajaran yang lebih baik untuk deep neural network.
4. Hyperbolic Tangent (tanh)
Fungsi tangen hiperbolik mirip dengan fungsi sigmoid tetapi memetakan masukan ke nilai antara -1 dan 1. Fungsi ini memberikan non-linier yang lebih kuat dan lebih simetris di sekitar titik asal dibandingkan dengan fungsi sigmoid. Mirip dengan fungsi sigmoid, fungsi aktivasi tanh juga dapat mengalami masalah vanishing gradient.
5. Softmax
Softmax sering digunakan sebagai fungsi aktivasi di lapisan keluaran jaringan saraf ketika menangani masalah klasifikasi kelas jamak. Ini mengubah jumlah masukan tertimbang menjadi distribusi probabilitas, di mana setiap keluaran mewakili kemungkinan kelas tertentu. Softmax memastikan bahwa jumlah semua probabilitas sama dengan 1. Hal ini sangat berguna ketika berhadapan dengan kelas yang saling eksklusif.
Sep 05
Memahami Training dan Validation Loss
Deep Learning telah merevolusi bidang kecerdasan buatan, memungkinkan mesin belajar dari data dan membuat prediksi dengan akurasi luar biasa. Namun, melatih model deep learning bisa menjadi tugas yang menantang, karena kita perlu mengoptimalkan model yang kompleks dengan jutaan parameter. Salah satu komponen penting dari proses pengoptimalan ini adalah memahami training dan validation loss.
Training Loss
Saat melatih model deep learning, kita ingin meminimalkan perbedaan antara keluaran yang diprediksi dan keluaran sebenarnya. Training loss, juga disebut objective function atau cost function, mengukur perbedaan antara keluaran yang diprediksi dan keluaran aktual untuk satu contoh pelatihan. Tujuan dari proses pelatihan adalah untuk meminimalkan training loss di semua contoh pelatihan, yang dicapai melalui algoritma pengoptimalan seperti stochastic gradient descent (SGD).
Training loss adalah metrik fundamental dalam deep learning, karena memandu proses pembelajaran. Saat model dilatih, training loss akan berkurang secara bertahap. Jika training loss tidak berkurang, berarti model tidak belajar secara efektif, dan kita perlu menyesuaikan hyperparameter atau arsitektur model.
Validation Loss
Meskipun kita ingin meminimalkan training loss, tujuan utama kita adalah membangun model yang dapat meng-generalisasi data yang tidak terlihat dengan baik. Oleh karena itu, kita perlu mengukur performa model kita pada dataset terpisah yang belum pernah dilihat model tersebut selama pelatihan. Dataset ini disebut set validasi, dan loss yang terkait disebut validation loss.
Validation loss adalah metrik yang powerful untuk mengevaluasi performa generalisasi suatu model. Jika training loss berkurang, tetapi validation loss meningkat, hal ini menunjukkan bahwa model mengalami overfitting, artinya model mengingat data pelatihan tetapi gagal meng-generalisasi data baru. Di sisi lain, jika validation loss berkurang, model dapat diharapkan berfungsi dengan baik pada data yang belum pernah dilihat sebelumnya.
Contoh kurva underfitting
Contoh kurva overfitting
Memantau Training dan Validation Loss
Untuk memantau kemajuan dari training dan validation loss, kita biasanya memplotnya sebagai fungsi dari training epoch. Satu epoch mewakili satu iterasi pelatihan lengkap di seluruh training dataset. Dengan menganalisis kurva loss, kita dapat mendiagnosis masalah umum dalam deep learning, seperti overfitting, underfitting, atau ketidakstabilan model.
Salah satu tren populer dalam deep learning adalah menerapkan early stopping, yang berarti menghentikan proses pelatihan ketika validation loss tidak membaik. Teknik ini adalah cara sederhana untuk menghindari overfitting dan memastikan bahwa model dapat digeneralisasi dengan baik pada data baru.
Aug 24
6th International Conference of Computer and Informatics Engineering
Perhelatan International Conference of Computer and Informatics Engineering ke 6 akan dilangsungkan di Aruna, Senggigi Lombok, 14-15 September 2023. Terkait dengan kegiatan ini, kami mengirimkan satu berkas artikel riset bertajuk Machine Learning Algorithm and Modeling in Solar Irradiance Forecasting, dan statusnya accepted, 23 Agustus 2023. Penelitian dilakukan di Padepokan NEXT SYSTEM Bandung.
Terima kasih, hatur nuhun, matur nuwun kepada dosen-dosen dari Politeknik Negeri Jakarta yang telah memberikan dukungan dan berkolaborasi : Mr. Nana Sutarna, Ph.D., Ms. Dr. Prihatin Oktivasari, Ms. Murie Dwiyaniti, M.T., dan Mr. Tohazen, M.T.
IEEE Computational Intelligence Society dan IEEE Indonesia Section menjadi technical co-sponsor.
Aug 18
Konverter RS485 ke TTL
Produk yang satu ini murah meriah namun bisa menjawab kebutuhan untuk konversi dari RS485 ke TTL. Penulis menggunakannya untuk komunikasi ESP32 dengan sejumlah perangkat modbus slave, diantaranya: PZEM-017, PT100 dan Anemometer.
Jul 20
STM32: Cangkok Memori Flash
Ketersediaan ruang memori, khususnya Flash dan RAM, sering menjadi kendala ketika mengembangkan aplikasi berbasis MicroPython di platform mikrokontroler STM32, khususnya versi ekonomis seperti STM32F411CEU6 (Flash: 512k, RAM: 128k) atau STM32F401CCU6 (Flash: 256k, RAM: 64k)
.
Mikrokontroler yang satu ini memiliki CPU yang mumpuni, Cortex-M4, dengan dapur pacu 100 MHz dan 84 MHz. Namun ketika ditanam firmware MicroPython, ruang memori flash seperti tampak pada gambar terlampir (gambar dikutip dari Instagram pribadi usai riset 😃)
.
Ketika mencoba satu aplikasi yang cukup besar, ruang memori tidak cukup. Pilihannya, ganti dengan varian STM32 yang memiliki ruang memori flash yang lebih besar atau melakukan cangkok. Upgrade ke seri STM32 yang memiliki ruang hingga 2MB, misal STM32F429, yang harganya lumayan, karena disertai dengan daya gedor CPU yang lebih gegas (dapur pacu hingga 180 MHz); sementara yang menjadi kendala adalah ruang flash, bukan performa CPU.
.
Ketika itu, karena memerlukan ruang flash ekstra dan kinerja CPU bisa diterima, maka dipilih cara cangkok. Hasilnya bisa dilihat di gambar terlampir, ruang flash hasil cangkok menjadi sangat lapang dan leluasa ~ 4MB 😃