Современные методы обработки естественного языка: нейронные сети_
Прошина Мария Владимировна
магистрант, факультет физико-математических и естественных наук, Российский университет дружбы народов, maryproshina12345@gmail.com
Обработка естественного языка на сегодняшний момент является одним из наиболее приоритетных направлений исследований, поскольку объем данных увеличивается в геометрической прогрессии. Основную массу такой информации составляют именно неструктурированные данные, которые необходимо разметить для дальнейшей работы с ними, а в качестве главных инструментов для решения этой задачи и выступают методы обработки естественного языка.
В настоящее время данная область стремительно развивается: постоянно появляются новые методы, а также совершенствуются уже существующие, в частности, нейросетевые подходы. Объем информации в интернете растет в геометрической прогрессии, поэтому возможность их обработки, в частности, структурирования является первостепенной задачей многих исследователей. Одними из главных способов ее решения являются нейросети, которые уже сегодня демонстрируют свою эффективность и перспективность. Ключевые слова: нейросети, естественный язык, обработка данных, искусственный интеллект, компьютерная лингвистика
Введение
Обработка естественного языка (Natural Language Processing) - направление исследований в области искусственного интеллекта и компьютерной лингвистики, которое изучает проблемы понимания, анализа и синтеза естественного языка (речи и текстов) с помощью компьютера [1].
Обработка естественного языка на сегодняшний момент является одним из наиболее приоритетных направлений исследований, поскольку объем данных увеличивается в геометрической прогрессии. Основную массу такой информации составляют именно неструктурированные данные, которые необходимо разметить для дальнейшей работы с ними, а в качестве главных инструментов для решения этой задачи и выступают методы обработки естественного языка [2].
В настоящее время данная область стремительно развивается: постоянно появляются новые методы, а также совершенствуются уже существующие, в частности, нейросетевые подходы. Можно выделить несколько важных этапов их эволюции: нейронные языковые модели (2001); многозадачное обучение (2008); векторное представление слов (2013); нейронные сети для обработки естественного языка (2013); модель sequence-to-sequence (2014); механизм внимания (2015); нейронные сети с ассоциативной памятью (2015); предварительно обученные языковые модели (2018). Далее каждый из них будет рассмотрен подробнее.
Основная часть
Нейронные языковые модели
Нейронные языковые модели можно назвать первыми шагами к появлению векторных представлений слов, модели sequence-to-sequence, а также предварительно обученных языковых моделей (каждая из них будет рассмотрена ниже подробнее) -
все они так или иначе могут быть сведены к языковому моделированию.
Нейронные языковые сети учатся предсказывать слова или их части за счет контекста, а качестве информации берутся огромные корпуса с миллионами и даже миллиардами параметров [3].
Первоначально многие исследователи относились к нейронным языковым моделям предвзято и не верили в их эффективность, поскольку результаты их работы долгое время было сложно продемонстрировать на практике. Однако появление больших вычислительных мощностей позволило впоследствии решить эту задачу. Особенно высокими оказались результаты применения этих нейронных сетей в медицине.
Генерация связного текста
Благодаря использованию нейронных языковых моделей удается добиться генерации уникальных фрагментов текстов, которые строятся на основе знаний из обучающего набора, а не путем простого копирования уже имеющейся информации.
Тесты с несколькими вариантами ответов
Процент правильных ответов из тех, что были выбраны случайным образом, как правило, составляет не более четверти от всех вопросов. Однако нейронные языковые модели могут на основе изученной информации дать уже 75% верных ответов.
Прогнозирование диагноза
Анализ результатов применения нейронных языковых моделей показал, что они способны находить закономерности в историях болезни пациентов, а также в описании их жалоб о самочувствии и делать осмысленные предположения с использованием этих данных [4]. Вследствие этого были разработаны специальные программы-консультанты, ставящие диагноз пациенту на основе имеющихся у него симптомов. Зачастую работа подобных приложений базируется на вопросах с вариантами ответов. Важно также отметить, что результаты экспериментов доказали, что такие языковые модели способны выявить зависимости, которые не очевидны даже специалистам в данной области [5].
Вопросно-ответные системы
Нейронные языковые модели также могут быть использованы с целью генерации ответа на поставленные вопросы, однако среди ответов, соответствующих действительности, также можно найти абсолютно неверные. Такие неоднозначные результаты говорят о том, что эту модель еще нужно дорабатывать для применения в данной области.
Многозадачное обучение
Если традиционный подход предполагает, что одна сеть должна решать только одну задачу, то многозадачное обучение (Multi-Task Learning, MTL) (совместное обучение) представляет собой нейронную сеть, которая одновременно решает несколько задач [6]. Рассмотрим подробнее два вида многозадачного обучения: жесткий обмен параметрами и мягкий обмен параметрами.
Жесткий обмен параметрами
Жесткий обмен параметрами (Hard parameter sharing, HPS) в многозадачном обучении (MTL) позволяет задачам совместно использовать некоторые параметры модели, таким образом снижая риск переобучения и повышая точность прогнозирования. Упрощенно работа метода жесткого обмена параметрами продемонстрирована на рисунке 1. Обычно он применяется путем разделения общего скрытого слоя между всеми задачами (совместного использования), храня при этом слои для конкретных задач отдельно.
Слои для каждой из задач
Рисунок 1. Жесткий обмен параметрами
Мягкий обмен параметрами
В подходе с мягким обменом параметрами (Soft parameter sharing, SPS) каждая задача имеет свой собственный набор параметров и свою модель. Во время обучения расстояние между параметрами слоев для каждой из задач корректируется таким образом, чтобы уменьшить различия между общими скрытыми слоями.
Схематически принцип действия мягкого обмена параметрами продемонстрирован на рисунке 2.
Ограниченные слои
Рисунок 2. Мягкий обмен параметрами
Векторное представление слов
В настоящее время широко распространены информационные системы, и огромные объемы данных хранятся в виде текста, а векторное представление текста является наиболее важной задачей в области обработки естественного языка (NLP). Его
цель - преобразовать текст различной длины (предложение, абзац, документ) в вектор малой размерности, который используется в качестве входных данных для последующих задач NLP [7].
Основной единицей текста является слово, поэтому в большинстве исследований преобразовывают текст в набор слов, называемый «мешком слов» (Bag Of Words, BOW). В данном подходе подсчитывается число вхождений каждого слова в текст и записывается в один вектор. Этот метод разделяет полную фразу на неупорядоченные слова, вследствие чего теряется первоначальная семантика текста.
Пример метода «мешок слов» представлен на рисунке 3. В нем рассматривается два набора документов (в данном случае каждый из них представлен одним предложением), текст был предварительно обработан: все слова представлены в нижнем регистре, начальной форме, удалены стоп-слова (знаки препинания, предлоги и местоимения; для простоты восприятия в примере запятые и точки не внесены в таблицу). В столбце «ТОКЕНЫ» указан список уникальных слов из обоих документов, который составляет в совокупности словарь. Во 2 и в 3 столбцах отображено число вхождений каждого слова из отдельного документа в словарь (частотность). Таким образом получается вектор для каждого предложения, где каждое отдельное слово находится на одинаковом расстоянии в векторном пространстве (1 - для первого документа и 2 - для второго документа). Далее векторы можно сравнить между собой, например, используя косинусную меру.
документ 1
Выйду ночью в поле с конём. Ночкой тёмной тихо пойдём.
документ 2
Мы пойдем с конем по полю вдвоём. Мы пойдем с конём по полю вдвоём.
токены документ 1 документ 2
ВЫЙТИ 1 0
ночью 1 О
поле 1 2
конь 1 2
ночка 1 0
тёмный 1 О
тихо 1 0
пойти 1 2
вдвоём 0 2
список
стоп-елов
Рисунок 3. Пример метода «мешок слов»
В рассмотренном выше подходе присутствует несколько недостатков: 1) Размер векторов зависит от размера словаря (который может быть огромным). Это приводит к нерациональному использованию пространства и экспоненциально увеличивает сложность вычислений.
2) Полученные векторные представления не являются гибкими (тесно связаны с задействованными корпусами), что делает перенос обучения на модель с использованием другого словаря того же размера, добавление / удаление слов из словаря практически невозможным, поскольку для этого потребуется заново обучить всю модель.
3) В текущих работах исследователей главная цель создания векторных представлений слов состоит в том, чтобы выявить контекстуальное значение слов, чего не может сделать данная модель, в которой между словами, имеющими схожее значение или употребление, нет никакой взаимосвязи.
Интеллектуальный анализ
Интеллектуальный анализ текстов представляет собой механическое выделение информации из всевозможных текстовых данных, таких как книги, научные журналы, клинические записи, новостные статьи, посты и комментарии и так далее. Вследствие сложности понимания закономерностей в получаемых результатах без учета семантики одним из методов обработки естественного языка, который особенно привлек внимание исследователей, стали распределенные представления элементов естественного языка в многомерном векторном пространстве [9]. Такие подходы используют семантические сходства между элементами (например, словами) в векторном пространстве. Один из плодотворных подходов, который исследовал эту идею и развился за пределами традиционного синтаксического или простого вероятностного подхода, был подробно описан в работе Томаса Миколова [10], где слова представляются в многомерных векторных пространствах. В этой статье были представлены две модели - Continuous Bag of Words (CBOW) и Skip-gram.
Входной спой
Скрытый слой
Выходной слой
Рисунок 4. Пример работы CBOW
В отличие от простой модели «мешка слов», модель CBOW последовательно рассматривает наборы слов из текста и берет другие слова из строки в зависимости от их положения относительно основного (целевого) слова (например, рассматривается по 3 слова от центрального с каждой стороны). Эта модель может предсказать текущее слово (вероятность его появления) на основе контекста (его окружения). На рисунке 4 представлен пример работы CBOW (для простоты удаление стоп-слов опушено):
1) Берется последовательность слов «Яблоки бывают зеленые и красные», где центральное слово «зеленые». Это целевое слово, которое должно быть предсказано моделью.
2) Контекстом слова считаются окружающие его слова одинаковой длины с каждой стороны (например, по 2 слова от центра слева («Яблоки», «бывают») и справа («и», «красные») в данном примере).
Вторая модель Skip-gram предсказывает контекст слова на основе других слов в том же предложении. Она прямо противоположна CBOW. На рисунке 5 модель Skip-gram из данного слова «зеленые» пытается угадать его контекст («Яблоки», «бывают», «и», «красные»).
Входной спой
Скрытый слой
Выходной слой
зеленые
Рисунок 5. Пример работы Skip-gram
Многие исследователи предложили различные методы для интеллектуальной обработки естественного языка по его контексту с применением векторизации (их подавляющее большинство основано на анализе отдельных слов). Так, среди подобных методов можно выделить следующие работы:
1) Word2Vec (в котором реализованы CBOW, Skip-gram; данные методы были описаны подробнее выше) - это набор связанных методов (алгоритмов), которые используются для расчета векторных представлений слов на естественном языке;
2) TF-IDF [11] - это оценка важности термина в документе относительно других документов: в том случае, если слово встречается часто в каком-либо документе, но
при этом редко встречается в других, оно имеет большую значимость для документа, в котором часто употребляется;
3) GloVe [12] изучает векторы или слова и выявляет то, как часто они появляются вместе в больших текстовых корпусах;
4) fastText [13] представляет собой библиотеку, которая содержит готовые векторные представления слов, а также классификатор. Эту модель можно назвать некой модификацией Word2Vec, поскольку в основу также заложены Continuous Bag of Words (CBOW) и Skip-gram (создатель Word2Vec, Томас Миколов, является разработчиком и этого метода). Кроме того, важной особенностью fastText является возможность построения не только n-грамм слов, но и n-грамм символов.
Нейронные сети для обработки естественного языка
Среди наиболее широко применяемых нейронных сетей для обработки естественного языка можно выделить три основных: 1) рекуррентные нейронные сети; 2) рекурсивные нейронные сети; 3) свёрточные нейронные сети. Рассмотрим каждую из них подробнее.
Рекуррентные нейронные сети
Рекуррентные нейронные сети (Recurrent Neural Networks, RNNs - это сети, в основе работы которых лежит принцип сохранения информации их текущего слоя и её переподачи на следующем шаге в самих себя [14]. Иногда такие сети называют сетями с памятью, где выполняется одна и та же задача для каждого элемента и учитываются предыдущие вычисления.
На рисунке 6 представлена свернутая и развернутая схема рекуррентной нейронной сети, где xo, Х1, Х2, ..., xt - входные данные (входной слой), ho, h1, h2, ..., ht - выходные данные (выходной слой), А - скрытый слой. A принимает входные данные на каждом шаге, выдавая выходные данные h и передавая информацию себе для следующего входящего входного шага. RNN могут принимать один или несколько входных векторов и создавать один или несколько выходных векторов, и на выходные данные влияют не только веса, применяемые к входным данным, но и "скрытый" вектор состояния, представляющий контекст, основанный на предыдущих вводах/выводах.
Рисунок 6. Свернутая и развернутая схема рекуррентной нейронной сети [2]
Рекуррентные нейронные сети производят оценку частоты встречаемости предложений в тексте, а также способны генерировать совершенно новый текст. Эта модель может обрабатывать информацию последовательно и учитывает не только текущий, но и предыдущий шаг благодаря внутренней памяти.
Важным преимуществом рекуррентных нейронных сетей является то, что они могут варьировать длину входящих и выходящих последовательностей, то есть готовы принимать на вход объекты нефиксированного размера, что в значительной мере повышает гибкость модели. Исходя из этого их архитектуру можно классифицировать следующим образом: 1) один к одному; 2) один ко многим; 3) многие к одному; 4) многие ко многим.
На рисунке 7 представлено схематическое изображение каждого типа.
Рисунок 7. Возможные виды архитектуры рекуррентных нейронных сетей, где входной слой отмечен красным цветом, скрытый - зеленым, а выходной - синим
Рекурсивные нейронные сети
RNN и CNN (Свёрточные нейронные сети, Convolutional Neural Networks; будут рассмотрены ниже) рассматривают естественный язык как последовательность. Лингвистически вдохновленная идея рассматривать предложения как деревья, а не как последовательность, порождает рекурсивные нейронные сети, пример которых продемонстрирован на рисунке 8.
not very good...
a b с
Рисунок 8. Пример рекурсивных нейронных сетей
Если в случае рекуррентной нейронной сети язык рассматривается как последовательность слов, которая обрабатывается справа налево или слева направо, то в рекурсивных нейронных сетях фразы и предложения представлены в виде иерархической последовательности, которая строится снизу вверх.
Деревья представляют собой иерархическую структуру, в которой каждый узел имеет 0 или 2 потомка (в случае бинарного дерева), любой же внутренний узел вклю-
чает в себя фразу, состоящую из слов-потомков, а «листьями» дерева являются отдельные слова.
Свёрточные нейронные сети
Свёрточные нейронные сети (Convolutional Neural Networks, CNNs) - нейронные сети, которые обрабатывают данные, имеющие топологию сетки (изображение или матрицы из векторных представлений слов (или символов), полученных применением Word2Vec, Glove или другими методами векторизации) и присваивают важность (например, определенные веса) различным частям этих данных. Данные сети были созданы по принципу работы зрительной коры головного мозга: они фокусируются на небольшой области и выявляют в ней значимые особенности. Механизм действия этой модели заключается в чередовании свёрточных и субдискретизирующих слоев (слоев подвыборки, уменьшающей размерность). Свёрточные нейронные сети могут принимать данные только фиксированного размера, позволяют распараллеливать вычисления, а также используют для обучения традиционный метод обратного распространения ошибки.
матрица обрабатывается слоями свертки
функция активации
карта признаков обрабатывается слоем субдискретизации
[с функцией уплотнения;. уменьшается ее размерность
свертка
Матрица предложения 7x5
Высота смежных строк Ь=2,3.4 (по 2 фильтра для каждой высоты), всего 6 фильтров
1 скрытый полносвязный и выходной спои
€ одномерных
векторов объединяются е общий вектор признаков
| 2 класса"]
комбинация слоев свертки и субдискретизации позволяет извлекать из текста на/более значимые 1ч-граммы
Рисунок 9. Архитектура свёрточных нейронных сетей [1]
На рисунке 9 представлена иллюстрация архитектуры CNN для классификации предложений, где рассматривается три варианта размера высоты фильтра: 2, 3 и 4 (каждый вид имеет 2 фильтра). Фильтры выполняют свертки в матрице предложений и генерируют карты признаков (переменной длины); для каждой карты выполняется объединение с помощью функции уплотнения, т.е. записывается наибольшее число из каждой карты признаков. Таким образом, одномерный вектор признаков генерируется из всех шести карт, и эти 6 признаков объединяются, образуя вектор признаков для предпоследнего слоя. Последний слой получает этот вектор в качестве входных данных и использует его для классификации предложения; здесь предполагается двоичная классификация, поэтому изображены два возможных выходных состояния.
Модель sequence-to-sequence
Sequence-to-sequence (seq2seq) представляет собой глубокую нейронную сеть, в основе которой лежат две рекуррентные нейронные сети (модель кодировщик-деко-дировщик): кодер (encoder) и декодер (decoder). Первая отвечает за обработку входных данных, а вторая - за генерацию выходных данных. Кодер получает последовательность и генерирует внутреннее состояние, а декодер получает вектор состояния и генерирует прогнозируемое значение [15] (пытается предсказать следующую последовательность состояний из предыдущей последовательности). Обобщенная схема работы данной модели представлена на рисунке 10.
Вывод
Ввод
Рисунок 10. Обобщенная модель кодировщик-декодировщик
В традиционной модели вход кодируется в вектор состояния фиксированного размера, но в его использовании есть два недостатка:
• Вектор состояния не может полностью представлять информацию о всей последовательности;
• Информация, содержащаяся в контенте, введенном первым, разбавляется/ перезаписывается данными, введенными позже, и чем длиннее последовательность ввода, тем это сильнее проявляется.
Таким образом, во входной последовательности содержится недостаточно информации в начале декодирования, поэтому точность декодирования снижается.
Механизм внимания
Проблема: Фиксированное векторное представление входящих данных (например, предложений) неоптимально: сжатие предложения для кодера является довольно трудоемкой задачей; может затруднить работу нейронной сети с длинными
предложениями, особенно с теми, которые длиннее предложений в учебном корпусе; для декодера различная информация может быть актуальна на разных этапах. Однако кодировщик вынужден помещать всю информацию в один вектор, поэтому велика вероятность, что какие-то данные будут упущены.
В стандартной модели кодировщик-декодировщик (seq2seq) все исходное предложение сжимается в один вектор, а это приводит к проблемам, описанным выше. Чтобы компенсировать ограничения базовой модели кодера-декодера, была предложена модель внимания (модель Attention). Её типичным примером является то, что во время машинного перевода сгенерированные слова не только фиксируются на глобальном векторе семантического кодирования (фиксированном векторе состояния), но и учитывают "диапазон внимания", указывающий, что при выводе слов далее необходимо сосредоточиться на том, какие части последовательности находятся в входной информации, а затем генерировать следующий вывод в заданной области, то есть модель выделяет часть из входных данных и проводит их более детальную обработку.
По сравнению с предыдущей моделью кодера-декодера, самое большое отличие модели Attention заключается в том, что она больше не требует, чтобы кодер кодировал всю входную информацию в вектор фиксированной длины [16]. Напротив, в это время кодеру необходимо закодировать входные данные в последовательность векторов, и при декодировании каждый шаг будет выборочно выделять подмножество из векторной последовательности для дальнейшей обработки. Механизм внимания помогает просматривать все скрытые состояния из последовательности кодера для прогнозирования, в отличие от обычной модели кодиров-щик-декодировщик.
Наглядно разница между механизмом внимания и моделью кодировщик-декодив-щик продемонстрирована на рисунке 11 (si, S2, ..., st... - состояния декодера; hi, h2, ..., hT... - состояния кодера). В простой архитектуре кодера-декодера декодер должен начинать делать прогнозы только с учетом конечного результата шага кодера, который содержит сжатую информацию (вектор фиксированной длины). С другой стороны, архитектура, основанная на внимании, отслеживает каждое скрытое состояние каждого узла кодера на каждом шаге, а затем делает прогнозы, решив, какое из них более информативно. Нейронная сеть внимания будет выводить значения внимания для декодера на каждом шаге и принимать выходные данные с предыдущего шага декодера.
Декодер
Кодер
Декодер
+ + + Механизм внимания
Внимание
Кодер
Рисунок 11. Модель кодировщик-декодировщик (вед2вед) и механизм внимания
Нейронные сети с ассоциативной памятью
Ассоциативная память представляет собой системы хранения и поиска шаблонов, которые создаются по аналогии одноименной концепцией в психологии. Как показывают ключевые результаты исследований в области обучения и памяти, каждый стимул (объект, форма, слово) хранится в мозге в виде памяти и связан с соответствующими стимулами. Когда человек испытывает стимулы, которые вызывают ассоциативную память, он может воспроизвести воспоминания, связанные с этими входными стимулами.
В информатике ассоциативная память встречается в виде двух форм [17]: автоассоциативная память и гетероассоциативная память.
В общем виде работа двух форм ассоциативной памяти может быть описана следующим образом: автоассоциативная память: извлекает ранее сохраненный шаблон, наиболее похожий на текущий шаблон; гетероассоциативная память: полученный шаблон, как правило, отличается от входного шаблона не только по содержанию, но также по типу и формату.
На рисунке 12 отображен общий принцип работы двух форм нейронных сетей с ассоциативной памятью. В первом случае в память поступает буква «А» в специальном стиле, и в самой памяти уже ищется наиболее близкий вариант: в конкретном случае буква «А» в обычном стиле. Во втором случае в ассоциативной памяти на слово «Москва» семантически наиболее близким оказалось слово «Город».
Автоассоциатиеная память
А память А
Гетероассоциативная память
Москва память Город
Рисунок 12. Принцип работы двух форм нейронных сетей с ассоциативной памятью. Автоассоциативная и гетероассоциативная память
Предварительно обученные языковые модели
Глубокие нейронные сети обычно имеют большое количество параметров, что повышает вероятность переобучения небольших обучающих данных и практически исключает возможность их обобщения на практике. По этой причине первые нейронные модели для многих задач обработки естественного языка были относительно неглубокими и обычно включали в себя не более трёх нейронных слоёв.
Значительным импульсом к решению вышеупомянутых трудностей (для задач обработки естественного языка) послужило применение нейронных сетей к языковым моделям, что позволило получать универсальные языковые представления и избежать обучения новой модели с нуля [18].
Работа с огромным массивом текстовых данных, помогает узнать вероятность того, как последовательность слов будет идти друг за другом, и какие особенности необходимы для понимания этой зависимости.
Принцип создания предварительно обученных языковых моделей можно разбить на два основных этапа:
I. В языковую модель загружается огромный корпус неразмеченных/немаркированных данных (например, Википедия, Quora) и ожидается, что она изучит присущие данному набору взаимосвязи на уровне слов и предложений между различными контекстами и предметами. Как только модель обучена, это означает, что модель изу-
чила структуру языка, т.е. язык был смоделирован в некотором векторном пространстве.
II. Модель используют для решения задачи обработки естественного языка, где ей передается другой меньший набор данных, ориентированный для решения конкретной задачи (определенной предметной области), который используется для точной настройки и создания окончательной модели, способной выполнять вышеупомянутую задачу.
Огромный текстовый корпус (например, Зикипедия)
Набор данных, предназначенный для выполнения конкретной задачи
Тестовый набор данных
Языковая модель Точная настройка модели Окончательная модель
Рисунок 13. Принцип создания предварительно обученных языковых моделей
Как только появляется предварительно подготовленная языковая модель, ее можно использовать для любых последующих задач, таких как классификация текста, генерация текста и классификация тональностей.
Общая схема создания предварительно обученных языковых моделей представлена на рисунке 13.
Однако предварительно обученные языковые модели все еще сохраняют два существенных недостатка:
I. Если первоначально хорошая модель была плохо обучена, тогда она обладает большим неиспользованным потенциалом;
II. Огромные размеры предварительно обученных языковых моделей являются большим препятствием на пути к будущим исследованиям и развертыванию этих моделей.
Заключение
Вместе с ростом тестовых данных развивается и область обработки естественного языка: появляются новые методы, совершенствуются и дополняются существующие алгоритмы, а также с течением времени в полной мере становится возможной демонстрация их эффективности (например, нейросетевые языковые модели).
Важное место в области обработки естественного языка занимают нейросетевые подходы, которые позволяют автоматизировать многие сферы жизни общества. Так, повсеместно используются виртуальные ассистенты, начиная с банковских систем и заканчивая использованием сайта «Госуслуги». К тому же сегодня можно выполнить машинный перевод текста практически с любого естественного языка, а «Яндекс» запустил автоматический перевод-озвучку любого видео на английском языке - все это является результатом внедрения нейросетей.
Объем информации в интернете растет в геометрической прогрессии, поэтому возможность их обработки, в частности, структурирования является первостепенной задачей многих исследователей. Одними из главных способов ее решения являются нейросети, которые уже сегодня демонстрируют свою эффективность и перспективность.
Литература
1. R. Arumugam, R. Shanmugamani, Hands-On Natural Language Processing with
Python, Packt Publishing, 2018.
2. Fethi Fkih Complex Terminology Extraction Model from Unstructured Web Text based Linguistic and Statistical Knowledge // IJIRR: International Journal of Information Retrieval Research. - 2013. - Vol. 2(3). - Pp. 1-18.
3. Brown, T. B. (2020). Language Models are Few-Shot Learner / T. B. Brown [et al.] // In Proceedings of the 2020 Conference on Neural Information Processing Systems (Neu-rlPS). - 2020. - 75 p.
4. Tarasov, D. Language models for unsupervised acquisition of medical knowledge from natural language texts: application for diagnosis prediction / D. Tarasov [et al.] // Proceedings of the International Conference "Dialogue 2019". - 2019. - 11 p.
5. Razzaki, S. A comparative study of artificial intelligence and human doctors for the purpose of triage and diagnosis. - 2018. URL: https://arxiv.org/pdf/1806.10698.pdf.
6. Yu Zhang and Qiang Yang An Overview of Multi-Task Learning // National Science Review. - 2018. - 5(1). - Pp. 30-43.
7. Wu, Y. Phrase2Vec: Phrase embedding based on parsing / Y. Wu [et al.] // Information Sciences. - Vol. 517. - 2020. - Pp. 100-127.
8. Gefen, D. A Guide to Text Analysis with Latent Semantic Analysis in R with Annotated Code: Studying Online Reviews and the Stack Exchange Community // Communications of the Association for Information Systems. - 2017. - Vol. 41. - 48 p.
9. V.S. Anoop1 and S. Asharaf, Distributional Semantic Phrase Clustering and Conceptualization Using Probabilistic Knowledgebase, Springer, 2018, pp. 526-534.
10. Mikoliv, T. Linguistic Regularities in Continuous Space Word Representations // In Proceedings of the 2013 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies. - 2013. - Pp. 746-751.
11. Sudarma, M. Implementation of TF-IDF Algorithm to detect Human Eye Factors Affecting the Health Service System // INTENSIF. - 2020. - Vol.4. - Pp. 123-130.
12. Pennington, J. GloVe: Global Vectors for Word Representation // Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP). -2014. - Pp. 1532-1543.
13. Бородаенко, Д. Погудина А. Сравнение методов векторизации текстов с сохранением семантической близости // Электронный Научный Журнал «Дневник Науки». - 2020. - № 5. - 26 стр.
14. Cho, K. Learning Phrase Representations using RNN Encoder-Decoder for Statistical
Machine Translation. - 2014. URL: https://arxiv.org/pdf/1406.1078.pdf.
15. Neubig, G. Neural Machine Translation and Sequence-to-sequence Models: A Tutorial. - 2017. URL: https://arxiv.org/pdf/1703.01619.pdf. (Дата обращения: 20.01.2022).
16. Богомолов, Ю. Обзор моделей нейронных сетей для обработки естественного языка / Ю. Богомолов // Научно-образовательный журнал для студентов и преподавателей «StudNet». - 2020. - №4. - С. 203-217.
17. Shoba Rani, S. Review on Neural Networks Associative Memory Models / S. Shoba Rani, Dr.D. Nagendra Rao, Dr. Srinivasan Vatsal // International Journal of Pure and Applied Mathematics. - 2018. - Vol. 120. - No. 6. - Pp. 3143-3154.
18. Qiu, Xipeng. Pre-trained Models for Natural Language Processing: A Survey / Xipeng Qiu [et al.] // Science China Technological Sciences. - 2021. - 63(10). - Pp. 18721897.
Modern methods of natural language processing: neural networks Proshina MV.
Peoples' Friendship University of Russia
Natural language processing is currently one of the highest priority research areas as the amount of data is growing exponentially. The bulk of such information is precisely unstructured data that needs to be marked up for further work with them, and natural language processing methods are the main tools for solving this problem. Currently, this area is developing rapidly: new methods are constantly appearing, and existing ones, in particular, neural network approaches, are being improved. The volume of information on the Internet is growing exponentially, so the possibility of processing it, in particular, structuring it, is the primary task of many researchers. One of the main ways to solve it are neural networks, which are already demonstrating their effectiveness and prospects today. Keywords: neural networks, natural language, data processing, artificial intelligence, computational linguistics References
1. R. Arumugam, R. Shanmugamani, Hands-On Natural Language Processing with Python, Packt Publishing, 2018.
2. Fethi Fkih Complex Terminology Extraction Model from Unstructured Web Text based Linguistic and Statistical Knowledge //
IJIRR: International Journal of Information Retrieval Research. - 2013. - Vol. 2(3). - P.p. 1-18.
3. Brown, T. B. (2020). Language Models are Few-Shot Learner / T. B. Brown [et al.] // In Proceedings of the 2020 Conference on
Neural Information Processing Systems (NeurIPS). - 2020. - 75 p.
4. Tarasov, D. Language models for unsupervised acquisition of medical knowledge from natural language texts: application for
diagnosis / D. Tarasov [et al.] // Proceedings of the International Conference "Dialogue 2019". - 2019. - 11 p.
5. Razzaki, S. A comparative study of artificial intelligence and human doctors for the purpose of triage and diagnosis. - 2018.
URL: https://arxiv.org/pdf/1806.10698.pdf.
6. Yu Zhang and Qiang Yang An Overview of Multi-Task Learning // National Science Review. - 2018. - 5(1). - P.p. 30-43.
7. Wu, Y. Phrase2Vec: Phrase embedding based on parsing / Y. Wu [et al.] // Information Sciences. - Vol. 517. - 2020. - Pp. 100-
127.
8. Gefen, D. A Guide to Text Analysis with Latent Semantic Analysis in R with Annotated Code: Studying Online Reviews and the
Stack Exchange Community // Communications of the Association for Information Systems. - 2017. - Vol. 41 .-48p.
9.V.S. Anoop1 and S. Asharaf, Distributional Semantic Phrase Clustering and Conceptualization Using Probabilistic Knowledgebase, Springer, 2018, pp. 526-534.
10. Mikoliv, T. Linguistic Regularities in Continuous Space Word Representations // In Proceedings of the 2013 Conference of the
North American Chapter of the Association for Computational Linguistics: Human Language Technologies. - 2013. - Pp. 746751.
11. Sudarma, M. Implementation of TF-IDF Algorithm to detect Human Eye Factors Affecting the Health Service System // INTENSIF. - 2020. - Vol.4. - P.p. 123-130.
12. Pennington, J. GloVe: Global Vectors for Word Representation // Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP). - 2014. - Pp. 1532-1543.
13. Borodaenko, D. Pogudina A. Comparison of text vectorization methods with preservation of semantic proximity // Electronic Scientific Journal "Diary of Science". - 2020. - No. 5. - 26 pages.
14. Cho, K. Learning Phrase Representations using RNN Encoder-Decoder for Statistical machine translation. - 2014. URL: https://arxiv.org/pdf/1406.1078.pdf.
15. Neubig, G. Neural Machine Translation and Sequence-to-sequence Models: A Tutorial. - 2017. URL: https://arxiv.org/pdf/1703.01619.pdf. (Accessed: 01/20/2022).
16. Bogomolov, Yu. Overview of neural network models for natural language processing / Yu. Bogomolov // Scientific and educational journal for students and teachers "StudNet". - 2020. - No. 4. - S. 203-217.
17. Shoba Rani, S. Review on Neural Networks Associative Memory Models / S. Shoba Rani, Dr.D. Nagendra Rao, Dr. Srinivasan Vatsal // International Journal of Pure and Applied Mathematics. - 2018. - Vol. 120.-No. 6.-Pp. 3143-3154.
18. Qiu, Xipeng. Pre-trained Models for Natural Language Processing: A Survey / Xipeng Qiu [et al.] // Science China Technological
Sciences. - 2021. - 63(10). - P.p. 1872-1897.