Clustering Models

Analysis and Predictive Modeling

Lecturer : Mr. Bakti Siregar, M.Sc., CDS.

awokwowk

Compiled by : Syifa Nurulfajri (52240001)

Data Science. Faculty of Digital, Design, and Business

INSTITUT TEKNOLOGI SAINS BANDUNG

2025


1. Pendahuluan

Dalam bidang analisis dan pemodelan prediktif, memahami pola yang muncul dari data sensor menjadi semakin penting, khususnya pada studi Human Activity Recognition (HAR). Pada laporan ini, saya menggunakan dataset yang direkam sendiri menggunakan aplikasi Phyphox dengan memanfaatkan sensor accelerometer pada smartphone. Smartphone ditempatkan di kantong celana depan, sehingga data yang diperoleh merepresentasikan gerakan tubuh saat melakukan aktivitas sehari-hari.

Data direkam selama kurang lebih 13 menit yang mencakup empat aktivitas utama, yaitu berjalan, duduk, berdiri, dan turun tangga. Setiap aktivitas menghasilkan pola percepatan yang berbeda pada sumbu x, y, dan z, serta pada percepatan absolut. Perbedaan pola inilah yang menjadi dasar untuk melakukan analisis clustering.

Permasalahan utama dalam studi ini adalah bagaimana mengelompokkan pola aktivitas tanpa menggunakan label aktivitas. Meskipun dataset memiliki kolom Activity, pada proses pemodelan kolom tersebut tidak digunakan agar pendekatan yang dilakukan benar-benar bersifat unsupervised. Tujuan analisis ini adalah untuk melihat apakah pola gerakan dari data accelerometer dapat membentuk cluster secara alami, serta membandingkan kemampuan Gaussian Mixture Model (GMM), Bayesian Gaussian Mixture Model, dan Hidden Markov Model (HMM) dalam menangkap struktur dan dinamika sekuensial data.

Pendekatan clustering sekuensial dipilih karena data accelerometer tidak hanya memiliki karakteristik nilai numerik, tetapi juga memiliki urutan waktu yang penting. GMM dan Bayesian GMM digunakan untuk melihat pengelompokan berbasis distribusi data, sedangkan HMM digunakan untuk memodelkan perubahan state aktivitas secara berurutan.

2. Landasan Teori

2.1 Gaussian Mixture Model (GMM)

Gaussian Mixture Model (GMM) adalah metode clustering berbasis probabilistik yang mengasumsikan bahwa data berasal dari campuran beberapa distribusi Gaussian (normal). Setiap cluster dianggap sebagai satu distribusi Gaussian.

2.1.1 Konsep Mixture of Gaussians

Dalam GMM, data dilihat sebagai gabungan dari beberapa “komponen” Gaussian, di mana setiap komponen memiliki:

  • mean
  • covariance matrix
  • mixing weight (proporsi tiap cluster)

Model kemudian mempelajari parameter-parameter ini dari data.

2.1.3 Cara Kerja Model

  1. Tentukan jumlah cluster (misal K = 3).
  2. Inisialisasi parameter Gaussian.
  3. Jalankan EM (Expectation-Maximization):
  • E-step: hitung probabilitas setiap data berasal dari tiap cluster.
  • M-step: update parameter (mean, covariance, weight) berdasarkan probabilitas tersebut.
  1. Mengulang sampai log-likelihood stabil.

2.1.4 Rumus Matematis

Distribusi Gaussian multivariat

didefinisikan sebagai:

\[ \mathcal{N}(x \mid \mu, \Sigma) = \frac{1}{(2\pi)^{d/2}|\Sigma|^{1/2}} \exp \left( -\frac{1}{2}(x-\mu)^T \Sigma^{-1}(x-\mu) \right) \]

di mana:

  • x : data berdimensi d
  • μ : mean vector
  • Σ : covariance matrix

Gaussian ini mewakili bentuk setiap cluster.

Mixture Distribution

Model GMM adalah distribusi campuran dari K Gaussian:

\[ p(x) = \sum_{k=1}^{K} \pi_k , \mathcal{N}(x \mid \mu_k, \Sigma_k) \]

dengan:

  • πₖ = mixing weight (probabilitas memilih cluster k)
  • ∑ₖ πₖ = 1
  • πₖ ≥ 0

Rumus ini menjelaskan bahwa peluang sebuah data x muncul adalah rata-rata tertimbang dari peluang di setiap Gaussian.

Log-Likelihood Function

Untuk N data, likelihood GMM adalah:

\[ \log L = \sum_{i=1}^{N} \log \left( \sum_{k=1}^{K} \pi_k \, \mathcal{N}(x_i \mid \mu_k, \Sigma_k) \right) \]

Tujuannya adalah mencari parameter θ = {πₖ, μₖ, Σₖ} yang memaksimalkan log-likelihood.

2.1.6 Parameter dalam GMM

Setiap Gaussian memiliki tiga parameter:

  1. Mean vector (μₖ): posisi pusat cluster
  2. Covariance matrix (Σₖ) : bentuk & orientasi cluster
  3. Mixing weight (πₖ) : besar kecilnya ukuran cluster (sebagai probabilitas)

Interpretasinya:

  • πₖ besar = cluster besar
  • Covariance besar = cluster lebih menyebar
  • Mean menentukan pusat cluster

2.1.7 Algoritma EM (Expectation-Maximization)

Karena log-likelihood GMM sulit dioptimasi secara langsung, digunakan algoritma EM yang terdiri dari dua langkah berulang:

E-Step (Expectation Step)

