MindSpore是一個全場景深度學(xué)習(xí)框架,向數(shù)據(jù)科學(xué)家和算法工程師提供了統(tǒng)一的模型訓(xùn)練、推理和導(dǎo)出等接口。目前提供了Python編程范式,使用它可以更加方便地構(gòu)建復(fù)雜的神經(jīng)網(wǎng)絡(luò)模型,讓AI編程變得簡單。有著靜態(tài)圖模式和動態(tài)圖模式兩種執(zhí)行模式,同時提供了統(tǒng)一的編碼方式,增加了靜態(tài)圖和動態(tài)圖的可兼容性,讓用戶可以隨時切換兩種模式。軟件API友好、調(diào)試難度低,高效執(zhí)行的特點深受開發(fā)人員的喜愛。
軟件特色
【簡單的開發(fā)體驗】
幫助開發(fā)者實現(xiàn)網(wǎng)絡(luò)自動切分,只需串行表達就能實現(xiàn)并行訓(xùn)練,降低門檻,簡化開發(fā)流程。
使用該深度學(xué)習(xí)、ai、人工智能框架的優(yōu)勢之靈活的調(diào)試模式
【靈活的調(diào)試模式】
具備訓(xùn)練過程靜態(tài)執(zhí)行和動態(tài)調(diào)試能力,開發(fā)者通過變更一行代碼即可切換模式,快速在線定位問題。
使用該深度學(xué)習(xí)、ai、人工智能框架的優(yōu)勢之充分發(fā)揮硬件潛能
【充分發(fā)揮硬件潛能】
最佳匹配昇騰處理器,最大程度地發(fā)揮硬件能力,幫助開發(fā)者縮短訓(xùn)練時間,提升推理性能。
使用該深度學(xué)習(xí)、ai、人工智能框架的優(yōu)勢之全場景快速部署
【全場景快速部署】
支持云、邊緣和手機上的快速部署,實現(xiàn)更好的資源利用和隱私保護,讓開發(fā)者專注于AI應(yīng)用的創(chuàng)造。
層次結(jié)構(gòu)
MindSpore向用戶提供了3個不同層次的API,支撐用戶進行網(wǎng)絡(luò)構(gòu)建、整圖執(zhí)行、子圖執(zhí)行以及單算子執(zhí)行,從低到高分別為Low-Level Python API、Medium-Level Python API以及High-Level Python API。
♦Low-Level Python API
第一層為低階API,主要包括張量定義、基礎(chǔ)算子、自動微分等模塊,用戶可使用低階API輕松實現(xiàn)張量定義和求導(dǎo)計算,例如用戶可通過Tensor接口自定義張量,使用ops.composite模塊下的GradOperation算子計算函數(shù)在指定處的導(dǎo)數(shù)。
♦Medium-Level Python API
第二層為中階API,其封裝了低價API,提供網(wǎng)絡(luò)層、優(yōu)化器、損失函數(shù)等模塊,用戶可通過中階API靈活構(gòu)建神經(jīng)網(wǎng)絡(luò)和控制執(zhí)行流程,快速實現(xiàn)模型算法邏輯,例如用戶可調(diào)用Cell接口構(gòu)建神經(jīng)網(wǎng)絡(luò)模型和計算邏輯,通過使用loss模塊和Optimizer接口為神經(jīng)網(wǎng)絡(luò)模型添加損失函數(shù)和優(yōu)化方式,利用dataset模塊對數(shù)據(jù)進行處理以供模型的訓(xùn)練和推導(dǎo)使用。
♦High-Level Python API
第三層為高階API,其在中階API的基礎(chǔ)上又提供了訓(xùn)練推理的管理、混合精度訓(xùn)練、調(diào)試調(diào)優(yōu)等高級接口,方便用戶控制整網(wǎng)的執(zhí)行流程和實現(xiàn)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練推理及調(diào)優(yōu),例如用戶使用Model接口,指定要訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型和相關(guān)的訓(xùn)練設(shè)置,對神經(jīng)網(wǎng)絡(luò)模型進行訓(xùn)練,通過Profiler接口調(diào)試神經(jīng)網(wǎng)絡(luò)性能。
通用場景
【快速入門】
通過一個實際樣例實現(xiàn)手寫數(shù)字的識別,帶領(lǐng)大家體驗MindSpore基礎(chǔ)的功能,一般來說,完成整個樣例實踐會持續(xù)20~30分鐘。
面向?qū)<业耐ㄓ脠鼍敖坛讨畧D像分類
【圖像分類】
結(jié)合CIFAR-10數(shù)據(jù)集,講解MindSpore如何處理圖像分類任務(wù)。
面向?qū)<业耐ㄓ脠鼍敖坛讨楦蟹治?/p>
【情感分析】
構(gòu)建一個自然語言處理的模型,通過文本分析和推理實現(xiàn)情感分析,完成對文本的情感分類。
【生態(tài)合作】
開發(fā)者體驗(昇騰環(huán)境)
在云上ModelArts AI開發(fā)平臺搶鮮體驗昇騰資源
【開源合作】
MindSpore社區(qū)期待各位開發(fā)者的加入
【高校合作】
MindSpore誠摯邀請您加入華為沃土高校教研AI扶持計劃。
基礎(chǔ)使用教程
一、實現(xiàn)一個圖片分類應(yīng)用
1、處理需要的數(shù)據(jù)集,這里使用了MNIST數(shù)據(jù)集。
2、定義一個網(wǎng)絡(luò),這里我們使用LeNet網(wǎng)絡(luò)。
3、定義損失函數(shù)和優(yōu)化器。
4、加載數(shù)據(jù)集并進行訓(xùn)練,訓(xùn)練完成后,查看結(jié)果及保存模型文件。
5、加載保存的模型,進行推理。
6、驗證模型,加載測試數(shù)據(jù)集和訓(xùn)練后的模型,驗證結(jié)果精度。
二、實現(xiàn)簡單線性函數(shù)擬合
回歸問題算法通常是利用一系列屬性來預(yù)測一個值,預(yù)測的值是連續(xù)的。例如給出一套房子的一些特征數(shù)據(jù),如面積、臥室數(shù)等等來預(yù)測房價,利用最近一周的氣溫變化和衛(wèi)星云圖來預(yù)測未來的氣溫情況等。如果一套房子實際價格為500萬元,通過回歸分析的預(yù)測值為499萬元,則認為這是一個比較好的回歸分析。在機器學(xué)習(xí)問題中,常見的回歸分析有線性回歸、多項式回歸、邏輯回歸等。本例子介紹線性回歸算法,并通過MindSpore進行線性回歸AI訓(xùn)練體驗。
整體流程如下:
1、生成數(shù)據(jù)集
2、定義訓(xùn)練網(wǎng)絡(luò)
3、定義前向傳播網(wǎng)絡(luò)與反向傳播網(wǎng)絡(luò)并關(guān)聯(lián)
4、擬合過程可視化準備
5、執(zhí)行訓(xùn)練
三、加載模型用于推理或遷移學(xué)習(xí)
1、用于推理驗證
針對僅推理場景可以使用load_checkpoint把參數(shù)直接加載到網(wǎng)絡(luò)中,以便進行后續(xù)的推理驗證。
示例代碼如下:
resnet = ResNet50()
load_checkpoint("resnet50-2_32.ckpt", net=resnet)
dateset_eval = create_dataset(os.path.join(mnist_path, "test"), 32, 1) # define the test dataset
loss = CrossEntropyLoss()
model = Model(resnet, loss, metrics={"accuracy"})
acc = model.eval(dataset_eval)
load_checkpoint方法會把參數(shù)文件中的網(wǎng)絡(luò)參數(shù)加載到模型中。加載后,網(wǎng)絡(luò)中的參數(shù)就是CheckPoint保存的。
eval方法會驗證訓(xùn)練后模型的精度。
2、用于遷移學(xué)習(xí)
針對任務(wù)中斷再訓(xùn)練及微調(diào)(Fine Tune)場景,可以加載網(wǎng)絡(luò)參數(shù)和優(yōu)化器參數(shù)到模型中。
示例代碼如下:
# return a parameter dict for model
param_dict = load_checkpoint("resnet50-2_32.ckpt")
resnet = ResNet50()
opt = Momentum()
# load the parameter into net
load_param_into_net(resnet, param_dict)
# load the parameter into operator
load_param_into_net(opt, param_dict)
loss = SoftmaxCrossEntropyWithLogits()
model = Model(resnet, loss, opt)
model.train(epoch, dataset)
load_checkpoint方法會返回一個參數(shù)字典。
load_param_into_net會把參數(shù)字典中相應(yīng)的參數(shù)加載到網(wǎng)絡(luò)或優(yōu)化器中。
精品推薦
-
IntelliJ IDEA 2019
詳情 -
Microsoft VC++6.0安裝包
詳情 -
Microsoft VC++2015版運行庫
詳情 -
VC++2019運行庫
詳情 -
RobotStudio
詳情 -
Intel Visual Fortran
詳情 -
Microsoft Visual Studio 2022
詳情 -
Microsoft VC++2010運行庫安裝包
詳情 -
Ghidra反匯編
詳情 -
WeDo 2.0
詳情 -
西門子step7編程軟件
詳情 -
Dependency Walker
詳情 -
Vijeo designer basic
詳情 -
Arduino IDE
詳情 -
Thonny編輯器
詳情 -
豐煒Ladder Master
詳情
-
7 ENFI下載器
裝機必備軟件
網(wǎng)友評論