Використання нейромереж для побудови системи розпізнавання мовлення

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Зміст

Введення

1. Розпізнавання мови - ключові моменти

2. Можливість використання нейромереж для побудови системи розпізнавання мовлення

3. Самонавчальні автономні системи

4. Система розпізнавання мовлення як система, яка

5. Опис системи

5.1 Введення звуку

5.2 Накладення первинних ознак на вхід нейромережі

5.3 Модель нейромережі

5.4 Навчання нейромережі

6. Застосування

Список використаних джерел

Введення

Я думаю, немає сенсу розповідати про те, навіщо потрібне дослідження штучних нейронних мереж, ніж вони приваблюють дослідників і які нові можливості вони відкривають перед розробниками систем обробки інформації - якщо Ви зараз читаєте цю статтю, то Вам Тож усе ясно. Якщо ж Ви новачок в області нейрокомп'ютингу і всього, що з ним пов'язано, то існує величезна кількість статей, наукових публікацій, навчальної літератури, присвяченої нейромереж ([1], [5], [6], [8]); написано безліч програм , створено безліч працюючих зразків (від простих дослідних моделей до повнофункціональних промислових систем), в яких використовуються нейромережі. Загалом, теоретичне дослідження нейромережевих алгоритмів ведеться вже давно, і на даний момент вони вже широко застосовуються для вирішення практичних завдань. У зв'язку з очевидною конкурентоспроможністю цього способу обробки інформації в порівнянні з існуючими на сьогоднішній момент традиційними способами особливий інтерес становить проблема визначення кола завдань, для яких було б ефективним застосування нейромережевих алгоритмів. Розпізнавання образів - це одне із завдань, успішно вирішуються нейромережі. Одним з додатків теорії розпізнавання образів є розпізнавання мови. Проблема розпізнавання мови як одна з складових штучного інтелекту давно приваблювала дослідників, і на сьогоднішній день хоч і досягнуті певні успіхи, вона залишається відкритою. Об'єднана з проблемою синтезу мови, вона представляє дуже цікаве поле для досліджень.

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

1. Розпізнавання мови - ключові моменти

Що розуміється під розпізнаванням мови? Це може бути перетворення мови в текст, розпізнавання і виконання певних команд, виділення з промови будь-яких характеристик (наприклад, ідентифікація диктора, визначення його емоційного стану, статі, віку, і т.д.) - все це в різних джерелах може потрапити під це визначення. У моїй роботі під розпізнаванням мови розуміється віднесення звуків мови або їх послідовності (фонем, букв, слів) до якого-небудь класу. Потім цього класу можуть бути співставлені символи алфавіту - отримаємо систему перетворення мови в текст, або певні дії - отримаємо систему виконання мовних команд. Взагалі цей спосіб обробки мовної інформації може використовуватися на першому рівні якої-небудь системи з набагато більш складною структурою. І від ефективності цього класифікатора буде залежати ефективність роботи системи в цілому.

Які проблеми виникають при побудові системи розпізнавання мовлення? Головна особливість мовного сигналу в тому, що він дуже сильно варіюється за багатьма параметрами: тривалість, темп, висота голосу, спотворення, що вносяться великою мінливістю голосового тракту людини, різними емоційними станами диктора, сильним відмінністю голосів різних людей. Два тимчасових представлення звуку мови навіть для одного й того ж людини, записані в один і той же момент часу, не будуть збігатися. Необхідно шукати такі параметри мовного сигналу, які повністю описували би його (тобто дозволяли б відрізнити один звук мовлення від іншого), але були б у якійсь мірі інваріантні щодо описаних вище варіацій мови. Отримані таким чином параметри повинні потім порівнюватися із зразками, причому це має бути не просте порівняння на збіг, а пошук найбільшого відповідності. Це змушує шукати потрібну форму відстані в знайденому параметричному просторі.

Далі, обсяг інформації, яку може зберігати система, не безмежний. Яким чином запам'ятати практично нескінченне число варіацій мовних сигналів? Очевидно, тут не обійтися без будь-якої форми статистичного усереднення.

Ще одна проблема - це швидкість пошуку в базі даних. Чим більше її розмір, тим повільніше буде проводитись пошук - це твердження вірне, але тільки для звичайних послідовних обчислювальних машин. А які ж ще машини зможуть вирішити всі перераховані вище проблеми? - Запитаєте Ви. Абсолютно вірно, це нейромережі.

2. Можливість використання нейромереж для побудови системи розпізнавання мовлення

