Зачем учиться обработке текстов: новый онлайн-курс ФКН доступен для всех желающих
28 сентября на платформе «Открытое образование» стартовал новый онлайн-курс «Анализ текстовых данных». В ходе обучения слушатели изучат подходы к решению основных задач автоматической обработки текстов на основе классического машинного обучения и глубоких нейронный сетей.
Обработку естественного языка называют профессией будущего, а ее достижения так прочно вошли в нашу повседневную жизнь, что уже сложно представить, как мы обходились без них раньше. Голосовые и виртуальные ассистенты, автоматический перевод, предиктивный ввод текста в телефоне, автоответчики в колл-центрах и различные системы рекомендаций — вот далеко не полный список популярных сегодня сервисов, использующих технологии NLP (Natural Language Processing, обработка естественного языка).
О том, что переживает эта область сейчас и какие задачи ставит перед собой в ближайшем будущем, рассказала Екатерина Артемова, одна из авторов курса.
Почему про обработку естественных языков так широко стало известно именно сейчас?
Помимо в целом растущего спроса на сервисы, построенные на основе NLP, у популярности автоматической обработки текстов есть и другие причины.
Во-первых, эти технологии сегодня отлично развиты и при этом достаточно просты в использовании в индустрии.
Раньше, до нейронных сетей, для обработки текстов нужно было хорошо знать лингвистику. Приходилось под каждую задачу подбирать сложные признаки на основе словарей и других ресурсов.
В 2016 году ситуация изменилась — в NLP пришли нейронные сети, которые фактически могут выступать как черный ящик: на вход мы подаем текст, а на выходе получаем готовое решение (например, перевод на другой язык). Затем, в 2019, появились модели на основе архитектуры Transformer, которые сильно повысили качество большинства решений. Эти модели носят имена персонажей из «Улицы Сезам» (международное детское телешоу — прим. ред.) и обладают большой универсальностью — то есть, одну модель можно использовать практически под все задачи.
Во-вторых, но применительно только к России, свою роль сыграл курс на импортозамещение в IT.
Если раньше все так или иначе пользовались решениями, сделанными в США, которые русский язык чаще всего не поддерживали, то сейчас переключились на разработку собственных решений — и открыли новую нишу. То есть, получается, что заниматься обработкой текстов просто выгодно.
Вдобавок стоит уточнить, что, при всех успехах последних лет, остаются и еще не решенные проблемы. Например, создание модели, которая одновременно справлялась бы со всеми задачами и помещалась бы в мобильный телефон. Для работы большинства существующих сегодня решений нужен доступ в интернет, плюс обработка данных ограничена законом о персональных данных — это делает модель менее адаптивной, хуже понимающей своего пользователя.
Кажется, что все эти технологии, которые только появляются, в силу своей универсальности проживут какую-то относительно продолжительную жизнь. Поэтому лучшее время их изучать — сейчас. Именно о них идет речь в нашем курсе.
Какие направления исследований в NLP кажутся вам особенно перспективными?
В первую очередь, работа с пользовательскими данными, которые пишут люди: в этих текстах есть и эмоции, и мысли отдельного человека, его потребности, желания и намерения. Из работы с такого рода информацией можно узнать много нового о людях — и потом это знание как-то использовать.
У Мурата Апишева, соавтора курса, на эту тему есть множество интересных кейсов из индустрии, один их них — сервис для рекламного агентства. Идея была в следующем: выстраивать кампании клиентов на основе трендов русскоязычного сегмента Twitter и YouTube. Такая услуга предоставлялась и раньше, но мониторинг делался вручную: сотрудники агентства просматривали тысячи страниц с постами и комментариями в социальных сетях, затем на основе этой информации делали какие-то выводы. Времени это занимало много, а результаты были недостаточно объективными.
Глобально задачи в этом проекте было две: инфраструктурная (как получать и хранить данные, в каком виде отдавать пользователям, как сделать все автоматическим и надежным) и NLP-шная (как и чем делать тренд-аналитику). Для анализа трендов существует ряд готовых инструментов, но их выбор не всегда очевиден и может зависеть от самых разных критериев: от скорости работы и сложности поддержки до качества и даже «хайповости» решения. Ключевыми факторами также являются бюджет заказчика и ресурсы команды (временны́е, вычислительные и прочие).
В случае с рекламным агентством, исходя из поставленных команде условий, рассматривалось несколько методов, большую часть из которых мы будем разбирать в курсе. Не вдаваясь в технические подробности, скажу, что в итоге получился сервис, который умеет: а) регулярно выкачивать репрезентативную выборку данных из обоих источников, б) строить наборы тематических трендов и в) ранжировать документы по релевантности каждому из них.
С научной точки зрения одна из самых интересных технологий сейчас — это перенос обучения (transfer learning) между языками
Тут речь идет про модели, которые одновременно понимают несколько языков. Например, у нас есть один «большой» язык, у которого много ресурсов (скажем, английский). Мы можем обучать на нем какие-то модели, решать конкретные задачи, а потом переиспользовать это все на «меньшем» языке, без необходимости обучать модель с нуля.
Как это может использоваться? Например, не нужно будет переводить какой-то сервис на разные языки, даже не потребуется использование технологий машинного перевода. Это невероятная идея, потому что с точки зрения потребителя она открывает широкому спектру пользователей доступ к большому количеству ресурсов, которые сейчас им недоступны из-за незнания языка.
Перенос обучения между языками — это, с одной стороны, создание более умных и универсальных моделей, которые сразу понимают много языков, с другой — еще и экономия на вычислительных мощностях.
Другое крутое направление исследований — создание честного и политкорректного искусственного интеллекта, то есть, таких моделей, в которых не будет содержаться каких-то гендерных, расовых и других предрассудков.
Поскольку сейчас нейросетевые модели обучаются, как правило, на текстах из сети, они запоминают в том числе все существующие там предубеждения — а их, как мы знаем, в интернете немало. Научиться убирать такие искажения — очень перспективное и социально полезное направление исследований. Их результаты пригодятся, например, для честного кредитного скоринга и рекрутинга, которые сейчас активно автоматизируются.
Нужно ли лингвистическое образование, чтобы работать в области обработки текстов?
На данном этапе пути лингвистов и NLP-специалистов сильно разошлись. Лингвистика изучает естественный язык, мы делаем технологии, которые с этим языком работают. Нам важно знать, как устроен естественный язык, но мы не можем ничего нового о его устройстве рассказать, никакого дополнительного лингвистического знания мы не производим. В общем, лингвистом быть не нужно.
Для того, чтобы разрабатывать любые технологии, важны несколько вещей. Первоочередная — здравый смысл. Очень важно понимать ограничения современного стека технологий и его возможности. Вторая важная составляющая — это фантазия. Нужно быть достаточно смелым и амбициозным, чтобы придумывать новые приложения, новые сервисы, не ограничиваясь при этом тем, что мы уже видели и умеем. Третье — нужно хорошо разбираться в предметной области. Например, если мы делаем клиентское приложение, мы должны хорошо понимать, какую боль пользователей мы решаем.
Мы считаем, что нет людей, которые не понимают математику и не способны к программированию. На каком-то уровне можно обучиться практически всему. Мир становится более технологичным, а технологии при этом — более доступными, как и языки программирования, инструменты работы с текстовыми и другими данными.
Буквально несколько лет назад на решение некоторых задач в NLP могло уходить до недели — не хватало каких-то инструментов, все было очень неудобно и приходилось делать с нуля. Сейчас те же задачи можно сделать за пять минут — и не потому, что ты такой крутой специалист, а потому что технологии стали более продвинутыми. Научиться пользоваться этими технологиями — не rocket science. И на практических занятиях в нашем курсе мы показываем много готовых инструментов, из которых можно собрать вполне себе жизнеспособный и рабочий продукт, не будучи при этом лингвистом или филологом.
Регистрация на онлайн-курс «Анализ текстовых данных» открыта до 11 октября.
Апишев Мурат Азаматович
Артемова Екатерина Леонидовна