Оглавление выпуска
- Интро [00:50 — 01:32]
- Принцип работы голосового ассистента [01:34 — 03:18]
- Интеллектуальность современных машин [03:25 — 06:45]
- Разговор про GPT-3 [06:52 — 10:43]
- Проблемы виртуальных ассистентов [10:51 — 15:37]
- Традиционная лингвистика в NLP [15:43 — 28:21]
- Эффективность нейросетей и машинного обучения [28:25 — 38:20]
- NLP и культурные особенности [38:21 — 40:43]
- Внедрение бизнеса в образовательный процесс [40:50 — 43:42]
- Перспективы data science [43:43 — 44:24]
- Блиц [44:30 — 47:05]
- Финал [47:06 — 48:06]
В выпуске были упомянуты
книги, ссылки, термины, персоналии
- датасет GLUE [04:41]
- GPT-3 [06:53]
- deep learning [16:00]
- knowledge graphs [16:02]
- EMNLP, Empirical Methods in Natural Language Processing [16:26]
- NLP, Natural Language Processing [16:59]
- data science [17:49]
- ACL, Annual Meeting of the Association for Computational Linguistics [26:02]
- BERT [27:35]
- random forest [30:12]
- ablation studies [31:38]
- FrameNet [33:28]
- Кристофер Маннинг [37:39]
- “Attention is all you need” [44:45]
- Word2vec [44:47]
- AINL, Artificial Intelligence and Natural Language [45:31]
- AIST, International Conference on Analysis of Images, Social Networks and Texts [45:33]
- NIPS, Neural Information Processing Systems [45:47]
- Януш Корчак [46:59]
Ссылки и полезная информация
- Ссылки на тг-канал подкаста
- Ссылки на платформы с подкастами
- Cсылка на sysblok.ru
Текстовая версия выпуска
Интро
[00:50] Д.С.: Это очередной выпуск подкаста «Неопознанный искусственный интеллект (сокращенно НИИ) от издания «Системный блокъ» , подкаста, в котором мы пытаемся разобраться, что называют искусственным интеллектом сегодня, во что он превратится завтра и когда роботы начнут нас по настоящему понимать. Сегодня у нас в студии как обычно двое ведущих — я, Даниил Скоринкин, главный редактор издания «Системный блокЪ» и…
А.С.: Я, Анатолий Старостин, руководитель службы развития технологий медиасервисов «Яндекс».
Д.С.: Ну а в гостях у нас — Денис Кирьянов, руководитель направления в «SberDevices», один из людей, который запускал семейство виртуальных ассистентов «Салют». Привет, Денис!
Д.К.: Всем привет!
Д.С.: Расскажи немножко о себе.
Д.К.: Я занимаюсь автоматической обработкой естественного языка, чат-ботами, виртуальными ассистентами и смежными задачками, когда люди говорят что-то машине, а машины обязаны их понимать.
Принцип работы голосового ассистента
[01:34] Д.С.: Ты участвовал в создании сбербанковского ассистента «Салют».
Как вы его делали, как обучали?
Д.К.: У всех виртуальных ассистентов более-менее один пайплайн— они «слышат» то, что ты им сказал, передают в естественную речь, дальше происходит некоторая магия, где мы распознаем, что именно ты хотел — условно пиццу заказать, такси или просто поболтать, и выбираем самый подходящий ответ, а дальше передаем его в некоторый синтез речи, который озвучивает тебе ответ помощника.
Д.С.: Ты сказал как бы «слышат» в кавычках — это сразу намекает на то, что ты, хорошо понимаешь, где границы у этого агента, который вроде бы должен быть интеллектуальным, но нет ощущения, что он слышит тебя так же, как человек. Когда мы сможем сказать про каких-то таких чат-ботов, будь то «Алиса», «Салют» или неважно что, что они слышат нас не в кавычках.
Д.К.: Давай разделять слышать и понимать все-таки, мой пассаж относился именно к распознаванию речи, и там последние модели, в том числе учитывающие контекст, то что если ты сейчас откроешь какое-то музыкальное меню и скажешь что-то похоже на «бгг», то это будет Гребенщиков, а если ты просто болтаешь, то это какая-то твоя ухмылка или другая эмоция, поэтому что касается звучащей речи, последние модельки достаточно близко подошли к распознаванию человеком, не так давно была новость про запуск смарт-часов, у которых есть мини-дисплей и которые позволяют тебе отображать речь, которую сказал другой человек. Если ты, например, совсем не можешь слышать или у тебя серьезные нарушения слуха, то, соответственно, эта штука слышит лучше тебя и помогает тебе ориентироваться в звучащем мире, и в этом смысле машина обгоняет человека и делает жизнь определенной категории людей наполненной новыми красками. Но мне кажется, что мы, скорее, говорим про то, чтобы машина распознавала не звук, а смысл, и вот дискуссия на эту тему кажется более сложной и спорной.
Интеллектуальность современных машин
[03:25] А.С.: Мы каждый раз, разговаривая с разными нашими гостями, пытаемся разобраться, что мы вообще понимаем под интеллектуальностью и что означает, что машина нас понимает и почему сегодняшние машины нас не понимают или, может быть, наоборот, они нас уже понимают.
Д.К.: Пока мне кажется, что основное отличие машины от человека — это ее способность обобщать. Она хорошо обобщает то, что ты дал ей обобщить, то есть у нее достаточно слабенькое целеполагание. Когда мы даем ей тексты и предполагаем их как-либо классифицировать — на какую-то тональность текста, на грамматичность, на все, что угодно, то это некоторые меточки, которые мы сами присвоили и в которые мы вложили некоторый смысл. Машина смысл не вкладывает, и дальше она смотрит, что вот такая-то дорожка ведет нас к классу 0, а вот такая-то — к классу 1. Человек берет на выходе то, что машина обработала и говорит «ага, вот этот текст плохой, а этот хороший, но вот эти классы присвоил человек.
Д.С.: Ну вопрос в том, стоит ли за нами это целеполагание, и можно ли себе представить, что мы тоже такие, на самом деле, очень сложные машины для распознавания образов и генерации новых образов?
Д.К.: Что касается людей — мы пока можем замерять качество работы человека на каких-то задачах, это собственно и сделано и в рамках датасета GLUE известного. Поясню для слушателей — это такой набор некоторых датасетов, на которых мы оцениваем качество работы машины и сравниваем его с качеством работы человека — например, определить, являются ли некоторые две формулировки на самом деле разными способами задать один и тот же вопрос, или, скажем, когда нам дан текст и мы пытаемся, уже имея вопрос к этому тексту, подобрать тот отрывок текста, который является ответом на заданный вопрос. Там в том числе есть данные по тому, что отвечают люди, и мне кажется, что пока люди справляются с этим лучше. Когда я смотрю на эти результаты я всегда понимаю, что машинка, которая умеет это делать, для нее это все равно некоторые нолики и единички, и она хорошо не понимает, что это такое.
Д.С.: Мне кажется, что есть разница между теми ошибками, которые делает человек и которые делает машина: есть класс ошибок машины, которые человек практически никогда не сделает, если он не совсем ушибленный на голову. Мы даже сейчас по дороге поговорили с некоторыми ассистентами, в том числе, честно говоря, и с «Салютом» тоже. Мы его стали спрашивать, чем Салют лучше Алисы, и он нам стал что-то странное говорить, совершенно не про чат-ботов, а про то, что такое салют, определение слова «салют», по-моему, дал нам. Во многих случаях он нам говорил: «Уже пишу разработчикам, пусть они пополнят мою базу знаний». Кажется, что есть такая проблема, что на каждую узкую задачу мы можем заточить нашу нейросеть, но вот у человека очень круто получается генерализировать свой интеллект.
Д.К.: Я согласен. Более того, мне кажется, что даже если мы используем какие-то крутые лингвистические модели якобы заточенные под разные задачи, то нельзя забывать, что они заточены под эти задачи ровно потому, что мы их попросили на них заточиться. Иными словами, если бы я тренировал какую-то крутую лингвистическую модель для того, чтобы она хорошо тебе отвечала на вопрос «Чем Салют лучше или хуже Алисы, Сири, Маруси, кого угодно?» — то она бы отвечала тебе, потому что я ее попросил это сделать. До тех пор, пока мы не получили какого-то совсем неожиданного результата, не подбирая, не доучивая модель специально на этой задаче, — кажется, что мы все-таки поумнее.
Разговор про GPT-3
[06:52] А.С.: Вспомнил про GPT-3 — потому что GPT-3 как бы позиционируется как такая волшебная машинка, которая как бы может решать много разных задач, и мы даже не знаем, какие.
GPT-3 — нейросетевая языковая модель от OpenAI. GPT-3 умеет дописывать текст, введенный пользователем. Например, по фразе «Машинное обучение — наука будущего» нейросеть может написать целое эссе на эту тему.
Отличие GPT-3 от других моделей — ее размер. В этой нейросети на 96 слоев приходится 175 миллиардов весов нейронов. На практике это означает, что GPT-3 запоминает очень много информации. В результате модель пишет гораздо более связный текст, чем ее предшественники.
Также GPT-3 умеет угадывать по введенному тексту, чего от нее ждут. Если написать начало стихотворения — модель может продолжить в стихах. Если подать пары фраз на русском и английском — GPT3 продолжит переводить. А если показать, как превращать длинный текст в короткий, модель научится делать и это.
Ей дают затравки в виде «Я люблю „Кино“, „Аквариум“ и что-нибудь», потом «Я люблю „Led Zeppelin“, „Deep Purple“ и еще что-нибудь», а потом ты даешь ей третью какую-нибудь группу, и она уже сама тебе начинает перечислять группы, которые как бы попадают в тот же кластер, что тобой упомянуты. Вроде как GPT-3 — это языковая модель, а оказывается, что это не языковая модель, а какая-то вообще модель мира. Получается, что появляются такие штуки, которые как бы могут решать самые разные задачи.
Д.К.: Есть два комментария: во-первых, перформанс GPT-3 все-таки пока далек от человеческого на десятки процентов. Во-вторых, я готов назвать GPT-3 умной после того, как она перестанет генерить мемы случайно — не в тот момент, когда мы просили ее нагенерить. Есть окказионально хорошие примеры генерации кода, генерации стихов и чего-то другого, чего мы, действительно, пока не привыкли наблюдать за машиной. Она может случайно сгенерировать какой-то хороший факт об окружающем мире, но чуть ли сегодня видел какую-то переписку, где она сообщала о специальных указах турецкого султана, которые назывались «писулями», и, к сожалению, это крутой мем, но это явно никак не бьется с действительностью. Если попросить ее назвать 30 групп русского рока — она справится, даже 50, но если она не видела 100, то все, что она может тебе сделать — это нагенерить те названия групп, которые, я уверен, доверяя этой GPT-3, безусловно, появятся в будущем, но которых пока не существует. Вот в этот момент она меня как-то возвращает на землю тем, что генерит человекоподобные мемы, когда я хочу каких-то знаний о реальном мире.
А.С.: Я довольно внимательно стал рассматривать GPT-3 в последнее время — пришел примерно к таким же выводам, как ты сейчас сказал. Меня интересовал сам факт того, что перед нами какая-то штука, которая уже позиционирует себя как какой-то универсальный решатель задач, хотя по факту он, конечно, пока им не является. В этом смысле это шаг куда-то вперед, как мне кажется, потому что в некотором смысле такие модели, как GPT-3, расширяют саму постановку задач, и мне это очень нравится. Другое дело, что одновременно это рождает, конечно, огромное количество спекуляций, каких-то роликов, где все изображают, что GPT-3 — это уже интеллект, какие-то разговоры про Бога, интернет этим всем начинает заполняться и очень трудно поэтому отделять зерна от плевел. Но сам факт, что мы имеем дело с чем-то таким обобщенным и чем-то, с помощью чего можно решать самые разные задачи, — это очень здорово.
Д.К.: Это так, но все-таки пока какой-то хайп вокруг нее, прямо совсем такой, что она подвинет человека, кажется преувеличенным.
Проблемы виртуальных ассистентов
[10:51] А.С.: Какой бы мог быть качественно новый виртуальный ассистент, совершенно другой, не такой как сейчас, который был бы действительно похож на человека, и почему не получается его сейчас сделать?
Д.К.: Не хватает, наверное, двух черт — какой-то нестандартности и не хватает проактивности. Ну, проактивность — совершенно понятный разговор и, наверное он, в общем, безо всякого сильного искусственного интеллекта, понимания, текста, картинок и так далее, способен — условно если ты каждый понедельник ходишь во «Вкусвилл» покупаешь пачку яиц, а в этот понедельник ты почему-то не пошел, то я бы на его месте спросил «Толь, ты не заболел?» или «У тебя там рацион поменялся, что вообще там происходит?» и тд., то есть он мог бы делать какие-то выводы о твоих привычках. А вот что касается какого-то нестандартного человекоподобного поведения — мне кажется, что ему все-таки не хватает какой-то модели реального мира. Вот простейший запрос к тем же виртуальным ассистентам — «включи кино» — вот если бы у меня был ассистент, который спросил бы «тебе Цоя или фильм, который ты любишь?», я бы сказал, что он ведет себя как человек. Или если ты его спрашиваешь, кто такой Толстой, а он тебя спрашивает «тебе про Льва Николаевича или ты про красного графа?», то кажется, что я бы больше поверил в его какое-то человекоподобие.
А.С.: Все-таки «включи кино» запрос, скорее, сильно склоняющийся в сторону именно кино которое кинематограф. А про группу «Кино» уже все меньше людей помнит, кажется, что даже вполне интеллектуальный агент может периодически принимать однозначные решения в условиях неоднозначности. Люди-то так и делают. Люди очень часто выбирают наиболее вероятный вариант, потому что если человек постоянно переспрашивает, то он становится как бы занудой, с ним неудобно общаться. Интеллектуальный агент, который задает слишком много вопросов тоже вызывает вопросы.
Д.К: Если бы мой ассистент был бы занудой, он был бы очень похож на меня самого и в этом смысле был бы более человекоподобным и, может быть, для меня воспринимался более как человек. Если он для меня, например, чересчур исполнительный, никогда не задает лишних вопросов — в какой-то момент он накосячит, потому что я дам какое-то нечеткое, неточное задание, и он не вник в детали. Кому-то интересны зануды, а кому-то надо, чтоб с тобой на ты общались и был такой компанейский ассистент.
А.С.: Мне кажется, что уж совсем такая крутая система могла бы просто уметь приспосабливаться. Один ассистент у одного человека становился бы занудой и много переспрашивал, и тот же самый ассистент у другого, наоборот, принимал бы однозначные решения и все бы за человека решал, и в этом была бы такая супер персонализация. Вот так, мне кажется, пока еще никто не умеет.
Д.К.: Пока никто даже не сделал такого ассистента, чтобы я или ты поверил в то, что напротив — человек. Я бы пока обобщил эту проблему до взаимодействия конкретного среднего человека с ассистентом.
А.С.: Очень большой проблемой современных ассистентов является то, что они, на самом деле, не очень-то могут осознать контекст, в котором находится тот пользователь, с которым они общаются.
Д.К.: Мне кажется, что когда я говорил проактивность, я исходил из тех же предпосылок. То, что ты по понедельникам ходишь в магазин за яйцами, — это в каком-то смысле контекст твоей жизни, или там насколько часто ты ходишь в театр.
А.С.: Если это персональный ассистент, я хочу, чтобы он мне персонально ассистировал, то есть реально помогал. Я ему хочу дать какое-нибудь задание конкретное, хочу сказать «Вот у меня есть компьютер, там собрались файлы за 5 лет, их надо рассортировать, вложить, выложить, кластеризовать, почистить и тд.,» сделать за меня некоторую такую работу в цифровом мире, и я хочу объяснить, сказать и надеяться на то, что он это сделает. Как бы их этому научить, вот об этом хочется говорить и фантазировать.
Д.К.: Действительно, они сейчас достаточно слабо приспосабливаются к тому, что не видели и мне кажется, что вот когда мы в предыдущей серии обсуждали проблемы языковых моделей как минимум до GPT-3 — они все, на самом деле, имели ту же ахиллесову пяту, они совершенно не умели справляться с чем-то, что они не видели раньше. Проблема, которую ты затрагиваешь не проблема ассистентов, а просто как бы более фундаментальная проблема — как машина может делать то, что в ней не заложено, чего она никогда не видела. И вот если мы, основываясь на GPT-3 или на чем-то таком, поймем, что машина в какой-то момент это поняла, то новая эра, наверное, уже стучится к нам в дверь.
Традиционная лингвистика в NLP
[15:43] А.С.: Есть такой известный деятель в искусственном интеллекте — Гэри Маркус, который прямо написал статью, которая называется «Перезагрузка искусственного интеллекта», где очень активно топит за то, что нужно скрещивать deep learning и knowledge graphs, ну то есть базы знаний, графы знаний, что типа на одном deep learning не выгребешь, что очень контекстно тому, что мы обсуждаем.
Д.С.: Да, это, кстати, могло помочь в примере Дениса, в котором были рок-группы. Может быть, если бы там был какой-то все-таки набор структурированных знаний о рок-группах, а не только какая-то бесконечная нейронка, то, может быть, она бы смогла нам ответить адекватнее.
Д.К.: На минувшей конференции EMNLP достаточно большая крупная секция сейчас доступные обзоры по knowledge графам, по графам знаний, действительно одним из главных направлений в этой связи была имплементация графов знаний в какие-то модели, то есть передать некоторые знания о реальном мире. Это тренд, который надо отметить, то есть это не мы с тобой сейчас тут затронули за чашкой чая, а действительно человечество начинает думать в эту сторону. Но мне кажется, что есть и второй очень важный поворот с определенного момента на крупнейших мировых конференциях по NLP в качестве критериев того, кому не дадут какой-то там приз за лучшую работу или что-то такое, оговаривается то, что это не просто человек поставил еще 5 самых мощных серверов, за счет них обучал модель еще неделю и получил прирост на две десятых процента качества, а специально помечается, что речь именно о том, что человек принципиально докинул что-то в существующую архитектуру. Исследователи, которые занимаются этой темой, уперлись в тот факт, что нельзя просто дальше забрасывать еще железо, еще вычислений. Это некоторый поворот, к которому человечество тоже дошло: давайте мы не будем просто кидать еще 2 миллиона текстов — давайте подумаем, какие знания о реальном мире в каком формальном представлении мы можем передать машине.
Д.С.: То есть, в data science запретили такой нейроночный брутфорс, да? Грубой силой больше не по-пацански решать.
Д.К.: Блицкриг я бы его назвал, да-да.
Д.С.: Как раз от этого и перейдем к разговору о лингвистике.
Д.С.: У тебя бэкграунд такой вот лингвистический?
Д.К.: Да, бэкграунд у меня теоретико-лингвистический, я бы даже сказал.
Д.С.: Насколько ты применяешь какие-то теоретико-лингвистические знания вот есть такое мнение, что сейчас лингвистика немножко в таком загоне, и насколько там нужна лингвистика, или там все сейчас решают математики с нейросетями, а лингвисты как бы не у дел.
Д.К.: С одной стороны, лингвистики там действительно меньше, чем мне хотелось бы, и на мне в этом смысле меньше розовых очков, чем было лет 6 или 7 назад и применяю я их сейчас действительно редко. Но вместе с тем нельзя отрицать, что еще остались какие-то места, в которых лингвистика нужна и мне кажется, что последние годы наметился поворот от математиков с нейросетями в сторону лингвистики.
Д.С.: Что это за места?
Д.К.: Любая задачка может тебя самого спровоцировать на какие-то лингвистические штудии внутри, простой пример: есть какие-нибудь анализы тональности текста или синтаксический анализ текста, и ты всегда можешь прийти туда с голыми нейросетями и что-то там поколдовать и выдать какое-то качество. Или сначала прийти туда, вооружившись какими-то правилами, или потом «посолить» эти нейроночки правилами, и выйдет, что результат чуть лучше.
Д.С.: Мы видим, что довольно круто в последние несколько лет продвинулась автоматическая обработка языка и действительно все круче и круче эти нейросети переводят текст, все круче и круче генерируют тексты, и при этом вроде бы мы знаем от лингвистов, что естественный язык — такая сложная штука, там есть синтаксис, семантика, куча всяких неочевидных сложных правил. И вообще лингвисты очень много времени потратили на то, чтобы построить какую-то модель всей этой системы. И вот нейросети, которые сейчас со всем этим работают, как так вышло, что они научились со всем этим работать? Они все это в себя как-то впитали и выучили в каком-то смысле синтаксис разных языков, семантику или они вообще обошли все это стороной?
Д.К.: У меня был один сокурсник еще в бакалавриате в питерском филфаке, по-моему, он диплом писал про каких-то скальдов или что-то такое, нечто крайне далекое от нашего сегодняшнего разговора. И он всегда отличался таким несколько необычным ракурсом — сразу было видно, что он смотрит не так, как все. И когда мы с ним недавно встретились на очередной встрече выпускников, он сказал одну очень простую вещь: «Я перестал заниматься теоретической лингвистикой и перестал как-то фундаментально в нее верить, потому что в вычислительной лингвистике работают какие-то другие модели. По всей видимости из этого следует, что то, чему нас учили, не так или не совсем так, а значит, все должно быть как-то по-другому». Примечательно, что он, наверное, из известных мне лингвистов первый или один из первых, кто ставит вопрос с другой стороны — то есть, обычно это NLP думает, как это связать с лингвистикой, и ставит достижения лингвистики рядом со своими или как некоторую базу, из которой может это почерпнуть. И вот я первый раз наткнулся на некоторый абсолютно противоположный взгляд, когда человек смотрит на достижения NLP как на нечто, из чего может почерпнуть лингвистика, и, так сказать, приходит к примату вычислительной лингвистики над теоретической и капитулирует, вывешивает своеобразный белый флаг. Интересно — он, действительно будет такой один, он немножко опережает свое время периодически, или это станет какой-то общепринятой точкой зрения.
А.С.: Хотел бы прояснить о какой части лингвистики этот человек говорит. Я могу понять, как какие-то поверхностные синтаксические вещи можно еще вычленять из данных, но когда мы говорим о сложной какой-нибудь логической семантике или чем-то таком, там, мне кажется, еще очень далеко до того, чтобы вычислительные модели нам помогали.
Д.К.: Мы глубоко не обсуждали, поэтому я сейчас буду реконструировать за него, но мне кажется, он точно говорил о синтаксических моделях вообще, о грамматике конструкций, наверное. Что касается семантики, то я, наверное, мог бы не согласиться, потому что мне кажется, что если мы, например, давайте я поясню для слушателей, вот были у нас модели типа word2vec — то есть, мы каждое слово представляли в виде некоторого трехсотразмерного вектора, и близость этих слов друг к другу оказывалась скорее семантической, то есть похожие слова лежали где-то рядом в пространстве — совершенно неважно, какие циферки там получались: моделька просто видела очень много текстов и была способна представить каждое виденное ею слово как трехсозмерный вектор. Так вот, идея того, что вообще из этих трехсот, вот из этой размерности 300 каждая что-то да значит и, возможно, могла бы привлечь теоретических лингвистов, дать какое-то новое слово, в том числе теоретической семантике — я, пожалуй, бы не отверг эту идею как совсем безумную, что нам NLP может помочь в теоретической науке — это кажется пока не совсем исследованным полем.
А.С.: Вот если, например, вспомнить вполне себе теоретическую работу Зализняка про русские падежи, такая красивая работа, где прямо показывается, почему в русском языке именно столько падежей, сколько есть и как они все устроены. Я могу себе представить, что если бы этой работы не существовало вообще, а в данный момент мы бы уже были в нашем мире со всеми нашими вычислительными возможностями — возможно, кто-нибудь бы продемонстрировал эти самые падежи вполне себе численным анализом данных показал бы, почему их разумно выделять именно так.
Д.С.: То есть, такая data-driven грамматика.
А.С.: Да-да.
Д.С.: Ну и вот да, наверное, надо понять, а что еще есть в лингвистике, где как раз недоисследовано, где не родились свои Зализняки и не написали свои работы и куда можно попробовать натравить какие-то численные методы.
Д.К.: Мы традиционно ставим вопрос о том, как NLP может помочь традиционная лингвистика, а вот этот обратный вопрос, кажется намного потенциально более плодотворным для рождения новых Зализняков, потому что вопрос, как лингвистика поможет NLP, стоит давно и им занимается много людей, а обратный вопрос пока значительно менее популярен.
Д.С.: Ну, потому что за NLP платят много денег, а за теоретическую лингвистику платят мало денег.
Д.К.: Кажется, что это решаемый вопрос. Если мы условно посадим лингвиста — так это прямо стартап. Мы сажаем лингвистов в NLPшники, даем им много денег, объясняем, что они теперь NLPшники, потому что они занимаются в том числе NLP, а занимаются они, на самом деле, лингвистикой, осталось только найти такую организацию.
Д.С.: Осталось только найти инвестора, да, я хотел сказать и пропитчить ему вот это все.
Д.К.: Ну, давай считать сегодняшний подкаст потенциальным питчем.
Д.С.: Да, это препитчинг.
Д.К.: Причем это препитчинг как для инвесторов, так и для самих соискателей.
Д.С.: Да, инвесторы, пожалуйста обращайтесь к нам, в «Системный блокъ» сразу же.
Д.К.: Да, мы не обещаем, что дойдем обратно до соискателей, но с инвесторами поговорим. Давай, наверное, перейдем ко второй части, которую ты затронул, такой, более традиционной. Мне кажется здесь принципиально подчеркнуть одну простую вещь, которую я всегда в разговорах на эту тему стараюсь подчеркнуть — когда мы говорим о всяких смежных областях с лингвистикой, будь то социолингвистика или психолингвистика, мы всегда говорим о том, что специалисты, которые там работают и результаты их научных изысканий всегда работают в обе стороны. То есть, они всегда приносят пользу и социологии, и лингвистике, и нейронаукам и тд., и соответственно, наоборот — человек, который является, например, социолингвистом, он разбирается как в одной части, так и в другой — успешно сидит на двух стульях. Когда мы переходим к компьютерной лингвистике, кажется, что этот разрыв между этими двумя стульями становится настолько чудовищными, что усидеть на них уже становится невозможно. Были какие-то математики, которые занимались циферками и в какой-то момент обнаружили, что иногда бывает так, что у тебя на входе вместо циферок буковки, и сказали «Ага, раз у нас на входе вместо циферок буковки, то это у нас уже лингвистика, получается, ну вот, а раз мы с циферками, то это компьютерная лингвистика» — получилась компьютерная лингвистика, которая исторически как-то стояла в сторонке от лингвистов и примеров тому множество — какая-нибудь конференция по какой-то там лингвистике «Диалог», которую назвали, собственно, «Диалог» ровно потому, что она должна была способствовать сближению двух разных отраслей, сам факт ее появления свидетельствовал о необходимости диалога.
Д.С.: Ну я бы сказал, что «Диалог» даже не самый яркий пример, если мы возьмем какой-то мировой контекст, а не российский, то на ACL, конечно, ездят, в основном, какие-то программисты лютые, мне кажется там довольно мало теоретических лингвистов.
Д.К.: Я очень люблю пример, как одна моя сокурсница уже московская, по магистратуре по компьютерной лингвистике, которая закончила бакалавриат МГЛУ и занималась переводом, в какой-то момент она с докладом, еще будучи студенткой, попала на какую-то крупную конференцию, это был, наверное, где-то 2014 год, и конференция, по-моему, была в Пекине — это был то ли EMNLP, то ли ACL, то есть на одной из наиболее лингвистически приближенной из всех современных мировых конференций по компьютерной лингвистике. Так вот, она туда приехала с докладом про какую-то кластеризацию новостей или что-то в этом духе, и вот как раз в кулуарах знакомилась с другими участниками этой международной конференции, и они спросили ее, кто она, и Даша сказала им: «Вот, я лингвист», и ответом ей было множество выпученных глаз и вопрос «А как ты тут что-то понимаешь». И вот сам тот факт, что в 2014 году на крупной конференции, которая еще все-таки хоть как-то связана с лингвистикой, сам этот вопрос был: а) уместен, б) вызывал стопроцентное понимание аудитории — он сам свидетельствует о том, что на тот момент эти две дисциплины как-то максимально разошлись. Тот факт, что народ все-таки стал думать про лингвистику в рамках вычислительных моделей, и тот факт, что сейчас пытаются как-то расшифровать черные ящики, лежащие внутри языковых моделей, которые просто видели очень-очень много текстов и дальше способны что-то там такое генерировать или на какие-то вопросы отвечать, типа там BERTа или GPT-3, сам тот факт, что появляется много статей, которые говорят о том, что там лежит на восьмом слою BERTа и что, может быть, там на восьмом слою нечто, похожее на синтаксис, на шестом — нечто, похожее на морфологию, и т. д. Кажется, что этот факт говорит нам все-таки об обратном повороте, о том, что если бы мы встречались, ну не знаю, хотя бы года через три, то, может быть, мы бы ставили вопрос совсем по-другому и вспоминали бы, значит, как, я надеюсь, почивший к этому моменту коронавирус, так и почившую какую-то разницу между лингвистикой и NLP.
Д.С.: Грустную эпоху раздробленности наук!
Д.К.: Феодальной раздробленности!
Д.С.: Феодальная раздробленность, а бывает такая, да, научная раздробленность, а после неё все радостно объединились в единое какое-то светлое общество.
Эффективность нейросетей и машинного обучения
[28:25] Д.С.: Хорошо, инженеры возвращаются к лингвистике и начинают думать о том, как лингвистику представляют их модели, а интересуются ли лингвисты тем, что вырисовывается опять же внутри BERTа, внутри GPT-3.
BERT — нейронная сеть от Google, выпущенная в 2018 году. В основе BERT лежит простая идея: нейронной сети показывают предложения на естественном языке, предварительно спрятав 15% слов, и просят восстановить исходный текст. Решая эту задачу, нейросеть обучается различать значения слов в зависимости от контекста. С появлением BERT произошел прорыв в области обработки естественного языка: повысилось качество вопросно-ответных систем, голосовых помощников, автоматических переводчиков и т.д.
Д.К.: Чем занимаются лингвисты? Лингвисты описывают язык, они ищут какие-то законы функционирования отдельных языковых единиц в том числе. Грамматика представляет из себя какую-то систему правил. Когда ты там учишь английский, открываешь грамматику, он тебе говорит, что в таких-то случаях ставится отрицание not, в таких-то случаях оно не ставится, и так далее. Что такое на шаг до нейронок просто машинное обучение? Это де-факто огромные массивы этих правил, просто в неявном виде сформулированные. Мой преподаватель по питону в магистратуре как-то сказал, что машинное обучение — это прибежище тех, кто отчаялся в правилах, кто не смог их написать. Он как бы отдал это на откуп машине, и та, соответственно, нечто такое творит и выдает какие-то правила, в том числе интерпретируемые правила, и их можно забирать напрямую. Из какого-нибудь решающего дерева ты можешь вынуть какие-нибудь признаки правил.
А.С.: У меня вообще нет в этом месте границы между нейронками и классическим машинным обучением, потому что что ты random forest обучишь и получишь что-то очень сложное, что невозможно интерпретировать, что нейронки — будет то же самое, но у тебя всегда будет возможность посмотреть, какие фичи были более значимыми. И это, в общем-то, единственный вид аналитики нормальной, который можно сделать.
Можно просто понять, какие фичи больше влияют на результат.
Random Forest (или случайный лес) — алгоритм машинного обучения на основе решающих деревьев. Работа одного решающего дерева сводится к серии уточняющих вопросов к данным. Например, упрощенное дерево для классификации котиков и песиков могло бы работать так: Длина объекта меньше метра? Да. Объект мурчит? Да. Объект рычит? Нет. Значит, это котик. Решающие деревья — один из самых понятных человеку алгоритмов машинного обучения.
Случайный лес запускает на одних и тех же данных сразу много деревьев — и усредняет их предсказание. Это позволяет реже ошибаться и меньше поддаваться переобучению. Однако это же делает случайный лес менее интерпретируемым для человека.
Д.К.: Я согласен с тобой в том, что для меня действительно нейронки и модели классического так называемого машинного обучения здесь не отличаются друг от друга как-то кардинально. Но какая-то синергия признаков и то, что ты можешь проводить то, что называется ablation studies, когда ты, соответственно, что-то из модели вынимаешь и начинаешь смотреть, а что она знает без этого.
А.С.: С этим абсолютно согласен. То, что вообще результаты машинного обучения на каком-то представительном корпусе естественного языка могут давать новую почву для размышлений, — конечно же, это так.
А.С.: Вот смотри: для большого количества предложений на естественном языке люди постарались и создали синтаксическую разметку. Сначала договорились о том, какие должны быть синтаксические связи и дальше нарисовали эти связи на большом корпусе предложений, правильно? И дальше нам с этим делать как бы особо нечего. Использование синтаксиса для практических задач — это сложная тема. Понятно, что он как-то помогает, но быстро оказывается, что не так уж и сильно, и очень многое в синтаксисе нейронки могут выучить сами, и поэтому нужен ли вообще вот именно такой синтаксис — это большой вопрос. Представь себе на одну секунду, что у тебя есть корпус такой же точно предложений, но только напротив каждого предложения написана детальная такая логическая интерпретация этого предложения. То есть там уже не синтаксические связи, а там объекты, как эти объекты друг с другом связаны, кто с чем что делает, какая-то такая предикатная запись в виде предикатов, желательно еще темпоральных предикатов, чтобы было понятно в какой последовательности что происходит. Вот представь себе на секунду такой корпус, если бы человечество его создало, — пока никто такое не сделал, самые близкие какие-то вещи — это что-то типа FrameNet’а, но оно все равно не то.
Фрэймнэт— это словарь языковых конструкций. Фрэймнэт описывает ситуации и их типовых участников с точки зрения языка. Например, ситуация «исполнение музыки» включает таких участников, как «исполнитель» и «инструмент»: Вася играет на пианино, Маша бренчит на гитаре. Также участниками ситуации «исполнение музыки» могут быть «слушатели» и «исполняемое произведение»: например, Вася сыграл Кате блюз.
Основа каждого фрейма — какое-то действие, ситуация или событие. Они могут выражаться одним из приписанным фрейму глаголов. Например, варить, жарить, пассеровать — глаголы фрейма «готовить еду». Типовые участники этого фрейма — сам готовящий («повар»), приготавливаемое блюдо (‘пирог’), средство для готовки («плита»), контейнер для готовки (сковорода). Число комбинаций для описания готовки еды огромно, но типовые роли участников останутся одинаковыми.
Вот если бы такое сделали, разве не оказалось бы потом, что мы можем решать уже конечные задачи просто имея вот такой вот интерпретатор естественного языка?
Д.К.: Он мог бы помочь, мне просто здесь принципиально важным кажется поговорить о рекурсии. Вот когда мы говорили о синтаксическом парсере, у нас была какая-то разметка, и мы научили машину — неважно, какой там алгоритм — как-то на этой разметке, и теперь на тех предложениях, которые он раньше не видел, он способен тоже выдавать некоторую аналогичную разметку. В основе этого дела — синтаксическая разметка, то есть определенные люди, задававшие правила. Вот если мы говорим о том, что это какое-то обучение с учителем, то есть пока мы по-прежнему учимся на разметке, пусть даже в терминологии темпоральных предикатов, мне это не будет казаться каким-то достижением действительно компьютерным, мне это будет казаться человеческим достижением. Мы просто смогли некоторую машину… заложили в нее те знания, которые у нас были, но мы ее именно сами заложили разметкой. Для меня это достижение человеческое: это мы сделали такую крутую разметку и смогли настолько правильно организовать работу модели, которая поверх этого обучалась, что получили какой-то крутой парсер языка. А вот если бы эта штука каким-то образом была unsupervised, вот в этом смысле меня работа про то, что BERT, который ни на чем не учился, то есть по сути, для слушателей, просто модель, которая видела очень много текстов, а дальше какую-то магию внутри себя творила, ничего не зная вообще о языке, а просто видя тексты, способна выдавать там 82 с половиной процента по тому же синтаксическому парсингу на английском языке — вот это уже достижение чисто компьютерное. Поэтому я бы считал абсолютным таким прогрессом то, когда это происходит без учителя. То есть когда она просто видит кучу текстов, а дальше говорит: о, посмотрите, фреймы!
А.С.: Ну то есть примерно какая-то гениальная модель типа условного BERTа какого-то, не знаю, будущего должна сама изобретать предикаты и связывать их между собой. Это при условии, что вообще взгляд на мир через предикаты правильный. Возможно, эта модель изобретет какой-то абсолютно альтернативный взгляд, другой, который тоже будет работать.
Д.С.: И вопрос будет в том, а будем ли способны ли мы понять этот взгляд и эту модель. Проблема-то в том, что она, может быть, уже изобрела, раз она так хорошо работает. Мы не очень можем вытащить оттуда в каких-то знаках, понятных человеку.
Д.К.: Я как раз хотел сказать, да, что, во-первых, модель-то уже умеет, то есть на самом деле просто в какой-то момент провели исследование и узнали, что в шестом слое BERTа всё лежит таким образом, что с точки зрения синтаксического парсинга это довольно удачно: то есть это был знак, который там на шестом слое BERTа лежал и ждал своего Шампольона, которым оказался, по-моему, Кристофер Маннинг. Но для меня вот чисто какая-то помощь от машины, она даже не в том, что она это на каком-то языке разметила, а в том, что все сидящие в этой комнате, все слушатели ничего не знают о той теории, и той практике, наверное, в рамках которой будет удобно трактовать эти самые знаки от машины. Ну вот сейчас мы придумали, что это темпоральные предикаты, а на самом деле это может быть что-то совершенно другое, и вот когда эту теорию нам машина даст, а кто-то гениальный её расшифрует, вот тогда-то это будет действительно каким-то достижением, которое машина нам принесла. Но до тех пор, пока эти знания на разметке закладываем мы, для меня, во-первых, а) невозможна новая теория, а значит, какой-то фундаментальный прорыв, б) это не машина научилась, а мы хорошо ее научили, это совсем другое.
NLP и культурные особенности
[38:21] А.С.: Тут есть еще проблема такая практическая — это вообще проблема мультимодальных корпусов. Почему все — и BERT, и GPT-3 — так хорошо развиваются, то есть у них это всё так эффектно выглядит? Потому что у них есть огромные данные, огромные текстовые данные — вот просто много-много-много-много текстов. Это как представить себе человека, которому дали много-много-много всего читать, но он сидит в черной комнате и никогда ничего не видел больше — вообще не видел реального мира, не трогал, не нюхал, не смотрел. Мне кажется, если бы у нас был бы идеальный какой-то корпус таких же размеров огромных, как вот эти текстовые корпуса существующие, в котором бы всё было запротоколировано, то есть все общения, все действия, вся коммуникация плюс все действия в реальном мире, то вообще бы не было проблемы. Я думаю, что архитектуру современную довольно быстро бы изобрели, а может и вообще какая-то существующая подошла бы, и она бы на таком мультимодальном корпусе вполне бы классно научилась, и там внутри возникли бы все эти онтологические вещи — объекты и всё остальное.
Д.С.: То есть ты предлагаешь оцифровать Землю?
Д.К.: Очень интересно, как бы эта штука боролась с межъязыковыми и межкультурными различиями и как бы она их уловила. Вот этот вот известный мем про болгар, которые, кивают при отрицании, с которым я имел удовольствие столкнуться лично — я думаю, что меня он ввел в ступор, а уж что произойдет с машиной, я не знаю.
А.С.: Про культурные различия я даже не думал. Я представлял себе что-то такое очень примитивное. Я представил себе корпус, в котором есть и тексты, и действия, и они синхронизированы, и всё детально записано. То есть, условно говоря, кто-нибудь говорит кому-нибудь: «Передай мне ложку», и в этот момент человек берет ложку и передает другому человеку. И вот таких разных интеракций записаны миллиарды. И возможно, из такого корпуса возникло бы действительно отличное представление о мире.
Д.К.: Я бы поверил в понимание такой машины. То есть в GPT-3 я не верю, пока ровно потому, что она не вкладывает никакой смысл за этим, для неё это просто последовательность символов. Той модели, про которую ты говоришь, я бы поверил хотя бы потому, что я понимаю, откуда у нее в теории возьмется нечто, что я считаю пониманием.
Внедрение бизнеса в образовательный процесс
[40:50] Д.С.: Я предлагаю спускаться с небес на землю обратно ближе к реальности, и я хочу спросить про образование. Вот мы говорили в этом подкасте, что есть некоторый разрыв, между, например, теоретической лингвистикой и автоматической обработкой языка. Мой вопрос касается решения этой же самой проблемы разрыва между теоретической лингвистикой и natural language processing на уровне образования, вот что бы мы могли сделать на уровне, так сказать, инженерии образовательных продуктов, на уровне создания образовательных программ?
Д.К.: Я бы сказал, что это в первую очередь какая-то проектная работа. Индустрия принципиально отличается, кажется, жизненным циклом и какими-то бизнесовыми такими ограничениями, накладываемыми на научный процесс в вакууме. Кажется, что, если бы мы все время давали мастер-классы, или там год магистратуры был посвящён стажировке, оформлен таким образом, что бизнес тоже бы не отмахивался от стажеров, то есть условно — а, ладно, типа он на три месяца пришел, я ему галочку поставлю, сидел на работе в игры играл, — а действительно был каким-то образом мотивирован при помощи какой-то программы вкладываться в этих стажеров, иметь с ними ежедневные или еженедельные какие-то встречи по прогрессу, люди на выходе из магистратуры как минимум максимально хорошо понимали бы, что их ждет дальше. Мне в этом смысле вообще кажется очень… я уже съезжаю с темы, но мне кажется важным это проговорить, что мне в этом смысле вообще кажется очень неправильным какой-то процесс, который у нас происходит после окончания образовательного учреждения: вот ты ходил в детский садик, потом в школу, потом в бакалавриат, тебя все зовут в магистратуру — хорошо, ты идешь в магистратуру, потом тебя зовут в аспирантуру. И вот ты, начиная с яслей, последние двадцать лет карабкаешься по этой лестнице вверх, и тебе всё время подкладывают, знаешь, так, как обезьянке, следующую ступеньку, чтоб ты за нее зацепился лапкой и перешел. При этом где-то рядом существуют другие удивительные джунгли — джунгли бизнеса, в которых происходит что-то совсем другое, и ты говоришь: ребят, хорошо, я понял, что будет на этой лестнице, вы дальше будете давать мне ступеньки, это окей, и может быть, это даже хорошо. Но, пока я не сходил в те другие джунгли, я совершенно не знаю, что происходит, — может, там бананы вкуснее. Ярослав Иванович Кузьминов в каком-то интервью говорил, что основные точки потерь студентов — это выпуск из бакалавриата и выпуск из магистратуры. Вот если мы в этой точке говорили: парень, мы даем тебе два года поучиться в бизнесе — поработать в бизнесе, поучиться, как угодно это назовите, вот такую псевдостажировку — если ты после этого решаешь, что бизнес тебе действительно интереснее, то ты остаешься там работать. Но если нет, то у нас есть какой-то конкурс — вот как у нас сейчас для отслуживших в армии есть — то через два года ты будешь иметь право поступить в аспирантуру с абсолютно равными правами с теми, кто вот только что из минувшего сырого выпуска магистратуры. Может быть, вот эти люди, уже обкатанные в бизнесе, возвращаясь в рамки науки, смогли бы делать такие исследования, которые были бы больше на стыке науки и индустрии и приносили бы пользу им обеим.
Перспективы data science
[43:43] Д.С.: Второй вопрос: куда просочится data science через пять-десять лет, если мы говорим именно про экономику?
Д.К.: Если бы ты сейчас спросил, куда это не просочится, вот тогда я бы напрягся. А сейчас я, кажется, не вижу мест, где это не могло бы сделать. Мне рассказывали про какого-то, вот сейчас боюсь соврать, мужика, который у себя установил камеры следить, кажется, за курицами в курятнике и дальше на основании компьютерного зрения определять, какая из них сегодня отправится на обед, на основании чисто черт их поведения и вот этого всего.
Д.С.: Ой, ну это же Russian CyberVillage, есть же сейчас такое известное вирусное видео.
Д.К.: Да, примерно так, да-да-да, это CyberVillage в чистом виде. И поэтому мне кажется, что какие-то самые невероятные вещи нас в будущем ожидают.
Блиц
[44:30] Д.С.: Давайте переходить к блицу, действительно. Несколько каких-нибудь очень крутых статей про машинное обучение, искусственный интеллект, data science, что угодно…
Д.К.: Здесь очень трудно не свалиться в какую-то хрестоматию, всегда все перечисляют один и тот же набор статей типа Attention is all you need или там про придуманный word2vec. Мой совет тем, кто хочет как-то за областью следить, — не утыкаться в какие-то классические статьи как минимум потому что те, кто добросовестно разматывает библиографический клубок публикаций, они все равно всегда до каких-то хрестоматийных, правильных статей дойдут. Поэтому я бы просто всем рекомендовал, во-первых, действительно, эти статьи читать и учебник, соответственно, Мартина и Журафски и следить за конференциями последними: просто открыть себе календарик, тем более, они сейчас в онлайне, и большинство докладов просто предзаписаны и прямо по зуму идут. И ещё я всегда рекомендую писать авторам статей — это жутко помогает, не стесняйтесь этого делать.
Д.С.: Три самые интересные конференции.
Д.К.: Я всегда рекомендую какие-то вещи, связанные с русским языком: это «Диалог», это AINL и это AIST, вот. Их три более-менее. А международные — в первую очередь EMNLP для тех, кто все-таки интересуется каким-то вкладом в это лингвистики, потому что на EMNLP больше лингвистики, где бы то ни было, ну а так, разумеется, ACL и NIPS?
А.С.: Где будет изобретен сильный искусственный интеллект? Варианты ответа: в корпорации, в научном институте, в гараже (отдельным исследователем, имеется в виду) или твой собственный вариант ответа.
Д.К.: Я думаю, что он безусловно будет изобретен в гараже, просто этот гараж дня через три станет собственностью какой-то компании большой в Долине типа условного Гугла или Амазона.
Д.С.: Боишься ли ты за свое рабочее место, что его когда-нибудь отнимут роботы?
Д.К.: Ну, моё рабочее место очень трудно отнять, потому что в текущих условиях оно находится у меня дома. В то, что роботы захватят мой дом, я пока еще не верю, но, скажем так, есть большое количество людей и большое количество профессий, про которые я это думаю. Про свое не думаю просто потому, что, когда ты уже единожды пережил какую-то трансформацию из сугубо гуманитарной среды в сугубо технарскую, в общем, уже дальше море по колено.
Д.С.: Доверишь ли ты искусственному интеллекту воспитание детей — собственных, например?
Д.К.: Собственных — нет.
Д.С.: А тех, кого некому воспитывать?
Д.К. Под каким-то человеческим присмотром — да. Я думаю, что, если был бы жив условный Януш Корчак, то он мог бы такой эксперимент провести. Просто потому, что он бы лучше нас всех знал, когда его отключать, если что-то пошло не так.
Финал
[47:06] А.С.: Денис, спасибо тебе большое за то, что ты к нам сегодня пришел! У нас получился, по-моему, очень интересный разговор, и очень глубоко мы копнули пару раз.
Д.С.: Денис, спасибо большое, что ты нашел на нас время, и мне тоже кажется, что сегодня было очень интересно.
Д.К.: Спасибо большое за интересные вопросы. Мне кажется, что вам удалось подобрать такие вопросы, которые стимулировали какие-то неожиданные для меня самого мысли. Я желаю какой-то хорошей судьбы всему подкасту, потому что он на достаточно популярную тему, при этом не скатывается в какое-то такое обывательское, дилетантские рассуждения, а помогает искать ответы на какие-то вопросы, которые ты сам себе не задаешь, будучи погруженным в рутину. Большое Спасибо!
Д.С.: Спасибо! Это был очередной выпуск подкаста «Неопознанный искусственный интеллект», сокращенно НИИ, от издания «Системный Блокъ». С вами были я, Даниил Скоринкин…
А.С.: И я — Анатолий Старостин.
Д.С.: А в гостях у нас был руководитель направления в SberDevices, один из людей, который запускал семейство виртуальных ассистентов «Салют» Денис Кирьянов. Пока!