Инструментарий естественного языка - Введение
Что такое обработка естественного языка (NLP)?
Метод общения, с помощью которого люди могут говорить, читать и писать, - это язык. Другими словами, мы, люди, можем думать, строить планы, принимать решения на своем естественном языке. Здесь большой вопрос в том, могут ли люди общаться на естественном языке с компьютерами / машинами в эпоху искусственного интеллекта, машинного обучения и глубокого обучения? Разработка приложений НЛП - огромная проблема для нас, потому что компьютерам требуются структурированные данные, но, с другой стороны, человеческая речь неструктурирована и часто неоднозначна по своей природе.
Естественный язык - это то подразделение информатики, в частности ИИ, которое позволяет компьютерам / машинам понимать, обрабатывать и манипулировать человеческим языком. Проще говоря, НЛП - это способ машины анализировать, понимать и извлекать значение из человеческих естественных языков, таких как хинди, английский, французский, голландский и т. Д.
Как это работает?
Прежде чем углубляться в работу НЛП, мы должны понять, как люди используют язык. Каждый день мы, люди, используем сотни или тысячи слов, а другие люди интерпретируют их и отвечают соответственно. Это простое общение для людей, не так ли? Но мы знаем, что слова лежат намного глубже, и мы всегда извлекаем контекст из того, что мы говорим и как мы говорим. Вот почему мы можем сказать, что вместо того, чтобы фокусироваться на модуляции голоса, НЛП действительно опирается на контекстный паттерн.
Давайте разберемся с этим на примере -
Man is to woman as king is to what?
We can interpret it easily and answer as follows:
Man relates to king, so woman can relate to queen.
Hence the answer is Queen.
Откуда люди знают, что слово что означает? Ответ на этот вопрос заключается в том, что мы учимся на собственном опыте. Но как машины / компьютеры учатся тому же?
Позвольте нам понять это, выполнив следующие простые шаги -
Во-первых, нам нужно снабдить машины достаточным количеством данных, чтобы машины могли учиться на собственном опыте.
Затем машина будет создавать векторы слов, используя алгоритмы глубокого обучения, из данных, которые мы подавали ранее, а также из окружающих данных.
Затем, выполняя простые алгебраические операции с этими векторами слов, машина сможет давать ответы как люди.
Компоненты НЛП
Следующая диаграмма представляет компоненты обработки естественного языка (NLP) -
Морфологическая обработка
Морфологическая обработка - это первый компонент НЛП. Он включает разбиение фрагментов языкового ввода на наборы маркеров, соответствующих абзацам, предложениям и словам. Например, такое слово, как“everyday” можно разбить на два токена подслова как “every-day”.
Синтаксический анализ
Второй компонент - синтаксический анализ - является одним из наиболее важных компонентов НЛП. Цели этого компонента следующие:
Чтобы проверить, правильно ли составлено предложение.
Разбить его на структуру, показывающую синтаксические отношения между разными словами.
Например, предложения вроде “The school goes to the student” будет отклонен анализатором синтаксиса.
Семантический анализ
Семантический анализ - это третий компонент НЛП, который используется для проверки осмысленности текста. Он включает в себя прорисовку точного значения, или, можно сказать, словарного значения из текста. Например, предложения типа «Это горячее мороженое». будет отброшен семантическим анализатором.
Прагматический анализ
Прагматический анализ - четвертый компонент НЛП. Он включает подгонку реальных объектов или событий, которые существуют в каждом контексте, со ссылками на объекты, полученными предыдущим компонентом, то есть семантическим анализом. Например, предложения вроде“Put the fruits in the basket on the table” может иметь две семантические интерпретации, поэтому прагматический анализатор будет выбирать между этими двумя возможностями.
Примеры приложений НЛП
НЛП, развивающаяся технология, порождает различные формы ИИ, которые мы привыкли видеть в наши дни. Для сегодняшних и завтрашних все более когнитивных приложений использование НЛП для создания бесшовного и интерактивного интерфейса между людьми и машинами будет оставаться главным приоритетом. Ниже приведены некоторые из очень полезных приложений НЛП.
Машинный перевод
Машинный перевод (МП) - одно из важнейших приложений обработки естественного языка. МП - это, по сути, процесс перевода одного исходного языка или текста на другой язык. Система машинного перевода может быть двуязычной или многоязычной.
Борьба со спамом
В связи с огромным увеличением количества нежелательных писем, спам-фильтры стали важными, потому что они являются первой линией защиты от этой проблемы. Рассматривая ложноположительные и ложноотрицательные проблемы как основные проблемы, функциональность НЛП может быть использована для разработки системы фильтрации спама.
Моделирование N-грамм, составление слов и байесовская классификация - это некоторые из существующих моделей НЛП, которые можно использовать для фильтрации спама.
Поиск информации и поиск в Интернете
Большинство поисковых систем, таких как Google, Yahoo, Bing, WolframAlpha и т. Д., Основывают свою технологию машинного перевода (MT) на моделях глубокого обучения NLP. Такие модели глубокого обучения позволяют алгоритмам читать текст на веб-странице, интерпретировать его значение и переводить на другой язык.
Автоматическое суммирование текста
Автоматическое резюмирование текста - это метод, который создает короткое и точное резюме длинных текстовых документов. Следовательно, это помогает нам получать актуальную информацию за меньшее время. В эту цифровую эпоху мы остро нуждаемся в автоматическом резюмировании текста, потому что через Интернет идет поток информации, который не прекратится. НЛП и его функции играют важную роль в разработке автоматического реферирования текста.
Грамматическая коррекция
Исправление орфографии и грамматики - очень полезная функция текстового редактора, такого как Microsoft Word. Для этой цели широко используется обработка естественного языка (NLP).
Вопрос-ответ
Ответы на вопросы, еще одно основное приложение обработки естественного языка (НЛП), фокусируется на создании систем, которые автоматически отвечают на вопрос, отправленный пользователем, на его естественном языке.
Анализ настроений
Анализ тональности входит в число других важных приложений обработки естественного языка (НЛП). Как следует из названия, анализ настроений используется для:
Определите настроения среди нескольких сообщений и
Определите чувство, в котором эмоции не выражены явно.
Компании электронной коммерции, такие как Amazon, ebay и т. Д., Используют анализ настроений, чтобы определить мнение и настроения своих клиентов в Интернете. Это поможет им понять, что их клиенты думают об их продуктах и услугах.
Речевые движки
Речевые механизмы, такие как Siri, Google Voice, Alexa, построены на NLP, поэтому мы можем общаться с ними на нашем естественном языке.
Внедрение НЛП
Чтобы создавать вышеупомянутые приложения, нам необходимо обладать определенным набором навыков с хорошим пониманием языка и инструментами для эффективной обработки языка. Для этого у нас есть различные инструменты с открытым исходным кодом. Некоторые из них имеют открытый исходный код, а другие разрабатываются организациями для создания собственных приложений НЛП. Ниже приведен список некоторых инструментов НЛП -
Набор инструментов для естественного языка (NLTK)
Mallet
GATE
Открытое НЛП
UIMA
Genism
Набор инструментов Стэнфордского университета
Большинство этих инструментов написано на Java.
Набор инструментов для естественного языка (NLTK)
Среди вышеупомянутых инструментов НЛП NLTK имеет очень высокие оценки, когда дело доходит до простоты использования и объяснения концепции. Кривая обучения Python очень быстрая, и NLTK написан на Python, поэтому NLTK также имеет очень хороший учебный комплект. NLTK включает в себя большинство задач, таких как токенизация, выделение корней, лемматизация, пунктуация, количество символов и количество слов. Он очень элегантен и с ним легко работать.