Вопросы реализации пропускной способности и энтропии канала Шеннона
Разделив фазовое пространство на Alpha
разделы, он предназначен для определения того, насколько хорош этот раздел. В этом ракурсе нам нужно выяснить источник энтропии. Я много гуглил, но не смог выяснить, что такое источник энтропии. Может кто-нибудь объяснить:
Чем энтропия Шеннона отличается от энтропии источника и как реализовать энтропию источника?
Как рассчитать емкость канала? Ниже приведен код для расчета энтропии Шеннона для данных x. Я был бы обязан, если следующий код был изменен для расчета пропускной способности канала.
x = x(1:end);
if nargin == 1
p = freq(double(x));
else
if numel(x) ~= numel(y)
e = -1;
warning('Sizes of vector do not match.');
return;
end
y = y(1:end);
p = joint_freq(double(x), double(y));
end
% Compute Shannon entropy
xlogy(repmat(256, [length(p) 1]), p);
e = -sum(p .* xlogy(repmat(256, [length(p) 1]), p));
- В чем разница между энтропией Колгоморова и энтропией Шеннона в менее техническом жаргоне? Это сбивает с толку, чтобы понять значение / значение числа сложности, возвращаемого сложностью Колгоморова.
1 ответ
Если обратиться к вашему последнему вопросу в первую очередь, энтропия Колмогорова - это энтропия возможных траекторий, которые может принять система, т. Е. Мера "случайности" возможного развития системы. Энтропия Шеннона, с другой стороны, является мерой случайности состояния системы. Из того что ты сравниваешь x
в y
, а не несколько траекторий x
на несколько траекторий y
похоже, вы должны вычислять энтропию Шеннона.
Часто мы хотим вычислить нечто, называемое взаимной информацией, которая является мерой того, насколько уменьшается энтропия или "случайность" нашего сигнала, когда мы приводим его в соответствие с другим сигналом. В случае кода выше, вы пытаетесь измерить, сколько энтропии в x
или сколько энтропии в x
дано y
, Разница между этими двумя значениями заключается в том, сколько мы узнали о x
зная y
, Мы называем это по-разному взаимной информацией или, если мы сначала разделим на длительность рассматриваемого ряда, пропускную способность канала. (Источником энтропии будет просто энтропия y
предполагая y
это ваш "источник").
Есть некоторые проблемы с вашим кодом, и я не могу точно знать, что это такое, не зная реализации joint_freq
, Для расчета энтропии x
дано y
вы должны взять 2D матрицу совместного распределения вероятностей, вычисляя сумму энтропии в x
Направление, как вы сейчас, но затем также взять среднее по оставшемуся измерению.