{"id":2497,"date":"2023-07-22T00:42:48","date_gmt":"2023-07-22T00:42:48","guid":{"rendered":"https:\/\/statorials.org\/id\/kl-divergensi-python\/"},"modified":"2023-07-22T00:42:48","modified_gmt":"2023-07-22T00:42:48","slug":"kl-divergensi-python","status":"publish","type":"post","link":"https:\/\/statorials.org\/id\/kl-divergensi-python\/","title":{"rendered":"Cara menghitung divergensi kl dengan python (dengan contoh)"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\">Dalam statistik, <strong>divergensi Kullback\u2013Leibler (KL)<\/strong> adalah metrik jarak yang mengukur perbedaan antara dua distribusi probabilitas.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Jika kita mempunyai dua distribusi probabilitas, P dan Q, biasanya kita menulis divergensi KL menggunakan notasi KL(P || Q), yang berarti &#8220;divergensi P dari Q&#8221;.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Kami menghitungnya menggunakan rumus berikut:<\/span><\/p>\n<p> <span style=\"color: #000000;\">KL(P || Q) = \u03a3P(x) <em>ln<\/em> (P(x) \/ Q(x))<\/span><\/p>\n<p> <span style=\"color: #000000;\">Jika divergensi KL antara dua distribusi adalah nol, hal ini menunjukkan bahwa distribusi tersebut identik.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Kita dapat menggunakan fungsi <a href=\"https:\/\/docs.scipy.org\/doc\/scipy\/reference\/generated\/scipy.special.rel_entr.html\" target=\"_blank\" rel=\"noopener\">scipy.special.rel_entr()<\/a> untuk menghitung divergensi KL antara dua distribusi probabilitas dengan Python.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Contoh berikut menunjukkan cara menggunakan fungsi ini dalam praktiknya.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Contoh: menghitung divergensi KL dengan Python<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Misalkan kita memiliki dua distribusi probabilitas berikut dengan Python:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>Catatan<\/strong> : Penting agar probabilitas setiap distribusi berjumlah satu.<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#define two probability distributions\n<span style=\"color: #000000;\">P = [.05, .1, .2, .05, .15, .25, .08, .12]\nQ = [.3, .1, .2, .1, .1, .02, .08, .1]\n<\/span><\/span><\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Kita dapat menggunakan kode berikut untuk menghitung divergensi KL antara kedua distribusi:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #008000;\">from<\/span> scipy. <span style=\"color: #3366ff;\">special<\/span> <span style=\"color: #008000;\">import<\/span> rel_entr\n\n<span style=\"color: #008080;\">#calculate (P || Q)\n<\/span>sum(rel_entr(P, Q))\n\n0.589885181619163<\/span><\/span><\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Divergensi KL distribusi P dan distribusi Q kira-kira <strong>0,589<\/strong> .<\/span><\/p>\n<p> <span style=\"color: #000000;\">Perhatikan bahwa satuan yang digunakan dalam perhitungan ini dikenal sebagai <a href=\"https:\/\/en.wikipedia.org\/wiki\/Nat_(unit)\" target=\"_blank\" rel=\"noopener\">nats<\/a> , yang merupakan kependekan dari <em>natural unit of information<\/em> .<\/span><\/p>\n<p> <span style=\"color: #000000;\">Jadi kita dapat mengatakan bahwa divergensi KL adalah <strong>0,589 nats<\/strong> .<\/span><\/p>\n<p> <span style=\"color: #000000;\">Perhatikan juga bahwa divergensi KL bukanlah metrik simetris. Artinya jika kita menghitung divergensi KL distribusi Q dari distribusi P, kemungkinan besar kita akan mendapatkan nilai yang berbeda:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #008000;\">from<\/span> scipy. <span style=\"color: #3366ff;\">special<\/span> <span style=\"color: #008000;\">import<\/span> rel_entr\n\n<span style=\"color: #008080;\">#calculate (Q || P)\n<\/span>sum(rel_entr(Q, P))\n\n0.497549319448034<\/span><\/span><\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Divergensi KL distribusi Q dan distribusi P kira-kira <strong>0,497 nats<\/strong> .<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>Catatan<\/strong> : Beberapa rumus menggunakan log base-2 untuk menghitung divergensi KL. Dalam hal ini kita berbicara tentang divergensi dalam bentuk <a href=\"https:\/\/en.wikipedia.org\/wiki\/Bit\" target=\"_blank\" rel=\"noopener\">bit<\/a> , bukan nat.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Sumber daya tambahan<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Tutorial berikut menjelaskan cara melakukan operasi umum lainnya dengan Python:<\/span><\/p>\n<p> <a href=\"https:\/\/statorials.org\/id\/matriks-korelasi-python\/\" target=\"_blank\" rel=\"noopener\">Cara Membuat Matriks Korelasi dengan Python<\/a><br \/> <a href=\"https:\/\/statorials.org\/id\/matriks-kovarians-python\/\" target=\"_blank\" rel=\"noopener\">Cara Membuat Matriks Kovariansi dengan Python<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dalam statistik, divergensi Kullback\u2013Leibler (KL) adalah metrik jarak yang mengukur perbedaan antara dua distribusi probabilitas. Jika kita mempunyai dua distribusi probabilitas, P dan Q, biasanya kita menulis divergensi KL menggunakan notasi KL(P || Q), yang berarti &#8220;divergensi P dari Q&#8221;. Kami menghitungnya menggunakan rumus berikut: KL(P || Q) = \u03a3P(x) ln (P(x) \/ Q(x)) Jika [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Cara Menghitung Divergensi KL dengan Python (dengan Contoh) - Statologi<\/title>\n<meta name=\"description\" content=\"Tutorial ini menjelaskan cara menghitung divergensi KL antara dua distribusi probabilitas dengan Python, dengan sebuah contoh.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/statorials.org\/id\/kl-divergensi-python\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cara Menghitung Divergensi KL dengan Python (dengan Contoh) - Statologi\" \/>\n<meta property=\"og:description\" content=\"Tutorial ini menjelaskan cara menghitung divergensi KL antara dua distribusi probabilitas dengan Python, dengan sebuah contoh.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/id\/kl-divergensi-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-22T00:42:48+00:00\" \/>\n<meta name=\"author\" content=\"Benjamin anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Ditulis oleh\" \/>\n\t<meta name=\"twitter:data1\" content=\"Benjamin anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/statorials.org\/id\/kl-divergensi-python\/\",\"url\":\"https:\/\/statorials.org\/id\/kl-divergensi-python\/\",\"name\":\"Cara Menghitung Divergensi KL dengan Python (dengan Contoh) - Statologi\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/id\/#website\"},\"datePublished\":\"2023-07-22T00:42:48+00:00\",\"dateModified\":\"2023-07-22T00:42:48+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81\"},\"description\":\"Tutorial ini menjelaskan cara menghitung divergensi KL antara dua distribusi probabilitas dengan Python, dengan sebuah contoh.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/id\/kl-divergensi-python\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/id\/kl-divergensi-python\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/id\/kl-divergensi-python\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/statorials.org\/id\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cara menghitung divergensi kl dengan python (dengan contoh)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/statorials.org\/id\/#website\",\"url\":\"https:\/\/statorials.org\/id\/\",\"name\":\"Statorials\",\"description\":\"Panduan anda untuk kompetensi statistik!\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/statorials.org\/id\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"id\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81\",\"name\":\"Benjamin anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/statorials.org\/id\/#\/schema\/person\/image\/\",\"url\":\"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"contentUrl\":\"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"caption\":\"Benjamin anderson\"},\"description\":\"Halo, saya Benjamin, pensiunan profesor statistika yang menjadi guru Statorial yang berdedikasi. Dengan pengalaman dan keahlian yang luas di bidang statistika, saya ingin berbagi ilmu untuk memberdayakan mahasiswa melalui Statorials. Baca selengkapnya\",\"sameAs\":[\"http:\/\/statorials.org\/id\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Cara Menghitung Divergensi KL dengan Python (dengan Contoh) - Statologi","description":"Tutorial ini menjelaskan cara menghitung divergensi KL antara dua distribusi probabilitas dengan Python, dengan sebuah contoh.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/statorials.org\/id\/kl-divergensi-python\/","og_locale":"id_ID","og_type":"article","og_title":"Cara Menghitung Divergensi KL dengan Python (dengan Contoh) - Statologi","og_description":"Tutorial ini menjelaskan cara menghitung divergensi KL antara dua distribusi probabilitas dengan Python, dengan sebuah contoh.","og_url":"https:\/\/statorials.org\/id\/kl-divergensi-python\/","og_site_name":"Statorials","article_published_time":"2023-07-22T00:42:48+00:00","author":"Benjamin anderson","twitter_card":"summary_large_image","twitter_misc":{"Ditulis oleh":"Benjamin anderson","Estimasi waktu membaca":"1 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/statorials.org\/id\/kl-divergensi-python\/","url":"https:\/\/statorials.org\/id\/kl-divergensi-python\/","name":"Cara Menghitung Divergensi KL dengan Python (dengan Contoh) - Statologi","isPartOf":{"@id":"https:\/\/statorials.org\/id\/#website"},"datePublished":"2023-07-22T00:42:48+00:00","dateModified":"2023-07-22T00:42:48+00:00","author":{"@id":"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81"},"description":"Tutorial ini menjelaskan cara menghitung divergensi KL antara dua distribusi probabilitas dengan Python, dengan sebuah contoh.","breadcrumb":{"@id":"https:\/\/statorials.org\/id\/kl-divergensi-python\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/id\/kl-divergensi-python\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/id\/kl-divergensi-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/statorials.org\/id\/"},{"@type":"ListItem","position":2,"name":"Cara menghitung divergensi kl dengan python (dengan contoh)"}]},{"@type":"WebSite","@id":"https:\/\/statorials.org\/id\/#website","url":"https:\/\/statorials.org\/id\/","name":"Statorials","description":"Panduan anda untuk kompetensi statistik!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/statorials.org\/id\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"id"},{"@type":"Person","@id":"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81","name":"Benjamin anderson","image":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/statorials.org\/id\/#\/schema\/person\/image\/","url":"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","contentUrl":"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","caption":"Benjamin anderson"},"description":"Halo, saya Benjamin, pensiunan profesor statistika yang menjadi guru Statorial yang berdedikasi. Dengan pengalaman dan keahlian yang luas di bidang statistika, saya ingin berbagi ilmu untuk memberdayakan mahasiswa melalui Statorials. Baca selengkapnya","sameAs":["http:\/\/statorials.org\/id"]}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"_links":{"self":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/posts\/2497"}],"collection":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/comments?post=2497"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/posts\/2497\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/media?parent=2497"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/categories?post=2497"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/tags?post=2497"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}