American union of nlp что это

Обновлено: 07.07.2024

Нейролингвистическое программирование (НЛП) является областью знаний, возникшей изначально в двух отраслях науки: Computer Science и Психологии. В Computer Science NLP означает Natural Language Processing, в психологии — нейролингвистическое программирование. Это не совсем одно и тоже, но как минимум близко. Близко, как единство противоположностей. Обладая одинаковым названием и задачами по изучению структур языка, работ посвящённых исследованию их связи и возможности перекрёстного использования техник крайне мало. Психологическое НЛП, по моему скромному мнению, продвинулось в изучении структур языка существенно дальше, чем стемминг и лемматизация, которые применяются в большинстве задач компьютерного NLP. В этой статье я освящу основные наработки психологического НЛП для компьютерного NLP, намечу пути, как с помощью психологического НЛП создавать State of the Art нейросети NLP. Для сокращения широты методов NLP ограничим эту область до области, где для целей NLP применяются нейросети.

Психологическое НЛП было представлено Ричардом Бендлером и Джоном Гриндером. Самой известной книгой по НЛП является книга «Структура магии». Я конечно имею в виду психологическое НЛП, не удивляйтесь и не пугайтесь. Показательно, что названием первого тома этой книги является: «Книга о языке и психотерапии». Если мы опустим слово «психотерапия», мы обнаруживаем много сведений о языке, вполне применимых для техники.

Нейронная сеть это упрощённая мыслительная модель, по крайней мере мы надеемся на это. Нечто общее между ними безусловно есть, как минимум слово «нейро». В то же время, психологическое НЛП тоже является не полноценным психоанализом. Серьёзные психологи обзывают НЛП «психология для чайников» — кому не дано читать Зигмунда Фрейда, читают Ричарда Бендлера и Джона Гриндера.


применение «упрощённой психологии» к «упрощённой модели мозга» заслуживает обсуждения

Я буду освещать перенос методов из психологического НЛП в техническое: сейчас это востребовано, мне поставят лайки, кто-нибудь напишет комменты, девушки будут узнавать меня «это популярный технический блоггер!». Однако, перенос технических разработок НЛП в область психологии возможен и, для целей развития общества, ИМХО, более важен. Собственно этим примерно занимаются те, кто исследует Big Data: получая данные о поведении масс, они регулярно формируют психологические и социологические модели. К сожалению, редко кто может осуществить перевод наработок на язык психологов, социологов, популяризовать результаты в их среде.

Базовые пресупозиции НЛП для нейронной сети

Сначала немного абстракций. Методы будут в нижних разделах.

Одной из основ психологического НЛП является понятие базовых пресупозиций: аксиом на базе которых формируется данная область (почти как в геометрии). С точки зрения computer science, термин «пресупозиция» может занять достойное место в Эмбединге, в начале вашей неросети. Если бы у меня было больше времени, я непременно бы провёл исследование, не является ли слово «пресупозиция» камнем преткновения в текстовом корпусе, стоит ли он там во главе угла.


Могут ли базовые пресупозиции НЛП применяться к Нейронной сети?

Ниже я привожу базовые пресупозиции психологического НЛП и расшифровываю их значения для нейросети. Специалисты по computer science прочитав могут понять, с чем приходится иметь дело и как пропустить это через свой keras.layers.Embedding. Трактовка для нейросети субъективна и не претендует на полноту.

Пресупозиция НЛП Трактовка для нейросети
Карта — не территория Феномен переобучения постоянно подтверждает это
Любое поведение мотивировано позитивным намерением; для любого поведения существует контекст, в котором оно ценно. Нейросеть ценна в контексте, в котором она создаётся. Внутри этого контекста она показывает лучший результат.
Позитивная ценность человека абсолютна, а вот ценность и пригодность внутренних и/или внешних поведений может быть подвергнута сомнению. Ценность нейросети для самой себя также абсолютна. А вот в продакшине её ценность подвергается сомнению постоянно.
Способность изменять процесс восприятия реальности часто полезнее изменения содержания воспринимаемой реальности. Привнесение новых фичей даёт результат лучше, чем усложнение сети. Это часто подтверждается на соревнованиях Kaggle, но, однако, не всегда: CNN может давать результат при сокращении признаков.
Все различения, касающиеся окружающей среды и собственного поведения, на которые способны человеческие существа, можно и полезно представить в терминах визуального, аудиального, кинестетического, обонятельного и вкусового восприятия. В нейросеть можно подать только текст, фото (видео) или закодированные фичи (аудио кодирует информацию). В общем, умельцы как не пытаются загрузить в сеть что-то «оттуда», у них не получается…
Все ресурсы, нужные людям для изменения, у них уже есть. Для повышения качества работы нейросети можно придумать сколь угодно мудрёную комбинацию слоёв (вспомним BERT). Если железо это потянет…
Обратная связь вместо неудачи — все результаты и поведения являются достижениями, позволяют они достигнуть желаемого результата в данном контексте или нет. Пресупозиция выражается в обучении с подкреплением: у неё нет эмоций, любую неудачу сеть воспринимает как опыт.
Смысл коммуникации в ответе, который вы получаете. Сеть создаётся чтобы получить ответ: от объекта исследований или от мироздания.

Вот мы проектируем нейронную сеть. Практикуем диалог со вселенной:
— у нас неудача: сеть работает, но плохо. – ответ вселенной:
— «смысл коммуникации в ответе, который вы получаете.». Т.е. задача в таком виде не решается, нужно что-то менять. – ещё вопрос:
— что именно менять? – ответ вселенной:
— «Способность изменять процесс восприятия реальности часто полезнее изменения содержания воспринимаемой реальности». Т.е. меняйте фичи…

Подходы к обработке текста в НЛП

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


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

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

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

Нейронка которая бы повышала / понижала / смещала уровни абстракции текста стала бы революцией! В продакшине эта нейронка могла бы дополнить имеющиеся диалоговые модели: современные чат-боты не умеют работать в выбранном контексте, подстраиваться под терменологию человека. Кто-то под словом «счастье» понимает, что это когда много любви, кто-то, когда много еды, а программист понимает, что счастье — это когда вокруг компьютеры и все пентиумы. Как чат-бот может определить истинное значение слова «счастье» для собеседника?

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

2. Нейрологические уровни (Чарлз Дилтс)
Описание >>
Краткое описание: все понятия языка разделяются на 7 уровней. Каждый следующий логический уровень — от миссии к окружению — должен соответствовать предыдущему. Список уровней и картинки есть по ссылке.

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

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

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

3. Метапрограммы
Описание >>
Краткое описание: метапрограммы — основные фильтры восприятия человека. Программами их назвали психологи, не программисты. Человек не мыслит «вообще»: он концентрируется на чём-то, выбирает «фильтр» через который он воспринимает это что-то, далее он отрабатывает по алгоритму ту информацию, которую он получил через фильтр и производит некоторый вывод и управляющие воздействие. В НЛП выделяется 7-10 основных фильтров восприятия, метапрограмм. Список метапрограмм различный для разных культур, частей социума, может изменяться во времени.

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

Метапрограмма Сеть определяет
Активный-Рефлексивный Выбор как лучше поступать: активно или рефлексивно
ВО-ВНЕ времени Тут сложно
Сортировка Сортировка неструктурированной информации по неясным параметрам
Мотивы Что делать?
Ориентация во времени Будущее или прошлое?
Предпочитаемая модальность Выбор признаков
Стремление-избегание Делаем или уходим
Размер разбивки Умная кластеризация
Референция Навязывать правила или играть по правилам
Способы мышления Выбор метапрограммы
Фокус сравнения Выбор фичей для сравнения

Как видим, построить каждую из таких сетей это задача для института. Для каждой метапрограммы будет сетка масштаба ResNet50, обученная на ImageNet. Эту сеть делала корпорация несколько лет. И это не полный список метапрограмм для лишь одной культуры! Но эффект может быть поразителен: глядишь, собрав 20-30 таких сетей в ансамбль, получим что-то действительно умное.

4. Раскрутки
Описание >>
Краткое описание: раскрутки это техника, в основе которой лежит игра с фильтрами восприятия. Меняя фильтры восприятия собеседника мы выходим на эмоциональный план, получив доступ к нелогическим планам сознания и интересным психологическим эффектам.

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

