m基于神经网络的气候预测matlab仿真,气候数据采用的BoM气候数据,神经网络为matlab编程实现不使用工具箱函数

简介: m基于神经网络的气候预测matlab仿真,气候数据采用的BoM气候数据,神经网络为matlab编程实现不使用工具箱函数

1.算法描述

    人工神经网络(Artificial Neural Networks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。

    生物神经网络主要是指人脑的神经网络,它是人工神经网络的技术原型。人脑是人类思维的物质基础,思维的功能定位在大脑皮层,后者含有大约10^11个神经元,每个神经元又通过神经突触与大约103个其它神经元相连,形成一个高度复杂高度灵活的动态网络。作为一门学科,生物神经网络主要研究人脑神经网络的结构、功能及其工作机制,意在探索人脑思维和智能活动的规律。

   人工神经网络是生物神经网络在某种简化意义下的技术复现,作为一门学科,它的主要任务是根据生物神经网络的原理和实际应用的需要建造实用的人工神经网络模型,设计相应的学习算法,模拟人脑的某种智能活动,然后在技术上实现出来用以解决实际问题。因此,生物神经网络主要研究智能的机理;人工神经网络主要研究智能机理的实现,两者相辅相成。

image.png

   神经网络的输入层的每一个节点代表的是一个对象的其中的一个特征,这个些特征可以用一个矩阵x表示,因为这是我们人类看的懂的东西,所以要转换成计算机看的懂的东西。使用函数进行计算,w是权重,b是偏置。神经网络 

   y=w1x+b1

   其中输如层有3个节点是一个1x3的矩阵,对应的隐藏是一个1x4的矩阵,则要乘以w1是一个3x4的矩阵,b是一个1x4的矩阵。
   其中神经网络还需要一个激活函数,常用的有的sigmoid,relu,tanh,因为神经网络对应的是一个线性化的函数,我们有的时候要解决非线性化的问题,所以引入激活函数,解决线性模型不能解决的问题。

func_data_process.m

这个函数,主要功能就是识别数据中的数据,然后分别统计出每年的数据,每个月的数据以及每天的数据。

func_NN_prediction.m

这个函数,是利用训练得到的神经网络进行预测的函数,其主要功能就是将测试数据输入,输出预测数据。

func_NN_train.m

这个函数,是神经网络训练函数,通过对测试数据集和目标测试集进行训练,得到一个神经网络,其中所涉及的非线性函数为:

image.png

main_func.m

这个函数就是对数据处理,神经网络训练,神经网络测试三个主要函数进行调用,实

NN_parameter_define.m

 神经网络的一些参数定义;

2.仿真效果预览
matlab2022a仿真结果如下:

image.png
image.png
image.png
image.png
image.png
image.png

3.MATLAB核心程序

NN_parameter_define;
 
%网络训练
%循环开始,进化网络
for Iter=1:Iteration_times
    Iter
    %对输入的每个数据进行处理
    for k=1:length(Data_IN)    
        In = Data_IN(k);
        %输出层结算
        for i=1:Num_node_IN
            for j=1:Num_node_HIDE
                %定义非线性函数
                u(i,j) = exp(-(In(i)-nodec(j,i))^2/nodeb(j,i));
            end
        end
        W    = u(1,:); 
        Ws   = sum(W);
        for i=1:Num_node_HIDE
            HIDE_data(i) = Iter_b(i) + Iter_b2(i) * In;
        end
        HIDE_W  = HIDE_data*W';
        %网络预测计算
        OUT(k)  = HIDE_W/Ws;
        ERR(k)  = Data_OUT(k)-OUT(k); 
        P_point = zeros(Num_node_HIDE,1);
        P_point = COFF_1 * ERR(k) * W ./ Ws;
        P_point = P_point';
 
        B_point = zeros(Num_node_HIDE,Num_node_IN);
        for i=1:Num_node_HIDE
            for j=1:Num_node_IN
                B_point(i,j) =     COFF_1 * ERR(k) * ( HIDE_data(i) * Ws - HIDE_W ) * ( In(j) - nodec(i,j) )^2 * W(i) / (nodeb(i,j)^2 * Ws^2);
            end
        end  
 
        B_point = zeros(Num_node_HIDE,Num_node_IN);
        for i=1:Num_node_HIDE
            for j=1:Num_node_IN
                C_point(i,j) = 2 * COFF_1 * ERR(k) * ( HIDE_data(i) * Ws - HIDE_W ) * ( In(j) - nodec(i,j) )   * W(i) / (nodeb(i,j) * Ws^2);
            end
        end
相关文章
|
2天前
|
机器学习/深度学习 人工智能 算法
基于DCT和扩频的音频水印嵌入提取算法matlab仿真
本文介绍了结合DCT和扩频技术的音频水印算法,用于在不降低音质的情况下嵌入版权信息。在matlab2022a中实现,算法利用DCT进行频域处理,通过扩频增强水印的隐蔽性和抗攻击性。核心程序展示了水印的嵌入与提取过程,包括DCT变换、水印扩频及反变换步骤。该方法有效且专业,未来研究将侧重于提高实用性和安全性。
|
1天前
|
机器学习/深度学习 算法 数据挖掘
基于PSO优化的CNN-LSTM-Attention的时间序列回归预测matlab仿真
该文档介绍了使用MATLAB2022A中PSO优化算法提升时间序列预测模型性能的过程。PSO优化前后对比显示了优化效果。算法基于CNN、LSTM和Attention机制构建CNN-LSTM-Attention模型,利用PSO调整模型超参数。代码示例展示了PSO的迭代优化过程及训练、预测和误差分析环节。最终,模型的预测结果以图形形式展示,并保存了相关数据。
|
6天前
|
机器学习/深度学习 数据可视化 网络架构
matlab使用长短期记忆(LSTM)神经网络对序列数据进行分类
matlab使用长短期记忆(LSTM)神经网络对序列数据进行分类
12 0
|
9天前
|
机器学习/深度学习 算法
【MATLAB】GA_ELM神经网络时序预测算法
【MATLAB】GA_ELM神经网络时序预测算法
282 9
|
22天前
雷达模糊函数及MATLAB仿真(三)
雷达模糊函数及MATLAB仿真
15 0
|
2月前
|
机器学习/深度学习 算法 PyTorch
python手把手搭建图像多分类神经网络-代码教程(手动搭建残差网络、mobileNET)
python手把手搭建图像多分类神经网络-代码教程(手动搭建残差网络、mobileNET)
46 0
|
6月前
|
机器学习/深度学习 监控 算法
【tensorflow】连续输入的神经网络模型训练代码
【tensorflow】连续输入的神经网络模型训练代码
|
6月前
|
机器学习/深度学习 存储 自然语言处理
|
2月前
|
机器学习/深度学习 存储 算法
【轻量化:实操】动手实现神经网络中的裁枝操作(附演示代码&yolo系列)
【轻量化:实操】动手实现神经网络中的裁枝操作(附演示代码&yolo系列)
40 1
|
3月前
|
机器学习/深度学习 自然语言处理 PyTorch
深入理解循环神经网络(RNN):案例和代码详解
深入理解循环神经网络(RNN):案例和代码详解
185 0

热门文章

最新文章