Обработка естественного языка (НЛП) - это раздел искусственного интеллекта (ИИ), который фокусируется на компьютерах, использующих речь и текст таким образом, чтобы их понимали люди. Эта область компьютерных наук опирается на компьютерную лингвистику, обычно основанную на статистических и математических методах, которые моделируют использование человеческого языка.

НЛП играет все более заметную роль в вычислительной технике — и в повседневной жизни людей. Умные помощники, такие как Siri от Apple, Alexa от Amazon и Cortana от Microsoft, являются примерами систем, использующих NLP.

Кроме того, различные другие инструменты полагаются на обработку естественного языка. Среди них: навигационные системы в автомобилях; системы преобразования речи в текст, такие как Otter и Rev; чат-боты; и системы распознавания голоса, используемые для поддержки клиентов. Фактически, НЛП появляется в быстро расширяющейся вселенной приложений, инструментов, систем и технологий.

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

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

Смотрите также: Ведущие компании по обработке естественного языка

Обработка естественного языка: Краткая история
Идея о том, что машины понимают человеческую речь, восходит к ранним научно-фантастическим романам. Однако область обработки естественного языка начала формироваться в 1950-х годах, после того как пионер вычислительной техники Алан Тьюринг опубликовал статью под названием “Вычислительная техника и интеллект”. Он ввел тест Тьюринга, который предоставил базовый способ оценить способности компьютера к естественному языку.

В течение последующего десятилетия исследователи экспериментировали с компьютерами, переводящими романы и другие документы с разговорных языков, хотя процесс был чрезвычайно медленным и подверженным ошибкам. В 1960-х годах профессор Массачусетского технологического института Джозеф Вайценбаум разработал ELIZA, которая удивительно хорошо имитировала человеческую речь. В течение следующей четверти века эта область продолжала развиваться. По мере того как в 1990-х годах вычислительные системы становились все более мощными, исследователи начали добиваться заметных успехов, используя методы статистического моделирования.

Программное обеспечение для диктовки и языкового перевода начало развиваться в 1990-х годах. Однако ранние системы требовали обучения, они были медленными, громоздкими в использовании и склонными к ошибкам. Только после внедрения контролируемого и неконтролируемого машинного обучения в начале 2000-х годов, а затем внедрения нейронных сетей примерно в 2010 году, эта область начала значительно развиваться.

Благодаря этим разработкам системы глубокого обучения смогли усваивать огромные объемы текста и других данных и обрабатывать их с использованием гораздо более продвинутых методов языкового моделирования. Полученные в результате алгоритмы стали гораздо более точными и утилитарными.

Смотрите также: Лучшее программное обеспечение для искусственного интеллекта 

Как работает Обработка Естественного Языка?
Ранние системы НЛП для выполнения своей работы полагались на жестко закодированные правила, поиск по словарю и статистические методы. Они часто поддерживали базовые модели дерева решений. В конечном счете, машинное обучение автоматизировало задачи, одновременно улучшая результаты.

Современные фреймворки обработки естественного языка используют гораздо более продвинутые и точные методы языкового моделирования. Большинство из этих методов полагаются на сверточные нейронные сети (CNN) для изучения языковых паттернов и разработки вероятностных результатов.

Например, метод, называемый векторами слов, применяет сложные математические модели для взвешивания и соотнесения слов, фраз и конструкций. Другой метод, называемый распознаванием текстовых последствий (RTE), классифицирует отношения слов и предложений через призму последствий, противоречий или нейтральности. Например, посылка “у собаки есть лапы” подразумевает, что “у собак есть ноги”, но противоречит “у собак есть крылья”, оставаясь нейтральной по отношению к “все собаки счастливы”.

Ключевой частью НЛП является встраивание слов. Это относится к установлению числовых весов для слов в определенном контексте. Этот процесс необходим, потому что многие слова и фразы могут означать разные вещи в разных значениях или контекстах (ходить в клуб, принадлежать к клубу или качать клюшку). Слова также могут произноситься одинаково, но означать разные вещи (через, бросил или ведьма, которая). Также необходимо понимать идиоматические фразы, которые не имеют буквального смысла, такие как “Ты - зеница моего ока” или “это не режет горчицу”.

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

Также часто бывает необходимо усовершенствовать системы обработки естественного языка для конкретных задач, таких как чат-бот или умный динамик. Но даже после того, как это произойдет, система обработки естественного языка не всегда может работать так, как указано. Даже лучшие НЛП допускают ошибки. Они могут столкнуться с проблемами, когда люди неправильно пишут или произносят слова, и иногда они неправильно понимают намерение и неправильно переводят фразы. В некоторых случаях эти ошибки могут быть вопиющими или даже катастрофическими.

Сегодня известные модели естественного языка доступны в рамках лицензионных моделей. К ним относятся OpenAI codex, LaMDA от Google, IBM Watson и инструменты разработки программного обеспечения, такие как CodeWhisperer и CoPilot. Кроме того, некоторые организации создают свои собственные проприетарные модели.