5. Двойная и тройная спираль
Описание >>
Краткое описание: не смотря на то что тройная спираль это техника, за неё стоит чёткая речевая конструкция — вложенность логических постановок выделенная тоном даёт доступ к эмоциональным и нелогическим планам человека.

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

Перспектива разработок сетей по моделям психологического НЛП

Интерес к разработкам масштаба, изложенного в предыдущем разделе, может быть либо у крупных игроков, либо у энтузиастов-любителей. Для Армии, усилить мозги робота Фёдора за счёт нейросетей созданных по моделям НЛП, может быть весьма привлекательным. Также есть перспектива разработки моделей, усиливающих BERT и XLNet – работа с метамоделью и логическими уровнями могли бы помочь создать крутейших чат-ботов, способных болтать на любые темы с кем угодно.

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

aunlp.org

AUNLP ® - Learn NLP Online

The American Union of Neuro-Linguistic Programming - AUNLP We are dedicated to the training & promotion of the world’s top NLP Practitioners and Trainers.. AUNLP ® Welcome to the official website of the American Union of NLP The American Union is dedicated.

Дата последней проверки:

17 Августа 2021

Наиболее популярные страницы домена:

(To become a member and be added to this list, please click here.) This directory contains the listings of all of our currently-practicing graduates and

Part II Describe how you would use Rapport techniques in a professional setting (Therapy, sales, etc.) and then how you would use them in a social setting (One paragraph for each). In a professional.

The American Union of NLP is dedicated to the training and promotion of the world's top NLP Practitioners and Trainers.

Что такое NLP?

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

    Первая и самая исторически важная задача – это машинный перевод. Ей занимаются очень давно, и есть огромный прогресс. Но задача получения полностью автоматического перевода высокого качества (FAHQMT) так и остается нерешенной. Это в каком-то смысле мотор NLP, одна из самых больших задач, которой можно заниматься.

Первый и один из самых важных с практической точки зрения способов применения — классификация писем на спам и хам (не спам).

Другой классический вариант — многоклассовая классификация новостей по категориям (рубрикация) — внешняя политика, спорт, шапито и т. п. Или, допустим, вам приходят письма, и вы хотите отделить заказы из интернет-магазина от авиабилетов и броней отелей.

Третий классический вариант применения задачи текстовой классификации — сентиментный анализ. Например, классификация отзывов на положительные, отрицательные и нейтральные.


Примерами других часто выделяемых отношений являются отношения купли/продажи (Purchase and Sale), владения (Ownership), факт рождения с атрибутами — датой, местом и т. д. (Birth) и некоторые другие.

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

Почему решать задачи NLP сложно?

Формулировки задач не очень сложные, однако сами задачи вовсе не являются простыми, потому что мы работаем с естественным языком. Явления полисемии (многозначные слова имеют общий исходный смысл) и омонимии (разные по смыслу слова произносятся и пишутся одинаково) характерны для любого естественного языка. И если носитель русского хорошо понимает, что в теплом приеме мало общего с боевым приемом, с одной стороны, и теплым пивом, с другой, автоматической системе приходится долго этому учиться. Почему «Press space bar to continue» лучше перевести скучным «Для продолжения нажмите пробел», чем «Бар космической прессы продолжит работу».

  • Полисемия: остановка (процесс или здание), стол (организация или объект), дятел (птица или человек).
  • Омонимия: ключ, лук, замок, печь.

Что в итоге

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

Что такое НЛП и работает ли оно

О нейролингвистическом программировании (НЛП) говорят, о нём пишут книги и статьи. Многочисленные коучи предлагают свои услуги, обещая, что с помощью этого подхода вы достигнете небывалых высот в карьере и личной жизни. Но есть и альтернативное мнение, что НЛП — псевдонаучная концепция, используемая для вытягивания денег из доверчивых людей. Разбираемся, что же из этого правда.

В Telegram-канале «Лайфхакер» только лучшие тексты о технологиях, отношениях, спорте, кино и многом другом. Подписывайтесь!

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

Обучение эмбеддингов

