Pemelajaran mesin: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
HsfBot (bicara | kontrib)
k Bot: Penggantian teks otomatis (-Syaraf, +Saraf, -syaraf, +saraf)
HsfBot (bicara | kontrib)
k Bot: Penggantian teks otomatis (-algoritma; +algoritme)
Baris 1:
{{refimprove|date=November 2013}}
'''Pembelajaran mesin''', cabang dari [[kecerdasan buatan]], adalah disiplin ilmu yang mencakup perancangan dan pengembangan [[algoritmaalgoritme]] yang memungkinkan komputer untuk mengembangkan perilaku yang didasarkan pada [[data]] empiris, seperti dari sensor data [[basis data]]. Sistem pembelajar 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 pembelajaran mesin adalah bagaimana mengenali secara otomatis pola kompleks dan membuat keputusan cerdas berdasarkan data. Kesukarannya terjadi karena himpunan semua peri laku yang mungkin, dari semua masukan yang dimungkinkan, terlalu besar untuk diliput oleh himpunan contoh pengamatan (data pelatihan). Karena itu pembelajar harus merampatkan (generalisasi) perilaku dari contoh yang ada untuk menghasilkan keluaran yang berguna dalam kasus-kasus baru.
 
== Definisi ==
Baris 11:
[[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 pembelajaran mesin berkaitan dengan studi, desain dan pengembangan dari suatu algoritmaalgoritme 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 algoritmaalgoritme dari pembelajaran mesin digunakan.
 
== Tipe algoritmaalgoritme ==
[[AlgoritmaAlgoritme]] dalam pembelajaran mesin dapat dikelompokkan berdasarkan masukan dan keluaran yang diharapkan dari algoritmaalgoritme.
 
* [[Pembelajaran terarah]] (''supervised learning'') membuat fungsi yang memetakan masukan ke keluaran yang dikehendaki, misalnya pada pengelompokan (klasifikasi).
:Merupakan algoritmaalgoritme yang belajar berdasarkan sekumpulan contoh pasangan masukan-keluaran yang diinginkan dalam jumlah yang cukup besar. AlgoritmaAlgoritme ini mengamati contoh-contoh tersebut dan kemudian 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. AlgoritmaAlgoritme pembelajaran melalui contoh mengamati contoh-contoh tersebut dan kemudian mempelajari sebuah fungsi yang pada akhirnya dapat "memperkirakan" tinggi badan seseorang berdasarkan masukan umur orang tersebut.
 
* [[Pembelajaran tak terarah]] (''unsupervised learning'') memodelkan himpunan masukan, seperti penggolongan (''clustering'').
:AlgoritmaAlgoritme ini mempunyai tujuan untuk mempelajari dan mencari pola-pola menarik pada masukan yang diberikan.<ref>K. P. Murphy, ''Machine Learning: A Probabilistic Perspective'', The MIT Press, Cambridge, Massachusetts, London, England.</ref> Meskipun tidak disediakan keluaran yang tepat secara eksplisit. Salah satu algoritmaalgoritme ''unsupervised learning'' yang paling umum digunakan adalah ''clustering''/pengelompokan.<ref name=":0" />
:Contoh ''unsupervised learning'' dalam dunia nyata misalnya  seorang supir taksi yang secara perlahan-lahan menciptakan konsep "macet" dan "tidak macet" tanpa pernah diberikan contoh oleh siapapun.<ref name=":0" />
* Pembelajaran semi terarah (''semi-supervised learning''), yakni tipe yang menggabungkan antara ''supervised'' dan ''unsupervised'' untuk menghasilkan suatu fungsi.
:AlgoritmaAlgoritme pembelajaran semi terarah menggabungkan kedua tipe algoritmaalgoritme di atas, di mana diberikan contoh masukan-keluaran yang tepat dalam jumlah sedikit dan sekumpulan masukan yang keluarannya belum diketahui. AlgoritmaAlgoritme ini harus membuat sebuah rangkaian kesatuan antara dua tipe algoritmaalgoritme di atas untuk dapat menutupi kelemahan pada masing-masing algoritmaalgoritme.<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 (pembelajaran terarah). Akan tetapi, pada kenyataannya beberapa orang sering kali berbohong tentang umur mereka sehingga menimbulkan ''noise'' pada data. Oleh karena itu, digunakan juga pembelajaran 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 algoritmaalgoritme pembelajaran 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" />.
* Pembelajaran berkembang (''developmental learning algorithm'') adalah sebuah bidang yang bertujuan untuk mempelajari mekanisme pengembangan, arsiterktur, dan batasan yang memungkinkan dibuatnya metode pembelajaran yang berlaku seumur hidup, serta bersifat terbuka terhadap kemampuan dan pengetahuan untuk dipasangkan kepada mesin <ref>https://en.wikipedia.org/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 algoritmaalgoritme untuk mempelajari yang sebelumnya.
 
== Contoh Pendekatan ==
 
=== ''Decision Tree ''/ Pohon keputusan ===
Pembelajaran pohon keputusan bisa dijadikan sebagai model prediktif yang dapat memetakan pengamatan sebuah pilihan ke kesimpulan target dari pilihan tersebut.  Pohon keputusan memiliki pendekatan pemodelan prediksi menggunakan statistik, ''data mining'', dan pembelajaran mesin.  Pada pohon keputusan ini ''node''-''node'' daunnya akan merepresentasikan label kelas, sedangkan cabangnya merepresentasikan kaitan dari fitur-fitur yang dapat menuntun menuju label kelas yang ada. Pembelajaran pohon keputusan merupakan representasi sederhana untuk contoh pengklasifikasian.  Pembelajaran pohon keputusan merupakan salah satu teknik dari ''supervised learning''. Terdapat banyak algoritmaalgoritme pohon keputusan, diantaranya adalah id3 (''iterative'' ''dichotomiser'' 3), c4.5, ''cart'' (''classification'' ''and'' ''regression'' ''tree''), CHAID (''CHi''-''squared'' ''Automatic'' ''Interaction'' ''Detector''), MARS, dan lain-lain.
 
Sebagai contoh pohon keputusan dapat digunakan untuk penyaringan ''email''.  Dengan memasukan fitur-fitur dari ''email'' yang telah ditentukan menjadi cabangnya, dan nantinya cabang-cabang tersebut memiliki daun yang dapat menentukan ''email'' tersebut masuk ke label yang mana yang telah tersedia.
 
=== ''Artificial Neural Network ''/ Jaringan Saraf Tiruan (JST) ===
JST adalah sebuah algoritmaalgoritme 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>.
 
=== ''Clustering ''/ Pengelompokan ===
Pengelompokan merupakan salah satu pembelajaran yang tergolong dalam pembelajaran 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>. AlgoritmaAlgoritme 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" />.
Baris 58:
 
== Manfaat dan Contoh Implementasi ==
Pembelajaran mesin menjaganya agar tetap sederhana, sebuah algoritmaalgoritme dikembangkan untuk mencatat perubahan dalam data dan berevolusi dalam desain itu untuk mengakomodasi temuan baru. Seperti diterapkan untuk analisis prediktif, fitur ini memiliki dampak luas mulai pada kegiatan yang biasanya dilakukan untuk mengembangkan, menguji, dan memperbaiki algoritmaalgoritme untuk tujuan tertentu.
Aplikasi untuk pembelajaran mesin termasuk:
* Machine perception