Posted inОсвіта та поради

Що таке обробка природної мови?

Natural_language_processing_expl-min

Що таке обробка природної мови?

Обробка природної мови (Natural Language Processing, NLP) — це набір методів, які допомагають комп’ютерній системі розуміти людську мову.

NLP є підрозділом штучного інтелекту. Це одне з найскладніших завдань ШІ, не вирішене повною мірою досі.

Коли з’явився NLP ?

Коріння природного опрацювання мови сягає 1950-х років, коли відомий англійський вчений Алан Тьюринг опублікував статтю "Обчислювальні машини і розум", запропонувавши так званий "Тест Тьюринга". Одним із його критеріїв є здатність машини автоматично інтерпретувати та генерувати людську мову.

7 січня 1954 року вчені Джорджтаунського університету продемонстрували можливості машинного перекладу. Інженери змогли перекласти понад 60 речень з російської мови на англійську в повністю автоматичному режимі. Ця подія позитивно вплинула на розвиток машинного перекладу і увійшла в історію як Джорджтаунський експеримент.

1966 року американський інформатик німецького походження Джозеф Вейценбаум у стінах Массачусетського технологічного інституту розробив перший у світі чат-бот "Елізу". Програма пародіювала діалог із психотерапевтом, використовуючи техніку активного слухання.

Що таке обробка природної мови?

За великим рахунком, система перефразувала повідомлення користувача, щоб створити видимість розуміння сказаного. Однак, насправді, програма не вникала в суть діалогу. Коли вона не могла знайти відповідь, то зазвичай відповідала "I see" ("Зрозуміло") і переводила бесіду в інше русло.

Того ж року Консультативний комітет з автоматичного опрацювання мов (ALPAC) випустив звіт і дійшов висновку, що десятирічні дослідження не виправдали очікувань. У результаті фінансування машинного перекладу різко скоротилося.

Протягом наступних десятиліть проривів у сфері NLP не спостерігалося, аж до виникнення перших алгоритмів машинного навчання в 1980 роках. Приблизно в цей же час з’явилися системи статистичного машинного перекладу, завдяки чому дослідження відновилися.

Бум у царині опрацювання мови припав на 2010 роки, коли стали розвиватися алгоритми глибокого навчання. У цей період з’явилося безліч розробок, якими ми користуємося і сьогодні, як-от чат-боти, автокоректори, голосові помічники та інші. Найчастіше для вирішення цих завдань стали використовувати рекурентні нейронні мережі.

Чергова революція в NLP-системах сталася 2019 року, коли OpenAI презентувала мовну модель Generative Pre-Trained Transformer 2, або GPT-2. На відміну від наявних генераторів, ця нейромережа вміла створювати довгі рядки пов’язаного тексту, відповідати на запитання, складати вірші і складати нові рецепти.

Через рік OpenAI показала нову версію GPT-3, а великі технологічні компанії одна за одною стали демонструвати власні розробки в галузі великих мовних моделей.

Як працюють NLP-системи?

Для відповіді на це запитання необхідно звернути увагу на те, як природну мову використовуємо ми, люди.

Коли ми чуємо або читаємо якусь фразу, у нашій підсвідомості відбувається одночасно кілька процесів:

  • сприйняття;
  • розуміння сенсу;
  • реагування.

Сприйняття — це процес переведення сенсорного сигналу в символьний вигляд. Наприклад, ми можемо почути конкретне слово або побачити його написання різними шрифтами. Будь-який із цих видів отримання інформації необхідно перетворити в єдиний: написані буквами слова.

Розуміння сенсу — це найскладніше завдання, з яким не завжди справляються навіть люди зі своїм природним інтелектом. Через незнання контексту та неправильну інтерпретацію фрази можуть виникати різноманітні конфузи, а інколи й серйозні конфлікти.

Наприклад, 1956 року в розпал холодної війни між СРСР і США глава радянської держави Микита Хрущов виголосив промову, в якій пролунала фраза "Ми вас поховаємо". Американці сприйняли сказане занадто буквально і розцінили це як загрозу ядерного нападу. Хоча насправді, Хрущов всього лише мав на увазі, що соціалізм переживе капіталізм, а сама фраза є інтерпретацією тези Карла Маркса.

Інцидент швидко переріс у міжнародний скандал, за що радянським дипломатам і генсеку компартії довелося вибачитися.

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

Реакція — результат прийняття рішення. Це доволі просте завдання, що вимагає формування набору можливих відповідей на підставі сенсу сприйнятої фрази, контексту і, можливо, якихось внутрішніх переживань.

Алгоритми обробки природної мови працюють за точно таким самим принципом.

Сприйняття — це процес перекладу вхідної інформації у зрозумілий для машини набір символів. Якщо це текст у чат-бота, то такий вхідний набір буде безпосереднім. Якщо це аудіофайл або рукописний текст, то для початку його потрібно перевести в зручний вигляд. З цим успішно справляються сучасні нейронні мережі.

Завдання реагування на текст також успішно вирішили шляхом зважування альтернатив і порівнювання результатів один з одним. Для чат-бота це може бути текстова відповідь з його бази знань, а голосового помічника — вчинення дії з якимось об’єктом розумного будинку, наприклад, увімкнення лампочки.

З розумінням же справи йдуть дещо по-іншому і це питання слід розглянути окремо.

Як ШІ-системи розуміють мову?

На сьогодні поширені такі види аналізу під час вирішення завдань розуміння мови:

  • статистичний;
  • формально-граматичний;
  • нейромережевий.

Статистичний широко застосовується в сервісах машинного перекладу, автоматичних рецензентах і деяких чат-ботах. Суть методу полягає у "згодовуванні" моделі величезної кількості масиву текстів, у яких встановлено статистичні закономірності. Потім такі моделі використовуються для перекладів текстів або генерування нових, іноді і з розумінням контексту.

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

Для розвинених мов на кшталт російської або англійської точний і детальний опис мови в математичних термінах є вкрай складною проблемою. Тому формально-граматичний підхід частіше використовують для синтаксичного аналізу штучних мов, з яких спеціально видаляють неоднозначності під час проєктування.

У нейромережевому підході для розпізнавання смислу вхідної фрази і генерації реакції ШІ-системи використовують нейронні мережі глибокого навчання. Вони навчаються на парах стимул-реакція, де стимулом є фраза природною мовою, а реакцією — відповідь АІ-системи нею ж або будь-які дії АІ-системи.

Це дуже перспективний підхід, але він має всі негативні якості нейронних мереж.

Для чого використовуються NLP-системи?

Системи обробки природної мови використовуються для вирішення безлічі завдань, починаючи від створення чат-ботів і закінчуючи аналізом величезних текстових документів.

До основних завдань NLP належать:

  • аналіз тексту;
  • розпізнавання мови;
  • генерація тексту;
  • трансформація тексту в мову.

Аналіз тексту — це інтелектуальне опрацювання великих обсягів інформації, метою якого є виявлення закономірностей і подібностей. Він охоплює вилучення даних, пошук, аналіз висловлювань, системи запитань-відповідей і оцінку тональності.

Розпізнавання мови — це процес перетворення текстових файлів або голосу в цифрову інформацію. Простий приклад: під час звернення до Siri алгоритм у режимі реального часу розпізнає мову і перетворює її на текст.

Генерація тексту — це процес створення текстів з використанням комп’ютерних алгоритмів.

Перетворення тексту на мову — це процес, зворотний до розпізнавання мови. Прикладом може слугувати читання інформації з інтернету голосовими помічниками.

Де застосовують системи природного оброблення мови?

Існує безліч способів використання технологій NLP у повсякденному житті:

  • поштові служби використовують байєсівську фільтрацію спаму, статистичний метод NLP, який порівнює вхідні повідомлення з базою даних та ідентифікує небажані листи;
  • текстові редактори на кшталт Microsoft Word або Google Docs використовують обробку мови для виправлення помилок у словах не тільки граматичних, а й контекстних;
  • віртуальні клавіатури в сучасних смартфонах можуть передбачати наступні слова в контексті речення.
  • голосові помічники на кшталт Siri або Google Assistant можуть впізнавати користувача, виконувати команди, трансформувати мовлення в текст, здійснювати пошук в інтернеті, керувати пристроями розумного будинку та багато іншого;
  • додатки спеціальних можливостей на ПК і смартфонах можуть озвучувати текст і елементи інтерфейсу для людей зі слабким зором завдяки алгоритмам синтезу мови;
  • мовні моделі з величезною кількістю параметрів на кшталт GPT-3 або BERT можуть генерувати тексти різної довжини в різноманітних жанрах, допомагати здійснювати пошук і передбачати речення за кількома першими словами;
  • системи машинного перекладу використовують статистичні та мовні моделі для перекладу текстів з однієї мови на іншу.

Які труднощі виникають під час використання NLP-технологій?

Часто під час розв’язання задач NLP використовують рекурентні нейромережі, що мають низку недоліків, серед яких:

  • послідовне опрацювання слів;
  • нездатність утримати в пам’яті великий обсяг інформації;
  • схильність до проблеми зникаючого/вибухового градієнта;
  • неможливість паралельного опрацювання інформації.

Крім цього, популярні методи обробки часто помиляються в розумінні контексту, що вимагає додаткового обережного налаштування алгоритмів.

Більшість цих проблем вирішують великі мовні моделі, однак і з ними є низка складнощів. Насамперед — їхня доступність. Велику мовну модель, на кшталт GPT-3 або BERT, складно натренувати, проте великі компанії дедалі частіше стали викладати їх у відкритий доступ.

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

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

Крім технологічних недоліків, NLP також можуть використовувати в зловмисних цілях. Наприклад, у 2016 році компанія Microsoft запустила в Twitter чат-бота Tay, який навчався спілкування на прикладі своїх співрозмовників-людей. Однак лише через 16 годин компанія вимкнула робота, коли він почав публікувати расистські та образливі твіти.

2021 року шахраї з ОАЕ підробили голос керівника великої компанії та переконали банківського працівника переказати $35 млн на їхні рахунки.

Аналогічний випадок стався 2019 року з британською енергетичною компанією. Шахраям вдалося вкрасти близько $243 000, видавши себе за директора компанії за допомогою підробленого голосу.

Великі мовні моделі можуть використовуватися для масових спам-атак, домагань або дезінформації. Про це попередили творці GPT-3. Вони також повідомили, що їхня мовна модель схильна до упередженості до певних груп людей. Однак в OpenAI повідомили, що зменшили токсичність GPT-3, а наприкінці 2021 року надали доступ до моделі широкому колу розробників і дозволили кастомізувати її.

Підписуйтесь на новини ForkLog у Telegram: ForkLog AI — всі новини зі світу ШІ!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *