Pengertian Machine Learning 1

December 12, 2018 | Author: Khaerul Bahri | Category: N/A
Share Embed Donate


Short Description

Pengertian Machine Learning 1...

Description

MAKALAH REKAYASA PERANGKAT LUNAK MACHINE LEARNING

KELOMPOK 3 : 1. FARID

(2013142857)

2. HELMY ADAM

(2014143235)

3. HENDRI YULIANTO

(2014140927)

4. IMAN FIRMANSAH

(2014141051)

5. IRFAN FIRMANSYAH

(2014142962)

6. KHAERUNNISA

(2014142341)

KELAS

: 07TPLE004

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS PAMULANG PAMULANG 2017

KATA PENGANTAR

Puji syukur kehadirat Allah SWT dengan segala kerahmatan nya kami masih diberikan kesehatan serta kesempatan dalam menyusun tugas makalah Machine Learning. Dalam hal ini kami sangat puas dengan hasil dan bahan yang sudah kami siapkan sebelumnya. Makalah ini membahas tentang materi Machine Learning Guna memenuhi tugas mata kuliah Rekayasa Perangkat Lunak. Kami ucapkan terima kasih Ibu Thoyyibah T M.kom, selaku dosen Mata kuliah Rekayasa Perangkat Lunak yang telah memberikan tema yang kami dapatkan. Kami menyadari bahwa makalah kami masih jauh dari sempurna, oleh karena itu kritik dan saran dari semua pihak yang bersifat membangun selalu kami harapkan demi kesempurnaan makalah ini. Akhir kata, kami sampaikan terima kasih atas semua rekan yang telah berperan serta dalam penyusunan makalah ini dari awal sampai akhir. Semoga Allah SWT selalu meridhoi segala usaha kita. Amin.

Tangerang, 5 Oktober 2017

Penulis

i

KATA PENGANTAR

Puji syukur kehadirat Allah SWT dengan segala kerahmatan nya kami masih diberikan kesehatan serta kesempatan dalam menyusun tugas makalah Machine Learning. Dalam hal ini kami sangat puas dengan hasil dan bahan yang sudah kami siapkan sebelumnya. Makalah ini membahas tentang materi Machine Learning Guna memenuhi tugas mata kuliah Rekayasa Perangkat Lunak. Kami ucapkan terima kasih Ibu Thoyyibah T M.kom, selaku dosen Mata kuliah Rekayasa Perangkat Lunak yang telah memberikan tema yang kami dapatkan. Kami menyadari bahwa makalah kami masih jauh dari sempurna, oleh karena itu kritik dan saran dari semua pihak yang bersifat membangun selalu kami harapkan demi kesempurnaan makalah ini. Akhir kata, kami sampaikan terima kasih atas semua rekan yang telah berperan serta dalam penyusunan makalah ini dari awal sampai akhir. Semoga Allah SWT selalu meridhoi segala usaha kita. Amin.

Tangerang, 5 Oktober 2017

Penulis

i

DAFTAR ISI

KATA PENGANTAR PENGANTAR .................................................. ........................................

i

DAFTAR ISI ............................................... ..................................................... .......................................................... .....

ii

BAB I PENDAHULUAN 1.1 Latar Belakang .................................................. ........................................

1

1.2 Rumusan Rumusan Masalah ...................................................... ..................................................................................... ...............................

2

1.3 Tujuan Penulisan Penulisan............................................... ........................................

3

1.4 Metode Penulisan ...................................................... ..................................................................................... ...............................

3

BAB II MACHINE LEARNING 2.1 Pengertian Pengertian Machine Learning .................................................... ................................................................. .............

4

2.2 Jenis-jenis Jenis-jenis Learning Technique Technique .................................................. .............

6

2.2.1 Rote Learning ...................................................... ..................................................................................... ...............................

6

2.2.2 Learning By Taking Advise ................................................. .............

7

2.2.3 Learning In Problem Solving ............................................... .............

7

2.2.4 Learning From Example ...................................................... ................................................................... .............

7

2.2.5 Explanation Explanation Based Learning................................................ .............

10

2.2.6 Empirical Empirical dan dan Analytica Analyticall Learning Learning ..................................................

11

2.2.7 Reinforcement Reinforcement Learning.............................................. ......................

13

2.2.8 Statistical Statistical Learning ...................................................... ............................................................................ ......................

13

2.3 Terminologi Terminologi Machine Learning .................................................. .............

14

2.4 Tugas Utama Machine Learning Learning ................................................ .............

15

ii

2.5 Metode di dalam Machine Learning ........................................................

15

2.6 Implementasi Machine Learning................................................. .............

18

2.6.1 Text Analysis ................................................ ........................................

18

2.6.2 Image Processing ................................................... ...............................

18

2.6.3 Finance .................................................. ................................................

19

2.6.4 Search and Recommendation Engine ...............................................

20

2.6.5 Speech Understanding ................................................... ......................

20

2.7 Langkah-langkah dalam mengembangkan aplikasi Machine Learning 21 2.8 Process Machine Learning .................................................. ......................

22

BAB III PENUTUP 3.1 Kesimpulan ................................................. ................................................

25

3.2 Saran .................................................. ..........................................................

25

DAFTAR PUSTAKA ................................................... ........................................

26

LAMPIRAN-LAMPIRAN

iii

BAB I PENDAHULUAN

1.1 Latar Belakang

