Нейронные сети - действительно оставленное программное обеспечение? - PullRequest
6 голосов
/ 02 августа 2011

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

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

Спасибо,
Tunnuz

Ответы [ 4 ]

3 голосов
/ 03 августа 2011

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

Тем не менее, SVM очень обременительны для реализации и не являются естественным обобщением для обучения с подкреплением, как это делают ANN (SVM в основном используются для решения автономных проблем).

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

Вот отличное место для начала ; просто ознакомьтесь с разделом «Обучение с разницей во времени», поскольку это стандартный способ, которым ANN решают проблемы обучения с подкреплением.

Одно предостережение: недавняя тенденция в машинном обучении состоит в том, чтобы использовать много разных обучающих агентов вместе через упаковку или повышение . Хотя я не видел такого в обучении с подкреплением, я уверен, что применение этой стратегии все равно будет гораздо более мощным, чем один ANN. Но если вам действительно не нужна производительность мирового класса (именно это и выиграло соревнование netflix), я бы избежал этой чрезвычайно сложной техники.

2 голосов
/ 07 августа 2011

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

0 голосов
/ 28 декабря 2013

Теоретически доказано, что нейронные сети могут аппроксимировать любую функцию (учитывая бесконечное количество скрытых нейронов и необходимые входные данные), так что нет, я не думаю, что нейронные сети когда-либо станут заброшенными.

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

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

Также будьте очень осторожны с представлением проблемы, которую вы ставите в своей нейронной сети (например:узлы входов): не могли бы вы или эксперт решить проблему, учитывая то, что вы даете в качестве входных данных для своей сети?Очень часто люди, внедряющие нейронные сети, не дают достаточно информации для нейронной сети, это не так уж редко, так что будьте осторожны с этим.

0 голосов
/ 02 августа 2011

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

Если у вас нет опыта работы с нейронными сетями, вам, возможно, будет удобнее использовать более простой метод обобщения RL, такой какгрубое кодирование.

...