Об энтропии Шеннона (10.11.2026). Печать
2026 - Ноябрь
10.11.2026 16:46
Save & Share
В написанном ранее генераторе хаотичных данных 369ГБ/с содержится функция измерения степени энтропии - коэффициентов Шеннона для блока данных 200МиБ и для блоков 512Б в его составе. Чужие исходники - всегда слабое место, эта чужая функция тестировалась максимально глубоко. Но по 200МиБ никогда не получался коэффициент выше 7.5, а по блоку данных - не выше 7. Подозрительно - нужно рыть теорию.


Пример анализа данных этой функцией.


Более простое описание коэффициентов энтропии - сформировалось ИИ гугла с запроса десятого. Грузил своими битами, простыни текста выдавал, таблицы неудобные - и вот оно. И оно лучше, чем википедия: там от сложных формул задохнуться можно.


Скормил гуглу функцию - начинает выносить мозг про её неправильность: STL, механизм деления, логарифм - куда уж больше. Но все, кто столкнулся с ИИ гугла ранее, знают: он ****абол. У меня была ситуация, когда он уверял, что сгенерировать значение по скормленному алгоритму быстрее, чем взять его готового из массива. Даже функцию дал: "Ня, проверь". Проверил - полное враньё: условные 84нс/Б против 64нс/Б. И он такой: "Так это легко объясняется!" - и опять словесный понос. Неважно, что накладные расходы потом не дали реализовать второй способ: важна сама скорость в конкретном исходнике - обязательно найдутся мозги, которые применят его оптимальнее тебя.

Поэтому гугл, в очередной раз, - был откровенно послан. После возни с текстовыми описаниями энтропии Шеннона, приходит понимание: гугл и про 256бит что-то намудрил. Речь идёт не о битах, а о байтах. Мера энтропии - 256Б. Если все байты одинаковые - энтропия 0. Если все разные - энтропия 8. В этот момент - приходит понимание, почему число 8 недостижимо в моём хаосе. В 512Б, чтобы получить энтропию 8, должно быть по 2 одинаковых байта 256 раз. Однако в реальном хаосе - это недостижимая комбинация. То есть, коэффициент Шеннона - неэффективное решение оценки энтропии как меры хаоса - в принципе. И подвергается активной критике в интернете - зачем её тогда в вузах преподают. И правильно сделал при разработке генератора ранее: упор на невозможность расшифровки алгоритма формирования мусора, а не на эти числа.

Теперь нужно убедиться, что теория соответствует практике. Скормил функции 256 байтов с одним и тем же числом - 0. Скормил 256 байтов абсолютно разных - 8. 1024Б разных в блоке 256Б, но одинаковых между собой, - 8. Всё одинаковое 1024Б - 0. 256Б все разные не по порядку - 8.

Функция - полностью работоспособна.
Обновлено ( 10.11.2026 17:38 )