当前位置: 首页 > news >正文

门户网站网站建设wordpress首页文章列表

门户网站网站建设,wordpress首页文章列表,网站建设参考文献作者,如何建设网络营销网站这里写目录标题 生成数据函数定义数据集定义loader加载数据定义神经网络模型测试输出是否为2个输入数据#xff0c;输出结果 训练模型函数计算正确率 训练数据并保存模型测试模型准备数据加载模型预测对比结果 生成数据函数 import randomdef get_rectangle():widthrandom.ra… 这里写目录标题 生成数据函数定义数据集定义loader加载数据定义神经网络模型测试输出是否为2个输入数据输出结果 训练模型函数计算正确率 训练数据并保存模型测试模型准备数据加载模型预测对比结果 生成数据函数 import randomdef get_rectangle():widthrandom.random()heightrandom.random()# 如果width大于height就是1否则就是0fatint(widthheight)return width,height,fatget_rectangle() (0.19267437580138802, 0.645061020860627, 0)fatint(0.80.9) fat0定义数据集 import torchclass Dataset(torch.utils.data.Dataset):def __init__(self):passdef __len__(self):return 1000def __getitem__(self,i):width,height,fatget_rectangle()# 这里注意width和height列表形式再转为tensor,另外是floattensorxtorch.FloatTensor([width,height])yfatreturn x,ydatasetDataset()# 这里没执行一次都要变有什么意义 len(dataset),dataset[999](1000, (tensor([0.4756, 0.1713]), 1))定义loader加载数据 # 定义了数据集然后使用loader去加载需要记住batch_size,shuffle,drop_last这个三个常用的 loadertorch.utils.data.DataLoader(datasetdataset,batch_size9,shuffleTrue,drop_lastTrue)# 加载完了以后就可以使用next去遍历了 len(loader),next(iter(loader))(111,[tensor([[0.1897, 0.6766],[0.2460, 0.2725],[0.5871, 0.7739],[0.3035, 0.9607],[0.7006, 0.7421],[0.4279, 0.9501],[0.6750, 0.1704],[0.5777, 0.1154],[0.5512, 0.3933]]),tensor([0, 0, 0, 0, 0, 0, 1, 1, 1])])# 输出结果 # (111, # [tensor([[0.3577, 0.3401], # [0.0156, 0.7550], # [0.0435, 0.4984], # [0.1329, 0.5488], # [0.4330, 0.5362], # [0.1070, 0.8500], # [0.1073, 0.2496], # [0.1733, 0.0226], # [0.6790, 0.2119]]), # tensor([1, 0, 0, 0, 0, 0, 0, 1, 1])]) 这里是torch自动将y组合成了一个tensor定义神经网络模型 class Model(torch.nn.Module):def __init__(self):super().__init__()# 定义神经网络结构self.fbtorch.nn.Sequential(# 第一层输入两个输出32个torch.nn.Linear(in_features2,out_features32),# 激活层的意思是小于0的数字变为0,即负数归零操作torch.nn.ReLU(),# 第二层输入是32个输出也是32个torch.nn.Linear(in_features32,out_features32),# 激活torch.nn.ReLU(),# 第三次输入32个输出2个torch.nn.Linear(in_features32,out_features2),# 激活生成的两个数字相加等于1torch.nn.Softmax(dim1))# 定义网络计算过程def forward(self,x):return self.fb(x)modelModel()测试输出是否为2个 # 测试 8行2列的数据让模型测试看是否最后输出是否也是8行一列model(torch.rand(8,2)).shapetorch.Size([8, 2])输入数据输出结果 model(torch.tensor([[0.3577, 0.3401]]))tensor([[0.5228, 0.4772]], grad_fnSoftmaxBackward)训练模型函数 def train():#定义优化器,le-4表示0.0004,10的负四次方opitimizertorch.optim.Adam(model.parameters(),lr1e-4)#定义损失函数 一般回归使用mseloss分类使用celossloss_fntorch.nn.CrossEntropyLoss()#然后trainmodel.train()# 全量数据遍历100轮for epoch in range(100):# 遍历loader的数据,循环一次取9条数据这里注意unpack时x就是【widthheight】for i,(x,y) in enumerate(loader):outmodel(x)# 计算损失lossloss_fn(out,y)# 计算损失的梯度loss.backward()# 优化参数opitimizer.step()# 梯度清零opitimizer.zero_grad()# 第二十轮的时候打印一下数据if epoch % 20 0:# 正确率# out.argmax(dim1) 表示哪个值大就说明偏移哪一类dim1暂时可以看做是固定的# (out.argmax(dim1)y).sum() 表示的true的个数acc(out.argmax(dim1)y).sum().item()/len(y)print(epoch,loss.item(),acc)torch.save(model,4.model) 计算正确率 执行的命令 print(out,“”,y,“”,(out.argmax(dim1)y).sum().item()) print(out.argmax(dim1),“------------”,(out.argmax(dim1)y),“~~~~~~~~~~~”,(out.argmax(dim1)y).sum()) 输出的结果 tensor([[9.9999e-01, 1.4671e-05], [4.6179e-14, 1.0000e00], [3.2289e-02, 9.6771e-01], [1.1237e-22, 1.0000e00],[9.9993e-01, 7.0015e-05],[8.6740e-02, 9.1326e-01],[1.1458e-18, 1.0000e00],[5.2558e-01, 4.7442e-01],[9.7923e-01, 2.0772e-02]], grad_fnSoftmaxBackward) tensor([0, 1, 1, 1, 0, 1, 1, 1, 0]) 8tensor([0, 1, 1, 1, 0, 1, 1, 0, 0]) ------------ tensor([ True, True, True, True, True, True, True, False, True]) ~~~~~~~~~~~ tensor(8) 解释 out.argmax(dim1) 表示哪个值大就说明偏移哪一类dim1暂时可以看做是固定的 (out.argmax(dim1)y).sum() 表示的true的个数 a torch.tensor([[1,2,3],[4,7,6]])d a.argmax(dim1) print(d)tensor([2, 1])训练数据并保存模型 train()80 0.3329530954360962 1.0 80 0.31511250138282776 1.0 80 0.33394935727119446 1.0 80 0.3242819309234619 1.0 80 0.3188716471195221 1.0 80 0.3405844569206238 1.0 80 0.32696405053138733 1.0 80 0.3540787696838379 1.0 80 0.3390745222568512 1.0 80 0.3645476996898651 0.8888888888888888 80 0.3371085822582245 1.0 80 0.31789034605026245 1.0 80 0.31553390622138977 1.0 80 0.3162603974342346 1.0 80 0.35249051451683044 1.0 80 0.3582523465156555 1.0 80 0.3162645995616913 1.0 80 0.37988030910491943 1.0 80 0.34384390711784363 1.0 80 0.31773826479911804 1.0 80 0.3145104646682739 1.0 80 0.31753242015838623 1.0 80 0.3222736120223999 1.0 80 0.38612237572669983 1.0 80 0.35490038990974426 1.0 80 0.34469687938690186 1.0 80 0.34534531831741333 1.0 80 0.31800928711891174 1.0 80 0.34892910718917847 1.0 80 0.33424195647239685 1.0 80 0.37350085377693176 1.0 80 0.3298128843307495 1.0 80 0.3715909719467163 1.0 80 0.3507140874862671 1.0 80 0.33337005972862244 1.0 80 0.3134789764881134 1.0 80 0.35244104266166687 1.0 80 0.3148314654827118 1.0 80 0.3376845419406891 1.0 80 0.3315282464027405 1.0 80 0.3450225591659546 1.0 80 0.3139556646347046 1.0 80 0.34932857751846313 1.0 80 0.3512738049030304 1.0 80 0.3258627951145172 1.0 80 0.3197799324989319 1.0 80 0.358166366815567 0.8888888888888888 80 0.3716268837451935 1.0 80 0.31426626443862915 1.0 80 0.32130196690559387 1.0 80 0.3207002282142639 1.0 80 0.3891155421733856 1.0 80 0.35045987367630005 1.0 80 0.32332736253738403 1.0 80 0.31951677799224854 1.0 80 0.3184094727039337 1.0 80 0.3341224491596222 1.0 80 0.3408585786819458 1.0 80 0.3139263093471527 1.0 80 0.33058592677116394 1.0 80 0.3134475648403168 1.0 80 0.3281571567058563 1.0 80 0.33370518684387207 1.0 80 0.33172252774238586 1.0 80 0.32849007844924927 1.0 80 0.3604048788547516 1.0 80 0.3651810884475708 1.0测试模型 准备数据 # 准备数据 x,fatnext(iter(loader)) x,fat(tensor([[0.6733, 0.4044],[0.6503, 0.0303],[0.9353, 0.9518],[0.4145, 0.6948],[0.9560, 0.8009],[0.6331, 0.0852],[0.5510, 0.8283],[0.1402, 0.2726],[0.3257, 0.8351]]),tensor([1, 1, 0, 0, 1, 1, 0, 0, 0]))加载模型预测 # 加载模型 modelltorch.load(4.model) # 使用模型 outmodell(x) outtensor([[1.5850e-04, 9.9984e-01],[1.4121e-06, 1.0000e00],[7.1068e-01, 2.8932e-01],[9.9994e-01, 5.5789e-05],[4.1401e-03, 9.9586e-01],[3.3441e-06, 1.0000e00],[9.9995e-01, 4.7039e-05],[9.9111e-01, 8.8864e-03],[1.0000e00, 1.5224e-06]], grad_fnSoftmaxBackward)out.argmax(dim1)tensor([1, 1, 0, 0, 1, 1, 0, 0, 0])对比结果 fattensor([1, 1, 0, 0, 1, 1, 0, 0, 0])查看上面out的结果和fat的结论一致不错
http://www.dnsts.com.cn/news/138653.html