Menghitung responsibilities, yaitu probabilitas bahwa data xi berasal dari cluster k:

\[ \gamma_{ik} = \frac{ \pi_k , \mathcal{N}(x_i|\mu_k,\Sigma_k) }{ \sum_{j=1}^{K} \pi_j \mathcal{N}(x_i|\mu_j,\Sigma_j) } \]

Responsibility γik = probabilitas soft cluster.

M-Step (Maximization Step)

Update parameter menggunakan \(Y_{ik}\).

1. Update mixing weight

\[ \pi_k = \frac{N_k}{N} \]

di mana:

\[ N_k = \sum_{i=1}^{N} \gamma_{ik} \]

2. Update mean

\[ \mu_k = \frac{1}{N_k} \sum_{i=1}^{N} \gamma_{ik} x_i \]

3. Update covariance

\[ \Sigma_k = \frac{1}{N_k} \sum_{i=1}^{N} \gamma_{ik} (x_i - \mu_k)(x_i - \mu_k)^T \]

Proses EM berhenti ketika:

  • perubahan log-likelihood sangat kecil, atau
  • iterasi telah mencapai batas maksimum.

2.1.8 Kelebihan dan Kekurangan

Kelebihan

  • Soft-clustering: memberi probabilitas, bukan sekedar label
  • Lebih fleksibel dari K-Means (bisa bentuk cluster elips, tidak hanya bulat)
  • Mampu menangkap distribusi data kompleks
  • Cocok jika data memang berasal dari beberapa distribusi Gaussian
  • Termasuk probabilistic model → interpretasi mudah

Kekurangan

  • Tidak tahan terhadap outlier karena Gaussian sangat sensitif
  • Bisa “terjebak” di local optimum (solusi bergantung inisialisasi)
  • Harus menentukan jumlah cluster K terlebih dahulu
  • Berjalan lambat untuk data besar (perlu menghitung covariance)
  • Tidak cocok jika cluster tidak menyerupai Gaussian sama sekali

Cocok jika:

  • Data kira-kira mengikuti distribusi Gaussian
  • Cluster berbentuk elips, bukan bulat
  • Terdapat overlap antar-cluster
  • Dibutuhkan probabilitas keanggotaan, bukan hanya label

Tidak cocok jika:

  • Data punya outlier banyak
  • Cluster sangat tidak beraturan (non-Gaussian)
  • Dimensi data terlalu tinggi tanpa reduksi (covariance sulit stabil)

2.2 Bayesian Gaussian Mixture Model (Bayesian GMM (Mclust))

Bayesian Gaussian Mixture Model (Bayesian GMM) itu basically versi “lebih pintar dan lebih fleksibel” dari GMM biasa. Bedanya, Bayesian GMM ngasih prior ke setiap parameter. Prior itu maksudnya dugaan awal tentang suatu parameter sebelum kita lihat data apa pun (Bishop, 2006).

Jadi sebelum model ngeliat data, dia udah punya tebakan awal misalnya kira-kira mean-nya gimana, variansinya seperti apa, dan sebagainya. Setelah lihat data, dugaan itu diperbarui jadi posterior. Model jenis ini bisa belajar ketidakpastian, bukan cuma ngasih nilai “fix”.

2.2.1 Perbedaan Bayesian GMM vs GMM Biasa

  • GMM biasa = “K harus kamu tentuin, parameternya fix, gampang overfitting”.
  • Bayesian GMM = “K bisa dipelajari otomatis, parameternya berupa distribusi, lebih stabil, anti overfitting”.
Hal GMM Bayesian GMM
Jumlah cluster Ditentukan Bisa otomatis (kalau pakai Dirichlet Process) (Blei & Jordan, 2006)
Parameter Nilai tunggal Distribusi (jadi ada ketidakpastian) (Murphy, 2012)
Risiko overfitting Lumayan Lebih kecil karena ada prior
Estimasi EM Variational Inference / MCMC
Mixing weight Langsung dihitung Punya prior Dirichlet

2.2.2 Rumus

Bayesian GMM itu tetap mixture of Gaussians, tapi setiap parameternya punya prior.

1. Likelihood data

\[ p(x_n \mid z_n = k, \mu_k, \Sigma_k) = \mathcal{N}(x_n \mid \mu_k, \Sigma_k) \]

2. Campuran Gaussians

\[ p(x_n) = \sum_{k=1}^{K} \pi_k , \mathcal{N}(x_n \mid \mu_k, \Sigma_k) \]

3. Prior untuk mixing weight

\[ \pi \sim \text{Dir}(\alpha) \]

4. Prior untuk mean dan covariance

Dipake prior Normal-Inverse-Wishart (Bishop, 2006):

Mean: \[ \mu_k \mid \Sigma_k \sim \mathcal{N}(\mu_0, \tfrac{1}{\kappa_0}\Sigma_k) \]

Covariance: \[ \Sigma_k \sim \text{InvWishart}(\nu_0, \Lambda_0) \]

5. Tujuan utama (posterior)

\[ p(\pi, \mu, \Sigma, Z \mid X) \] Tapi ini rumit makanya pakai Variational Inference.

2.2.3 Cara Kerja Model

Kurang lebih alurnya gini:

  1. set dulu prior (tebakan awal model).

  2. Model mulai ngasih label cluster secara random.

  3. Model update:

    • bobot cluster (π)
    • mean tiap cluster
    • covariance
    • dan assignment tiap titik data
  4. Update dilakukan pakai Variational Inference.

  5. Diulang terus sampai stabil.

  6. Hasilnya: cluster final yang udah “matang”.

Variational Inference

Variational Inference (VI) itu cara buat “mendekati” posterior yang aslinya terlalu rumit. Daripada integrasi berat dan nggak bisa dihitung, VI mencari distribusi lain yang lebih mirip dari mudah diitung.

Secara matematis, VI nyari distribusi ( q ) yang paling mirip dengan posterior: \[ q^* = \arg \min_q KL(q(\theta),|,p(\theta \mid X)) \] (Blei & Jordan, 2006)

Keuntungan VI:

  • cepat,
  • stabil,
  • dan cocok untuk data streaming / data sensor kayak dataset Phypox kamu.

2.2.4 Kelebihan dan Kekurangan

Kelebihan Bayesian GMM

  • Bisa otomatis ngecilin cluster yang nggak penting (regularisasi dari prior).
  • Bisa ngasih sense “ketidakpastian” model, bukan cuma angka fix.
  • Lebih tahan overfitting (Bishop, 2006).
  • Cocok buat data accelerometer yang biasanya banyak noise.
  • Scikit-learn udah ada implementasinya → gampang dipake.

Kemampuan Menentukan Jumlah Cluster Otomatis

fitur bagus, terutama versi Dirichlet Process Gaussian Mixture:

  • Model awalnya ngasih banyak cluster.
  • Tapi cluster yang tidak berguna nanti otomatis dikasih bobot hampir nol (Rasmussen, 2000).
  • Jadi jumlah cluster efektif muncul sendiri berdasarkan data.

Kekurangan Bayesian GMM

  • omputasinya lebih berat daripada GMM biasa.
  • Harus mikirin prior (kadang tricky).
  • Model lebih rumit buat dijelasin ke orang.
  • Output berupa distribusi, bukan angka tunggal. interpretasinya sedikit lebih effort.

2.3 Hidden Markov Model (HMM)

HMM itu sebenarnya model yang dipakai buat baca pola data yang bentuknya urutan. Intinya kita punya sinyal atau data yang kelihatan, tapi pola yang menghasilkan sinyal itu sebenarnya datang dari “state tersembunyi”. Jadi sinyal yang kita lihat hanya “output”-nya aja.

(Rabiner, 1989)

2.3.1 Komponen HMM

1. Hidden States

Ini keadaan tersembunyi yang mau kita kelompokkan. Karena aku pakai data aktivitas (jalan, duduk, berdiri, turun tangga), maka tiap aktivitas bisa dianggap sebagai 1 state. Dalam clustering, state ini nggak dikasih label, tapi HMM akan “nemuin” sendiri polanya.

2. Transition Matrix (A)

Ini matriks yang isinya peluang pindah dari state ke state berikutnya.

\[ A = {a_{ij}} = P(q_{t+1}=j \mid q_t=i) \]

Contoh:

  • Lagi jalan → tetap jalan (probabilitas tinggi)
  • Lagi jalan → tiba-tiba duduk (lebih kecil)
  • Lagi duduk → berdiri (sedang)

3. Emission Distribution (B)

Ini “hubungan” antara state dengan sinyal yang kita lihat.

\[ b_j(o_t) = \mathcal{N}(o_t \mid \mu_j, \Sigma_j) \]

Jadi tiap state punya pola rataan & sebaran sinyalnya sendiri.

4. Initial Probability (π)

\[ \pi_i = P(q_1 = i) \]

Ini peluang state pertama kali sebelum urutan dimulai.

2.3.2 Rumus Inti / Model Matematis

\[ P(O \mid \lambda) = \sum_{q_1,\ldots,q_T} \pi_{q_1} , b_{q_1}(o_1) \prod_{t=2}^{T} a_{q_{t-1}, q_t} , b_{q_t}(o_t) \]

Dengan:

  • ( A ): transisi
  • ( B ): distribusi emisi
  • ( ): state awal

atau disebut:

\[ \lambda = (A, B, \pi) \]

HMM punya 3 masalah utama (Rabiner, 1989):

  1. Evaluation → Forward
  2. Decoding → Viterbi
  3. Learning → Baum-Welch (EM)

2.3.3 Cara Kerja HMM

  1. Siapin datanya dulu

    • Ambil semua file .csv
    • Gabungkan jadi satu time-series yang lebih panjang.
    • Normalisasi sedikit biar sinyal rapi.
  2. Tentukan jumlah state

    • Bisa set sesuai jumlah aktivitas.
    • atau biarkan model cari sendiri (unsupervised).
  3. Inisialisasi model

    • HMM mulai dengan parameter acak atau hasil clustering awal dulu.
  4. Training

    • Algoritma Baum-Welch muter bolak-balik memperbaiki parameter sampai stabil.
    • Prosesnya mirip EM: hitung ekspektasi, update, ulangi.
  5. Decoding

    • Setelah training, model nge-predict state dari tiap titik waktu.
    • Hasilnya berupa urutan label state untuk seluruh sinyal kamu.
  6. Clustering sequensial selesai

    • Tiap state bisa di-interpretasi sebagai aktivitas tertentu.

2.3.4 Parameter Estimasi (cara model belajar)

Selama training, HMM ngitung dua hal penting:

  1. Gamma (γ) → peluang ada di state tertentu pada waktu t \[ \gamma_t(i) = P(q_t = i \mid O, \lambda) \]

  2. Xi (ξ) → peluang pindah dari state i ke state j \[ \xi_t(i,j) = P(q_t=i,,q_{t+1}=j \mid O, \lambda) \]

