Как компьютеры учатся понимать человеческий язык

Они превращают слова в векторы и делают поправку на контекст
4 минуты25260

Эта статья ― лишь небольшая часть того, что Константин Воронцов рассказал в интервью для нашего проекта GeekSpeak, доступного только студентам платных программ GeekBrains.
 


Константин Воронцов ― ученый, доктор физико математических наук, профессор РАН. Специалист по анализу данных, искусственному интеллекту и машинному обучению.

Поиск не по словам, а по смыслам 

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

Есть небольшая коллекция текстов, как понять, какие темы там есть? Это используется в поиске и еще много где. Постепенно я пришел к задачам разведочного поиска, то, что называется Exploratory Search. 
Как искать не по ключевым словам, а по смыслам? Как использовать такие крутые методы поиска для самообразования? А не только как в Яндексе и в Гугле где ты задаешь запрос конкретный и какой-то конкретный ответ пытаешься получить. 

Гуманитарии помогут технарям понять текст

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

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

Наша цель ― построить технологии, которые умеют все это детектировать автоматически в потоках, где там сотни и тысячи сообщений в сутки: СМИ, социальные медиа. Но разработать такие технологии можно, только если мы встроим профессиональных знаниях наших коллег-гуманитариев в те модели, которые мы строим. А это можно делать только с помощью разметок.
 
Мы сейчас создаем инструменты профессиональной разметки. Чтобы наш специалист, журналист или медиалингвист мог сесть и вложить некие смыслы. Что есть манипуляция? Что есть психоэмоциональное воздействие текста на человека? Что вообще в тексте может заставить человека поменять свою точку зрения или испытать эмоцию, или подвигнуть его к какому то действию? Вот те задачи, которым мы сейчас увлечены.

Выявление манипуляций в тексте

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

 Слова ― это векторы, но им нужна поправка на контекст

Но как мы дошли до жизни такой вот буквально 10 лет прошло, и технологии настолько изменились, что теперь решаем те задачи, о которых, в общем, и помыслить было страшно лет пять еще назад. Выявление манипуляций и пропаганды в тексте ― еще пять лет назад заикаться об этом невозможно было. Задача казалась настолько неподъемной, трудной. Ну, получим мы уровень качества в 60%, не больше, но это никому не интересно. Хотя попытки все время предпринимались. Что же произошло? 

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

Полная версия интервью доступна только студентам GeekBrains

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

К каждому интервью прилагаются полезные материалы, которые спикеры советуют для саморазвития: книги, фильмы, лекции, презентации, подкасты и многое другое.

Посмотреть расширенное интервью и получить подборку материалов могут только студенты платных программ GeekBrains. Хотите стать одним из них? Выберите свою программу обучения здесь.

нейронные сети.программирование
Нашли ошибку в тексте? Напишите нам.
Спасибо,
что читаете наш блог!