Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Navch_posibnik_10-06-2014.doc
Скачиваний:
139
Добавлен:
28.02.2016
Размер:
3.53 Mб
Скачать

Лабораторні роботи Лабораторна робота №1

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

Мета: Розглянути основні принципи розпізнавання образів з використанням нейромереж.

Теоретичні відомості

Одношаровий персептрон (Single layer реrceptron - SLP) є концептуальною моделлю, яка складається з одного процесора. Кожне з'єднання від входу до ядра включає коефіцієнт ваги , який показує чинник ваги, і визначає вплив вхідного сигналу на клітину. Позитивна вага показує посилення, а негативні - зменшення. Спільно з входами в клітину вони визначають поведінку мережі. Схема одношарового персептрона приведена на рис. 6.1. В цій моделі вхідні сигнали перемножуються на відповідну вагу зв'язків і підсумовуються, формуючи значення ui. Вихідний сигнал i-го елементу в дискретні моменти часу визначається за допомогою виразу

(1)

де: g(u) – функція активації (стиснення) нейрона, яка повертає 0 або 1;

–порогове значення;

m кількість входів в одношаровий персептрон;

Рис.17. – Одношаровий персептрон (штучний нейронний елемент)

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

В роботі вибрана архітектура ШНМ (штучна нейронна мережа) з трьома прихованими клітинами. Три приховані клітини можуть бути навчені для всіх представлених прикладів з 99,99% точністю, змінюється тільки кількість ітерацій. Зменшення кількості клітин до двох або до однієї приводить до створення ШНМ, яка не може правильно класифікувати всі навчальні приклади фактів.

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

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

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

—для вихідної клітини;

—для всіх прихованих клітин.

Нарешті, обновляється вага в мережі:

—для ваги з'єднань між прихованим шаром і виходом;

—для ваги з'єднань між прихованим шаром і входом.

Параметр —коефіцієнт навчання або розмір кроку. Це невелике значення обмежує зміни, які можуть відбутися при кожному кроці. Параметр вибрано так, щоб він показував швидкість просування алгоритму зворотного розповсюдження до вирішення. Вибір звичайно здійснювався експериментально. Тестування починалось з невеликого значення а потім поступово його підвищувати. Коефіцієнт навчання робить значний вплив на швидкість навчання багатошарового персептрона і збіжність рішення. Відносно великі значення забезпечують швидке навчання, але при цьому існує небезпека одержати невірне рішення. Діапазон можливих значень від 0,001 до 10. Окрім цього, конкретні значення, вибрані на початку процесу навчання, можуть виявитися не зовсім відповідними в кінці навчання. Тому, у ряді випадків, змінюють в ході навчання. Один із способів управління значенням полягає в контролі помилки. Якщо корекція вагових зв'язків при виконанні алгоритму приводить до збільшення помилки, то необхідно зменшити. І навпаки, якщо помилка монотонно зменшується, то необхідно збільшити .

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

Лабораторне завдання:

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

Приклад виконання лабораторної роботи №1.

Рис. 18. – Головне вікно програми.

Рис. 19. – Подання результатів роботи програми.

Контрольні питання:

  1. Що таке нейромережа?

  2. Поясніть принцип роботи персептрона.

  3. Що таке навчання персептрона?

  4. Опишіть модель нейрона як пороговий елемент.

  5. Що таке активаційна функція порогового елемента?

  6. У чому полягає основний принцип навчання модельних нейронів?

  7. Які функції, крім порогових, можуть використовуватися як активаційні?

  8. Що таке сигмоїдальна функція? Наведіть приклад.

  9. Опишіть узагальнену дельта-процедуру для сигмоїдальної активаційної функції.

  10. У чому полягають основні принципи використання методу зворот¬ного поширення помилки для навчання нейромереж?

  11. Як визначити апріорну інформацію про навчальну вибірку?

  12. Як впливає задана кількість циклів навчання на точність навчання?

  13. Як впливає задана точність навчання на тривалість навчання?

  14. Які вимоги потрібно висувати до навчальної вибірки, та як це вплине на процес навчання?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]