ИСТОРИЯ ИСПОЛЬЗОВАНИЯ НЕЙРОННЫХ СЕТЕЙ ДЛЯ ОБРАБОТКИ ТЕКСТА

Опубликовано в журнале: Научный журнал «Интернаука» № 19(242)
Рубрика журнала: 3. Информационные технологии
DOI статьи: 10.32743/26870142.2022.19.242.339392
Библиографическое описание
Истамкулов Х.С. ИСТОРИЯ ИСПОЛЬЗОВАНИЯ НЕЙРОННЫХ СЕТЕЙ ДЛЯ ОБРАБОТКИ ТЕКСТА // Интернаука: электрон. научн. журн. 2022. № 19(242). URL: https://internauka.org/journal/science/internauka/242 (дата обращения: 04.12.2024). DOI:10.32743/26870142.2022.19.242.339392

ИСТОРИЯ ИСПОЛЬЗОВАНИЯ НЕЙРОННЫХ СЕТЕЙ ДЛЯ ОБРАБОТКИ ТЕКСТА

Истамкулов Хасанчон Саидчонович

PhD, Худжандский государственный университет,

Таджикистан, г. Худжанд

 

HISTORY OF USING NEURAL NETWORKS FOR TEXT PROCESSING

Hasan Istamqulov

PhD, Khujand State University,

Tajikistan, Khujand

 

Как научное направление искусственный интеллект активно развивается с 30-х годов 20 века. В 1952 году Артур Сэмюэл создал первую игру в шашки для компьютера IBM 702. Чуть позже он также добавил в эту программу возможность самообучения. Иными словами, компьютер научился играть в шашки. Таким образом, Артура Сэмюэля можно назвать одним из пионеров в области искусственного интеллекта. Ученые разрабатывали алгоритмы, создавали много исследовательских проектов. И в 1959 году им удалось создать первую нейронную сеть.

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

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

Мозг человека состоит из огромного количества (порядка 10 миллиардов) нейронов, которые соединены между собою связями. Сами нейроны представляют собой особые клетки, способные распространять между собой электрохимические сигналы. Каждый нейрон имеет разветвленную структуру ввода информации (дендрит), ядро ​​и разветвленный выход (аксон). Аксоны клетки соединяются с дендритами других клеток с помощью специальных связей - синапсов. Когда нейрон активируется, электрохимический сигнал отправляется через аксон.. Через синапсы сигнал достигает других нейронов, которые в свою очередь активируются.

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

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

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

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

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

В настоящее время существует два разных подхода к решению этой проблемы: вероятностная языковая модель и [1] алгебраическая векторная модель[1].  Векторная модель немного проще, потому что каждый документ представлен частотным вектором содержащихся в нем слов. Но у всего есть обратная сторона, и у векторной модели она есть: она не позволяет сохранять порядок слов. Для решения этой проблемы была создана языковая модель. Она помогает найти решение двух задач: найти вероятность данной строки слов и найти вероятное слово, которое может появиться в строке слов. Раньше параметры языковой модели оценивались с помощью цепей Маркова.

У цепей Маркова есть очевидные недостатки, они запоминают только небольшое фиксированное количество предыдущих слов. Но не смотря на это, они до сих пор используются и применяются в таких практических задачах как автоматический перевод и синтез речи.

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

На сегодняшний день большинство разработок в области автоматической обработки текстов полностью или частично используют нейронные сети. В частности, получили распространение модели, основанные на распределенных векторах слов, позволяющие представить значение слова такими векторами, над которыми можно выполнять арифметические операции. Например, Томас Миколов, продемонстрировал как на основе таких векторов решается уравнения “король - мужчина + женщина = королева[2]. Такие уравнения могут быть и справедливы и для морфологических аналогий типа “хорошо - хороший + плохой = плохо”.

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

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

Очевидно, что глубинное обучение занимает центральное место в научных и академических разработка. Большинство статей опубликованных в сборниках ведущих лингвистических конференций, так или иначе используют методы основанные на нейронных сетях. В некоторых случаях их применение вполне оправдано, но иногда их использование также вызывает сомнения: утверждается, что использование десятка-двух дополнительных слоев приводит к повышению показателей качества решения задачи порядка десятых или сотых долей процента.  Тем не менее машинное обучение проникает и в разработки, связанные с обработкой речи или текста. В частности, автоматический машинный перевод Google*, Microsoft и Яндекс основан на использовании технологий, основанных на нейронных сетях, почти все службы поиска информации, персональные помощники или чат-боты так или иначе используют нейронные сети. В любой задаче, где есть потребность в классификации текстов, будь то фильтрация спама, выявление мошенничества или кредитоспособности, определение настроения текста или даже склонности автора текста к депрессии, можно использовать нейросетевые технологии.

Более структурированные тексты, например истории болезней, легче обрабатывать и анализировать с помощью нейронных сетей, поскольку связи между словами в них более очевидны. Система IBM Watson, которая известна победой над человеком в Jeopardy, фактически используется как диагностический помощник: она находит похожие по разным параметрам медицинские записи и предлагает пациенту несколько возможных диагнозов.

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

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

*Google (по требованию Роскомнадзора информируем, что иностранное лицо, владеющее информационными ресурсами Google, является нарушителем законодательства Российской Федерации – прим.ред)

 

Список литературы:

  1. Steven Bird, Ewan Klein, Edward Loper. Natural Language Processing with Python. — O'Reilly Media, 2009. — ISBN 0-596-51649-5 [стр: 56].
  2. Tomas Mikolov, Kai Chen, Greg Corrado, and Jeffrey Dean. Efficient Estimation of Word Representations in Vector Space // In Proceedings of Workshop at ICLR, 2013
  3. Pymorphy morphology tool URL: https://nlpub.ru/Pymorphy (дата обращения: 08-12-2018)
  4. Natural Language Processing and Automated Text Categorization/University of Rome
  5. Short text classification in twitter to improve information filtering . // The Ohio State University
  6. Text Classification Using Supervised Machine Learning Algorithms // Kenyatta University Of Agriculture and Technology 2016
  7. Томас Миколов - Нейронные сети для обработки текста https://habr.com/ru/company/meanotek/blog/266961/
  8. Глубинное обучение в обработке и анализе текстов - https://postnauka.ru/longreads/85951