神经网络控制方法:原理、应用与实践
1. 误差加权与神经网络训练
在神经网络训练中,误差加权是一种重要的技术,它允许我们对每个平方误差进行单独加权。误差加权对象需要与目标数据具有相同的维度,这样就可以根据时间步长、样本数量、信号数量或元素数量对误差进行加权。
以下是一个对时间序列末尾的误差比开头的误差赋予更大权重的示例代码:
y = laser_dataset;
y = y(1:600);
ind = 1:600;
ew = 0.99.^(600-ind);
figure;plot(ew)
ew = con2seq(ew);
ftdnn_net = timedelaynet([1:8],10);
ftdnn_net.trainParam.epochs = 1000;
ftdnn_net.divideFcn = '';
[p,Pi,Ai,t,ew1] = preparets(ftdnn_net,y,y,{},ew);
[ftdnn_net1,tr] = train(ftdnn_net,p,t,Pi,Ai,ew1);
在这个示例中,训练数据有 600 个时间步长,误差采用指数加权,最后一个平方误差的权重为 1,第一个时间步长的平方误差权重为 0.0024。与未进行指数加权训练的网络响应相比,序列后期的误差更小,因为后期误差对加权性能指标的贡献更大。
2. 控制系统概述
神经网络在动态系统的识别和控制中得到了成功应用。多层感知器的通用逼近能力使其成为建模非线性系统和实现通用非线性控制器的热门选择。常见的用于预测和控制的神经网络架构有以下三种:
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



