Интерфейс пользователя
Главное окно программы (рис. 3) содержит панель для рисования и 4 кнопки («Определить фигуру», «Очистить», «Обучить», «Выход») .
Рис. 3. Главное окно программы При первом запуске программы персептрон еще не обучен и будет выдавать случайный результат. Например, изобразим на панели рисования треугольник рис. 4.
Рис. 4. При нажатии на кнопку «Определить фигуру» выдается сообщение
Нажимаем кнопку «Обучить», при нажатии которой пересчитываются веса
Таким образом при длительном обучении программа перестанет ошибаться и будет выдавать только правильные сообщения.
Реализация Функции программы: void fastcall TForm 1:: FormCreate ( TObject * Sender ) - функция создает форму и заполняет матрицу весов void fastcall TForm 1:: BitBtn 1 Click ( TObject * Sender ) - при нажатии кнопки «Определить фигуру» эта функция обнуляет входную матрицу y= void fastcall TForm 1:: BitBtn 2 Click ( TObject * Sender ) - при нажатии кнопки «Обучить» эта функция пересчитывает матрицу весов по формуле
где Если y=1 то Исходный код программы находится в Приложении 1. [1-2] Заключение В результате работы были рассмотрены некоторые основы теории искусственных нейронных сетей. Был изучен и реализован алгоритм обучения персептрона. Разработано приложение с функционалом, описанным в разделе «Постановка задачи». Имеется возможность определения фигуры нарисованной пользователем. Для развития программы необходимо добавить такие функции как: · Масштабирование изображения · Увеличение количества фигур для распознавания путем увеличения нейронов в сети · Распознавание букв, цифр симфолов Приложение 1- Исходные коды программы Модуль Unit 1. cpp //--------------------------------------------------------------------------- #include <iostream.h> #include <time.h> #include <stdlib.h> #include <vcl.h> #pragma hdrstop #include "Unit1.h" //---------------------------------------------------------------------------
Перейти на страницу: 1 2
|