Pengertian dan Contoh makalah : Sistem Jaringan

BAB II LANDASAN TEORI
2.1.System Development Life Cycle (SDLC)
Dalam   membuat   sebuah   software   (program   aplikasi)   terdapat   beberapa paradigma atau model proses, lima diantaranya adalah The Classic Life Cycle atau yang biasa dikenal dengan Waterfall Model, Prototyping Model, Fourth Generation Techniques (4GT), Spiral Model,  dan Combine Model. Dalam pengembangan program aplikasi Speech Recognizer ini model proses yang digunakan adalah Waterfall Model.
Menurut Royce (1929–1995), secara umum ada enam tahapan dalam Waterfall Model
Tahap-tahap tersebut disusun seperti model aliran air terjun sehingga disebut dengan Waterfall Model. Model ini menjadi panduan langkah-demi langkah pembuatan program aplikasi supaya project pengembangan program aplikasi tersebut dapat selesai dan dibuat sesuai kebutuhan yang diharapkan oleh pengguna.

2.2Flowchart
Flowchart atau sering juga ditulis sebagai flow-chart dan flow chart adalah representasi skema dari suatu algoritma atau suatu proses (Wikipedia 2008). Flowchart pertama kali diperkenalkan oleh Frank Gilbreth kepada anggota ASME (American Society of Mechanical Engineers) pada tahun 1921 sebagai representasi Process Charts—First Steps in Finding the One Best Way dan saat ini menjadi alat yang sering digunakan untuk menunjukkan aliran proses dalam suatu algoritma.
Pada website Wikipedia dikatakan bahwa sebuah flowchart standar dari buku- buku  computer science akan memiliki simbol-simbol seperti berikut ini:
Simbol Mulai dan Selesai yang berbentuk oval atau persegipanjang dengan ujung-ujungnya yang tumpul. Biasanya terdapat kata “Mulai atau “Selesai” atau frase lainnya yang menunjukkan awal dan akhir dari sebuah proses.
Anak Panah, menunjukkan apa yang disebut dengan “alur kontrol” dalam computer science. Anak panah keluar dari satu simbol dan berakhir pada simbol lainnya menunjukkan bahwa kontrol beralih pada simbol yang ditunjukkan oleh ujung panah.
Langkah Proses, direpresentasikan sebagai sebuah persegi panjang. Contoh: “Tambahkan 1 pada X”.
Masukan   atau   Keluaran direpresentasikan  sebagai   persegi  panjang, Contoh: “Ambil nilai X dari pengguna”, “Tampilkan nilai X”.
Kondisi atau Keputusan, direpresentasikan sebagai belah ketupat. Biasa berisi pertanyaan yang mempunyai jawaban “ya” atau “tidak” ataupun pengetesan “benar” atau “salah”. Simbol ini unik karena ada dua anak panah yang keluar dari simbol ini. Biasanya terdapat pada sudut bawah dan sudut kanan dari simbol ini salah satunya berkorespondensi pada jawaban “ya” atau “benar” dan lainnya “tidak” atau “salah”. Tiap anak panah harus diberi label didalamnya.  Lebih  dari  dua  anak  panah  dapat  digunakan,  tetapi  secara normal berarti bagian tersebut dapat dipecah lagi di kemudian hari. 

2.3Sequence Diagram (Diagram Sekuen)
Sequence Diagram digunakan untuk memodelkan skenario penggunaan (Hariyanto 2004, p309). Skenario penggunaan adalah barisan kejadian yang terjadi selama satu eksekusi sistem. Cakupan skenario dapat beragam, mulai dari semua  kejadian  di  sistem  atau  hanya  kejadian  pada  objek-objek  tertentu. Skenario menjadi rekaman historis eksekusi sistem atau gagasan eksperimen eksekusi sistem yang diusulkan.
Sequence Diagram menunjukkan objek sebagai garis vertikal dan tiap kejadian sebagai panah horisontal dari objek pengirim ke objek penerima. Waktu berlalu dari atas ke bawah dengan lama waktu tidak relevan. Diagram ini hanya menunjukkan barisan kejadian, bukan pewaktuan nyata. Kecuali untuk sistem waktu nyata (Real Time System) yang mengharuskan konstrain barisan kejadian.
Sequence Diagram digunakan untuk:
1.   Overview perilaku sistem,
2.   menunjukkan objek-objek yang diperlukan,
3.   mendokumentasikan skenario dari suatu diagram use case,
4.   memeriksa jalur-jalur pengaksesan