Seorang manusia selama hidupnya tidak pernah henti- hentinya melakukan learning. Hal ini terjadi tanpa kita sadari dan alamiah. Namun untuk membuat sebuah mesin dapat berpikir tentu bukanlah hal yang mudah. Manusia belajar melalui  pengalaman yang dia alami sehari- hari. Dari pengalaman tersebut, manusia akan mendapatkan knowledge. Untuk mendapatkan knowledge dapat melalui berbagai cara. Cara yang paling sederhana adalah rote learning atau menyimpan informasi yang sudah dikalkulasi. Cara lainnya adalah dengan mendapatkan pengetahuan dari orang lain yang sudah ahli. Manusia juga dapat belajar melalui pengalaman pemecahan masalah yang ia lakukan. Setelah berhasil mengatasi sebuah masalah, manusia akan mengingat struktur dan cara mengatasi masalah tersebut. Apabila manusia mengalami sebuah masalah yang hampir serupa, maka manusia dapat mengatasi masalah tersebut secara lebih efisien. Ada banyak cara lain untuk mendapatkan knowledge dan kita akan membahasnya lebih lanjut di bab- bab selanjutnya. Dalam kehidupan sehari- hari, dapat kita lihat learning machine pada kehidupan sehari- hari sangatlah berguna. Beberapa contoh yang terlihat sangat nyata adalah speech recognition, fingerprint recognition atau handwriting recognition. Perkembangan machine learning sekarang ini sangat pesat. Banyak sekali riset dilakukan untuk menciptakan mesin yang lebih cerdas. Contoh yang paling mutakhir yang dapat kita lihat adalah Asimo, sebuah robot cerdas buatan Honda, yang dapat mengenali pemiliknya dan mengenal emosi.

1

Agar dapat membuat sebuah robot secerdas Asimo, maka beberapa teknik AI diaplikasikan kedalamnya, seperti speech recognition untuk dapat berinteraksi, image recognition untuk dapat mengenali wajah pemiliknya dan mengenali ruangan dan  banyak lagi Machine learning saat ini menjadi cabang ilmu pengetahuan yang populer dibicarakan di media. Didapuk sebagai salah satu cabang dari ilmu kecerdasan buatan (artificial inteligence), hampir semua orang pernah berinteraksi, memakai ataupun mendengar sistem komputer yang dibangun memakai teknik machine learning. Mulai dari melihat tag-otomatis foto di Facebook, menggunakan rekomendasi pencarian di Google, meng-klik rekomendasi produk sejenis di online shopping, menikmati servis email tanpa spam, sampai dengan mendengar berita AlphaGo yang mengalahkan  pemain profesional top di permainan Go.

1.2 Rumusan Masalah

Untuk mengkaji dan mengulas tentang Machine Learning, maka diperlukan sub-pokok bahasan yang saling berhubungan, sehingga penulis membuat rumusan masalah sebagai berikut : 1. Apakah Pengertian Machine Learning ? 2. Apa Jenis-jenis Learning Technique ? 3. Bagaimana Terminologi Machine Learning ? 4. Apakah Tugas Machine Learning ? 5. Apakah Metode yang terdapat pada Machine Learning ? 6. Bagaimana langkah –  langkah mengembangkan machine Learning ?

2

7. Bagaimana Proses pada Machine Learning ?

1.3 Tujuan Penulisan

Tujuan disusunnya makalah ini adalah untuk memenuhi tugas mata kuliah Rekayasa Perangkat Lunak Tahun Ajaran Ganjil 2017 dan menjawab pertanyaan yang ada pada rumusan masalah. Manfaat dari penulisan makalah ini adalah untuk meningkatkan pengetahuan baik

baik penulis maupun bagi pembaca tentang

Machine Learning dan mampu menjelaskan serta sebisa mungkin mempraktekkan tentang Machine Learning  dan hal-hal yang berhubungan dengan Machine Learning .

1.4 Metode Penulisan

Penulis memakai metode studi literatur dan kepustakaan dalam penulisan makalah ini. Referensi makalah ini Tidak hanya bersumber dari Jurnal dan buku, tetapi juga dari media media lain seperti web, blog, dan perangkat media massa yang diambil dari internet.

3

BAB II MACHINE LEARNING

2.1 Pengertian Machine Learning

Learning

mempunyai

arti

menambah

pengetahuan,

memahami

atau

menguasai dengan belajar, mengikuti instruksi atau melalui pengalaman. Seorang manusia selama hidupnya tidak pernah henti- hentinya melakukan learning. Hal ini terjadi tanpa kita sadari dan alamiah. Namun untuk membuat sebuah mesin dapat  berpikir tentu bukanlah hal yang mudah. Manusia belajar melalui pengalaman yang dia alami sehari- hari. Dari pengalaman tersebut, manusia akan mendapatkan knowledge. Untuk mendapatkan knowledge dapat melalui berbagai cara. Cara yang paling sederhana adalah rote learning atau menyimpan informasi yang sudah dikalkulasi. Cara lainnya adalah dengan mendapatkan pengetahuan dari orang lain yang sudah ahli. Manusia juga dapat belajar melalui pengalaman pemecahan masalah yang ia lakukan. Setelah berhasil mengatasi sebuah masalah, manusia akan mengingat struktur dan cara mengatasi masalah tersebut. Apabila manusia mengalami sebuah masalah yang hampir serupa, maka manusia dapat mengatasi masalah tersebut secara lebih efisien.  Machine learning merupakan bagian dari kecerdasan buatan. Untuk menjadi cerdas, sistem yang berada dalam lingkungan yang berubah harus memiliki kemampuan untuk belajar. Jika sistem dapat belajar dan beradaptasi dengan  perubahan tersebut, perancang sistem tidak perlu meramalkan danmemberikan solusi untuk semua kemungkinan situasi (Alpaydin, 2010).