Класифікація - це одна з «улюблених» для нейромереж завдань. Причому нейромережа може виконувати класифікацію навіть при навчанні без вчителя (правда, при цьому утворюються класи не мають сенсу, але ніщо не заважає надалі асоціювати їх з іншими класами, що представляють інший тип інформації - фактично наділити їх змістом). Будь-який мовний сигнал можна представити як вектор в будь-якому параметричному просторі, потім цей вектор може бути запам'ятовані в нейромережі. Одна з моделей нейромережі, яка навчається без вчителя - це самоорганізована карта ознак Кохонена. У ній для множини вхідних сигналів формується нейронні ансамблі, які представляють ці сигнали. Цей алгоритм має здатність до статистичного усереднення, тобто вирішується проблема з варіативністю мовлення. Як і багато інших нейромережеві алгоритми, він здійснює паралельну обробку інформації, тобто одночасно працюють всі нейрони. Тим самим вирішується проблема зі швидкістю розпізнавання - звичайно час роботи нейромережі становить декілька ітерацій.

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

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

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

3. Самонавчальні автономні системи

Чим відрізняється робота, яку виконують роботи і яку може виконати людина? Роботи можуть мати якості, набагато переважаючими можливості людей: висока точністю, сила, реакція, відсутність втоми. Але разом з тим вони залишаються просто інструментами в руках людини. Існує робота, яка може бути виконана тільки людиною і яка не може бути виконана роботами (або необхідно створювати невиправдано складних роботів). Головна відмінність людини від робота - це здатність адаптуватися до зміни обстановки. Звичайно, практично у всіх роботів існує здатність працювати в декількох режимах, обробляти виняткові ситуації, але все це спочатку закладається в нього людиною. Таким чином, головний недолік роботів - це відсутність автономності (потрібен контроль людини) і відсутність адаптації до зміни умов (всі можливі ситуації закладаються в нього в процесі створення). У зв'язку з цим актуальною є проблема створення систем, що володіють такими властивостями.

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

Спроби створення таких систем робилися багатьма дослідниками, в тому числі і з використанням нейромереж. Один із прикладів - створений у Київському Інституті кібернетики ще в 70-х роках макет транспортного автономного інтегрального робота (ТАЇР) (див. [6]). Цей робот навчався знаходити дорогу на деякій місцевості і потім міг використовуватися як транспортний засіб.

Ось якими властивостями, на мою думку, повинні мати такі системи:

Розробка системи полягає тільки в побудові її архітектури.

У процесі створення системи розробник створює тільки функціональну частину, але не наповнює (або наповнює в мінімальних обсягах) систему інформацією. Основну частину інформації система отримує в процесі навчання.

Можливість контролю своїх дій з наступною корекцією

Цей принцип говорить про необхідність зворотного зв'язку [Дія] - [Результат] - [Корекція] у системі. Такі ланцюжки дуже широко поширені в складних біологічних організмах і використовуються на всіх рівнях - від контролю м'язових скорочень на найнижчому рівні до управління складними механізмами поведінки.

Можливість накопичення знань про об'єкти робочої області

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

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

Автономність системи

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

4. Система розпізнавання мовлення як система, яка

З метою вивчення особливостей самонавчаються моделі розпізнавання і синтезу промови були об'єднані в одну систему, що дозволило наділити її деякими властивостями самонавчаються. Це об'єднання є одним з ключових властивостей створюваної моделі. Що послужило причиною цього об'єднання?

По-перше, у системи є можливість вчиняти дії (синтез) і аналізувати їх (розпізнавання), тобто властивість (2). По-друге, присутній властивість (1), так як при розробці в систему не закладається ніяка інформація, і можливість розпізнавання та синтезу звуків мови - це результат навчання.

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

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

Припустимо, вхідний сигнал задається вектором первинних ознак в N-мірному просторі. Для зберігання такого сигналу необхідно N елементів. При цьому на етапі розробки ми не знаємо специфіки сигналу або вона настільки складна, що врахувати її важко. Це призводить до того, що подання сигналу, яке ми використовуємо, надмірно. Далі припустимо, що у нас є можливість синтезувати такі ж сигнали (тобто синтезувати мову), але при цьому синтезується сигнал є функцією вектора параметрів в M-мірному просторі, і M <<N (дійсно, число параметрів моделі синтезу мови набагато менше числа первинних ознак моделі розпізнавання мови). Але тоді ми можемо запам'ятовувати вхідний сигнал не з його первинним ознаками в N-мірному просторі, а за параметрами моделі синтезу в M-мірному просторі. Виникає питання: а як переводити сигнал з одного параметричного простору в інше? Є всі підстави припускати, що це перетворення можна здійснити за допомогою досить простої нейромережі. Більш того, на мою думку, такий механізм запам'ятовування працює в реальних біологічних системах, зокрема, у людини.

5. Опис системи

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

5.1 Введення звуку

Введення звуку здійснюється в реальному часі через звукову карту або через файли формату Microsoft Wave в кодуванні PCM (розрядність 16 біт, частота дискретизації 22050 Гц). Робота з файлами краще, тому що дозволяє багаторазово повторювати процеси їх обробки нейромережею, що особливо важливо при навчанні.

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

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

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

Процес введення звукової інформації зображений на рис. 1:

Рис 1. Введення звуку

При обробці файлу по ньому переміщається вікно введення, розмір якого дорівнює розміру вікна дискретного перетворення Фур'є (ДПФ). Зміщення вікна відносно попереднього положення можна регулювати. У кожному положенні вікна воно заповнюється даними (система працює тільки зі звуком, в якому кожен відлік кодується 16 бітами). При введенні звуку в реальному режимі часу він записується блоками такого ж розміру.

Після введення даних у вікно перед обчисленням ДПФ на нього накладається вікно згладжування Хеммінга:

, (1)

N - розмір вікна ДПФ

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

без вікна згладжування з вікном згладжування Хеммінга

Рис 2. Дія вікна згладжування Хеммінга (логарифмічний масштаб)

Після цього обчислюється дискретне перетворення Фур'є за алгоритмом швидкого перетворення Фур'є ([ХХ]). У результаті в реальних і уявних коефіцієнти виходить амплітудний спектр і інформація про фазу. Інформація про фазу відкидається і обчислюється енергетичний спектр:

(2)

Так як оброблювані дані не містять уявної частини, то за властивості ДПФ результат виходить симетричним, тобто E [i] = E [Ni]. Таким чином, розмір інформативній частині спектру NS дорівнює N / 2.

Всі обчислення в нейромережі виробляються над числами з плаваючою точкою і більшість сигналів обмежені діапазоном [0.0,1.0], тому отриманий спектр нормується на 1.00. Для цього кожен компонент вектора ділиться на його довжину:

, (3)

(4)

Інформативність різних частин спектру неоднакова: в низькочастотній області утримується більше інформації, ніж у високочастотній. Тому для запобігання зайвого витрачання входів нейромережі необхідно зменшити кількість елементів, які отримують інформацію з високочастотної області, або, що теж саме, стиснути високочастотну область спектра в просторі частот. Найбільш поширений метод (завдяки його простоті) - логарифмічне стиск (див. [3], "Non-linear frequency scales"):

, (5)

f - частота в спектрі, Гц,

m - частота в новому стислому частотному просторі

5.2 Накладення первинних ознак на вхід нейромережі

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

При великій роздільній здатності (великому числі) входів можливе виділення гармонійної структури мови і як наслідок визначення висоти голосу. При малій роздільної здатності (малому числі) входів можливо тільки визначення формантной структури.

Як показало подальше дослідження цієї проблеми, для розпізнавання вже досить тільки інформації про формантной структурі. Фактично, людина однаково розпізнає нормальну голосову мова і шепіт, хоча в останньому відсутня голосове джерело. Голосовий джерело дає додаткову інформацію у вигляді інтонації (зміною висоти тону протягом висловлювання), і ця інформація дуже важлива на вищих рівнях обробки мови. Але в першому наближенні можна обмежитися тільки отриманням формантной структури, і для цього з урахуванням стиснення неінформативною частини спектру достатнє число входів обрано в межах 50 ~ 100.

5.3 Модель нейромережі

Нейромережа має досить просту структуру і складається з трьох рівнів: вхідний шар, символьний шар і ефекторних шар (рис. 4). Кожен нейрон наступного шару пов'язаний з усіма нейронами попереднього шару. Функція передачі у всіх шару лінійна, у вхідному шарі моделюється конкуренція.

Рис. 4 Архітектура нейромережі

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

Нейрони цього шару функціонують за принципом конкуренції, тобто в результаті певної кількості ітерацій активним залишається один нейрон або нейронний ансамбль (група нейронів, які спрацьовують одночасно). Цей механізм здійснюється за рахунок латеральних зв'язків і називається латеральним гальмуванням. Він докладно розглянуто в багатьох джерелах ([1], [6]). Так як відпрацювання цього механізму вимагає значних обчислювальних ресурсів, в моїй моделі він моделюється штучно, тобто знаходиться нейрон з максимальною активністю, його активність встановлюється в 1, інших в 0.