2.4Sinyal Percakapan (Speech Signal)
Sinyal dapat didefinisikan sebagai kuantitas fisik yang bervariasi seiring waktu atau  variabel  bebas  lainnya  yang  menyimpan suatu  informasi.  (Roberts  2004,  p1). Contoh sinyal adalah suara manusia, kode morse, tegangan listrik di kabel telepon, variasi intensitas cahaya pada sebuah serat optik yang digunakan pada telepon atau jaringan komputer, dan lain-lainnya.
Sinyal  dapat  diklasifikasikan  menjadi  beberapa  jenis  yaitu  sinyal  waktu kontinyu, sinyal waktu diskrit, sinyal nilai kontinyu, sinyal nilai diskrit, sinyal random dan sinyal nonrandom (Roberts 2004, p2). Sinyal analog adalah sinyal yang belum melalui proses apapun. Sedangkan sinyal nilai diskrit atau sinyal digital adalah sinyal analog yang telah melalui proses sampling, quantization, dan encoding.
Sampling adalah proses mengambil nilai-nilai sinyal pada titik-titik diskrit sepanjang variabel waktu dari sinyal waktu kontinyu, sehingga didapatkan sinyal waktu diskrit. Jumlah titik-titik yang diambil setiap detik dinamakan sebagai sampling rate. Pengambilan sampel dilakukan pada kecepatan 8000 Hz dengan resolusi 8 bit (1 byte) sehingga didapat data sebanyak 8000 byte tiap detik. Kecepatan pencuplikan tersebut dilakukan dengan didasarkan asumsi bahwa sinyal per-cakapan (speech) berada pada daerah frekuensi 300-3400 Hz sehingga memenuhi kriteria Nyquist yang menyatakan bahwa sebuah sinyal harus mempunyai sampling rate yang lebih besar dari 2fh, dengan
fh adalah frekuensi paling tinggi yang muncul di sebuah sinyal (Roberts 2004, p503). 
Quantization  adalah  proses  memetakan  nilai-nilai  dari  sinyal  nilai  kontinyu menjadi nilai-nilai yang diskrit, sehingga didapatkan sinyal nilai diskrit.
Encoding adalah proses mengubah nilai-nilai sinyal menjadi bilangan biner.
Sinyal yang berbentuk digital dapat disimpan dalam media penyimpanan di komputer. File wav (berasal dari kata wave) merupakan format umum yang paling sederhana  untuk  menyimpan  data  sinyal  audio.  File  wav  terdiri  dari  3  potongan informasi yaitu: RIFF chunk, Format chunk, dan Data chunk (Csele 2007). RIFF chunk berisi informasi yang menandakan bahwa file berbentuk wav. FORMAT chunk berisi parameter-parameter seperti jumlah channel, sample rate, resolusi. DATA chunk yang berisi data aktual sinyal digital.
Sinyal  yang  dihasilkan  dari  suara  manusia  sewaktu  melakukan  percakapan disebut sebagai sinyal percakapan. Sinyal percakapan merupakan kombinasi kompleks dari variasi tekanan udara yang melewati pita suara dan vocal tract, yaitu mulut, lidah, gigi, bibir, dan langit-langit. 
Sinyal  percakapan  terdiri  dari  serangkaian  suara  yang  masing-masing menyimpan sepotong informasi. Berdasarkan cara menghasilkannya, suara tersebut terbagi menjadi voiced dan unvoiced. Suara voiced dihasilkan dari getaran pita suara, sedangkan suara unvoiced dihasilkan dari gesekan antara udara dengan vocal tract.
Sinyal percakapan memiliki beberapa karakteristik, misalnya: formant, pitch, dan intensitas. Formant adalah variasi resonansi yang dihasilkan oleh vocal tract. Pitch adalah frekuensi dari sinyal atau yang sering disebut sebagai intonasi. Sedangkan intensitas adalah kekuatan suara. Karakteristik-karakteristik tersebut berguna dalam melakukan analisis sinyal.

