Мнения 14 августа 2020

Татьяна Ландо, Google — о том, как общаться с ИИ и нужен ли миру общий язык

Далее

С повсеместным распространением интернета, растущим количеством устройств с естественно-языковыми интерфейсами в мире становится всё более популярной компьютерная лингвистика. Специалисты этой профессии работают в компаниях Google, Яндекс, Mail.Ru и ABBYY. В 2019 году вопрос совершенствования ИИ был включен в национальную стратегию развития, а компьютерная лингвистика — в перечень профессий будущего. Татьяна Ландо, лингвист-аналитик компании Google, рассказала «Хайтеку» об особенностях этой профессии, связи человеческого и компьютерного языков, взаимодействии человека и ИИ, а также необходимости автоматизации деятельности человека.

Татьяна Ландо — старший лингвист Google, живет и работает в Лондоне. Занимается проектами в компьютерной лингвистике и анализе языковых данных, проводит консультации по вопросам автоматической обработки естественного языка, выступает с лекциями про диалоговые системы. С 2012 по 2016 была одним из основных организаторов конференции AINL — Artificial Intelligence & Natural Language. В 2016 году стала соредактором первого учебника на русском языке «Прикладная и компьютерная лингвистика».


О роли человека в компьютерной лингвистике

— Кто такой компьютерный лингвист — гуманитарий или технарь?

— Это очень сложный вопрос, потому что если спросить гуманитариев, то мы, компьютерные лингвисты, не совсем к ним относимся, а если спросить техническую сторону, то для них мы не очень хорошо программируем.

Но прелесть этой области заключается в том, что мы как раз можем приносить лучшее из разных миров друг в друга. Если мы говорим о создании разговорных агентов, то мои знания лингвистики помогают находить слабые места у современных технологий и предлагать решения, о которых люди, незнакомые с лингвистикой, могли бы не догадаться. Например, могу подсказать способы изменения слов. Естественно, это работает и в обратную сторону. Если исторически лингвисты считали частоты по корпусу, в том числе для определения авторства, чуть ли не вручную, то технари подсказывают программы и алгоритмы для автоматизации этих процессов, чтобы лингвисты концентрировались на более интересных проблемах.

— Чем занимается компьютерная лингвистика?

— Это направление посвящено, с одной стороны, созданию речевых, связанных с языком интерфейсов между человеком и компьютером, с другой стороны — компьютерной обработке языковых данных в самом широком смысле. В целом это любое пересечение лингвистики и компьютеров.

Компьютерная лингвистика помогает быстро обрабатывать огромные объемы данных. Многие лингвистические исследования включают в себя корпусную лингвистику, когда берется огромный массив текстов и по нему считаются какие-то явления и закономерности. Всё это гораздо быстрее и проще делать с помощью компьютерных алгоритмов. Помогают они и в установлении авторства: считают распределение частей речи, длину предложений, другие особенности, о которых сами авторы могут не задумываться. И когда возникает вопрос, кто написал то или иное произведение, можно сравнить этот количественный профиль с тем, что мы уже знаем об авторе, и выяснить, кто на самом деле был автором.

Я работаю над улучшением взаимодействия человека с техникой посредством языка. Поскольку язык для нас — наиболее привычный способ взаимодействия друг с другом, мне кажется, что давать команды на естественном языке проще, чем нажимать кнопки и вбивать фразы. Идеально было бы говорить кофеварке: «Свари мне кофе», или говорить холодильнику: «Закажи мне продукты, которые закончились», или чтобы компьютер автоматически переводил речь. Нам бы хотелось иметь такой универсальный инструмент: приложение в телефоне, программу или отдельное устройство, в которое мы говорим на одном языке, а оно идеально переводит на другой язык. Пока что это работает с очень ограниченным качеством, но технологии движутся в том направлении.


Компьютерная лингвистика — направление прикладной лингвистики, ориентированное на использование компьютерных программ для моделирования функционирования языка в тех или иных условиях, а также сфера применения компьютерных моделей языка в лингвистике и близких ей дисциплинах. Дисциплина зародилась в 60-е годы XX века и прежде всего представляла собой разработку методов для общения человека с ЭВМ на естественном или ограниченно естественном языке. Также к компьютерной лингвистике относятся создание гипертекстовых систем и автоматический перевод.

