Нейроны и функции активации. Значения синоптического коэффициента и порога и задавая необходимый тип функции активации, страница 2

Таким образом, процедура обучения сводится к последовательному перебору всех примеров обучающего множества с применением правил обучения для ошибочно решенных примеров. Если после очередного цикла предъявления всех примеров окажется, что все они решены правильно, то процедура обучения завершается.

Рис. 15. демонстрация nnd4pr

Рис. 16.1. демонстрация nnd4pr (обучение)

 Рис. 16.2. демонстрация nnd4pr

(после обучения правый белый кружок передвинули на сторону черного, а затем запустили train)

Демонстрационный пример позволяет пользователю выбирать входные векторы и использовать правило обучения для их классификации. Правило может быть использовано как однократно, так и несколько раз. Также можно устанавливать случайные веса коэффициентов.

[Используемая функция – learnp]

Классификация с использованием персептрона с двумя входами

(Classification with a two-input perceptron, filename: demop1)

Рис. 17. пример персептрона с двумя скалярными входами

[Используемая функция – trains]                         Рис. 18. демонстрация demop1

В чистом виде используется правило обучения персептрона, входные векторы используются отдельно и последовательно, и исправления весов и порогов производятся после каждого представления входного вектора. Если представленная проблема не может быть решена с использованием простого персептрона, обучение персептрона будет производиться функцией train за конечное число шагов. Демонстрация demop1 иллюстрирует классификацию и обучение простого персептрона.

Изолированные входные векторы

(Outlier input vectors, filename: demop4)

Изолированный входной вектор, длинна которого гораздо больше или меньше, чем у остальных векторов, может стать причиной долгого времени обучения. Использование правила обучение персептрона подразумевает прибавление и вычитания входных векторов из коэффициентов или порогов в случае ошибки. Таким образом, входной вектор с большими элементами приведет к изменениям в весах коэффициентов и порогов, которые занимают достаточно долгое время. Демонстрация показывает, как изолированная часть влияет на обучение.

Рис. 19.1. демонстрация demop4

Рис. 19.2. демонстрация demop4, начало обучения

Рис. 19.3. демонстрация demop4

Рис. 19.4. демонстрация demop4

Рис. 19.5. демонстрация demop4, конец обучения

Нормализованное правило персептрона

(Normalized perceptron rule, filename: demop5)

Нормализованное правило персептрона осуществляется функцией learnpn. Для выполнения этой функции требуется несколько большее время, но она значительно сокращает количество эпох, если во входных данных есть изолированный вектор. Демонстрация этого правила приведена ниже.

Рис. 20.1. демонстрация demop5

Рис. 20.2. демонстрация demop5, начало обучения

Рис. 20.3. демонстрация demop5

Рис. 20.4. демонстрация demop5, конец обучения

Линейно неотделимые векторы

(Linearly nonseparable vectors, filename: demop6)

Сети персептронов обучаются функцией adapt, которая представляет входные векторы по одному и вносит исправления по результатам каждого представления. Использование этой функции гарантирует, что любая линейно отделимая проблема будет решена за конечное число шагов. Персептрон также можно обучать с помощью функции train, которая предоставляет входные данные в сеть партиями и делает общие исправления на основе суммы отдельных исправлений. К сожалению, нет доказательства, что подобный алгоритм сходится для персептронов.

Сети персептронов имеют некоторые ограничения. Во-первых, выходные значения персептрона могут быть равными только 0 или 1 из-за жестко ограниченной функции активации. Во-вторых, персептрон может классифицировать только линейно отделимые наборы векторов. Если может быть нарисована прямая или плоскость, разделяющая входные векторы на категории, эти входные векторы являются линейно отделимыми. Если же векторы не являются линейно отделимыми, тогда обучение никогда не завершится должным образом.

Демонстрация показывает сложность попытки классифицировать входные векторы, не являющиеся линейно отделимыми.

Рис. 21.1. демонстрация demop6

Рис. 21.1. демонстрация demop6, попытка обучения 1

Рис. 21.2. демонстрация demop6, попытка обучения 2

Рис. 21.3. демонстрация demop6, попытка обучения 3

Рис. 21.4. демонстрация demop6, попытка обучения 4

Рис. 21.5. демонстрация demop6, попытка обучения 5

Рис. 21.6. демонстрация demop6, попытка обучения 6