Нейронные сети являются достаточно ресурсоёмкими с точки зрения потребления вычислительной мощности систем. Но на самом деле лишь на этапе обучения нейронной сети требуется высокая производительность компьютерного аппаратного обеспечения, когда выполняются постоянные передачи данных в память и обратно при построении искусственных нейронов. В то же время использование уже обученной нейронной сети является сравнительно простым процессом, не требующим значительных вычислительных ресурсов. Фактически, этапы обучения и использования могут выполняться на совершенно разных аппаратных средствах.
Исследователи из Лос-Анджелеса предложили радикальный подход в этой сфере. После обучения нейронной сети с использованием традиционного компьютерного оборудования они напечатали на 3D-принтере набор панелей, которые управляли светом таким образом, чтобы был достигнут эквивалент обработке информации с использованием нейронной сети. В конце концов, они получили производительность со скоростью света, хотя и с несколько меньшей точностью по сравнению с более традиционным оборудованием.
Сначала кратко опишем структуру и принцип действия нейронной сети глубокого обучения. Она включает несколько слоёв, которые последовательно проходятся сигналами с предыдущего слоя или источника сигналов. Эти сигналы на каждом уровне обрабатываются «нейронами», а затем образуется результирующий сигнал, который передаётся к следующему уровню. Обучение нейронной сети определяет, на какие нейроны в дальнейшем передаются сигналы и какую силу они имеют.
Исследователи реализовали такую систему при помощи света и полупрозрачных панелей, способных преломлять свет. Когда свет падает на такую поверхность, на её структура определяет, какие лучи света пройдёт сквозь панель, в каком количестве и в каком направлении. Вторая пластина, размещённая за первой, снова перенаправляет лучи света в заданные участки последующей пластины и т.д. Исследователи обучили нейронную сеть, напечатав на 3D-принтере специфические панелей, чтобы при прохождении света сквозь них лучи концентрироваться в определенной области. Разместив сенсоры в определенных местах за последней панелью, они могут определить, где в конечном итоге заканчивают свой путь лучи света. И, если всё сделано правильно, при помощи сенсоров можно получить решение нейронной сети.
Авторы применили такой подход в двух различных задачах по распознаванию изображений. В первом случае они обучили нейронную сеть распознавать рукописные цифры, используя 10 фотосенсоров для распознавания результата. При этом использовалась 5-слойная нейронная сеть – было напечатано 5 специфических панелей, манипулирующих светом. Чтобы обеспечить ввод данных в нейронную сеть, они также распечатали лист, который позволил им проецировать объекты на первый уровень нейронной сети.
Однако при этом исследователи столкнулись с проблемой. Многие цифры, например, 0 и 9, имеют пустые области, окружённые написанной частью цифры. И при 3D-печати маски для таких цифр для проецирования света в форме цифры нужно сделать негатив изображения. Т.е. там, где проходит линия написанной цифры, должно быть пустое пространство для пропуска света, а пустое пространство цифры должно быть непроницаемым для света. Таким образом, исследователям нужно было как бы подвесить в пространстве внутренние части цифр. Но при 3D-печати им всё же было необходимо оставить небольшое количество материала для удерживания этих областей. Это привело к тому, что часть света перекрывалась в тех областях, где лучи должны были проходить без помех. Это снизило точность всей системы при определении написанной цифры. Однако точность всё же составляет более 90%. Также исследователи подобным образом выполнили тест и для распознавания предметов одежды. Общая точность в этой задаче составила 86%. Исследователи полагают, что для повышения точности необходимо создавать чрезвычайно точные алгоритмы на базе всех слоёв нейронной сети, а этого сложно достичь, используя в качестве слоём небольшие физические пластины. Частично эту проблему можно устранить, добившись большей точности подгонки пластин. Но по мере увеличения количества слоёв сети задача будет всё усложняться.
Авторы считают, что у их идеи может быть и практическое применение с высокой производительностью, так как свет проходит через сеть практически мгновенно, но прежде нужно устранить выявленные проблемы.