Как зародилось НЛП?

Обработка естественного языка (NLP), без сомнения, - на мой взгляд, - самая известная область науки о данных. За последнее десятилетие он приобрел большую популярность как в промышленности, так и в академических кругах.

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

Обработка естественного языка - если вы новичок в этой области - это в основном любой человеческий язык, такой как английский, арабский, испанский и т. Д. Сложность, стоящая за наделением компьютеров способностью понимать естественные языки, заключается в том, насколько сложными они могут быть.

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

Цель этой статьи - пролить свет на историю НЛП и на то, каковы его подполи.

Как зародилось НЛП?

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

Мы, люди, можем различать их, но компьютер - нет. Более того, нелогично давать компьютеру словарь со всеми возможными предложениями на всех возможных языках!

Итак, что нам делать?

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

Когда мы впервые знакомимся с языком, нас сначала учат части речи этого языка. Например, в английском языке есть 9 основных частей речи, таких как существительные, глаголы, прилагательные, наречия, местоимения, артикли и т. Д. Эти части речи помогают нам понять назначение каждого слова в предложении.

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

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

Короче говоря, эти правила представляют собой набор законов грамматики, из которых складывается предложение. В английском языке предложение может быть образовано путем сочетания предложения глагола с предложением существительного. Например, Она съела яблоко. Здесь «она» - это существительное, а «съела яблоко» - это глагольное предложение.

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

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

Различные подполи НЛП

Обработка текста

Чат-боты - один из хорошо известных примеров НЛП. На ранних этапах НЛП чат-боты были основаны на правилах. Это означало, что ученым нужно было закодировать сотни, а может быть, и тысячи правил фраз, чтобы сопоставить то, что вводит человек, с тем, что должен ответить чат-бот. Пример тому появился в 60-х годах. Это был чат-бот терапевта по имени Элиза.

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

Чем больше данных будет передано модели машинного обучения, тем лучше станет чат-бот.

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

Итак, чат-боты - это то, как компьютеры понимают письменный язык, но что, если на этом языке говорят? Как компьютеры могут превратить звук в слова, а затем понять их значение?

Это второе подполе НЛП, распознавание речи. Опять же, распознавание речи - это вовсе не новая технология. Фактически, это было в центре внимания многих исследователей в течение последнего десятилетия. Точнее, в 1971 году Гарпия была разработана в Университете Карнеги-Меллона. Гарпия была первой компьютерной программой, которая понимала ровно 1000 слов.

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

Синтез речи

Синтез речи во многом противоположен распознаванию речи. Это дает компьютеру возможность издавать звуки или произносить слова.

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

Первая в мире машина для синтеза речи была предложена в 1937 году Bell Labs и работала вручную. Это изменилось с годами. То, как была собрана и скомпонована фонетика, было и остается причиной того, что компьютеры «разговаривают», это звучит как робот.

Эта роботизация стала лучше, но использование современных алгоритмов, новейших виртуальных помощников, таких как Siri, Cortana и Alexa, является доказательством того, как далеко мы продвинулись. Тем не менее, они все еще не кажутся полностью человечными.

Выводы

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

NLP - это общее название, которое охватывает множество подполей и приложений, но мы можем разделить их на три основные категории: обработка текста, распознавание речи и синтез речи.

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

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

Эта статья - первая из серии, которую я планирую написать, которая охватывает различные аспекты НЛП. Начиная с истории, краткое введение в каждую категорию, с чего начать, некоторые приложения и текущий статус исследования.

Итак, следите за обновлениями!