Обработка естественного языка: методы, инструменты и задачи NLP (natural language processing)

Автор статьи
Бобков Олег
Менеджер отдела продаж

Достижения в области разработки искусственного интеллекта сегодня способны по-настоящему удивить даже тех, кто имеет непосредственное отношение к этой сфере. Одним из популярных направлений для реализации инновационных проектов стало создание цифровых приложений, совместимых с компьютерами и мобильными устройствами, способных подвергать анализу и интерпретировать входящие данные, представленные в голосовой или текстовой форме, без использования специальной лингвистики, шаблонных команд и формулировок — то есть в привычном человеческом построении фраз и словосочетаний. Как работают алгоритмы и модели системы обработки естественного языка, какие технологии, методы и инструменты применяют для машинного обучения NLP (natural language processing), и что это дает с точки зрения дальнейшего развития рассматриваемого направления? Сейчас обо всем расскажем.

разработка искусственного интеллекта

Общее представление

Начнем с того, что рассматриваемый сегмент, ввиду своей специфики, относится к области пересечения, объединяющей одновременно ИИ, computer science и лингвистику. Целью, стоящей сегодня перед разработчиками, является создание алгоритмов, умеющих обрабатывать и «понимать» человеческую речь в ее обычном виде, что позволяет в дальнейшем использовать доступную опцию различными способами. Массовое распространение интерфейсов голосового управления, а также ботов, усердно трудящихся в различных чатах поддержки, обусловило важность и востребованность NLP — задачи, с которыми сегодня должен справляться искусственный интеллект, существенно разнообразнее, шире и сложнее.

Области применения

Тенденция к увеличению количества приложений, создаваемых в рамках рассматриваемого направления, вполне объяснима. Сегодня подобная функция актуальна:

  • для работы поисковых сервисов;
  • в таргетированном маркетинге;
  • при необходимости автоматического перевода;
  • в целях распознавания речевых команд;
  • в обучении голосовых помощников, и т. д.

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

Сложности адаптации

Стоит сразу сказать, что применение компьютерных систем обработки естественного языка не гарантирует достижение желаемого результата по умолчанию. Качество распознавания обуславливается многими факторами — начиная с принадлежности к определенной лингвистической группе, и заканчивая особенностями произношения, если речь идет о голосовом формате. К числу проблемных моментов, встречающихся на практике, относятся:

  • Раскрытие анафор, то есть смыслового содержания используемых местоимений. «Мы отдали бублики собакам — они зачерствели», и «Мы отдали бублики собакам — они хотели есть» — схожие по построению структуры, в которых одна и та же часть речи имеет разный смысл.
  • Присутствие в формулировках сленга или неологизма, не являющегося опечаткой, и имеющего для носителя вполне конкретный смысл.
  • Использование свободного порядка расположения слов, влияющего на толкование фразы в целом в русскоязычной речи отчасти компенсируемое морфологией и синтаксисом, которые становятся дополнительной нагрузкой для системы.
  • Интерпретация омонимов, относящихся к фонетической категории.

Это лишь часть того, с чем приходится работать программистам, однако в большинстве случаев найти оптимальные решения все же удается.

обучить машину распознавать речь

Готовые решения для всех направлений

Ускорь работу сотрудников склада при помощи мобильной автоматизации. Навсегда устраните ошибки при приёмке, отгрузке, инвентаризации и перемещении товара.

Узнать больше

Мобильность, точность и скорость пересчёта товара в торговом зале и на складе, позволят вам не потерять дни продаж во время проведения инвентаризации и при приёмке товара.

Узнать больше

Обязательная маркировка товаров - это возможность для каждой организации на 100% исключить приёмку на свой склад контрафактного товара и отследить цепочку поставок от производителя.

Узнать больше

Скорость, точность приёмки и отгрузки товаров на складе — краеугольный камень в E-commerce бизнесе. Начни использовать современные, более эффективные мобильные инструменты.

Узнать больше

Повысь точность учета имущества организации, уровень контроля сохранности и перемещения каждой единицы. Мобильный учет снизит вероятность краж и естественных потерь.

