Как компьютеры учатся понимать человеческий язык
Эта статья ― лишь небольшая часть того, что Константин Воронцов рассказал в интервью для нашего проекта GeekSpeak, доступного только студентам платных программ GeekBrains.
Константин Воронцов ― ученый, доктор физико математических наук, профессор РАН. Специалист по анализу данных, искусственному интеллекту и машинному обучению.
Поиск не по словам, а по смыслам
В 2010 м году я защитил докторскую диссертацию, она была чисто теоретическая, математическая. И хотя я и прикладными задачами занимался, но мне все таки захотелось свою дальнейшую научную работу посвятить чему-то такому, что было бы более социально значимым. В итоге я занялся анализом текстов. Меня увлекли задачи тематического моделирования, кластеризация текстов.
Есть небольшая коллекция текстов, как понять, какие темы там есть? Это используется в поиске и еще много где. Постепенно я пришел к задачам разведочного поиска, то, что называется Exploratory Search.
Как искать не по ключевым словам, а по смыслам? Как использовать такие крутые методы поиска для самообразования? А не только как в Яндексе и в Гугле где ты задаешь запрос конкретный и какой-то конкретный ответ пытаешься получить.
Гуманитарии помогут технарям понять текст
Следующим шагом для меня были задачи, которые связаны с пониманием текстов естественного языка. Причем пониманием не в общем таком смысле, а в очень прагматичном. И мы с коллегами сейчас создали новую лабораторию в Институте искусственного интеллекта МГУ, где мы занимаемся задачами детекции манипуляцией в тексте, пропаганды и всего, что связано с обманом, фейком и так далее.
То есть это на стыке с лингвистикой, психологией, медиалингвистикой, политической лингвистикой. Мы ушли в междисциплинарные исследования на стыке с гуманитарными науками, даже с историей.
Для нас пропаганда ― это объект изучения, мы не занимаемся пропагандой, мы ее изучаем. И когда мы видим, например, вещи, связанные с пересмотром результатов Второй мировой войны, то нам, конечно, нужен историк в команде, чтобы мы могли хотя бы сделать размеченные выборки об этом.
Генеральное направление, которое мы выбрали ― это формализация гуманитарных знаний с помощью формирования обучающих выборок.
Наша цель ― построить технологии, которые умеют все это детектировать автоматически в потоках, где там сотни и тысячи сообщений в сутки: СМИ, социальные медиа. Но разработать такие технологии можно, только если мы встроим профессиональных знаниях наших коллег-гуманитариев в те модели, которые мы строим. А это можно делать только с помощью разметок.
Мы сейчас создаем инструменты профессиональной разметки. Чтобы наш специалист, журналист или медиалингвист мог сесть и вложить некие смыслы. Что есть манипуляция? Что есть психоэмоциональное воздействие текста на человека? Что вообще в тексте может заставить человека поменять свою точку зрения или испытать эмоцию, или подвигнуть его к какому то действию? Вот те задачи, которым мы сейчас увлечены.
Выявление манипуляций в тексте
Если мы, например, занимаемся разметкой текста и выявляем приемы пропаганды или речевые манипуляции, лингвист видит эти вещи, особенно опытные люди, которые давно исследуют эти языковые явления. Вот этот фрагмент текста, у фрагмента есть начало и конец, какая-то фраза или несколько фраз. Дальше, есть ли там такое воздействие, которое вынуждает читателя изменить свое отношение к какому-то субъекту, который в тексте упомянут? Это мишень манипуляции.
То есть есть один фрагмент, который сама манипуляция, есть второй фрагментик, который мишень манипуляции. Они связаны друг с другом. И вот это и есть разметка. Два фрагмента они связаны. То есть выделение интегрирования или пометка фрагментов текста ― это и есть основной элемент, и практически также, как это делается в изображениях. Тоже выделение и какая-то классификация.
Слова ― это векторы, но им нужна поправка на контекст
Но как мы дошли до жизни такой вот буквально 10 лет прошло, и технологии настолько изменились, что теперь решаем те задачи, о которых, в общем, и помыслить было страшно лет пять еще назад. Выявление манипуляций и пропаганды в тексте ― еще пять лет назад заикаться об этом невозможно было. Задача казалась настолько неподъемной, трудной. Ну, получим мы уровень качества в 60%, не больше, но это никому не интересно. Хотя попытки все время предпринимались. Что же произошло?
Появились модели, которые могли превращать слова в векторы так, чтобы эти векторы отражали смысл слов. Векторы действительно какие-то смыслы в себя вбирают. Но эти векторы универсальные для всей текстовой коллекции, для всего языка. А это неправильно, потому что лингвисты знают, что смысл слова существенно зависит от его близкого окружения, от его контекста. В какой фразе он был сказан? Какое вообще сообщение он нес?
Поэтому вектор, который отражает смысл слова, он должен быть немножечко изменен для каждого словоупотребления в его контексте. И как сделать вот эти векторное представление слов не универсальными, глобальными для всего языка, а как его сделать контекстозависимым? Вот, собственно, это и делают модели-трансформеры.
Полная версия интервью доступна только студентам GeekBrains
Это лишь небольшая часть того, что Константин Воронцов рассказал в интервью для нашего проекта GeekSpeak. В рамках этого проекта мы общаемся с известными учеными, разработчиками и бизнесменами, которые делятся своими знаниями и опытом, а также подробно рассказывают о таких темах, для понимания которых нужно прочитать десятки научных книг и статей, написать сотни тысяч строчек кода или основать несколько стартапов.
К каждому интервью прилагаются полезные материалы, которые спикеры советуют для саморазвития: книги, фильмы, лекции, презентации, подкасты и многое другое.
Посмотреть расширенное интервью и получить подборку материалов могут только студенты платных программ GeekBrains. Хотите стать одним из них? Выберите свою программу обучения здесь.