Как эмбеддинги обучаются? Мы пытаемся решить задачу восстановления слова по контексту (или наоборот, восстановления контекста по слову). В простейшем случае мы получаем на вход индекс в словаре предыдущего слова (булев вектор размерности словаря) и пытаемся определить индекс в словаре нашего слова. Делается это с помощью сетки с предельно простой архитектурой: два полносвязных слоя. Сначала идет полносвязный слой из булева вектора размерности словаря в скрытый слой размерности эмбеддинга (т.е. просто умножение булева вектора на матрицу нужной размерности). А потом наоборот, полносвязный слой с softmax из скрытого слоя размерности эмбеддинга в вектор размерности словаря. Благодаря функции активации softmax, мы получаем распределение вероятностей нашего слова и можем выбрать самый вероятный вариант.


Эмбеддингом i-го слова будет просто i-я строка в матрице перехода W.

В используемых на практике моделях архитектура сложнее, но ненамного. Главное отличие в том, что мы используем не один вектор из контекста для определения нашего слова, а несколько (например, все в окне размера 3). Несколько более популярным вариантом является ситуация, когда мы пытаемся предсказать не слово по контексту, а наоборот контекст по слову. Такой подход называется Skip-gram.

Давайте приведем пример применения задачи, которая решается во время обучения эмбеддингов (в варианте CBOW — предсказания слова по контексту). Например, пусть контекст токена состоит из 2 предыдущих слов. Если мы обучались на корпусе текстов про современную русскую литературу и контекст состоит из слов “поэт Марина”, то, скорее всего, самым вероятным следующим словом будет слово “Цветаева”.

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

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

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

Похожие соображения используются и при предобучении для современных архитектур, упомянутых выше — ELMo, ULMFit, BERT. Они тоже используют при обучении неразмеченные данные, и поэтому обучаются на максимально большом доступном корпусе (хотя сами архитектуры, конечно, сложнее, чем у классических эмбеддингов).

Pipeline NLP

Этот способ работы с признаками, который более-менее одинаков для всех задач.

Когда речь идет о языке, основная единица, с которой мы работаем, это слово. Или более формально «токен». Мы используем этот термин, потому что не очень понятно, что такое 2128506 — это слово или нет? Ответ не очевиден. Токен обычно отделен от других токенов пробелами или знаками препинания. И как можно понять из сложностей, которые мы описали выше, очень важен контекст каждого токена. Есть разные подходы, но в 95% случаев таким контекстом, который рассматривается при работе модели, выступает предложение, включающее исходный токен.

Многие задачи вообще решаются на уровне предложения. Например, машинный перевод. Чаще всего, мы просто переводим одно предложение и никак не используем контекст более широкого уровня. Есть задачи, где это не так, например, диалоговые системы. Тут важно помнить, о чем систему спрашивали раньше, чтобы она могла ответить на вопросы. Тем не менее, предложение — тоже основная единица, с которой мы работаем.

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

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

  • эмбеддинги
  • символьные признаки
  • дополнительные признаки, специальные для конкретной задачи или языка

Один из самых часто использующихся признаков — часть речи или POS-тег (part of speech). Такие признаки могут быть важны для решения многих задач, например задачи синтаксического парсинга. Для языков со сложной морфологией, типа русского языка, также важны морфологические признаки: например, в каком падеже стоит существительное, какой род у прилагательного. Из этого можно сделать разные выводы о структуре предложения. Также, морфология нужна для лемматизации (приведения слов к начальным формам), с помощью которой мы можем сократить размерность признакового пространства, и поэтому морфологический анализ активно используется для большинства задач NLP.

Когда мы решаем задачу, где важно взаимодействие между различными объектами (например, в задаче relation extraction или при создании вопросно-ответной системы), нам нужно многое знать про структуру предложения. Для этого нужен синтаксический разбор. В школе все делали разбор предложения на подлежащее, сказуемое, дополнение и др. Синтаксический разбор – это что-то в этом духе, но сложнее.

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

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

Как НЛП должно работать, по мнению его создателей

Сторонники НЛП верят Любимов А. «Мастерство коммуникации» , что оно формирует:

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

Главным способом достижения этих целей последователи НЛП считают Чимаров С. Ю. «Нейролингвистическое программирование: история и инструментарий» умение правильно воспринимать и использовать поступающие в мозг сведения.

Считается, что каждый человек имеет предпочтительный метод обработки информации: визуальный (зрение), аудиальный (слух) или кинестетический (язык тела). Чтобы достичь успеха, нужно стать суперкоммуникатором, то есть научиться чередовать их все. Сделать же это можно, копируя поведение суперкоммуникаторов, абстрагируясь и научившись видеть ситуацию с противоположной стороны. С этим связаны понятия «метапрограммы», то есть фильтры информации, и «категоризация» — структурирование больших объёмов данных.

Особое место в НЛП уделяется невербальной коммуникации: образам, интонации, жестам и мимике. Сторонники нейролингвистического программирования считают Любимов А. «Мастерство коммуникации» , что на неё приходится 93% человеческого общения, при этом больше половины отводится на язык тела, а слова составляют только 7%.

Другой важный компонент НЛП — это убеждение о том, что подсознание побеждает сознание. Этим сторонники концепции объясняют необходимость работы над собой на «примитивном уровне» бессознательного. Проще говоря, они верят, что если вы скопируете Чимаров С. Ю. «Нейролингвистическое программирование: история и инструментарий» привычки, жесты, осанку и манеры успешного человека, то остальное подтянется само собой.

Немного теории

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

Например, значимую роль в НЛП играют пресуппозиции. Это установки в форме афоризма, не всегда связанные с реальностью. Часто они основаны на мировоззрении и научных взглядах Коржибски, Бейтсона и Сатир. Известным примером пресуппозиции Сеймор Дж., О’Коннор Дж. «Введение в нейролингвистическое программирование. Новейшая психология личного мастерства» НЛП является фраза Коржибски «Карта не территория, слово не предмет». То есть слово «собака» — это всё то, что вы знаете и думаете о собаках, а не само животное.

Также популярными у сторонников нейролингвистического программирования являются убеждения Сеймор Дж., О’Коннор Дж. «Введение в нейролингвистическое программирование. Новейшая психология личного мастерства» о том, что:

  • тело и сознание взаимосвязаны;
  • причиной любого действия является позитивное намерение;
  • нет поражений, есть опыт.

Часто в связи с НЛП упоминается модель TOTE (test — operation — test — exit). Она предполагает Корзенко Н. И., Нужаева М. Н. «Мотивация и нейролингвистическое программирование» , что человек для достижения цели повторяет рутинные операции (действие и сверка с образцом).

Ещё сторонники НЛП используют Сеймор Дж., О’Коннор Дж. «Введение в нейролингвистическое программирование. Новейшая психология личного мастерства» гипноз и самогипноз, а также верят в комплексную латерализацию мозга — жёсткое различие функций полушарий и невозможность их замещения. Такой взгляд не соответствует представлениям современной науки, так как доказано Жмуров В. А. «Большая энциклопедия по психиатрии» , что при необходимости (в случае травмы или заболевания) различные его области способны брать на себя функции других.

Техники НЛП

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

  • Создание якоря — стимула, провоцирующего нужную реакцию или поведение. В качестве якоря используются вкусовые, цветовые, обонятельные ассоциации, которые срабатывают как условный рефлекс и направляют поведение человека в нужную сторону.
  • Использование репрезентативных систем — воображения и чувственного опыта.
  • Ассоциация и диссоциация — соотнесение себя с кем‑либо и независимый взгляд на себя со стороны.
  • Моделирование — поиск ответа на вопрос, как успешные люди достигают поставленных целей, основа НЛП.
  • Следование и ведение — копирование жестов, поз.
  • Притягательное будущее (репрезентация) — представление чего‑либо настолько реалистично, что оно воплощается в действительность.
  • Фрейминг и рефрейминг — установка чётких границ, помогающих достичь желаемого, и взгляд на себя с другой стороны («Я слишком ленив. Зато не делаю лишних ошибок»).
  • Осознание экологической роли — изучение возможных последствий деятельности человека, установление причинно‑следственных связей.
  • Стратегия Уолта Диснея — применение трёх ролей в командной работе для достижения результата: мечтатель придумывает различные варианты решения проблемы, в том числе нереалистичные, критик оценивает их ценность и находит слабые места, реалист составляет конкретные шаги.
  • Использование метамоделей — трёх уровней осмысления опыта: вычёркивания, генерализации (широких универсальных формулировок), искажения (игнорирования части информации).
  • Перцептивные позиции — разные точки зрения: от первого лица, от лица другого человека, от лица «мухи на стене» или «внутреннего мудреца».

