Каково использование рекуррентных нейронных сетей при использовании их с Укреплением, Учащимся?

LabVIEW позволяет Вам начать быстро, и (как другие уже сказали), имеет крупную библиотеку кода для того, чтобы сделать различный тест, измерение & связанные с управлением вещи.

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

Ваш код хранится как ВИС. Это непрозрачные, двоичные файлы. Это означает, что Ваш код действительно не является Вашим, это - LabVIEW. Вы не можете записать свой собственный синтаксический анализатор, Вы не можете записать генератор кода, Вы не можете сделать автоматизированных изменений через макросы или сценарии.

Это сосет , когда Вы имеете 5000 VI приложений, для которых нужна некоторая незначительная тонкая настройка, примененная универсально. Ваш [только 119] опция состоит в том, чтобы пройти каждый VI вручную, и небеса помогают Вам при пропавших без вести изменения в одном VI прочь в углу где-нибудь.

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

Любой ценой, используйте LabVIEW, если Вы делаете что-то простое, или должны моделировать или не планируете поддержать свой код.

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

(О, и если Вам нужны библиотеки DAQ, NI получила C++ и.Net версии тех, также.)

10
задан devoured elysium 23 November 2009 в 14:19
поделиться

2 ответа

Рекуррентные нейронные сети, сокращенно RNN (хотя следует помнить, что RNN часто используется в литературе для обозначения случайных нейронных сетей , которые фактически являются частный случай Recurrent NN), бывают разных «вкусов», что заставляет их проявлять различное поведение и характеристики. В целом, однако, эти многие оттенки поведения и характеристик коренятся в доступности входных данных [обратной связи] для отдельных нейронов . Такая обратная связь исходит от других частей сети, будь то локальных или удаленных, с того же уровня (включая в некоторых случаях «сам» ) или даже на разных слоях (*). Информация обратной связи, которую он рассматривает как «нормальный» ввод нейрона, может затем влиять, по крайней мере частично, на его вывод.

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

Одним из способов использования обратной связи является , чтобы сделать сеть более устойчивой к шумам и другим дефектам на входе (то есть на входе сети в целом). Причина этого в том, что в дополнение к входам, «непосредственно» относящимся к сетевому входу (типы входов, которые присутствовали бы в сети прямого распространения), нейроны имеют информацию о том, о чем «думают» другие нейроны. Эта дополнительная информация затем приводит к обучению Хебба , то есть к идее, что нейроны, которые [обычно] срабатывают вместе, должны «побуждать» друг друга к срабатыванию. На практике этот дополнительный ввод от соседних нейронов с "одинаковым возбуждением" (или соседних с отрицательным сигналом) может побудить нейрон срабатывать, даже если его входы без обратной связи могли быть такими, что он не сработал (или сработал менее сильно, в зависимости от типа сети).

Примером этой устойчивости к недостаткам ввода является ассоциативная память , обычное использование RNN. Идея состоит в том, чтобы использовать информацию обратной связи для «заполнения пробелов».

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

Еще одно чрезвычайно важное использование обратной связи состоит в том, что в некоторых архитектурах она может ввести в систему временной элемент . Конкретный вход [обратной связи] может не столько проинструктировать нейрон о том, что он «думает» [сейчас], но вместо этого «напомнить» нейрону, что, скажем, два цикла назад (какие бы циклы ни представляли) состояние сети (или одно из его подсостояния) было "X". Такая способность «помнить» [обычно] недавнее прошлое является еще одним фактором устойчивости к шуму на входе, но ее основной интерес может заключаться во введении »

Это не означает, что сеть обратной связи - это сплошные черные ящики, на самом деле некоторые из RNN, такие как сети Хопфилда , довольно хорошо изучены. Просто математика обычно более сложна (по крайней мере, для меня ;-))

Я думаю, что вышеизложенное, как правило (слишком часто!), Касается вопросов пожирающего элизиума (OP) о « что делает RNN вместо », и « общие задачи, для которых они используются ». Чтобы многие могли дополнить эту информацию, вот неполный и неофициальный обзор приложений RNN. Составить такой список сложно: )

  • Комбинаторная оптимизация
  • Также существует множество приложений, связанных с временным измерением RNN (другая область, где сети FF обычно не встречаются)

    • Обнаружение движения
    • Прогноз нагрузки (как и в случае с коммунальными службами). или услуги: прогнозирование нагрузки в краткосрочной перспективе)
    • обработка сигналов: фильтрация и управление
    16
    ответ дан 3 December 2019 в 17:20
    поделиться

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

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

    7
    ответ дан 3 December 2019 в 17:20
    поделиться
    Другие вопросы по тегам:

    Похожие вопросы: