Tugas 3

TUGAS 3 
ALGORITMA DASAR
Nama  : Muchammad Rizky Yudistira
Nim    : 17170107
Kelas  : 17.5A.55

         Algoritma adalah suatu urutan dari beberapa langkah logis dan sistematis yang digunakan untuk menyelesaikan masalah tertentu. Dengan kata lain, semua susunan logis yang diurutkan berdasarkan sistematika tertentu dan digunakan untuk memecahkan suatu masalah dapat disebut dengan algoritma.
      Algoritma digunakan untuk melakukan penghitungan, penalaran otomatis, serta mengolah data pada komputer dengan menggunakan software. Dalam algoritma terdapat rangkaian terbatas dari beberapa intruksi untuk menghitung suatu fungsi yang jika dieksekusi dan diproses akan menghasilkan output, lalu berhenti pada kondisi akhir yang sudah ditentukan.
Jenis jenis algoritma dasar :
  1. Algoritma Squensial (Sequence Algorithm)
  2. Algoritma Perulangan (Looping Algorithm)
  3. Algoritma Percabangan (Conditional Algorithm)
Kriteria Algoritma menurut Donald E.Knuth adalah sebagai berikut : 
  1. Input, yaitu permasalahan yang dihadapi dan akan dicarikan solusinya.
  2. Output, yaitu rencana atau langkah-langkah yang harus dilakukan untuk mencapai tujuan akhir.
  3. Proses, yaitu solusi atau tampilan akhir yang didapatkan dari suatu algoritma. Algoritma memiliki minimal satu output.
  4. Intruksi - intruksi yang jelas, yaitu instrukti yang jelas dalam algoritma sehingga tidak terjadi kesalahan dalam menghasilkan output.
  5. tujuan, yaitu akhir dari program dimana program akan berhenti ketika tujuan akhir telah tercapai.
    Sebelum masuk ke algoritma machine learning yang cukup modern/ matematis, kami akan memberi contoh algoritma yang lebih mudah yaitu Naive Bayes, K-means, dan K-nearest-neighbor. Algoritma-algoritma ini tergolong non-parametrik. Bab ini akan memuat contoh sederhana supervised dan unsupervised learning. Mudah-mudahan bab ini memberikan kamu gambaran aplikasi machine learning sederhana.
  • Naive Beyes
      Naive Bayes adalah algoritma supervised learning yang sangat sederhana. Idenya mirip dengan probabilitas bayesian pada bab 2. Secara formal, persamaan Naive Bayes untuk klasifikasi diberikan pada persamaan dimana ci adalah suatu nilai kelas, C adalah kelas (himpunan), t adalah fitur (satu fitur, bukan feature vector) dan F adalah banyaknya fitur. Kita memprediksi kelas berdasarkan probabilitas kemunculan nilai fitur pada kelas tersebut. 
        
  • K - Means
       Pada supervised learning kita mengetahui kelas data untuk setiap feature vector, sedangkan untuk unsupervised learning kita tidak tahu. Tujuan unsupervised learning salah satunya adalah melakukan clustering. Yaitu mengelompokkan data-data dengan karakter mirip. Untuk melakukan pembelajaran menggunakan K-means [24], kita harus mengikuti langkah-langkah sebagai berikut:
  1.  Tentukan jumlah kelompok yang kita inginkan. 
  2. Inisiasi centroid untuk setiap kelompok (pada bab ini, secara acak). Centroid adalah data yang merepresentasikan suatu kelompok (ibaratnya ketua kelompok). 
  3. Hitung kedekatan suatu data terhadap centroid, kemudian masukkan data tersebut ke kelompok yang centroid-nya memiliki sifat terdekat dengan dirinya. 
  4.  Pilih kembali centroid untuk masing-masing kelompok, yaitu dari anggota kelompok tersebut (semacam memilih ketua yang baru). 
  5. Ulangi langkah-langkah sebelumnya sampai tidak ada perubahan anggota untuk semua kelompok.
       Mengkelompokan data menjadi dua cluster / dua kelompok yaitu “K1,K2” dengan menggunakan algoritma K-Means.
  1.  Pertama inisiasi centroid secara acak, “id1 untuk k1” dan “id6 untuk k2”.
  2. Hitung kedekatan data lainnya terhadap centroid.
  3. Untuk mempermudah hitung perbedaan data satu dan lainnya dengan   menghitung perbedan nilai attribute (sama atau tidak).
  4. Apabila perbedaan suatu data terhadap kedua centroid bernilai sama,maka  masukkan dari nomor urut terkecil.
  5. Kemudian kelompok satu beranggotakan (id1, id2, id3, id5), Sedangkan kelompok dua beranggotakan (id4, id6)
  6. Pilih kembali centroid untuk masing-masing kelompok yang mana berasal dari anggota kelompok itu sendiri.Contoh : Centroid kelompok satu adalah id1 Centroid kelompok dua adalah id4
  7. Kemudian hitung kembali assignment anggota kelompok tersebut.
  8. Hasil Kedua adalah perubahan anggota kelompok k1 = (id1, id2, id3, id5) dan k2 = (id4, id6)
  9. Anggap langkah ketiga kita memilih kembali id2 dan id4 sebagai centroid masing-masing kelompok sehingga tidak ada perubahan keanggotaan.
         Clustering memiliki hubungan erat dengan Gaussian Mixture Model (GMM). Secara sederhana satu cluster / satu kelas sebenarnya seolah dapat dipisahkan dengan kelas lainnya oleh distribusi Gaussian. Distribusi seluruh dataset dapat diaproksimasi dengan Gaussian Mixture Model (GMM).Setiap data memiliki suatu pola dalam statistik yang disebut distribusi. GMM dipercaya dapat mengaproksimasi fungsi apapun.Machine Learning yang mempunyai salah satu tujuan untuk menemukan pola dataset, memiliki hubungan yang sangat erat dengan distribusi Gaussian karena pola tersebut dapat diaproksimasi dengan distribusi Gaussian.
  • K-nearest-neighbor
       Adalah mengelompokkan data ke kelompok yang memiliki sifat termirip dengannya. Ini mirip dengan K-means. Bila K-Means digunakan untuk clustering, Maka KNN digunakan untuk klasifikasi. Algoritma klasifikasi ini disebut juga algorita malas karena tidak mempelajari cara mengkategorikan data, melainkan hanya mengingatkan data yang sudah ada. Ide K-nearest-neighbor (KNN) adalah mengelompokkan data ke kelompok yang memiliki sifat termirip dengannya.Hal ini sangat mirip dengan Kmeans. Bila K-means digunakan untuk clustering, KNN digunakan untuk klasifikasi. Algoritma klasifikasi ini disebut juga algoritma malas karena tidak mempelajari cara mengkategorikan data, melainkan hanya mengingat data yang sudah ada.
          KNN mencari K feature vector dengan sifat termirip, kemudian mengelompokkan data baru ke kelompok feature vector tersebut. Sebagai contoh : 
  • Lakukan klasifikasi algoritma KNN dengan K = 3 untuk data baru (rich = no, intelligent = yes, good looking = yes)
  • Pada bab sebelumnya kelompok satu k1 = (id1, id2, id3, id5) dan k2 = (id4, id6)
  •  Feature vector termirip dimiliki oleh data dengan id1, id5, id6
  • Memberikan prioritas dan memasukkan ke kelompok yang anggotanya lebih banyak dan menjadi nearest neighbor
  • Kemudian klasifikasikan data baru ke kelompok pertama

Komentar

Postingan populer dari blog ini

Tugas 5

Kodingan Login Web Html

Tugas 2