Sebagai catatan: Saya dengan hormat meminta Anda untuk mempertahankan daftar ini (tidak lengkap) sehingga pengguna yang tertarik memiliki sumber daya yang mudah diakses. Status quo masih mengharuskan individu untuk menyelidiki banyak makalah dan / atau laporan teknis yang panjang untuk menemukan jawaban yang terkait dengan CRF dan HMM.
Selain yang lain, jawaban yang sudah bagus, saya ingin menunjukkan fitur khas yang saya temukan paling penting:
- HMM adalah model generatif yang mencoba memodelkan distribusi bersama P (y, x). Oleh karena itu, model-model seperti itu mencoba memodelkan distribusi data P (x) yang pada gilirannya mungkin memberlakukan fitur yang sangat tergantung . Ketergantungan ini kadang-kadang tidak diinginkan (misalnya dalam penandaan POS NLP) dan sangat sulit untuk dimodelkan / dihitung.
- CRF adalah model diskriminatif yang memodelkan P (y | x). Dengan demikian, mereka tidak perlu secara eksplisit memodelkan P (x) dan tergantung pada tugas, karena itu mungkin menghasilkan kinerja yang lebih tinggi, sebagian karena mereka membutuhkan lebih sedikit parameter yang harus dipelajari, misalnya dalam pengaturan ketika menghasilkan sampel tidak diinginkan . Model diskriminatif sering lebih cocok ketika fitur yang kompleks dan tumpang tindih digunakan (karena pemodelan distribusinya seringkali sulit).
- Jika Anda memiliki fitur yang tumpang tindih / rumit (seperti pada penandaan POS), Anda mungkin ingin mempertimbangkan CRF karena mereka dapat memodelkan ini dengan fungsi fitur mereka (perlu diingat bahwa Anda biasanya harus merancang fitur-fitur fungsi-fungsi ini).
- ytxtc a p ( xt - 1)= true) sedangkan dalam HMM (orde pertama) Anda menggunakan asumsi Markov, memaksakan ketergantungan hanya ke elemen sebelumnya. Karena itu saya melihat CRF sebagai generalisasi HMM .
- Perhatikan juga perbedaan antara CRF linier dan umum . CRF linier, seperti HMM, hanya memaksakan dependensi pada elemen sebelumnya sedangkan dengan CRF umum Anda dapat memaksakan dependensi ke elemen arbitrer (mis. Elemen pertama diakses di bagian paling akhir urutan).
- Dalam praktiknya, Anda akan melihat CRF linier lebih sering daripada CRF umum karena biasanya memungkinkan penyimpulan lebih mudah. Secara umum, inferensi CRF seringkali tidak dapat dilaksanakan, membuat Anda memiliki satu-satunya opsi yang dapat ditebak untuk perkiraan inferensi).
- Inferensi dalam CRF linier dilakukan dengan algoritma Viterbi seperti pada HMM.
- Baik HMM dan CRF linier biasanya dilatih dengan teknik Maximum Likelihood seperti gradient descent, metode Quasi-Newton atau untuk HMMs dengan teknik Maksimalisasi Ekspektasi (algoritma Baum-Welch). Jika masalah optimisasi cembung, semua metode ini menghasilkan set parameter optimal.
- Menurut [1], masalah optimasi untuk mempelajari parameter CRF linier adalah cembung jika semua node memiliki distribusi keluarga eksponensial dan diamati selama pelatihan.
[1] Sutton, Charles; McCallum, Andrew (2010), "Pengantar Bidang Acak Bersyarat"