Panduan Lengkap: Contoh Soal Hidden Markov Model dan Cara Menyelesaikannya Langkah demi Langkah

Dunia data science dan machine learning sering kali berurusan dengan urutan data yang terlihat, namun didorong oleh proses yang tidak terlihat. Di sinilah Hidden Markov Model (HMM) menjadi bintang utamanya. Baik Anda seorang mahasiswa yang sedang menghadapi ujian pengenalan pola atau seorang praktisi yang ingin memperdalam algoritma pengenalan suara, memahami cara kerja HMM secara manual adalah kunci penguasaan materi.

Baca juga: Panduan Lengkap dan Contoh Soal TPA Pola Gambar: Strategi Jitu Taklukkan Tes Figural

Apa Itu Hidden Markov Model?

Sebelum masuk ke contoh soal, mari kita samakan persepsi. HMM adalah model statistik di mana sistem diasumsikan sebagai proses Markov dengan parameter yang tidak diketahui (tersembunyi). Intinya, kita melihat “hasil” (observasi), tetapi kita tidak melihat “penyebab” (state) secara langsung.

Terdapat tiga komponen utama dalam HMM:

  1. States ($S$): Kondisi yang tersembunyi (misal: cuaca).
  2. Observations ($O$): Hal yang bisa kita lihat (misal: aktivitas seseorang).
  3. Probabilitas: Terdiri dari probabilitas transisi (pindah antar state) dan probabilitas emisi (peluang observasi muncul dari state tertentu).

Komponen Formal HMM

Untuk menyelesaikan soal HMM, Anda harus akrab dengan notasi berikut:

🔖 Baca juga:
Bansos Februari 2026 Wilayah Sumatera: Pastikan Data Anda Sinkron dengan Pusat
  • A (Transition Probability Matrix): Peluang berpindah dari satu state ke state lainnya.
  • B (Emission Probability Matrix): Peluang munculnya observasi tertentu pada state tertentu.
  • $\pi$ (Initial Probability Distribution): Peluang sistem dimulai pada state tertentu.

Contoh Soal: Prediksi Cuaca Berdasarkan Aktivitas

Bayangkan seorang teman Anda tinggal di kota lain. Anda tidak tahu cuaca di sana (Hidden States: Cerah atau Hujan), tetapi Anda tahu aktivitasnya setiap hari melalui media sosial (Observations: Jalan-jalan, Belanja, atau Bersih-bersih).

Data yang Diketahui:

  1. States ($S$): {Hujan, Cerah}
  2. Observations ($V$): {Jalan-jalan, Belanja, Bersih-bersih}
  3. Probabilitas Awal ($\pi$):
    • $P(\text{Hujan}) = 0.6$
    • $P(\text{Cerah}) = 0.4$
  4. Matriks Transisi ($A$):
    • Dari Hujan ke Hujan: 0.7
    • Dari Hujan ke Cerah: 0.3
    • Dari Cerah ke Hujan: 0.4
    • Dari Cerah ke Cerah: 0.6
  5. Matriks Emisi ($B$):
    • Hujan: {Jalan: 0.1, Belanja: 0.4, Bersih: 0.5}
    • Cerah: {Jalan: 0.6, Belanja: 0.3, Bersih: 0.1}

Pertanyaan:

Jika teman Anda melakukan aktivitas {Bersih-bersih, Belanja} selama dua hari berturut-turut, berapakah peluang urutan cuaca yang paling mungkin terjadi?

Langkah 1: Memahami Algoritma Viterbi

Untuk menjawab “urutan paling mungkin”, kita menggunakan Algoritma Viterbi. Algoritma ini mencari jalur (path) dengan probabilitas tertinggi melalui urutan state yang ada.

Rumus dasar Viterbi untuk state $j$ pada waktu $t$ adalah:

$$v_t(j) = \max_{i} [v_{t-1}(i) \cdot a_{ij}] \cdot b_j(o_t)$$

Di mana:

  • $v_{t-1}(i)$ adalah skor Viterbi sebelumnya.
  • $a_{ij}$ adalah peluang transisi.
  • $b_j(o_t)$ adalah peluang emisi observasi saat ini.

Langkah 2: Perhitungan Hari Pertama ($t=1$) – Observasi: Bersih-bersih

Pada langkah awal, kita mengalikan probabilitas awal ($\pi$) dengan probabilitas emisi untuk observasi “Bersih-bersih”.

Untuk State Hujan:

$v_1(\text{Hujan}) = \pi(\text{Hujan}) \cdot P(\text{Bersih} | \text{Hujan})$

$v_1(\text{Hujan}) = 0.6 \cdot 0.5 = \mathbf{0.30}$

Untuk State Cerah:

$v_1(\text{Cerah}) = \pi(\text{Cerah}) \cdot P(\text{Bersih} | \text{Cerah})$

$v_1(\text{Cerah}) = 0.4 \cdot 0.1 = \mathbf{0.04}$

