Перейти к основному содержимому

Обучение трансформера

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

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

Для регуляризации модели в двух местах использовался DropOut:

  • в остаточных блоках отбрасывались случайные элементы преобразованного эмбеддинга перед их суммированием с исходным эмбеддингом;

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

Вероятность отбрасывания нейронов бралась равной 0.10.1.

Также для ускорения обучения и улучшения обобщающей способности сглаживались метки реальных классов (слов целевого языка), т.е. использовался частый приём label smoothing: вместо того чтобы обучать модель давать 100% вероятность правильному переводу, небольшая часть вероятности распределялась между другими словами, что улучило устойчивость и качество перевода, который по своей природе неоднозначный.

Литература

  1. Vaswani A. Attention is all you need //Advances in Neural Information Processing Systems. – 2017.