2.5 Speech Recognition, Speaker Identity Verification  dan Speech Recognizer
Speech Recognition (dalam beberapa konteks juga dikenal sebagai Automatic Speech Recognition, pengenalan suara pada komputer, atau seringkali disalah artikan sebagai Voice Recognition') adalah proses dalam mengkonversikan sebuah sinyal percakapan menjadi urutan kata-kata, dengan menggunakan algoritma yang diimplementasikan sebagai program komputer (Wikipedia 2007).
Berbeda dengan Speaker Identity Verification (SIV) yang justru dikembangkan untuk membedakan suara seseorang dengan yang lainnya dengan menggunakan ciri khas suaranya  sekalipun  mengucapkan  kata  yang  sama  dengan  orang  lain.  Biasanya digunakan untuk memproteksi dokumen ataupun absensi sehingga dapat melindungi kerahasiaan maupun membatasi akses dari pihak yang tidak diinginkan.
Speech recognizer atau pengenal suara yang dimaksud disini adalah suatu program aplikasi komputer yang dapat menerima rangkaian kata atau kalimat yang diucapkan  oleh  pembicara  dengan  menggunakan  sebuah  media  input  suara  seperti microphone untuk dapat dikenali dan direpresentasikan kembali ke dalam bentuk teks. Dengan demikian Speech Recognizer bisa juga didefinisikan sebagai satu mesin atau perangkat lunak yang mampu mengenali percakapan dan menerjemahkan percakapan tersebut ke dalam bentuk tertulis.

2.6.      Spectrogram dan Transformasi Fourier
Spectrogram  merupakan  representasi  visual  dari  bunyi  dalam  bentuk  dua dimensi, yang menggambarkan hubungan dari frekuensi dengan waktu; amplitudo ditandai hanya secara perkiraan oleh kecerahan dari warna. (Indiana 2008).
Diagram spektrum Spectrogram adalah sebuah gambaran pola pengucapan suatu kata atau kalimat yang berguna untuk melihat kondisi dari sebuah gelombang yang kompleks dalam rentang waktu yang singkat. Namun dalam ucapan, suara berubah-ubah secara konstan. Spectrogram adalah sebuah cara yang sangat cocok untuk menggambarkan diagram perubahan spektrum suara sepanjang sumbu waktu t.
Dalam sebuah spectrogram, dimensi horisontal merepresentasikan waktu sedangkan dimensi vertikal merepresentasikan frekuensi. Setiap potongan tipis vertikal dari sebuah spectrogram menunjukkan spektrum selama rentang waktu yang singkat, menggunakan kepekatan untuk mewakili amplitudo. Area yang lebih pekat (gelap) menunjukkan frekuensi dimana komponen gelombang sederhana tersebut mempunyai amplitodo yang besar.
Untuk situasi dimana kurva respon frekuensi suara lebih diutamakan daripada spektrum mentahnya maka dapat digunakan wide band spectrogram. Disini, area yang lebih pekat melebar ke area yang lebih lebar. Hal ini membuat kabur nada-nada tinggi namun itu membuat formant-formant menjadi lebih mudah untuk dilihat dan kelihatan sebagai pita yang pekat. Formants adalah frekuensi pembeda arti, komponen dari suara manusia untuk diucapkan.
Spectrogram  dapat  membuat  pola  atau  bentuk  suara  menjadi  mudah  untuk diamati dan dibedakan, contohnya formant-formant yang berubah pada sebuah pengucapan suara.  Berikut ini  adalah spectrogram dari  contoh pengucapan kalimat dalam bahasa Inggris “We were away a year ago”: 
Transformasi secara umum adalah perubahan suatu bentuk dan ukuran ke bentuk dan ukuran lain, baik secara fisik maupun secara non-fisik (Agus Soedomo, 2004). Transformasi  Fourier  merupakan  metode  untuk  mentransformasikan  sinyal  domain waktu menjadi sinyal domain frekuensi (Max, 1981). Transformasi ini penting dalam analisis sinyal karena karakteristik sinyal domain frekuensi dapat diamati dengan lebih jelas dan dimanipulasi dengan lebih mudah daripada sinyal domain waktu. Di domain frekuensi, sinyal direpresentasikan sebagai serangkaian nilai yang menunjukkan banyaknya satuan sinyal yang berada di frekuensi tertentu.
Transformasi Fourier banyak digunakan untuk aplikasi sains, misalnya fisika, teori numerik, pemrosesan sinyal, statistik, akustik, optik, geometri, dan lain-lainnya.
Salah satu kekurangan dari Transformasi Fourier adalah tidak dapat meberikan informasi  kapan  komponen  frekuensi  tertentu  terjadi.  STFT  adalah  Transformasi Fourier yang punya satu daya pisah tetap. Lebar dari windowing function menunjukkan bagaimana sinyal direpresentasikan, menunjukkan dimana frequency resolution yang baik (komponen frekuensi yang berdekatan dapat dipisahkan) atau time resolution yang baik (waktu dimana frekuensi berubah). Sebuah window yang lebih lebar (wideband) memberikan frequency resolution yang lebih baik tetapi memiliki kekurangan dalam time resolution. Sebuah window yang lebih sempit (narrowband) memberikan time resolution yang bagus tetapi frequency resolution yang kurang bagus.
Menggunakan sampel sinyal x(t) yang dibentuk dari 4 set gelombang-gelombang sinusoidal yang digabung bersama-sama dalam sebuah sekuen. Setiap bentuk dibawah dihasilkan  dari  salah  satu  dari  4  frekuensi  (10,  25,  50,  100  Hz).  
Window dengan ukuran 25 ms memungkinkan untuk mengidentifikasi waktu dimana sinyal berubah dengan lebih teliti namun sulit untuk mengidentifikasi frekuensi secara  presisi.  Di  lain  pihak  pada  ukuran  window  yang  sangat  bertolak  belakang, window dengan ukuran 1000 ms memungkinkan frekuensi dapat dilihat secara lebih presisi tetapi waktu diantara frekuensi menjadi kabur.

2.7 Discrete-Time Short-Time Fourier Transform (STFT)
Short-Time Fourier Transform (STFT) atau yang bisa juga disebut dengan Short- Term  Fourier Transform  adalah suatu  metode transformasi sinyal analog ke dalam bentuk sinyal digital yang berjenis Transformasi Fourier Cepat yang dalam bahasa Inggrisnya disebut dengan Fast Fourier Transform (FFT). Seperti halnya FFT, STFT berguna untuk mengubah sinyal analog yang berupa gelombang suara manusia ke dalam bentuk sinyal digital.
Short-Time Fourier Transform (STFT) dibagi menjadi dua jenis, diantaranya yaitu:
1.Discrete-Time Short-Time Fourier Transform
2.Continuous-Time Short-Time Fourier Transform.

STFT sama seperti transformasi Fourier standar dan sering digunakan untuk menganalisa suara. Gambar 2.12 menampilkan frekuensi pada sumbu horisontal, dimana frekuensi terendah pada sebelah kiri dan frekuensi tertinggi pada sebelah kanan. Ketinggian dari setiap bar (ditunjukkan dengan warna) merepresentasikan amplitudo dari frekuensi pada pita tersebut. Dimensi kedalaman mewakili waktu, dimana masing-masing batang baru adalah satu transformasi yang terpisah. 

2.8 Biological Neural Network (Jaringan Saraf Biologi)
Otak manusia memiliki struktur yang sangat kompleks dan memiliki kemampuan yang luar biasa. Otak terdiri dari neuron-neuron dan penghubung yang disebut dengan sinapsis. Neuron bekerja berdasarkan impuls/sinyal yang diberikan pada neuron. Neuron meneruskannya pada neuron lain. Saat ini diklaim bahwa sistem pusat otak kita terdiri dari sekitar 1,3. neuron dan sekitar 1.10, diantaranya terletak bagian otak (Halici, 2008, p2). Otak manusia merupakan koleksi dari sekitar 10 milyar neuron yang saling berhubungan satu sama lain (Fraser 1998) Dengan jumlah yang begitu banyak, otak mampu mengenali pola, melakukan perhitungan, dan mengontrol organ-organ tubuh dengan  kecepatan   yang   lebih   tinggi   dibandingkan   komputer   digital Sebagai perbandingan, pengenalan wajah seseorang yang sedikit berubah (misal memakai topi, memiliki jenggot tambahan, dan lain-lain) akan lebih cepat dilakukan manusia dibandingkan komputer.

Pada waktu lahir, otak mempunyai struktur yang menakjubkan karena kemampuannya membentuk sendiri aturan-aturan / pola berdasarkan pengalaman yang diterima. Jumlah dan kemampuan neuron berkembang seiring dengan pertumbuhan fisik manusia, terutama umur 0-2 tahun. Pada 2 tahun pertama umur manusia, terbentuk 1 juta sinapsis per detiknya (Siang, 2007, p2).
Neuron memiliki 3 komponen penting yaitu dendrit, soma dan axon. Dendrit menerima sinyal dari neuron lain. Sinyal tersebut berupa impuls elektrik yang dikirim melalui celah sinaptik melalui proses kimiawi. Sinyal tersebut dimodifikasi (diperkuat / diperlemah)  di  celah  sinaptik.  Berikutnya,  soma  menjumlahkan  semua  sinyal-sinyal yang  masuk.  Kalau  jumlahan  tersebut  cukup  kuat  dan  melebihi  batas  ambang (threshold), maka sinyal tersebut akan diteruskan ke sel lain melalui axon. Frekuensi penelusuran sinyal berbeda-beda antara satu sel dengan yang lain.

Neuron biologi merupakan sistem yang fault tolerant dalam 2 hal. Pertama, manusia dapat mengenali sinyal input yang agak berbeda dari yang pernah diterima sebelumnya. Sebagai contoh manusia sering dapat mengenali seseorang yang wajahnya pernah dilihat dari foto, atau dapat mengenali seseorang yang wajahnya agak berbeda karena sudah lama tidak dijumpainya.
Kedua, otak manusia tetap mampu bekerja meskipun beberapa neuron-nya tidak mampu bekerja dengan baik. Jika sebuah neuron rusak, neuron lain kadang-kadang dapat dilatih untuk menggantikan fungsi neuron yang rusak tersebut.

2.9 Artificial Neural Network (Jaringan Saraf Tiruan)
Artificial Neural Network (ANN) adalah sistem pemroses informasi yang memiliki karakteristik mirip dengan Biological Neural Network (BNN) (Siang 2007, p2).
ANN  dibentuk  sebagai  generalisasi  model  matematika  dari  jaringan  saraf biologi, dengan asumsi bahwa:
-Pemrosesan informasi terjadi pada banyak elemen sederhana (neuron)
-Sinyal dikirimkan diantara neuron-neuron melalui penghubung-penghubung

-Penghubung  antar  neuron  memiliki  bobot  yang  akan  memperkuat  atau memperlemah sinyal
-Untuk  menentukan  output,  setiap  neuron  menggunakan  fungsi  aktivasi (biasanya bukan fungsi linier) yang dikenakan pada penjumlahan input yang diterima. Besarnya output ini selanjutnya dibandingkan dengan suatu batas ambang.
Adapun kualitas atau karakteristik sebuah Artificial Neural Network ditentukan oleh tiga hal, yaitu:
1.   Pola hubungan antar neuron (disebut arsitektur jaringan)
2.   Metode untuk menentukan bobot penghubung (disebut metode training atau learning atau algoritma)
3.   Fungsi aktivasi

Berikut  ini  adalah  gambar  model  ANN  yanmenunjukkan  hubungan  antar neuron (Synaptic Weights), fungsi aktifasi (Summing Function) dan bias (Threshold) yang menghasilkan suatu nilai output (y).
Σ menerima input dari neuron x1, x2, dan x3 dengan bobot hubungan masing- masing adalah w1, w2, w3. Ketiga impuls neuron yang ada dijumlahkan dengan summing function net = x1 w1  + x2 w2  + x3 w3
Besarnya impuls yang diterima oleh Σ mengikuti fungsi aktivasi Σ = f(net). Apabila nilai fungsi aktivasi cukup kuat, maka sinyal akan diteruskan. Nilai fungsi aktivasi (keluaran model jaringan) juga dapat dipakai sebagai dasar untuk merubah bobot.

2.10 Fungsi Aktifasi
Dalam ANN, fungsi aktivasi dipakai untuk menentukan keluaran suatu neuron. Argumen fungsi aktivasi adalah net masukan (kombinasi linier masukan dan bobotnya).
Beberapa fungsi aktivasi yang sering dipakai adalah sebagai berikut:

2.10.1  Fungsi Threshold (batas ambang)
Untuk beberapa kasus, fungsi threshold yang dibuat tidak berharga 0 atau 1 tapi berharga -1 atau 1 (sering disebut threshold bipolar).

2.10.2  Fungsi Sigmoid
Rumus fungsi Sigmoid
Fungsi sigmoid sering dipakai karena nilai fungsinya yang terletak antara 0 dan 1 dan dapat diturunkan dengan mudah:

2.10.3  Fungsi Identitas
Rumus fungsi Identitas
Fungsi identitas ini merupakan fungsi aktivasi yang sangat sederhana, sering dipakai apabila kita menginkan keluaran jaringan berupa sembarang bilangan riil (bukan hanya pada range [0,1] atau [-1,1]).
2.11 Bias dan Threshold
Kadang-kadang dalam jaringan ditambahkan sebuah unit masukan yang nilainya selalu  =1.  Unit  yang  sedemikian  itu  disebut  Bias  (lihat  gambar  3.3).  Bias  dapat dipandang sebagai sebuah input yang nilainya =1. Bias berfungsi untuk mengubah nilai threshold menjadi = 0 (bukan = a). Jika melibatkan bias, maka keluaran unit penjumlah

2.12 Model Artificial Neural Network
Berdasarkan  strategi  pelatihannnya  Artificial  Neural  Network  dapat  dibagi menjadi dua jenis, yaitu:
1.   Pelatihan dengan supervisi (supervised training)
2.   Pelatihan tanpa supervisi (unsupervised training)

Sedangkan berdasarkan  arsitektur dari neuron-nya, Artificial Neural Network dibagi menjadi tiga jenis yaitu:
1.   Jaringan lapis tunggal (single layer network)
2.   Jaringan lapis jamak (multi layer network)
3.   Jaringan recurrent (recurrent network)

2.12.1  Pelatihan dengan supervisi (Supervised Training)
Pelatihan dengan supervisi ini yaitu suatu strategi dimana neuron dilatih dengan  menentukan  terlebih  dahulu  data  yang  ingin  dihasilkan  ketika  diberi input-an data lainnya. Contoh model yang masuk dalam kategori ini antara lain model Hebbian, Perceptron, ADALINE, Boltzman, Hopfield, Backpropagation, dan lain-lain.

2.12.2  Pelatihan tanpa supervisi (Unsupervised Training)
Model pelatihan tanpa supervisi ini lebih kompleks karena campur tangan manusia yang dibutuhkan dalam proses pelatihan tidak sebanyak pada pelatihan dengan  supervisi.  Contoh  model  yang  masuk  dalam  kategori  ini  antara  lain model Competitive, Hebbian, Kohonen, LVQ (Learning Vector Quantization), Neocognition, dan lain-lain.

2.12.3  Jaringan Lapis Tunggal (Single Layer Network)
Model yang masuk kategori ini antara lain: ADALINE, Hopfield, Perceptron, LVQ, dan lain-lainnya. Arsitektur jaringan lapis tunggal

2.12.4  Jaringan Lapis Jamak (Single Layer Network)
Model yang masuk kategori ini antara lain: MADALINE, Hopfield, Backpropagation,  Neocognition,  dan  lain-lainnya.  Arsitektur  jaringan  lapis jamak

2.12.5  Jaringan Recurrent (Recurrent Network)
Model yang masuk kategori ini antara lain BAM (Bidirectional Associative Memory), Boltzman Machine, Hopfield, dan lain-lainnya. Gambar model jaringan ini sama dengan model arsitektur jaringan lapis tunggal hanya saja tanda pandah dari satu node ke node lain bersifat dua arah (bidirectional).

2.13 Backpropagation
Kelemahan Artificial Neural Network (ANN) yang terdiri dari lapis tunggal membuat perkembangannya menjadi terhenti pada sekitar tahun 1970-an. Penemuan Backpropagation yang terdiri dari beberapa lapis membuka kembali cakrawala Artificial Intelligence. Terlebih setelah berhasil ditemukannya berbagai permasalahan yang dapat diselesaikan dengan Backpropagation, membuat ANN semakin dibutuhkan dalam kemajuan teknologi komputer.
ANN dengan lapis    tunggal    yang    dahulu      dipakai                sebelum   adanya backpropagation memiliki keterbatasan dalam pengenalan pola. Kelemahan ini diatasi dengan menambahkan satu atau beberapa lapis tersembunyi diantara lapis masukan dan keluaran pada Backpropagation. Meskipun penggunaan lebih dari satu lapis tersembunyi memiliki kelebihan manfaat untuk beberapa kasus, tapi pelatihannya memerlukan waktu yang lama. Maka umumnya orang mulai mencoba dengan sebuah lapis tersembunyi lebih dahulu.
Seperti halnya model ANN lain, backpropagation melatih jaringan untuk mendapatkan keseimbangan antara kemampuan jaringan untuk mengenali pola yang digunakan selama pelatihan serta kemampuan jaringan untuk memberikan respon yang benar terhadap pola masukan yang serupa (tidak harus persis sama) dengan pola yang dipakai selama pelatihan.
Dalam algoritma Backpropagation terdapat proses training yang meliputi feedforward, backward serta perbaikan bobot dan bias. Sedangkan proses selanjutnya untuk mengenali pola yang telah dilatih disebut dengan proses recall yang dilakukan hanya dengan mengulangi proses feedforward. Berikut ini merupakan langkah-langkah yang  digunakan dalam proses training dan recall   menggunakan  algoritma
Backpropagation:

1.   Inisialisasi bobot
2.   Selama kondisi berhenti false, lakukan langkah 3 – 10
3.   Untuk setiap pasangan data pelatihan, lakukan langkah 4 – 9

Feed Forward (langkah maju)
4.   Setiap unit input (Xi, i = 1, …, n) menerima sinyal input xi  dan meneruskan sinyal tersebut ke semua unit pada lapis di atasnya (hidden layer).
5.   Setiap unit tersembunyi (Zj, j = 1, …, p) menjumlahkan  sinyal-sinyal input.