4

 Machine learning adalah salah satu disiplin ilmu dari computer science yang mempelajari bagaimana membuat komputer atau mesin mempunyai suatu kecerdasan. Agar mempunyai suatu kecerdasan, komputer atau mesin harus dapat belajar. Dengan kata lain machine learning adalah suatu bidang keilmuan yang berisi tentang  pembelajaran komputer atau mesin untuk menjadi cerdas. Machine learning adalah sebuah studi yang mempelajari cara untuk memprogram sebuah komputer untuk belajar. Ada 4 kategori besar dimana sebuah aplikasi sulit untuk dibuat. Pertama, bila tidak ada manusia yang menguasai bidang tersebut. Kedua, bila ada manusia yang menguasai hal tersebut namun ia tidak mampu untuk menjelaskannya. Ketiga, adalah saat keadaan dapat berubah dengan cepat. Keempat, bila aplikasi harus dibuat berbeda untuk masing- masing pengguna. “ Machine Learning adalah cabang dari kecerdasan buatan, merupakan disiplin ilmu yang mencakup perancangan dan pengembangan algoritma yang memungkinkan komputer untuk mengembangkan perilaku yang didasarkan kepada data empiris, seperti dari sensor data pada basis data. Sistem pembelajaran dapat memanfaatkan contoh (data) untuk menangkap ciri yang diperlukan dari probabilitas yang mendasarinya (yang tidak diketahui). Data dapat dilihat sebagai contoh yang menggambarkan hubungan antara variabel yang diamati. Fokus besar penelitian  Machine Learning adalah bagaimana mengenali secara otomatis pola kompleks dan membuat keputusan cerdas  berdasarkan data. Kesukarannya terjadi karena himpunan semua perilaku yang mungkin, dari semua masukan yang dimungkinkan, terlalu besar untuk diliput oleh himpunan contoh pengamatan (data pelatihan). Karena itu Machine Learning harus merampatkan (generalisasi) perilaku dari contoh yang ada untuk menghasilkan keluaran yang berguna dalam kasus-kasus baru. Dalam kehidupan sehari- hari, dapat kita lihat learning machine pada kehidupan sehari- hari sangatlah berguna. Beberapa contoh yang terlihat sangat nyata

5

adalah speech recognition, fingerprint recognition atau handwriting recognition. Perkembangan machine learning sekarang ini sangat pesat. Banyak sekali riset dilakukan untuk menciptakan mesin yang lebih cerdas. Contoh yang paling mutakhir yang dapat kita lihat adalah Asimo, sebuah robot cerdas buatan Honda, yang dapat mengenali pemiliknya dan mengenal emosi. Machine learning juga membantu kita mencari solusi pada vision, speech recognition, dan robotika. Machine learning adalah program computer untuk mengoptimasi performa menggunakan data contoh atau pengalaman sebelumnya. Misalnya pengenalan wajah, tiap wajah memiliki bentuk /pattern terdiri dari kombinasi mata, hidung, mulut dan lokasi wajah tertentu. Dengan menganalisis sampel image wajah, program menangkap bentuk spesifik pada wajah orang tersebut dan mengenalnya dengan bentuk yang telah diberikan yang dikenal sebagi pattern recognition. Setelah pelatihan dengan data yang lampau, sebuah rule klasifikasi dapat  berupa :

IF income > Ɵ1 AND savings > Ɵ2 then low-risk ELSE high-risk

 Nilai Ɵ 1 dan Ɵ2 dikenal sebagi diskriminan yang memisahkan contoh dari kelas yang  berbeda.

2.2 Jenis-jenis Learning Technique 2.2.1 Rote Learning

Seperti yang telah dibahas sebelumnya, rote learning adalah sebuah cara memperoleh knowledge yang paling sederhana. Dengan cara ini komputer menyimpan data hasil perhitungan kedalam cache. Setelah itu, komputer tidak

6

 perlu melakukan kalkulasi kembali karena hasil perhitungan telah tersimpan. Cara ini sangat efektif untuk mempersingkat waktu proses karena komputer tinggal mengambil data. Namun sebagai trade-off, cara ini akan membutuhkan media  penyimpanan yang besar. 2.2.2 Learning by Taking Advice

Pada awalnya manusia tidak memiliki pengetahuan apapun. Namun seiring berjalannya waktu, kita selalu mendapatkan knowledge dari orang tua dan guru. Demikian juga sebuah komputer. Komputer tidak memiliki kemampuan apabila tidak diprogram terlebih dahulu. 2.2.3 Learning in Problem Solving

Cara ini dapat digunakan sebagai alternatif dari 2 cara yang telah dibahas diatas. Dengan cara ini tidak diperlukan seorang ahli untuk memberikan knowledgennya. Komputer dapat menambah pengetahuannya dengan cara menggeneralisasi pengalaman yang telah dia dapatkan. 2.2.4 Learning from Example

Teknik belajar melalui contoh merupakan salah 1 cara dari learning in  problem solving. Dalam menggunakan cara ini dibutuhkan contoh- contoh. Contoh yang tersedia akan diproses dan diklasifikasikan. Klasifikasi adalah sebuah proses memasukkan sebuah input ke dalam kelas yang sesuai. Klasifikasi adalah sebuah komponen yang penting dalam banyak pekerjaan problem solving. Biasanya

klasifikasi

ini

dimasukkan

ke

dalam

operasi

yang

lain.

Sebelum memulai klasifikasi, maka kelas- kelas harus dibentuk terlebih dahulu. Ada beberapa cara yang dapat dilakukan untuk membentuk kelas- kelas tersebut.

1. Mendefinisikan kelas dengan cara menghitung jumlah dari fiturnya. 2. Mendefiniskan kelas sebagai sebuah struktur yang terdiri dari fitur- fitur tersebut.

7

Cara pertama lebih efisien namun cara kedua lebih fleksibel dan mudah untuk diperluas.Dalam kenyataannya, mendefinisikan sebuah kelas bukannya  pekerjaan yang mudah. Apalagi jika contoh- contoh yang ada tidak mudah untuk dideskripsikan atau dapat berubah- ubah secara cepat. Jika kita ingin mendefinisikan kelas secara struktural, ada banyak cara yang dapat dipakai, misalnya Winston’s learning program, version spaces dan decision trees. Disini kita akan membahas beberapa teknik tersebut. a) Version Space Dalam teknik ini, tujuan yang ingin kita capai adalah menghasilkan sebuah deskripsi yang konsisten dengan semua contoh yang positif tetapi tidak dengan contoh yang bernilai negatif dari contoh- contoh yang disediakan. Dalam teknik ini kita akan membuat 2 buah subset, yang umum dan spesifik. Tujuan kita adalah membuat kedua subset tersebut memiliki nilai yang sama pada akhirnya. Untuk membuat hal tersebut terjadi maka kita harus membuat subset yang umum menjadi lebih spesifik dan subset yang spesifik menjadi lebih umum. Untuk melakukan hal tersebut maka dibutuhkan sebuah algoritma bernama candidate elimination algorithm. Candidate elimination adalah sebuah metode untuk menghitung batas dari set. Mengutip dari [Hirsh,1994,halaman 6] : ”The