В 1980–1990 годы появилось новое направление — корпусная лингвистика, в рамках которой разрабатываются общие принципы построения лингвистических корпусов данных (текстов) с использованием современных компьютерных технологий. Корпус текстов — специально подобранные тексты из книг, журналов, газет, перенесенные на компьютерные носители и предназначенные для автоматической обработки. Также корпусная лингвистика занимается созданием программ для извлечения нужной информации из текстов.

С начала 2000-х Институт русского языка имени В. В. Виноградова РАН разрабатывает Национальный корпус русского языка из русскоязычных текстов объемом примерно 100 млн словоупотреблений.

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


— В России готовят специалистов по компьютерной лингвистике или подобные специалисты — это уникальные самоучки?

— В России готовят: я училась в России в СПбГУ, на кафедре прикладной лингвистики, и таких кафедр около десяти по стране. В Высшей школе экономики в Москве не так давно открылась новая кафедра по прикладной и компьютерной лингвистике. В Питере есть одна или две, а в Москве еще в РГГУ и МГУ.

— А как обстоят дела с таким обучением за рубежом?

— На Западе в последнее время есть тенденция сочетать Computer Science и Natural Language Processing вместе. Выпускники таких специальностей чаще больше технари, чем в России, но при этом их знания лингвистики могут быть очень разными, в зависимости от тех учреждений, в которых они учились. Есть кафедры, которые стараются совмещать и техническую, и лингвистическую стороны образования, а есть те, которые в основном опираются на техническую или лингвистическую сторону. Рынок этих специалистов сильно растет, особенно в США, хотя и чувствуется некоторая нехватка людей с двойным профилем.


Computer Science, с англ. «компьютерная наука» — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность ее использования для принятия решений. В России под это определение подпадают следующие направления подготовки специалистов: ВМиК (вычислительная математика и кибернетика), ИВТ (информатика и вычислительная техника) и другие.

Natural Language Processing, с англ. «обработка естественного языка» — общее направление ИИ и математической лингвистики. Изучает проблемы компьютерного анализа и синтеза естественных языков.


Язык компьютерный и человеческий

— Обычно людям легче дается изучение языка, если они уже знают другой язык из этой же группы. С обучением компьютера языку всё то же самое?

— Людям проще учить языки той же группы, потому что они похожи и лексически, и грамматически. Скажем, в русском языке у существительных есть падежи, а в романских нет, поэтому если мы учим другие славянские языки, то концепт падежей нам будет понятен плюс знаком лексический состав слов. Точно так же схожи итальянский и испанский языки: там есть одинаковые артикли, сочетания артиклей и предлогов, структура времен. И нам гораздо сложнее будет учить иероглифические языки, потому что там письмо сильно отличается от индоевропейской семьи языков.

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

— Какие-то слова и их сочетания являются редкими, какие-то — общеупотребительными. Насколько важен такой анализ для машинного обучения?

— Частота слов и словосочетаний — это одна из основных, базовых вещей, которые можно узнать про язык: например, информационный поиск во многом опирается на метрику TF/IDF, которая основана на частотном анализе. Для классификации текстов очень важно сравнивать частоты внутри одной тематики со всем языком. Допустим, мы хотим классифицировать научные статьи по их темам: математика, физика или медицина. Одна из базовых методик — посмотреть, какие слова и словосочетания встречаются внутри математических, физических и медицинских статей, и сравнить их друг с другом. Там много разных факторов, но можно ожидать, что названия белков будут только в медицинских текстах, названия алгоритмов — в математике, а названия каких-то констант будут характерны только для физики.


TF/IDF — статистическая метрика, показывающая весомость конкретного слова в контексте документа, входящего в общую базу. TF — частота слова — отношение количества вхождения конкретного слов к суммарному набору слов в исследуемом тексте, отражение важности слова. IDF — обратная частота — инверсия частотности, с которой определенное слово фигурирует в коллекции текстов. Метрика TF/IDF обычно используется поисковыми системами для определения релевантности той или иной страницы запросу, а также для определения близости разных текстов друг другу для их группировки.


— Получив часть фразы, человек всегда ожидает ее продолжения. Можно ли научить компьютер таким же образом предсказывать выражения и использовать это, например, для коррекции распознавания речи?

