BP神经网络算法的C语言实现代码.doc

BP神经网络算法的C语言实现代码.doc

ID:49689203

大小:39.00 KB

页数:6页

时间:2020-03-03

BP神经网络算法的C语言实现代码.doc_第1页
BP神经网络算法的C语言实现代码.doc_第2页
BP神经网络算法的C语言实现代码.doc_第3页
BP神经网络算法的C语言实现代码.doc_第4页
BP神经网络算法的C语言实现代码.doc_第5页
资源描述:

《BP神经网络算法的C语言实现代码.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、//BP神经网络算法,c语言版本//VS2010下,无语法错误,可直接运行//添加了简单注释//欢迎学习交流#include#include#include#include#defineN_Out2//输出向量维数#defineN_In3//输入向量维数#defineN_Sample6//样本数量//BP人工神经网络typedefstruct{intLayerNum;//中间层数量doublev[N_In][50];//中间层权矩阵i,中间

2、层节点最大数量为50doublew[50][N_Out];//输出层权矩阵doubleStudyRate;//学习率doubleAccuracy;//精度控制参数intMaxLoop;//最大循环次数}BPNet;//Sigmoid函数doublefnet(doublenet){return1/(1+exp(-net));}//初始化intInitBpNet(BPNet*BP);//训练BP网络,样本为x,理想输出为yintTrainBpNet(BPNet*BP,doublex[N_Sample][N_In],inty[N_Sample][N_Out]);//使用

3、BP网络intUseBpNet(BPNet*BP);//主函数intmain(){//训练样本doublex[N_Sample][N_In]={{0.8,0.5,0},{0.9,0.7,0.3},{1,0.8,0.5},{0,0.2,0.3},{0.2,0.1,1.3},{0.2,0.7,0.8}};//理想输出inty[N_Sample][N_Out]={{0,1},{0,1},{0,1},{1,1},{1,0},{1,0}};BPNetBP;InitBpNet(&BP);//初始化BP网络结构TrainBpNet(&BP,x,y);//训练BP神经网络UseB

4、pNet(&BP);//测试BP神经网络return1;}//使用BP网络intUseBpNet(BPNet*BP){doubleInput[N_In];doubleOut1[50];doubleOut2[N_Out];//Out1为中间层输出,Out2为输出层输出//持续执行,除非中断程序while(1){printf("请输入3个数:");inti,j;for(i=0;i

5、;j++)Tmp+=Input[j]*(*BP).v[j][i];Out1[i]=fnet(Tmp);}for(i=0;i

6、N_Sample][N_In],inty[N_Sample][N_Out]){doublef=(*BP).Accuracy;//精度控制参数doublea=(*BP).StudyRate;//学习率intLayerNum=(*BP).LayerNum;//中间层节点数doublev[N_In][50],w[50][N_Out];//权矩阵doubleChgH[50],ChgO[N_Out];//修改量矩阵doubleOut1[50],Out2[N_Out];//中间层和输出层输出量intMaxLoop=(*BP).MaxLoop;//最大循环次数inti,j,k,

7、n;doubleTmp;for(i=0;if&&n

8、In;j+

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。