Апроксимація функції багатошаровим перцептроном

© 2009 К. В. Махотіло

Опис демонстраційного прикладу

Опис демонстраційного прикладу

У прикладі розглянуто задачу апроксимації тестової функції y=cos(5x) на інтервалі [0,1] за допомогою штучної нейронної мережі типу багатошаровий перцептрон.

У бібліотеці задачі описано тришарову мережу з архітектурою NN 1:10:1 та активаційними функціями нейронів прихованого шару типу гіперболічний тангенс.

Навчання мережі проводиться за 20 точками інтервалу, тестування точності апроксимації та рівня узагальнення – по 100 точках інтервалу.

Опис файлів, що входять до демонстраційного прикладу

  • MLPtestTask.dpr - Вихідний текст бібліотеки завдання Mendel

  • NeuralNetworkD.pas - Модуль нейронних мереж (демонстраційна версія)

  • Task\TaskTester.exe - Програма для тестування результатів навчання нейромережі

  • Task\tasktester.ini - Файл конфігурації програми TaskTester

  • Task\mlptest.txt - Файл результатів тестування нейромережі

  • Task\MLPtestTask.dll - Бібліотека задачі Mendel

  • Task\mlptest.m4t - Приклад здачі Mendel

  • Task\mlptest.m4p - Шаблон задачі Mendel

  • Task\mlptest.rep - Приклад звіту задачі Mendel

Програма тестування результатів навчання нейромережі TaskTester.exe викликає функцію TestNN() з бібліотеки MLPtestTask.dll із параметрами мережі, що містяться у файлі звіту mlptest.rep. В результаті її роботи створюється файл mlptest.txt, що містить значення тестової функції та виходу нейромережі для 100 контрольних точок інтервалу. При зміні імені бібліотеки задачі mlptest.m4t на інше необхідно вказати його у файлі конфігурації tasktester.ini.

Порядок роботи із демонстраційним прикладом

  1. Відкрийте наявну або створіть нову задачу з ім'ям mlptest.m4t.

  2. Запустіть задачу. Дочекайтеся закінчення пошуку рішення.

  3. Згенеруйте звіт. Запустіть програму TaskTester.exe безпосередньо або за допомогою команди меню 'Робота | Виконати:'

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