Автор: Ву Юнхуи, главный инженер команды Google Brain
Источник | Разработчики Google Google_Developers
На Google I/O мы представили Smart Compose, новую функцию в Gmail, которая использует машинное обучение для интерактивного предоставления предиктивных предложений для завершения предложения пользователям, которые составляют сообщение, что позволяет пользователям быстрее составлять электронные письма. Основанная на технологии Smart Reply, функция Smart Compose предлагает совершенно новый способ составления электронных писем — независимо от того, отвечаете ли вы на электронное письмо или создаете новое электронное письмо с нуля.
При разработке Smart Compose столкнулись с некоторыми ключевыми проблемами, в том числе:
Задержка: поскольку Smart Compose должен делать прогнозы на основе каждого нажатия клавиши пользователем, идеальные прогнозы должны быть сделаны в течение 100 миллисекунд, если пользователь должен быть незаметен для любой задержки. В настоящее время главным приоритетом становится баланс между сложностью модели и скоростью вывода.
Размер: у Gmail более 1,4 миллиарда пользователей. Чтобы обеспечить автоматический прогноз состава предложения для всех пользователей Gmail, модель должна быть достаточно мощной, чтобы давать рекомендации, адаптированные для пользователей в контексте нюансов текста.
Справедливость и конфиденциальность: при разработке Smart Compose нам нужно было устранить потенциальные источники предвзятости во время обучения и следовать тем же строгим стандартам конфиденциальности пользователей, что и Smart Reply, чтобы гарантировать, что наши модели не раскрывают личную информацию пользователей. Кроме того, исследователи также не имеют доступа к электронным письмам пользователей и не могут просматривать их, а это означает, что им приходится разрабатывать и обучать систему машинного обучения на наборе данных, который они даже сами не могут просмотреть.
Найдите подходящую модель
Типичные языковые генеративные модели, такие как ngram, нейронный мешок слов (BoW) и модели языка RNN (RNN-LM), учатся предсказывать следующее слово в зависимости от последовательности префиксных слов. Однако в электронной почте слово, которое пользователь вводит в текущем электронном письме, становится «сигналом», который модель может использовать для прогнозирования следующего слова, которое модель будет использовать для прогнозирования следующего слова. Чтобы включить больше информации о том, что пользователь хочет сказать, наша модель также ссылается на тему электронного письма и содержимое тела предыдущего электронного письма (при условии, что пользователь отвечает на только что полученное электронное письмо). Примечание: ссылка на ngramEn. Wikipedia.org/wiki/LAN висит…Neural Bag of Words (BoW) СсылкиВу Ву Две сестры.org/papers/Vol U…Ссылка на язык RNNwoohoo.is CA-speech.org/archive/int…
Одним из способов включения и использования дополнительного контекста является преобразование вопроса в задачу машинного перевода «последовательность в последовательность» (seq2seq), где исходная последовательность представляет собой конкатенацию темы электронного письма и предыдущего тела электронного письма (если есть), а пользователь составляет электронное письмо как целевую последовательность. Хотя этот подход показал хорошие результаты с точки зрения качества прогнозирования, он не соответствовал нашим строгим критериям задержки.
Чтобы улучшить это, мы объединяем модель BoW с RNN-LM, и комбинированная модель работает быстрее, чем модель seq2seq, с минимальным влиянием на качество прогнозирования модели. В этом гибридном подходе мы кодируем тему электронного письма и предыдущее содержимое электронного письма, равномерно распределяя вложенные слова в каждом регионе. Затем мы объединяем эти равномерно распределенные гнезда и передаем их целевой последовательности RNN-LM каждый раз, когда выполняется шаг декодирования, как показано на диаграмме модели ниже.
Архитектура модели Smart Compose RNN-LM. Тема сообщения и предыдущая информация электронной почты кодируются путем равномерного распределения вложенных слов в каждом поле в каждой области. Затем усредненное вложение предоставляется целевой последовательности RNN-LM каждый раз, когда выполняется этап декодирования.
Обучение и услуги в ускоренном режиме
Конечно, когда мы решили применить этот подход к моделированию, нам пришлось настраивать различные гиперпараметры модели и обучать модель на миллиардах примеров, и все это отнимало довольно много времени. Чтобы ускорить процесс, мы использовали для наших экспериментов полный модуль TPUv2. Таким образом, мы смогли обучить модель до конвергентного состояния в течение дня.
Даже с обученной более быстрой гибридной моделью первоначальная версия Smart Compose по-прежнему имела среднюю задержку обслуживания в несколько сотен миллисекунд при работе на стандартном ЦП, что кажется далеким от первоначального намерения Smart Compose помочь пользователям сэкономить время. К счастью, TPU можно использовать во время логического вывода, чтобы значительно ускорить взаимодействие с пользователем. Перенеся большую часть вычислений на TPU, мы сократили среднюю задержку до десятков миллисекунд, а также значительно увеличили количество сервисных запросов, которые может обработать один компьютер.
Справедливость и конфиденциальность
Достижение справедливости в машинном обучении имеет решающее значение, поскольку модели понимания языка отражают человеческие когнитивные предубеждения, что приводит к избыточным ассоциациям слов и предложениям по группировке предложений. Как отмечают Калискан и др. в своей недавней статье «Семантика, полученная автоматически из языковых корпусов, содержит человеческие предубеждения», эти ассоциации глубоко скрыты в данных естественного языка, что важно для построения любой языковой модели. Мы активно изучаем, как мы можем продолжать уменьшать потенциальные проблемы предвзятости в наших процедурах обучения. Кроме того, поскольку Smart Compose обучается на миллиардах фраз и предложений, аналогично тому, как обучаются модели машинного обучения спама, мы провели обширное тестирование, чтобы убедиться, что модель запоминает только общие фразы, используемые различными типами пользователей.
будущие направления исследований
Мы постоянно работаем над улучшением качества прогнозирования моделей генерации языка, следуя современным архитектурам (например, Transformer, RNMT+ и т. д.) и экспериментируя с новейшими и самыми передовыми методами обучения. Мы внедряем эти более продвинутые модели в производство, как только экспериментальные результаты моделей удовлетворяют строгим ограничениям по задержке. Кроме того, мы работаем над интеграцией персональных языковых моделей, чтобы сделать систему более точной для имитации персонализированных стилей письма разных пользователей.
Благодарность
Модель генерации языка Smart Compose от Бенджамина Ли, Миа Чен, Гагана Бансала, Джастина Лу, Джеки Цая, Каушика Роя, Тобиаса Боша, Йинана Вана, Мэтью Диркера, Кэтрин Эванс, Томаса Джаблина, Дехао Чена, Вину Раджашекхара, Акшая Агравала, Юань Цао , разработанный Shuyuan Zhang, Xiaobing Liu, Noam Shazeer, Andrew Dai, Zhifeng Chen, Rami Al-Rfou, DK Choe, Yunhsuan Sung, Brian Strope, Timothy Sohn, Yonghui Wu и др.