Pemelajaran mesin: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
HsfBot (bicara | kontrib)
k v2.04b - Fixed using Wikipedia:ProyekWiki Cek Wikipedia (Tanda baca setelah kode "<nowiki></ref></nowiki>")
Baris 6:
 
== Sejarah ==
Pada tahun 1951, [[John McCarthy]] yang baru saja mendapatkan gelar PhD meyakinkan Minsky, [[Claude Shannon]], dan [[Nathaniel Rochester]] untuk membantunya membawa peneliti Amerika Serikat yang memiliki ketertarikan pada teori automata, jaring saraf, dan studi mengenai kecerdasan menjadi satu. Mereka mengorganisir sebuah lokakarya di [[Dartmouth College]] di Hanover, New Hampshire pada tahun 1956. Pada saat itulah dianggap menjadi tahun lahirnya kecerdasan buatan. Sejak awal, para peneliti kecerdasan buatan tidak segan membuat prediksi mengenai keberhasilan dari kecerdasan buatan ini. Pada awalnya kecerdasan buatan berkembang cukup pesat, hal ini disebabkan karena ekspektasi yang terlalu tinggi dari para peneliti di bidang ini. Hingga pada tahun 1974, bidang kecerdasan buatan mulai kurang diminati. Sampai pada tahun 1980, ketertarikan terhadap kecerdasan buatan sebagai bidang penelitian mulai bangkit kembali. Salah satu yang mendukung hal ini adalah hasil kerja Yarowsky (1995), ia melakukan percobaan menggunakan pemelajaran mesin dan mendapatkan hasil diatas 96% untuk ke akuratan dari percobaannya. Setelah Yarowsky banyak orang-orang yang melakukan percobaan menggunakan pemelajaran mesin dan mendapatkan hasil yang memuaskan, dari sinilah pemelajaran mesin dapat semakin berkembang hingga hari ini .<ref name=":0">S. J. Russell, P. Norvig, J. F. Canny, J. M. Malik, and D. D. Edwards, ''Artificial'' ''Intelligence: A Modern Approach'', vol. 2. Prentice hall Englewood Cliffs'','' 1995.</ref>.
 
== Perbedaan dengan penggalian data ==
[[Penggalian data]] (''data mining'') adalah sebuah proses untuk menemukan pengetahuan, ketertarikan, dan pola baru dalam bentuk model yang deskriptif, dapat dimengerti, dan prediktif dari data dalam skala besar .<ref>M. J. Zaki, W. Meira Jr., ''Data Mining and Analysis: Fundamental Concepts and Algorithms'', Cambridge University Press, 2014.</ref>. Dengan kata lain ''data mining'' merupakan ekstraksi atau penggalian pengetahuan yang diinginkan dari data dalam jumlah yang sangat besar .<ref>J. Han, M. Kamber, ''Data Mining: Concepts and Techniques'', Morgan Kaufmann, 2006.</ref>.
 
Dari definisi diatas dapat disimpulkan bahwa pada pemelajaran mesin berkaitan dengan studi, desain dan pengembangan dari suatu algoritme yang dapat memungkinkan sebuah komputer dapat belajar tanpa harus diprogram secara eksplisit. Sedangkan pada ''data mining'' dilakukan proses yang dimulai dari data yang tidak terstruktur lalu diekstrak agar mendapatkan suatu pengetahuan ataupun sebuah pola yang belum diketahui. Selama proses ''data mining'' itulah algoritme dari pemelajaran mesin digunakan.
Baris 17:
 
