Что такое обработка естественного языка и зачем это надо

Подкаст «Выхожу с понедельника» — выпуск 18

NLP. Возможно, вы видели эту аббревиатуру в текстах про пикап-мастерство или какой-нибудь нейромаркетинг. Но в этом выпуске подкаста мы расскажем про другое NLP, где программируют не людей, а совсем даже наоборот — создают системы, которые могут понимать человеческие запросы на обычном языке и отвечать на них нужным образом.

А поможет в этом Роман Захаров — преподаватель факультета обработки естественного языка (NLP) в GeekBrains, а также дата-сайентист в МВС-Груп.

Послушать 18-й выпуск можно на разных платформах:

В этом посте мы собрали интересные цитаты из выпуска.

— Если говорить поверхностно, обработка естественного языка это какая-то обработка. Что за язык, в принципе, неважно. На курсах мы рассматриваем естественный язык, но в реальности это может быть какой-то придуманный язык, например, язык программирования. Его также можно анализировать, можно делать генераторы, которые на основе правил, которые были заложены в искусственном языке, будут генерировать тексты.

— Если говорить о том, что нам приходит набор данных, то работа специалистов, которые занимаются обработкой естественного языка, не сильно отличается от работы в классическом Data Science или от работы людей, которые занимаются компьютерным зрением. NLP сейчас чуть более хайповая область, а компьютерное зрение немного затихло и поджидает.

— Есть стартап Replika, который занимается NLP. Он в основном ориентирован на англоговорящую аудиторию и там чат-бот пытается болтать с человеком. Он имеет внешний вид. Когда ты регистрируешься, ты можешь его выбрать. Там довольно мощная сеть, которая пытается просто с тобой поговорить и поддерживать диалог. Само поддержание диалога и чтобы чат-бот не забывал саму историю — это довольно сложный механизм и его крайне тяжело сделать. Пару лет назад такого не было. Какие-то факты о человеке запоминали, занося их в отдельную базу или ещё как-то.

— Если смотреть на всю отрасль машинного обучения в ретроспективе, то у неё волновые движения. Сначала был невероятный хайп, в 40-50-х годах прошлого века. Все думали, что сейчас изобретут искусственный интеллект. Но не получилось. И эти наскоки начали повторяться. Хайп был довольно сильный, в это вкладывались компании.

— Делали распознавание номеров домов. Фотографировали и пытались распознать цифры. Аналогично делали распознавание индексов. Эту задачу вполне хорошо решили, уже в 80-х годах она была автоматизирована. По крайней мере в США она решалась автоматически. У нас автоматизация началась гораздо позже, хотя все методы были и в этом плане мы никак не отстаём.

— Как правило, люди, которые так или иначе пересекаются с обработкой языка, будут непосредственно работать с одним из трёх источников. Источником данных может быть непосредственно текст, надиктованное сообщение (speech recognition) или отсканированные документы (optical character recognition, OCR). Расшифрованные из второго и третьего источника данные затем будут передаваться в обработку естественного языка. У этих источников есть свои нюансы.

— Если хочется погрузиться и посмотреть, что это за область, заходите на Хабр, вбивайте «NLP», стандартная схема. Есть тег Natural Language Processing и вы попадёте в подкатегорию, где будут только эти статьи. Книжек тоже довольно много. Если хочется чего-то интересного, то нужна практика, какие-то проекты, которые ты сам будешь делать. Возникает вопрос, где их получить. Тут либо стажировка, либо делать самому. Но если ты будешь делать сам, без опытных людей, то будешь двигаться очень медленно или вообще ничего не сделаешь. Есть сообщество Open Data Science, вступите в него. Это очень крутое сообщество. Оно не русскоязычное. Там есть pet-проекты, в которые вы можете подать заявку, вступить, посмотреть уже готовый код и начать самому развиваться. Вас будут ревьюить, проверять ваш код как в обычной продуктовой команде.

Освоить востребованную профессию в Data Science можно всего за полтора года на курсах GeekBrains. После учёбы вы сможете работать по специальностям Data Scientist, Data Analyst, Machine Learning, Engineer Computer Vision-специалист или NLP-специалист.

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