相关文章:

  • 网站建设的风险预测网站注册短信验证怎么做
  • 文库类网站建设建议及经验保山做网站建设
  • 风车网站做花盆磨具wordpress安装错误
  • 广西玉林建设厅官方网站怎么自己办网站
  • 国家拨款农村建设查询的网站wordpress 怎样写函数
  • 零食网站制作的建设大纲网络是干什么的
  • 前端只是做网站吗wordpress 地图菜单
  • 上海商务网站建设wordpress显示位置
  • drupal7建站教程二手服务器做网站
  • 宠物狗网站建设分析vue 做pc网站可以吗
  • 网站设计流程的步骤程序员培训机构出来找工作好找吗
  • 郑州企业建设网站有什么用朝阳周边网站建设
  • 周口市做网站播放器网站怎么做
  • 中国十大知名网站建设个人工作室网站源码带后台
  • 赣州网站建设专家网站怎么在百度搜到
  • 网站模板外包软文自助发稿软件开发 网站建设
  • 廊坊市做网站手机网址在哪
  • 教育网站制作公司青岛网站建设机构
  • logo网站免费wordpress3.0 主题
  • 网站标题怎样写中国交通建设集团有限公司招标网
  • 做物流的可以在那些网站找客户端seo技巧优化
  • 做推广的网站小型网站设计及建设
  • 广州 网站 建设崇信县门户网站领导动态
  • 网站制作千知寻免费wordpress页面编辑器
  • 网站如何做收款二维码wordpress带格式的字体怎么修改
  • 重庆网站建设与网络推广专业做网站app的公司哪家好
  • 大连网站制作信ls15227手机可以做h5页面的软件
  • 电子商务网站建设合同样本虚拟网站建设
  • 电子商务网站设计流程览心文档小程序怎么用
  • 网站开发公司东莞个人做的网站有什么危险