— Конечно, можно, но у любого «можно» есть своя применимость и качество. Ни одна из задач, которыми сейчас занимается компьютерная лингвистика, не решена и никогда не будет решена на 100%. Потому что язык складывается из слов, словосочетаний, устойчивых выражений, пословиц и поговорок, а также из того, как каждый конкретный человек этим пользуется. Есть люди, у которых более богатый словарный запас. Многие выражения записаны в словаре, особенно старые пословицы и поговорки. Распространенные языковые выражения, пословицы, поговорки, устойчивые словосочетания можно просто, условно говоря, переписать в словарь компьютера и примерно объяснить. И сопоставить с какими-то синонимами. И тогда у компьютера будет это в базе.

Но надо понимать, что современные системы, даже те, которые выглядят очень умными, не понимают всё, что именно им говорят люди. Научить компьютер понимать фразы нельзя, но можно создать ресурсы, которые будут симулировать понимание. Можно задать алгоритму, что «Сказав “А”, скажи “Б”» — синоним фразы «Закончи мысль». Но нельзя сказать, что компьютер понимает, что именно это значит.

— Переводчики в видеочатах или мессенджерах в режиме реального времени пока работают не очень хорошо. С чем это связано?

— Алгоритмы ИИ обучаются на текстах, написанных на двух языках. Эти тексты сравниваются, чтобы точно можно было сказать, какой кусок текста в языке А соответствует какому куску текста в языке Б. Проблема в том, что большая часть этих алгоритмов обучается на книгах, субтитрах, сайтах, которые написаны литературным языком. А люди, в том числе в чатах, используют разговорный язык и не всегда говорят грамматические корректно, бывает много опечаток, пунктуация зачастую выбрасывается из текста. Например, я никогда не ставлю точки в конце предложения, когда пишут в мессенджерах. Поэтому алгоритмам не хватает именно такой спонтанной, разговорной, чатовой речи. Но мы не можем обучаться на пользовательских данных, потому что это персональная информация и она никому не доступна. Получается, что мы обучаем системы на одних типах языка, а применяем на других. И всегда при таком переносе качество сильно страдает.

Взаимодействие человека и искусственного интеллекта

— Зачем вообще будущему ИИ понимать людей и их язык?

— Это философский вопрос. Понимание и язык очень сильно связаны у людей, потому что мы демонстрируем свое понимание с помощью языка. С точки зрения ИИ не до конца понятно, чего именно мы от него хотим. И я не уверена, что понимание ему на самом деле нужно.

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

Есть еще неязыковой аспект искусственного языка, где больше этических вопросов, например, самодвижущиеся автомобили. Как они должны отрабатывать столкновение с другими машинами? Как должно быть устроено принятие решений, если машина едет по дороге и перед ней выскакивает человек? Люди принимают решение мгновенно, но на что должен опираться алгоритм, чтобы принять такое решение? И в тот момент, когда вместо алгоритма у нас будет глубокое понимание, возникнет тот самый сильный ИИ. Я не уверена, что это в принципе возможно. Поэтому для того, чтобы хорошо работали алгоритмы, в первую очередь компьютерной лингвистики, понимание необязательно. Любое понимание будет симулироваться какими-то моделями и алгоритмами в достаточной степени, чтобы выполнять большую часть задач, которые мы хотим автоматизировать. Например, холодильник, который сам покупает молоко.

— Одной из главных проблем создания ИИ называют отсутствие естественного языкового интерфейса для общения человека с компьютером. А как же многочисленные голосовые помощники?

— Голосовые помощники — это голосовой интерфейс между человеком и компьютером. Соответственно, все помощники, которые сейчас существуют, заточены под какие-то задачи. Абсолютного интерфейса, который бы покрывал все их, конечно, сейчас нет. Плюс качество современных технологий еще далеко от совершенства, бывают случаи с разными голосовыми помощниками, когда они что-то понимают, а если эту фразу сформулировать иначе, то перестают ее понимать. Или если сформулировать в более разговорной форме, помощник может сломаться. Если сформулировать простым языком, похожим на язык поисковых запросов, то помощник понимает лучше.

Речь идет не о том, что интерфейса совсем не существует, а о том, что качество и разнообразие дел, с которыми голосовые помощники могут помогать, еще недостаточно развиты для полного их использования. Мы всё равно вынуждены использовать клавиатуру и мышку для взаимодействия с компьютером. Телефоны чуть лучше в этом плане, для них проще создавать софт. Но стандартный десктоп еще далек до полного управления, хотя такие технологии могли бы быть очень полезны, например, пожилым людям.

