• Tidak ada hasil yang ditemukan

Analisis Dan Peracangan Aplikasi Sistem Pendeteksi Gangguan Jaringan Komputer Menggunakan Multilayer Dengan Pelatihan Feedforward

N/A
N/A
Protected

Academic year: 2016

Membagikan "Analisis Dan Peracangan Aplikasi Sistem Pendeteksi Gangguan Jaringan Komputer Menggunakan Multilayer Dengan Pelatihan Feedforward"

Copied!
79
0
0

Teks penuh

(1)

MULTILAYER DENGAN PELATIHAN FEEDFORWARD

SKRIPSI

SISKA MELINWATI 061401040

PROGRAM STUDI SARJANA ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

(2)

MULTILAYER DENGAN PELATIHAN FEEDFORWARD

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer

SISKA MELINWATI 061401040

PROGRAM STUDI SARJANA ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : ANALISIS DAN PERANCANGAN APLIKASI

SISTEM PENDETEKSI GANGGUAN PADA JARINGAN KOMPUTER MENGGUNAKAN

MULTILAYER DENGAN PELATIHAN

FEEDFORWARD ALAM (FMIPA) UNIVERSITAS SUMATERA

UTARA

Diluluskan di Medan, 10 Januari 2011 Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Amer Sharif, S.Si, M.Kom Syahriol Sitorus, S.Si, MIT

Nip. NIP: 197103101997031004

Diketahui/Disetujui oleh

Departemen Ilmu Komputer FMIPA USU Ketua,

(4)

PERNYATAAN

ANALISIS DAN PERANCANGAN APLIKASI SISTEM PENDETEKSI GANGGUAN JARINGAN KOMPUTER MENGGUNAKAN MULTILAYER

DENGAN PELATIHAN FEEDFORWARD

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, 10 Januari 2011

(5)

PENGHARGAAN

Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa karena kasih dan karuniaNya yang selalu menyertai penulis sehingga karya tulis ini berhasil diselesaikan dalam waktu yang telah ditetapkan.

Ucapan terima kasih penulis sampaikan kepada Bapak Syahriol, S.Si, MIT dan Bapak Amer Sharif S.Si, M.Kom selaku pembimbing untuk menyelesaikan skripsi ini dan telah memberikan panduan dan penuh kepercayaan kepada penulis untuk menyempurnakan karya tulis ini. Ucapan terimakasih juga penulis sampaikan kepada Prof. Dr. Muhammad Zarlis dan Syahril Efendi, S.Si, MIT selaku dosen penguji. Panduan ringkas, padat, dan profesional telah diberikan kepada penulis agar dapat menyelesaikan tugas ini. Ucapan terima kasih juga ditujukan kepada ketua dan sekretaris Departemen ilmu komputer, Bapak Dr. Poltak Sihoming M.Kom dan Iu Maya Silvi Lydia B.Sc, M.Sc. Panduan ringkas, padat dan propesional telah diberikan kepada penulis agar dapat menyelesaikan tugas akhir ini. Ucapan terimakasih juga di tujukan kepada Dekan dan Pembantu Dekan Fakultas Matematikan dan Ilmu Pengetahuan Alam Universitas Sumatera Utara, serta dosen serta para pegawai pada Departemen Ilmu Komputer dan FMIPA USU,

Tidak lupa juga penulis ucapkan terima kasih yang sebesar-besarnya kepada kedua Orangtuaku Ibu T. Marpaung dan Bapak A.B. Sitorus yang selalu memberikan cinta kasihnya dan dukungan, baik secara materil dan spiritual. Buat saudara-saudara penulis Bang Royles Toni Sitorus beserta Kak Hotmauli Simanjuntak, Bang Agus Santoso Sitorus dan Bang Pahotan Sumardi Sitorus terima kasih atas perhatian dan dukungan serta motivasi yang diberikan kepada penulis.

(6)

ABSTRAK

Deteksi intrusi jaringan komputer dapat di lakukan dengan memanfaatkan teknologi Jaringan Syaraf Tiruan (JST), yang berfungsi seperti otak manusia arsitektur multilayer feedforward dan algoritma pembelajaran Backpropagation. Arsitektur multilayer terdiri atas layer input, hidden layer dan output. Di mana setiap later dapat terdiri dari satu atau lebih neuron. Sinyal input berupa variabel nilai dari data intrusi yang telah dinormalisasi sehingga memghasilkan antara nilai 0 dan 1. Dari hasil pengujian dapat di simpulkan bahwa pemilihan parameter dan bobot yang dapat digunakan untuk deteksi intrusi ditentukan oleh hasil training, jika tingkat error yang diperoleh minimum maka parameter dan bobot hasil training akan di pakai untuk mendeteksi intrusion. Hasil training menunjukkan bahwa dari target error 1x10-6 hasil terbaik yang diperoleh adalah tingkat error sebesar (9.28x10-7) untuk satu hidden layer dengan 15 neuron. Tingkat error tersebut dicapai dalam waktu 1 detik dan jumlah iterasi sebanyak 12 epoch. Simulasi menggunakan satu hidden dengan 15 neuron tidak membuat performance menjadi lebih baik. Sedang untuk 50 neuron, tingkat error

(7)

ANALYSIS AND DESIGN OF COMPUTER NETWORKS INTRUSION-DETECTION USING MULTILAYER FEEDFORWARD ARTIFICIAL NEURAL

NETWORK

WITH BACKPROPAGATION TRAINING

ABSTRACT

