Понимает индийский английский и отличает Амазонку от Amazon
«Яндекс Браузер» запустил закадровый перевод прямых трансляций. Вот как работает технология, которой нет больше ни у кого в мире.
В сентябре 2021 года «Яндекс Браузер» добавил функцию автоматического закадрового перевода видеороликов на платформах вроде YouTube и Vimeo. Пользователю достаточно открыть нужную запись (скажем, лекцию по программированию от американского профессора), нажать кнопку «Включить перевод» — и получить готовую «озвучку» на русском языке уже через пару минут. При этом спикера-женщину нейросеть озвучит женским голосом, мужчину — мужским.
А с сегодняшнего дня переводить и сразу озвучивать можно не только уже опубликованные ролики, но и прямые трансляции — будь то запуск космического корабля или презентация Apple. Причём почти в режиме реального времени: перевод начнётся через 30–50 секунд. И это при том, что практически ни у кого пока нет публично доступных технологий автоматического закадрового видеоперевода, которыми в «Яндекс Браузере» можно пользоваться уже почти год.
Нейросеть переводит прямые трансляции не только с английского, но и с других наиболее часто используемых в интернете языков: испанского, немецкого, французского и итальянского. Пока технология доступна для пользователей с ограничениями – не на всех YouTube-каналах в режиме публичного тестирования — там можно посмотреть, как работает перевод стримов. В списке есть и образовательные каналы вроде TED и TEDxTalks, и видеоблоги технологических гигантов, и «вечный» стрим NASA, и интервью с селебрити в прямом эфире.
Как устроена эта технология «Яндекс Браузера», рассказали её разработчики.
Как нейросеть обрабатывает текст
Синхронист во время перевода слушает и анализирует поступающую речь на одном языке и параллельно переводит на другой уже произнесённые спикером слова. Нейросети работают по такому же принципу.
Давайте вспомним, как устроен закадровый перевод записанного ролика. Сначала алгоритм скачивает аудиодорожку целиком. Поэтому нейросеть, которая отвечает за перевод, получает на вход весь текст и владеет полным контекстом — от этого сильно зависит качество перевода.
В обработке трансляции ситуация другая — у нас нет доступа к полной аудиодорожке. Видео показывают в прямом эфире, и переводить нужно практически на лету. Для этого нам пришлось перепридумать всю архитектуру перевода видео.
Мы имеем дело с двумя противоположными сущностями. С одной стороны, для качественного перевода нейросети нужно передать на вход как можно больше текста за один раз — так «переводчик» получает больше контекста. С другой стороны, нужно свести задержку к минимуму, иначе прямой эфир перестанет быть таковым. Поэтому важно начать переводить как можно быстрее — не в режиме синхронного перевода, но близко к нему. В этом случае на помощь приходят пять нейросетей — они работают последовательно, друг за другом.
- Первая нейросеть переводит речь в текст. В «Яндексе» уже давно работают над технологиями распознавания речи — например, для голосового ассистента Алисы. Но эти наработки не подходят для потокового перевода видео. Обычно пользователи общаются с Алисой коротко и односложно: задают вопросы или произносят команды. Поэтому её алгоритмы привыкли анализировать лишь небольшую последовательность звуков. Для обработки конференции или, например, интервью, где спикеры употребляют сложные термины, а выступления могут длиться часами, нужны другие технологии. Поэтому за перевод речи в текст в Алисе и переводчике трансляций отвечают разные нейросети.
- Вторая нейросеть определяет пол говорящего по частоте голоса (у мужчин это 80–150 Гц, у женщин — 150–250 Гц). Это нужно, чтобы девушку озвучивал женский голос, мужчину — мужской, а все глаголы стояли в правильном роде и женщины не говорили о себе, например, «я подумал» или «я сказал». Нейросеть верно определяет пол в 97% случаев, поскольку училась на больших массивах аудиозаписей с разными голосами. Ошибиться может, если слышит нехарактерно высокие голоса у мужчин и нетипично низкие у женщин, а также если на записи много фоновых шумов или у гарнитуры низкое качество звука.
- Самую сложную работу делает третья нейросеть — она выделяет из текста части, которые содержат законченную мысль. Нейросеть делит весь текст на кусочки: расставляет знаки препинания и так находит законченные по смыслу фрагменты, даже если это части сложных предложений. И именно они подаются на вход четвёртой нейросети, которая переводит их последовательно один за одним.
Ставить запятые и точки нейросеть учится на примере гигабайтов книг и больших письменных текстов. Проверить, как справляется система, просто: можно дать ей неразмеченный текст и попросить расставить знаки препинания. Сперва она проанализирует связи между словами и предложениями, а потом попытается восстановить пунктуацию.
- Четвёртая нейросеть переводит текст на русский язык, а пятая — озвучивает результат, ускоряя темп и сокращая паузы между словами, если спикер говорит быстро.
От чего зависит скорость перевода
Обычно задержка в переводе составляет от 30 до 50 секунд. Первые 10–20 секунд ролика нейросеть «слушает» спикеров — набирает контекст. Ещё 5-10 секунд требуется на перевод и озвучку. Пересылка данных между серверами и клиентом тоже занимает около 5-10 секунд. Дополнительные 10–15 секунд система берёт «про запас» — например, если вдруг оборвётся интернет-соединение и какой-то из процессов нужно будет повторить заново. Поэтому, когда пользователь включает перевод трансляции, система немного перематывает видео назад. Сейчас «Яндекс Браузер» берёт для перевода только прямые эфиры с возможностью перемотки — такая функция доступна на YouTube уже несколько лет.
Общая продолжительность задержки зависит от нескольких факторов:
- Скорости обработки отдельных этапов: распознавания, перевода и синтеза (озвучки). Инженеры научили нейросеть делить речь на смысловые фрагменты, чтобы ускорить процесс перевода и озвучки.
- Степени загрузки серверов. Чем больше трансляций переводится одновременно, тем больше памяти и вычислительных мощностей потребуется. Если вдруг откажет один из серверов, процесс автоматически «пойдёт» через другой. Если «упадёт» вся система, перевод продолжится позже — с того же места, где остановился, а пользователь получит уведомление с просьбой подождать, чтобы не упустить ни одного фрагмента.
- Скорости и качества речи в видео. Чем больше и быстрее говорит спикер и чем сложнее его предложения, тем дольше нейросетям приходится переводить его слова в текст и синтезировать речь. Например, перевести «Мама мыла раму» легко, а вот синтаксис как у Толстого — с десятками и даже сотнями слов в предложении — куда труднее.
Как нейросеть понимает контекст
Синхронист перед встречей обычно знает, о чём будет идти речь, и много читает по теме. Нейросеть работает «с листа», изначально ни о чём не догадываясь (хотя в будущем попробует предсказывать тему по заголовкам и тегам на YouTube). Она, скорее всего, ошибётся, если столкнётся с узкой терминологией — скажем, словами «вече» или «княжеский стол» в лекции про Древнюю Русь. Но распространённую профессиональную лексику понимает хорошо — экономических текстов, например, в обучающей базе «Яндекса» много, в том числе переведённых.
А ещё в большинстве случаев нейросеть правильно определяет тему внутри предложения. Если во фразе про Amazon будут слова «компания», «купить» и «акции», нейросеть, скорее всего, поймёт, что речь не о реке Амазонке, а об американской корпорации. К тому же реки в английском требуют определённого артикля the.
Всё потому, что нейросеть учится не на отдельных словах, а на корпусах текстов (проще говоря — огромных электронных собраниях самых разных произведений). Их система и «штудирует». Среди корпусов есть и параллельные: это когда у них есть и исходник на языке оригинала, и перевод на русский. С их помощью нейросеть учится выдавать более естественный перевод, поскольку текст на русском редактирует или даже полностью переводит сам человек.
Важен не только контекст, но и жанр. В игровых стримах, например, все кричат и эмоционируют — такую речь труднее распознать. А в комедиях сложность — это шутки. Причём чаще всего в них задействована «невербалика» — мимика, жесты, паузы. Такой контент — настоящий вызов, с которым в «Яндексе» сейчас учатся справляться.
В теории можно было бы создавать для неё обучающие словари с каламбурами, ругательствами и идиомами, но в этом нет смысла. Это дорого, долго и почти невозможно — всего не запишешь и не придумаешь.
Поэтому сейчас мы решили сконцентрироваться на общем качестве перевода, которое оценивается по двум критериям — адекватности (точной передаче смысла) и естественности. Последнюю обычно создаёт человек — за счёт адаптаций. Нейросеть же рискует исказить смысл или выдать не самый уместный вариант перевода. Простой пример — междометие well. Синхронист может перевести его как «в общем», «что ж», «скажем так», «так что?», «ну», а нейросеть выдаёт стандартное «хорошо», потому что вряд ли подберёт верный для контекста вариант. Было бы здорово, если бы она это умела, но главное, что это никак не мешает пониманию текста.
Для оценки качества перевода мы привлекаем специальных асессоров: они проверяют, правильно ли нейросеть передаёт смысл, хорошо ли наложили аудио на видео, верно ли определён пол спикера и качественно ли озвучен текст. Иногда нейросеть ошибается — и чем сложнее контент, тем выше риски. Но это не значит, что разработчики выбирают трансляции «попроще», — нейросеть должна учиться на сложных кейсах, чтобы набираться опыта и работать лучше.
Наши инженеры следят не только за точностью перевода — уже сейчас они работают над живостью и красотой речи. И учат нейросеть понимать интонации и эмоции (радость, грусть, риторические вопросы, сарказм), чтобы «роботы-актёры озвучивания» могли передавать это в переводной речи: скажем, не шутить безразличным голосом, если спикер изображал восторг, или переходить на шёпот, если стример говорит тихо (как делает это Алиса в умных колонках).
Умеет ли нейросеть импровизировать
Человек-синхронист, если что-то не расслышал или упустил, может выкрутиться: посмотреть на слайды презентации или в полученные от заказчика материалы и придумать нейтральное предложение, чтобы не молчать. Нейросети опираться особо не на что. Надписи в видео, например на слайде за спиной спикера, она читать умеет, но в потоковом переводе этого пока не делает — чтобы не перегружать серверы. Додумать то, о чём спикер не говорил, тоже не сможет.
Но зато она хорошо понимает акценты — как американский с британским, так и индийский с африканским. А ещё у неё, в отличие от человека, нет страха ошибиться.
Конечно, если докладчик будет сыпать десятками химических формул подряд, нейросеть, вряд ли сумеет их распознать и в переводе опустит. Или назовёт условный «Майкрософт» «Микрософтом», если имя собственное читается не по правилам. Но разработчики будут регулярно пополнять базу «учебных» аудиозаписей, чтобы ей было проще справляться с самыми разными темпами речи, произношениями и контекстами.
«Идеальный клиент» нейросети
У многих синхронистов со временем появляются любимые темы — скажем, почвоведение, потому что переводчик уже был на десятке отраслевых конференций и знает специфические термины. У технологии потокового перевода «Яндекса» тоже есть «идеальный клиент».
Это видео без шумов, криков и музыки. Нейросеть справится и со звуковыми помехами, но клиент на то и «идеальный», чтобы спикер говорил через качественную гарнитуру и размеренно.
А ещё чтобы контекст не сильно менялся: сложный и насыщенный смыслами текст — всегда вызов. Нейросети «удобно» переводить, например, стримы по игре Minecraft. К таким трансляциям на узкую тему или к важным для технологического мира мероприятиям вроде Apple WWDC команда может вручную составить словарь, изучив расшифровки предыдущих презентаций Apple. Это поможет системе не «зависать» на сложных моментах и меньше путаться в терминологии или, например, профессиональном или компьютерном сленге (например, «го катку»).
Как будет развиваться технология
Мы запустили технологию перевода прямых трансляций в публичное тестирование — это значит, что пока пользователи могут перевести стримы только из ограниченного списка YouTube-каналов. Чтобы попробовать технологию перевода уже сегодня, достаточно перезапустить установленный Яндекс Браузер — закрыть его и открыть заново.
На этом этапе нам нужно понять, как технология работает «в бою». Если перевод трансляций на YouTube будет пользоваться спросом, мы внедрим его и на других платформах — скажем, на Twitch. Также в будущем мы сможем переводить, например, деловые конференции — это мы планируем протестировать на себе и «попросить» нейросети перевести наше внутреннее собрание. Добавим и новые языки, например азиатские. А ещё постепенно нарастим мощности, чтобы поддерживать перевод большего числа трансляций одновременно.
Переводчик видео реально крутой продукт от Яндекса.
согласна, это необыкновенно, даже как то удивительно что создали у нас, хотя с удовольствием порадуюсь за команду разработчиков
Не очень странно. У нас много классных разработчиков, еще и русскоязычные. Было бы странно если они создали самый лучший переводчик с китайского языка например. А так все логично.
А такое смогёт?
Переводит без проблем
Я пробовал, очень хорошо работает, мне понравилось. Надеюсь на новые продукты в этой категории.
радуюсь за яндекс как за себя) молодцы!
во всем этом только один минус который все обнуляет - яндекс браузер.
Здравствуйте, а нормальная поисковая выдача без рекламы и внутренних сервисов выйдет погулять?
А вы, будучи авторизированным в Яндекс, уже нажали на "нет" 124 триллиона раз?
нет =0
В сторону перевода в живых переговорах в онлайн или онлайн не смотрите ? Когда ждать ?
Опять же перевод стримов интересен.
Подтверждаю. Божественный перевод! Даже индусов понимает
Это просто невероятно, я пару месяцев назад узнал о возможности перевода видео через нейросеть Яндекса, пробовал только на Ютубе, но хочу сказать это просто высший пилотаж, помимо точного перевода еще и возможность слушать мужские голоса - мужским переводчиком, женские - женским. Одним словом будущее уже здесь !
планируете на основе этой тихнологи добавить функционал в яндекс переводчик для реалтайм общения с иностранцами ?
Здравствуйте, Алексей! Уточните, пожалуйста, на каком устройстве вы хотели бы видеть такую возможность?
Сейчас у нас есть опция «Режим диалога (https://yandex.ru/company/services_news/2019/2019-09-25)», которая позволяет переводить речь собеседника.
Стыд и позор) я почему то не обращал на неё внимания, точнее просто в упор не замечал. Буду тестировать!
А можно ли наоборот, с русского на указанные языки?
Здравствуйте! Я из Яндекса. Сейчас такой возможности нет, но я обязательно передам команде ваше предложение 🙌
Тимур, вот мои доводы:
- иностранный медиаматериал обычно имеет сабы или переводится множеством любителей. Можно сказать что переводится всё.
- иностранные языки потребители контента у нас знают. А не целевой аудитории скорее всего и сервис не нужен. Остаётся узкий сегмент просмотра чего-то редкого на незнакомом языке.
- друзья-иностранцы хотят смотреть иноагентские новостные каналы и фильмы. "Собачье сердце" которое Мосфильм выложил на YT ещё имеет английские сабы, а для "Не горюй" - вообще нет ничего. И обычно покупаем фильм с сабами на их ресурсах, дорого и с смс
круто! жду, когда будут доступны любые каналы/сайты.
это не заставит перейти в яндекс браузер, но смотреть там некоторые видосы будет норм
Блин, вот это фича!
Работает :-) Класс.
фантастика! тысячи человеко-часов лучших умов, и все это еще бесплатно!
Блин, я все время до этого путал амазонок с амазоном (и наоборот).
Спасибо, что решили мою проблему!
Ошибки с этими видео
Зачитывает на английском
https://www.youtube.com/watch?v=-LgLBRf1SpE
Переводит по одному слову в несколько минут
https://www.youtube.com/watch?v=zUv44uDN40Q
На последнем видео ошибка перевода, на остальных перевел только одно слово, которое взял из субтитров
https://www.youtube.com/c/BrandonFM/videos
Видео про крипту переводит очень плохо
Классная вещь по сути, но… что только не придумают российские айтишники чтобы не учить английский 🤦♂️😄
Ну что сказать - это круто.
А можно это как-то к Coursera привязать?)
очень интересен продукт, хотел бы поучаствовать в проекте, если есть вакансии на этот проект то где можно было бы с ними ознакомиться?
а русский эта штука на английский переводит? для друзей интересуюсь, которые на русском не говорят
Пользовался только safari и chrome. А теперь установил ещё один браузер! Осень полезную функцию придумали! Спасибо команде Яндекса!