模糊神经网络有如下三种形式:
1.逻辑模糊神经网络
2.算术模糊神经网络
3.混合模糊神经网络
模糊神经网络就是具有模糊权系数或者输入信号是模糊量的神经网络。上面三种形式的模糊神经网络中所执行的运算方法不同。
模糊神经网络无论作为逼近器,还是模式存储器,都是需要学习和优化权系数的。学习算法是模糊神经网络优化权系数的关键。对于逻辑模糊神经网络,可采用基于误差的学习算法,也即是监视学习算法。对于算术模糊神经网络,则有模糊BP算法,遗传算法等。对于混合模糊神经网络,目前尚未有合理的算法;不过,混合模糊神经网络一般是用于计算而不是用于学习的,它不必一定学习。
谷歌人工智能写作项目:小发猫
电力负荷预测分为经典预测方法和现代预测方法模糊神经网络的预测算法。 趋势外推法
就是根据负荷的变化趋势对未来负荷情况作出预测。电力负荷虽然具有随机性和不确定性,但在一定条件下,仍存在着明显的变化趋势,例如农业用电,在气候条件变化较小的冬季,日用电量相对稳定,表现为较平稳的变化趋势。这种变化趋势可为线性或非线性,周期性或非周期性等等。
时间序列法
时间序列法是一种最为常见的短期负荷预测方法,它是针对整个观测序列呈现出的某种随机过程的特性,去建立和估计产生实际序列的随机过程的模型,然后用这些模型去进行预测。它利用了电力负荷变动的惯性特征和时间上的延续性,通过对历史数据时间序列的分析处理,确定其基本特征和变化规律,预测未来负荷。
时间序列预测方法可分为确定型和随机性两类,确定型时间序列作为模型残差用于估计预测区间的大小。随机型时间序列预测模型可以看作一个线性滤波器。根据线性滤波器的特性,时间序列可划为自回归(AR)、动平均(MA)、自回归-动平均(ARMA)、累计式自回归-动平均(ARIMA)、传递函数(TF)几类模型,其负荷预测过程一般分为模型识别、模型参数估计、模型检验、负荷预测、精度检验预测值修正5个阶段。
回归分析法
回归分析法就是根据负荷过去的历史资料,建立可以分析的数学模型,对未来的负荷进行预测。利用数理统计中的回归分析方法,通过对变量的观测数据进行分析,确定变量之间的相互关系,从而实现预测。 20世纪80年代后期,一些基于新兴学科理论的现代预测方法逐渐得到了成功应用。这其中主要有灰色数学理论、专家系统方法、神经网络理论、模糊预测理论等。
灰色数学理论
灰色数学理论是把负荷序列看作一真实的系统输出,它是众多影响因子的综合作用结果。这些众多因子的未知性和不确定性,成为系统的灰色特性。灰色系统理论把负荷序列通过生成变换,使其变化为有规律的生成数列再建模,用于负荷预测。
专家系统方法
专家系统方法是对于数据库里存放的过去几年的负荷数据和天气数据等进行细致的分析,汇集有经验的负荷预测人员的知识,提取有关规则。借助专家系统,负荷预测人员能识别预测日所属的类型,考虑天气因素对负荷预测的影响,按照一定的推理进行负荷预测。
神经网络理论
神经网络理论是利用神经网络的学习功能,让计算机学习包含在历史负荷数据中的映射关系,再利用这种映射关系预测未来负荷。由于该方法具有很强的鲁棒性、记忆能力、非线性映射能力以及强大的自学习能力,因此有很大的应用市场,但其缺点是学习收敛速度慢,可能收敛到局部最小点;并且知识表达困难,难以充分利用调度人员经验中存在的模糊知识。
模糊负荷预测
模糊负荷预测是近几年比较热门的研究方向。
模糊控制是在所采用的控制方法上应用了模糊数学理论,使其进行确定性的工作,对一些无法构造数学模型的被控过程进行有效控制。模糊系统不管其是如何进行计算的,从输入输出的角度讲它是一个非线性函数。模糊系统对于任意一个非线性连续函数,就是找出一类隶属函数,一种推理规则,一个解模糊方法,使得设计出的模糊系统能够任意逼近这个非线性函数。 (1)表格查寻法:
表格法是一种相对简单明了的算法。这个方法的基本思想是从已知输入--输出数据对中产生模糊规则,形成一个模糊规则库,最终的模糊逻辑系统将从组合模糊规则库中产生。
这是一种简单易行的易于理解的算法,因为它是个顺序生成过程,无需反复学习,因此,这个方法同样具有模糊系统优于神经网络系统的一大优点,即构造起来既简单又快速。
(2)基于神经网络集成的高木-关野模糊预测算法:
它是利用神经网络来求得条件部输入变量的联合隶属函数。结论部的函数f(X)也可以用神经网络来表示。神经网络均采用前向型的BP网络。
(3)改进的模糊神经网络模型的算法:
模糊神经网络即全局逼近器。模糊系统与神经网络似乎有着天然的联系,模糊神经网络在本质上是模糊系统的实现,就是将常规的神经网络(如前向反馈神经网络,HoPfield神经网络)赋予模糊输入信号和模糊权。
对于复杂的系统建模,已经有了许多方法,并已取得良好的应用效果。但主要缺点是模型精度不高,训练时间太长。此种方法的模型物理意义明显,精度高,收敛快,属于改进型算法。
(4)反向传播学习算法:
模糊逻辑系统应用主要在于它能够作为非线性系统的模型,包括含有人工操作员的非线性系统的模型。因此,从函数逼近意义上考虑,研究模糊逻辑系统的非线性映射能力显得非常重要。函数逼近就是模糊逻辑系统可以在任意精度上,一致逼近任何定义在一个致密集上的非线性函数,其优势在于它有能够系统而有效地利用语言信息的能力。万能逼近定理表明一定存在这样一个可以在任意精度逼近任意给定函数的高斯型模糊逻辑系统。反向传播BP学习算法用来确定高斯型模糊逻辑系统的参数,经过辨识的模型能够很好的逼近真实系统,进而达到提高预测精度的目的。
您好,是这样的:
经过训练后的参数比较差,用原数据输入训练好的网络,得出结果和要的结果误差很大,不明白是怎么回事?
还有要是多输入多输出这段程序该怎么改?模糊神经网络可以用matlab工具箱实现吗?
还有输入数据差别比较大(就是大小差异大)是不是要进行归一化再学习训练呢?
求解,求解答!
对于你的帮助不胜感激!
clear all
clc
close all
tic,
%[x,y]=data;
x=[1 2 3 4 5 6 7 8;
-1 -2 -3 -4 -5 -6 -7 -8];
y=[2 3 4 5 6 7 8 9]; %%%%%--数据显示,输入为-两输入,输出为-单输出。--------样本为p2组
[p1,p2]=size(x);
% 隶属度函数个数
k=7;
% 初始化四个隶属度函数的参数A,B及输出层初始权值W
for i=1:p1;
for j=1:k;
m(i,j)=1+0.6*rand(1);
b(i,j)=1+0.6*rand(1);
end
end
for j=1:k*k;
w(j)=1+rand(1);
end
%%%---推理计算输出值
for q=1:p2;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%-----用同一隶属度参数对 输入样本 X 累计计算
% 选用高斯函数作为隶属度,求隶属度,共 size(x,2)+k 个。x(1) K个,x(2) K个
for i=1:p1;
for j=1:k;
u(i,j)=gaussmf(x(i,q),[m(i,j),b(i,j)]);
end
end
% 模糊推理计算:a21,a22.几个隶属度函数,得出几个值,此处已知输入为2
%%%%----由以前的取小做法改为相乘—prod(x,1) or prod(x,2)———
v=[];
for i=1:k
for j=1:k
v=[v,u(1,i)*u(2,j)];
end
end
% 归一化计算模糊推理的值;相当于已经除去了经典去模糊输出的分母值
for i=1:length(v);
v1(i)=v(i)/sum(v);
end
% 系统输出
% out1(q)=w*v';
% e(q)=(y(q)-out1(q));
% end
% out=out1
out1(q)=w*v1';
e(q)=y(q)-out1(q);
end
out=out1;
%- 三。参数修正过程。 增加方式,非批处理方式迭代
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%-----------------------------误差反向传播过程--------------------------------------------
% 取误差函数:E=(1/2)*sumsqr(t-y)
E=(1/2)*sumsqr(y-out);
EE=E;
% e=sum(y-out)
lr=0.3; % c2=zeros(2,2);
%%%%----------------------------------------误差反传后的参数修正过程-------------------
r=1; %
p=1;
s=1000; %
% e(r)=y(r)-out(r);
while p<=s & EE>0.05
%%%%%%%%%%%%%_____隶属度参数 M. B 输出层权值参数 W 的修正过程_____%%%%%%%%%%%%
%%1.--W
wc=zeros(1,k*k);
for i=1:k*k;
wc(i)=-lr*e(r)*v1(i);
end
%%2.--M
mc=zeros(p1,k);
for i=1:p1;
for j=1:k;
mc(i,j)=2*lr*e(r) * w(j) * (v(j)/u(i,j)) * exp(-((x(i,r)-m(i,j)).^2)/(b(i,j).^2))* (x(i,r)-m(i,j))/(b(i,j).^2);
end
end
%%3.--B
bc=zeros(p1,k);
for i=1:p1;
for j=1:k;
bc(i,j)=2*lr*e(r)* w(j) * (v(j)/u(i,j)) * exp(-((x(i,r)-m(i,j)).^2)/(b(i,j).^2)) * ((x(i,r)-m(i,j)).^2)/(b(i,j).^3);
end
end
% 4.参数修正 m b w
m=m-mc;
b=b-bc;
w=w-wc;
%%%%%%%%%%%_______利用修正后的参数重新计算_____________%%%%%%%%%%%%%%%%%%%%%
% 5.利用修正过的参数重新计算输出
for q=1:p2;
for i=1:p1;
for j=1:k;
u(i,j)=gaussmf(x(i,q),[m(i,j),b(i,j)]);
end
end
v=[];
for i=1:7
for j=1:7
v=[v,u(1,i)*u(2,j)];
end
end
% 归一化计算模糊推理的值;相当于已经除去了经典去模糊输出的分母值
for i=1:length(v)
v1(i)=v(i)/sum(v);
end
out1(q)=w*v1';
end
out=out1;
p=p+1;
EE=(1/2)*sumsqr(y-out);
E(p)=EE;
r=r+1;
if r>p2
r=1;
end
e(r)=(y(r)-out(r));
end
%%%%%%%%%%%%%%%%%%%________________当误差或迭代步数满足要求后得到结果_________________%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
m,b,w,E_out=EE,e
epoch=1:size(E,2);
figure
plot(epoch,E,'-r');
% plot(epoch,out(1),'b');
% axis([0 1.5*s min(E) max(E)]);
% set(gca,'fontsize',8);
% set(gca,'xtick',0:s/10:1.5*s);
%set(gca,'ytick',1e-30:1e5:1e5);
%set(gcf,'color','b')
title('误差变化曲线');xlabel('步数');ylabel('误差');
toc
%% %% 泛化过程
异构网络中无线资源管理的一个重要研究方向就是网络选择算法,网络选择算法的研究很广泛,这里给出了几个典型的无线网络选择算法的类别。 预切换可以有效的减少不必要的切换,并为是否需要执行切换做好准备。通常情况下可以通过当前接收信号强度来预测将来接收信号强度的变化趋势,来判断是否需要执行切换。
文献 中利用多项式回归算法对接收信号的强度进行预测,这种方法的计算复杂度较大。文献 中,利用模糊神经网络来对接收信号强度进行预测,模糊神经网络的算法最大的问题,收敛较慢,而且计算的复杂度高。文献 中,利用的是最小二乘算法(LMS)来预测接收的信号强度,通过迭代的方法,能够达到快收敛,得到较好的预测。还有在文献 中,直接采用接收信号强度的斜率来预测接收信号强度,用来估计终端在该网络中的生存时间,但是这种方法太简单,精度不是很高。 在垂直切换的过程中,对于相同的切换场景,通常会出现现在的已出现过的切换条件,对于其垂直切换的结果,可以应用到当前条件下,这样可以有效避免的重新执行切换决策所带来的时延。
文献[33]中,提出利用用户连接信息(User Connection Profile,UCP)数据库用来存储以前的网络选择事件。在终端需要执行垂直切换时,首先检查数据库中是否存在相同的网络选择记录,如果存在可以直接接入最合适的网络。在文献[34]中,提出了将切换到该网络的持续服务时间和距离该网络的最后一次阻塞时间间隔作为历史信息记录下来,根据这些信息,选择是否有必要进行切换。 由于用户对网络参数的判断往往是模糊的,而不是确切的概念,所以通常采用模糊逻辑对参数进行定量分析,将其应用到网络选择中显得更加合理。模糊系统组成通常有3个部分组成,分别是模糊化、模糊推理和去模糊化。对于去模糊化的方法通常采用中心平均去模糊化,最后得到网络性能的评价值,根据模糊系统所输出的结果,选择最适合的网络。
通常情况下,模糊逻辑与神经网络是相互结合起来应用的,通过模糊逻辑系统的推理规则,对神经网络进行训练,得到训练好的神经网络。在垂直切换的判决的时候,利用训练好的神经网络,输入相应网络的属性参数,选择最适合的网络接入。
基于模糊逻辑和神经网络的策略,可以对多种因素(尤其动态因素)进行动态地控制,并做出自适应的决策,可以有效提高网络选择的合理性,但该策略最大的缺点是,算法的实现较为复杂,在电池容量和处理能力均受限的移动设备上是不合适的。 在异构网络选择中,博弈论是一个重要的研究方向。在博弈论的模型中,博弈中的参与者在追求自身利益最大化的同时,保证自身付出的代价尽量小。参与者的这两种策略可以通过效用函数和代价函数来衡量。因此通过最大化效用函数和最小化代价函数,来追求利益的最大化。
文献[36]中提出一种基于博弈论的定价策略和网络选择方案,该方案中服务提供商(Service Providers,SPs)为了提高自己的利润需要面临竞争,它是通过用户间的合作或者非合作博弈来获得,在实际的异构网络场景下,用户和服务提供商SPs之间可以利用博弈模型来表示。Dusit Niyato在文献[37]中,通过竞价机制来进行异构网络资源的管理,这里将业务分成两种类型,一种是基本业务,另一种类似高质量业务,基本业务的价格是固定的,而高质量业务的价格是动态变化的,它是随着服务提供商的竞争和合作而变化的。因此这里从合作博弈和非合作博弈两方面来讨论定价机制。Dusit Niyato在文献[38]中基于进化博弈理论,来解决在带宽受限情况下,用户如何在重叠区域进行网络选择。 网络选择的目标通常是通过合理分配无线资源来最大化系统的吞吐量,或者最小化接入阻塞概率等,这样就会涉及网络优化问题。
网络选择算法往往是一种多目标决策,用户希望得到好的服务质量、价格便宜的网络、低的电池功率消耗等。对于多目标决策算法,通常是不可能使得每个目标同时达到最优,通常的有三种做法:其一,把一些目标函数转化为限制条件,从而减少目标函数数目;其二,将不同的目标函数规范化后,将规范化后的目标函数相加,得到一个目标函数,这样就可以利用最优化的方法,得到最优问题的解;其三,将两者结合起来使用。例如文献[39]中,采用的是让系统的带宽受限,最大化网络内的所有用户的手机使用时间,即将部分目标函数转化为限制条件。文献[40]中,采用的是让用户的使用的费用受限,最大化用户的利益和最小化用户的代价,这里采用的是上面介绍的第三种方法。 基于策略的网络选择指的是按照预先规定好的策略进行相应的网络操作。在网络选择中,通常需要考虑网络负荷、终端的移动性和业务特性等因素。如对于车载用户通常选择覆盖范围大的无线网络,如WCDMA、WiMAX等;对于实时性要求不高的业务,并且非车载用户通常选择WLAN接入。这些均是通过策略来进行网络选择。
文献[41, 42]提出了基于业务类型的网络选择算法,根据用户的业务类型为用户选择合适的网络。文献[35]提出基于负载均衡的网络选择算法,用户选择接入或切换到最小负载因子的网络。[43]提出了一种考虑用户移动性和业务类型的网络选择算法。 多属性判决策略(Multiple Attribute Decision Making,MADM)是目前垂直切换方面研究最多的领域。多属性判决策略主要分为基于代价函数的方法和其他方法。
基于代价函数的方法
代价函数一般有两种构造形式,一种是多属性参数值的线性组合,如(2.1)式所示;另一种是多属性参数值的权重指数乘积或者是属性参数值的对数线性组合,如(2.2)式所示。
(2.1)
(2.2)
其中代表规范化的第个网络的第个属性值,代表第个属性的权值。对于属性的规范化,首先对属性进行分类,分为效益型、成本型等,然后根据不同的类型的,对参数进行归一化,采用最多的是线性规范化、极差规范化和向量变换法。关于权值的确定可以分为简单赋权法(Simple Additive Weighting,SAW)、层次分析法(Analytic Hierarchy Process,AHP)、熵权法、基于方差和均值赋权法。
(1) SAW:用户根据自己的偏好,确定每个属性的重要性,通常给出每个参数取值的具体参数值。
(2) AHP:首先分析评价系统中各要素之间关系,建立递阶层次结构;其次对同一层次的各要素之间的重要性进行两两比较,构造判断矩阵;接着由每层判断矩阵计算相对权重;最后计算系统总目标的合成总权重。
(3) 熵权法:通过求解候选网络中的同一属性的熵值,熵值的大小表明网络同一属性的参数值的差异,差别越大,说明该属性对决策影响越大,相应权值的取值就越大。
(4) 基于方差和均值赋权法:通过求解候选网络中同一属性参数的均值和方差,结合这两个参数确定该属性的重要性程度值,然后再对其进行归一化,得到每个属性的参数值。
其他方法
(1) 基于方差和均值赋权法:通过求解候选网络中同一属性参数的均值和方差,结合这两个参数确定该属性的重要性程度值,然后再对其进行归一化,得到每个属性的参数值。
(2) 逼近理想解排序法(TOPSIS):首先对参数进行归一化,从网络的每组属性参数值里选择最好的参数组成最优的一组属性参数,同样也可以得到最差的一组属性参数。将每个网络与这两组参数比较,距离最优参数组越近,并且与最差组越远,该网络为最合适的网络。
(3) 灰度关联分析法(GRA):首先对参数进行归一化,再利用GRA方法,求得每个网络的每个属性的关联系数,然后求出每个网络总的关联系数。根据每个网络总的关联系数,选择最适合的网络。
(4) 消去和选择转换法(ELECTRE):首先对参数进行归一化,构造加权的规范化矩阵,确定属性一致集和不一致集。然后计算一致指数矩阵和劣势矩阵,最后得到一致指数矩阵和不一致指数矩阵。根据这两个矩阵,确定网络的优劣关系,选择最适合的网络。
VIKOR:首先对参数进行归一化,首先确定最优和最差属性参数组,然后计算得到每个网络属性的加权和属性中最大的参数值,然后利用极差规范化对网络的加权和以及最大属性值进行归一化,最后利用归一化的参数进行加权求和,依据这个值,选择最合适的网络。
yolo算法是一种目标检测算法。目标检测任务的目标是找到图像中的所有感兴趣区域,并确定这些区域的位置和类别概率。目标检测领域的深度学习方法主要分为两大类两阶段式(Two-stage)目标检测算法和单阶段式(One-stage)目标检测算法。两阶段式是先由算法生成一系列候选边界框作为样本,然后再通过卷积神经网络分类这些样本。
yolo算法原理
因为它采用深层卷积神经网络,吸收了当前很多经典卷积神经网络架构的优秀思想,在位置检测和对象的识别方面,性能达到最优(准确率非常高的情况下还能达到实时检测)。因为作者还将代码开源了。真心为作者这种大公无私的心胸点赞。
美中不足的是虽然将代码开源,但是在论文介绍架构原理的时候比较模糊,特别是对一些重要改进,基本上是一笔带过。现在在网络上有很多关于YOLO原理的讲解。