Как решают задачи NLP

В отличие от обработки изображений, по NLP до сих пор можно встретить статьи, где описываются решения, использующие не нейросетки, а классические алгоритмы типа SVM или Xgboost, и показывающие результаты, не слишком сильно уступающие state-of-the-art решениям.

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

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

NLP. Основы. Техники. Саморазвитие. Часть 1

Привет! Меня зовут Иван Смуров, и я возглавляю группу исследований в области NLP в компании ABBYY. О том, чем занимается наша группа, можно почитать здесь. Недавно я читал лекцию про Natural Language Processing (NLP) в Школе глубокого обучения – это кружок при Физтех-школе прикладной математики и информатики МФТИ для старшеклассников, интересующихся программированием и математикой. Возможно, тезисы моей лекции кому-то пригодятся, поэтому поделюсь ими с Хабром.

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


Почему на самом деле НЛП не работает

Научная критика

Некоторые психотерапевты используют НЛП для лечения страхов, фобий, беспокойства, низкой самооценки, стресса, посттравматических синдромов, алкогольной и наркотической зависимостей, а также других психологических проблем. Результаты у такой терапии неоднозначны Neuro‑Linguistic Programming Therapy. Psychology Today. . НЛП не является строго научной методикой Kandola A. What is NLP and what is it used for? Medical News Today , как, например, когнитивно‑поведенческая терапия, и опытов, подтверждающих, что оно работает, практически нет Neuro‑Linguistic Programming Therapy. Psychology Today .

В 2012 году британские психиатры опубликовали результаты исследования эффективности практик НЛП. Они были в целом положительными, но специалисты пришли к выводу Neurolinguistic programming: a systematic review of the effects on health outcomes. British Journal of General Practice , что влияние нейролингвистического программирования на психологическое здоровье недостаточно изучено.

Чуть более оптимистичные для сторонников НЛП результаты получили Holander J., Malinowski O. The Effectiveness of NLP: Interrupted Time Series Analysis of Single Subject — Data for One Session of NLP Coaching. Journal of Experiential Psychotherapy голландские психологи в 2016 году. После однократного сеанса нейролингвистического программирования 64% пациентов с несерьёзными психологическими нарушениями сообщили об улучшении своего душевного состояния. В эксперименте участвовали 25 человек. Тем не менее, учёные из Нидерландов рекомендовали дальнейшее изучение методики НЛП.

Гораздо больше учёных выступают с критикой нейролингвистического программирования. Ещё в 2004 году профессор Университета Джорджа Мэйсона Дэниэл Дракман опубликовал исследование, проведённое по заказу армии США. В нём он заключил Druckman D. Be All That You Can Be: Enhancing Human Performance. Journal of Applied Social Psychology , что методы НЛП не работают.

В 2010 году польский психолог и автор научных книг Томаш Витковски отобрал Witkowski T. Thirty‑Five Years of Research on Neuro‑Linguistic Programming. NLP Research Data Base. State of the Art or Pseudoscientific Decoration? Polish Psychological Bulletin из 315 статей о нейролингвистическом программировании 63, опубликованные в журналах из рейтинга международного научного индексирования (ISI), и проанализировал выводы из них. Только в 18,2% исследований подтверждается эффективность НЛП. 27,3% опубликовали неопределённые результаты. Большая же часть (54,5%) опровергают концепцию.

Скептики указывают Roderique‑Davies G. Neuro‑linguistic programming: Cargo cult psychology? Journal of Applied Research in Higher Education , что последователи НЛП используют устаревшие представления об устройстве мозга, допускают фактологические ошибки, применяют псевдонаучную терминологию. За почти полвека существования нейролингвистического программирования ни одного серьёзного исследования, подтверждающего его эффективность, не появилось Kandola A. What is NLP and what is it used for? Medical News Today .

