каков принцип считывания и форсирования учителя?

61
5

В эти дни я изучаю что-то о RNN и принуждении учителя. Но есть один момент, который я не могу понять. Каков принцип считывания и форсирования учителя? Как мы можем подавать выходной сигнал (или основную истину) RNN с предыдущего временного шага назад на текущий временной шаг, используя выход как функции вместе с входом этого шага или используя выход в качестве этого состояния ячейки шага? Я прочитал какую-то статью, но все-таки это смутило меня. (╯ □ ╰) o. Надеюсь, кто-то может ответить за меня.

спросил(а) 2021-01-19T12:16:06+03:00 2 месяца, 3 недели назад
1
Решение
75

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

x = inputs --> [0:n]
y = expected_outputs --> [1:n+1]
out = network_outputs --> [1:n+1]

teacher_forcing():
for step in sequence:
out[step+1] = cell(x[step])

Поскольку вы можете видеть, а не кормить вывод сети на предыдущем временном шаге в качестве входных данных, это вместо этого дает основную истину.

Первоначально было мотивировано избегать BPTT (обратное распространение во времени) для моделей, которые не содержат скрытых скрытых подключений, например, GRU (циклические повторяющиеся единицы).

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

ответил(а) 2021-01-19T12:16:06+03:00 2 месяца, 3 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема