Учебное пособие по курсу «Нейроинформатика» | страница 47
Выборочная оценка константы Липшица и оценка константы Липшица нейронной сети позволяют легко оценить способность нейронной сети решить поставленную задачу. Эти легко реализуемые процедуры позволяют сэкономить время и силы.
Правильно выбранная предобработка упрощает нейросетевую задачу.
Нейрон
Нейроны, используемые в большинстве нейронных сетей, имеют структуру, приведенную на рис. 1. На рис. 1 использованы следующие обозначения:
x — вектор входных сигналов нейрона;
α — вектор синаптических весов нейрона;
Σ — входной сумматор нейрона;
p = (α,x) — выходной сигнал входного сумматора;
σ — функциональный преобразователь;
y — выходной сигнал нейрона.
Обычно нейронные сети называют по виду функции σ(p). Хорошо известны и наиболее часто используются два вида сигмоидных сетей:
S>1: σ(p) = 1/(1+exp(-cp)),
S>2: σ(p) = p/(c+|p|),
где c — параметр, называемый «характеристикой нейрона». Обе функции имеют похожие графики.
Каждому типу нейрона соответствует свой интервал приемлемых входных данных. Как правило, этот диапазон либо совпадает с диапазоном выдаваемых выходных сигналов (например для сигмоидных нейронов с функцией S>1), либо является объединением диапазона выдаваемых выходных сигналов и отрезка, симметричного ему относительно нуля (например, для сигмоидных нейронов с функцией S>2), Этот диапазон будем обозначать как [a,b]
Различимость входных данных
Очевидно, что входные данные должны быть различимы. В данном разделе будут приведены соображения, исходя из которых, следует выбирать диапазон входных данных. Пусть одним из входных параметров нейронной сети является температура в градусах Кельвина. Если речь идет о температурах близких к нормальной, то входные сигналы изменяются от 250 до 300 градусов. Пусть сигнал подается прямо на нейрон (синаптический вес равен единице). Выходные сигналы нейронов с различными параметрами приведены в табл. 1.
Таблица 1
Входной сигнал | Нейрон типа S>1 | Нейрон типа S>2 | ||||||
---|---|---|---|---|---|---|---|---|
c=0.1 | c=0.5 | c=1 | c=2 | c=0.1 | c=0.5 | c=1 | c=2 | |
250 | 1.0 | 1.0 | 1.0 | 1.0 | 0.99960 | 0.99800 | 0.99602 | 0.99206 |
275 | 1.0 | 1.0 | 1.0 | 1.0 | 0.99964 | 0.99819 | 0.99638 | 0.99278 |
300 | 1.0 | 1.0 | 1.0 | 1.0 | 0.99967 | 0.99834 | 0.99668 | 0.99338 |
Совершенно очевидно, что нейронная сеть просто неспособна научиться надежно различать эти сигналы (если вообще способна научиться их различать!). Если использовать нейроны с входными синапсами, не равными единице, то нейронная сеть сможет отмасштабировать входные сигналы так, чтобы они стали различимы, но при этом будет задействована только часть диапазона приемлемых входных данных — все входные сигналы будут иметь один знак. Кроме того, все подаваемые сигналы будут занимать лишь малую часть этого диапазона. Например, если мы отмасштабируем температуры так, чтобы 300 соответствовала величина суммарного входного сигнала равная 1 (величина входного синапса равна 1/300), то реально подаваемые сигналы займут лишь одну шестую часть интервала [0,1] и одну двенадцатую интервала [-1,1]. Получаемые при этом при этом величины выходных сигналов нейронов приведены в табл. 2.