ОБУЧЕНИЕ СВЕРТОЧНЫХ НЕЙРОННЫХ СЕТЕЙ НА ГРАФИЧЕСКИХ ПРОЦЕССОРАХ

1. Реализуемый компьютером способ обучения сверточной нейронной сети для идентификации изображений с использованием графических данных, которые могут считываться графическим процессором (“ГП”), и одной или более программ, выполняемых на ГП, причем графические данные представляют состояние сверточной нейронной сети, способ содержит этапы, на которых
выполняют на ГП одну или более программ, выполняемых на ГП, для осуществления прямого прохода в сверточной нейронной сети,
выполняют на ГП одну или более программ, выполняемых на ГП, для осуществления обратного прохода в сверточной нейронной сети,
выполняют на ГП одну или более программ, выполняемых на ГП, для изменения графических данных на основании результатов обратного прохода и
повторно выполняют одну или более программ, выполняемых на ГП, для осуществления прямых проходов, обратных проходов и для изменения графических данных, пока не обучат сверточную нейронную сеть.
2. Способ по п.1, в котором графические данные содержат одну или более текстур, представляющих одну или более переменных нейронной сети.
3. Способ по п.2, в котором одна или более текстур содержат двухмерную текстуру, и по меньшей мере одна или более текстур представляют переменную нейронной сети с размерностью более двух, которая была сплющена в два измерения.
4. Способ по п.2, в котором адреса значений, представленных в текстуре, определяют через линейные комбинации координат x и y сдвига от верхнего левого угла выходной текстуры.
5. Способ по п.1, в котором программы, выполняемые на ГП, написаны в виде одной или более программ пиксель-шейдера.
6. Способ по п.1, в котором графические данные настраивают с использованием градиентного спуска.
7. Способ по п.6, в котором одна или более программ используют формулы для вычисления частных производных для определения градиента, и формулы алгебраически объединяют и упрощают для сокращения обращений к программам пиксель-шейдера.
8. Способ по п.1, в котором нейронная сеть содержит один или более полносвязных слоев, и одна или более программ, выполняемых на ГП, содержат одну или более программ, выполняемых на ГП, специфических для одного или более полносвязных слоев, которые используют отдельные формулы для полносвязных слоев.
9. Способ по п.1, в котором нейронная сеть содержит один или более переходных слоев, и одна или более программ, выполняемых на ГП, содержат одну или более программ, выполняемых на ГП, специфических для одного или более переходных слоев, которые используют отдельные формулы для переходных слоев.
10. Способ по п.1, в котором графические данные описывают единичный треугольник, покрывающий демонстрационное окно.
11. Способ по п.1, в котором одна или более программ, выполняемых на ГП, содержит одну или более операций суммирования, и каждую из одной или более операций суммирования разбивают на множество проходов.
12. Способ по п.1, в котором сверточная нейронная сеть осуществляет распознавание рукописного ввода.
13. Один или более считываемых компьютером носителей, содержащих данные, описывающие сверточную сеть, обучаемую посредством процесса по п.1.
14. Один или более считываемых компьютером носителей, содержащих команды, которые при выполнении на графической карте предписывают графической карте осуществлять способ обучения нейронной сети, способ содержит этапы, на которых
принимают множество текстур, представляющих нейронную сеть,
вычисляют множество прямых проходов нейронной сети на множестве входных данных,
для каждого из множества прямых проходов вычисляют обратный проход нейронной сети с использованием функции градиента, и
для каждого обратного прохода, на основании результатов функции градиента, изменяют информацию, содержащуюся в множестве текстур, для оказания влияния на обучение нейронной сети.
15. Считываемые компьютером носители по п.14, в которых нейронная сеть обучается распознавать рукописные символы, множество текстур, по меньшей мере частично, представляет сверточные ядра, и сверточные ядра оперируют на входных данных, представляющих рукописные символы.
16. Считываемые компьютером носители по п.14, в которых множество текстур, по меньшей мере частично, представляет полносвязный уровень и переходный уровень нейронной сети.
17. Графический процессор, выполненный с возможностью выполнять способ обучения нейронной сети распознаванию рукописного ввода, графический процессор содержит
хранилище данных, способное хранить одну или более графических текстур, причем графические текстуры описывают нейронную сеть, распознающую рукописный ввод,
множество блоков пиксель-шейдера, настраиваемых посредством программирования пиксель-шейдера, чтобы:
осуществлять повторные прямые проходы и обратные проходы нейронной сети в отношении данных рукописного ввода,
сохранять результаты во множестве графических текстур и
изменять множество текстур на основании результатов прямых и обратных проходов для обучения нейронной сети.
18. Графический процессор по п.17, в котором нейронная сеть, распознающая рукописный ввод, по меньшей мере частично, содержит один сверточный уровень и один полносвязный уровень.
19. Графический процессор по п.17, в котором одна или несколько графических текстур способны описывать упрощенное изображение треугольника, благодаря чему для всей обработки, осуществляемой графическим процессором, требуется вычисление только в отношении части блоков пиксель-шейдера.
20. Графический процессор по п.17, в котором блоки пиксель-шейдера настроены так, что операции суммирования в прямых проходах и обратных проходах нейронной сети разбиваются на несколько более мелких операций суммирования.