Разработчик утверждает, что перепроектировал алгоритм NeuralHash, используемый в обнаружении CSAM от Apple. Были высказаны противоречивые мнения о том, позволит ли это победить систему обнаружения материалов сексуального насилия над детьми …
Разработчик Асухариет Игвар разместил код на GitHub.
Преобразуйте изображение в RGB. Измените размер изображения до 360×360. Нормализовать значения RGB до [-1, 1] диапазон. Выполните вывод по модели NeuralHash. Вычислите скалярное произведение матрицы 96×128 с результирующим вектором из 128 чисел с плавающей запятой. Примените двоичный шаг к полученному вектору с плавающей запятой 96. Преобразуйте вектор 1,0 и 0,0 в биты, чтобы получить 96-битные двоичные данные.
Комментатор в своей ветке Reddit спросил, как он может быть уверен, что это правильно, и Игвар изложил доказательства.
Прежде всего, файлы моделей имеют префикс NeuralHashv3b-, который является тем же термином, что и в документе Apple.
Во-вторых, в этом документе Apple описала детали алгоритма в разделе «Обзор технологий» -> «NeuralHash», что в точности совпадает с тем, что я обнаружил. Например, в документе Apple:
«Дескриптор проходит через схему хеширования для преобразования N чисел с плавающей запятой в M битов. Здесь M намного меньше, чем количество битов, необходимых для представления N чисел с плавающей запятой ».
И как вы можете видеть отсюда и здесь N = 128 и M = 96.
Более того, хэш, сгенерированный этим скриптом, почти не меняется при изменении размера или сжатии изображения, что опять же аналогично описанному в документе Apple.
Он также объясняет, почему хеш-коды немного отличаются.
Это потому, что нейронные сети основаны на вычислениях с плавающей запятой. Точность сильно зависит от оборудования. Для небольших сетей это не будет иметь никакого значения. Но NeuralHash имеет более 200 слоев, что приводит к значительным кумулятивным ошибкам. На практике весьма вероятно, что Apple реализует сравнение хешей с допуском в несколько бит.
Некоторые предполагают, что знание алгоритма позволит людям генерировать как ложные негативы — изображения CSAM, которые не будут обнаружены, несмотря на то, что они находятся в базе данных, — так и ложные срабатывания, которые могут наводнить рецензентов Apple невинными изображениями.
Однако другие говорят, что система ослепления, используемая Apple, сделает невозможным и то, и другое.
Есть один важный шаг, на котором Apple использует алгоритм ослепления для изменения хэша. Чтобы обучить декодер делать это, вам понадобится доступ к алгоритму ослепления, доступ к которому есть только у Apple.
Без сомнения, эксперты по безопасности скоро откликнутся.
Фото: Джон Тайсон / Unsplash