candidate-elimination

algorithm

manipulates

the

boundary-set

representation of a version space to create boundary sets that represent a new version space consistent with all the previous instances plus the new one. For a  positive example the algorithm generalizes the elements of the [sbs] as little as  possible so that they cover the new instance yet remain consistent with past data, and removes those element of the [gbs] that do not cover the new instance. For a negative instance the algorithm specializes elements of the [gbs] so that they no longer cover the new instance yet remain consistent with past data, and removes form the [sbs] those elements that mistakenly cover the new, ne gative instance.”

8

Langkah- langkah dalam candidate elimination algorithm. 1. Buat sebuah subset G yang hanya berisi variable 2. Buat sebuah subset S yang berisi elemen dari contoh positif yang pertama 3. Jika contoh bernilai positif, hapus dari G apabila deskripsi tidak sama dengan contoh dan masukkan ke G apabila deskripsi berbeda dengan contoh. Sedangkan S tetap. Jika contoh bernilai negatif, hapus dari S apabilai deskripsi sama dengan contoh. Kemudian hapus dari G apabila deskripsi sama dengan contoh. 4. Apabila G dan S hanya 1 subset dan bernilai sama, maka proses berhenti. Jika G dan S hanya 1 subset dan berbeda nilai, berarti contoh yang ada tidak konsisten hentikan proses. Ada beberapa hal yang penting untuk diperhatikan dalam Candidate elimination algorithm. Pertama teknik ini merupakan least-comminent algorithm. Dalam setiap langkah, version space yang ada akan semakin mengerucut seminimal mungkin dalam setiap langkahnya. Oleh karena itu, apabila semua sample positif bernilai sama, algoritma ini tidak akan menganggap bahwa nilai lain adalah salah, sehingga apabila contoh yang diberikan tidak konsisten, maka S dan G tidak akan bertemu. Jadi kesimpulan yang dihasilkan sistem hanya partial. Kedua, teknik ini menggunakan breadth first search untuk mencari jawaban yang diinginkan. Candidate elimination memiliki beberapa kekurangan. Pertama, karena teknik ini menggunakan breadth first search, maka kita harus menyediakan storage yang cukup. Kedua adalah terjadinya inkonsistensi data. Seperti yang telah disebut diatas, hal ini akan menyebabkan tidak ditemukannya jawaban yang singleton.  b) Decision Trees Decision tree merepresentasikan sebuah tree dimana internal nodenya mengetes sebuah atribut, masing- masing cabangnya berhubungan dengan nilai dari atribut dan masing- masing lead nodenya berisi sebuah klasifikasi. Algoritma

9

ini merupakan salah satu dari teknik yang paling efisien dan populer dalam machine learning. Kelebihan dari decision tree adalah apabila ukurannya tidak terlalu besar, tree ini akan dapat dengan mudah dimengerti oleh manusia. Hal ini akan sangat  berguna karena manusia dapat memahami cara kerjanya. Sebagai tambahan, apabila data yang ada sangat besar, maka decision tree akan bekerja lebih cepat daripada version space. 2.2.5 Explanation- Based Learning

Explanation based learning adalah sebuah proses mengubah pengetahuan yang implisit menjadi pengetahuan yang eksplisit. Dalam teknik ini, kita membuat sebuah komponen dari domain menjadi spesifik untuk menjabarkan komponen lainnya, kemudian kita menggeneralisasi kesimpulannya agar dapat digunakan

apabila

kita

menemukan

komponen

yang

hampir

sama.

Sebagai contoh misalnya dalam permainan catur. Komputer dapat mempelajari sebuah teknik hanya dari satu contoh saja, misalnya posisi mat. Dari contoh tersebut, komputer dapat melakukan perhitungan agar posisi itu tidak terjadi  padanya dan sebaliknya berusaha melakukan itu kepada lawannya. Komputer tidak memerlukan banyak contoh seperti yang dilakukan oleh version space atau decision tree, karena komputer cukup mengetahui bahwa posisi dimana raja tidak dapat bergerak ke tempat lain bearti posisi mat. Explanation based learning merupakan sebuah metode lain dari berbagai teknik learning. Pada teknik- teknik sebelumnya, contoh- contoh yang disediakan tidaklah sangat banyak sehingga memberatkan proses perhitungan. Dengan teknik explanation based learning ini, kita akan memperbaiki kecepatan proses sebuah learning. Dalam teknik ini, kita akan menggunakan proses induktif. Proses ini akan membuat sebuah kesimpulan dari sekumpulan fakta- fakta yang ada. Kemudian

10

hasil kesimpulan dan juga fakta- fakta tersebut disimpan dalam memory, sehingga apabila pada suatu saat dibutuhkan, kita tidak perlu melakukan perhitungan ulang. Hal inilah yang menyebabkan peningkatan kecepatan proses learning. Oleh karena itu, teknik ini disebut juga speed-up learning. Speed-up learning dapat membuat sistem mendapatkan hasil / keputusan lebih cepat. Namun untuk dapat melakukan itu, kita perlu untuk memberikan banyak contoh- contoh latihan. Dalam teknik explanation based learning, kita dapat mengambil input dari empat hal.

a) contoh latihan  b) konseptujuan c) kriteria operasi d) teori domain Explanation-based generalization adalah sebuah algoritma yang dipakai dalam explanation based learning. Dalam teknik ini kita akan melakukan 2 langkah. Yang pertama adalah kita membuang semua aspek yang tidak penting dalam mencapai konsep tujuan. Langkah berikutnya adalah melakukan generalisasi  penjelasan sejauh mungkin selama masih memenuhi konsep. 2.2.6 Empirical dan Analytical Learning

