Стандартное отклонение MNIST

Квантовый алгоритм

После Quantum MNIST с плотным угловым кодированием и 784-Dimensional Quantum MNIST с амплитудным кодированием я экспериментировал с Quantum-Inspired MNIST с использованием классической интерпретации квантового алгоритма, который может использоваться для задач квантового машинного обучения (QML), таких как квантовая классификация и квантовая кластеризация. Используя только сложение и вычитание, подход достиг точности 72%, что намного лучше, чем угадывание, лучше, чем некоторые попытки студентов сверточной нейронной сети (CNN), и все же заметно хуже, чем представления Kaggle.

Это моя первая попытка повысить точность Quantum-Inspired MNIST, при этом, надеюсь, сохранив относительную простоту Quantum-Inspired MNIST.

Набор данных MNIST

Напрашивается вопрос: «Что такое MNIST?» Для тех, кто не знаком с ним, MNIST — это популярный набор данных рукописных цифр, чисел от 0 до 9. Он популярен, потому что он тщательно протестирован и чист, что позволяет учащимся сосредоточиться на построении и обучении своих моделей классификации изображений, а не на своих данных. .

Каждая цифра в наборе данных MNIST представлена ​​примерно 6000 изображений. Каждое изображение содержит 784 пикселя, расположенных в сетке 28x28. Каждый пиксель имеет значение от 0 до 254, представляющее его интенсивность. Я исторически брал каждую цифру и вычислял средние значения интенсивности каждого из ее 784 пикселей, в результате чего средний ноль, средний один и так далее.

Для моего первоначального эксперимента Quantum MNIST я сжал 784 пикселя в 16 значений, сопоставленных только с 8 кубитами, и меня беспокоило то, что все 10 цифр просто размылись бы вместе. У меня была аналогичная проблема с 784-Dimensional Quantum MNIST, но из-за крошечных значений 1024 амплитуд, квадраты которых должны в сумме равняться 1. Но с Quantum-Inspired MNIST не требуется никакой классической предварительной обработки, кроме вычислительных средств. Значения тестовых цифр остаются как есть. И это быстро. Итак, если я когда-нибудь собираюсь представлять цифры поезда чем-либо, кроме средних значений, сейчас самое время попробовать это сделать.

Стандартное отклонение

Два варианта, которые я рассматривал с момента моего первоначального эксперимента Quantum MNIST, — это стандартные отклонения и биннинг. Биннинг очень широк, и существует несколько подходов, поэтому я использовал стандартные отклонения как простое, плавное расширение представлений цифр.

Алгоритм в целом добавляет только два основных шага: вычисление стандартного отклонения на пиксель на цифру, а затем добавление двух сравнений на пиксель. Для Quantum-Inspired MNIST я сравнил значение каждого тестового пикселя с соответствующим средним значением пикселя на цифру поезда. Для этого эксперимента я также сравнил значение каждого тестового пикселя с соответствующим средним значением пикселя минус стандартное отклонение, а также с соответствующим средним значением пикселя плюс стандартное отклонение. Поэтому каждая тестовая цифра сравнивается с более широким представлением нуля, более широким представлением единицы и так далее.

.
.
.
Target: 9
Actual: 9

Correct: 50%

Полученные результаты

Используя только средние значения и используя первые 100 тестовых цифр, точность Quantum-Inspired MNIST составила 72%. Сохраняя все точно так же и добавляя только эти сравнения стандартных отклонений, точность упала до 50%. Как и в моем первоначальном эксперименте Quantum MNIST, цифры, кажется, сливаются. Однако стоит отметить, что угадывание имеет точность всего 10%, а некоторые традиционные подходы MNIST работают хуже. Итак, это все еще не самый плохой подход к MNIST, но он идет в неправильном направлении.

Запрос обратной связи

С какой стати я должен писать об обратном прогрессе? Потому что я делюсь данными и кодом, ну, собственно, данные в коде, на GitHub. Может быть, кто-то может обнаружить ошибку ID10T. Или, может быть, кто-то может предложить другой подход. В любом случае, основанный на квантовых вычислениях MNIST исключает модели, веса, функции активации, оптимизаторы… все, что вы обычно используете для классификации изображений. Это все еще, в конечном счете, основано на простом сложении и вычитании. Базовая арифметика может победить угадывание; может ли он конкурировать с классическим машинным обучением? Я надеюсь на обратную связь.

Следующий шаг

Как я писал в своей статье MNIST, вдохновленной квантовыми технологиями, традиционный MNIST не выполняет сравнение пикселей с пикселями. Сверточные нейронные сети (CNN) используют группы пикселей и несколько уровней сравнений. Есть также представления Kaggle, точность которых превышает 99%. Так что, ожидая отзывов об использовании и/или неправильном использовании стандартных отклонений, я могу поработать над тем, чтобы сделать основанный на квантовых вычислениях MNIST немного более похожим на CNN и, возможно, немного на Kaggle, оставаясь при этом относительно простым.