TA/web_JMW/docs/penjelasan-contoh-input-clu...

5.5 KiB

Penjelasan Contoh Input Harga, Tahun, dan Mesin CC pada Rekomendasi K-Means

1. Gambaran Umum

Fitur rekomendasi mobil menggunakan metode K-Means untuk mengelompokkan data mobil berdasarkan kemiripan atribut numerik. Atribut utama yang digunakan sebagai fitur perhitungan adalah:

harga, tahun, mesin_cc

Ketiga atribut tersebut dipakai karena dapat mewakili karakteristik utama mobil bekas:

  • Harga menunjukkan kisaran budget atau kemampuan beli pengguna.
  • Tahun menunjukkan usia atau kebaruan mobil.
  • Mesin CC menunjukkan kapasitas mesin mobil.

Ketika pengguna memasukkan harga, tahun, dan mesin cc, sistem akan mencari mobil yang sesuai dengan input tersebut. Data mobil yang tersedia akan diproses dalam model K-Means untuk menentukan kelompok atau cluster yang paling sesuai.

2. Contoh Input Pengguna

Misalnya pengguna memasukkan data berikut:

Harga/Budget  : Rp 200.000.000
Tahun Minimal : 2018
Mesin CC      : 1500

Artinya pengguna ingin mencari mobil dengan harga maksimal Rp 200.000.000, tahun minimal 2018, dan kapasitas mesin yang mendekati 1500 cc.

3. Contoh Data Mobil

Misalnya terdapat lima data mobil yang memenuhi batas budget dan tahun:

Kode Mobil Harga Tahun Mesin CC
A Rp 130.000.000 2018 1200
B Rp 150.000.000 2019 1500
C Rp 170.000.000 2020 1500
D Rp 190.000.000 2021 1800
E Rp 200.000.000 2022 2000

Setiap mobil kemudian direpresentasikan ke dalam bentuk fitur numerik:

A = [130000000, 2018, 1200]
B = [150000000, 2019, 1500]
C = [170000000, 2020, 1500]
D = [190000000, 2021, 1800]
E = [200000000, 2022, 2000]

4. Penentuan Centroid Awal

Dalam K-Means, centroid adalah titik pusat dari sebuah cluster. Pada awal proses, sistem menentukan centroid awal. Misalnya jumlah cluster yang digunakan adalah 2, maka contoh centroid awal dapat berupa:

Centroid 0 = [130000000, 2018, 1200]
Centroid 1 = [200000000, 2022, 2000]

Centroid awal ini menjadi acuan sementara untuk menentukan mobil mana yang paling dekat dengan masing-masing cluster.

5. Proses Pemilihan Cluster

Setiap mobil dihitung jaraknya terhadap centroid. Mobil akan masuk ke cluster dengan jarak paling dekat.

Contoh hasil pengelompokan awal:

Cluster 0:
A = [130000000, 2018, 1200]
B = [150000000, 2019, 1500]
C = [170000000, 2020, 1500]

Cluster 1:
D = [190000000, 2021, 1800]
E = [200000000, 2022, 2000]

Mobil A, B, dan C lebih dekat dengan Centroid 0, sedangkan mobil D dan E lebih dekat dengan Centroid 1.

6. Pergeseran Centroid

Setelah anggota cluster terbentuk, centroid baru dihitung berdasarkan rata-rata nilai setiap fitur dari anggota cluster tersebut.

Centroid Baru Cluster 0

Anggota Cluster 0:

A = [130000000, 2018, 1200]
B = [150000000, 2019, 1500]
C = [170000000, 2020, 1500]

Perhitungan centroid baru:

Harga    = (130000000 + 150000000 + 170000000) / 3
         = 150000000

Tahun    = (2018 + 2019 + 2020) / 3
         = 2019

Mesin CC = (1200 + 1500 + 1500) / 3
         = 1400

Maka centroid baru untuk Cluster 0 adalah:

Centroid 0 baru = [150000000, 2019, 1400]

Centroid Baru Cluster 1

Anggota Cluster 1:

D = [190000000, 2021, 1800]
E = [200000000, 2022, 2000]

Perhitungan centroid baru:

Harga    = (190000000 + 200000000) / 2
         = 195000000

Tahun    = (2021 + 2022) / 2
         = 2021.5

Mesin CC = (1800 + 2000) / 2
         = 1900

Maka centroid baru untuk Cluster 1 adalah:

Centroid 1 baru = [195000000, 2021.5, 1900]

Pergeseran centroid terjadi karena titik pusat cluster diperbarui mengikuti rata-rata anggota cluster. Proses ini akan diulang sampai posisi cluster stabil atau anggota cluster tidak berubah lagi.

7. Pemilihan Hasil Rekomendasi

Setelah cluster terbentuk, sistem memilih mobil yang paling sesuai dengan input pengguna. Dalam contoh ini, input pengguna adalah:

[200000000, 2018, 1500]

Mobil yang memiliki harga di bawah atau mendekati budget, tahun sesuai, dan mesin cc mendekati 1500 akan mendapat skor rekomendasi yang lebih baik.

Contoh mobil yang cocok:

C = [170000000, 2020, 1500]

Mobil C dapat menjadi rekomendasi yang baik karena:

  • Harga masih di bawah budget Rp 200.000.000.
  • Tahun 2020 lebih baru dari batas minimal 2018.
  • Mesin 1500 cc sesuai dengan input pengguna.

8. Hubungan dengan Kode Program

Pada kode API Flask, fitur yang digunakan untuk K-Means terdapat pada fungsi berikut:

def car_features(car):
    return [car["harga"], car["tahun"], car["mesin_cc"]]

Fungsi tersebut menunjukkan bahwa proses clustering menggunakan tiga atribut utama, yaitu harga, tahun, dan mesin cc.

Proses pergeseran centroid terdapat pada bagian berikut:

new_centroids.append(
    [sum(member[column] for member in members) / len(members) for column in range(len(vectors[0]))]
)

centroids = new_centroids

Kode tersebut menghitung rata-rata anggota cluster untuk membentuk centroid baru.

9. Kesimpulan

Berdasarkan contoh di atas, input harga, tahun, dan mesin cc dapat digunakan sebagai acuan dalam proses rekomendasi mobil. K-Means akan mengelompokkan data mobil berdasarkan kemiripan harga, tahun, dan kapasitas mesin. Setelah cluster terbentuk, centroid akan bergeser mengikuti rata-rata anggota cluster sampai hasil pengelompokan stabil.

Dengan demikian, fitur rekomendasi dapat memberikan hasil yang lebih sesuai karena mempertimbangkan budget pengguna, batas tahun kendaraan, dan kapasitas mesin yang diinginkan.