Skip to main content

Posts

Showing posts with the label indonesian

Neural Network - Bagian 3: Implementasi Multilayer Neural Network

Setelah membuat rancangan multilayer neural network pada post sebelumnya , kali ini akan dijabarkan mengenai implementasi menggunakan bahasa pemrograman Python dan package  numpy untuk membantu perhitungan matematika. Untuk mengingat kembali, spesifikasi  multilayer neural network yang akan diimplementasikan adalah sebagai berikut: Terdiri dari 3 layer: 1 input layer, 1 hidden layer, 1 output layer Fungsi aktivasi tanh untuk hidden layer Fungsi aktivasi softmax(x) untuk output layer Implementasi Fungsi Bantuan Fungsi bantuan yang dibutuhkan adalah fungsi softmax dan fungsi yang mengubah target dari array N*1 menjadi array N*C di mana N adalah banyaknya records dan C adalah banyaknya kelas berbeda.  Fungsi Softmax softmax(x_j) = exp(x_j)/(exp(x_1) + exp(x_2) + ... + exp(x_k)) Pertama-tama, definisikan fungsi softmax sebagai berikut. Nantinya akan dipakai untuk fungsi aktivasi layer output.  def softmax(z): z_ex...

Neural Network - Bagian 2: Multilayer Feed-forward Neural Network

Post ini akan membahas pemahaman mengenai multilayer feed-forward neural network sederhana.  Pemahaman Pada post kali ini, multilayer neural network yang akan diimplementasikan adalah feed-forward network  terdiri dari input layer, 1 hidden layer, dan output layer untuk permasalahan klasifikasi. Permasalahan klasfikasi merupakan sebagai berikut: Diberikan data training = {( x1 , t1), ( x2 , t2), ... ( xn , tn)} , akan dipelajari fungsi y = h(x) yang akan mempelajari pemetaan xi ke target ti . xi merupakan vektor input sedangkan target ti adalah kelas atau label yang sesuai dengan input xi . Banyaknya node pada input layer tergantung dengan panjang vektor input. Misalkan kita mempunyai vektor input terdiri dari 2 elemen, maka banyak node = 2. Selanjutnya, pada contoh kali ini, akan dibuat 5 node pada hidden layer . Banyaknya node pada hidden layer dapat divariasikan, tetapi semakin banyak node akan semakin besar cost perhitungannya. Sementara itu, banyaknya...

Neural Network - Bagian 1: Pendahuluan

Artificial neural network  (jaringan saraf tiruan) merupakan salah satu algoritme Machine Learning berdasarkan cara kerja  neuron  atau saraf pada otak manusia. Sebuah  neural network  sederhana terdiri bagian-bagian yang saling terhubung. Secara garis besar, komponen  neural network  adalah sebagai berikut: Input: ai Bias: a0*w0,j atau bisa juga b Bobot input:  wi,j Fungsi input: input = ∑wi,j * ai Fungsi aktivasi: f(input) Output: hasil dari fungsi aktivasi Gambar 1. Model untuk sebuah neuron dalam neural networks (Sumber: [1]) Fungsi aktivasi g dapat berupa macam-macam fungsi, contohnya fungsi threshold,   fungsi logistik (sigmoid), atau fungsi tanh. Fungsi threshold selalu menghasilkan nilai 0 atau 1 sedangkan fungsi logistik didefinisikan sebagai f(z) = 1/(1+exp(-z)). Fungsi tanh(z) = (exp(z) - exp(-z))/(exp(z) + exp(-z)). Perhatikan bahwa exp(x) = e^x di mana e adalah bilangan Euler bernilai kira-kira 2.718...

Gradient Descent

Dulu saat di Matematika SMA, diajarkan bahwa untuk mencari nilai maksimum atau nilai minimum dari sebuah fungsi f(x), dicari x yang membuat turunan pertama f'(x) = 0. Jika turunan kedua f''(x) < 0, kurva cekung ke bawah. Artinya titik (x, f(x)) adalah titik maksimum. Jika f''(x) > 0, kurva cekung ke atas dan titik (x, f(x)) adalah titik minimum.  Dalam kasus itu, x adalah anggota himpunan bilangan Real, sehingga dimensinya adalah 1.  Sementara itu, Gradient Descent , atau juga bisa disebut Steepest Descent , digunakan untuk mencari nilai minimum dari sebuah fungsi multi-variabel F  : Rn -> R . Artinya dimensi input untuk fungsi F(x) adalah suatu vektor x. Output dari fungsi f adalah bilangan real y. Jika yang dicari adalah nilai maksimum fungsi, maka namanya Gradient Ascent . Yah, descent dalam bahasa Inggris berarti "turun" sedangkan ascent berarti "naik." Cara kerja Gradient Descent adalah  Memberi tebakan awal θ .  T...

