《昇思25天學習打卡營第5天 | mindspore 網絡構建 Cell 常見用法》

1. 背景:

使用 mindspore 學習神經網絡,打卡第五天;

2. 訓練的內容:

使用 mindspore 的 nn.Cell 構建常見的網絡使用方法;

3. 常見的用法小節:

支持一系列常用的 nn 的操作

3.1 nn.Cell 網絡構建:

nn.Cell 基類的構建

 構建一個用于Mnist數據集分類的神經網絡模型
import mindspore
from mindspore import nn, ops# 一個神經網絡模型表示為一個Cell, 它由不同的子Cell構成。使用這樣的嵌套結構,可以簡單地使用面向對象編程的思維,對神經網絡結構進行構建和管理
class Network(nn.Cell):def __init__(self):super().__init__()self.flatten = nn.Flatten()self.dense_relu_sequential = nn.SequentialCell(nn.Dense(28 * 28, 512, weight_init = "normal", bias_init = "zeros"),nn.ReLU(),nn.Dense(512, 512, weight_init="normal", bias_init="zero"),nn.ReLU(),nn.Dense(512, 10, weight_init="normal", bias_init="zeros"),)# model.construct()方法不可直接調用def construct(self, x):x = self.flatten(x)logits = self.dense_relu_sequential(x)return logits

3.2 常見 nn 的模塊的使用

  • nn.Flatten() 將 2D Tensor 轉換成連續數組
  • nn.Dense: 全連接層,其使用權重和偏差對輸入進行線性變換
  • nn.ReLU層: 給網絡中加入非線性的激活函數,幫助神經網絡學習各種復雜的特征。
  • nn.Softmax: 神經網絡最后一個全連接層返回的logits的值縮放為[0, 1],表示每個類別的預測概率
    nn.SequentialCell: 一個有序的Cell容器。輸入Tensor將按照定義的順序通過所有Cell。
# 分解介紹# 輸入參數
input_image = ops.ones((3, 28, 28), mindspore.float32)
print(input_image.shape)# 將28x28的2D張量轉換為784大小的連續數組
flatten = nn.Flatten()
flat_image = flatten(input_image)
print(flat_image.shape)# nn.Dense為全連接層,其使用權重和偏差對輸入進行線性變換
layer1 = nn.Dense(in_channels=28*28, out_channels=20)
hidden1 = layer1(flat_image)
print(hidden1.shape)# nn.ReLU層給網絡中加入非線性的激活函數,幫助神經網絡學習各種復雜的特征。
print(f"Before ReLU: {hidden1}\n\n")
hidden1 = nn.ReLU()(hidden1)
print(f"After ReLU: {hidden1}")# nn.SequentialCell是一個有序的Cell容器。輸入Tensor將按照定義的順序通過所有Cell。我們可以使用nn.SequentialCell來快速組合構造一個神經網絡模型。
seq_modules = nn.SequentialCell(flatten,layer1,nn.ReLU(),nn.Dense(20, 10)
)logits = seq_modules(input_image)
print(logits.shape)# 最后使用nn.Softmax將神經網絡最后一個全連接層返回的logits的值縮放為[0, 1],表示每個類別的預測概率
softmax = nn.Softmax(axis=1)
pred_probab = softmax(logits)# 模型參數
print(f"Model structure: {model}\n\n")for name, param in model.parameters_and_names():print(f"Layer: {name}\nSize: {param.shape}\nValues : {param[:2]} \n")

活動參與鏈接:

https://xihe.mindspore.cn/events/mindspore-training-camp

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/39695.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/39695.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/39695.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【FFmpeg】關鍵結構體的初始化和釋放(AVFormatContext、AVIOContext等)

目錄 1.AVFormatContext1.1 初始化(avformat_alloc_context)1.2 釋放(avformat_free_context) 2.AVIOContext2.1 初始化(avio_alloc_context)2.2 釋放(avio_context_free) 3. AVStre…

8.SQL注入-基于insert,update利用案例

SQL注入-基于insert/update利用案例 sql語句正常插入表中的數據 insert into member(username,pw,sex,phonenum,address,email) values(xiaoqiang,1111,1,2,3,4); select * from member;例如插入小強數據,如圖所示: 采用or這個運算符,構造…

實測有效:Win11右鍵默認顯示更多

Win11最大的變化之一莫過于右鍵菜單發生了變化,最大的問題是什么,是右鍵菜單很多時候需要點兩次,實在是反人類 第一步 復制以下命令直接運行: reg.exe add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905ba…

python_zabbix

zabbix官網地址:19. API19. APIhttps://www.zabbix.com/documentation/4.2/zh/manual/api 每個版本可以有些差異,選擇目前的版本在查看對于的api接口#token接口代碼 import requests apiurl "http://zabbix地址/api_jsonrpc.php" data {&quo…

web的學習和開發

這個使同步和異步的區別 今天主要就是學了一些前端,搞了一些前端的頁面,之后準備學一下后端。 我寫的這個項目使百度貼吧,還沒有寫er圖。 先看一下主界面是什么樣子的。 這個是主界面,將來后面的主要功能點基本上全部是放在這個上…

推動能源綠色低碳發展,風機巡檢進入國產超高清+AI時代

全球綠色低碳能源數字轉型發展正在進入一個重要窗口期。風電作為一種清潔能源,在碳中和過程中扮演重要角色,但風電場運維卻是一件十足的“苦差事”。 傳統的風機葉片人工巡檢方式主要依靠巡檢人員利用高倍望遠鏡檢查、高空繞行下降目測檢查(蜘蛛人)、葉…