Empirical

learning

adalah

metode

belajar

dengan

mengandalkan

 pengalaman eksternal, sedangkan analytical learning tidak membutuhkan input eksternal. Perbedaan antara empirical dan analytical sangat tipis. Hampir semua masalah dapat diselesaikan dengan menggunakan analytical learning, namun dalam beberapa kasus dimana dibutuhkan kecepatan dan data yang sangat banyak seperti dalam permainan catur, maka analytical tidak bisa dipakai sendirian. Empirical learning dapat digunakan bersamaan dengan analytical sehingga dapat

11

mempercepat

proses.

Dalam empirical learning dikenal metode supervised dan unsupervised. a.

Supervised Learning

Dalam teknik supervised learning, maka sebuah program harus dapat membuat klasifikasi  –   klasifikasi dari contoh- contoh yang telah diberikan. Misalnya sebuah program diberikan benda berupa bangku dan meja, maka setelah  beberapa contoh, program tersebut harus dapat memilah- milah objek ke dalam klasifikasi yang cocok. Kesulitan dari supervised learning adalah kita tidak dapat membuat klasifikasi yang benar. Dapat dimungkinkan program akan salah dalam mengklasifikasi

sebuah

objek

setelah

dilatih.

Oleh

karena

itu,

selain

menggunakan training set kita juga memberikan test set. Dari situ kita akan mengukur persentase keberhasilannya. Semakin tinggi berarti semakin baik  program tersebut. Persentase tersebut dapat ditingkatkan dengan diketahuinya temporal dependence dari sebuah data. Misalnya diketahui bahwa 70% mahasiswa dari jurusan Teknik Informatika adalah laki- laki dan 80% mahasiswa dari jurusan Sastra adalah wanita. Maka program tersebut akan dapat mengklasifikasi dengan lebih baik. b. Unsupervised Learning

Teknik ini menggunakan prosedur yang berusaha untuk mencari partisi dari sebuah pola. Unsupervised learning mempelajari bagaimana sebuah sistem dapat

belajar

untuk

merepresentasikan

pola

input

dalam

cara

yang

menggambarkan struktur statistikal dari keseluruhan pola input. Berbeda dari supervised learning, unsupervised learning tidak memiliki target output yang eksplisit atau tidak ada pengklasifikasian input. Dalam machine learning, teknik unsupervised sangat penting. Hal ini dikarenakan cara bekerjanya mirip dengan cara bekerja otak manusia. Dalam

12

melakukan pembelajaran, tidak ada informasi dari contoh yang tersedia. Oleh karena itu, unsupervised learning menjadi esensial. 2.2.7 Reinforcement Learning

Reinforcement learning adalah sebuah teknik learning yang mempelajari aturan kontrol dengan cara berinteraksi dengan lingkungan yang masih asing. Ada 2

cara

dalam

teknik

ini,

teknik

model-based

dan

teknik

model-free.

Dalam teknik model-based, kita akan membuat sebuah subset berisi 4 tuple yang menggambarkan

aksi,

kondisi,

hasil

dan

kondisi

selanjutnya.

Setelah

mendapatkan subset yang cukup banyak maka kita dapat menghasilkan  probability transition function dan reward function. Setelah mendapatkan kedua fungsi

tersebut,

kita

dapat

menggunakan

dynamic

programming

untuk

menghasilkan aturan yang paling optimal. Dalam teknik model-free, kita tidak menyimpan subset yang berisi 4 tuple. Kita langsung menerapkan sebuah algoritma yang dapat langsung mengubah aturan kontrol menjadi lebih efisien. 2.2.8 Statistical Learning

Dalam machine learning, statistik dapat digunakan untuk mempercepat  proses pembelajaran. Ada beberapa metode yang dapat kita gunakan dalam statistical learning. Metode tersebut adalah Bayesian, dan Neural Network. a.

Bayesian Learning

Dalam Artificial Intelligence, teknik Bayesian dapat digunakan untuk mempercepat proses memperoleh hasil perhitungan. Untuk memperoleh hasil yang optimal, kita dapat menggunakan probabilitas agar sehingga komputer tidak  perlu melakukan perhitungan yang tidak diperlukan. Teorema Bayes P (h | D) = P (D | h) * P (h) / P (D) Dimana :

13

P (h) = kemungkinan dari hipotesis h P (D) = kemungkinan dari sample D P (h | D) = kemungkinan dari h jika diberikan sample D P (D | h) = kemungkinan dari sample D jika ada hipotesis h b. Neural Network 

Dalam teknik ini, kita membuat sebuah neural network buatan yang  bertujuan untuk mensimulasikan cara kerja neuron yang berada di dalam sel manusia. Neuron sendiri berfungsi sangat penting dalam tubuh manusia karena  berperan penting dalam menerima dan memproses sinyal. Pada zaman modern sekarang ini, teknik dengan neural network merupakan teknik learning yang  paling populer dan efekti f. Neural network memiliki berbagai kelebihan seperti dapat melakukan perhitungan terdistribusi, dapat mentoleransi noise dalam input, dan kemampuannya dalam belajar. 2.3 Terminologi Machine Learning

Sebelum masuk ke algoritma  Machine Learning , maka harus diketahui terlebih dahulu mengenai beberapa terminologi dari  Machine Learning . Misalkan akan membuat sebuah sistem klasifikasi yang merupakan sistem yang berhubungan dengan  Machine Learning , disebut dengan  Expert System. Pada sistem klasifikasi,  pembuatan tabel dengan kolom yang terdiri dari data untuk pengukuran yang akan dilakukan. Nama-nama kolom yang diukur disebut dengan fitur, atau dapat juga disebut atribut. Baris-baris isi dari setiap kolom merupakan Instance dari fitur. Salah satu tugas dari  Machine Learning adalah klasifikasi. Misalkan ingin menentukan suatu hal dengan sistem pakar, maka hal-hal yang bisa dilakukan, antara lain seperti menimbang dengan timbangan jika perlu tahu mengenai berat, atau menggunakan computer vision  jika ingin mengenali suatu bentuk, dan hal-hal lainnya untuk mengumpulkan informasi. Jika semua informasi penting sudah terkumpul, hal terakhir yang akan dilakukan pastinya adalah proses klasifikasi, yang nantinya akan

14

menghasilkan output  berupa jenis klasifikasi yang kita inginkan. Klasifikasi pada  Machine Learning  biasanya dilakukan dengan menggunakan algoritma yang sudah sangat baik untuk digunakan dalam proses tersebut. Jika telah menggunakan algoritma Machine Learning untuk klasifikasi, maka selanjutnya harus melatih algoritma yang digunakan tersebut, dan untuk melatih algoritma, maka hal yang ilakukan adalah dengan memberi algoritma tersebut data yang berkualitas (dikenal dengan istilah training set ). Setiap training mempunyai fitur dan variabel target. Target variabel adalah apa yang akan diprediksikan oleh algoritma Machine Learning, yang selanjutnya Machine Learning akan mempelajari hubungan antara fitur dan variabel target.

2.4 Tugas Utama Machine Learning

Pada bagian sebelumnya telah dijelaskan mengenai tugas dari klasifikasi. Pada bagian klafikasi proses yang terjadi adalah menentukan pada class apa sebuah instance itu berada. Tugas lain dari Machine Learning adalah regresi. Regresi adalah  prediksi dari nilai numerik. Regresi ini termasuk ke dalam tipe algoritma  pembelajaran terarah.

2.5 Metode di dalam Machine Learning

Secara umum, di dalam Machine Learning ada dua jenis metode yang paling  populer yang dapat digunakan yaitu Supervised Learning dan Unsupervised Learning . Perbedaan utama antara keduanya terletak pada bagaimana cara kita

mengajari dan memandu sebuah program melalui algoritma yang kita buat. Saya  berikan ilustrasi, jika ada sebuah anak kecil yang sedang dihadapkan pada suatu masalah dan kamu mengajari dan memandu anak tersebut untuk memecahkan masalah tersebut maka itu termasuk ke dalam supervised learning . Namun jika

15

kamu membiarkan anak tersebut belajar dan memecahkan sendiri masalah yang dihadapinya itu disebut dengan unsupervised learning. 1.Supervised Learning

Pada Supervised Learning , kita melatih mesin untuk memberikan output yang sudah kita tetapkan atau kita harapkan sebelumnya. Algoritma yang kita terapkan  pada mesin tersebut ditujukan untuk membuat suatu input menjadi output yang kita harapkan. Supervised Learning   merupakan metode yang paling populer dalam implementasi algoritma untuk Machine Learning . Namun kelemahan dari metode ini adalah kita harus menyediakan atau menetapkan sebuah output yang benar. Kita mengajari mesin untuk melakukan sesuatu yang benar, tentu kita harus memiliki contoh apa sesuatu yang benar tersebut. Sebagai contoh, jika kita ingin mengajari sebuah program untuk menentukan sebuah opini yang negatif, positif, atau netral tentu kita harus menyediakan sampel atau contoh opini yang negatif, positif, atau netral itu seperti apa. Contoh lainnya misalnya ilustrasikan kamu memiliki sebuah keranjang buah, dan di dalam nya terdapat 4 jenis buah yaitu anggur, apel, cherry dan pisang. Sekarang kamu ingin meminta mesin untuk menentukan yang mana anggur, apel, cherry atau pisang. Untuk melakukannya tentu kita harus memberikan kondisikondisi tertentu kepada mesin untuk dapat menentukan jenis buah dengan tepat. Tabel 1 Contoh Supervised Learning

16

Beberapa algoritma yang sering digunakan dalam metode supervised learning ini antara lain  Logistic Regression,  Decission Trees, K-Nearest Neighbors, Naive  Bayes, Linear Regression, Random Forest  dan masih banyak lagi. 2. Unsupervised Learning

Sebaliknya, pada Unsupervised Learning kita tidak mengajari mesin untuk menghasilkan suatu output tertentu. Kita hanya mengajarinya seperti apa input yang  benar, dan output nya mereka sendiri yang akan menentukan, kita tidak memiliki ide sama sekali output seperti apa yang dihasilkan. Dengan ilustrasi yang sama, misalkan kamu memiliki sebuah keranjang buah yang berisi empat jenis buah yang berbeda. Kali ini mesin kamu tidak tahu sama sekali tentang buah tersebut, ini adalah pertama kali nya mesin kamu melihat buah tersebut. Jadi, bagaimana cara kita mengatur atau menyusun buah-buah tersebut ? Pertama-tama kamu harus meminta mesin untuk menyusun buah-buah tersebut berdasarkan ciri fisik mereka. Misalkan kamu menyusun mereka kedalam dua grup berdasarkan warna , maka: GRUP WARNA MERAH: apel dan cherry. GRUP WARNA HIJAU: pisang dan anggur. Sekarang kamu pertimbangkan ciri fisik lainnya untuk memecah grup tersebut menjadi lebih detail, misalnya ukuran , maka: WARNA MERAH DAN UKURAN BESAR: apel. WARNA MERAH DAN UKURAN KECIL: cherry. WARNA HIJAU DAN UKURAN BESAR: pisang. WARNA HIJAU DAN UKURAN KECIL: anggur.

17

2.6 Implementasi Machine Learning

 Machine Learning   dapat diaplikasikan pada segala bidang. Di era digital saat ini, segala sesuatu telah terkomputerisasi, dan hal tersebut memainkan peranan  penting bagi Machine Learning untuk dapat terlibat di dalam nya. Dibawah ini adalah  beberapa contoh implementasi dari Machine Learning . 2.6.1 Text Analysis

Machine Learning dapat diimplementasikan untuk menganalisa suatu teks guna mencari tau darimana sumber teks itu berasal, ataupun untuk menguji keakuratan atau kebenaran dari teks tersebut. Contoh nya :

a.  Spam F iltering , disini Machine Learning berguna untuk menganalisa, menilai, dan menyaring email spam berdasarkan isi dan sumber dari pesan tersebut.

b.  Sentiment Analysis,   ini adalah sebuah aplikasi untuk mengklasifikasikan sebuah teks. Fungsi Machine Learning disini adalah untuk mengklasifikasikan opini yang ditulis dari pengguna, apakah opini pengguna tersebut bersifat  positif, netral atau negatif.

c. I nformation E xtraction, menganalisa dan mengidentifikasi potongan potongan dari teks. Misalnya dari sebuah paragaraf, aplikasi Machine Learning ini bertugas untuk mengecek potongan-potongan informasi pada teks seperti alamat, identitas, tanggal, dsb. 2.6.2 Image Processing

Secara umum, image processing   merupakan suatu tahapan dari pengolahan suatu gambar untuk mendapatkan data dari gambar tersebut untuk kemudian diolah atau ditransformasikan lebih lanjut. Beberapa contohnya:

18

a. I mage tagging/face detection, disini Machine Learning diterapkan untuk mengidentifikasi atau mendeteksi wajah dari user berdasarkan data-data dari gambar tersebut.

b. Optical Character Recognition (OCR) , mentransformasikan sebuah teks atau gambar pada sebuah kertas / manuskrip ke dalam bentuk digital. Setelah di transformasikan ke dalam bentuk digital, maka gambar tersebut dapat diolah lebih lanjut. Contoh paling umum misalnya seperti lembar jawaban yang di  bulat hitamkan atau dokumen yang di scan menggunakan scanner.

c.  Self Driving Cars , ini merupakan salah satu implementasi dari Machine Learning yang paling fenomenal. Sebuah mobil yang telah tertanam program  Maching Learning  di dalam nya berusaha belajar untuk mengenali ciri sebuah  jalan, rambu lalu lintas dan objek disekitar jalan melalui video camera yang ditanam pada mobil tersebut. 2.6.3 Finance

Implementasi dari  Machine Learning   juga banyak diterapkan dalam bidang finansial untuk membantu memprediksi maupun mengambil keputusan. Beberapa contoh diantaranya:

a.  Stock

Tr ading,

mengembangkan

sebuah

algoritma

yang

mampu

mengidentifikasi dan memprediksi saham-saham terbaik berdasarkan pola atau pattern pada historis perdagangan saham. Machine Learning   memainkan  peranan penting dalam hal ini, ia bertugas untuk mengekstrak pola-pola yang sebelumnya tidak memiliki arti apapun hingga menjadi informasi yang  berguna dan bermanfaat dalam pengambilan keputusan.

b. F raud Detection, dengan bantuan  Machine Learning , sistem dapat mendeteksi kecurangan atau penipuan dengan efektif dan efisien. Cara kerjanya adalah dengan menganalisis data transaksaksi historis untuk membangun model yang dapat mendeteksi pola penipuan.

19

2.6.4 Search and Recomendation Engine

 Machine Learning  juga diterapkan untuk memaksimalkan fungsi pencarian dan rekomendasi oleh situs pencari, e-commerce dan media sosial. Beberapa contoh  penerapan nya sebagai berikut: a. Google, ketika kamu mengetik sebuah kata kunci pencarian di Google,  biasanya Google akan menampilkan rekomendasi pencarian yang kamu cari. Misalnya, ketika kamu mengetik ‘cara menghilangkan’ , maka Google akan memunculkan beberapa rekomendasi atau autoteks nya seperti ‘cara menghilangkan

jerawat’,

‘cara

menghilangkan

bau

badan’,

‘cara

menghilangkan ketombe’  dan sebagainya.  b. F acebook , hal yang sama juga diterapkan pada Facebook. Misalnya kamu melakukan pencarian nama ‘ Desi‘ di textbox pencarian, maka Facebook akan menampilkan beberapa rekomendasi nama user yang mungkin kamu kenali, misalnya ‘ Desi Fatmawati’, ‘Desi Susanti’, ‘Desi Karina’ dan Desi-Desi lainnya. c.  Amazon, Lazada, Alibaba, dan lainnya, jika kamu jelih memperhatikan saat kamu melakukan aktivitas belanja pada salah satu e-commerce diatas, maka sebetulnya mereka sudah menerapkan fungsi dari  Machine Learning . Saat kamu melihat sebuah produk sampai ke halaman detail nya, misalnya sebuah Handphone, maka biasanya dibawah dari deskripsi Handphone tersebut akan muncul rekomendasi Handphone lainnya dengan spesifikasi yang hampir sama untuk kamu telusuri. 2.6.5 Speech Understanding

Ini berhubungan dengan suara manusia dan cabang ilmu komputer lainnya yaitu Natural Language Processing (NLP). Berikut beberapa contoh penerapan nya:

20

a. Google Voice,Saat ini kita dapat melakukan pencarian pada Google tanpa harus memainkan jari-jemari pada keyboard atau layar handphone kita. Salah model pencarian baru yang diterapkan oleh Google adalah melalui suara. Disini  Machine Learning   memainkan peranan penting, suara yang diterima akan menjadi masukan bagi program untuk diidentifikasi dan dianalisa lebih lanjut untuk melakukan pencarian berdasarkan inputan (suara) yang diterima

2.7 Langkah-langkah Dalam Mengembangkan Aplikasi  Machine Learning