Setelah dapat γ dan ξ, parameter ( A ), ( _j ), ( _j ), dan ( ) diperbarui. Ulangi sampai konvergen.

2.3.5 Kelebihan & Kekurangan

Kelebihan

  • Bagus untuk data deret waktu kayak accelerometer.
  • Bisa nangkap pola transisi antar aktivitas.
  • Bisa dipakai tanpa label (unsupervised).
  • Emisi Gaussian cocok untuk data sensor tubuh (Bulling et al., 2014).

Kekurangan

  • Harus tentuin jumlah state di awal.
  • Hasil bisa beda-beda kalau inisialisasi awalnya jelek.
  • Sensitif sama noise.
  • Kurang bagus kalau hubungan antar data jauh-jauhan (long-term dependency).

3. Data dan Pra-Proses

3.1 Dataset

Dataset yang digunakan dalam penelitian ini merupakan data primer yang direkam secara mandiri menggunakan aplikasi Phyphox. Pengambilan data dilakukan dengan memanfaatkan sensor accelerometer pada smartphone yang diletakkan di kantong celana depan, sehingga pergerakan yang terekam mendekati kondisi aktivitas sehari-hari secara alami.

Data direkam selama kurang lebih 12–13 menit dan mencakup empat jenis aktivitas, yaitu berjalan, duduk, berdiri, dan turun tangga. Selama perekaman, sensor accelerometer mencatat percepatan pada tiga sumbu utama (x, y, z) serta percepatan absolut yang merepresentasikan magnitude total getaran.

Pemilihan dataset ini didasarkan pada tujuan utama penelitian, yaitu menguji kemampuan model GMM, Bayesian GMM, dan HMM dalam melakukan clustering sekuensial. Dengan menggunakan data hasil perekaman sendiri, struktur sekuensial aktivitas dapat dikontrol dan dianalisis secara langsung, sehingga lebih sesuai untuk mengevaluasi bagaimana model mengenali pola laten tanpa bantuan label.

Struktur Kolom Dataset

Dataset terdiri dari kolom-kolom berikut:

  • Time (s) Menunjukkan waktu perekaman dalam satuan detik.

  • Acceleration x (m/s²) Percepatan pada sumbu x (arah horizontal).

  • Acceleration y (m/s²) Percepatan pada sumbu y (arah vertikal relatif terhadap perangkat).

  • Acceleration z (m/s²) Percepatan pada sumbu z (arah kedalaman).

  • Absolute acceleration (m/s²) Magnitude percepatan total yang dihitung dari ketiga sumbu, digunakan untuk menggambarkan intensitas gerakan.

  • Activity Label aktivitas aktual (digunakan hanya untuk interpretasi, tidak digunakan dalam proses clustering).

Tipe variabel terdiri dari numerik dan karakter.

Jumlah data yang diperoleh adalah 3.363 observasi


3.2 Eksplorasi Data Analis

Exploratory Data Analysis (EDA) dilakukan untuk memahami karakteristik awal data sebelum masuk ke tahap pemodelan. Proses ini bertujuan untuk mengidentifikasi kondisi data, distribusi nilai, keberadaan outlier, serta hubungan antar variabel, sehingga dapat menentukan langkah pra-proses yang tepat.

3.2.1 Missing value dan tipe variabel

Bagian ini dilakukan untuk cek apakah ada nilai kosong dan memastikan tipe variabel sudah sesuai sebelum dipakai di model.

Hasil yang diperoleh: Berdasarkan hasil pemeriksaan, seluruh kolom numerik tidak memiliki missing value (0 missing). Dataset terdiri dari:

  • Variabel numerik: Time dan seluruh kolom percepatan
  • Variabel karakter: Activity

Interpretasi hasil: Tidak ditemukannya missing value menunjukkan bahwa proses perekaman berjalan dengan baik dan data bersifat lengkap. Hal ini menjadi kondisi ideal untuk proses clustering karena tidak ada distorsi akibat nilai kosong.

Pengaruh terhadap tahap selanjutnya: Karena data bersih dari missing value, tidak diperlukan proses imputasi. Data dapat langsung digunakan untuk scaling, segmentasi, dan ekstraksi fitur.

Kelayakan data: Data dinilai sangat layak untuk dilanjutkan ke tahap pra-proses dan pemodelan.

3.2.2 Distribusi Variabel Numerik

Analisis distribusi dilakukan untuk memahami pola sebaran nilai percepatan dan mengidentifikasi karakteristik sinyal sensor.

Hasil dan Interpretasi

  • Acceleration x, y, dan z menunjukkan distribusi yang tidak normal dan cenderung multimodal. Hal ini mencerminkan adanya perbedaan pola gerakan antar aktivitas, seperti gerakan dinamis saat berjalan dan gerakan statis saat duduk atau berdiri.
  • Absolute acceleration menunjukkan puncak frekuensi pada nilai tertentu dengan ekor panjang di sisi kanan, yang menandakan adanya aktivitas dengan intensitas gerakan lebih tinggi, seperti berjalan dan turun tangga.
  • Time (s) menunjukkan distribusi yang relatif merata sesuai dengan proses perekaman sekuensial.

Pengaruh terhadap tahap selanjutnya: Distribusi yang tidak normal mengindikasikan bahwa asumsi statistik sederhana kurang sesuai. Oleh karena itu:

  • Scaling menjadi penting
  • Feature extraction diperlukan untuk merangkum pola sinyal
  • Model berbasis probabilistik seperti GMM dan HMM menjadi relevan