Узнать больше

Повысь эффективность деятельности производственного предприятия за счет внедрения мобильной автоматизации для учёта товарно-материальных ценностей.

Узнать больше

Первое в России готовое решение для учёта товара по RFID-меткам на каждом из этапов цепочки поставок.

Узнать больше

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

Узнать больше

Получение сертифицированного статуса партнёра «Клеверенс» позволит вашей компании выйти на новый уровень решения задач на предприятиях ваших клиентов..

Узнать больше

Используй современные мобильные инструменты для проведения инвентаризации товара. Повысь скорость и точность бизнес-процесса.

Узнать больше

Используй современные мобильные инструменты в учете товара и основных средств на вашем предприятии. Полностью откажитесь от учета «на бумаге».

Узнать больше
Показать все решения по автоматизации

Какие задачи позволяет решать машинное обучение NLP

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

Машинный перевод иностранных текстов

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

Анализ и классификация

  • Дифференцирование по бинарному и мультиклассовому критериям, отражение содержательной составляющей и оценка тональности — функционал, способный принести пользу, когда возникает необходимость:
  • Определения релевантности написанного заданным параметрам.
  • Разделения на тематические классы и категории.
  • Подготовки сжатого пересказа или аннотации.
  • Выявления мнений и свойств, зависящих от поставленной задачи.

Программное обучение позволяет распознавать стиль и эмоциональную окраску, а также другие характеристики содержания.

Распознавание и синтез речи

Речевая интерпретация подразумевает преобразование и оцифровку сигнала в информационный код, который может быть отражен в виде текста. Синтезирование, напротив, генерирует звуковую ретрансляцию на основе печатных данных. Подобный функционал используется сегодня голосовыми помощниками, интерактивными меню IVR, а также комплексами управления «Умный дом».

Разработка диалоговых систем

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

Выделение сущностей и фактов

Идентификация ссылок на именованные объекты, принадлежащие одной из заданных категорий, а также установление семантической взаимосвязи между ними, реализуется в решении различных вопросов и успешно применяется на практике такими системами, как NELL и Snowball.

принципы работы компьютера в распознавании речи

Этапы и задачи в подходах к обработке естественного языка

До недавнего времени реализация отдельных целей предусматривала использование традиционных алгоритмов машинного обучения, подразумевающее строгий выбор архитектуры, а также работу с признаками вручную. Развитие нейронных сетей повысило качество результатов, что позволило выделить общие принципы работы с NLP.

Конвейер

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

  1. Сегментация и токенизация. Актуальны в подавляющем большинстве случаев, и предусматривают деление текста на предложения, а тех — на отдельные слова.
  2. Определение контекстно-независимых признаков, характеризующих каждый из токенов, то есть не зависящих от рядом стоящих элементов.
  3. Уточнение значимости и применение фильтра к стоп-словам. Для русского и английского языков характерно наличие множества вспомогательных частиц и артиклей, которые засоряют статистический анализ ввиду своей частоты.
  4. Допуск кореференции. Местоимения, заменяющие названия или имена собственные, могут адекватно интерпретироваться человеком в процессе обычного чтения, однако система, которая рассматривает каждое предложение один раз, не отслеживает их взаимосвязь.
  5. Парсинг зависимостей. Результатом становится формирование древовидной структуры, где токенам присваивается один родитель, и устанавливается тип связи.
  6. Преобразование текстового содержания в векторное представление, позволяющее выделить слова, применяемые в схожем или идентичном контексте.
  7. Формирование модели, соответствующей заданной цели — например, классифицирующей или генерирующей новый текст.

Рассмотренный вариант конвейера — далеко не единственное решение, однако он наглядно представляет специфику подходов, применяемых на практике. Реализуемых концепций, как и выполняемых ими функций, достаточно много — так, например, решения по мобильной автоматизации, предлагаемые компанией «Клеверенс» для организации складского учета и работы с маркированной продукцией, позволяют структурировать и систематизировать рутинные процессы, сокращая связанные с ними издержки.

