Yazeka
Arama sonuçlarına göre oluşturuldu
Jensen-Shannon ayrışımı (JSD) hesaplamak için aşağıdaki adımlar izlenebilir:
- Karışım dağılımının hesaplanması 1. JSD, P ve Q olasılık dağılımlarının ortalamaları olan M karışım dağılımına dayanır 14. M = (P + Q) / 2 formülü ile hesaplanır 14.
- Kullback-Leibler ayrışımının hesaplanması 14. JSD, P ve Q'nun M'ye göre Kullback-Leibler ayrışımının (KL) ortalamasıdır 14.
- Formülün uygulanması 13. JSD(P||Q) = 1/2 * KL(P||M) + 1/2 * KL(Q||M) formülü kullanılır 15.
cJSdiv = Compile[{{p, _Real}, {q, _Real}}, Block[{minv}, If[p > 0. && q > 0., minv = 2./(p + q); 0.5 (p (Log[p minv]) + q (Log[q minv])), If[p == 0. && q == 0., 0., 1.7976931348623157`*^308 ] ], CompilationTarget -> "C", RuntimeAttributes -> {Listable}]; JSdiv = {p, q} |-> Total[cJSdiv[p, q]];
Bu kod, p ve q vektörleri üzerinde çalışarak her bir öğe için JSD değerini hesaplar 2.
JSD, yalnızca birbirine göre mutlak sürekli olan olasılık dağılımları için tanımlıdır 2.
JSD hesaplamak için dit gibi kütüphaneler de kullanılabilir 3.
Daha fazla bilgi için aşağıdaki kaynaklara başvurulabilir:
5 kaynaktan alınan bilgiyle göre: