Російська   Англійська
ДонНТУ   Портал магістрів

Реферат на тему випускної роботи

Зміст

Вступ

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

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

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

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

Автоматизований переклад як такий включає цілу низку наукових дисциплін від лінгвістики до математики та кібернетики. Інструменти автоматизованого перекладу значно різняться за своєю структурою та методами роботи. Їхньою загальною рисою є те, що вони служать для покращення умов праці перекладача, найчастіше виконуючи автоматичне генерування бажаної частини тексту бажаною мовою під контролем фахівця, використовуючи особливі правила перекладу граматичних структур. Ступінь контролю фахівцем цих інструментів у процесі перекладу може значно відрізнятися. Ефективність реалізації даних систем залежить від знань та рівня професійної підготовки користувача, а також від здатності оперативно засвоювати нове програмне забезпечення.

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

1. Актуальність теми

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

2. Мета дослідження

Мета дослідження полягає в тому, щоб вивчити специфіку, процеси та механізми застосування автоматизованого перекладу при перекладі синтаксичних конструкцій з англійської мови на російську, розробити автоматизований перекладач у сфері IT–технологій.

3. Загальні положення

3.1 Актуальність

Актуальність проекту зумовлена потребою створення перекладача у сфері технічних текстів. Існуючі системи перекладу спрямовані на розмовну мову і завжди перекладають технічні тексти правильно. Завданням проекту є розробка перекладача, який працює виключно в IT–технологіях.

3.2 Автоматизований переклад

Автоматизований переклад – переклад текстів на комп'ютері за допомогою комп'ютерних технологій. [1] Інструменти автоматизованого перекладу значно різняться за своєю структурою та методами роботи. Їхньою загальною рисою є те, що вони служать для покращення умов праці перекладача, найчастіше виконуючи автоматичне генерування бажаної частини тексту бажаною мовою під контролем фахівця, використовуючи особливі правила перекладу граматичних структур.

3.2.1 Статичний машинний переклад

Статистичний машинний переклад – різновид машинного перекладу, де переклад генерується на основі статистичних моделей, параметри яких похідні від аналізу двомовних корпусів тексту (text corpora). [2]

Розробники систем машинного перекладу для покращення якості вводять деякі наскрізні правила, тим самим перетворюючи суто статистичні системи на Гібридний машинний переклад. Додавання деяких правил, тобто створення гібридних систем, дещо покращує якість перекладів, особливо за недостатнього обсягу вхідних даних, що використовуються при побудові індексу машинного перекладача.

3.2.2 Нейронний машинний переклад

Нейронний машинний переклад це підхід до машинного перекладу, в якому використовується велика штучна нейронна мережа. [3]

Моделі NMT використовують глибинне навчання та навчання ознакам. Для їхньої роботи потрібна лише мала частина пам'яті в порівнянні з традиційними системами статистичного машинного перекладу (SMT). Крім того, на відміну від традиційних систем перекладу всі частини моделі нейронного перекладу навчаються спільно (від початку до кінця), щоб максимізувати ефективність перекладу.

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

3.3 Огляд існуючих систем

 Google Translate

Перекладач Google — веб–служба Google, призначена для автоматичного перекладу тексту або веб–сторінки іншою мовою. [4]

Google використовує власне програмне забезпечення. Передбачається, що компанія використовує алгоритм самонавчання машинного перекладу. У березні 2017 року Google повністю переклала двигун перекладу на нейромережі для більш якісного перекладу. Через те, що видача варіантів контролюється статистичним алгоритмом, при перекладі звичайних загальновживаних слів Google Перекладач може пропонувати серед можливих варіантів нецензурні слова. На результат видачі також можна вплинути масово пропонуючи якийсь, у тому числі свідомо неправильний варіант перекладу. Google Перекладач пропонує переклад з будь–якої мови, що підтримується, на будь–який підтримуваний, але в більшості випадків реально виконує переклад через англійську. Іноді якість від цього сильно страждає. Наприклад, при перекладі з польської на російську зазвичай порушуються відмінки (навіть коли вони в російській та польській однакові). Є також мови, які проходять подвійний процес обробки перекладу спочатку через близько–родинну мову, потім через англійську.

 Yandex Translate

Яндекс.Перекладач — веб–служба компанії Яндекс, призначена для перекладу частини тексту або веб–сторінки іншою мовою. [5]

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

 DeepL

DeepL – онлайн–перекладач, що працює на основі машинного перекладу. Запущено в роботу компанією DeepL GmbH з Кельна у серпні 2017 року. [6]Сервіс дозволяє перекладати 72 мовні пари німецькою, англійською, французькою, голландською, польською, російською, італійською, іспанською, португальською. Служба використовує згорткові нейронні мережі, навчені на основі бази Linguee. Переклад генерується за допомогою суперкомп'ютера, обчислювальна потужність якого становить 5,1 петафлопс, що працює в Ісландії на електриці, що виробляється гідроелектростанцією. Згортки нейронні мережі, як правило, дещо краще підходять для перекладу довгих послідовних словосполучень, але досі не використовувалися конкурентами, які воліли використовувати рекурентні нейронні мережі або статистичний переклад.

4. Математична постановка

4.1 Вибір архітектури

Існує безліч видів архітектур нейронних мереж.

Популярними є:

  1. Рекурентні нейронні мережі (це клас нейронних мереж, які є хорошими для моделювання послідовних даних, таких як тимчасові ряди або природна мова); [7]
  2. Згортки нейронні мережі (спеціальна архітектура штучних нейронних мереж, націлена на ефективне розпізнавання образів, входить до складу технологій глибокого навчання); [8]
  3. Комбіновані нейронні мережі (такі нейронні мережі здатні розуміти, що знаходиться на зображенні, і описувати це. І навпаки: малювати зображення за описом).

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

4.2 Режими роботи рукоррентної мережі

Рекурентна нейронна мережа може працювати в різних режимах:

  1. Один на вхід – один на вихід;
  2. Один на вхід – послідовність виходів;
  3. Послідовність входів – послідовність виходів;
  4. Послідовність входів – один вихід.

На вхід нейронного перекладача може входити як слово, і цілі речення, і навіть тексту. Отже, на вхід чорної скриньки повинна входити послідовність, і на виході має бути послідовність.

4.3 Подання тексту

Текст необхідно подавати у цифровому вигляді. Існує три способи кодування:

  1. Числове кодування;
  2. One hot encoding (подання у двійковому векторі);
  3. Щільне векторне уявлення (подання у векторі будь–яких чисел).

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

5 Способи вирішення

5.1 Рекурентні нейронні мережі

Важливою особливістю машинного перекладу, а також будь–якого іншого завдання, пов'язаного з природною мовою, є змінна довжина входу X = (x1, x2, …, xT) та виходу Y = (y1, y2, …, yT´) . Іншими словами, T і T не є фіксованими.

Щоб працювати з входом та виходом змінної довжини, необхідно використовувати рекурентну нейронну мережу (РНС, recurrent neural network, RNN). Широко застосовувані нейронні мережі прямого поширення (feedforward neural network), такі як згорткові нейронні мережі (convolutional neural network), не зберігають інформацію про внутрішній стан, використовуючи лише власні параметри мережі. Щоразу, коли елемент даних подається у нейронну мережу прямого поширення, внутрішній стан мережі (тобто функції активації прихованих нейронів) обчислюється заново. При цьому на нього не впливає стан, обчислений під час обробки попереднього елемента даних. На відміну від цього, РНС зберігає свій внутрішній стан під час читання вхідної послідовності елементів даних, що є у разі послідовністю слів. Отже, РНС здатна обробляти вхідні дані довільної довжини.

Основна ідея РНС полягає у тому, щоб за допомогою рекурсії сформувати із вхідної послідовності символів вектор фіксованої розмірності. Припустимо, що на кроці t ми маємо вектор ht–1 , що є історію всіх попередніх символів. РНС обчислить новий вектор ht (тобто свій внутрішній стан), який поєднує всі попередні символи (x1, x2, …, xt–1) , а також новий символ xt за допомогою:

Рекурентна нейронна мережа

де φΔ – функція, параметризована за допомогою θ , яка приймає на вході новий символ xt та історію ht–1 до (t–1) –го символу. Спочатку ми можемо сміливо припустити, що h0 – нульовий вектор.

Рекурентна нейронна мережа

Малюнок 1 – Рекурентна нейронна мережа

Рекурентна функція активації φ зазвичай реалізується, наприклад, як просте афінне перетворення (affine transformation), за яким слідує поелементна нелінійна функція:

Формула RNN

У цьому виразі є такі параметри: вхідна вагова матриця W, рекурентна вагова матриця U і вектор зміщення (bias vector) b. Слід зазначити, що це єдиний варіант. Існує великий простір розробки нових рекурентних функцій активації.

5.2 LSTM

Довга короткострокова пам'ять (Long short–term memory; LSTM) – особливий різновид архітектури рекурентних нейронних мереж, здатна до навчання довгострокових залежностей. [9] LSTM розроблено спеціально, щоб уникнути проблеми довготривалої залежності. Запам'ятовування інформації на довгі періоди часу – це їх звичайна поведінка, а не щось, чого вони намагаються навчитися.

Структура LSTM нагадує ланцюжок, але модулі виглядають інакше. Замість одного шару нейронної мережі вони містять чотири, і ці шари взаємодіють особливим чином.

LSTM

Малюнок 2 – Мережа LSTM

Ключовий компонент LSTM – це стан осередку (cell state) – горизонтальна лінія, що проходить по верхній частині схеми.

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

5.3 Подання тексту у цифровому вигляді

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

Робота із зображеннями є набором чисел, які відповідають інтенсивності пікселів від 0 до 255.

У роботі зі структурованими даними (наприклад таблиці) можливі два варіанти:

  1. Якщо дані у числовому вигляді, з ними нічого робити не потрібно;
  2. Якщо дані у категоріальному вигляді (наприклад стать чоловіка чи жінки), то такі дані подаються у вигляді векторів one hot encoding.

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

Можна розбити текст на:

  1. Символи (літери, цифри, розділові знаки тощо і в числовому вигляді представляти окремий символ);
  2. слова (ставити число чи набір чисел не окремим символам, а цілим словам);
  3. Пропозиції (як чисел подаються цілі пропозиції).

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

Для перетворення токенів на числовий вигляд можна використовувати:

  1. Числове кодування (кожному токену присвоюємо окремий код: частота (з якою токен зустрічається в тексті), або використовувати різні кодування (ASCII, UTF–8 і т.п. (кожному символу алфавіту відповідає певний числовий код)));
  2. Кожному токену відповідає не одне число, а вектор чисел – one hot encoding (використовується на виході з нейронних мереж у задачах класифікації та подання правильних відповідей під час роботи з учителем). У цьому випадку вектор містить стільки чисел, скільки можна використовувати токени і всі елементи вектора дорівнюють нулю, крім того, що відповідає потрібному токену;
  3. Використання щільного векторного подання. У цьому випадку кожному числу ставиться не одне число, а вектор, але розмірність вектора нижче, ніж one hot encoding, за рахунок того, що в цьому векторі використовуються не тільки нулі та одиниці, а будь–які числа.

5.4 Середовище розробки

Розробка підсистеми буде розроблятися мовою Python за допомогою Google Colab. Google Colab – це сервіс, який дозволяє запускати Jupyter Notebook–ки з безкоштовним доступом до відеокарти Nvidia K80.

Jupyter Notebook – командна оболонка для інтерактивних обчислень на python.

Список джерел

  1. Автоматизований переклад [electronic resource] // Інтернет ресурс – Режим доступу: https://dic.academic.ru/dic.nsf/ruwiki/30223
  2. Статичний машинний переклад [electronic resource] // Інтернет ресурс – Режим доступу: https://intellect.icu/mashinnyj-perevod-vidy-i-osobennosti-9510
  3. Нейронний машинний переклад [electronic resource] // Інтернет ресурс – Режим доступу: http://ua.wikipedia.org/wiki/Нейронний_машинний_переклад
  4. Google Перекладач [electronic resource] // Інтернет ресурс – Режим доступу: https://ua.wikipedia.org/wiki/Google_Перекладач
  5. Yandex Перекладач [electronic resource] // Інтернет ресурс – Режим доступу: https://habr.com/ua/company/yandex/blog/576438/
  6. DeepL [electronic resource] // Інтернет ресурс – Режим доступу: https://www.deepl.com/ua/home
  7. Рекурентні нейронні мережі // Інтернет ресурс – Режим доступу: https://habr.com/ua/post/487808/
  8. Згорткові нейронні мережі [electronic resource] // Інтернет ресурс – Режим доступу: https://medium.com/@balovbohdan/згорткові-нейронні мережі
  9. LSTM [electronic resource] // Інтернет ресурс – Режим доступу: https://habr.com/ru/company/wunderfund/blog/331310/