Нейроемулятор FuzzySearch

Програма призначена для демонстрації можливостей мереж Хемінга в розпізнаванні образів.

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

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

Асоціативна пам'ять - застосування мереж Хемінга для нечіткого пошуку

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

Якщо вдало підібрати систему кодування, можна значно поліпшити якість розпізнавання. Наприклад, для виправлення друкарських помилок варто брати до уваги розташування букв на клавіатурі. Кодування повинно бути розроблено таким чином, щоб літери, які розташовані поруч на клавіатурі мали близькі (за Хемінгом) коди.

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


Порядок роботи

  1. Запустити нейроемулятори.
  2. Уважно ознайомитися з методикою використання нейронної мережі.
  3. Пройти всі кроки тестового завдання і проаналізувати отримані результати.
  4. Сформувати власні дані для навчання.
  5. Пройти всі кроки навчання на нових даних, але приділити більшої уваги налаштуванню параметрів нейроемулятора.
  6. Проаналізувати отримані результати і зробити висновок.

Зміст звіту

  1. Назва та мета виконання лабораторної роботи.
  2. Можливості нейроемуляторів.
  3. Особливості навчання нейронної мережі та вплив налаштувань параметрів на вихідні результати.
  4. Характеристика основних параметрів налаштування.
  5. Аналітичні висновки щодо властивостей програм та отриманих результатів.