Langkah 3: Perhitungan Hari Kedua ($t=2$) – Observasi: Belanja

Sekarang kita harus menghitung peluang untuk hari kedua dengan mempertimbangkan transisi dari hari pertama. Kita mencari nilai maksimum untuk setiap kemungkinan state di hari kedua.

A. Menghitung untuk State Hujan di Hari ke-2:

Kita punya dua pilihan transisi ke Hujan: dari Hujan (H1) atau dari Cerah (C1).

  1. Dari Hujan: $v_1(\text{Hujan}) \cdot P(\text{Hujan}|\text{Hujan}) \cdot P(\text{Belanja}|\text{Hujan})$$= 0.30 \cdot 0.7 \cdot 0.4 = 0.084$
  2. Dari Cerah: $v_1(\text{Cerah}) \cdot P(\text{Hujan}|\text{Cerah}) \cdot P(\text{Belanja}|\text{Hujan})$$= 0.04 \cdot 0.4 \cdot 0.4 = 0.0064$

Nilai Viterbi untuk Hujan di hari ke-2 adalah yang terbesar: 0.084. (Jalur berasal dari Hujan).

B. Menghitung untuk State Cerah di Hari ke-2:

Kita punya dua pilihan transisi ke Cerah: dari Hujan (H1) atau dari Cerah (C1).

  1. Dari Hujan: $v_1(\text{Hujan}) \cdot P(\text{Cerah}|\text{Hujan}) \cdot P(\text{Belanja}|\text{Cerah})$$= 0.30 \cdot 0.3 \cdot 0.3 = 0.027$
  2. Dari Cerah: $v_1(\text{Cerah}) \cdot P(\text{Cerah}|\text{Cerah}) \cdot P(\text{Belanja}|\text{Cerah})$$= 0.04 \cdot 0.6 \cdot 0.3 = 0.0072$

Nilai Viterbi untuk Cerah di hari ke-2 adalah yang terbesar: 0.027. (Jalur berasal dari Hujan).

Langkah 4: Menentukan Jalur Terbaik (Backtracking)

Sekarang kita bandingkan nilai akhir di hari ke-2:

  • $v_2(\text{Hujan}) = 0.084$
  • $v_2(\text{Cerah}) = 0.027$

Karena 0.084 > 0.027, maka state yang paling mungkin pada hari kedua adalah Hujan. Jika kita tarik mundur (backtrack), jalur yang menghasilkan angka 0.084 tersebut berasal dari state Hujan di hari pertama.

Kesimpulan Jalur: {Hujan, Hujan}.

Analisis Hasil

Dari perhitungan di atas, jika teman Anda terlihat melakukan Bersih-bersih lalu Belanja, kemungkinan besar cuaca di sana adalah Hujan pada hari pertama dan tetap Hujan pada hari kedua. Meskipun peluang “Belanja” saat Cerah cukup tinggi (0.3), namun karena probabilitas awal dan transisi “Hujan ke Hujan” sangat kuat, model tetap memilih Hujan sebagai prediktor terbaik.

Mengapa HMM Penting?

HMM digunakan secara luas karena kemampuannya menangani data sekuensial. Beberapa aplikasinya antara lain:

  • Speech Recognition: Mengubah gelombang suara (observasi) menjadi kata-kata (states).
  • Bioinformatika: Menentukan urutan DNA atau struktur protein.
  • Finance: Memprediksi pergerakan pasar saham yang tidak menentu.
  • NLP (Natural Language Processing): Part-of-Speech tagging untuk menentukan apakah sebuah kata adalah kata benda atau kata kerja berdasarkan konteks sekitarnya.

Baca juga: Mahasiswa Manajemen Pemasaran UTI Pamerkan Produk Totebag Painting di Teknokrat Academic Expo

Tips Menyelesaikan Soal HMM dalam Ujian

  1. Gambar Diagram Transisi: Visualisasikan state dan peluangnya agar Anda tidak tertukar antara peluang transisi dan emisi.
  2. Gunakan Tabel: Buat tabel untuk menyimpan nilai $v_t(j)$ agar perhitungan tidak berantakan.
  3. Cek Logika: Pastikan jumlah probabilitas transisi dari satu state ke semua state lainnya berjumlah 1.0. Jika tidak, soal tersebut mungkin cacat.
  4. Hati-hati dengan Angka Kecil: Dalam kasus nyata dengan ribuan observasi, angka probabilitas akan menjadi sangat kecil. Biasanya praktisi menggunakan Log-Probability untuk menghindari floating point underflow.

Penutup

Memahami Hidden Markov Model memang membutuhkan ketelitian, terutama saat melakukan perkalian berantai pada algoritma Viterbi. Namun, dengan mengikuti langkah-langkah sistematis di atas, Anda dapat memecahkan masalah sekuensial apa pun dengan percaya diri. Kunci utamanya adalah memahami bahwa setiap observasi memberikan petunjuk tentang apa yang sebenarnya terjadi di balik layar.

Penulis: Aripin

Post Comment