Membuat SIM Internasional

Halo, kali ini post bukan tentang pemrosesan teks, tetapi lebih mengenai pengalaman saya membuat SIM Internasional. Jadi hari ini saya baru saja membuat SIM Internasional di Korlantas Polri. Berdasarkan informasi yang saya dapatkan, yang perlu dibawa adalah: 1. KTP asli dan 1 lembar fotokopi KTP 2. SIM asli yang masih berlaku dan 1 lembar fotokopi SIM 3. Paspor asli dan 1 lembar fotokopi Paspor 4. 4 lembar foto 4x6 dengan latar belakang biru (perempuan memakai jas dan laki-laki memakai dasi) 5. Materai Rp 6000 Setelah menyiapkan persyaratan tersebut, saya pergi ke Korlantas Polri di Jl. Letnan Jendral MT Haryono No 37-38 Jakarta yang katanya buka Senin-Jumat jam 8:00 - 15:00. Pelayanan pembuatan SIM Internasional benar-benar mengesankan. Saya datang hari Jumat jam 14:20 karena pagi-pagi ada urusan, kemudian terjebak kemacetan dan agak bingung menemukan gedung Korlantas Polri. Ternyata lama proses pengerjaan SIM Internasional hanya memakan waktu 10 menit. Bahkan hanya butuh 3 ...

Java: Membuat Jar yang Memuat External Jar Lainnya Menggunakan Netbeans

Bagaimana jika suatu saat kita ingin membuat sebuah file jar dari program Java yang memanfaatkan (bergantung) dari external jar (biasanya di folder dist\lib)? Berikut adalah langkah-langkah untuk membuat file jar tersebut dengan Netbeans.  Pertama-tama lakukan clean and build pada program yang ingin dibuat file jar-nya.  Pada contoh ini, program SentenceSegmentation ingin dibuat file jar. Selanjutnya buka build.xml pada folder SentenceSegmentation .  Hapus isi build.xml dan masukkan kode berikut pada build.xml . SentSeg.jar adalah file jar hasilnya.     <?xml version="1.0" encoding="UTF-8"?>     <project name = "SentenceSegmentation" default = "default" basedir = "." >         <description> Builds, tests, and runs the project SentenceSegmentation. </description>         <import file = "nbproject/build-impl.xml" />             ...

Membuka File Zip Menggunakan Python (Windows 8)

Current working directory:  E:\python scripts Pada folder tersebut, terdapat sebuah file zip Random.zip  berisi sejumlah file .txt. Program untuk unzip file tersebut adalah unzip.py : import zipfile, os print(os.path.dirname(os.path.abspath(__file__))) #tempatnya unzip.py dir = os.path.dirname(os.path.abspath(__file__)) myfile = 'Random' with zipfile.ZipFile(myfile+'.zip', 'r') as z: print(dir+ '\\' +myfile) z.extractall(dir+ '\\' +myfile) Maka isi file pada Random.zip sekarang sudah ada di E:\python scripts\Random

Tutorial Django 1: Cara Instalasi Django pada Windows 8

Django adalah framework website berbasis bahasa pemrograman Python. Versi Python: 3.5 Versi Django 1.9.3 Download Python versi 3.x melalui link    https://python.org/download/  dan lakukan sesuai petunjuk instalasi pada situs tersebut. Pada contoh ini, Python 3.5 terdapat di folder E:\python35 Untuk memeriksa versi Python pada komputer, ketik python --version pada command prompt Jika terdapat lebih dari 2 versi Python (misalkan Python 2.x dan Python 3.x), ubah file python.exe pada masing-masing direktori yang memuat versi python tersebut menjadi python2.exe dan python3.exe. Untuk menjalankan program Python pada command prompt sesuai versi Python yang diinginkan - misal Python 3.x, cukup ketik python3 [file yang ingin dijalankan] . PIP adalah package manager untuk menginstal package-package Python. Jika versi Python yang digunakan adalah Python 3.5, pip sudah otomatis terinstal. Untuk download Django, ketik perintah python3 -m pip install django pada dire...