Kelayakan data: Meskipun distribusi tidak normal, kondisi ini wajar dan diharapkan pada data sensor gerak, sehingga data tetap sangat sesuai untuk pemodelan clustering.

3.2.3 Outlier

Analisis outlier dilakukan untuk melihat adanya nilai ekstrem yang berpotensi memengaruhi proses pemodelan.

Interpretasi hasil :

Boxplot menunjukkan keberadaan outlier pada hampir semua variabel percepatan, terutama pada absolute acceleration. Outlier ini muncul akibat:

  • Gerakan mendadak
  • Perubahan aktivitas
  • Getaran intens saat berjalan atau turun tangga

Pengaruh terhadap tahap selanjutnya: Outlier tidak dihapus, karena pada konteks HAR, nilai ekstrem justru membawa informasi penting mengenai transisi dan intensitas aktivitas.

Kelayakan data: Keberadaan outlier dianggap informative, bukan kesalahan, sehingga data tetap layak digunakan.

3.2.4 Korelasi

Analisis korelasi bertujuan untuk memahami hubungan antar variabel numerik.

Heatmap korelasi menunjukkan:

  • Korelasi yang cukup kuat antar sumbu percepatan (x, y, z)
  • Absolute acceleration memiliki korelasi tinggi dengan ketiga sumbu
  • Time memiliki korelasi yang rendah terhadap percepatan, sesuai dengan sifatnya sebagai indeks sekuensial

Pengaruh terhadap tahap selanjutnya: Adanya korelasi antar fitur menunjukkan adanya redundansi informasi. Oleh karena itu, reduksi dimensi menggunakan PCA menjadi langkah yang relevan untuk visualisasi dan interpretasi cluster.

Kelayakan data: Struktur korelasi yang jelas menunjukkan bahwa data memiliki pola yang dapat dieksplorasi oleh model clustering.

3.3 Pra-Proses

3.3.1 Scaling

Scaling merupakan proses standarisasi nilai fitur agar berada pada skala yang sama. Tujuan utama dari proses ini adalah untuk mencegah fitur dengan skala besar mendominasi fitur lainnya dalam proses pemodelan.

Berdasarkan hasil EDA sebelumnya, distribusi variabel numerik memiliki rentang nilai yang berbeda-beda. Oleh karena itu, proses scaling menjadi sangat penting, terutama karena model seperti GMM dan HMM sensitif terhadap skala data.

Hasil scaling menunjukkan bahwa distribusi data setelah scaling menjadi lebih terpusat di sekitar nol dengan varians yang lebih seragam. Bentuk distribusi secara umum tetap terjaga, namun rentang nilainya menjadi lebih terkendali. Hal ini menandakan bahwa proses scaling berhasil dengan baik.

Scaling yang baik ditandai dengan tidak adanya fitur yang memiliki varians ekstrem dibandingkan fitur lain. Berdasarkan hasil yang diperoleh, proses scaling sudah memenuhi syarat tersebut sehingga dapat dilanjutkan ke tahap berikutnya.

3.3.2 Sliding Window Segmentation

Sliding window segmentation merupakan teknik untuk membagi data time series menjadi potongan-potongan kecil berbasis jendela waktu.

Tujuan dari proses ini adalah untuk menangkap pola lokal dalam rentang waktu tertentu yang lebih representatif terhadap aktivitas. Proses ini penting karena aktivitas manusia tidak dapat direpresentasikan hanya oleh satu titik data.

## [1] 133

Berdasarkan proses yang dilakukan, diperoleh sebanyak 133 window data. Jumlah ini menunjukkan bahwa data telah tersegmentasi dengan cukup baik untuk merepresentasikan variasi aktivitas.

Hasil segmentasi ini sangat berpengaruh terhadap tahap feature extraction dan pemodelan HMM, karena setiap window akan diperlakukan sebagai satu unit observasi.

3.3.3 Feature Extraction

Feature extraction bertujuan untuk merangkum informasi penting dari setiap window data menjadi sejumlah fitur numerik yang lebih informatif.

Fitur yang dihasilkan menunjukkan variasi distribusi yang cukup beragam. Beberapa fitur memiliki distribusi yang mendekati normal, sementara fitur lainnya cenderung skewed. Hal ini masih dapat diterima karena model berbasis Gaussian masih mampu menyesuaikan distribusi tersebut.

Hasil ekstraksi fitur menunjukkan bahwa setiap fitur memiliki karakteristik yang berbeda dan saling melengkapi. Hal ini menandakan bahwa fitur yang dihasilkan sudah cukup representatif untuk membedakan pola aktivitas.

Secara umum, hasil feature extraction sudah baik dan siap digunakan untuk tahap reduksi dimensi dan pemodelan. Jika diperlukan, alternatif seperti pemilihan fitur atau transformasi tambahan dapat dipertimbangkan.


3.4 Reduksi Dimensi

Pada tahap ini dilakukan reduksi dimensi menggunakan Principal Component Analysis (PCA). PCA dipilih karena data hasil ekstraksi fitur accelerometer memiliki banyak variabel numerik yang saling berkorelasi. Jika seluruh fitur langsung digunakan, maka proses clustering berisiko menjadi tidak optimal akibat curse of dimensionality dan noise.

Tujuan utama PCA dalam penelitian ini adalah:

  • Mengurangi jumlah dimensi data tanpa menghilangkan informasi penting.
  • Membuat struktur data lebih mudah divisualisasikan.
  • Meningkatkan performa dan stabilitas model clustering

