Как работает нейросеть Google Translate |
||||||||||||||||||||||||||||||||||||||||||||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2018-02-28 20:15 проблемы машинного перевода, алгоритмы машинного обучения, реализация нейронной сети Google Translate по праву считается машинным переводчиком № 1 в мире. Сервис поддерживает работу со 103 языками и каждый день обрабатывает около 500 миллионов запросов. В 2016 году Google представила систему нейронного машинного перевода (GNMT), которая использует искусственную нейронную сеть для улучшения качества перевода. Действительно ли перевод стал лучше с её помощью? Давайте узнаем! Тонкости нейронного перевода: как это работает Нейронная модель машинного перевода использует иные принципы работы с текстом, чем стандартный статистический метод перевода. До появления нейронных сетей перевод проводился пословно — система переводила отдельные слова и фразы с учётом грамматики. Поэтому при сложных оборотах или длинных предложениях качество перевода оставляло желать лучшего. GNMT же переводит предложение целиком, учитывая контекст. Система не запоминает сотни вариантов перевода фраз — она оперирует семантикой текста. При переводе предложение разбивается на словарные сегменты. Затем с помощью специальных декодеров система определяет «вес» каждого сегмента в тексте. Далее вычисляется максимально вероятные значения и перевод сегментов. Последний этап — соединить переведённые сегменты с учётом грамматики. Отрывок из презентации GNMT, в котором показано, как нейронная сеть переводит предложение с китайского языка, разбивая его на смысловые сегменты Как действует алгоритм переводчика Чтобы понять принципы работы нейронного перевода от Google, давайте немного углубимся в технические детали. В основе Google Neural Machine Translation лежит принцип работы рекуррентных двунаправленных нейронных сетей (Bidirectional Recurrent Neural Networks), работающих с матричными вычислениями вероятности. Разберём подробнее, что всё это значит. «Рекуррентный» говорит, что система вычисляет значение слова или фразы на основе предыдущих значений в последовательности. Именно это позволяет системе учитывать контекст и правильно выбирать среди разных вариантов перевода. К примеру, в словосочетании «лук из красного дерева» слово «лук» система переведёт как «bow», а не «onion». Двунаправленность означает, что нейросеть разделена на два потока — анализирующий и синтезирующий. Каждый поток состоит из восьми слоёв, которые и проводят векторный анализ. Первый поток разбивает предложение на смысловые элементы и анализирует их, а второй высчитывает наиболее вероятный вариант перевода, исходя из контекста и модулей внимания. Обратите внимание, что анализирующая сеть «читает» предложение не только слева направо, но и справа налево — это позволяет в полной мере понять контекст. Отдельно она формирует модуль внимания, с помощью которого второй поток понимает ценность отдельных смысловых фрагментов. В нейронной системе наименьшим элементом является не слово, а фрагменты слова. Это позволяет сосредоточить вычислительные мощности не на словоформах, а на контексте и смыслах предложения. GNMT использует около 32 000 таких фрагментов. По словам разработчиков, это позволяет обеспечить высокую скорость и точность перевода без потребления чрезмерных вычислительных мощностей. Анализ фрагментов сильно уменьшает риски неточного перевода слов и словосочетаний с различными суффиксами, префиксами и окончаниями. Система самообучения позволяет нейронной сети с высокой точностью переводить даже те понятия, которые отсутствуют в общепринятых словарях — сленг, жаргонизмы или неологизмы. Но это ещё не всё. Нейросеть может работать и побуквенно. К примеру, при транслитерации имен собственных с одного алфавита на другой. Статистика: действительно ли стало лучше? С момента запуска системы GNMT прошло 2 года, поэтому можно оценить результаты. Почему именно сейчас? Дело в том, что нейронная система работает без установленной базы данных, и ей требуется время, чтобы построить и скорректировать методы перевода. К примеру, настройка машинной модели перевода, которая использует статистические методы, занимает от 1 до 3 дней. При этом построение нейронной модели такого же размера займёт больше 3 недель. Примечательно, что при увеличении базы время на обработку статистической модели растёт в арифметической прогрессии, а для нейронной сети — в геометрической. Чем больше база, тем больше разрыв во времени. А если учесть, что Google Translate работает с 10 000 языковых пар (103 языка), то понятно, что адекватные итоги можно подводить только сейчас. В ноябре 2016 года после полного окончания обучения системы и официального запуска аналитики Google представили подробный анализ результатов GNMT. Из него следует, что улучшения в точности перевода несущественные — в среднем 10%. Наибольший прирост дали самые популярные языковые пары вроде испанский-английский или французский-английский — с результатом точности в 85–87%. В 2017 компания Google проводила масштабные опросы пользователей Google Translate: их просили оценить 3 варианта переводов: машинный статистический, нейронный и человеческий. Здесь результаты оказались более интересными. Перевод с помощью нейросетей в некоторых языковых парах оказался очень приближён к человеческому.
За основу взята 6-балльная система оценивания качества перевода. 6 — максимальная оценка, 0 — минимальная Как видите, качество перевода в языковых парах «английский-испанский» и «французский-английский» практически соответствует человеческому. Но это и не странно, ведь именно на этих языковых парах происходило глубокое обучение алгоритмов. Вот те же результаты в графическом отображении, чтобы вы наглядно увидели разницу со стандартным машинным переводом. С другими языковыми парами ситуация не такая радужная, но масштабного исследования по ним нет. Тем не менее, если со схожими по структуре языками нейронный перевод работает вполне хорошо, то с кардинально разными языковыми системами (например, японский и русский) перевод заметно уступает человеческому. При этом стоит заметить, что разработчики при запуске нейронной сети не пытались достичь максимальной точности перевода. Всё потому, что он потребовал бы сложных эвристических конструкций, а это сильно снизило бы скорость работы системы. Разработчики постарались найти баланс между точностью и скоростью работы. На наше субъективное мнение, это у них получилось. И небольшой бонус напоследок Специалисты утверждают, что если нейронная система Google Translate научится оперировать не только текстами, но также и аудио- и видеофайлами, то в таком случае нужно ожидать резкий скачок в развитии машинного перевода. Первые шаги в этих сферах уже сделаны, активно ведутся разработки новых алгоритмов для анализа видео и аудио. Поэтому пользователи могут уже в ближайшие несколько лет ожидать новых сюрпризов от Google. Источник: www.cossa.ru Комментарии: |
|||||||||||||||||||||||||||||||||||||||||||