蚂蚁文库
换一换
首页 蚂蚁文库 > 资源分类 > PDF文档下载
 

神经网络一个简单实例

  • 资源ID:55685373       资源大小:316.79KB        全文页数:6页
  • 资源格式: PDF        下载权限:游客/注册会员    下载费用:10积分 【人民币10元】
快捷注册下载 游客一键下载
会员登录下载
三方登录下载: 微信快捷登录 QQ登录  
下载资源需要10积分 【人民币10元】
邮箱/手机:
温馨提示:
支付成功后,系统会自动生成账号(用户名和密码都是您填写的邮箱或者手机号),方便下次登录下载和查询订单;
支付方式: 微信支付    支付宝   
验证码:   换一换

 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

神经网络一个简单实例

OpenCV 的 ml 模块实现了人工神经网络(人工神经网络(Artificial Neural NetworksArtificial Neural Networks,, ANNANN))最典型的多层感知器多层感知器 ((multi-layer perceptrons, MLPmulti-layer perceptrons, MLP))模型模型。由于ml 模型实现的算法都继承自统一的 CvStatModel 基类,其 训练和预测的接口都是 train,predict,非常简单。 下面来看神经网络 CvANN_MLPCvANN_MLP 的使用 定义神经网络及参数定义神经网络及参数 [cpp][cpp]view plain copy 1.//Setup the BPNetwork 2. CvANN_MLP bp; 3.// Set up BPNetworks parameters 4. CvANN_MLP_TrainParams params; 5. params.train_CvANN_MLP_TrainParamsBACKPROP; 6. params.bp_dw_scale0.1; 7. params.bp_moment_scale0.1; 8.//params.train_CvANN_MLP_TrainParamsRPROP; 9.//params.rp_dw0 0.1; 10.//params.rp_dw_plus 1.2; 11.//params.rp_dw_minus 0.5; 12.//params.rp_dw_min FLT_EPSILON; 13.//params.rp_dw_max 50.; 可以直接定义 CvANN_MLP 神经网络,并设置其参数。 BACKPROPBACKPROP 表示使用 back-propagation 的训练方法,RPROP 即最简单的 propagation 训练方法。 使用 BACKPROP 有两个相关参数bp_dw_scale 即 bp_moment_scale 使用 PRPOP 有四个相关参数rp_dw0, rp_dw_plus, rp_dw_minus, rp_dw_min, rp_dw_max 上述代码中为其默认值。 设置网络层数,训练数据设置网络层数,训练数据 [cpp][cpp]view plain copy 1.// Set up training data 2.floatfloat labels[3][5] {{0,0,0,0,0},{1,1,1,1,1},{0,0,0,0,0}}; 3. Mat labelsMat3, 5, CV_32FC1, labels; 4. 5.floatfloat trainingData[3][5] { {1,2,3,4,5},{111,112,113,114,115}, {21,22,2 3,24,25} }; 6. Mat trainingDataMat3, 5, CV_32FC1, trainingData; 7. Mat layerSizesMat_1,5 5,2,2,2,5; 8. bp.createlayerSizes,CvANN_MLPSIGMOID_SYM;//CvANN_MLPSIGMOID_SYM 9.//CvANN_MLPGAUSSIAN 10.//CvANN_MLPIDENTITY 11. bp.traintrainingDataMat, labelsMat, Mat,Mat, params; layerSizes 设置了有三个隐含层的网络结构输入层,三个隐含层,输出层。输入层和输出 层节点数均为 5,中间隐含层每层有两个节点。 create 第二个参数可以设置每个神经节点的激活函数,默认为 CvANN_MLPSIGMOID_SYM,即 Sigmoid 函数,同时提供的其他激活函数有Gauss 和 阶跃函数。 使用训练好的网络结构分类新的数据使用训练好的网络结构分类新的数据 然后直接使用 predict 函数,就可以预测新的节点 [cpp][cpp] view plain copy 1.Mat sampleMat Mat_1,5 i,j,0,0,0; 2. Mat responseMat; 3. bp.predictsampleMat,responseMat; 完整程序代码完整程序代码 [cpp][cpp] view plain copy 1.//The example of using BPNetwork in OpenCV 2.//Coded by L. Wei 3.include 4.include 5.include 6.include 7.include 8. 9.usingusing namespacenamespace std; 10. usingusing namespacenamespace cv; 11. 12. intint main 13. { 14.//Setup the BPNetwork 15. CvANN_MLP bp; 16.// Set up BPNetworks parameters 17. CvANN_MLP_TrainParams params; 18. params.train_CvANN_MLP_TrainParamsBACKPROP; 19. params.bp_dw_scale0.1; 20. params.bp_moment_scale0.1; 21.//params.train_CvANN_MLP_TrainParamsRPROP; 22.//params.rp_dw0 0.1; 23.//params.rp_dw_plus 1.2; 24.//params.rp_dw_minus 0.5; 25.//params.rp_dw_min FLT_EPSILON; 26.//params.rp_dw_max 50.; 27. 28.// Set up training data 29.floatfloat labels[3][5] {{0,0,0,0,0},{1,1,1,1,1},{0,0,0,0,0}}; 30. Mat labelsMat3, 5, CV_32FC1, labels; 31. 32.floatfloat trainingData[3][5] { {1,2,3,4,5},{111,112,113,114,115}, {21,22,2 3,24,25} }; 33. Mat trainingDataMat3, 5, CV_32FC1, trainingData; 34. Mat layerSizesMat_1,5 5,2,2,2,5; 35. bp.cr

注意事项

本文(神经网络一个简单实例)为本站会员(sunhongz128)主动上传,蚂蚁文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知蚂蚁文库(发送邮件至2303240369@qq.com或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们


网站客服QQ:2303240369

copyright@ 2017-2027 mayiwenku.com 

网站版权所有  智慧蚂蚁网络

经营许可证号:ICP备2024020385号



收起
展开