Навчання мережі проводиться за правилом (7):

wн = wс +  (x - wс) a, (6)

wн - нове значення ваги,

wс - старе значення,

- швидкість навчання,  <1

x - нормований вхідний вектор,

a - активність нейрона.

Геометрично це правило ілюструє рисунок 5:

Рис. 5. Корекція ваг нейрона Кохонена

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

Проблеми, які виникають при навчанні прошарку Кохонена, описані нижче (див. 5.5)

2. Символьний шар - нейрони цього шару асоційовані з символами алфавіту (це не обов'язково повинен бути звичайний буквений алфавіт, але будь-який, наприклад, алфавіт фонем). Цей шар здійснює генерацію символів при розпізнаванні і введення символів при синтезі. Він являє собою шар Гросберга, який навчається з учителем. Нейрон цього шару функціонує звичайним чином: обчислює сумарний зважений сигнал на своїх входах і за допомогою лінійної функції передає його на вихід. Модифікація ваг зв'язків при навчанні відбувається за наступним правилом:

wijн = wijс +  (yj - wijс) xi, (7)

wijн, wijс - ваги зв'язків до і після модифікації

- швидкість навчання,  <1

yj - вихід нейрона

xi - вхід нейрона

За цим правилом вектор ваг зв'язків прагне до вихідного вектору, але тільки якщо активний вхід, тобто модифікуватися будуть зв'язку тільки від активних в даний момент нейронів шару Кохонена. Виходи ж у символьного шару бінарні, тобто нейрон може бути активний (yj = 1) чи ні (yj = 0), що відповідає включенню певного символу. Вхідний шар спільно з символьним шаром дозволяють зіставити кожному класу вхідних сигналів певний символ алфавіту.

3. Ефекторних шар - цей шар отримує сигнали від символьного шару і також є шаром Гросберга. Виходом шару є вектор ефекторів - елементів, активність яких управляє заданими параметрами в моделі синтезу. Зв'язок ефекторів з параметрами моделі синтезу здійснюється через карту ефекторів. Цей шар дозволяє зіставити кожному нейрону символьного шару (а отже, і кожному символу алфавіту) певний вектор ефекторів (а отже, і певний синтезується звук). Навчання цього шару аналогічно символьному шару.

5.4 Навчання нейромережі

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

Вибір швидкостей навчання

Навіщо в правилі навчання шару Кохонена (6) присутній коефіцієнт ? Якщо б він був рівний 1, то для кожного вхідного вектора вектор зв'язків активного нейрона прирівнювався б до нього. Як правило, для кожного нейрона існує безліч вхідних сигналів, які могли б його активувати, і його вектор зв'язків постійно мінявся б. Якщо ж  <1, на кожен вхідний сигнал вектор зв'язків реагує незначно. Зменшуючи  в процесі навчання, ми в кінці навчання отримаємо статистичне усереднення схожих вхідних сигналів. З цією ж метою вводяться швидкості навчання у всіх інших навчальних правилах.

Чим визначається швидкість навчання? Тут головну роль грає порядок пред'явлення зразків. Припустимо, є велика навчальна вибірка, послідовним пред'явленням елементів якої навчається нейромережа. Якщо швидкість навчання велика, то вже на середині цієї вибірки нейромережа «забуде» попередні елементи. А якщо кожен зразок пред'являється поспіль багато разів, то вже на наступному зразку нейромережа забуде попередній. Таким чином, головний критерій вибору швидкостей навчання - незначна зміна зв'язків у межах ВСІЄЇ навчальної вибірки. Але не слід забувати, що час навчання обернено пропорційно швидкості навчання. Так що тут необхідно шукати компроміс.

Запам'ятовування рідко зустрічаються елементів

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

Проблеми, що виникають при навчанні прошарку Кохонена

Для дослідження динаміки навчання і властивостей шару Кохонена був створений інструмент «Модель нейромережі», в якому моделюється шар Кохонена в двовимірному сигнальному просторі (Рис 6).

1. Початкові значення ваг 2. Ваги після навчання

Рис.6. Моделювання шару Кохонена

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

1. вибір початкових значень ваг.

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

2. використання всіх нейронів.

Якщо ваговій вектор опиниться далеко від області вхідних сигналів, він ніколи не дасть найкращої відповідності, завжди буде мати нульовий вихід, отже, не буде коригуватися і виявиться марним. Тих, хто залишився ж нейронів може не вистачити для поділу вхідного простору сигналів на класи. Для вирішення цієї проблеми пропонується багато алгоритмів ([1], [8]). в моїй роботі застосовується правило «бажання працювати»: якщо який або нейрон довго не знаходиться в активному стані, він підвищує ваги зв'язків до тих пір, поки не стане активним і не почне піддаватися навчання. Цей метод дозволяє також вирішити проблему тонкої класифікації: якщо утвориться група вхідних сигналів, розташованих близько один до одного, з цією групою асоціюється і велике число нейронів Кохонена, які розбивають її на класи (рис. 6.2). Правило «бажання працювати» записується в наступній формі:

wн = wc + wс  1 (1 - a), (8)

де wн - нове значення ваги,

wс - старе значення,

1 - швидкість модифікації,

a - активність нейрона.

Чим менше активність нейрона, тим більше збільшуються ваги зв'язків.

Вибір коефіцієнта  1 визначається такими міркуваннями: постійне зростання ваг нейронів за правилом (8) компенсується правилом (6) (активні нейрони прагнуть знову повернутися на гіперсферу одиничного радіуса), причому за одну ітерацію нейромережі збільшать свою вагу практично всі нейрони, а зменшить тільки один активний нейрон або нейронний ансамбль. У зв'язку з цим коефіцієнт  1 в (8) необхідно вибирати значно менше коефіцієнта  в (6), враховуючи при цьому число нейронів у шарі.

3. неоднорідний розподіл вхідних векторів в просторі сигналів і дефіцит нейронів.

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

Для вирішення цієї проблеми можна використовувати правило «знаходження центру мас», тобто невелике прагнення ВСІХ вагових векторів на початковому етапі навчання до вхідних векторів. У результаті в місцях з великою щільністю вхідного сигналу опиниться і багато вагових векторів. Це правило записується так:

wн = wс +  2 (x - wс). (9)

де wн - нове значення ваги,

wс - старе значення,

2 - швидкість модифікації,

x - вхідний вектор

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

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

Недолік цього правила - дуже повільне навчання. Якщо в двовимірному просторі нейрони «знаходили» вхідні вектора більш-менш успішно, то в багатовимірному просторі ймовірність цієї події істотно знижується.

Самим ефективним рішенням виявилося більш точне моделювання механізму латерального гальмування. Як і раніше, знаходиться нейрон з максимальною активністю. Потім штучно за допомогою латеральних зв'язків встановлюється активність оточуючих його нейронів за правилом (10):

(10)

aj - активність нейрона

i - виграв нейрон

j - індекс нейрона

- Визначає радіус дії латеральних зв'язків, зменшується в процесі навчання

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

6. Застосування

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

Список використаних джерел

  1. Ф. Уоссермен «Нейрокомп'ютерні техніка: Теорія і практика». Переклад на російську мову Ю. А. Зуєв, В. А. Точеного, 1992.

  2. Вінцюк Т.К. «Аналіз, розпізнавання та інтерпретація мовних сигналів.»-Київ: Наук. думка, 1987. -262 С.

  3. Speech Analysis FAQ - http://svr-www.eng.cam.ac.uk/ ~ ajr/SA95/SpeechAnalysis.html

  4. Л.В. Бондарко «Звуковий лад сучасної російської мови»-М.: Освіта, 1997. -175 С.

  5. Е. М. Куссуль «Асоціативні нейроподібні структури»-Київ, Наукова думка, 1990

  6. Н.М. Амосов та ін «Нейрокомп'ютери і інтелектуальні роботи»-Київ: Наукова думка, 1991

  7. Г. Нуссбаумер «Швидке перетворення Фур'є і алгоритми обчислення згорток». Переклад з англ. - М.: Радіо і зв'язок, 1985. -248 С.

  8. А.А. Єжов, С.А. Шумський "нейрокомпьютинг і його додатка в економіці", - МІФІ, 1998

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Курсова
89.5кб. | скачати


Схожі роботи:
Розпізнавання мовлення
Загальні принципи характерні для нейромереж
Використання зорових опор для розвитку усного мовлення учнів у X-XI класах середньої школи
Системи оптичного розпізнавання образів
Інформаційний синтез системи автоматичного розпізнавання бланків документів
Використання Microsoft Access для створення інформаційно облікової системи
Використання системи дидактичних ігор і вправ для сенсорного виховання дітей
Використання системи внутрішкільного контролю для ефективного управління якістю освіти
Використання інструментів управління проектами для ефективного впровадження системи якості ВНЗ
© Усі права захищені
написати до нас