1. Mengumpulkan Data Proses pengumpulan data dilakukan dengan mengambil contoh dari berbagai sumber informasi, seperti di Internet dan media cetak. Data yang dikumpulkan adalah data yang disebarkan secara bebas ke publik. 2. .Mempersiapkan Data Masukan Pada hal ini data masukan yang disiapkan adalah data masukan yang sesuai dengan format yang dibutuhkan untuk analisis. 3. Menganalisis Data Masukan Setelah proses pertama dan kedua dilakukan, maka hal selanjutnya yang harus dilakukan adalah menganalisis data masukan dan untuk menganalisis dapat dilakukan dengan melihat pola data dan juga dengan memisahkan data  berdasarkan dimensi masing-masing data 4. Mengikutsertakan Keterlibatan Manusia 5. Melatih Algoritma Pada langkan ini pengguna “memberi makan” algoritma dengan data yang  berkualitas, dan nantinya algoritma akan mengolah data tersebut menjadi informasi serta menyimpannya.

21

6. .Menguji Algoritma Pada langkah ini hal yang dilakukan adalah melihat seberapa baik kualitas algoritma yang telah dilatih pada tahap sebelumnya. 7. Menggunakannya Langkah ini merupakan langkah akhir untuk algoritma yang diterapkan dalam suatu program, sehingga dapat melakukan suatu hal. Kemudian dilakukan  pengecekan ulang terhadap langkah-langkah sebelumn ya.

2.8 Proses Maching Learning

Proses machine learning adalah sama dengan data mining. Program machine learning mendeteksi pola dalam data dan menyesuaikan tindakan program yang sesuai. Sebagai contoh, Facebook News Feed berubah sesuai denga interaksi pribadi  pengguna dengan pengguna lain. Jika pengguna serinf men-tag teman di foto, menulis di dindingnya atau “suka” linknya, News Feed akan menampilkan lebih  banyak kegiatan di berita pengguna karena di anggap memiliki kedekatan. Machine learning terletak bersilangan antara computer science, teknik, dan statistic. Machine learning juga banyak diterapkan pada robot vision dan sering menggunakan statistic. Untuk kebanyakan orang, statistic adalah subjek estoric yang digunakan perusahaan misalnya untuk promosi tentang betapa hebatnya produk mereka. Machine learning bekerja dengan cara menemukan beberapa hubungan antara fitur dan variable target. Untuk menguji algoritma, biasanya dilakukan dengan satu set pelatihan data (training set) dan data set yang terpisah, yang disebut test set. Pada awalnya , program diberikan contoh-contoh training. Lalu test set diberikan ke  program. Variabel target untuk contoh dari test set yang tidak dberikan ke program, dan program memutuskan tiap contoh masuk ke kelas mana yang sesuai. Variabel

22

target atau kelas dibandingkan dengan nilai yang di prediksi untuk memperoleh keakuratan program. Dalam

beberapa kasus kita tidak mungkin tertarik dalam

membangun sistem pakar, tetapi hanya tertarik pada representasi pengetahuan yang di  peroleh dari pelatihan algoritma Machine contoh penerapannya adaah memberikan data pelatihan untuk pengklasifikasian jenis burung.

Tahap Machine Learning

Gambar 1 Metode Machine Learning

23

Tahapan-tahapan metode machine learning dalam indoor localization terdiri dari (Alpaydin, 2010): 1. Tahap Pre-Learning a. Tahap identifikasi data dan knowledge source merupakan tahapan spesifikasi  parameter sistem pengukuran nilai RSS dari multiple CELL-ID yang ada di gedung POLITAMA. Proses pengukuran dilakukan dengan mengabaikan adanya efek multipath dan propagasi.  b. Tahap acquire data dan knowledge merupakan tahapan penetapan lokasi  fingerprint yang akan diukur dalam gedung dengan menetapkan grid atau titiktitik pengukuran ( predefined ) dalam bentuk koordinat ( x, y). c. Tahap  preprocessing merupakan tahap pemrosesan data dari langkah (b).  Preprocessing dilakukan dengan menghilangkan RSS cell.id yang berada di luar area penelitian meskipun sinyal tersebut tertangkap. Pada tahap  prepocessing akan dibuat juga database fingerprint RSS cell-id.  Database fingerprint ini kemudian diolah untuk menghasilkan visualisasi peta fingerprint .

2. Tahap Learning Merupakan tahapan proses pembelajaran pengenalan posisi yang dilakukan terhadap database fingerprint dengan menggunakan algoritma k-Nearest  Neighborhood (k-NN) . 3. Tahap Post Learning Merupakan tahapan penggunaan sistem lokalisasi untuk pengujian RSS secara real time dalam menghitung estimasi lokasi.

24

BAB III PENUTUP

3.1 Kesimpulan

 Machine Learning   adalah salah satu cabang dari Ilmu Komputer yang erat kaitan nya dengan Artificial Intelligent (Kecerdasan Buatan). Secara sederhana dapat dikatakan bahwa fokus utama dalam bidang ini adalah membangun sebuah algoritma yang memungkinkan program komputer dapat belajar dan melakukan sendiri tugastugas nya tanpa adanya instruksi dari pengguna. Kemampuan suatu individu untuk belajar tentu meningkatkan kecerdasan individu tersebut, dan tidak terkecuali pada sebuah mesin. Mesin yang mampu belajar akan meningkatkan produktivitas manusia. Ia memiliki kekuatan tambahan yang tidak dimiliki mesin lainnya. Aplikasi Machine learning membutuhkan Data sebagai bahan belajar (training) sebelum mengeluarkan output. Aplikasi sejenis ini juga biasanya berada dalam domain spesifik alias tidak bisa diterapkan secara general untuk semua  permasalahan. Machine Learning bukan apa-apa tanpa data. Artinya semua aplikasi Machine Learning membutuhkan Data sebagai bahan training dan untuk di analisa sehingga mampu mengeluarkan Output. Sebelum aplikasi machine learning bisa  bekerja, maka ia membutuhkan Data untuk "latihan" (training), hasil training itu nanti akan di Uji atau di test dengan data yang sama atau bertolak belakang. 3.2 Saran

Adapun saran dalam pembuatan makalah ini semoga makalah dapat  bermanfaat bagi semua pembaca. Dan jika ada kekurangan dalam makalah ini mohon diberikan saran dan masukan yang membangun guna meningkatkan selanjutnya.

25

karya tulis

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF