7 Şubat 2017 Salı

Shannon Entropy

Shannon entropisi bilgi analizinde kullanılan önemli bir ölçüm yöntemidir. Rastgele dağılımlı veride bulunan belirsizliği ölçemeye yarar. 1948 yılında Claude E. Shannon tarafından "İletişimdeki Matematik" adlı makale ile duyurulmuş ve bir çok alanda kullanılmıştır. 

Bu örnekte bir string veri içindeki karakterlerin minimum kaç bit ile kodlanması gerektiğini hesaplayacağız. Bir string veri içindeki harflerin yüzdelik dağılımlarının istenen logaritma tabanındaki tersi değer ile çarpılması ile bulunur; 



Şimdi bir örnek ile açıklayalım;

Giriş verisi : "yasin" olsun. Burada hiç tekrar etmeyen 5 tane harf olduğu için tüm harflerin yüzdelik oranı %20 dir. Yani 0.2 dir.
  • 0.2 -> a
  • 0.2 -> i
  • 0.2 -> n
  • 0.2 -> s
  • 0.2 -> y
Shannon entropisi şöyle hesaplanır;

H(X) = -[(0.2log20.2)+(0.2log20.2)+(0.2log20.2)+(0.2log20.2)+(0.2log20.2)]
H(X) = -[(-0.464)+(-0.464)+(-0.464)+(-0.464)+(-0.464)]
H(X) = -[-2.32193]
H(X) = 2.32193

Burada logaritma 2 tabanında hesaplama yapılmıştır. Bunun anlamı şudur, eğer girilen string minimum bit (0,1 ikili tabanda) ile kodlanmak istenirse, entropi değeri olan 2.32193 yukarıya yuvarlanır ve 3 değeri bulunur. Beş karakterden oluşan yasin stringi minimum 15 bit ile kodlanabilir.

kodlama işlemi şu şekilde yapılabilir;
a için 000
i için 001
n için 010
s için 011
y için 100

görüldüğü gibi alfabetik sıralama ile her harfe 3 bitlik data atandı, bu işleme 0 dan başlanaral artırıldı. Sonuç stringi şöyle olacaktır;

yasin - > 100-000-011-001-010 -> 100000011001010

Metric Entropi : Shannon entropy ile ölçülen değerin karakter sayısına bölünmesi le bulunur. Yukarıdaki örnekte "yasin" stringi için

metrin entropi = 2,32193 / 5 = 0.46439 olacaktır. Metric entropi değerin 0 ile 1 arasında oluşmasını sağlar.

Hiç yorum yok:

Yorum Gönder