Существует ли правило большого пальца для проектирования нейронных сетей?


12

Я знаю, что архитектура нейронной сети в основном основана на самой проблеме и типах ввода / вывода, но все же - всегда есть «квадратная», когда начинается ее создание. Итак, мой вопрос - учитывая входной набор данных MxN (M - количество записей, N - количество объектов) и C возможных классов вывода - существует ли правило большого пальца, с какого количества слоев / единиц мы должны начать?


Возможные ответы на этот вопрос очень специфичны для конкретной проблемы. Могут быть некоторые полезные правила для распознавания объекта изображения, но эти правила могут не работать с другим набором данных.
18:00

Ответы:


10

На этот вопрос подробно ответили на CrossValidated: Как выбрать количество скрытых слоев и узлов в нейронной сети с прямой связью?

Однако позвольте мне добавить свои два цента:

Не существует волшебного правила выбора лучшей архитектуры нейронной сети, но если вы можете найти архитектуру, которую кто-то использовал для решения аналогичной проблемы, это часто является отличной отправной точкой.

Лучшее место для поиска - официальные или неофициальные примеры использования популярных библиотек нейронных сетей, таких как Keras, PyTorch или Tensorflow, и архитектуры, описанные в научной литературе. keras / examples на github - отличный ресурс.

Эти архитектуры, вероятно, были выбраны после большого количества проб и ошибок, поэтому большая часть работы будет выполнена для вас.


5
Одним из предостережений к ответу CrossValidated является то, что ему уже 7 с лишним лет, и он указывает на 15 с лишним лет часто задаваемых вопросов для «отличного резюме» по настройке скрытых слоев. Сказать, что за последние 7-15 лет была проделана большая работа по настройке NN, - значит немного преуменьшить. Растет число приложений, которые выходят за пределы режима « достаточно одного скрытого слоя ». - Тем не менее, для множества проблем подход глубокого обучения может быть излишним. Начинать с одного скрытого слоя и углубляться только в случае необходимости - это надежная стратегия.
RM

1
Хорошие моменты, Р.М. - Второй ответ там гораздо более недавний, однако.
Имран,

@ Имран, я думаю, ты никогда не отвечаешь на вопрос ОП. Выбор скрытых узлов и архитектуры - это очень глубокий вопрос, который до сих пор не очень хорошо понят. Посмотрите ResNet и широкий ResNet с межуровневыми подключениями.
18:00

Спасибо за ваш комментарий, @horaceT. Мой попытанный ответ означал: «Эмпирического правила не существует, но есть эвристика, которую можно применить». Я в курсе Res Rests. Пожалуйста, дайте мне знать, как еще я могу улучшить свой ответ.
Имран

3

Я прочитал статью, в которой исследуется идея использования нейронных сетей для проектирования других нейронных сетей, исследуя, какая конфигурация узлов и слоев была наиболее эффективной. Вот страница, где вы можете скачать PDF https://arxiv.org/abs/1611.02120


2

После ответа @ Imran я нашел эту статью в одном из комментариев к сообщению CrossValidated, на которое он ссылался. Помимо попытки найти правильную архитектуру с использованием генетических моделей (вместо использования эмпирического правила), в разделе 2.1 даются некоторые теоретические границы того, сколько скрытых единиц должно быть в системе с одним / двумя скрытыми слоями.

РЕДАКТИРОВАТЬ: Я проверил эту теорему и обнаружил, что использование генетических моделей так же хорошо, как выбор случайной архитектуры.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.