Intrusion detection in computer networks may be achived by utilizing Artificial Neural Networks (ANN), which serves as a model the human brain with multilayer feedforward architecture and backpropagation training algorithm. This architecture consists of an input layer, one or more hidden layer, and output layer where each layer may consists of one or more neurons. Input signals are obtained from intrusion data which where normalized to yield values between 0 and 1. From the test results we may concluded that the parameters and weights for intrusion detection are determined by the training results, if the error level achieved is minimum then the parameters and weights from the training will be used for intrusion. Training results indicated that for a target error of 1x109-7, the minimum error level which can be achieved was (9.28x10 -7

(8)

DAFTAR ISI

1.7 Sistematika Penulisan 3

Bab 2 Tinjauan Pustaka 5

2.4 Arsitektur Neural Network 10

2.4.1 Jaringan Syaraf Lapisan Tunggal 11

2.6 Training Pada Artificial Neural Network 18

2.6.1 Supervised Training 18

(9)

2.7 Perceptron 19 2.7.1 Jaringan dengan Threshold dan Fungsi Aktivasi 19

2.7.2 Algoritma Feedforward 21

2.7.3 Perceptron Lapis Ganda 23

2.8 Ilustrasi Proses feedforward 23

2.8.1 Ilustrasi Proses Alur Maju 25

2.8.2 Algoritma Backpropagation dalam Jaringan Syaraf Tiruan 27

Bab 3 Analisis dan Perancangan 31

3.1 Analisis 31

3.2 Persiapan Input Data 32

3.2.1 Membaca Input Data 32

3.2.2 Normalisasi Data 33

3.3 jaringan Feedforward 34

3.3.1 Membangun Suatu Jaringan Alur Maju Feedforward 36

3.4 Pelatihan dan Pembelajaran 38

3.4.1 Simulasi dan Pembelajaran 38

3.4.2 verifikasi Hasil dan Data Pelatihan 40

Bab 4 Implementasi dan pengujian 40

4.1 Implementasi dan Pengujian 40

(10)

DAFTAR TABEL

Halaman

Tabel 3.1 Data Intrusion 32

Tabel 3.2 Argumen Untuk tiap Lapis 37

Tabel 3.3   Sintaks     38

(11)

DAFTAR GAMBAR

Gambar 2.16 Jaringan Syaraf Lapisan Tunggal dengan satu Output dan dua Input 19

Gambar 2.17 Jaringan Lapis Tunggal Merepresentasikan Suatu Fungsi Garis Pemisah 21

Gambar 2.18 Jaringan Topologi umum Feedforward dengan Multilayers 21

Gambar 2.19 Proses Pengujian pada Perceptron lapis Ganda (Multilayers) 23

Gambar 2.20 Model Sederhana Jaringan dengan dua Input dan satu output Dengan Total Enam Neuron 24

Gambar 3.7 Arsitektur Multilayer Menggunakan Pelatihan Feedforward 38

(12)

Gambar 4.2 Grafik dari Kode A02 42

Gambar 4.3 Grafik dari Kode A03 43

Gambar 4.4 Grafik dari Kode A04 44

Gambar 4.5 Grafik dari Kode A05 46

Gambar 4.6 Grafik dari Kode A06 47

Gambar 4.7 Grafik dari Kode A07 48

Gambar 4.8 Grafik dari Kode A08 49

Gambar 4.9 Grafik dari Kode A09 50

Gambar 4.10 Pengujian Konfigurasi A01 51

Gambar 4.11 Pengujian Konfigurasi A02 52

Gambar 4.12 Pengujian Konfigurasi A03 53

Gambar 4.13 Pengujian Konfigurasi A04 54

Gambar 4.14 Pengujian Konfigurasi A05 55

Gambar 4.15 Pengujian Konfigurasi A02 56

Gambar 4.16 Pengujian Konfigurasi A03 57

Gambar 4.17 Pengujian Konfigurasi A04 58

(13)

ABSTRAK

Deteksi intrusi jaringan komputer dapat di lakukan dengan memanfaatkan teknologi Jaringan Syaraf Tiruan (JST), yang berfungsi seperti otak manusia arsitektur multilayer feedforward dan algoritma pembelajaran Backpropagation. Arsitektur multilayer terdiri atas layer input, hidden layer dan output. Di mana setiap later dapat terdiri dari satu atau lebih neuron. Sinyal input berupa variabel nilai dari data intrusi yang telah dinormalisasi sehingga memghasilkan antara nilai 0 dan 1. Dari hasil pengujian dapat di simpulkan bahwa pemilihan parameter dan bobot yang dapat digunakan untuk deteksi intrusi ditentukan oleh hasil training, jika tingkat error yang diperoleh minimum maka parameter dan bobot hasil training akan di pakai untuk mendeteksi intrusion. Hasil training menunjukkan bahwa dari target error 1x10-6 hasil terbaik yang diperoleh adalah tingkat error sebesar (9.28x10-7) untuk satu hidden layer dengan 15 neuron. Tingkat error tersebut dicapai dalam waktu 1 detik dan jumlah iterasi sebanyak 12 epoch. Simulasi menggunakan satu hidden dengan 15 neuron tidak membuat performance menjadi lebih baik. Sedang untuk 50 neuron, tingkat error

(14)

ANALYSIS AND DESIGN OF COMPUTER NETWORKS INTRUSION-DETECTION USING MULTILAYER FEEDFORWARD ARTIFICIAL NEURAL

NETWORK

WITH BACKPROPAGATION TRAINING

ABSTRACT

Intrusion detection in computer networks may be achived by utilizing Artificial Neural Networks (ANN), which serves as a model the human brain with multilayer feedforward architecture and backpropagation training algorithm. This architecture consists of an input layer, one or more hidden layer, and output layer where each layer may consists of one or more neurons. Input signals are obtained from intrusion data which where normalized to yield values between 0 and 1. From the test results we may concluded that the parameters and weights for intrusion detection are determined by the training results, if the error level achieved is minimum then the parameters and weights from the training will be used for intrusion. Training results indicated that for a target error of 1x109-7, the minimum error level which can be achieved was (9.28x10 -7

(15)

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Dalam sebuah jaringan komputer, keamanan dalam pengiriman serta penerimaan data sangat

penting untuk menjamin bahwa data yang dikirim tidak jatuh ke pihak ketiga, terutama jika data

tersebut bersifat rahasia. Untuk itu perlu dilakukan implementasi metode-metode pengamanan

data pada jaringan. Banyak metode yang dapat di implementasikan, seperti penggunaan tanda

tangan digital, pendeteksi gangguan, serta enkripsi ataupun pemasangan firewall (Tanenbaum,

2003).

Pada umumnya sistem pertahanan aktivitas gangguan komputer yang ada saat ini

dilakukan secara manual oleh administrator. Hal ini mengakibatkan integritas sistem bergantung

pada ketersediaan dan kecepatan administrator dalam merespon gangguan yang terjadi. Apabila

penyusup berhasil menyerang sistem jaringan komputer maka sistem tersebut akan mengalami

malfungsi, sehingga administrator tidak dapat mengakses sistem secara remote dan tidak dapat

mengendalikan sistem sebagaimana biasanya. Untuk mengatasi masalah tersebut dibutuhkan

suatu tool yang mampu mendeteksi lebih awal terjadinya penyusupan atau kegiatan yang

merugikan suatu jaringan. Intrusion Detection System merupakan salah satu sistem yang dapat

mengatasi serangan yang masuk pada jaringan komputer.

Algoritma jaringan syaraf tiruan dapat digunakan sebagai salah satu pendeteksi karena

terdiri dari unit-unit yang saling berhubungan yang dapat dikelompokkan menjadi layer-layer.

(16)

menerima n buah masukan dan mengeluarkan sebuah nilai (Output). Nilai tersebut merupakan

hasil perhitungan yang disesuaikan dengan jenis unit. Sistem pembelajaran pada jaringan syaraf

tiruan (sering disebut pembobotan jaringan Syaraf tiruan) dilakukan dengan cara mencari bobot

yang sesuai untuk masing-masing jalur antara unit pada layer tertentu dengan unit pada layer

lainnya, sehingga dengan bobot tersebut jaringan syaraf tiruan dapat mewakili fungsi target yang

ingin dicapai (Mitchell, Tom M. 1997).

1.2Rumusan Masalah

Yang menjadi rumusan permasalahan ini adalah bagimana cara kerja jaringan syaraf tiruan untuk

mengenali jenis serangan berdasarkan gejala-gejala yang diberikan oleh penyerang berupa

intrusion (virus).

1.3 Batasan Masalah

Adapun yang menjadi batasan masalahnya adalah:

1. Arsitektur yang digunkan adalah multilayer feedforward dengan pelatihan Backpropagation

2. Output yang diperoleh ditampilakan menggunakan MATLAB.

3. Data Intrusion di ambil dari KDD Cup 99 dan disajikan dalam bentuk Ascii file.

4. Analisis dan perancangan menggunakan Multilayer feedforward dengan pelatihan

backpropogation.

1.4 Tujuan Penelitian

Tujuan penelitian ini adalah membuat suatu perangkat lunak yang dapat mengaplikasikan

jaringan syaraf tiruan dalam mengenali jenis serangan (intrusion) berupa virus. Hal ini

(17)

maupun organisasi. Kiranya dengan adanya aplikasi ini pengguna dapat mengenali setiap

ancaman keamanan yang sering menyerang jaringan terutama virus.

1.5 Manfaat Penelitian

Dengan perangkat lunak ini diharapkan dapat mendeteksi serangan maupun aktivitas jaringan

yang mencurigakan, yang mampu berinteraksi dengan administrator (pengguna), sehingga dapat

mengenali jenis serangan yang terjadi pada jaringan komputer yang berbentuk penyusupan

(intrusion). Dengan dilakukannya penelitian ini penulis maupun pembaca dapat mengenali jenis

serangan (intrusion) yang ditimbulkan serta dapat mempelajari cara kerja dari jaringan syaraf

tiruan tersebut dengan menggunkan beberapa pelatihan.

1.6 Metode Penelitian

Tahapan yang dilakukan dalam penelitian ini adalah:

1. Studi literatur ini dilakukan dengan mempelajari buku-buku referensi atau sumber-sumber

yang berkaitan dengan skripsi ini, baik dari textbook maupun internet.

2. Menganalisis gangguan (Intrusi) jaringan komputer mengguanakan multilayer feedforward

dengan pelatihan Backpropagation.

3. Implementasi Program (Coding) menggunakan bahasa perograman MATLAB.

4. Penyusunan laporan serta mengambil kesimpulan berdasarkan dari hasil penelitian

.

1.7 Sistematika Penulisan

Sistematika penulisan dari skripsi ini terdiri dari beberapa bagian utama sebagai berikut:

BAB 1: PENDAHULUAN

Bab ini akan menjelaskan mengenai latar belakang pemilihan judul skripsi “Analisis dan

(18)

feedforward dengan pelatihan Backpropagation”, rumusan masalah, batasan masalah, tujuan

penelitian, manfaat penelitian, metode penelitian, dan sistematika penulisan.

BAB 2: LANDASAN TEORI

Bab ini akan membahas mengenai teori-teori yang berkaitan dengan gangguan jaringan

komputer berupa serangan Intrusion, metode pembelajaran Backpropagation serta menganalisis

arsitektur multilayer feedforward.

BAB 3: ANALISIS DAN PERANCANGAN

Bab ini akan membahas mengenai metode yang digunakan beserta cara kerjanya. Selain itu juga

terdapat perancangan antar muka (Interface) dari aplikasi pendeteksi gangguan jaringan

komputer menggunakan multilayer feedforward dengan pelatihan feedforward.

BAB 4: IMPLEMENTASI DAN PENGGUANAAN

Bab ini membahas tentang spesifikasi kebutuhan perangkat keras (hardware) dan kebutuhan

perangkat lunak (software) dari sitem, serta cara kerja dan tampilan dari perangkat lunak aplikasi

pendeteksi gangguan jaringan komputer.

BAB 5: KESIMPULAN DAN SARAN

Bab ini akan memuat kesimpulan isi dari analisis hasil kerja sebelumnya dan saran-saran dari

(19)

BAB 2

LANDASAN TEORI

2.1 Analisis Jaringan

Jaringan komputer adalah sekumpulan komputer, printer dan peralatan lainnya yang terhubung

dalam satu kesatuan. Informasi dan data yang bergerak melalui kabel-kabel atau tanpa kabel

sehingga memungkinkan pengguna jaringan komputer dapat saling bertukar dokumen dan data,

sampai mencetak data dengan bantuan printer yang sama dan bersama-sama menggunakan

hardware/software yang terhubung dengan jaringan. Setiap komputer, printer atau periferal yang

terhubung dengan jaringan disebut node. Sebuah jaringan komputer dapat memiliki dua,

puluhan, ribuan atau bahkan jutaan node. Network analyzer atau packet sniffer di desain untuk

mengontrol jalur lintasan pada jaringan. Fungsi lain dapat juga digunakan untuk memonitor

jaringan, melakukan tes diagnosa, ataupun pemecahan masalah.

Jumlah lalu lintas sangat tergantung pada posisi komputer dalam jaringan. Klien dari

sistem terdalam pada sebuah cabang dalam suatu jaringan hanya dapat melihat sebagian kecil

segmen lalu lintas jaringan, sedangkan yang domain server utama dapat melihat hampir semua

hal.

2.2 TCP/IP

(20)

Transmission Control Protocol/Internet Protocol (TCP/IP) adalah pasangan protokol yang

diwajibkan untuk berkomunikasi antar host yang terhubung pada internet. Model TCP/IP

tersusun oleh empat layer yang mengacu pada model Open System Interconnection (OSI), yaitu

Network Interface and Hardware Layer, Internetwork Layer, Transport Layer, dan Application

Layer. Seperti pada gambar 2.1 yang menunjukkan proses yang terlibat pada komunikasi

host-to-host.

Gambar 2.1 Model Internet TCP/IP

2.2.2 Paket

Gambar 2.2 menunjukkan contoh rincian paket HTTP. Kolom header dapat mempunyai panjang

yang berbeda dari yang digambarkan, berdasarkan pilihan protokol dan header. Bagian yang

pertama enkapsulasi header pada link layer, jika Ethernet maka akan dipresentasikan oleh 14

byte dari frame Ethernet header dengan kolom sumber dan tujuan alamat MAC. Selanjutnya,

terdapat header datagram IP, yang memuat minimal 20 bytes jika tidak ada pilihan IP yang

mengikutinya, seperti header protocol yang terenkapsulasi (TCP, UDP, ICMP, dan lain

sebagainya) yang ukurannya bekisar dari 8 byte hingga lebih dari 20 byte untuk header TCP

dengan pilihan. Tidak semua data dapat di kumpulkan besarnya sesuai dengan snaplen yang

(21)

Ethernet frame

)P datagram

Embedded protocol TCP, UDP, )CPM

