Классификация векторов пример


Классификация входных векторов. Создать нейронную сеть в виде персептрона, который разделяет векторы входа на два класса. Обозначим эти классы как 0 и 1. Обучающую последовательность сформируем в виде двух массивов ячеек: массива входов Р = {[2; 2] [1; 2] [–2; 2] [–1; 1] [1; –2]} и массива целей Т = {0 0 1 1 1}, который задает принадлежность каждого вектора входа к определенному классу. Выполним эту операцию в рабочей области системы MATLAB, а затем импортируем их в рабочую область интерфейса NNTool.

Зададим персептрон с одним нейроном, функцией активации HARDLIM и правилом настройки LEARNP. Для этого из списка нейронных сетей выберем тип сети Perceptron (рис. 1.27) и зададим требуемые параметры.

тип сети Perceptron

Рис. 1.27

Чтобы увидеть структурную схему сети, воспользуемся кнопкой View (рис. 1.28).

структурная схема сети

Рис. 1.28

Теперь выполним инициализацию сети, используя закладку Initialize, а затем адаптацию и настройку параметров сети, используя закладку Adapt окна Network. Для этого следует указать имена входа и цели, а также задать количество циклов адаптации (в данном случае достаточно трех циклов) и нажать кнопку Adapt Network.

В результате настройки будут установлены следующие значения весов и смещений, которые можно увидеть, выбрав закладку Weights. Для данной сети вектор весов равен IW{1, 1} = [–3 –2], а смещение b{1} = 1. Таким образом, линия переключения, разделяющая плоскость на 2 области, описывается следующим образом:

L: –3p1 – 2p2 + 1 = 0.

Перейдя в окно Network/Data Manager, можно просмотреть значения сигналов
на выходе и ошибку сети (рис. 1.29, а и б соответственно). Нетрудно убедиться, что на обучающей последовательности сеть обучена точно классифицировать входные векторы.

выходные значения

Рис. 1.29 а

выходные ошибки

Рис. 1.29 б

Поэтому из выше всего сказанного можно сделать вывод, что вам необходимо просмотреть много дополнительной информации и альтернатив!


Добавить комментарий


Защитный код
Обновить

Сайт создан в Seo-Dubna.ru