轉(zhuǎn)載:【AI系統(tǒng)】自動微分引言

這一篇幅里面主要是圍繞 AI 框架、或者訓(xùn)練平臺的自動微分功能。AI 框架中關(guān)于自動微分的一個重要性不言而喻,實際上自動微分是貫穿整個 AI 框架的全流程。沒有了自動微分,也就沒有了 AI 框架最核心的功能。為什么這么說呢?可以想象一下,假設(shè)在實現(xiàn)一個神經(jīng)網(wǎng)絡(luò)模型的時候,一般開發(fā)者只會使用 Pytorch 的 API 實現(xiàn)一個正向的網(wǎng)絡(luò)表達(dá)式,可是網(wǎng)絡(luò)模型的反向怎么表示呢?

實際上除了正向的表示是用戶手工的地去構(gòu)建,反向的表示、自動微分的實現(xiàn)、正反向的鏈接關(guān)系都是由 AI 框架,里面的自動微分功能去實現(xiàn)的。因此說自動微分這個功能在 AI 框架里面是非常的重要。

在接下來的內(nèi)容,主要是了解計算機(jī)實現(xiàn)微分的基本概念,其實微分的實現(xiàn)方式分為很多種,有數(shù)字微分,符號微分,自動微分。函數(shù)的微分是指對函數(shù)的局部變化的一種線性描述。微分可以近似地描述當(dāng)函數(shù)自變量的取值作足夠小的改變時,函數(shù)的值是怎樣改變的。

微分在數(shù)學(xué)中的定義:由?y?是?x?的函數(shù)?(y=f(x))?。從簡單的?x?y?座標(biāo)系來看,自變數(shù)?x?有微小的變化量時?(d/dx)?,應(yīng)變數(shù)?y?也會跟著變動,但?x?跟?y?的變化量都是極小的。當(dāng)?x?有極小的變化量時,我們稱對?x?微分。微分主要用于線性函數(shù)的改變量,這是微積分的基本概念之一。

在具體實現(xiàn)自動微分的過程中,主要有 2 種實現(xiàn)模式,前向和向后微分。前向微分和后向微分為了在數(shù)學(xué)上方便表達(dá),會引入一個亞克比原理,或者叫做亞克比矩陣。

對微分進(jìn)行表示,不過這僅限于數(shù)學(xué)表示,實際上實現(xiàn)的過程中更多的是通過以下三種方法實現(xiàn):

1)表達(dá)式或者圖的方式;2)操作符重載(object-oriented);3)源碼轉(zhuǎn)換 AST。

最后來去暢想自動微分的未來和挑戰(zhàn),來去回答我們到底要不要學(xué)一個 AI 框架呢?學(xué)模型算法和原理才是核心?AI 框架未來的核心點(diǎn)機(jī)制將會如何演進(jìn)?

如果您想了解更多AI知識,與AI專業(yè)人士交流,請立即訪問昇騰社區(qū)官方網(wǎng)站https://www.hiascend.com/或者深入研讀《AI系統(tǒng):原理與架構(gòu)》一書,這里匯聚了海量的AI學(xué)習(xí)資源和實踐課程,為您的AI技術(shù)成長提供強(qiáng)勁動力。不僅如此,您還有機(jī)會投身于全國昇騰AI創(chuàng)新大賽和昇騰AI開發(fā)者創(chuàng)享日等盛事,發(fā)現(xiàn)AI世界的無限奧秘~

轉(zhuǎn)載自:【AI系統(tǒng)】自動微分引言-ZOMI醬的文章-知乎

https://zhuanlan.zhihu.com/p/8034531295

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容