Berdasarkan hasil explained variance :

  • PC1 menjelaskan sekitar 41.84% variasi data
  • PC2 menambah 24.64% variasi
  • Sehingga dua komponen utama pertama sudah menjelaskan sekitar 66.48% variasi total data
  • Hingga PC4, cumulative variance mencapai hampir 90%

Hasil ini menunjukkan bahwa sebagian besar informasi data dapat direpresentasikan hanya dengan beberapa komponen utama saja. Oleh karena itu, PCA dinilai cukup efektif dan layak digunakan sebagai representasi data untuk tahap clustering selanjutnya.

Visualisasi data pada ruang PC1 dan PC2 juga menunjukkan adanya pola pengelompokan alami, meskipun belum terpisah secara tegas. Hal ini mengindikasikan bahwa metode clustering berbasis distribusi dan sekuensial masih diperlukan untuk menangkap struktur data secara lebih mendalam.

4. Implementasi Model

4.1 Gaussian Mixture Model (GMM)

Model Gaussian Mixture Model (GMM) dibangun menggunakan package mclust, yang secara otomatis memilih:

  • Jumlah cluster optimal
  • Tipe kovarians terbaik berdasarkan Bayesian Information Criterion (BIC).
## ---------------------------------------------------- 
## Gaussian finite mixture model fitted by EM algorithm 
## ---------------------------------------------------- 
## 
## Mclust VEV (ellipsoidal, equal shape) model with 8 components: 
## 
##  log-likelihood   n  df      BIC      ICL
##        5334.655 133 464 8400.188 8400.187
## 
## Clustering table:
##  1  2  3  4  5  6  7  8 
## 11 17  9  4 32 31 19 10

Model terbaik yang diperoleh adalah:

  • Model VEV (ellipsoidal, equal shape)
  • Jumlah cluster: 8
  • Log-likelihood: 5334.655
  • BIC: 8400.188

Distribusi data pada setiap cluster relatif tidak seimbang, namun masih wajar untuk data aktivitas manusia yang dinamis.

4.1.1 PCA + cluster

Visualisasi clustering pada ruang PCA menunjukkan bahwa:

  • Beberapa cluster terlihat cukup rapat dan terpisah, terutama pada area PC1 rendah
  • Cluster dengan nilai PC1 tinggi merepresentasikan aktivitas dengan intensitas gerak lebih besar
  • Terdapat overlap antar cluster, yang menunjukkan bahwa beberapa aktivitas memiliki pola percepatan yang mirip

Hal ini wajar karena aktivitas seperti berdiri dan duduk dapat menghasilkan sinyal accelerometer yang tidak jauh berbeda.

4.1.2 cluster vc Waktu

Visualisasi cluster terhadap waktu menunjukkan bahwa:

  • Terjadi perpindahan cluster secara bertahap, bukan acak
  • Beberapa cluster bertahan cukup lama, menandakan aktivitas yang stabil
  • Terdapat transisi cluster yang cepat pada bagian tertentu, kemungkinan merepresentasikan perubahan aktivitas

Namun, karena GMM tidak mempertimbangkan ketergantungan waktu, beberapa transisi terlihat kurang halus.


4.2 Bayesian Gaussian Mixture Model (Bayesian GMM)

Pemilihan Parameter dan Proses Fitting

Bayesian GMM dibangun dengan memberikan rentang jumlah cluster G = 1 hingga 10, dan model memilih struktur terbaik secara otomatis menggunakan prior Bayesian.

## ---------------------------------------------------- 
## Gaussian finite mixture model fitted by EM algorithm 
## ---------------------------------------------------- 
## 
## Mclust VVV (ellipsoidal, varying volume, shape, and orientation) model with 5
## components: 
## 
## Prior: defaultPrior() 
## 
##  log-likelihood   n  df     BIC     ICL
##        1854.502 133 329 2100.08 2100.08
## 
## Clustering table:
##  1  2  3  4  5 
## 28 13 32 31 29

Hasil model terbaik:

  • Model VVV
  • Jumlah cluster: 5
  • Log-likelihood: 1854.502
  • BIC dan ICL yang lebih stabil

Distribusi cluster lebih seimbang dibandingkan GMM biasa.

4.2.1 PCA + cluster

Pada visualisasi PCA:

  • Cluster terlihat lebih ringkas dan terstruktur
  • Overfitting yang muncul pada GMM biasa berkurang
  • Aktivitas dengan intensitas tinggi dan rendah lebih jelas terpisah

Ini menunjukkan bahwa Bayesian GMM lebih robust dalam menentukan jumlah cluster yang relevan.

4.2.2 cluster vs Waktu

Plot cluster terhadap waktu menunjukkan:

  • Segmentasi aktivitas yang lebih konsisten
  • Lebih sedikit perubahan cluster yang terlalu cepat
  • Lebih mudah diinterpretasikan sebagai urutan aktivitas nyata

Hal ini menunjukkan bahwa Bayesian GMM lebih baik dalam menjaga stabilitas temporal, meskipun tetap belum secara eksplisit memodelkan urutan waktu.


4.3 Hidden Markov Model (HMM)

Hidden Markov Model (HMM) digunakan untuk memodelkan pola sekuensial data. Jumlah state ditentukan sebanyak 3 state, dengan asumsi aktivitas utama dapat direpresentasikan dalam beberapa kondisi laten.

Setiap fitur dimodelkan menggunakan distribusi Gaussian, dan proses pelatihan dilakukan dengan algoritma EM.

## converged at iteration 3 with logLik: 2490.983