Специалист по философии, автор книг по социологии, восточным психотехникам, преподаватель, переводчик, исследователь.

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

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

НЛП и секты

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

В целом НЛП — продукт своего времени. Сравнение с нью‑эйджем не случайно: нейролингвистическое программирование появилось в одну эпоху с религиями нового века. Исследователь сект и культов Джозеф Хант назвал Hunt J.S. Alternative Religions: A Sociological Introduction. Ashgate. 2003. НЛП альтернативой саентологии. Тот же Бендлер, персонаж абсолютно в духе той эпохи, был наркоманом и проходил Psychotherapist Not Guilty in Prostitute’s Murder. Los Angeles Times подозреваемым в деле об убийстве.

Что такое НЛП

Нейролингвистическое программирование — подход Любимов А. «Мастерство коммуникации» к общению, самосовершенствованию и психотерапии. В более широком понимании это вера в то, что мы можем трансформировать свои и чужие убеждения, менять поведение, а также лечить психологические травмы с помощью специальных техник и упражнений.

В основе концепции НЛП лежит идея Neuro‑Linguistic Programming Therapy. Psychology Today. , что существует связь между неврологическими процессами, языком и паттернами поведения. Три этих компонента и отражены в термине:

  • «нейро» — нервная система и мозг;
  • «лингвистическое» — язык и речь;
  • «программирование» — паттерны (шаблоны) поведения.

Из названия видно, что НЛП заимствует элементы различных наук: психологии, лингвистики, программирования, кибернетики. Также большое влияние на него оказали Чимаров С. Ю. «Нейролингвистическое программирование: история и инструментарий» философские концепции конструктивизма и структурализма. Упрощённо их можно описать так: человек не пассивный наблюдатель, а творец этого мира, и изучать его нужно как сложный механизм.

Основным инструментом НЛП является моделирование Любимов А. «Мастерство коммуникации» — копирование образа жизни успешных людей, которых вы считаете примером для себя, вплоть до жестов, походки, одежды и голоса. Условно говоря, если вы хотите зарабатывать как Илон Маск, вы должны вести себя как Илон Маск, одеваться как Илон Маск, разговаривать, курить траву и писать в Twitter как Илон Маск.

Кто, когда и зачем придумал НЛП

НЛП появилось в США в начале 70‑х годов. Его создателями стали Чимаров С. Ю. «Нейролингвистическое программирование: история и инструментарий» студент‑психолог Ричард Бендлер и профессор лингвистики Джон Гриндер из Калифорнийского университета.

Бендлер увлекался компьютерами и программированием. Обучаясь на математическом факультете, он заинтересовался записями лекций американских психотерапевтов Фрица Перлза и Вирджинии Сатир. Перлз в 40‑е годы отошёл от теории психоанализа и создал собственный метод гештальт‑терапии. Сатир была одним из основателей Института ментальных исследований в Пало‑Альто. В 1972 году она познакомилась с Бендлером и Гриндером и стала сотрудничать Чимаров С. Ю. «Нейролингвистическое программирование: история и инструментарий» с ними.

Также большое влияние на концепцию НЛП оказали взгляды Милтона Эриксона, Грегори Бейтсона и Альфреда Коржибски. Эриксон исследовал терапевтическое воздействие гипноза. Его речевые гипнотические модели вошли в НЛП под названием «модели Милтона». Бейтсон, британо‑американский антрополог, занимался изучением природы познания и человека. Его образ мышления стал одним из эталонов для создателей НЛП. Коржибски — лингвист, основатель общей семантики, науки о значении слов. Он первым употребил термин «нейролингвистический». Его утверждение «Карта ещё не территория» является Чимаров С. Ю. «Нейролингвистическое программирование: история и инструментарий» одним из главных положений НЛП.

