6 сезон · выпуск 13 · 22 февраля 2022 · 52 мин
Компьютерная лингвистика. Как машины учатся понимать людей
Слушать · 52:18
Как сказать «привет» на эсперанто? В каком фильме Леонардо Ди Каприо ползает по лесу? Ежедневно компьютеры отвечают на миллионы таких запросов и с каждым годом делают это всё успешнее. О том, как машины обрабатывают текст и учатся говорить с нами на одном языке рассказывает Иван Ямщиков, руководитель лаборатории естественного языка, созданной Яндексом совместно с Высшей школой экономики в Санкт-Петербурге.
Партнер этого эпизода — компания Яндекс. Наши совместные выпуски выходят по вторникам раз в две недели.
Ссылки:
Сайт Лаборатории естественного языка https://ai.yandex.com/leya
Подкаст «Проветримся!» https://progulka.yamshchikov.info
Подкаст «Лабибэй» https://labibay.yamshchikov.info
YouTube-канал Ивана Ямщикова https://www.youtube.com/channel/UC0tXFLOZREynjWf7BhFJHLQ
Книги и статьи, упоминаемые в эпизоде:
Статья сотрудников Google «Внимание — это все, что тебе нужно» https://proceedings.neurips.cc/paper/2017/file/3f5ee243547dee91fbd053c1c4a845aa-Paper.pdf
Статья Эндрю Ына «Страсть к машинному обучению»
Книга Стивена Пинкера «Просвещение сегодня» https://alpinabook.ru/catalog/book-prosveshchenie-segodnya
Книга Ричарда Роджерса «Цифровые методы»
Книга Paranoid Transformer, сгенерированная нейросетью https://deadalivemagazine.com/press/paranoid-transformer.html
Проект Mendeley https://www.mendeley.com
Как компьютер распознает омонимы и разные формы слов
Тест Тьюринга. Машина vs человек
Самата бесит, что голосовые помощники или поиск не всегда его понимают. В чем сложности распознавания текста?
Может ли компьютер обрести свой авторский стиль
Какие задачи не умеет решать машина
Над выпуском работали
- Редакторка
- Юля Яковлева
- Младшая редакторка
- Маша Агличева
- Продюсеры
- Павел Боровков, Настя Медведева
- Звукорежиссерка
- Нина Мамотина
- Дизайнер обложки
- Петр Сутупов
Транскрипт
Иван Емщуков, Самат Галимов · расшифровано автоматически, ошибки возможны
-
Всем
-
привет! Меня зовут Самат Галимов, и это подкаст «Запуск завтра». Как технический директор я пытаюсь разобраться, как устроены сложные и интересные штуки. Я зову профессионала, с которым можно поговорить простым человеческим языком. Напоминаю, что эпизоды, которые у нас выходят по вторникам раз в две недели, мы делаем вместе с Яндексом. На примере их сервисов мы продолжаем разбираться в том, как устроен IT. На самом деле мы сегодня будем говорить не о сервисе и даже не о технологии, а скорее о области знания, о науке, компьютерной лингвистике. Может показаться, что все это какая-то теория, но при этом вы наверняка, так же как и я, сегодня что-нибудь говорили Сири или Алисе, или переводили что-то онлайн-переводчиком с одного языка на другой. или хотя бы забивали что-то в поиск. Вот это все работает благодаря достижениям компьютерной лингвистики. Сделать так, чтобы компьютер нас понял, а потом еще так ответил, чтобы нам текст можно было прочитать и понять— это безумно сложная задача, которую научились нормально решать буквально в последние 10-15 лет. В том, как это устроено под капотом, мы сегодня и разберемся.
-
Меня зовут Иван Ямщиков, я руковожу лабораторией естественного языка (Лаборатория Лея / LEYA), которая создана совместно с Яндексом, высшей школой экономики в Санкт-Петербурге. Кроме того, я делаю подкаст «Проветримся», подкаст «Лабибэй», занимаюсь популяризацией науки и вообще всякими штуками вокруг науки и образования.
-
В каких конкретных продуктах можно увидеть результат трудов компьютерных лингвистов?
-
Поиск. Вводишь туда текст, и поиск понимает, что тебе показать на твой запрос. Причем важно понимать, что современный поиск Яндекса он может искать по каким-то довольно странным вещам. Фильм про супергероя, где он поцеловался с девочкой, вися вверх тормашками. «Человек-паук». Это раздел из компьютерной лингвистики, который называется раздел NLP— Natural Language Processing. И, собственно, слово «естественный язык», словосочетание, оно звучит для человека странно, потому что его придумали программисты, потому что у программистов сначала были искусственные языки, языки программирования, к примеру. А потом они такие, а давайте мы какие-нибудь наши идеи будем применять и к живым языкам. И как мы их назовем? Natural language. И вот так появился NLP, и вот это то, чем мы занимаемся. Где используется? Ну вот поиск, да, ты ввел что-то в поисковую строку, алгоритм понял, что ты ищешь. Любой автокомплит, T9— тоже пример компьютерной лингвистики. Или когда ты с телефоном пытаешься разговаривать, вводишь первое слово, потом просто нажимаешь на то слово, что посередине из предложенных твоим iPhone, Это пример такого решения, которое называется языковая модель. Алгоритм, который по предыдущим словам или по предыдущим буквам пытается предсказать следующие слова или буквы. Вообще как бы вот в обработке естественного языка используется термин токен, ну, жетон по-русски. Одна из интересных проблем, которыми там в лаборатории пытаемся заниматься, это вообще вопрос, как текст нарезать на эти самые куски или токены, да? То есть очевидно, что если нарезать по буквам, будет не очень хорошо, потому что в букве почти никогда нет никакого смысла. Ну и более того, если вы читали какие-нибудь мемчики, где все буквы перепутаны, кроме первой и последней, а вы слово читаете. Да, это вот как раз пример того, что смысловая нагрузка в отдельно взятой букве, она какая-то прямо исчезающая, малая. С другой стороны, если нарезать слишком большими кусками, типа словосочетаниями, то возникают всякие проблемы с грамматикой, с каким-нибудь синтаксисом, что-нибудь там, окончание надо поменять. В общем, хорошо бы как-то уметь разбирать слова по составу, использовать куски слов, как вот такие токены.
-
Зачем вообще нарезать текст на токены?
-
Ну, у нас есть некоторая последовательность, просто дискретная последовательность, типа последовательность букв. Мы хотим с ней что-нибудь сделать. К примеру, предсказание следующего слова по предыдущему. Ну, логично, что нам надо выбрать некоторую единицу дискретизации.
-
А, типа, букву будем следующую предсказывать или всё-таки слово?
-
Да, букву или кусок слова, или слово, или сразу же несколько слов. Открытый вопрос, для каких задач как нарезать эти последовательности, он остаётся. И второй вопрос, он в том, что мы с тобой как-то умеем сохранять часть информации, которую услышали или которую озвучили. и обращаться к ней без проблем в процессе разговора. Как у нас это получается, мы не знаем. Вот, типа, современная модель очень плохо умеет анализировать длинный контекст. Вот, типа, почему Пьер Безухов решается жениться на Элен Куракиной? Вот, подизнай. Вот человек может ответить на этот вопрос, прочитав роман «Война и мир», а как бы модель не может. И вот это большая загадка, и мы ее пытаемся решить.
-
Ты сказал про то, что надо нарезать текст на кусочки, на токены, и после этого как-то научиться анализировать кусочки. Вот хочу разобраться, как выглядит этот анализ. У меня есть некоторое количество очень таких обывательских вопросов. Первый вопрос такой. Первая сложность, которую я вижу в анализе, например, русского языка— это то, что у слов есть разные формы. То, что называется морфология, когда окончания, например, меняются, когда женский, мужской род. Как научить компьютер узнавать слова в разных формах?
-
Есть два подхода. Один называется лемматизация, когда мы говорим, что вот мы разбиваем слова на некоторые леммы. Другая называется стемминг, когда мы ищем, собственно, корни и отделяем их от остальной части. Мы как бы исходим из того, что в слове есть как раз какая-то морфологическая часть и есть какая-то часть семантическая, то есть смысловая. А морфологическая, она как бы меняется для того, чтобы слово вписывалось вот в повествование, окончания согласовывались и так далее. Но оказывается, что... Я сейчас крамольную вещь скажу, потому что люди, которые занимаются именно лингвистикой, они как раз прям считают, что всё это очень важно. А последние годы работы с глубокими нейронными сетями показывают, что на самом деле не очень важно, если просто нарезать язык на... Вот я сейчас очень упрощаю. Byte Pair Encoding. Он не самый топовый, но он просто суперпростой. Представь, что у тебя есть все буквы языка, вообще все. Пусть у тебя там 30 этих букв есть, и ты берёшь и считаешь, какие две буквы встречаются чаще всего. Ну, к примеру, в русском языке довольно часто может встречаться буквы «б» и «а» вместе — «ба», вот слог. Находишь вот самый частый слог из двух букв и говоришь, о, вот это новый токен, это следующая буква. Переобозначаем все пары вот этих двух букв как новую букву. У нас получается не 30, а 31 буква в словаре теперь. И мы говорим, а теперь у нас какая самая частотная буква из двух состоящая? Находим следующую пару. Это может быть просто новая пара, к примеру, не знаю, мы добавили две буквы БА, они были частотные, а теперь, не знаю, там ОМ оказались очень часто, и мы их добавили. А может оказаться, что, не знаю, БАМ, три буквы подряд, самый частотный вариант. Ну, тогда его добавляем, обозначаем за новую букву. И таким образом наращиваем вот этот наш словарь, в котором содержатся все просто обычные буквы и вот такие частотные буквосочетания.
-
Это буквы-сочетания с символами, давай их назовем. Короче, алгоритм понятен.
-
Да, вот такой простой алгоритм называется BPE или Byte Pair Encoding. И вот оказывается, что если ты наращиваешь эту штуку до 30 тысяч элементов в этом множестве, ну или 10, не так важно. Этого, в принципе, хватает, чтобы дальше с этим работать.
-
Подожди, но у тебя же в результате этого буквой, то есть таким символом в твоем воображаемом алфавите могут стать целые слова, которые часто встречаются в тексте.
-
Да, совершенно верно, это полезно, потому что если у тебя есть слово «я», оно встречается часто, и полезно зарезервировать под него прям отдельный токен, чтобы твоя модель прям понимала, как эту штуку использовать в разных местах. Все местоимения у тебя туда попадут, типа «я», «ты», «мы», «вы», «они» там, скорее всего. Попадут какие-нибудь простые глаголы в духе там «быть», «был», вот что-нибудь такое, да. У тебя появится словарь, в котором у тебя будут частотные слова, под которых будет зарезервирован один специальный токен. Дальше у тебя появятся куски слов, которые часто встречаются, всякие приставки туда свалятся, суффиксы туда свалятся, часто встречающиеся, окончания часто встречающиеся, которыми твоя модель сможет апеллировать. У тебя туда типа «дом», а всё, что туда не свалится, можно по буквам собрать.
-
И таким образом мы решаем, как будто мы обходим задачу вообще выделения смыслов просто за счёт статистического такого анализа.
-
Совершенно верно. Просто если эта штука часто встречается, она, наверное, зачем-то нужна. Кидай её туда в качель, там разберёмся.
-
такой классический подход, насколько я понял, лингвистический, вот ты сказал, что лингвист тебя не полюбит за это— это понять, какие языки есть правила для выделения корней, суффиксов, окончаний вот этого всего. И дальше на основе этого понимания, типа структуры языка, уже нарезать, ну, понять, где какие корни. А ты типа вообще этим не заморачиваешься.
-
Ну, на самом деле, кажется, что не только я этим не заморачиваюсь, этим не заниморачивается ни один живой человек, когда изучает язык, когда ему 2 или 3 года. Ребенок выучивает язык без знания, что такое приставка, суффикс. Более того, ты можешь быть носителем русского языка, а ты можешь получить 2 по русскому языку, потому что ты не смог разобрать слово по составу. Но при этом ты это слово прекрасно можешь употреблять, ты не делаешь ошибок при склонении там.
-
И даже виды изменять.
-
Да, вообще без всяких проблем. Более того, есть пресловутые там слова-исключения, какие-нибудь там стеклянные, оловянные, деревянные, но есть люди, которые не помнят, что они слова-исключения, есть люди, которые помнят, но это не мешает им как бы в языке. Я к тому, что кажется, что подход, предлагаемый классической лингвистикой, позволяет действительно систематизировать наши знания о языке. Это очень важно. К примеру, есть то, что называется компаративной лингвистикой, когда мы сравниваем языки, пытаясь находить фундаментальные схожие какие-то свойства и фундаментальные различия. Это всё очень нужно и важно, но это немного другая работа. Мы же в машинном обучении хотим как бы с нуля научить некоторую модель, некоторого субъекта, если угодно, научить говорить на языке. Ну, в идеале, там, генерировать текст, понимать текст. Мы знаем, что человека можно научить всему этому без лингвистических теорий. Просто мы помещаем человека в языковую среду, он начинает говорить на языке. Я вот, не знаю, немецкий выучил, когда переехал в Германию. Не знаю я до сих пор немецкой грамматики, а говорить могу и писать могу. И вот мы знаем, что люди могут выучить язык индуктивно без понимания верхнеуровневых правил. Просто на основании обратной связи, на основании какого-то объёма данных, которые они обрабатывают по жизни. Модели тоже, наверное, могут. И вопрос, почему модели не получаются,— это такой глубокий фундаментальный вопрос, который вот мне интересен. Вернее, не получается так хорошо, как у людей. Мы достигли определенных успехов в этом месте, надо признать, что там. Сейчас модели справляются с разного рода задачами языковыми в разы лучше, чем 5-10 лет назад, но все еще не так хорошо, как люди.
-
Ты мне очень понятно объяснил, как... научиться токенизировать тексты, даже не зная структуру языка. И то, что структура, она может... нельзя просто забить какой-то набор правил в машину и ожидать, что она после этого научится говорить. Вопрос. Как быть, например, с омонимами? Например, «лук» и «лук», в смысле глаза щиплет, и лук, который в Инстаграме постит. Или «дорога» и «дорога». Как машина научится различать различия между этими словами?
-
Скучный ответ так же, как и человек. Дело в том, что омонимы. Большинство базовых подходов к тому, как машины понимают смысл чего бы то ни было, что написано, базируется на том, что называется дистрибутивная семантика. Это такая гипотеза, которая в 50-е годы XX века компьютерными лингвистами была сформулирована, или даже просто лингвистами. о том, что смысл слова можно восстановить по тому, в каком контексте оно используется. Да, вот можно привести пример. Допустим, я скажу тебе, налей, пожалуйста, бокал красностопа. Так. Ты не поймёшь, что такое красностоп, но такой... Это напиток какой-то. Это какой-то напиток. Если ты потом увидишь в тексте, что это мясо отлично сочетается с эндемическим красностопом Краснодарского края, ты такой, это, наверное, сорт красного винограда. И это действительно сорт красного винограда, и тебе достаточно пары-тройки примеров словопотребления, чтобы правильно восстановить смысл слова. На этом, кстати, базируется идея, что, когда ты учишь язык, можно начинать смотреть фильмы или читать книги в оригинале, или слушать подкасты в оригинале до того, как ты стал... Понимать язык. Да-да-да. А наоборот, ты ещё довольно плохо говоришь или плохо понимаешь, но ты начинаешь читать книжку, и оказывается, что тут тебе на помощь приходит такой феномен, который называется закон Ципфа. закон Ципфа назван в честь американского, если не ошибаюсь, лингвиста немецкого происхождения, который обратил внимание, вернее, на самом деле заметили это до него, но он как-то это сильно популяризовал, что в языке частотность слов устроена довольно специфическим образом. У неё очень высокий пик, То есть есть небольшое количество слов, которые встречаются очень часто. И тяжёлый хвост. Много слов, которые встречаются очень редко. И вот когда человек учит язык, закон Ципфа, особенно на старте, он на твоей стороне. Ты можешь выучить там первые сто слов. И ты уже можешь сказать экспоненциально больше, то есть тысячи мыслей ты можешь сказать. И вообще, ты, выучив частотные слова и получив навык восстановления смысла слова по контексту, дальше начинаешь читать тексты на языке и выучиваешь всё новые-новые-новые-новые слова, и со временем начинаешь на нём говорить всё лучше и лучше и лучше. Ну или, по крайней мере, читать на нём всё лучше и лучше. У закона Ципфа в этом месте есть большое преимущество, и именно оно там помогает и человеку, и моделям, потому что у нас есть частотные слова, которые представлены хорошо в обучающей выборке, есть много примеров того, как это слово употребляется, и мы как бы можем по контексту понять, что слово «я» означает местоимение, обозначающее говорящего, а там слово «ты». местоимение, обозначающее собеседника. А есть обратная сторона этого закона, которая является проблемой, на самом деле, и для людей, и для машин, потому что, когда ты учишь иностранный язык, у людей часто возникает просто кризис жанра, и очень многие люди доучивают язык до уровня B2, а потом перестают его учить, потому что у тебя создается ощущение, что ты всё знаешь, грамматику ты знаешь, Говорить ты можешь, но сколько бы ты ни бился, ощущение, что ты продвигаешься куда-то нет. И это как раз означает, что ты наткнулся на длинный хвост из закона Ципфа, когда у тебя есть много слов, которые встречаются однократно.
-
А как машинное обучение решает, как компьютер решает проблему длинного хвоста?
-
Машинное обучение не может решить пока эту проблему хорошо. Оно ее решает при помощи роста количества параметров модели. И вот мы видим там эту гонку вооружений, когда выкатываются все новые и новые модели с миллиардом параметров, типа еще больше параметров. Это как раз попытка такого экстенсивного решения проблемы хвоста, что мы не понимаем, как решить ее по-другому, кроме как сделать модель еще толще.
-
А, то есть всё больше ресурсов просто используем компьютерных?
-
Да-да-да. Опять же, я очень упрощаю. Там есть ещё довольно сильные интересные технологические прорывы. Там есть то, что называется механизм внимания. Вот эти архитектуры 17-го года, архитектуры типа трансформера, они появились в 17-м году после статьи ребят из Google, которая называлась «Внимание— это всё, что тебе нужно». Появилась вот такая архитектура трансформер, и вот они сейчас активно очень развиваются, исследуются и растут.
-
Что это значит?
-
Там идея в том, что после того, как мы разбили модель на токены, мы начинаем пытаться выяснить, какие из кусков предложения связаны между собой. Ну, допустим, если мы хотим перевести какую-нибудь фразу, к примеру, The animal didn't cross the road because it was tired. Типа животное не переходило улицу, потому что оно устало. Или у нас фраза The animal didn't cross the road because it was broad. Животное не могло перейти улицу, потому что улица была широкой. Структура полностью совпадает, кроме последнего слова. В одном случае это слово tired – усталый, в другом случае broad – широкий. И слово tired относится к животному, а слово broad относится к улице. При этом на английском языке местоимение it выглядит одинаково в одном и в другом предложении. А на русском или, к примеру, на французском языке нам нужно знать род того существительного, к которому привязано это местоимение.
-
Потому что животное оно, а дорога она.
-
Совершенно верно. На русском языке нам нужно понять, как перевести слово it. Нам его нужно перевести как оно или как она. Вот для того, чтобы это сделать, нам нужно установить, к какому слову в нашем предложении относится it.
-
Связи между словами нужны.
-
Да, да. Связи между словами. И мы на самом деле можем это сделать, потому что мы понимаем, что it was broad, значит, оно было усталым или она была широкой. По связи с прилагательным мы точно понимаем, что it относится к прилагательному в конце. А дальше мы понимаем, что прилагательное в конце, которое broad, оно вряд ли относится к слову animal, потому что broad animals редко встречаются. Типа мы редко видали широких животных.
-
То есть модель просто знает, что broad про животных обычно не говорят, поэтому это
-
вряд ли так. Да, да. Соответственно, вот если мы установим, опять же, совместную частотность употребления слова «широкий» и слова «животное», и слова «широкий» и слова «дорога», мы можем предположить, к какому слову из этих двух относится слово it. Это как раз вот эта дистрибутивной семантики, что из распределения совместных употреблений каких-то элементов ты можешь восстановить смысловые связи. Ты можешь восстановить, что более вероятно, а что менее вероятно. Это вписывается абсолютно в подход машинного обучения, который говорит, что мы на самом деле пытаемся по наблюдаемым данным, восстановить распределение, из которого эти данные сэмплируются.
-
И научиться предсказывать.
-
Но тут есть проблемы. Что касается механизма внимания, это был большой серьезный прорыв. Сначала его применяли с другими типами архитектуры, а потом в семнадцатом году появилась такая архитектура, которая позволяла скомбинировать вот этот механизм внимания, который позволял соотносить разные куски предложения между собой. И еще одну интересную идею того, что смотрите, а что если мы Вместо того, чтобы один раз использовать вот эту вот связь, что если мы сделаем такую иерархическую или слоистую архитектуру? Потому что, вот смотрите, предложение животное не могло перейти дорогу, потому что оно было усталым, или оно устало. Сравнительно простое предложение, в нём не так много связей. А вот если мы возьмём и как-нибудь его расцветим, и сделаем что-нибудь там на закате, животное не могло перейти дорогу, потому что оно устало из-за дневной жары, окажется, что там ещё появляется больше разных связей, и гипотеза примерно в том, что... Возможно, за одну процедуру вот такого сравнения разных элементов внутри предложения мы все эти связи не выловим. И давайте попробуем сделать такую слоистую структуру, где на каждом слое мы будем пытаться сравнивать связи между собой.
-
А потом выберем ту, которая наиболее похожа.
-
Да-да-да. будем записывать результат этого сравнения и работать уже с ним, дальше пытаясь выявить более глубокие связи. И так делать несколько раз, в несколько слоев вот этот механизм внимания располагать. И вот это оказалось такой серьезной прорывной идеей, которая позволила сильно повысить качество работы очень большого количества моделей для разных прикладных задачек. И последние годы эта штука активно развивается. Но когда мы сталкиваемся с проблемой редких слов, диалектизмов, юмора, иронии, вообще эмоционально заряженной речи, художественной речи, метафоры, Вот все эти штуки, которые менее частотные в языке, в некотором смысле это такие отголоски вот этого тяжёлого хвоста, да, и в некотором смысле это тоже логичная история. Меньше примеров сложнее выучить. И сейчас попытки обойти там такого рода проблемы или как-то приблизиться к их решению, они часто связаны с тем, что давайте сделаем там ещё больше параметров, ещё более мощную такую архитектуру и ещё больше текстов, на которых будем обучаться, и станет лучше. И сейчас становится, мне кажется, всё очевиднее, что это... полезный с индустриальной точки зрения путь, то есть мы, несомненно, можем сделать более крутые решения, но он тупиковый. Почему тупиковый? Ну, потому что человеку явно нужно меньше примеров, чтобы выучить язык, во-первых, а во-вторых, человеку явно нужно меньше энергии, чтобы выучить язык.
-
Ещё про слова. Я понял, что мы это не проговорили. Есть слово «ужасно» в русском языке в значении «отвратительно», а есть «ужасно красиво». Это значит «красиво». Как машина такое отличает?
-
Опять же, по контексту. Потому что слово «ужасно само по себе» содержит в себе и «ужасно красиво», и «ужасно». Ну, это так. Просто ты, когда говоришь про слово «ужасно», ты заведомо схлопываешь его такое многомерное семантическое поле до наиболее частотного его употребления. Да? Ну, там, типа, слово «круто само по себе» или слово «крутой», оно само по себе содержит сразу и склон, и костюм, и яйца, сваренные вкрутую, да? Но просто, скорее всего, когда ты слышишь слово «крутой», ты первым делом вспоминаешь какой-нибудь молодежный сленг и крутой костюм или крутой прикид. Если ты из определенной культурной среды, а если ты из Института Пушкина, то, может быть, ты, наоборот, вспоминаешь крутые горы Кавказа.
-
Понятно. Игорь Крутой.
-
Или Игоря Крутого, да, кстати, он тоже там в этом слове есть. То есть слово само по себе— это всегда такая многомерная штука на самом деле. Нету практически слов, которые были бы одномерными, да. Вот даже слово «а» само по себе, да, как бы это и вскрик, и союз «а», А если это приставка, то это там асимметрия, это «не». И это всё лежит как бы в букве «а». Нам как-то с этим нормально, ровно потому, что нам никогда букву саму по себе не надо как-то воспринимать. Мы на букву всегда смотрим в контексте и на слово всегда в контексте смотрим.
-
Мне стал понятен подход к анализу, который ты используешь для того, чтобы, например, буквы вместе соединять, потом слова выделять близкие, похожие. Но при этом меня не покидает вопрос о смысле. В естественном языке у слов есть смысл, который мы, люди, понимаем. А для компьютера этот смысл вообще важен? Есть такое понятие для компьютера?
-
Проблема в том, что для людей он, кажется, не очень важен.
-
Что ты имеешь в виду?
-
Я имею в виду то, что у нас нет хорошего определения, что значит понимание. И главная философская проблема, которую мы пытаемся все решить, она в том, что хорошо с математической точки зрения строго определить, что значит понимание, мы пока не смогли. Я не знаю, какую функцию мне оптимизировать. Как я могу померить понимание? Есть вот этот известный пример, ну и там широко популяризованный тест Тьюринга, типа мы с тобой вместе играем против алгоритма. И такой в максимально широкой постановке тест Тьюринга он в этом. Два человека и робот. Один человек— судья, и он пытается по общению с двумя другими игроками понять, кто из них робот.
-
Кто из них робот, а кто человек, да?
-
Да, да, да. Другой человек, который игрок, он пытается максимально помочь судье, максимально понятно отвечать на вопросы судьи.
-
То есть он не прикидывается машиной?
-
Нет, нет. Его задача не обмануть судью, а наоборот максимально помочь судье с тем, чтобы судья угадал, что это человек. И если в 50% случаев судья ошибается и не может угадать, с кем он разговаривает, с человеком или с роботом, ну неправильно предполагает, кто человек, а кто робот, то тогда мы говорим, что машина тест-тюринга прошла, и вот машина приблизилась к человеческому уровню интеллекта.
-
Насколько хорошо машины проходят тест-тюринги? Вот если сейчас я начну общаться с лучшей машиной и со среднестатистическим человеком, я смогу понять какую из ху?
-
Зависит очень сильно от тебя и зависит очень сильно от желания машины и человека. Если машина себя за человека хочет выдать, а человек себя хочет выдать за машину, там могут быть разные оговорки. Приведу пример. Во-первых, есть ежегодные соревнования по созданию чат-ботов, которые бы пытались тест-тьюринга проходить, и они периодически справляются с этим, периодически нет, но часто попытки обойти тест-тьюринга упираются в некоторые такие попытки обмануть. собеседника. К примеру, была такая широко известная история, тест Тьюринга, созданный ребятами из Одессы, который представлялся как подросток... Как будто начало анекдота. Нет-нет, ну это факт. Подросток из Одессы. Чат-бот говорил по-английски, но он говорил, мне 14 лет, я из Одессы.
-
И все подумали, что он на самом деле плохо говорит по-английски.
-
Конечно.
-
И списывали всё на незнание языка.
-
Конечно, конечно. И он довольно удачно прошёл тест Тьюринга. Потому что, ну, когда подросток говорит какие-то глупости на языке, который плохо знает, ну, это, наверное, потому что он подросток. Зато там он шутит смешно и там, не знаю, вопросы хорошие задаёт. Можно ли сказать, что этот чат-бот понимает собеседника? Да нет, конечно. Но у собеседника есть некоторая модель мира, в которую этот чат-бот довольно удачно вписывается. И это тоже еще один повод подумать про тест-тюринга, что тест-тюринга как бы это достаточно хороший способ формализовать вообще задачу, что такое понимание. Но все-таки вокруг него есть куча дырок, в которые можно пролезть и набедокурить вот такими вот трюками. Поэтому вопрос понимания— вопрос сложный.—
-
Я хочу спросить тебя, например, про языки. Про то, насколько языки отличаются между собой. Вот мы с тобой сейчас обсуждали какие-то вещи на примере русского языка. И немножечко про то, что это близко к задаче перевода, и поэтому, скорее всего, я так подозреваю, что то, что работает в русском, наверное, с какими-то там изменениями работает для английского. А на китайском, например, это всё применимо или нет?—
-
Да, конечно. Ну смотри, языки, они как бы с одной стороны различаются, с другой стороны очень похожи. Собственно, компаративистика— это как раз попытка выяснить, чем языки действительно сильно отличаются, а чем они похожи. И оказывается, что там вот такие различия на уровне морфологии, к примеру, да, то есть там словообразование, грамматических правил, они действительно могут отличаться, могут совпадать. Но при этом есть какие-то очень фундаментальные штуки в языках, которые общие. К примеру, закон Ципфа тот же самый. Он себя показывает в любом языке. Если ты пойдёшь на Википедию, откроешь статью «закон Ципфа», ты там увидишь график для 20 языков, и распределение примерно одинаковое. Если посмотреть на большинство современных моделей, сейчас на переднем крае развития машинного обучения находится англоязычный и китайскоязычный мир. И оказывается, что эти модели работают что для японского, что для китайского, что для английского, если у них есть достаточно много данных, что для русского. То есть всё упирается в данные в первую очередь. и в мощность модели, а сами базовые идеи остаются неизменными. Я люблю такой пример, что вот смотри, вроде языки все очень разные, но во всех языках есть что-то типа глагола и что-то типа существительного. Это как бы необходимое свойство языка или нет? Мы не знаем, потому что единственный способ думать об этом у нас есть на языке, а во всех языках есть глаголы существительные. Одно для обозначения действия, другое для обозначения объекта. но мы при этом знаем, что у нас есть легкие грамматические способы превращать объект в действие и наоборот. То есть, типа, у нас эти две философские категории в голове есть, и поэтому
-
язык структурирован так. Если возвращаться к каким-то очень практичным вопросам, то вот, например, онлайн-перевод. Это такое применение, мне кажется, лингвистики, компьютерной лингвистики особенно, которые все знают, все пользуются. Google-переводчик работает очень хорошо, и Яндекс-переводчик тоже работает очень хорошо. Вот те способы анализа, которые мы с тобой обсуждали, они все используются в работе машинного перевода, или он работает в каких-то других принципах?
-
Конечно, конечно. И токенизация используется, и трансформеры используются, и как раз последние улучшения, существенные переводы за последние годы, они как раз все связаны с внедрением архитектур на базе трансформеров, механизма внимания, как раз позволяющего намного точнее переводить. Собственно, примеры, которые я давал про животное, которое дорогу переходило, это как раз примеры из перевода.
-
А насколько хорош вообще сейчас машинный перевод? Есть ли какой-то способ оценить вообще качество перевода?
-
обычно сравнивают или просто с человеческим переводом, или с выборкой, на которую люди перевели, и вот мы сравниваем, попали мы в людей или нет, и насколько близко попали в людей.—
-
То есть попали в людей, в смысле, людям понравилось или нет, или что?—
-
Нет, в смысле, сравнили с текстом профессионального переводчика.—
-
Окей.—
-
Ну, там всегда возникает вопрос, насколько хорош профессиональный перевод. Бейзлайн, он всегда примерно понятно, как устроен. В технических текстах, на самом деле, перевод, на мой взгляд, сейчас достиг очень высокого уровня, ровно потому, что там, где не нужно понимание глобального контекста и понимание культурного контекста, там можно добиться очень многого. В тех случаях, когда понимание культурного контекста критически важно, к примеру, в художественных текстах, там до сих пор есть проблемы, и переводчики, которые бы умели вот этот культурный контекст грамотно воспроизвести, они на вес золота. Вот один из примеров статья. Есть такой профессор в Амстердаме, Роджерс, он написал в своё время книжку Digital Methods, Он занимается вещами на стыке компьютерной лингвистики и компьютерной социологии. То есть он исследует при помощи цифровых всяких методов там то, как меняется язык, культура, политика, и как это можно увидеть на приборах, как бы собирая какие-то данные из интернета, к примеру. И он там приводит одна из его статей, мне очень понравилась. Он приводит пример того, как в англоязычных медиа, В Палестине и в Израиле называется в секторе Газа. Израильские англоязычные медиа называют её security fence, то есть ограда безопасности. А палестинские англоязычные медиа называют этот же объект apartheid wall, стена апартеида.
-
Настолько яркий пример.
-
Да, если ты в гугле вводишь security fence и открываешь картинки, у тебя появляются одни картинки, это те места данного вот объекта, где действительно там какая-то ограда небольшая, какие-то там проволока, но она не выглядит угрожающе. Когда ты вводишь apartheid wall, ты получаешь другие фотографии того же объекта, которые, там, действительно большие, фортифицированные, там, бетонированные и так далее. То есть происходит культурное разделение языка. И, собственно, вот есть шибболет (shibboleth). Такие слова, которые культурно демаркируют контекст, они тоже очень важны, и вот там у моделей с ними проблемы. появился шибболет, какой предлог поставить перед словом «Украина», когда ты говоришь «где». Ты не можешь сказать «в Украине» или «на Украине», не обозначив некоторый культурный контекст. Более того, даже если ты не в курсе, ты типа иностранец, и ты не знаешь, как правильно, и ты вообще не погружен в российскую современную действительность, у тебя нет способа обозначить направление со словом «Украина», не создав участи слушателей или читателей ощущение, что ты разделяешь одну или другую политическую повестку.
-
То есть ты хочешь сказать, что здесь вообще нет правильного ответа, что это задача, на которую отвечает каждый раз человек, делая свой сознательный выбор?
-
Совершенно верно. Это как раз пример того, что с пониманием есть фундаментальные проблемы, связанные с читателем.
-
То есть задача научиться говорить как человек, её невозможно решить, пока ты не стал человеком, по сути.
-
Фиксация на антропоцентричности и на желании создать что-то, чтобы говорила как люди, жила как люди, думала как люди, она, мне кажется, довольно странной. Нам на самом деле кажется, не это нужно. Типа экскаватор не похож на человека с лопатой, но он копает ямы значительно лучше.
-
А вот в примерах, ну если приводить примеры искусственного интеллекта и особенно искусственного интеллекта, которые именно про языки, какие есть примеры экскаваторов, которые делают что-то гораздо лучше, чем человек, хотя они не похожи?
-
Поиск, информационный поиск значительно лучше еще, чем человек, вообще не являясь там ни личностью, ни человеком, не обладая человеческим опытом, да. не знаю, речевые интерфейсы. Нам, наверное, не нужно, чтобы они себя осознавали, но было бы круто, чтобы они могли действительно понимать, что мы им говорим с первого раза, чтобы мы не могли, там, не переговаривались, чтобы, там, эти навыки были интереснее и лучше устроены.
-
Вань, реально не терпится просто задать следующий вопрос. Ты привел офигенный, на самом деле, пример про на Украину, в Украину, когда машина точно не сможет сделать этот выбор, потому что это выбор, который должен делать человек. Там, как бы, я понимаю, в чем проблема. Она принципиальная. Там сущностный вопрос. Но я, когда пользуюсь, например, Google поиском или когда Сири или там Алисе что-нибудь говорю, я четко чувствую, что я говорю не с человеком. И я хотел бы, чтобы меня просто лучше понимали. Вот я просто понимаю, что она меня не понимает, а ты, скорее всего, у тебя есть какой-то аппарат для того, чтобы сказать, в чем именно она меня не понимает, в чем там проблема и как вы ее решаете сейчас.
-
Ну, во-первых, надо как бы любую задачу декомпозировать на понятные, да, простые задачи. Задача понимания тебя, когда ты говоришь с Алисой, декомпозируется на несколько кусков. Во-первых, нужно услышать то, что ты говоришь, и превратить speech to text, речь в текст. Что это такое? Это значит, мы записываем аудио, есть фоновые шумы, ты можешь говорить с разной громкостью, ты можешь быть простужен, ты можешь говорить с акцентом, ты можешь говорить в сторону, ты можешь идти, пока ты говоришь, и у тебя может меняться громкость речи, кто-то может говорить на фоне и так далее, и так далее. Вот нужно записать твою речь как бы, да, и превратить её в текст. И это одна задача, которая решается отдельным классом моделей, которые занимаются speech-to-text. Дальше, когда у тебя появился текст, тебе нужно из него вытащить желание пользователя. Собственно, что ты хочешь? Обычно взаимодействие сейчас с голосовыми интерфейсами— это сведение запроса пользователя к интенту из некоторого списка. У тебя есть какой-то список желаемых поведений, там, не знаю, включить музыку или поставить будильник, или, не знаю, забронировать билеты. И вот нужно из твоего текста вычленить этот интент. Это задачка, которая решается. Мультикласс-классификация. Когда вот у нас есть на вход текст, есть, возможно, правильные варианты ответа, и нам нужно выбрать из них наиболее вероятный. И здесь есть масса проблем от того, что ты как-то странно сформулировал мысль, до того, что в процессе перевода твоего высказывания в текст произошли какие-то ошибки, до того, что того интента, который ты заявил, вообще нет. Ну, типа, ты думал, что... Голосовой интерфейс может заказать цветы онлайн, а он не может. И когда вот никакой из имеющихся под рукой интентов не кажется вероятным, есть некоторое дефолтное поведение, типа сказать «я не понял», или открыть поиск, или сказать «повтори, пожалуйста». Ну, в общем, да, если мы предполагаем, что ошибка произошла из-за расшифровки текста, то попросить повторить. Если предполагаем, что просто нет ничего подходящего, открываем поиск. Ну, в общем, понятная история. Да, при этом у Алисы есть режим болталки. И болталка— это когда ты говоришь «давай поговорим», и она включается тогда в чистом виде в такой поток сознания. Там подключается искусственная нейронная сеть, которая просто по твоему ответу пытается сгенерировать фразу, которая кажется наиболее подходящим ответом к тому, что ты сказал.—
-
Что сказал бы человек, типа.—
-
Да. И вот в режиме болталки ты можешь бесконечно долго с ней разговаривать, она тебе поиск не откроет, она будет с тобой общаться, пока ты не скажешь «хватит, всё, давай, закончили». Но это общение, если ты займёшься на досуге такого рода разговором, ты быстро обнаружишь две вещи. Первое, это то, о чём я уже сегодня говорил, это отсутствие поддержания длинного контекста, то есть если ты в процессе разговора решил вернуться к чему-то, что было сказано час назад, то у тебя не получится. Она уже не помнит этого. Почему она этого не помнит? Ну, потому что надо как-то вычленять из потока текста что-то, что важно, что-то, что не важно, и где-то это хранить. И вот есть целое направление, связанное там с тем, как можно было бы сделать искусственные нейронные сети с памятью, и там пока нет прорывов. По крайней мере, мне неизвестно, чтобы были какие-то вот такие прорывы эффективные. Как это сделать?
-
Мне очень интересно, когда ты описывал цепочку того, как работает голосовой помощник, как он меня понимает, там был этап speech-to-text. Если просто записать то, что я сказал, часть смысла потеряется. Именно поэтому часто созваниваемся в Zoom вместо того, чтобы в чате переписываться. Потому что то, как мы говорим, это тоже важно. Машина умеет такие вещи считывать? Иронию, например, или агрессию в голосе. Умеет ли это делать машина и вообще есть ли в этом направление движения?
-
Агрессию, да. И вот у меня был недавно выпуск подкаста про речевые технологии. Одна из гостей рассказывала про то, что, допустим, в колл-центрах очень важно детектировать агрессию, детектировать раздражение, потому что это меняет сценарий разговора с клиентом. Очевидно, что если тебе звонит раздраженный человек, то это может быть повод. или быстрее ответить на его вопросы, или говорить с ним как бы по-другому какому-то сценарию, который бы дескалировал эту агрессию и так далее. И в этом направлении есть какое-то количество решений. Что касается иронии, с этим сложнее, потому что практически любая задача машинного обучения, она всегда упирается в какую-то базу, связанную с человеческими оценками. Вот мы собрали информацию от людей и пытаемся равняться на них в том или ином виде. И так как люди не всегда хорошо распознают иронию, то и алгоритмы, которые бы иронию хорошо распознавали, пока все-таки нет, но по мере там и накопления данных, и по мере развития моделей, я думаю, что с этим может стать лучше.
-
Вань, вот такой ультимативный тест на то, как машина понимает и генерирует, мне кажется, это реферирование. То есть прочитай «Войну и мир» и перескажи вкратце, что там было. Понятно, что есть разные методы пересказа и все такое, но насколько хорошо машина сейчас делает, решает эту задачу?
-
Зависит от размера текста. На небольших текстах довольно хорошо. Все интересные результаты, прикладные в области машинного обучения, они обычно получаются так. Мы формулируем некоторую задачу и говорим, хорошо бы, чтобы наши модели могли решать вот это. К примеру, реферирование текста. Дальше мы собираем какой-то dataset модельный и говорим, давайте вот на этом объеме данных измерять качество того, как наши модели реферируют тексты. Вот по таким-то критериям. И дальше весь мир, занимающийся машинным обучением, начинает пытаться предлагать решения, которые бы с этой задачей справлялись все лучше и лучше. И дальше в какой-то момент оказывается, что с этой задачей мы начинаем справляться на уровне сопоставимо с человеческим. И тогда это не означает, что мы с любой задачей реферирования можем справляться. Это означает, что вот этот старый бенчмарк, старый набор задач, на которых мы привыкли тестировать модели, он перестал быть актуальным, и нам нужен новый, более сложный, более объемный. И вот есть такой бенчмарк, который называется GLUE – General Language Understanding.
-
Общее понимание языка.
-
Да, общее понимание языка. И есть его следующая версия, которая называется SuperGLUE, которая сделана теми же самыми авторами, только через год больше задач, и они сложнее. И там, среди прочего, есть задачи реферирования, и на них некоторые модели показывают примерно такое же качество, как люди. Но это не случай, что нужно пересказать «Войну и мир». И проблема с пересказом больших текстов, она всё-таки в том, что с «Войной и мир» на самом деле очень просто. Есть великий пример. Он сильно гендерно окрашен, но, тем не менее, мне кажется, он крайне понятен. Так получается, что часто люди, идентифицирующие себя как мальчики, пролистывают любовные сцены в романе «Война и мир», а люди, идентифицирующие себя как девочки, пролистывают батальные. Ну, это как бы наверняка следствие давления патриархальных структур на наше сознание, но факт того, что когда ты в школе пишешь какую-нибудь контрольную по литературе, Если в эту контрольную включить 10 вопросов про любовную линию войны и мир, мальчики напишут её хуже, чем девочки. А если включить 10 вопросов про батальные сцены войны и мира, то окажется ровно наоборот, с высокой вероятностью. Опять же, по вероятности. Бывают отдельные исключения. Не так важно, следствием чего в культуре является такая диспропорциональный интерес к разным кускам войны и мира, но это простая иллюстрация того, что когда ты попросишь этих людей отреферировать войну и мир, скорее всего детальность реферирования тех или иных сюжетных линий будет зависеть от интересов и культурного опыта того человека, который это реферирование проводит. Поэтому с большими текстами... Чем больше текст, тем сложнее придумать хороший метод оценки качества, потому что люди начинают расходиться в том, как они этот текст реферируют.
-
Ваня, у меня есть еще несколько вопросов про генерацию текста, потому что мы много говорили о том, что как машина понимает нас. Вообще генерация текста— это сложнее, чем вычленение смыслов из текста или наоборот? Или после того, как ты научился вычленять смыслы, генерируете уже это простое дело?
-
Это просто другая задача. И генерация текстов может быть разной. Если мы говорим про suggest, то есть попытаться угадать, что человек спрашивает, и подставить его текст. Это же тоже генерация текста. Но она при этом довольно хорошо контролируемая, можно прям хорошо собирать обратную связь. Если человек соглашается на то, что ты предложил, значит, ты молодец. Если человек не соглашается, то значит, ты не угадал. Это хорошо формализуемая задача. А если у тебя задача, не знаю, генерация поэзии или генерация историй, то тут всё довольно плохо. И опять же плохо, потому что с точки зрения людей плохо генерируется. Плохо формируются критерии генерации, да. То есть я люблю историю такую рассказывать. Мы написали с Лёшей Тихоновым несколько статей про генеративную поэзию. И одну из них я показывал на конференции, стоял около стенда и собрал примеры, как мне казалось, хороших строчек и плохих строчек, где модель как-то там ошибалась, но это была модель старенькая, еще до-трансформерная, и она там ошибалась, среди прочего. Она могла оборвать строчку в каком-то неожиданном довольно месте. И я привел строчку «At night I lay waiting for a…» и все. Типа, ночью я лежу в ожидании, и дальше артикль A, и строчка кончилась. Ну и вот я привёл этот пример, потому что вот в английской поэзии, в общем, на артикль строчки заканчиваются крайне редко. Вот, думаю, облажались мы. И ко мне подошёл профессор из ОСЛО, такой Бьёрн Гэмбек. Говорит, а почему ты, говорит, этот пример привёл как плохой пример? Я говорю, ну как же, ну вот на артикль заканчивается. Он говорит, нет, ну это же такая классная, это же моностих. At night I lay, waiting for a... Вот это ощущение, когда ты лежишь ночью, тебе не уснуть, ты чего-то ждёшь, а не знаешь чего. И вот у тебя артикль, он повисает в пустоте, и ты вот прям ждёшь и не знаешь чего-то ждёшь. Ну как вот... Вот, и я тут вспомнил Салтыкова-Щедрина, что чего-то хотелось то ли Конституции, севрюжины с хреном. Подумал, что, ну, действительно, в общем, наверное, в каком-то контексте эта строчка могла бы работать как стихотворение. Ну, и подумал, ладно, вот профессора в Осло. Ну, думаю, ничего. А потом через какое-то время мне написал современный журнал финской поэзии. Мы слышали, вы тут поэзию генерируете. Пришлите нам какие-нибудь примеры стихотворений. И я думаю, дай, думаю, одностишие. Как говорили в фильме «ДМБ»— превращу твой недуг в подвиг. Отправил я, значит, одностишие «At night I lay waiting for a…», и вышло оно на первой странице журнала «Финской современной поэзии» как пример стихотворения, написанного искусственной нейронной сетью. То есть современным поэтам в Финляндии оно показалось хорошим, глубоким стихотворением. И я подумал, что я, как математик и физик, очевидно, плохо всё понимаю в поэзии, а вот серьёзные люди, которые в поэзии разбираются, они меня наставили на путь истинный и объяснили, как всё на самом деле устроено. Проблемы с генеративной поэзией, они очень завязаны на восприятии, ещё даже больше завязаны на восприятии, чем вещи, связанные с пониманием языка, потому что в понимании языка всё-таки есть огромный сегмент утилитарных задач, где вот просто нужно, не знаю, купить билеты на самолёт, или просто нужно записать ребёнка к врачу, или просто нужно найти нужную информацию в интернете. А вот с генерацией, особенно художественного текста, тут прям бездонный простор для фантазии, и можно делать примерно всё, что хочешь.
-
Некоторые люди пишут текст так, что их потом называют великими писателями. Набоков, Довлатов и так далее. У каждого из них есть свой авторский стиль. И, насколько я понимаю, уже можно сейчас взять машину и заставить её сгенерировать ещё 100 тысяч текстов, похожих на Набокова или, там, на Довлатова. Они будут, на самом деле, узнаваемы по стилю, большинство из этих текстов будет полной говно, бессмыслицей, но часть из них будет даже неплохими. А сможет ли однажды компьютер тоже обрести свой авторский стиль? То есть не просто мимикрировать под кого-то, а сделать что-то такое, чего раньше не было. И вообще, есть ли такая цель у ученых или у разработчиков? Ну,
-
мне кажется, во-первых, сможет, во-вторых, ну, там, не знаю, вот у того же Лёши Тихонова вышла такая классная штука, мы про неё тоже статью научную написали, называется Paranoid Transformer. Это дневник сумасшедшей искусственной нейронной сети. Там такие дневниковые записи, там прям узнаваемый стиль, такой ни на кого не похожий стиль криптоанархиста цифрового, потому что сетка обучена там на всяких криптоманифестах и на каком-то количестве sci-fi. И вот мы вместе этот проект делали, и в итоге это первая, насколько мне известно, книга, изданная в бумажном виде, хардкопи в Штатах, полностью написанная искусственной нейронной сетью. Причём там ещё другая нейронная сеть генерирует почерк, она как бы написана рукописным почерком, который дрожит тем сильнее, чем эмоциональный текст. Такой вот парафраз к произведению Николая Васильевича Гоголя, «Дневник сумасшедшего», да. И ещё она периодически на полях там рисует. В общем, пожалуйста, можно заказать. Издание Dead Alive.
-
Я слушаю о такой штуке, называется экспертная система. Например, медицинской научной литературы так много, что современные врачи не успевают её нормально прочитывать. И был проект очень громкий в своё время анонсирован. IBM делала систему Watson, которая, мол, будет читать всё, что пишут на научной сети на свете, искусственный интеллект, а потом врачи смогут задавать ей конкретные вопросы, И она будет им более-менее по-человечески на это отвечать и показывать примеры. Типа, вот из этих статей посмотрите, может быть, так лучше лечить пациента. И даже будет подсказывать, как лечить пациента. Вообще, какие еще есть подобные системы, которые умеют отвечать на вопросы? Ну, так же, как эксперт. Типа, ты ему задаешь вопрос, он тебе отвечает. Какие еще такие подобные системы?
-
Watson— это не единственный пример, и Watson, скорее, пример трагичный, во многом потому, что они столкнулись с очень сильным врачебным лобби. American Medical Association, AMA— очень сильная лоббистская организация. А врач в Штатах— это очень высокооплачиваемый человек. И все эти люди состоят в American Medical Association, и они очень не хотят стать менее высокооплачиваемыми. Допустим, в области радиологии совершенно точно мы знаем, что для некоторых типов рака модель, обученная на достаточно большом датасете, дает качество лучше, чем среднестатистический радиолог. Прямо про это есть много статей. Вопрос внедрения такого рода решений— это вопрос регуляторный и, среди прочего, лоббизма. Мне кажется, что по мере того, как будет развиваться персонализованная и генетическая медицины, всё это начнёт работать. Разного рода суммаризация научных статей в том или ином виде используется. Есть Mendeley, который занимается тем, что формирует тебе новостную ленту из научных статей. И он использует механизмы обработки текста для того, чтобы по предыдущим статьям, которые ты прочитала, которые тебе, грубо говоря, понравились, рекомендовать тебе новые статьи. И он неплохо работает, и я им пользуюсь. Вот это тоже экспертная система. Когда экспертная система дает ответ на вопрос, это как бы такая немного странная экспертная система, да, потому что вот в той же самой медицине, насколько мне известно, Watson, Они были связаны или с диагностикой. Это не были такие системы, когда врач мог систему что-то спросить на естественном языке, а она им на естественном языке отвечала. Это скорее были конкретные классификаторы, направленные на повышение качества диагностики. на формирование рекомендаций по дополнительным источникам информации. Ну, то есть, типа, какие анализы вот этому пациенту лучше сдать, а какие не надо. И какие-то такие системы, направленные на борьбу с разного рода ошибочными оценками реальности человеком, да. То есть вот у нас есть такой набор предубеждений, которые хорошо известны и хорошо описаны. К примеру, есть то, что называется narrative bias, то есть bias рассказчика. Есть там результаты людей, которые занимаются поведенческой экономикой, которые говорят, что если врачу показать 10 процентов анализов человека и попросить поставить диагноз, он поставит какой-то диагноз, а если потом потихонечку прибавлять информацию, то есть показать следующие 10 процентов, потом еще 10 процентов... Которые уже опровергают, возможно, диагноз. Да, которые могли бы опровергнуть этот диагноз, но оказывается, что есть аномально высокий процент врачей, которые свой изначальный диагноз не меняют. Это пример того, что называется bias рассказчика, когда мы сформировали у себя в голове какую-то историю, и те факты, которые эта история подтверждает, мы обращаем на них внимание и включаем в нашу картину мира, а те факты, которые эта история противоречит, мы как бы игнорируем. И машинное обучение и обработка данных в широком смысле, не только текстовых, но и любых численных, и категориальных, и изображений, она в медицине, несомненно, может помогать бороться с такого рода проблемами. И совершенно точно там, где это регуляторно разрешено, помогает уже или будет помогать в ближайшее
-
время. Мы немного говорили, какие задачи можно решать с помощью машины, а какие нет. Ты упоминал, как раз, пример с Украины на Украину, меня очень сильно зацепил. Какие еще задачи машины решить не сможет? Вот сейчас
-
модели не умеют рассказывать интересные истории. Плохо умеют понимать сложный культурный контекст. Плохо умеют понимать референсы на информацию за пределами контекста нескольких предложений. Ещё периодически разного рода художественная речь в духе метафоры— это что-то, что иногда может ставить модель в тупик. К примеру, когда ты говоришь, что на улице горят костры рябин, и задаешь модели вопрос, что происходит на улице, и даешь варианты ответа— на улице пожар или на улице 3 сентября. Модель, короче, ошибается часто, хотя человек справляется хорошо. Вот это примеры того, что пока довольно плохо работает. Есть вещи, которые менее заметны, но это, наверное, то, про что ты спрашивал, когда тебе хочется, чтобы тебя понимали, а тебя не понимают. Они хуже формализуются, и часто они завязаны фундаментально на очень высокую требовательность нас к речи. То есть мы настолько привыкли, что когда мы что-то говорим, нас понимают с первого раза, что уровень нетерпимости к речевым интерфейсам у нас крайне высок. И в этом смысле много ошибок и там проблем, связанных с пониманием той же самой Алисы тебя, это вещи, связанные с тем, что то, что вообще сейчас с тобой происходит, я этот пример очень люблю приводить, В моём мозгу бегают электрические импульсы, порождённые, значит, какими-то внешними стимулами и определённой химией моего мозга. Эти электрические стимулы дёргают мышцы рта и гортани. Я превращаю, значит, эти подёргивания в некоторые акустические колебания. Они теребят мембрану моего микрофона, которая в свою очередь при помощи довольно сложной инженерии превращает обратно эту штуку в электрические импульсы, эти колебания мембраны. Эти электрические импульсы превращаются в наборы ноликов и единиц, которые как бы распределёнными путями летят куда-то в другую страну, на твоей стороне в компьютере собираются, и мембрана твоих наушников начинает дёргаться под электрическими импульсами под воздействием этих ноликов и единиц, дальше твоя мембрана в ухе начинает дёргаться, порождая электрические импульсы, которые бегут по твоему мозгу, и ты такой «Я тебя понял, чувак!» Да, самое дикое, что ты типа понял, ты потом это смонтировал, выложил, и сейчас человек в наушниках, его перепонки теребятся от акустического сигнала в его уши, и по его мозгу бегают... И он тоже понял. И он тоже что-то понял. И это может быть тысячи людей. Ты
-
хочешь сказать то, что машина хоть как-то мимикрирует и делает вид, что я на нее начинаю беситься? Это уже типа огромное
-
достижение.— Да, да, типа, чувак, она делает неведомую хрень, и в 95% случаев она реально понимает, какие электроны бегают у тебя в мозгу, да просто расслабься, отдохни, ну, повтори, если она не справилась с одной попытки, ну просто, ну магия творится в твоём доме каждый день. Мне кажется,
-
что это просто идеальное завершение нашего подкастывания. Есть финальный вопрос, который я задаю всем. Посоветуй, что почитать про лингвистику. Может быть, книжка какая-то или YouTube, или, может быть, телеграм-канал, который стоит подписаться, чтобы разобраться в этой теме. Ну, во-первых, у
-
меня есть подкаст, который называется «Проветримся»— t.me/progulka. Мы там делаем выпуски не только про лингвистику, про всё, что мне интересно, но там обычно какие-нибудь учёные или технологические предприниматели рассказывают что-нибудь внятное. У меня ещё с недавних пор есть YouTube-канал. находится по запросу Иван Ямщиков. Там пока никого нет, так что приходите, будете третьим. Но вообще из книжек, ну, Стивена Пинкера надо читать. Как называется книжка? Можно любую книжку. Стивена Пинкера можно читать с любого места или слушать его лекции. Он там про лингвистику много хорошего рассказывает. Последнее время он рассказывает вообще про науку и про её пользу. Его книга «Просвещение сегодня», «Enlightenment now» называется книга. Если говорить про машинное обучение на каком-то базовом гуманитарном уровне, есть книга «Дип-лёрнинг юрнинг» Эндрю Ина «Страсти по искусственному интеллекту». Она такая… Хороший, хороший ликбез. Ссылка
-
у меня будет в описании к этому эпизоду. Вань, спасибо тебе огромное, что пришёл. Дико интересный
-
разговор. Тебе спасибо.
-
Это подкаст студии Либо-Либо и мы его сделали совместно с Яндексом. На подкаст мы работали редакторка Юлия Яковлева, младшая редакторка Маша Агличева, продюсер Павел Боровков, звукорежиссерка Нина Мамотина. За джингл спасибо Алексею Зеленскому и Кире Вайнштейн.