Глубокое обучение

Накопление достаточного объема тренировочных данных, разработка многоядерных CPU и GPU, а также формирование обновленных моделей и алгоритмов — факторы, обуславливающие популярность применения методики deep learning в последние годы. Репрезентативное демонстрация входных критериев и признаков, в сочетании с оптимизацией весов, повышающей точность предсказываемого результата, обуславливает эффективность подхода. С функциональной точки зрения процесс сводится к автоматическому извлечению оптимальных представлений из входящего потока. Создание идентификаторов вручную зачастую приводит к избыточной специализации или недостаточной полноте, что обуславливает временные издержки, связанные с формированием и валидацией, тогда как глубокое обучение способствует выявлению легко приспосабливаемых признаков.

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

Векторный метод

В случае с классическим NLP система автоматической обработки текстов на естественном языке, примеры которой мы уже рассмотрели ранее, определяет слова в качестве дискретных символов, впоследствии представляемых формами one-hot. При этом возникает проблематика, связанная с отсутствующим определением схожести, что обуславливает необходимость его кодирования непосредственно в структуре векторов. Такое представление помогает обозначить каждое слово как dense vector, имеющий характерное содержание, позволяющее выделить контекстную специфику. Подобная практика считается отправной точкой для многих задач, и определяет эффективность глубокого обучения в рамках маленьких Data set.

Word2Vec

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

GloVe

Механика, ориентированная на захват конкретного значения отдельного word embedding с обозримой структурой за счет поиска глобальных числовых совпадений. Предусматривает использование объемной статистики, сводит к минимуму среднеквадратичные отклонения, и репрезентует векторное пространство с адекватной субструктурой, что способствует отождествления схожих слов и расстояний вектора.

QA-системы

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

Практическая реализация QA подразумевает формирование и оптимизацию и без того мощной архитектуры deep learning. С этой целью создана DNM — Dynamic Memory Network, представляющая собой Сеть динамической памяти, прошедшую обучение при помощи комплекса базовых входных данных. Воспоминания, возникающие у СДП, служат основой для генерации адекватных и логически связанных ответов.

К числу архитектурных компонентов относятся следующие модули:

  • Сегмент, отвечающий за семантическую память. По сути — огромная база знаний, собранная из заранее подготовленных векторов GloVe, на основе которых формируется концепция представлений в вводных предложениях.
  • Элемент обработки, реализованный через рекуррентный блок управления, за счет функционирования которого сеть получает возможность оценить релевантность входящей информации.
  • Вопросный модуль, последовательно обрабатывающий каждое слово, и формирующий через GRU выдачу идентичного по весу векторного решения.
  • Компонент эпизодической памяти, функциональной задачей которого выступает обеспечение сохранности закодированных вложений.
  • Сегмент генерации ответов, завершающий цикл путем выдачи информации, отложившейся в предыдущем модульном блоке. На практике обычно применяется альтернативный рекуррентный блок, обученный классификации ошибок в корректной последовательности, и конвертирующий ее в форму естественного языка.

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

лингвистика и искусственный интеллект

Программное обеспечение

В перечень ПО, применяемого в качестве инструментария, подходящего для совершения ряда операций с естественным языком, включают различные наборы библиотек и фреймворков, а также пакетов данных для символьного и статистического анализа и речевой обработки. Механизмы, используемые в проектах, ориентированных на использование NLP, решают задачи, связанные с дифференциацией предложений и токенов, выявлением речевых частей, классификацией и делением на кластеры, а также последующим исследованием и определением сущности, позволяющей генерировать искомый результат по заданным критериям. Среди популярных вариантов стоит выделить:

  • AlchemyAPI.
  • Distinguo.
  • G.A.T.E.
  • Fonemica.

Конечно, этот список не является исчерпывающим — подобрать оптимальное программное обеспечение, функциональная модель которого предусматривает бесплатное или коммерческое распространение, не составит особого труда.

анализ текста компьютером

Резюме

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


Количество показов: 1613

Статьи по схожей тематике