– bytes – bytes – bytes – bytes bytes

Gambar 2.2 Contoh paket HTTP

2.2.3 Koneksi TCP/IP

Sebuah koneksi TCP selalu dimulai dengan three-way handshake. Setiap sesi diawali dengan

paket SYN akhirnya menjadi sebuah paket ACK yang menyatakan seluruh sesi telah dibangun.

Sambungan saat ini telah dibuat dan mampu untuk mulai mengirim data dalam keadaan OPEN.

Komunikasi yang berlangsung antara sumber dan tujuan yang telah diijinkan sampai salah

satunya memberikan paket FIN, atau paket RST, atau sambungan yang telah time out. Semua

protokol internet yang perlu pembentukan sambungan di bangun diatas protokol TCP.

(22)

2.2.4 Pendeteksi Intrusi Jaringan (Intrusion Detection System/IDS)

Intrusion didefinisikan sebagai kegiatan yang bersifat anomaly, incorrect, inappropriate yang

terjadi pada jaringanatau di host. Sedangkan perangkat yang digunakan untuk mendeteksi segala

bentuk penyusupan adalah Intrusion Detection System (IDS) yang memeriksa secara automatic

audit logs dan event system secara real time. Intrusion Detection System dapat mengamati segala

macam pelanggaran dari kerahasiaan (confidentiality), integritas (integrity), dan ketersediaan

(availability) suatu sistem.

Kerahasiaan (confidentiality), di mana object tidak dibocorkan kepada subjek yang tidak

seharusnya berhak terhadap objek tersebut, atau sering disebut tidak authorize.

1. Integritas (Integrity), bahwa objek tetap orisinil atau tetap terjaga keasliannya, dengan

tidak dimodifikasi dalam perjalanannya dari sumber menuju penerimanya.

2. Ketersediaan (Availability), dimana user yang mempunyai hak akses atau authorized

users diberi akses tepat waktu dan tidak mengalami kendala apapun.

Serangan yang dikenali oleh Intrusion Detection System dapat berasal dari koneksi external

seperti ancaman dari internet atau jaringan partner, virus, code berbahaya, subject internal yang

mencoba untuk melakukan kegiatan yang tidak di authorisasi. Pada penulisan skripsi ini

Intrusion Detection System digunakan untuk mendeteksi segala macam kegiatan yang tidak di

authorisasi ataupun kegiatan yang berbahaya lainnya, untuk mempersingkat waktu pengerjaan

data yang digunakan merupakan data yang telah dikelompokkan yang berasal dari kdd cup.

Intrusion Detection System memeriksa semua kegiatan traffic jaringan, inbound dan outbound

dan mengidentifikasi pola yang mencurigakan yang mencoba memasuki sistem atau yang

menyerang sistem. Intrusion Detection System bisa membantu anda dalam hal berikut ini:

1. Secara aktif mengamati segala macam kegiatan yang mencurigakan

2. Memeriksa audit logs dengan sangat cermat dan seksama

3. Mengirim alert kepada administrator saat kejadian khusus di deteksi

4. Mengunci file-file penting atau mengunci kemampuannya agar tidak dapat dikuasai oleh

(23)

5. Melacak segala bentuk penyusupan yang bersifat cepat maupun lambat

6. Memberi tanda (informasi) pada saat serangan ditemukan

7. Mengindentifikasi asal mulanya terjadi penyusup

8. Melacak lokasi dari logical maupun physical penyusup

9. Terminasi atau interupsi segala macam percobaan penyusupan dan serangan

10.Melakukan konfigurasi ulang router dan firewall untuk mencegah pengulangan dari

serangan yang berhasil diketemukan / dideteksi.

Kemampuan Intrusion Detection System untuk menghentikan serangan yang sedang

berlangsung atau pencegahan serangan dimasa mendatang. Karenanya suatu Intrusion Detection

System seharusnya dianggap bagian dari komponen yang membentuk suatu sistem keamanan

yang sangat solid untuk melindungi suatu jaringan. Keamanan secara fisik dan logical access

control merupakan komponen yang penting. Pencegahan terhadap penyusupan memerlukan

pemeliharaan yang mencukupi dari suatu system keamanan secara keseluruhan.

2.3Model Neuron

2.3.1 Neuron Biologis

Menurut Fausett, sebuah neuron pada neural network dianalogikan sebagai neuron biologis di

mana sebuah neuron biologis memiliki 3 tipe komponen yang menjadi bagian dalam memahami

artificial neuron yaitu: dendrit, soma dan axon. Dendrit biasanya mendapatkan sinyal-sinyal dari

neuron lain, sinyal itu berupa impuls elektrik yang ditransmisikan melalui sebuah synaptic gap

