Дизайн обобщенной регрессионной нейронной сети
net = newgrnn(P,T,spread)
Обобщенные регрессионные нейронные сети (grnns) являются своего рода радиальной базовой сетью, которая часто используется для аппроксимации функции. grnns может быть разработан очень быстро.
net = newgrnn(P,T,spread) принимает три входа,
P |
|
T |
|
spread | Разброс радиальных базисных функций (по умолчанию = 1,0) |
и возвращает новую обобщенную регрессионную нейронную сеть.
Чем больше spread, чем плавнее аппроксимация функции. Чтобы подобрать данные очень близко, используйте spread меньше, чем типичное расстояние между входными векторами. Для более плавной подгонки данных используйте больший spread.
newgrnn создает двухуровневую сеть. Первый слой имеет radbas нейронов и вычисляет взвешенные входные данные с помощью dist и чистый вход с netprod. Второй слой имеет purelin нейронов, вычисляет взвешенный ввод с помощью normprodи сетевые входы с netsum. Только первый слой имеет смещения.
newgrnn устанавливает вес первого слоя равным P', и все смещения первого слоя установлены в 0.8326/spread, что приводит к радиальным базисным функциям, пересекающим 0,5 на взвешенных входах +/- spread. Вес второго слоя W2 имеют значение T.
Здесь проектируется радиальная базовая сеть с заданными входами P и целевые показатели T.
P = [1 2 3]; T = [2.0 4.1 5.9]; net = newgrnn(P,T);
Сеть моделируется для нового входа.
P = 1.5; Y = sim(net,P)
Вассерман, P.D., Передовые методы нейронных вычислений, Нью-Йорк, Ван Ностранд Райнхольд, 1993, стр. 155-61