LeNet решает задачу, которая называется MNIST. Эта задача заключается в том, что нам нужно верно классифицировать на десять классов рукописные цифры (от 0 до 9). LeNet принимает картинки размером 32 на 32, пропускает через два набора свёрток, затем распрямляет вектор, и затем применяет полносвязанные слои. И в результате у нас получается 10 результатов, каждый из этих результатов описывает вероятность каждого класса для данной картинки. Эта задачка -- несколько игрушечная и современные нейронные сети соревнуются в решении другой задачи, которая называется ImageNet 1000. Что это за задача? Это довольно большая база данных с изображениями. В этой базе данных 15 миллионов реальных изображений. То есть, это фотографии, которые были сделаны людьми в реальной жизни. Иногда это просто какие-то схемки, которые откуда-то скачаны из интернета. Иногда это какие-то рисованные картинки, и эти изображения разбиты на тысячу классов. И эти изображения нужно классифицировать на один из тысячи классов. Вообще говоря, из этих 15 миллионов, хороших около полутора миллионов (которые действительно относятся к этой тысяче классов). Соответственно, у нас получается задача о разбиении 15 миллионов изображений на тысячу классов. Вот такую задачу сейчас решают современные сложные нейронные сети и соревнуются в этом. Чем лучше решение той или иной сети на этой задаче, тем лучше она, скорее всего, будет работать и в других приложениях. Что за классы есть в этой задаче? Ну это, во первых -- автомобили, во-вторых это животные, особенно там много различных пород собак, там есть всевозможные вещи типа "ручка", всевозможные канцелярские принадлежности, объекты быта. Там есть такие вещи, как "небо", например. Там есть такие понятия как "дом", ну и так далее. Итак, какие же нейронные сети могут решать вот такую амбициозную задачу? Первая нейронная сеть, которая научилась решать эту задачу -- это AlexNet. Что принимает на вход AlexNet? У AlexNet на вход принимается картинка размером 224 на 224. Стоит обратить внимание на то, что здесь три канала обязательно должно быть. Если у нас на вход приходит чёрно-белые изображение, то мы из чёрно-белого изображения делаем такое же чёрно-белое, но которое состоит из трех каналов. Понятно, что в датасете совсем не все картинки имеют размер 224 на 224. Для того, чтобы все картинки имели именно такое разрешение, мы выразаем случайным образом квадратную область из картинки и мы масштабируем её к размеру 224 на 224 при помощи билинейной интерполияции. В результате у нас получается такая небольшая картинка нужного размера. Что происходит дальше? По этой картинке гуляет свёртка размером 11 на 11. Причём она ходит со страйдом "4". Для того, чтобы получился такой тензор размером 55 на 55 на 96, нужно выставить правильные паддинги у входного изображения. Соответственно -- какими должны быть паддинги у входного изображения?

К сожалению, у нас пока нет статистики ответов на данный вопрос, но мы работаем над этим.