Но вернёмся к Бендлеру. Он, увлёкшись психотерапией, стал копировать поведение Перлза и Сатир и ощутил, что может оказывать воздействие на людей: убеждать их в своей правоте, находить общий язык. Бендлер открыл свою школу, и его деятельностью заинтересовался профессор лингвистики в Калифорнийском университете Гриндер. Вместе они стали создавать концепцию НЛП. Свои наработки Бендлер и Гриндер изложили Roderique‑Davies G. Neuro‑linguistic programming: Cargo cult psychology? Journal of Applied Research in Higher Education в двух частях книги The Structure of Magic (1975).

Эффект применения НЛП его создатели назвали Сеймор Дж., О’Коннор Дж. «Введение в нейролингвистическое программирование» терапевтической магией. Достаточно быстро концепция и основанные на ней тренинги стали приносить им большие деньги.

В начале 80‑х годов Бендлер и Гриндер повздорили, и их пути разошлись. Они продолжили развивать концепцию, но каждый по‑своему.

Словоформенные эмбеддинги

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

Давайте теперь попытаемся дать строгое определение эмбеддинга. Эмбеддинг – это отображение из дискретного вектора категориальных признаков в непрерывный вектор с заранее заданной размерностью.

Каноничный пример эмбеддинга – это эмбеддинг слова (словоформенный эмбеддинг).

Что обычно выступает в роли дискретного вектора признаков? Булев вектор, соответствующий всевозможным значениям какой-то категории (например, все возможные части речи или все возможные слова из какого-то ограниченного словаря).

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

Почему мы хотим отображать наши дискретные вектора признаков в непрерывные заданной размерности? Потому что вектора размерностью 100 тысяч не очень удобно использовать для вычислений, а вот вектора целых чисел размерности 100, 200 или, например, 300, — намного удобнее.

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

Зачем нужны эмбеддинги?

Как уже было упомянуто, для использования эмбеддингов есть 2 основные причины.

  • Во-первых, мы уменьшаем размерность пространства признаков, потому что с непрерывными векторами размерностью несколько сотен работать намного удобнее, чем с признаками-булевыми векторами размерностью 100 тысяч. Уменьшение размерности признакового пространства – это очень важно: оно сказывается на быстродействии, это удобнее для обучения, и поэтому алгоритмы обучаются лучше.
  • Во-вторых, учет близости элементов в исходном пространстве. Слова похожи друг на друга по-разному. И разные координаты эмбеддингов способны ловить эту схожесть. Приведу простой грубый и набивший всем оскомину пример. Эмбеддинг вполне способен уловить, что король отличается от королевы примерно так же, как мужчина от женщины. Или наоборот, король отличается от мужчины, как королева от женщины. Точно так же схожи связи разных стран со своими столицами. Хорошо обученная модель на достаточно большом корпусе способна понять, что Москва отличается от России тем же, чем Вашингтон от США.

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

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

Контекстно-зависимые признаки

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

Поэтому сейчас все контекстно-зависимые признаки вычисляются на уровне предложения стандартным образом: с помощью двухсторонних рекуррентных нейросетей LSTM или GRU. Чтобы получить контекстно-зависимые признаки токена из контекстно-независимых, контекстно-независимые признаки всех токенов предложения подаются в Bidirectional RNN (одно- или несколько- слойный). Выход Bidirectional RNN в i-ый момент времени и является контекстно-зависимым признаком i-того токена, который содержит информацию как о предыдущих токенах (т.к. эта информация содержится в i-м значении прямого RNN), так и о последующих (т.к. эта информация содержится в соответствующем значении обратного RNN).

Дальше для каждой отдельной задачи мы делаем что-то свое, но первые несколько слоев — вплоть до Bidirectional RNN можно использовать для практически любых задач.

Такой способ получения признаков и называется пайплайном NLP.


Стоит отметить, что в последние 2 года исследователи активно пытаются усовершенствовать пайплайн NLP — как с точки зрения быстродействия (например, transformer — архитектура, основанная на self-attention, не содержит в себе RNN и поэтому способна быстрее обучаться и применяться), так и с точки зрения используемых признаков (сейчас активно используют признаки на основе предобученных языковых моделей, например ELMo, или используют первые слои предобученной языковой модели и дообучают их на имеющемся для задачи корпусе — ULMFit, BERT).

Читайте также: