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

免费做苗木网站智慧团建登录app

免费做苗木网站,智慧团建登录app,网站内容规范,做兼职女的网站本文旨在帮助Pytorch使用者快速上手使用寒武纪MLU。以代码块为主#xff0c;文字尽可能简洁#xff0c;许多部分对标NVIDIA CUDA。不正确的地方请留言更正。本文不定期更新。 文章目录 前言Cambricon PyTorch的Python包torch_mlu导入将模型加载到MLU上model.to(mlu)定义损失函… 本文旨在帮助Pytorch使用者快速上手使用寒武纪MLU。以代码块为主文字尽可能简洁许多部分对标NVIDIA CUDA。不正确的地方请留言更正。本文不定期更新。 文章目录 前言Cambricon PyTorch的Python包torch_mlu导入将模型加载到MLU上model.to(mlu)定义损失函数然后将其拷贝至MLU将数据从CPU拷贝到MLU设备以mnist.py为例的训练代码demo参考引用 前言 大背景信创改造、信创国产化、GPU国产化。 为使PyTorch支持寒武纪MLU寒武纪对机器学习框架PyTorch进行了部分定制。若要在寒武纪MLU上运行PyTorch需要安装并使用寒武纪定制的 Cambricon PyTorch。 Cambricon PyTorch的Python包torch_mlu导入 Cambricon CATCH是寒武纪发布的一款Python包包名torch_mlu提供了在MLU设备上进行张量计算的能力。安装好Cambricon CATCH后便可使用torch_mlu模块 import torch # 需安装Cambricon PyTorch import torch_mlu # 动态扩展MLU后端附 Cambricon PyTorch源码编译安装 导入 torch 和 torch_mlu 后可以测试在MLU上完成加法运算 t0 torch.randn(2, 2, devicemlu) # 在MLU设备上生成Tensor t1 torch.randn(2, 2, devicemlu) result t0 t1 # 在MLU设备上完成加法运算将模型加载到MLU上model.to(‘mlu’) 以ResNet18为例将模型加载到MLU上用 model.to(mlu)对标cuda的 model.to(device) # 定义模型 model models.__dict__[resnet50]() # 将模型加载到MLU上。 mlu_model model.to(mlu)定义损失函数然后将其拷贝至MLU # 构造损失函数 criterion nn.CrossEntropyLoss() # 将损失函数拷贝到MLU上 criterion.to(mlu)将数据从CPU拷贝到MLU设备 x torch.randn(1000000, dtypetorch.float) x_mlu x.to(torch.device(mlu), non_blockingTrue)以mnist.py为例的训练代码demo import torch # 导入原生 PyTorch import torch_mlu # 导入 Cambricon PyTorch from torch.utils.data import DataLoader from torchvision.datasets import mnist from torch import nn from torch import optim from torchvision import transforms from torch.optim.lr_scheduler import StepLR import torch.nn.functional as F# 定义模型 class Net(nn.Module):def __init__(self):super(Net, self).__init__()self.conv1 nn.Conv2d(1, 32, 3, 1)self.conv2 nn.Conv2d(32, 64, 3, 1)self.dropout1 nn.Dropout2d(0.25)self.dropout2 nn.Dropout2d(0.5)self.fc1 nn.Linear(9216, 128)self.fc2 nn.Linear(128, 10)# 定义前向计算def forward(self, x):x self.conv1(x)x F.relu(x)x self.conv2(x)x F.relu(x)x F.max_pool2d(x, 2)x self.dropout1(x)x torch.flatten(x, 1)x self.fc1(x)x F.relu(x)x self.dropout2(x)x self.fc2(x)output F.log_softmax(x, dim1)return output# 模型训练 def train(model, train_data, optimizer, epoch):model model.train()for batch_idx, (img, label) in enumerate(train_data):img img.mlu()label label.mlu()optimizer.zero_grad()out model(img)loss F.nll_loss(out, label)# 反向计算loss.backward()# 梯度更新optimizer.step()if batch_idx % 100 0:print(Train Epoch: {} [{}/{} ({:.0f}%)]\tLoss: {:.6f}.format(epoch, batch_idx * len(img), len(train_data.dataset),100. * batch_idx / len(train_data), loss.item()))# 模型推理 def validate(val_loader, model):test_loss 0correct 0model.eval()with torch.no_grad():for images, target in val_loader:images images.mlu()target target.mlu()output model(images)test_loss F.nll_loss(output, target, reductionsum).item()pred output.argmax(dim1, keepdimTrue)correct pred.eq(target.view_as(pred)).sum().item()test_loss / len(val_loader.dataset)# 打印精度结果print(\nTest set: Average loss: {:.4f}, Accuracy: {}/{} ({:.0f}%)\n.format(test_loss, correct, len(val_loader.dataset),100. * correct / len(val_loader.dataset)))# 主函数 def main():# 定义预处理函数data_tf transforms.Compose([transforms.ToTensor(),transforms.Normalize([0.1307],[0.3081])])# 获取 MNIST 数据集train_set mnist.MNIST(./data, trainTrue, transformdata_tf, downloadTrue)test_set mnist.MNIST(./data, trainFalse, transformdata_tf, downloadTrue)train_data DataLoader(train_set, batch_size64, shuffleTrue)test_data DataLoader(test_set, batch_size1000, shuffleFalse)net_orig Net()# 模型拷贝到MLU设备net net_orig.mlu()optimizer optim.Adadelta(net.parameters(), 1)# 训练10个epochnums_epoch 10# 训练完成后保存模型save_model True# 学习率调整策略scheduler StepLR(optimizer, step_size1, gamma0.7)for epoch in range(nums_epoch):train(net, train_data, optimizer, epoch)validate(test_data, net)scheduler.step()if save_model: # 将训练好的模型保存为model.pthif epoch nums_epoch-1:checkpoint {state_dict:net.state_dict(), optimizer:optimizer.state_dict(), epoch: epoch}torch.save(checkpoint, model.pth)if __name__ __main__:main()参考引用 寒武纪PyTorch v1.13.1用户手册
http://www.hkea.cn/news/14299117/

