Какой смысл иметь маркер UNK для словарных слов во время декодирования? - PullRequest
1 голос
/ 26 октября 2019

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

Добавление токена UNK в словарь является обычным способом. обрабатывать слова в задачах НЛП. Вполне понятно, что он есть для кодирования, но какой смысл иметь его для декодирования? Я имею в виду, что вы никогда не ожидаете, что ваш декодер сгенерирует токен UNK во время предсказания, верно?

Ответы [ 2 ]

1 голос
/ 28 октября 2019

В зависимости от того, как вы предварительно обрабатываете данные тренировки, вам может понадобиться UNK во время тренировки. Даже если вы используете BPE или другую сегментацию подслов, OOV может появляться в обучающих данных, обычно это какие-то странные вещи UTF-8, фрагменты алфавитов, которые вас совсем не интересуют и т. Д.

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

Конечно, что вы обычно делаете во время вывода, так это то, что вы не позволяете модели прогнозировать UNK токенов, UNK всегда неверно.

0 голосов
/ 28 октября 2019

Я использовал его один раз в следующей ситуации:

У меня был предварительно обработанный word2vec (glove.6b.50d.txt), и я выводил встроенный вектор, чтобы преобразовать его в словоЯ использовал косинусное сходство, основанное на всех векторах в word2vec, если бы наиболее похожим вектором был тот, который я вывел бы.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...