Model berhasil konvergen pada iterasi ke-5 dengan:

  • Log-likelihood: 2365.873

4.3.1 PCA + HMM state

Visualisasi state pada ruang PCA menunjukkan bahwa:

  • State HMM memiliki wilayah yang lebih luas
  • Tidak seketat cluster GMM, karena HMM lebih fokus pada transisi antar state
  • Satu state dominan merepresentasikan aktivitas statis, sedangkan state lain menangkap aktivitas dinamis

4.3.2 State vs waktu

Visualisasi state terhadap waktu merupakan keunggulan utama HMM, karena:

  • Perubahan state terlihat sangat halus dan logis
  • State bertahan dalam interval waktu yang panjang
  • Transisi state mencerminkan perubahan aktivitas yang realistis

Hal ini menunjukkan bahwa HMM sangat cocok untuk data sensor berurutan, seperti accelerometer, karena mampu menangkap dinamika temporal yang tidak dapat dimodelkan oleh GMM.

5. Evaluasi dan Perbandingan

Evaluasi model dilakukan untuk menilai kualitas hasil clustering yang dihasilkan oleh masing-masing metode. Karena pendekatan yang digunakan bersifat unsupervised, maka evaluasi dilakukan menggunakan metrik internal, yaitu:

  • Silhouette Score
  • Davies–Bouldin Index (DBI)
  • Calinski–Harabasz Index (CH)
  • Log-Likelihood untuk HMM.

5.1 Gaussian Mixture Model (GMM)

Silhouette Score bernilai sekitar 0.51, yang menunjukkan bahwa Cluster yang terbentuk sudah cukup terpisah. Namun, masih terdapat overlap antar cluster, terutama pada aktivitas dengan pola gerakan yang mirip. Nilai ini dapat dikategorikan sebagai kualitas clustering sedang, artinya GMM mampu menangkap struktur dasar data, tetapi belum optimal.

Calinski–Harabasz Index (CH) sebesar 82.25 menunjukkan bahwa Rasio variasi antar cluster terhadap variasi dalam cluster masih tergolong cukup. Pemisahan cluster belum terlalu kuat

Secara umum, GMM berhasil membentuk cluster berdasarkan distribusi data, namun masih sensitif terhadap Noise dan Overfitting akibat jumlah cluster yang relatif banyak (8 cluster)

Gaussian Mixture Model mampu menangkap pola distribusi data accelerometer dengan cukup baik, namun kualitas cluster masih sedang dan kurang stabil ketika dilihat dari sisi interpretasi temporal.

5.2 Bayesian Gaussian Mixture Model (Bayesian GMM)

Silhouette Score yang lebih tinggi dibanding GMM menunjukkan bahwa Cluster yang terbentuk lebih kompak dan Jarak antar cluster lebih jelas. Ini menandakan bahwa Bayesian GMM lebih baik dalam menentukan struktur cluster yang alami pada data.

Calinski–Harabasz Index sebesar 100.06, yang lebih tinggi dari GMM, mengindikasikan Pemisahan antar cluster lebih baik dan Variasi dalam cluster lebih kecil

Keunggulan utama Bayesian GMM berasal dari:

  • Mekanisme Bayesian yang mengontrol kompleksitas model
  • Penentuan jumlah cluster yang lebih optimal (5 cluster)

Bayesian GMM memberikan hasil clustering lebih baik dan lebih stabil dibandingkan GMM biasa. Model ini mampu menghindari overfitting dan menghasilkan cluster yang lebih mudah diinterpretasikan.

5.3 Hidden Markov Model (HMM)

Log-Likelihood yang relatif tinggi menunjukkan bahwa Model HMM mampu menjelaskan data dengan baikdan Struktur state yang dipelajari sesuai dengan pola sekuensial data

Berbeda dengan GMM dan Bayesian GMM, HMM tidak dievaluasi menggunakan Silhouette, DBI, dan CH, karena HMM berfokus pada urutan waktu

Evaluasi utamanya adalah seberapa baik model memodelkan transisi state

Hasil visualisasi state vs waktu sebelumnya juga mendukung hasil ini, di mana State berubah secara halus dan Tidak terjadi perpindahan state yang acak

Hidden Markov Model sangat baik dalam menangkap dinamika temporal aktivitas, meskipun tidak secara eksplisit membentuk cluster sekompak GMM. Model ini unggul untuk data sensor berurutan.

5.4 Perbandingan AntarModel

Berdasarkan seluruh hasil evaluasi, dapat disimpulkan bahwa:

GMM:

  • Baik untuk eksplorasi awal
  • Namun cenderung overfitting dan kurang stabil secara temporal

Bayesian GMM:

  • Memberikan kualitas clustering terbaik berdasarkan Silhouette dan CH Index
  • Lebih robust dan seimbang

HMM:

  • Tidak unggul dalam pemisahan cluster statis
  • Namun paling baik dalam memodelkan urutan waktu dan perubahan aktivitas

Secara keseluruhan:

Jika fokus pada kualitas cluster, Bayesian GMM adalah pilihan terbaik

Jika fokus pada dinamika aktivitas dari waktu ke waktu, HMM adalah model yang paling sesuai

6. Kesimpulan dan rekomendasi

6.1 Kesimpulan

Penelitian ini bertujuan untuk menganalisis kemampuan beberapa metode clustering dalam mengelompokkan data Human Activity Recognition (HAR) berbasis sinyal accelerometer tanpa menggunakan label aktivitas (unsupervised learning). Tiga metode yang dibandingkan adalah Gaussian Mixture Model (GMM), Bayesian Gaussian Mixture Model (Bayesian GMM), dan Hidden Markov Model (HMM).

Berdasarkan seluruh tahapan analisis, mulai dari eksplorasi data, pra-proses, implementasi model, hingga evaluasi, diperoleh beberapa kesimpulan utama sebagai berikut:

1. Gaussian Mixture Model (GMM) GMM mampu menangkap struktur dasar distribusi data accelerometer dan membentuk beberapa cluster yang merepresentasikan variasi aktivitas. Namun, hasil evaluasi menunjukkan bahwa kualitas cluster masih berada pada tingkat sedang. Nilai Silhouette yang tidak terlalu tinggi serta jumlah cluster yang relatif banyak (8 cluster) mengindikasikan adanya overlap antar cluster dan potensi overfitting. Selain itu, karena GMM tidak mempertimbangkan aspek waktu, transisi cluster terhadap waktu masih terlihat kurang halus.

2. Bayesian Gaussian Mixture Model (Bayesian GMM) Bayesian GMM memberikan hasil clustering paling baik secara keseluruhan untuk problem ini. Nilai Silhouette Score dan Calinski–Harabasz Index yang lebih tinggi dibandingkan GMM menunjukkan bahwa cluster yang terbentuk lebih kompak, stabil, dan mudah diinterpretasikan. Mekanisme Bayesian memungkinkan model mengontrol kompleksitas dan menentukan jumlah cluster yang lebih optimal (5 cluster), sehingga risiko overfitting dapat diminimalkan. Model ini sangat cocok untuk data accelerometer yang mengandung noise dan variasi pola gerakan.

3. Hidden Markov Model (HMM) HMM menunjukkan keunggulan utama dalam memodelkan dinamika temporal data. Hasil visualisasi state terhadap waktu memperlihatkan transisi yang halus dan realistis, sesuai dengan perubahan aktivitas manusia yang sebenarnya. Meskipun HMM tidak menghasilkan cluster sekompak GMM atau Bayesian GMM pada ruang fitur statis, nilai log-likelihood yang tinggi menandakan bahwa model mampu menjelaskan struktur sekuensial data dengan baik.

Secara umum, tidak ada satu model yang “paling unggul untuk semua tujuan”, karena masing-masing memiliki fokus yang berbeda. Namun, untuk kasus HAR berbasis accelerometer seperti pada penelitian ini:

Bayesian GMM adalah metode terbaik untuk tujuan clustering statis, karena menghasilkan kualitas cluster paling baik dan stabil.

HMM adalah metode terbaik untuk analisis sekuensial, karena mampu menangkap perubahan aktivitas dari waktu ke waktu secara natural.


6.2 Rekomendasi

Berdasarkan hasil penelitian, beberapa rekomendasi yang dapat diberikan adalah sebagai berikut:

Untuk penelitian yang berfokus pada pengelompokan aktivitas tanpa mempertimbangkan urutan waktu secara eksplisit, disarankan menggunakan Bayesian Gaussian Mixture Model, karena lebih robust terhadap noise dan mampu menentukan jumlah cluster yang optimal secara otomatis.

Untuk aplikasi yang membutuhkan pemodelan transisi aktivitas, seperti monitoring aktivitas harian atau deteksi perubahan perilaku, Hidden Markov Model (HMM) sangat direkomendasikan karena mampu memodelkan dinamika temporal dengan baik.

Pada penelitian selanjutnya, dapat dilakukan:

  • Eksperimen dengan jumlah state HMM yang berbeda untuk melihat pengaruhnya terhadap interpretasi aktivitas.
  • Penambahan fitur temporal atau fitur domain-frekuensi (misalnya FFT) untuk meningkatkan representasi sinyal.
  • Kombinasi pendekatan, seperti GMM/HMM hybrid, untuk menggabungkan kekuatan clustering distribusional dan pemodelan sekuensial.

Dengan demikian, penelitian ini menunjukkan bahwa pemilihan metode clustering harus disesuaikan dengan karakteristik data dan tujuan analisis, khususnya pada data sensor berurutan seperti accelerometer.

7. Referensi

[1] C. M. Bishop, Pattern Recognition and Machine Learning. New York, NY, USA: Springer, 2006.

[2] K. P. Murphy, Machine Learning: A Probabilistic Perspective. Cambridge, MA, USA: MIT Press, 2012.

[3] D. M. Blei and M. I. Jordan, “Variational inference for Dirichlet process mixtures,” Bayesian Analysis, vol. 1, no. 1, pp. 121–143, 2006.

[4] C. E. Rasmussen, “The infinite Gaussian mixture model,” in Advances in Neural Information Processing Systems (NIPS), Denver, CO, USA, 2000.

[5] Scikit-learn Developers, “BayesianGaussianMixture,” Scikit-learn Documentation, 2024. [Online]. Available: https://scikit-learn.org/stable/modules/generated/sklearn.mixture.BayesianGaussianMixture.html

[6] L. R. Rabiner, “A tutorial on hidden Markov models and selected applications in speech recognition,” Proceedings of the IEEE, vol. 77, no. 2, pp. 257–286, 1989.

[7] A. Bulling, U. Blanke, and B. Schiele, “A tutorial on human activity recognition using body-worn inertial sensors,” ACM Computing Surveys, vol. 46, no. 3, pp. 1–33, 2014.

[8] Bookdown, “Probabilistic clustering,” 2023. [Online]. Available: https://bookdown.org/content/a142b172-69b2-436d-bdb0-9da6d046a0f9/04-Clustering.html