相关文章:

  • 网站建设与网页设计美食企点营销软件
  • wordpress网站插件下载公司电子产品网站模板
  • 免费注册建网站盗用别的公司网站模块
  • 在线教育网站策划方案无限在线观看免费视频
  • qq免费搭建网站中山市住房建设局网站
  • 手机网站技巧网络运维必备知识
  • 广州建网站兴田德润可信泉州网页
  • 网站开发发布赤壁网站建设公司
  • 项目计划书如何写seo推广具体做什么
  • 泰州网站建设费用产品线上推广方式
  • 厦门网站推广费用紫竹桥网站建设
  • 开发企业门户网站做爰片免费网站给我看看
  • 南昌网站建设电话免费招聘网哪个平台比较好
  • 门户网站是网络表达吗网络安全企业
  • 企业网站备案 优帮云旅游网站设计源代码
  • 和田网站建设学校网站建设信息
  • 网站视觉设计金融做推广的网站
  • 公司网站怎么更新维护怎么修改wordpress 后台登陆密码
  • 怎么设置网站关键词网站开发进度安排
  • 做百度网站营业执照用注销吗网站页面高度
  • 做网站哪个效果好网站建设与管理的未来规划方案
  • 网站seo博客网站原型图设计软件
  • 微信公众号属于网站建设wordpress记录用户ip
  • 谁做响应式网站wordpress 替换谷歌字体
  • 做网商必备网站vi展示效果图
  • 为啥网站打开速度慢网站建设付款页面
  • 招聘网站怎么投自己做的简历手机软件商店免费下载
  • 电商网站开发流程文档湖北做网站的公司
  • 昆明网站制作维护多国语言 网站源码
  • 吉林网站网站建设株洲网站做的好的公司