科学计算与数据处理综设计实验四.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
科学计算与数据处理综设计实验四

科学计算与数据处理实验报告 学  号 S313060052 姓  名 王腾祥 实验名称 科学计算与数据处理综合设计实验 实验目的 深入研究MATLAB在计算机相关的某一专业领域的综合应用 熟悉MATLAB中专业级Toolbox或Simulink的功能和用法 学会综合运用MATLAB解决并行运算与神经网络-基于CPU/GPU的并行神经网络运算 实验方案 CPU并行 一、标准单线程的神经网络训练与仿真过程 [x,t]=house_dataset; net1=feedforwardnet(10); net2=train(net1,x,t); y=sim(net2,x); 二、打开MATLAB workers matlabpool open 检查worker数量 poolsize=matlabpool(size) 三、设置train与sim函数中的参数“Useparallel”为“yes”。 net2=train(net1,x,t,Useparallel,yes) y=sim(net2,x,Useparallel,yes) 四、使用“showResources”选项证实神经网络运算确实在各个worker上运行。 net2=train(net1,x,t,useParallel,yes,showResources,yes); y=sim(net2,x,useParallel,yes,showResources,yes); 五、将一个数据集进行随机划分,同时保存到不同的文件 for i=1:matlabpool(size) x=rand(2,1000); save([inputs num2str(i)],x) t=x(1,:).*x(2,:)+2*(x(1,:)+x(2,:)) ; save([target num2str(i)],t); clear x t end 六、实现并行运算加载数据集  for i=1:matlabpool(size) data=load([inputs num2str(i)],x) xc{i}=data.x data=load([target num2str(i)],t) tc{i}=data.t; clear data end net2=configure(net2,xc{1},tc{1}); net2=train(net2,xc,tc); yc=sim(net2,xc) 七、得到各个worker返回的Composite结果 for i=1:matlabpool(size) yi=yc{i} end 八、GPU并行 count=gpuDeviceCount gpu1=gpuDevice(1) gpuCores1=gpu1.MultiprocessorCount*gpu1.SIMDWidth net2=train(net1,x,t,useGPU,yes) y=sim(net,x,useGPU,yes) net1.trainFcn=trainscg; net2=train(net1,x,t,useGPU,yes,showResources,yes); Matlab神经网络43个案例分析 九、并行运算与神经网络-基于CPU/GPU的并行神经网络运算 by 王小川(@王小川_matlab) Email:sina363@163.com /hgsz2003 十、清空环境变量 clear all clc warning off 十一、打开matlabpool matlabpool open poolsize=matlabpool(size); 十二、加载数据 load bodyfat_dataset inputs = bodyfatInputs; targets = bodyfatTargets; 十三、创建一个拟合神经网络 hiddenLayerSize = 10; 隐藏层神经元个数为10 net = fitnet(hiddenLayerSize); 创建网络 十四、指定输入与输出处理函数(本操作并非必须) net.inputs{1}.processFcns = {removeconstantrows,mapminmax}; net.outputs{2}.processFcns = {removeconstantrows,mapminmax}; 十五、设置神经网络的训练、验证、测试数据集划分 net.divideFcn = dividerand; 随机划分数据集 net.divideMode = sample; 划分单位为每一个数据 net.divideParam.tr

文档评论(0)

fpiaovxingl + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档