dengan bantuan proses kimia. Proses kimia inilah yang memodifikasi sinyal masuk sehingga

proses kimia erat kaitanya dengan fungsi aktivasi pada neural network. Komponen kedua, soma

atau cell body, adalah jumlah dari sinyal masuk. Di mana soma ini diperoleh dari proses aktivasi

dendrit yang ada melalui jalur yang dikenal dengan axon. Jalur ini pada neural network

disimbolkan dengan weight, di mana weight inilah yang membedakan nilai koneksi dari setiap

(24)

Gambar 2.4 Permodelan Neuron Biologis

Menurut (Fausett), beberapa fitur utama pada element pemrosesan pada artificial neural network

di dasari properti yang dimiliki oleh neuron biologis diantaranya :

1. Element pemrosesan menerima banyak sinyal.

2. Sinyal dapat dimodifikasi berdasarkan weight yang dimiliki pada synapse penerima

3. Elemen pemrosesan menjumlahkan semua input yang telah diberi bobot

4. Dalam keadaan tepat (input suficient), neuron mentransmisikan sebuah output tunggal.

5. Output dari neuron tertentu dapat menuju banyak neuron-neuron yang lain.

Fitur-fitur lain seperti :

1. Informasi pemrosesan bersifat lokal (walaupun ada komponen lain seperti pengaruh

(25)

2. Memori yang ada bersifat terdistribusi :

Memory long-term berada pada synapses neuron atau weight

Memory short-term berkorespondensi dengan sinyal yang dikirimkan dari neuron-neuron lain

3. Kekuatan synapse dapat berubah seiring pengalaman

4. Neuron transmitter untuk synapses dapat berupa excitatory atau inhibitory.

2.4 Arsitektur dari Neural Network

Menurut (Fausset), seringkali neuron di visualiasikan ke dalam bentuk layer, di mana

neuron-neuron yang berada pada layer yang sama memiliki perilaku yang sama. Faktor penentu perilaku

dari neuron ini adalah fungsi aktivasi dan pola dari weight koneksinya sehingga neuron tersebut

dapat mengirim dan menerima sinyal. Dalam setiap layer, neuron biasanya memiliki fungsi

aktivasi yang sama dan pola dari koneksi yang sama terhadap neuron-neuron lain. Untuk lebih

spesifik, banyak neural network maupun neuron-neuron di dalam sebuah layer dapat saling

terhubung secara penuh maupun tidak. Jika ada neuron pada sebuah layer (sebagai contoh, layer

pada unit tersembunyi) terhubung dengan neuron layer lain (misal: layer output) maka setiap

unit tersembunyi dapat terkoneksi di setiap neuron output.

Pengaturan neuron ke dalam layers dan pola koneksi di dalam dan antara layers dikenal

dengan “net archictecture”. Banyak neuron nets memiliki layersinput yang aktivasi dari setiap

unitnya sama dengan sinyal input external. Neural network seringkali di kategorikan dalam 2

jenis yaitu : single layer dan multilayer. Dalam menentukan jumlah layer setiap unit input tidak

dapat di hitung sebagai layer, karena unit tersebut tidak dapat melakukan fungsi komputasi. Atau

bisa dikatakan bahwa jumlah layer pada neural network di tentukan berdasarkan layer yang

berisikan weight antar koneksi dari kumpulan neuron-neuron. Hal inilah yang mendasari bahwa

(26)

Gambar 2.5 Neural network model structure

2.4.1 Jaringan Syaraf Lapis Tunggal

Arsitektur lapis tunggal (single layer) memiliki 1 lapis koneksi bobot. Di mana setiap unit

dibedakan antara unit input dan unit ouput. Unit input adalah unit yang menerima sinyal yang

berasal dari lingkungan luar, sedangkan unit output adalah respon dari neural network yang

dapat dibaca. Pada umumnya, unit input secara penuh terkoneksi dengan unit output tetapi tidak

terkoneksi dengan unit input lain, begitu juga halnya unit output tidak terkoneksi dengan unit

output yang lain.

(27)

2.4.2 Jaringan Syaraf Lapis Ganda

Pada jaringan syaraf lapis ganda, input tidak langsung terkoneksi dengan output.

Gambar 2.7 Neural network Multilayer

2.5Fungsi Aktivasi pada Neural network

Fungsi aktivasi adalah operasi dasar pada artificial neuron yang meliputi penjumlahan bobot

(weight) sinyal input dan mangaplikasikannya pada output. Untuk unit input, fungsi ini adalah

fungsi identitas. Pada umumnya fungsi aktivasi yang sama di gunakan untuk semua neuron pada

layer tertentu dari neural network, walaupun hal ini tidak diperlukan. Pada kebanyakan kasus,

fungsi aktivasi non linear yang sering digunakan, karena hal ini terjadi sejak hasil dari

memasukkan sinyal melalui dua atau lebih layer dari element pemrosesan linear contohnya

element dengan fungsi aktivasi linear yang tidak jauh berbeda dengan apa yang didapatkan

dengan menggunakan (single layer). Fungsi-fungsi aktivasi yang umum di gunakan menurut

(28)

2.5.1 Fungsi Identitas

Fungsi identitas disebut juga sebagai fungsi linear. Fungsi linear memiliki nilai output yang

sama dengan nilai inputnya. y = x

Gambar 2.8 Fungsi Identitas (Linear)

( )

f x =x

untuk semua harga x

Fungsi ini biasanya digunakan pada unit input untuk memberi nilai awal harga setiap unitnya.

2.5.2 Fungsi Tangga Binary

Fungsi tangga binary atau Fungsi Hard Limit

Gambar 2.9 Fungsi HardLlimit.

Neural network single layer sering menggunakan fungsi tangga untuk mengkonversi unit input,

(29)

atau 0) atau bipolar (1 atau -1). Fungsi tangga binary ini juga dikenal sebagai fungsi threshold

2.5.3 Fungsi Symetric Hard Limit

Berfungsi mengkonversikan input dari suatu variabel yang bernilai kontinyu ke suatu output

berupa nilai 1,0 atau -1.

1 0

Gambar 2.10 Fungsi Symetric Hard Limit. 16

2.5.4 Fungsi Sigmoid Binary

Fungsi sigmoid (kurva dengan bentuk S) adalah fungsi aktivasi yang berguna. Fungsi sigmoid

yang umum adalah fungsi logistik dan fungsi tangent hyperbolic. Kedua fungsi ini bermanfaat

khususnya untuk penggunaan neural network karena hubungan yang sederhana antara nilai

fungsi pada sebuah point dan nilai dari derivatif pada point itu mengurangi hambatan komputasi

(30)

Gambar 2.11 Fungsi Sigmoid Binary.

Untuk fungsi logistik yang memiliki range 0 sampai 1, sering di gunakan untuk

menghasilkan output yang diinginkan bernilai binary atau berada pada interval 0 dan 1. Fungsi

dengan range ini juga dikenal dengan binary sigmoid.

( )

1

( )

2.5.5 Fungsi Sigmoid Bipolar

Fungsi sigmoid bipolar adalah fungsi logistik yang memiliki range output dari -1 sampai 1.

Gambar 2.12 Fungsi Sigmoid Bipolar.

(31)

( )

( )

( )

' 1 1

2

g x =σ ⎡ +g x ⎤ ⎡⎦ ⎣g x (0.6)

Fungsi bipolar sigmoid erat kaitannya dengan fungsi tangent hyperbolic, yang sering juga

di gunakan sebagai fungsi aktivasi ketika range output yang di inginkan bernilai -1 sampai

dengan 1.

2.5.6 Fungsi Saturating Linear

Fungsi dirumuskan sebagai berikut:

1 0.5

Gambar 2.13 Fungsi saturating linear.

2.5.7 Fungsi Symetric Saturating Linear

Fungsi dirumuskan sebagai berikut:

(32)

Gambar 2.14 Symetric Saturating Linear.19

2.5.8 Fungsi Invers Sigmoid Bipolar

Fungsi merupakan invers Sigmoid Bipolar umum dipakai untuk recurrent network misal model

jaringan Hopfield (Haykin,1999).

Gambar 2.15 Fungsi Invers Sigmoid Bipolar.22

2.5.9 Fungsi Tangent Hyperbolic

(33)

( )

( )

( )

' 1 1

