Расчет энтропии Шеннона
У меня есть распределение вероятностей, которое определяет вероятность появления n
возможные состояния.
Я хотел бы вычислить значение энтропии Шеннона в битах заданного распределения вероятности.
Могу ли я использовать wentropy(x,'shannon')
получить значение и, если да, где я могу определить количество возможных состояний системы?
1 ответ
Решение
Поскольку у вас уже есть распределение вероятностей, назовите его p
, вы можете сделать следующую формулу для энтропии Шеннона вместо использования wentropy
:
H = sum(-(p(p>0).*(log2(p(p>0)))));
Это дает энтропию H
в битах.
p
должен составить 1.