* [[Pemelajaran terarah]] (''supervised learning'') membuat fungsi yang memetakan masukan ke keluaran yang dikehendaki, misalnya pada pengelompokan (klasifikasi).
:Pemelajaran terarah merupakan algoritme yang mempelajari sekumpulan contoh pasangan masukan-keluaran yang diinginkan dalam jumlah yang cukup besar. Algoritme ini menggunakan data latih (''data train''), yaitu data-data yang sudah diberi label untuk melakukan pembelajaran. Metode ini bertujuan agar mesin mampu mengidentifikasi label input baru dengan menggunakan fitur yang ada untuk melakukan prediksi maupun klasifikasi. Dengan mengamati data-data tersebut, metode ini akan menghasilkan sebuah model yang mampu memetakan masukan yang baru menjadi keluaran yang tepat .<ref name=":0" />.
:Salah satu contoh yang paling sederhana adalah terdapat sekumpulan contoh masukan berupa umur seseorang dan contoh keluaran yang berupa tinggi badan orang tersebut. Algoritme pemelajaran melalui contoh mengamati contoh-contoh tersebut dan kemudian mempelajari sebuah fungsi yang pada akhirnya dapat "memperkirakan" tinggi badan seseorang berdasarkan masukan umur orang tersebut.
:Contoh implementasi dengan metode ini adalah pada kasus deteksi spam pada surel. Data latih yang digunakan akan diberi label berupa spam dan bukan spam. Mesin akan mempelajari data-data tersebut melalui proses ''learning'' sehingga dapat menghasilkan keluaran berupa mesin yang sudah terlatih untuk mengelompokkan surel yang spam dan bukan spam.
Baris 27:
* Pemelajaran semi terarah (''semi-supervised learning''), yakni tipe yang menggabungkan antara ''supervised'' dan ''unsupervised'' untuk menghasilkan suatu fungsi.
:Algoritme pemelajaran semi terarah menggabungkan kedua tipe algoritme di atas, di mana diberikan contoh masukan-keluaran yang tepat dalam jumlah sedikit dan sekumpulan masukan yang keluarannya belum diketahui. Algoritme ini harus membuat sebuah rangkaian kesatuan antara dua tipe algoritme di atas untuk dapat menutupi kelemahan pada masing-masing algoritme.<ref name=":0" />
:Misalnya sebuah sistem yang dapat menebak umur seseorang berdasarkan foto orang tersebut. Sistem tersebut membutuhkan beberapa contoh, misalnya yang didapatkan dengan mengambil foto seseorang dan menanyakan umurnya (pemelajaran terarah). Akan tetapi, pada kenyataannya beberapa orang sering kali berbohong tentang umur mereka sehingga menimbulkan ''noise'' pada data. Oleh karena itu, digunakan juga pemelajaran tak terarah agar dapat saling menutupi kelemahan masing-masing, yaitu ''noise'' pada data dan ketiadaan contoh masukan-keluaran .<ref name=":0" />.
* Reinforcement learning: Tipe ini mengajarkan bagaimana cara bertindak untuk menghadapi suatu masalah, yang suatu tindakan itu mempunyai dampak. Adalah sebuah algoritme pemelajaran yang diterapkan pada agen cerdas agar ia dapat menyesuaikan dengan kondisi dilingkungannya, hal ini dicapai dengan cara memaksimalkan nilai dari hadiah ‘''reward''’ yang dapat dicapai. Suatu hadiah didefinisikan sebuah tanggapan balik ‘''feedback''’ dari tindakan agen bahwa sesuatu baik terjadi <ref name=":0" />.Sebagai contoh, sangatlah sulit untuk memrogram sebuah agen untuk menerbangkan sebuah helikopter, tetapi dengan memberikan beberapa nilai negatif untuk menabrak, bergoyang-goyang, serta melenceng dari jalur tujuan perlahan-lahan agen tersebut dapat belajar menerbangkan helikopter dengan lebih baik .<ref name=":0" />.
 
* Pemelajaran berkembang (''developmental learning algorithm'') adalah sebuah bidang yang bertujuan untuk mempelajari mekanisme pengembangan, arsiterktur, dan batasan yang memungkinkan dibuatnya metode pemelajaran yang berlaku seumur hidup, serta bersifat terbuka terhadap kemampuan dan pengetahuan untuk dipasangkan kepada mesin .<ref>https://en.wiki-indonesia.club/wiki/Machine_learning</ref>.
* Transduction: Tipe ini hampir mirip dengan Supervised Learning, tapi tidak secara jelas untuk membangun suatu fungsi melainkan mencoba memprediksi output baru yang berdasarkan dari input baru, masukan pelatihan input dan output
* Learning to learn: Tipe ini menggunakan algoritme untuk mempelajari yang sebelumnya.
Baris 42:
 
=== Jaringan saraf tiruan ===
Jaringan saraf tiruan (''artificial neural network'') adalah sebuah algoritme yang didesain untuk memodelkan cara kerja jaringan saraf dalam melakukan suatu pekerjaan atau fungsi tertentu. Jaringan ini biasanya diimplementasikan dengan menggunakan komponen elektronik atau disimulasikan dalam sebuah perangkat lunak di dalam komputer digital .<ref>S. Hayken, ''Neural'' ''Networks: A Comprehensive Foundation'', Macmillan College Publishing Company, 1994.</ref>.
 
=== Pengelompokan ===
Pengelompokan (''clustering'') merupakan salah satu pemelajaran yang tergolong dalam pemelajaran yang tidak memerlukan contoh (''unsupervised learning''). Definisi sederhana dari pengelompokan adalah sebuah proses untuk mengorganisasikan objek menjadi beberapa kelompok yang memiliki anggota yang mirip dalam hal tertentu .<ref>B. R. Jipkate, V. V. Gohokar, ''A Comparative Analysis of Fuzzy C-Means Clustering and K Means Clustering Algorithms'', International Journal of Computational Engineering Research, ISSN: 2250-3005.</ref>. Algoritme pengelompokan menerima sekumpulan masukan dan kemudian membuat sebuah pembagian (kelompok-kelompok) dari masukan tersebut. Dua masukan yang berada pada kelompok yang sama seharusnya memiliki banyak kesamaan dibandingkan dengan dua masukan yang berada pada kelompok yang berbeda .<ref>T. Finley, T. Joachims, ''Supervised Clustering with Support Vector Machine'', Department of Computer Science, Cornell University, Ithaca, NY 14853 USA.</ref>.
 
Sebagai contoh, para astronom harus melakukan pengelompokan untuk menentukan tipe dari bintang-bintang berdasarkan data spektrum dari ratusan ribu bintang sehingga pada akhirnya mendapatkan istilah seperti “''red giant''” dan “''white dwarf''” .<ref name=":0" />.
 
=== Jaringan Bayes ===
''Bayesian network'' diciptakan karena adanya penelitian 'Alasan Probabilistik dalam Kecerdasan Sistem oleh Judea Pearl (1988) yang menuntun pada diterimanya probabilitas dan teori keputusan dalam kecerdasan buatan. ''Bayesian'' ''Network'' secara formal diciptakan untuk memungkinkan representasi yang efisien, dan penalaran yang teliti dengan, pengetahuan pasti. ''Bayesian'' ''network'' memungkinkan untuk dapat belajar dari pengalaman serta menggabungkan kecerdasan buatan yang terbaik dan jaringan saraf. ''Bayesian network'' merupakan keluarga dari model graf probabilistik. Struktur graf ini digunakan untuk merepresentasikan pengetahuan dari suatu domain yang belum pasti. Nantinya setiap ''node'' yang ada pada graf merepresentasikan variabel acak, dimana sisi-sisi antar ''node'' tersebut merepresentasikan probabilitas ketergantungan antar variabel yang acak tersebut .<ref>Ben-Gal I., ''Bayesian Networks'', in Ruggeri F., Faltin F. & Kenett R., Encyclopedia of Statistics in Quality & Reliability, Wiley & Sons (2007).</ref>.
 
=== Pemrograman logika induktif ===
Pemrograman logika induksi (''inductive logic programming'') merupakan salah satu pendekatan pemelajaran mesin yang mempelajari konstruksi induktif dalam bentuk ''first-order'' berdasarkan contoh dan latar belakang pengetahuan yang ada .<ref>S. Muggleton, L. D. Raedt, ''Inductive Logic Programming: Theory and Methods'', Journal of Logic Programming, 1994: 19, 20: 629-679.</ref>. Pendekatan ini menekankan pada representasi dari hipotesis sebagai program logika.
 
Contohnya pada pemelajaran relasi keluarga dari data yang diberikan. Proses klasifikasi dilakukan dengan memproses latar belakang pengetahuan, hipotesis, dan deskripsi yang diberikan. Deskripsi akan terdiri dari istilah seperti ''Father(Philip, Charles)'', ''Mother(Mum, Margaret)'', dan lainnya. Pada awalnya, belum latar belakang pengetahuan yang dapat digunakan. Sehingga memunculkan beberapa hipotesis seperti ''Grandparent(x,y)''. Seiring berjalannya waktu, latar belakang pengetahuan akan terus meningkat dan menemukan bahwa ''Parent(x,y) ''⟺'' ''[''Mother(x,y) ''V'' Father(x,y)'']. Dengan demikian, definisi dari ''Grandparent'' dapat dikurangi menjadi ''Grandparent(x,y)'' ⟺ [∃''z Parent(x,z)'' ∧ ''Parent(z,y)''] .<ref name=":0" />.
 
== Manfaat dan implementasi ==