h x = +⎡ h x ⎤ ⎡⎦ ⎣h x (0.10)

2.6 Training Pada Artificial Neural network

Pelatihan adalah metode untuk mengatur nilai dari bobot, di mana pelatihan ini adalah

karakteristik yang membedakan neural network yang berbeda. Menurut [Fausett], ada 2 tipe dari

pelatihan, yaitu: supervised dan unsupervised. Sebagai tambahan ada neural network yang

bobotnya bernilai tetap tanpa proses pelatihan yang berulang.

2.6.1 Supervised Training

Kebanyakan aturan jaringan syaraf tiruan (artificial neural network), pelatihan di lakukan

dengan menunjukkan sekuens vektor pelatihan atau pola, di mana setiap pola yang ada di

asosiasikan dengan vektor output target. Bobot kemudian diatur berdasarkan algoritma learning.

Proses inilah yang di kenal sebagai pelatihan terpandu (supervised training). Termasuk pada

pelatihan terpandu ini adalah:

Perceptron

Adaline

Feedforward Backpropagation network

Statistical trained networks (Boltzmann/Cauchy machines)

Radial basis function networks

2.6.2 Unsupervised Training

Pelatihan jenis ini dilakukan dengan menyediakan sekuens vektor input, akan tetapi tidak ada

target vektor tertentu yang di spesifikasikan. Neural network tersebut akan memodifikasi bobot

sehingga kebanyakan input vektor yang sejenis memiliki unit output yang sama (cluster) atau

(34)

Hopfield Memory

Bidirectional associative memory

Fuzzy associative memory

Learning vector quantizer

2.7 Perceptron

Pada bab ini akan membahas jaringan syaraf lapis tunggal, termasuk di dalamnya pendekatan

klasik pada Neural Computing dan masalah pembelajaran. Pada bagian pertama kita akan

diskusikan keunggulan dan keuntungan dari jaringan lapis tunggal dan algoritma

pembelajarannya. Pada bagian kedua kita akan diskusikan kelemahan dan keterbatasan dari

jaringan syaraf lapis tunggal ini. Kemudian akan dibahas perceptron lapis tunggal dan

perceptron lapis ganda. Pada bagian akhir dari bab ini akan dibahas contoh perceptron dengan

perhitungan manual, ANN toolbox dan program sendiri dengan bantuan Matlab.

Dua pendekatan model klasik dari jaringan syarat lapis tunggal ini adalah: Perceptron,

yang diusulkan oleh Rosenblatt (Rosenblatt, 1959) dan di akhir tahun 50'an dan Adaline,

diperkenalkan pada awal tahun 60-an oleh Widrow and Ho_ (Widrow & Ho_, 1960).

2.7.1 Jaringan dengan threshold dan fungsi aktivasi

Jaringan lapis tunggal alur-maju(kamus bahasa Indonesia), (single layer feed-forward network)

umumnya terdiri dari satu atau banyak output neurons o, yang masing-masingnya dihubungkan

dengan bobot faktor wio ke semua inputs i. contoh yang paling sederhana adalah jaringan yang

hanya memiliki dua input dan keluaran tunggal seperti terlihat pada gambar 2.13, Input neuron

adalah jumlah input yang tertimbang (atau bisa dikatakan bobot x input) ditambah dengan faktor

(35)

Gambar 2.16 Jaringan Syaraf Lapis tunggal dengan satu output dan dua input

Jaringan dibentuk oleh output neuron fungsi aktivasi di mana fungsi dari input

2

Fungsi aktivasi F bisa linear sedemikian sehingga kita memiliki suatu jaringan linear,

atau jaringan yang tidak linear. Pada kasus ini digunakan fungsi thereshold (atau Heaviside atau

sgn) :

Dengan demikian output jaringan di batasi bernilai +1 atau -1, tergantung pada input.

Jaringan ini bisa digunakan dan diaplikasikan untuk tugas pengelompokan (classifier) atau

pengelompokan pola(Fauset) (pattern classification). Jaringan ini bisa memutuskan apakah pola

input masuk pada kelompok mana dari dua kelas tadi (kelas +1 atau kelas -1. Jika total input

bernilai positif, maka pola dikenali sebagai kelas +1, dan jika total input bernilai negatif maka

pola input dikenali sebagai kelas -1. pemisahan dua kelas pada kasus ini adalah berupa sebuah

garis lurus., yang diberikan oleh sebuah persamaan garis:

1 1 2 2 0

w x +w x + =θ

(0.13)

(36)

Secara geometris fungsi diskriminan ini mempresentasikan jaringan linear threashold seperti

terlihat pada gambar . Persamaan 0.13 bisa ditulis sebagai berikut:

1

2 1

2 2

w

x x

w w

θ

= − −

Dari persamaan diatas kita bisa melihat bahwa bobot yang akan menentukan gradient atau

kemiringan garis, sementara bias menentukan keluaran 'o_set' untuk melihat seberapa jauh garis

determinan ini dari titik pusat 0. Jika vektor bobotnya juga ikut ditampilkan pada inputspace ini

akan selalu tegak lurus pada garis diterminan itu.

(37)

Gambar 2.18 Jaringan topologi umum feedforward dengan multilayers

2.7.2 Algoritma Feedforward

Untuk membangun jaringan feedforward multilayers dengan pembelajaran algoritma

pembelajaran apapun nantinya maka lakukan algoritma(fauset) di bawah ini:

Langkah 0 : Inisialisasi bobot dan bias

(untuk mudahnya, pengaturan nilai bobot dapat menggunakan nilai nol atau bisa juga dengan

menggunakan bilangan random). Set Laju Pembelajaran (0< ≤α 1), untuk mudahnya, α bisa

diset ke 1.

Langkah 1 : Selama kondisi berhenti false, lakukan langkah 2 hingga langkah 6

Langkah 2 : Untuk setiap pasangan data pelatihan, lakukan langkah 3 sampai langkah ke 5

Alur Maju (Feedforward):

Langkah 3 : Setiap unit input

(

X ii, =1,...,n

)

menerima sinyal input xidan membroadcast

(38)

Langkah 4 : Setiap unit tersembunyi

(

Zj, j=1,...,p

)

menjumlahkan sinyal – sinyal input

kirimkan sinyal ini ke semua unit di lapisan atasnya (unit –unit output).

Langkah 5 : Setiap unit output / keluaran pada masing-masing neuron

(

Y kk, =1,...,m

)

menjumlahkan sinyal – sinyal input terbobot,

0

Dan gunakan fungsi aktivasi untuk menghitung sinyal outputnya, keluaran setiap

neuronyk = f y in

(

_ k

)

2.7.3 Perceptron Lapis Ganda

Berikut ini akan dibahas perceptron dengan banyak lapis lebih dari satu. Pembelajaran yang

dipakai pada umumnya adalah optimalisasi bobot dengan menggunakan Evolutionary

Programming, dan sangat populer dipergunakan. Fase Pelatihan (pembelajaran). Fase Prediksi

(pengujian) merupakan subset dari fungsi pembelajaran di mana proses pengujian alur proses

pencarian (feedforward) tidak ada arah perambatan mundur untuk penyesuaian bobot. Pada

(39)

Gambar 2.19 Proses pengujian pada perceptron lapis ganda (Multi Layers)

2.8 Ilustrasi Proses Feedforward

Pada bagian ini akan dijelaskan model jarigan syaraf feedforward proses alur maju untuk lapis

ganda seperti pada gambar dibawah ini. Untuk mempermudah pemahaman, maka kita ambil

struktur yang sangat sederhana dari multi layers feedfordward, yaitu struktur terdiri dari dua

input (x1 dan x2) dengan dua lapis hidden layer dan satu buah output y.

Gambar 2.20 Model sederhan jaringan dengan dua input dan satu output, dengan total 6 neuron.

Setiap neuron terdiri dari dua unit. Unit pertama adalah proses penjumlahan dari

koefisien bobot dan input sinyal. Sedangkan unit kedua adalah proses meneruskan sinyal

ke fungsi nonlinear yang disebut sebagai fungsi aktivasi. Sinyal e adalah faktor

penjumlahan output sinyal dan, dan y = f(e) adalah output signal dari nonlinear element.

(40)

Gambar 2.21 Proses perjumlahan dan threshold pada satu buah neuron

Pada ilustrasi gambar diatas terlihat, dua unit proses yang terjadi pada sebuah neuron.

Jika dilihat untuk sistem lebih besar. Output dari satu neuron pada lapis sebelumnya adalah

menjadi input pada neuron lapis sesudahnya.

Untuk mengajari neural network kita butuh training data set. The training data set terdiri

dari input signals (x1 dan x2 ) yang memiliki target tertentu yang disebut (desired output) z.

proses pembelajaran adalah proses iteratif. Setiap iterasi koefisien bobot diubah dan dimodifikasi

dengan menggunakan data input yang baru dari data training set. Modifikasi dihitung dengan

menggunakan algoritma seperti dijelaskan dibawah ini. Setiap iterasi pembelajaran mulai dengan

menggunakan data input dari data pembelajaran. Dengan bobot awal yang dinitialisasi dengan

nilai 0 agar lebih mudah atau dengan nilai bilangan random, maka dengan demikian kita bisa

menghitung output keluar dari masing-masing neuron sampai keluaran output dari jaringan itu

sendiri dalam alur maju. Symbols w(xm)n mewakili bobot yang terkoneksi antara network input

(41)

2.8.1 Ilustrasi proses alur maju

Untuk y1output dari neuron node pertama, yang terkoneksi dengan dua input x1 dan x2 dapat di

hitung seperti dibawah ini. Symbol w(x1)n mewakili bobot koneksi antara input sinyal 1 dan input

neuron n pada lapisan berikutnya. Misalnya w(x1)1 artinya bobot pada koneksi dari input node 1

terhubung dengan koneksi dari neuron node 1. maka untuky1 dihitung dengan komponen bobot

w(x1)1 dari neuron node 1, w(x2)1 dari input sinyal ke 2

Gambar 2.22 Perhitungan keluaran neuron node.1

1 2

1 1( (x)1 1 (x)1 2) y = f w x +w x

1 2

2 2( (x) 2 1 (x)2 2) y = f w x +w x

1 2

3 3( (x)3 1 (x)3 2) y = f w x +w x

warna biru menunjukkan alir proses yang terkait dan untuk output neuron pada node 2 y2

(42)

Gambar 2.23 Perhitungan keluaran neuron node.2

Untuk y3 output node 3 dihitung seperti dibawah ini

Gambar 2.24 Perhitungan keluaran neuron node.3

Symbol wmn mewakili bobot koneksi antara output neuron m dan input neuron n pada

lapisan berikutnya. Misalnya w14 artinya bobot pada koneksi dari neuron node 1 terhubung

dengan koneksi dari neuron node 4. maka untuky4 dihitung dengan komponen bobot w14 dari

(43)

Gambar 2.25 Perhitungan keluaran neuron node.4

maka untuky5 dihitung dengan komponen bobotw15 dari neuron node 1, w25 dari neuron node 2

dan w35 dari neuron node 3 seperti dibawah ini:

Gambar 2.26 Perhitungan keluaran neuron node.5

dan terakhir perambatan sinyal melalui lapisan tersembunyi. Menghitung output keluaran

(44)

Gambar 2.27 Perhitungan keluaran neuron node.6

2.9 Algoritma Backpropagation dalam Jaringan Syaraf Tiruan

Jaringan Syaraf Tiruan Back-Propagation merupakan salah satu algoritma jaringan yang populer

pada jaringan syaraf tiruan. Model jaringan ini banyak digunakan untuk menyelesaikan suatu

masalah berkaitan dengan identifikasi, prediksi, pengenalan pola dan sebagainya. Dengan latihan

yang berulang-ulang, algoritma ini akan menghasilkan hasil yang lebih baik. Hal ini berarti

bahwa “bobot interkoneksi” jaringan syaraf tiruan semakin mendekati bobot yang seharusnya.

(Penelitian jaringan syaraf tiruan, 1993). Kelebihan lain yang di miliki jaringan syaraf tiruan ini

adalah kemampuannya untuk belajar (bersifat adaptif) dan kebal terhadap adanya kesalahan

(Fault Tolerance) dengan kelebihan tersebut jaringan syaraf tiruan dapat mewujudkan sistem

yang tahan akan kerusakan (robust) dan konsisten bekerja dengan baik.

Metode Backpropagation ini pertama kali di perkenalkan oleh Paul Werbospada

tahun 1974, kemudian di kemukakan kembali oleh David Parkerdi tahun 1982 dan di

populerkan oleh Rumelhartdan McCellandpada tahun

1986. Pada algoritma backpropagation ini merupakan arsitektur jaringan menggunakan jaringan

banyak lapis. Secara garis besar proses pelatihan pada jaringan saraf tiruan di kenal beberapa tipe

(45)

pelatihan Backpropagationdi kenal dengan Generalize Delta Rule (GDR) yang

merupakan supervised training untuk tiap pola input yang terdapat pasangan target output untuk

masing-masing pola input. Prinsip kerjanya adalah jika hasil yang diberikan tidak sesuai dengan

target yang diinginkan, maka bobot akan dikoreksi kembali agar error semakin berkurang. Pada

umumnya tujuan jaringan syaraf tiruan melakukan proses pelatihan adalah untuk mendapatkan

balancing antara kemampuan jaringan untuk menanggapi secara benar pola-pola input pada saat

pelatihan dan kemampuan untuk memberikan hasil yang layak ataupun hasil dengan error rate

yang terendah. Sehingga dalam tahap pelatihan akan di bentuk pembobot yang digunakan

sebagai faktor pengali keterkaitan input dengan hasil yang di harapkan.

Pada tahap pelatihan ini yang merupakan langkah bagaimana suatu jaringan syaraf itu

berlatih, yaitu dengan cara melakukan perubahan bobot, baik bobot sambungan antar input

layer dan hidden layer maupun antara hidden layer dan output layer, bila terdapat lebih dari

satu hidden layer maka juga terdapat pembobot antar hidden layer itu sendiri. Setelah pelatihan

yang cukup, barulah suatu model dengan pembobot tersebut digunakan untuk memecahkan atau

(46)

BAB 3

ANALISIS DAN PERANCAGAN

3.1 Analisis Forensik/ pendeteksi

Forensik digital dianggap sebagai aplikasi ilmu pengetahuan untuk mengidentifikasi,

mengoleksi, menganalisa dan menguji data-data digital serta memelihara integritas dari semua

informasi yang dikumpulkan, pemeliharaan suatu rantai penjagaan atau tindakan pemeliharaan

bukti lain. Forensik jaringan merupakan lebih dari sekedar mengumpulkan trafik jaringan.

3.1.1 Persiapan Input Data

Data pelatihan dan data pengujian untuk intrusi diambil dari data standar yaitu kdd cup 99, yang

digunakan untuk membangun detektor intrusi yang dapat membedakan antara serangan koneksi

buruk (adanya gangguan) dan baik (tidak ada gangguan atau koneksi dalam keadaan normal).

Sebelum pelatihan dilakukan, terlebih dahulu harus ditentukan nilai parameter yaitu parameter

nu. Menurut penelitian (Laskov, Pavel et.2004), dataset kdd cup paling baik diproses oleh

algoritma nonliniear. Untuk itu pendekatan ini mudah digunakan pada dataset yang jumlahnya

ribuan. Akan tetapi, dataset yang akan digunakan pada Tugas Akhir ini ukurannya sangat besar,

maka akan digunakan subset dari dataset yang diambil secara acak, kemudian dilakukan grid

search pada subset tersebut. Setelah ditemukan parameter terbaik, dilakukan grid search pada

rentang nilai yang lebih kecil untuk memperoleh parameter terbaik yang terdiri dari 41 fitur

seperti pada tabel dibawah ini:

(47)

3.1.2 Membaca input data

Pada tugas akhir ini data yang berasal dari kdd cup 99 disajikan dalam table excell, yang

digunakan untuk memudahkan membaca fungsi excel xlsread:

% --- PREPARE DATA

% --- read input data

---xls_file='data_intrusion_50';

data_xls = xlsread(xls_file,'intrusion_modif','a1:al1000');

(48)

Tabel 3.2 Data Input pada Excel

Jika data input diubah maka susuannya harus seperti table diatas, aturannnya:

1. kolom terakhir= target

2. kolom sisanya = input data

3. jumlah parameter = jumlah kolom -1

3.1.3 Normalisasis Data

Data yang telah dinormalisasi, akan dijadikan sebagai input yang diseragamkan dari range -1

sampai 1 dan akan disimpan dalam fungsi tersendiri:

%---% ---data

normalisasi---

%---nrow=244;

(49)

data = data_norm(1:nrow,:);

% ---input data normalisasi

---nrow_train=200;

%---END OF INPUT DATA

PREPARATION---Data dibagi dua, data pelatihan dan data untuk pengujian. Berikut ini fungsi normalisasi:

function data_norm= normalisasi(data)

for i=1:5

maxr(i)=max(data(:,i));

minr(i)=min(data(:,i));

delta(i) = maxr(i)-minr(i);

data_norm(:,i) = 2*(data(:,i)-minr(i))/delta(i)-1;

end

end

rumus perhitungan normalisasi sederhana, dengan batasan nilai antara -1 dan 1:

data = 2*(data-min)/(max – min)-1

Oleh karena itu aktivasi yang cocok dan sesuai untuk topologi jaringan ini adalah sigmoid

bipolar. Karena sigmoid bipolar melewatkan nilai antara -1 dan 1. Aktivasi ini seragam untuk

semua lapisan.

(50)

Topologi jaringan yang digunakan pada penulisan ini adalah jaringan tipe Feedforward atau alur

maju, karena jaringan lapis tunggal ini terdiri dari S logsig neurons yang memiliki R input

seperti di perlihatkan pada gambar kiri dan dengan diagram lapis pada gambar sebelah kanannya.

Gambar 3.3a Jaringan Tunggal dari Gambar 3.3b Diagram Lapis S logsing

S Logsing Neuron

Jaringan Feedforward bias memiliki satu atau lebih lapisan tersembunyi dari sigmoid

neurons yang diikuti oleh output layer dari linear neurons. Lapisan ganda dari neuron dengan

fungsi transfer tidak linear membolehkan jaringan untuk mempelajari hubungan nonlinear dan

linear antara input dan output vectors. Linear output layer mengijinkan jaringan untuk

menghasilkan nilai diluar antara -1 dan +1.

Di sisi lain, jika ingin membatasi output jaringan seperti misalnya hanya nilai antara 0

dan 1, termasuk nilai pecahan 0.1; 0.25 dan seterusnya, maka fungsi transfer akan menggunakan

sigmoid transfer function (seperti misalnya logsig). Pada skripsi ini output di set antara -1 dan

1.

Untuk multilayer network, jumlah lapisan (layer) menentukan jumlah matrik bobot. The

(51)

Gambar 3.4 Jaringan feedforward

3.2.1 Membangun Suatu Jaringan Alur Maju Feedforward (newff)

Langkah pertama pada pembelajaran suatu jaringan alur maju adalah membuat obyek jaringan.

Fungsi newff merupakan suatu objek jaringan alur maju. Fungsi Newff memerlukan tiga

arguments. Argument pertama adalah R-element input vectors, argument kedua adalah

S-element target vectors danargumen ke tiga adalah sebuah array yang berisi ukuran atau nilai di

tiap hidden layer.

Argument lain bisa di tambah sesuai dengan pilihan misalnya argument ke empat adalah

setting untuk nama dari transfer functions yang digunakan pada tiap lapisan. Argument ke lima

berisi nama pilihan training function yang dipakai. Jika hanya diisi tiga argument saja maka

default transfer function untuk hidden layer secara otomatis akan di set ke tansig dan default

untuk output layer sebagai purelin. Sedangkan default training function adalah dapat benilai

trainlm.

Tabel 3.5 Argumen untuk Tiap Lapisan

Default Nilai

Transfer function Hidden layer Tansig

(52)

Training function Trainlm

Pada penulisan ini layer fungsi transfer tansig merupakan fungsi transfer yang digunakan

untuk lapisan output. Pada langkah pertama hidden layer dibuat hanya satu, dengan 4 buah

Neuron. Fungsi transfer default pada lapisan tersembunyi adalah tan-sigmoid, dan digunakan

untuk lapisan output linier.

% jumlah hidden layers

hidden_layers =4;

% create struktur jaringan objek

net = newff(Ptrain',Ttrain',hidden_layers);

Di mana

net = newff(P,T,[S1 S2...S(N-l)],{TF1 TF2...TFNl}, BTF,BLF,PF,IPF,OPF,DDF)

Penggunaannya: newff(P, T, [S1 S2...S(N-l)], {TF1 TF2...TFNl}, BTF, BLF, PF, IPF, OPF,

DDF) merupakan argument yang diperlukan.

Tabel 3.6 Penjelasan Parameter Argumen yang Diperlukan pada Newff

No Parameter Keterangan

1 P R x Q1 matrix dari Q1 sample R-element input vectors

(53)

3 Si Jumlah dari layer ke i, untuk N-1 layers, default = [

].(Ukuran Output layer SN ditentukan dari target vector

T.);

4 TFi Transfer fungsi dari ith layer, defaultnya = 'tansig' untuk

hidden layers dan 'purelin' untuk output layer.);

5 BTF Jaringan Backpropagation fungsi pelatihan, default =

'traingdx'

6 BLF Bobot/bias fungsi pembelajaran Backpropagation,

default = 'learngdm'

7 PF Fungsi Performance, jika tidak diisi maka default = 'mse'.

IPF kolom cell array dari input fungsi processing. (Default =

{'fixunknowns','removeconstantrows','mapminmax'});

OPF: baris cell array dari keluaran fungsi processing.

(Default = {'removeconstantrows','mapminmax'});

DDF Data divison function (default = 'dividerand')

Fungsi newff ini menghasilkan output jaringan sebanyak n layer dengan menggunakan

pelatihan feed-forward backprop. Pada bab ini digunakan toolbox Neural network, untuk

mengetahui bagaimana kerumitan dalam membuat topologi pada neural network. Serta proses

pembelajaran untuk mendapatkan bobot dan bias yang optimal hanya dengan proses yang

(54)

Gambar 3.7 Arsitektur Multilayer Feedforward dalam mendeteksi adanya Intrusi pada jaringan

komuter

3.3Pelatihan dan Pembelajaran

3.3.1 Simulasi Pembelajaran

Untuk menjalankan simulasi pelatihan maka gunakan perintah train seperti pada perintah

dibawah ini:

% pelatihan struktur jaringan

net = train(net,Ptrain',Ttrain');

(55)

Gambar 3.8 Tampilan Interface dari aplikasi pendeteksi Intrusion

jika diklik performance maka akan muncul gambar epoch dengan errors seperti tampak

pada gambar proses pelatihan dibawah ini. Gambar ini terdiri dari sumbu x sebagai epoch dan

sumbu y sebagai performance sedangkan default sebagai nilai dari mse (mean square errors).

Jika error kemudian steady atau stabil tidak lagi menurun tapi terus mendatar maka proses

(56)

Gambar 3.9 Tampilan performance

3.3.2 Verifikasi hasil data pelatihan

Data verifikasi menggunakan data target pada pelatihan kemudian disesuaikan dengan hasil

output pelatihan. Dengan langkah-langkah sebagai berikut:

Langkah pertama lakukan simulasi untuk menghasilkan output jaringan

>>simtrain = sim(net,Ptrain')

Dengan perintah diatas kita memiliki hasil output jaringan dengan nama simtrain. Lalu

tampilkan output ini dan sekaligus bandingkan dengan target pelatihan

>>j=1:1:200;

>>plot(j,simtrain,'bo',j,Ttrain','*')

>> xlabel('Input')

(57)

>> legend('Target','Output')

Tampak pada percobaan simulasi pelatihan pertama dengan parameter yang disebutkan

sebelmnya belum menunjukkan hasil yang memadai.

0 5 10 15 20 25 30 35 40 45

Gambar 4.0 Tampilan Output dari hasil Simulasi

Sumbu x adalah nilai input time series dalam hal ini disederhanakan dengan nomor data

1-700 sedangkan, sumbu y adalah target (o) dan output (*) dari pelatihan. Secara umum hasil

(58)

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1 Implementasi dan Pengujian

Pada bagian simulasi ini akan di lakukan serangkaian pelatihan dan pengujian data berupa

gangguan jaringan dengan yang diperoleh dari KDD Cup 99 baik menggunakan data dengan

fitur yaitu 28 dari maksimal 41 fitur atau dengan pengurangan fitur yang dianggap mewakili

pola gangguan jaringan.

4.2 Pelatihan

Pada pelatihan ini akan di gunakan serangkaian data dan parameter untuk mendapatkan bobot

yang optimal sehingga mendapatkan error yang paling kecil sesuai dengan diharapkan pada

pelatihan ini.

4.2.1 Data Parameter:

(59)

Jumlah

4.2.2 Gambar dan Hasil

(60)
(61)
(62)
(63)
(64)
(65)
(66)
(67)
(68)
(69)

4.3Pengujian 

Pada pengujian ini akan digunakan bobot dan bias yang terbaik didapat dari hasi pelatihan pada

bagian pelatihan sebelumnya

4.3.1 Data Parameter

Parameter Neural Network: net.trainParam.epochs = 300; net.trainParam.goal = 1e-6; net.trainParam.lr = 0.05; net.trainParam.show = 100;

4.3.2 Gambar dan Hasil

0 5 10 15 20 25 30 35 40 45

(70)

0 5 10 15 20 25 30 35 40 45

Gambar 4.11 Pengujian Konfigurasi A02 dengan neuron 15

0 5 10 15 20 25 30 35 40 45

(71)

0 5 10 15 20 25 30 35 40 45

Gambar 4.13 Pengujian Konfigurasi A04 dengan neuron 25

(72)

Gambar 4.14 Pengujian Konfigurasi A05 dengan neuron 30

(73)

0 5 10 15 20 25 30 35 40 45

Gambar 4.16 Pengujian Konfigurasi A07 dengan neuron 40

(74)

Gambar 4.17 Pengujian Konfigurasi A08 neuron

(75)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dari hasil latihan terlihat best result mencapai error 9.28.10-7 dari error minimum sebesar (1.10

-6

) dicapai oleh satu hidden layer dengan jumlah neuron 15 buah. Error tersebut membutuhkan

waktu sebesar 1 detik dengan jumlah iterasi epoch sebanyak 12 kali. Dari hasil simulasi

pelatihan dapat di lihat setelah neuron 15 untuk hidden layer satu, semakin banyak neuron tidak

membuat performance menjadi lebih baik.

Pada jumlah neuron 50, error hanya mencapai 0.164 dengan usaha epoch sebanyak 32

kali dan membutuhkan waktu sebanyak 39 detik. Pola serangan bisa dikenali dengan baik dengan

menggunakan deteksi Neural Network dengan pembelajaran Backpropagation. Konfigurasi atau

topology yang ideal tidak bisa ditentukan atau diprediksi, seperti halnya mengidentifikasi jumlah

layer dan jumlah neuron setiap layernya yang optimal untuk menghasilkan kesalahan yang

minimal tidak bisa diprediksi sebelumnya.

Dengan menguji dua data hidden layer dengan jumlah 15 buah, ternyata tidak lebih baik

dari pada menggunakan satu hidden layer. Pada saat menguji data dengan menggunakan dua

(76)

5.2 Saran

Setelah melihat hasil simulasi maka saran penulis untuk penelitian dan study selanjutnya sebagai

berikut:

1. Menambah jumlah fitur untuk jumlah maksimal sebanyak 41 fitur, agar memberikan pola

serangan yang lebih utuh

2. Untuk mempercepat proses pembelajaran perlu diadakan seleksi fitur yang relevan dari

maksimal 41 fitur data serangan jaringan

3. Untuk memperbaiki performance dari pembelajaran backpropagation, perlu dilakukan

alternatif pembelajaran dari Algoritma Genetika atau Evolutionary Programming di mana

(77)

DAFTAR PUSTAKA

Andayani, Farida., dan Febrian, Jack., 2002, Kamus Komputer dan Istilah Teknologi Informasi, Penerbit Informatika Bandung, Bandung.

Arhami, Muhammad. 2005. Konsep Dasar Sistem Pakar. Yogyakarta: Andi Yogyakarta.

Desiani, Anita & Arhami, Muhammad. 2006. Konsep Kecerdasan Buatan. Yogyakarta: Andi Yogyakarta.

Fausett, L, 1994, Fundamentals Of Neural Networks Architectures, Algorithms, and Applications, Prentice-Hall New Jersey.

Haykin, S,1994, Neural Network : A Comprehensive Foundation. Macmillan publishing Company, New York.

Imam Winardi. Kamus Neurologi Berbasis Multimedia. [September 2007]

Lin, Chih-Jen. 2005. Optimization, Support Vector Machines, and Mahine Learning.

http://www.csie.ntu.edu.tw/%7Ecjlin/papers/rome.pdf. Diakses tanggal 10 Januari 2007.

KDD Cup 1999. Tersedia di: http://kdd.ics.uci.edu/databases/kddcup 99/kddcup99.html, Ocotber 2007.

Kusumadewi, S. 2003. Artifial Intelligence (teknik dan aplikasinya). Graha Ilmu Yogyakarta, Jogjakarta.

Kusumadewi, S, 2004, Membangun Jaringan Saraf Tiruan (Menggunakan MATLAB & Excel Link), Graha Ilmu Jogjakarta, Jogjakarta.

Puji Hartono, “Sistem Pencegahan Penyusupan pada Jaringan berbasis Snort IDS dan IPTables Firewall”,http://budi.insan.co.id, 2005

Purbo, Onno W., Wiharjito, Tony., Keamanan Jaringan Internet, Elex Media Komputindo, 2000

Santoso, J, 2000, Jaringan Saraf Tiruan Teori, Arsitektur, dan Algoritma, Universitas Atma Jaya Jogyakarta, Jogjakarta.

Siang, JJ. 2005. Jaringan saraf tiruan dan pemrogramannya menggunakan MATLAB. Yogyakarta: Andi Yogyakarta.

Suparman, 1991, Mengenal Artificial Intelligence, Penerbit ANDI, Yogyakarta.

(78)

% training backpropagtion newff

% ---input data normalisasi --- nrow_train=800;

Ptest = data(nrow_train+1:nrow_train+nrow_test)-); Ttest = data(nrow_train+1:nrow_train+nrow_test);

%---END OF INPUT DATA PREPARATION---

% jumlah hidden layers

hidden_layers =[ ];

% create struktur jaringan objek

net = newff(Ptrain',Ttrain',hidden_layers);

(79)

output= denormalisasi(simulation, xmin, xmax)

% simulasikan hasil pelatihan sim_train = sim(net,Ptrain');

% plot perbandingan target hasil pelatihan j=1:1:size(sim_train,2);

figure

plot(j,sim_train,'bo',j,Ttrain','*') xlabel('Input')

Gambar

Gambar 2.11 Fungsi Sigmoid Binary.
Gambar 2.15 Fungsi  Invers Sigmoid Bipolar.
Gambar 2.16 Jaringan Syaraf Lapis tunggal dengan satu output dan dua
Gambar 2.17 Jaringan lapis tunggal merepresentasikan suatu fungsi garis
+7

Referensi

Dokumen terkait

Dari pengujian sistem kecepatan putar motor yang diperoleh menunjukan bahwa sistem yang dibuat memiliki kemiripan dengan alat standar sebesar 99% sesuai hasil

Dari hasil pelatihan didapatkan srsitektur jaringan syaraf tiruan untuk sistem identifikasi adalah 5 input dan 4 output dengan jumlah neuron hidden layer untuk identifikasi kematangan

Penelitian berfungsi untuk menghindari perluasan masalah pada sebuah pembahasan sehingga diperoleh hasil pembahasan yang sesuai dengan tujuan yang diharapkan, maka

Kemudian dari pembagian data 90% data training diperoleh hasil MAPE terbaik pada node hidden layer sebanyak 100 dan learning rate 0.4 sebesar 6.65%, hal ini menunjukkan

Dengan menggunakan data training set yang memiliki seluruh jenis variasi posisi wajah, hasil terbaik penggunaan LBP dalam penelitian ini adalah melakukan pengenalan

Hasil variasi hidden neuron pada tahap training dan testing dengan menggunakan perbandingan jumlah data 60:40 dapat dilihat pada Tabel 1, sedangkan hasil variasi

Dari penelitian yang dilakukan skenario terbaik dalam perancangan sistem prediksi kedalaman laut ini ada pada struktur dengan hidden layer 3 dengan banyaknya neuron [ 20 15 25 ],

Dari hasil perhitungan dengan metode AHP maka diperoleh data seperti tampak pada Tabel 16, berdasarkan tabel 15 di atas maka disim- pulkan bahwa aplikasi terbaik yang memenuhi