首页 > 其他分享 >《昇思25天学习打卡营第06天|qingyun201003》

《昇思25天学习打卡营第06天|qingyun201003》

时间:2024-07-15 13:29:33浏览次数:11  
标签:25 06 函数 ops 梯度 loss 打卡 grad mindspore

日期

image.png

心得

什么是函数式自动微分,在日常的模型训练中,涉及到复杂的数学公式如何转换为机械语言,通过本次的学习,使我了解到了如何去做梯度计算,通过梯度计算,设计损失函数,有一步步优化代码。

昇思MindSpore 基础入门学习 函数式自动微分 (AI 代码解析)

函数式自动微分

神经网络的训练主要使用反向传播算法,模型预测值(logits)与正确标签(label)送入损失函数(loss function)获得loss,然后进行反向传播计算,求得梯度(gradients),最终更新至模型参数(parameters)。自动微分能够计算可导函数在某点处的导数值,是反向传播算法的一般化。自动微分主要解决的问题是将一个复杂的数学运算分解为一系列简单的基本运算,该功能对用户屏蔽了大量的求导细节和过程,大大降低了框架的使用门槛。
MindSpore使用函数式自动微分的设计理念,提供更接近于数学语义的自动微分接口gradvalue_and_grad。下面我们使用一个简单的单层线性变换模型进行介绍。

import numpy as np
import mindspore
from mindspore import nn
from mindspore import ops
from mindspore import Tensor, Parameter
  1. import numpy as np:
    • 这行代码导入了NumPy库,并将其命名为np。NumPy是一个强大的Python库,用于进行科学计算,特别是数组操作。
  2. import mindspore:
    • 这行代码导入了MindSpore库。MindSpore是华为开发的一个深度学习框架,旨在提供高效、灵活的AI模型开发和部署。
  3. from mindspore import nn:
    • 这行代码从MindSpore库中导入了神经网络模块nnnn模块包含了构建神经网络所需的各种层和函数。
  4. from mindspore import ops:
    • 这行代码从MindSpore库中导入了操作模块opsops模块包含了各种用于张量操作的函数,如数学运算、逻辑运算等。
  5. from mindspore import Tensor, Parameter:
    • 这行代码从MindSpore库中导入了TensorParameter类。Tensor是MindSpore中的基本数据结构,类似于NumPy的数组,用于存储和操作多维数据。Parameter用于定义神经网络中的可训练参数。
  • mindspore.nn:
    • 该模块提供了构建神经网络的各种组件,如层(例如全连接层、卷积层)、损失函数、优化器等。
  • mindspore.ops:
    • 该模块提供了各种张量操作函数,包括数学运算、逻辑运算、形状操作等。
  • mindspore.Tensor:
    • 该类用于创建和操作多维数组,是MindSpore中的基本数据结构。
  • mindspore.Parameter:
    • 该类用于定义神经网络中的可训练参数,这些参数在训练过程中会被优化。

函数与计算图

计算图是用图论语言表示数学函数的一种方式,也是深度学习框架表达神经网络模型的统一方法。我们将根据下面的计算图构造计算函数和神经网络。

在这个模型中,x

标签:25,06,函数,ops,梯度,loss,打卡,grad,mindspore
From: https://blog.csdn.net/qq_43638033/article/details/140436294

相关文章

  • 【408真题】2011-25
    “接”是针对题目进行必要的分析,比较简略;“化”是对此题型的解题套路总结,并结合历年真题或者典型例题进行运用。涉及到的知识全部来源于王道各科教材(2025版)(408神功练成中……)文章目录一、接:本题分析二、化:套路总结一、接:本题分析2011-25分析【答】D【解......
  • 模型评估与选择 数模打卡
    文章目录模型评估与选择(评价指标理论)1.经验误差与过拟合2.评估方法留出法hand-out交叉验证法crossvalidation自助法bootstrapping调参与最终模型3.性能度量错误率与精度查准率、查全率与F1ROC与AUC代价敏感错误率与代价曲线模型评估与选择(评价指标理论)1.经验......
  • 聚类分析 数模打卡
    聚类分析1.聚类任务无监督学习:通过对无标记训练样本的学习来揭示数据的内在性质及规律。聚类:把数据集中的样本划分为若干互斥子集,每个子集称一个簇cluster。两个基本问题:性能度量与距离计算。2.性能度量vslidityindex.作为判断和优化目标。外部指标:将聚类结果与某......
  • SP4063 MPIGS - Sell Pigs / P4638 [SHOI2011] 银行家题解
    考虑使用网络流。建立源点\(S\)和汇点\(T\)。每个人作为一个点,将它们与汇点\(T\)连接,权值为需要的猪的数量。然后对于每个人,如果和之前的某个人开了相同的猪圈,那么就将之前的那个人的点与这个人的点连接。如果猪圈还没有被开过,就从源点\(S\)连接这个点,权值为猪圈猪的初......
  • leetcode周赛 - 406
    100352.交换后字典序最小的字符串给你一个仅由数字组成的字符串 s,在最多交换一次 相邻 且具有相同 奇偶性 的数字后,返回可以得到的字典序最小的字符串。如果两个数字都是奇数或都是偶数,则它们具有相同的奇偶性。例如,5和9、2和4奇偶性相同,而6和9奇偶性不......
  • Day68 代码随想录打卡|回溯算法篇---子集
    题目(leecodeT78):给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。方法:本题为求子集问题,采用回溯算法解决,与之前的组合与分割问题我们最后收集的是树上的叶子节点不同。子集......
  • 打卡信奥刷题(322)用Scratch图形化工具信奥P2735 [普及组/提高组] [USACO3.4] 网 Electr
    [USACO3.4]网ElectricFences题目描述在本题中,格点是指横纵坐标皆为整数的点。为了圈养他的牛,农夫约翰(FarmerJohn)建造了一个三角形的电网。他从原点(0,0)牵出一根通电的电线,连接格点(n,m)(0<=n<32000,0<m<32000),再连接格点(p,0)(p>0),最后回到原点。牛可以在不碰到电网的情......
  • [ABC206E] Divide Both 的题解
    题目大意求出从\(l\)至\(r\)中满足以下条件的\((x,y)\)的个数。\(\gcd(x,y)\ne1\)且\(\gcd(x,y)\nex\)且\(\gcd(x,y)\ney\)。其中\(1\lel\ler\le10^6\)。思路正难则反,所以可以求出所有互质或者是相互倍数的\((x,y)\)的对数,在将其减去所有的方案数就是......
  • 「杂题乱刷2」CF1506E Restoring the Permutation
    duel到的。题目链接CF1506E解题思路有一个显然的性质就是这个序列的前缀最大值是单调不降的。于是我们就可以对于每个位置考虑还可以填哪些数,对于字典序最小的肯定填当时可填的最小数字,对于字典序最大的肯定填当时可填的最大数字,因为你可以通过填一个数的方式来满足要求,因此......
  • [COCI2006-2007#4] ZBRKA 的题解
    题目大意在一个长度为\(n\)的排列中找出逆序对数量恰好为\(c\)的排列总数,其中\(1\len\le10^3,1\lec\le10^4\)。思路考虑将\(1\)到\(n\)这些数从小到大一次填进去,因为每一次填入的数多是最大的,所以逆序对增加的数量只与其所在的位置相关,所以设计\(f_{i,j}\)表......