— Идея общемирового языка была популярна среди фантастов. Можно ли построить такую универсальную модель для всех языков и нужна ли вообще она нам?

— У нас уже есть английский как универсальный язык общения, и я боюсь, что его вряд ли кто-то сможет сдвинуть с этих позиций. Есть направление универсальной грамматики, которое говорит, что языки строятся примерно по одним и тем же принципам, и можно создать такую общую модель, которая будет описывать все языки с разными вариациями. Это красивое теоретическое построение, и оно легло в основу довольно большого количества лингвистических течений. Особенно в XX веке.

Синтаксические парсеры и многие модели машинного обучения сейчас одинаковы, просто применяются к разным данным, и получаются результаты на разных языках в зависимости от того, к каким данным их применили. Есть модели, которые смешивают похожие языки внутри одной семьи, чтобы увеличить количество данных и в среднем увеличить качество.

С практической точки зрения не всегда понятно, зачем нужна такая универсальная модель. Она, кажется, не совсем применима, особенно в последнее время. Сейчас в тренде машинное обучение и нейронные сети, то есть разработчики пытаются одним алгоритмом решить задачу целиком. Например, перевод текста: на входе текст на одном языке, на выходе — на другом, а в середине какая-то композиция нейронных сетей и других алгоритмов машинного обучения. В такой парадигме эти универсальные подходы к языкам не актуальны.

Автоматизация деятельности: за и против

— Голосовые помощники упрощают жизнь. Настигнет ли нас такой момент, когда вся наша деятельность будет таким образом упрощена?

— Всю деятельность так упростить невозможно и не нужно, потому что упрощать всегда нужно рутинные операции и действия, которые мы выполняем по необходимости. Например, мы кликаем мышкой, потому что так нужно управлять компьютером сейчас. Хорошо оптимизировать промежуточные шаги, сделать человека более продуктивным, освободить ему время. Если мы можем использовать в том числе голосовой интерфейс для этого, то было бы удобно. Например, сейчас популярен тренд на создание голосовых интерфейсов к автомобилям просто потому, что если едешь за рулем и не хочешь снимать руки с руля, то проще сказать: «Включи дальний свет» или «Мигни “спасибо” той машине, которая меня пропустила».

— А что автоматизировать нельзя ни в коем случае?

— Самовыражение. Вообще можно автоматизировать всё, кроме того, что люди хотят делать сами. И нужно автоматизировать вещи, которые требуют большой точности, но нужно хорошо понимать, как мы строим эти алгоритмы, как их проверяем и насколько можем им доверять. И нужно ли действительно доверять всё алгоритмам или строить помощников для людей, которые принимают решения. В современных самолетах есть автопилот, но пилоты всё равно нужны, потому что в крайних случаях люди принимают решение эффективнее или быстрее, чем машина. То же самое с медициной: мы можем себе представить роботов, которые будут оперировать людей вместо хирургов, но я бы не хотела этого как минимум потому, что опыт в машинах накапливается не так, как в людях, и погрешность алгоритмов всегда существует.

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

— Какую свою работу вы бы отдали роботу?

— Я работаю в разработке Google Assistant лингвистом, и моя задача заключается в том, чтобы понять, как сделать его еще более понимающим и полезным с точки зрения языковых систем. Чтобы система лучше понимала людей, а ее качество было лучше, чем сейчас. Чтобы возможности расширялись и сценарии, которые программа может поддерживать, усложнялись, а язык был более разговорным. Поэтому построение роботов роботам пока еще рано отдавать.

Я с удовольствием готова аутсорсить какие-то рутинные вещи, которые делаю в своей личной жизни, например, покупку продуктов, напоминания, я и так пользуюсь довольно много напоминаниями, таймером или будильником, то есть гораздо проще просто сказать: «Окей, Гугл, разбуди меня завтра в 9 утра», — чем брать телефон и нажимать кнопки. Я хочу, чтобы мой дом знал, что перед моим приходом нужно включить отопление сильнее, а пока меня нет дома, экономить. Хорошо автоматизировать наши маленькие действия, которые не обязательно делать самим.


Читайте также:

Создан способ искоренить паразитов, перекрыв все пути их метаболизма

После введения российской вакцины у добровольцев нашли 144 побочных эффекта

Опубликованы первые испытания скорости интернета Starlink