STM32——Modbus協議

一、Modbus協議簡介: 1.modbus介紹: Modbus是一種串行通信協議,是Modicon公司(現在的施耐德電氣 Schneider Electric)于1979年為使用可編程邏輯控制器(PLC)通信而發表。Modbus已經成為工業領域…

PythonConda系列(親測有效):【解決方案】Collecting package metadata (current_repodata.json): failed

【解決方案】Collecting package metadata (current_repodata.json): failed 問題描述解決方案小結參考文獻 問題描述 在cmd下運行:conda install pylint -y,報錯如下: C:\Users\apr> conda install --name apr pylint -y Co…

PDF壓縮工具選哪個?6款免費PDF壓縮工具分享

PDF文件已經成為一種常見的文檔格式。然而,PDF文件的體積有時可能非常龐大,尤其是在包含大量圖像或復雜格式的情況下。選擇一個高效的PDF壓縮工具就顯得尤為重要。小編今天給大家整理了2024年6款市面上反響不錯的PDF壓縮文件工具。輕松幫助你找到最適合自…

漆包線行業生產管理革新:萬界星空科技MES系統解決方案

一、引言 在科技日新月異的今天,萬界星空科技憑借其在智能制造領域的深厚積累,為漆包線行業量身打造了一套先進的生產管理執行系統(MES)解決方案。隨著市場競爭的加劇,漆包線作為電氣設備的核心材料,其生產…

React+TS前臺項目實戰(二十四)-- 繪制組件Qrcode封裝

文章目錄 前言Qrcode組件1. 功能分析2. 代碼詳細注釋3. 使用方式4. 效果展示(pc端 / 移動端) 總結 前言 今天要封裝的Qrcode 組件,是通過傳入的信息,繪制在二維碼上,可用于很多場景,如區塊鏈項目中的區塊顯示交易地址時就可以用到…

無人值守停車場管理系統具備哪些功能?無人值守收費停車場系統多少錢

隨著城市化進程的加快,停車難已成為制約城市發展的一個突出問題。在傳統停車場管理中,人工收費、車輛登記等環節不僅效率低下,而且容易出錯。無人值守停車系統的出現,無人值守停車場系統以其高效、智能的特點,通過集成…

Meta 3D Gen:文生 3D 模型

是由 Meta 公布的一個利用 Meta AssetGen(模型生成)和 TextureGen(貼圖材質生成)的組合 AI 系統,可以在分分鐘內生成高質量 3D 模型和高分辨率貼圖紋理。 視頻演示的效果非常好,目前只有論文,期…

telegram mini app和game實現登錄功能

接上一篇文章,我們在創建好telegram機器人后,開始開發小游戲或者mini App,那就避免不了登錄功能。 公開鏈接 bot設置教程:https://lengmo714.top/6e79860b.html 參考教程參考教程,telegram已經給我們提供非常多的api,我們在獲取用…

package.json配置詳解

package.json文件 執行 npm init 命令,會在當前目錄生成一個 package.json 文件 這個文檔是你需要知道的關于你的 package.json 文件中需要什么的所有信息。它必須是實際的 JSON,而不僅僅是一個 JavaScript 對象文字。 //package.json {//如果你打算發…

使用vue動態給同一個a標簽添加內容 并給a標簽設置hover,懸浮文字變色,結果鼠標懸浮有的字上面不變色

如果Vue的虛擬DOM更新機制導致樣式更新不及時,你可以嘗試以下幾種方法來解決這個問題: 確保使用響應式數據: 確保你使用的數據是響應式的,并且任何對這些數據的更改都會觸發視圖的更新。在Vue中,你應該使用data對象中的…

多源BFS——AcWing 173. 矩陣距離

多源BFS 定義 多源BFS(多源廣度優先搜索)是一種圖遍歷算法,它是標準BFS(廣度優先搜索)的擴展,主要用于解決具有多個起始節點的最短路徑問題。在多源BFS中,不是從單一源點開始搜索整個圖&#…

怎么把webp格式轉換成jpg?5個圖片格式轉換方法全面解析(2024最新)

webp 圖片常用于網站,可顯著改善頁面的瀏覽和加載體驗。然而,許多設備(如蘋果手機設備、安卓手機等)不支持webp文件。在這些設備上查看webp文件時,最佳做法是將其轉換為其他常見格式,如jpg或 png。Windows電…

LeetCode 69. x 的平方根

更多題解盡在 https://sugar.matrixlab.dev/algorithm 每日更新。 組隊打卡&#xff0c;更多解法等你一起來參與哦&#xff01; LeetCode 69. x 的平方根 &#xff0c;難度簡單。 暴力 解題思路&#xff1a;直接遍歷平方 i&#xff0c; 判斷 x 是否滿足 i 2 ≤ x < ( i …

2024上海大學生程序設計競賽I-六元組計數原根知識詳解

以前基本沒有了解原根相關的一塊內容&#xff0c;最近正好碰到了這個題&#xff0c;于是寫一篇博客記錄一下。 這道題的總體思路就是比較明顯&#xff0c;就是先算出 a p x a^px apx對于每個 x x x的解的個數&#xff0c;然后NTT算一下即可。 先來講一下怎么求歐拉函數 ? ( …