164
社区成员
发帖
与我相关
我的任务
分享【摘要】 1 系统环境Windows11 x64 CPUPython 3.9MindSpore 1.8.1conda env listconda activate py39_ms18# 更新环境pip install --upgrade pippip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.8.0/MindSpor...
conda env list
conda activate py39_ms18
# 更新环境
pip install --upgrade pip
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.8.0/MindSpore/cpu/x86_64/mindspore-1.8.0-cp39-cp39-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
2.1 问题描述
2.2 问题描述
2.3 脚本代码
def __init__(self, optimizer):
”””入参有两个:训练网络,优化器”””
super(CustomTrain0neStepCell, self).__init__(auto_prefix=False)
seLf.network = network # 定义前向网络
self.network.set_grad() # 构建反向网络
self.optimizer = optimizer # 定义优化器
self.weights = self.optimizer .parameters #待更新参数
self.grad = ops.Grad0peration(get_by_list=True,sens_param=True)
4 解决方案
import numpy as np
import mindspore.nn as nn
import mindspore.ops as ops
import mindspore as ms
class CustomTrainOneStepCell(nn.Cell):
def __init__(self, network, optimizer):
"""入参有两个:训练网络,优化器"""
super(CustomTrainOneStepCell, self).__init__(auto_prefix=False) # CustomTrain0neStepCell
self.network = network # 定义前向网络 seLf.network = network
self.network.set_grad() # 构建反向网络
self.optimizer = optimizer # 定义优化器
self.weights = self.optimizer.parameters #待更新参数 self.weights = self.optimizer .parameters
self.grad = ops.GradOperation(get_by_list=True, sens_param=True) # Grad0peration
def construct(self, x, label):
return x
if __name__:
# ms.set_context(mode=mindspore.GRAPH_MODE, device_target="CPU")
ms.set_context(mode=ms.GRAPH_MODE, device_target="CPU")
# input = ms.Tensor(np.array([1.0, 2.0, 3.0]).astype(np.float32))
label= []
input = ms.Tensor(np.ones([1, 120, 640]), ms.float32)
network =nn.Conv1d(120, 240, 4, has_bias=False, weight_init='normal')
optimizer = nn.SGD(network.trainable_params(), 1e-2)
net = CustomTrainOneStepCell(network, optimizer)
net(input, label)
optimizer = nn.SGD(network.trainable_params(), 1e-2)
文章来源:华为云社区 https://bbs.huaweicloud.com/blogs/381811