91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

PyTorch已為我們實現(xiàn)了大多數(shù)常用的非線性激活函數(shù)

人工智能君 ? 來源:人工智能君 ? 作者:人工智能君 ? 2022-07-06 14:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

PyTorch已為我們實現(xiàn)了大多數(shù)常用的非線性激活函數(shù),我們可以像使用任何其他的層那樣使用它們。讓我們快速看一個在PyTorch中使用ReLU激活函數(shù)的例子:

在上面這個例子中,輸入是包含兩個正值、兩個負(fù)值的張量,對其調(diào)用ReLU函數(shù),負(fù)值將取為0,正值則保持不變。

現(xiàn)在我們已經(jīng)了解了構(gòu)建神經(jīng)網(wǎng)絡(luò)架構(gòu)的大部分細節(jié),我們來構(gòu)建一個可用于解決真實問題的深度學(xué)習(xí)架構(gòu)。上一章中,我們使用了簡單的方法,因而可以只關(guān)注深度學(xué)習(xí)算法如何工作。后面將不再使用這種方式構(gòu)建架構(gòu),而是使用PyTorch中正常該用的方式構(gòu)建。

1.PyTorch構(gòu)建深度學(xué)習(xí)算法的方式

PyTorch中所有網(wǎng)絡(luò)都實現(xiàn)為類,創(chuàng)建PyTorch類的子類要調(diào)用nn.Module,并實現(xiàn)__init__和forward方法。在init方法中初始化層,這一點已在前一節(jié)講過。在forward方法中,把輸入數(shù)據(jù)傳給init方法中初始化的層,并返回最終的輸出。非線性函數(shù)經(jīng)常被forward函數(shù)直接使用,init方法也會使用一些。下面的代碼片段展示了深度學(xué)習(xí)架構(gòu)是如何用PyTrorch實現(xiàn)的:

如果你是Python新手,上述代碼可能會比較難懂,但它全部要做的就是繼承一個父類,并實現(xiàn)父類中的兩個方法。在Python中,我們通過將父類的名字作為參數(shù)傳入來創(chuàng)建子類。init方法相當(dāng)于Python中的構(gòu)造器,super方法用于將子類的參數(shù)傳給父類,我們的例子中父類就是nn.Module。

2.不同機器學(xué)習(xí)問題的模型架構(gòu)

待解決的問題種類將基本決定我們將要使用的層,處理序列化數(shù)據(jù)問題的模型從線性層開始,一直到長短期記憶(LSTM)層?;谝鉀Q的問題類別,最后一層是確定的。使用機器學(xué)習(xí)或深度學(xué)習(xí)算法解決的問題通常有三類,最后一層的情況通常如下。

?對于回歸問題,如預(yù)測T恤衫的銷售價格,最后使用的是有一個輸出的線性層,輸出值為連續(xù)的。

?將一張給定的圖片歸類為T恤衫或襯衫,用到的是sigmoid激活函數(shù),因為它的輸出值不是接近1就是接近0,這種問題通常稱為二分類問題。

?對于多類別分類問題,如必須把給定的圖片歸類為T恤、牛仔褲、襯衫或連衣裙,網(wǎng)絡(luò)最后將使用softmax層。讓我們拋開數(shù)學(xué)原理來直觀理解softmax的作用。舉例來說,它從前一線性層獲取輸入,并輸出給定數(shù)量樣例上的概率。在我們的例子中,將訓(xùn)練它預(yù)測每個圖片類別的4種概率。記住,所有概率相加的總和必然為1。

3.損失函數(shù)

一旦定義好了網(wǎng)絡(luò)架構(gòu),還剩下最重要的兩步。一步是評估網(wǎng)絡(luò)執(zhí)行特定的回歸或分類任務(wù)時表現(xiàn)的優(yōu)異程度,另一步是優(yōu)化權(quán)重。

優(yōu)化器(梯度下降)通常接受一個標(biāo)量值,因而loss函數(shù)應(yīng)生成一個標(biāo)量值,并使其在訓(xùn)練期間最小化。某些用例,如預(yù)測道路上障礙物的位置并判斷是否為行人,將需要兩個或更多損失函數(shù)。即使在這樣的場景下,我們也需要把損失組合成一個優(yōu)化器可以最小化的標(biāo)量。最后一章將詳細討論把多個損失值組合成一個標(biāo)量的真實例子。

上一章中,我們定義了自己的loss函數(shù)。PyTorch提供了經(jīng)常使用的loss函數(shù)的實現(xiàn)。我們看看回歸和分類問題的loss函數(shù)。

回歸問題經(jīng)常使用的loss函數(shù)是均方誤差(MSE)。它和前面一章實現(xiàn)的loss函數(shù)相同??梢允褂肞yTorch中實現(xiàn)的loss函數(shù),如下所示:

對于分類問題,我們使用交叉熵?fù)p失函數(shù)。在介紹交叉熵的數(shù)學(xué)原理之前,先了解下交叉熵?fù)p失函數(shù)做的事情。它計算用于預(yù)測概率的分類網(wǎng)絡(luò)的損失值,損失總和應(yīng)為1,就像softmax層一樣。當(dāng)預(yù)測概率相對正確概率發(fā)散時,交叉熵?fù)p失增加。例如,如果我們的分類算法對圖3.5為貓的預(yù)測概率值為0.1,而實際上這是只熊貓,那么交叉熵?fù)p失就會更高。如果預(yù)測的結(jié)果和真實標(biāo)簽相近,那么交叉熵?fù)p失就會更低。

下面是用Python代碼實現(xiàn)這種場景的例子。

為了在分類問題中使用交叉熵?fù)p失,我們真的不需要擔(dān)心內(nèi)部發(fā)生的事情——只要記住,預(yù)測差時損失值高,預(yù)測好時損失值低。PyTorch提供了loss函數(shù)的實現(xiàn),可以按照如下方式使用。

PyTorch包含的其他一些loss函數(shù)如表3.1所示。

表3.1

L1 loss 通常作為正則化器使用;第4章將進一步講述

MSE loss 均方誤差損失,用于回歸問題的損失函數(shù)

Cross-entropy loss 交叉熵?fù)p失,用于二分類和多類別分類問題

NLL Loss 用于分類問題,允許用戶使用特定的權(quán)重處理不平衡數(shù)據(jù)集

NLL Loss2d 用于像素級分類,通常和圖像分割問題有關(guān)

4.優(yōu)化網(wǎng)絡(luò)架構(gòu)

計算出網(wǎng)絡(luò)的損失值后,需要優(yōu)化權(quán)重以減少損失,并改善算法準(zhǔn)確率。簡單起見,讓我們看看作為黑盒的優(yōu)化器,它們接受損失函數(shù)和所有的學(xué)習(xí)參數(shù),并微量調(diào)整來改善網(wǎng)絡(luò)性能。PyTorch提供了深度學(xué)習(xí)中經(jīng)常用到的大多數(shù)優(yōu)化器。如果大家想研究這些優(yōu)化器內(nèi)部的動作,了解其數(shù)學(xué)原理,強烈建議瀏覽以下博客:

PyTorch提供的一些常用的優(yōu)化器如下:

?ADADELTA

?Adagrad

?Adam

?SparseAdam

?Adamax

?ASGD

?LBFGS

?RMSProp

?Rprop

?SGD

審核編輯 黃昊宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 非線性
    +關(guān)注

    關(guān)注

    1

    文章

    219

    瀏覽量

    24118
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4417

    瀏覽量

    67517
  • pytorch
    +關(guān)注

    關(guān)注

    2

    文章

    813

    瀏覽量

    14853
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    PyTorch 中RuntimeError分析

    原生實現(xiàn)。這是一個已知的 PyTorch 限制,常見于 Stable Diffusion、ComfyUI 等使用 interpolate(..., mode=\'nearest\') 的模型中
    發(fā)表于 03-06 06:02

    嵌入式開發(fā)常用函數(shù)速查表

    在嵌入式開發(fā)中,掌握常用函數(shù)的用法可以大大提高開發(fā)效率。無論是單片機初學(xué)者還是有一定經(jīng)驗的工程師,熟悉函數(shù)庫和調(diào)用方式都是必備技能。今天,我們為大家整理一份嵌入式開發(fā)
    的頭像 發(fā)表于 01-19 09:06 ?308次閱讀
    嵌入式開發(fā)<b class='flag-5'>常用</b><b class='flag-5'>函數(shù)</b>速查表

    如何用好 C 語言函數(shù)的返回值?

    。 C語言也有“行業(yè)潛規(guī)則”,不過,對于一般的函數(shù)大多數(shù)C語言程序員常常使用返回值 0 表示成功,非零值表示失敗。因此,如果**我們定義的函數(shù)能夠被
    發(fā)表于 12-25 07:17

    非線性矢量網(wǎng)絡(luò)分析儀雙端口校準(zhǔn)方法

    傳統(tǒng)矢量網(wǎng)絡(luò)分析儀(VNA)基于線性系統(tǒng)假設(shè),通過S參數(shù)表征設(shè)備特性。然而,現(xiàn)代通信系統(tǒng)(如5G、雷達)中普遍存在的大功率放大器、混頻器等非線性元件,會產(chǎn)生諧波失真、互調(diào)干擾等復(fù)雜信號行為。非線性校準(zhǔn)通過建立誤差修正模型,將測量
    的頭像 發(fā)表于 12-11 17:14 ?1219次閱讀
    <b class='flag-5'>非線性</b>矢量網(wǎng)絡(luò)分析儀雙端口校準(zhǔn)方法

    請問C語言開發(fā)單片機為什么大多數(shù)都采用全局變量的形式?

    C語言代碼,大多數(shù)都是使用全局變量,也就是用很多函數(shù)來操作這些變量,比如函數(shù)1把一個全局變量經(jīng)過一系列復(fù)雜的算法計算后改變了這個全局變量的值,然后函數(shù)2再拿著
    發(fā)表于 12-04 07:47

    電壓放大器在非線性超聲檢測研究中的應(yīng)用

    通過系統(tǒng)探究激勵條件相關(guān)變量對非線性超聲檢測結(jié)果的影響,排除干擾因素并篩選出能準(zhǔn)確表征碳纖維復(fù)合材料損傷的最優(yōu)激勵條件,為后續(xù)非線性超聲診斷成像研究奠定基礎(chǔ)。
    的頭像 發(fā)表于 11-30 14:29 ?633次閱讀
    電壓放大器在<b class='flag-5'>非線性</b>超聲檢測研究中的應(yīng)用

    電壓放大器在孔道灌漿非線性超聲測試實驗中的應(yīng)用

    實驗名稱:孔道灌漿非線性超聲測試原理及系統(tǒng)研究 研究方向:篩選非線性超聲測試的適用原理與方法、確定信號處理方法以提取有效諧波特征、搭建非線性超聲測試系統(tǒng)、優(yōu)化關(guān)鍵測試參數(shù)以保障檢測有效性 實驗?zāi)康?/div>
    的頭像 發(fā)表于 11-24 15:44 ?278次閱讀
    電壓放大器在孔道灌漿<b class='flag-5'>非線性</b>超聲測試實驗中的應(yīng)用

    C語言開發(fā)單片機為什么大多數(shù)都采用全局變量的形式?

    單片機的芯片資源從來都是 “精打細算” 的級別,CPU 主頻普遍不高,RAM 總?cè)萘勘揪途o張,分給??臻g的更是少得可憐。要是像普通軟件那樣,依賴函數(shù)返回值傳遞數(shù)據(jù)、頻繁用局部變量周轉(zhuǎn),一來二去占用
    的頭像 發(fā)表于 11-12 14:29 ?430次閱讀
    C語言開發(fā)單片機為什么<b class='flag-5'>大多數(shù)</b>都采用全局變量的形式?

    激活函數(shù)ReLU的理解與總結(jié)

    激活函數(shù)的作用 神經(jīng)網(wǎng)絡(luò)中使用激活函數(shù)來加入非線性因素,提高模型的表達能力。 如果不用激勵函數(shù)
    發(fā)表于 10-31 06:16

    電壓放大器驅(qū)動:非線性超聲檢測的前沿應(yīng)用探索

    非線性超聲檢測技術(shù)通過分析超聲波在材料中傳播時產(chǎn)生的非線性效應(yīng),能夠捕捉到傳統(tǒng)線性超聲方法無法識別的微觀缺陷和早期損傷,為材料的性能評估提供前所未有的靈敏度。而這項高精尖技術(shù)的
    的頭像 發(fā)表于 10-24 18:10 ?1248次閱讀
    電壓放大器驅(qū)動:<b class='flag-5'>非線性</b>超聲檢測的前沿應(yīng)用探索

    NMSIS庫的使用

    核可以提取不同的特征。激活操作是對卷積操作的輸出應(yīng)用一個非線性函數(shù),如ReLU等。激活函數(shù)可以增加網(wǎng)絡(luò)的
    發(fā)表于 10-24 09:58

    探索湍流中的非線性連續(xù)關(guān)系

    流體流動中的湍流行為是經(jīng)典物理學(xué)中最令人關(guān)注且最具挑戰(zhàn)性的問題之一。大多數(shù)流體流動都表現(xiàn)出湍流,湍流在已知宇宙的廣泛尺度上發(fā)揮著關(guān)鍵作用。其影響范圍廣泛,從細胞內(nèi)的微觀生物過程和生物體的循環(huán)系統(tǒng),到
    的頭像 發(fā)表于 10-18 11:34 ?1390次閱讀
    探索湍流中的<b class='flag-5'>非線性</b>連續(xù)關(guān)系

    線性非線性:工程師必須掌握的Abaqus三大非線性來源

    碩迪科技為您深入剖析Abaqus三大非線性來源:材料非線性、幾何非線性、邊界條件非線性。掌握工程師必備的非線性分析核心知識,理解復(fù)雜工程問題
    的頭像 發(fā)表于 08-07 18:08 ?1473次閱讀
    從<b class='flag-5'>線性</b>到<b class='flag-5'>非線性</b>:工程師必須掌握的Abaqus三大<b class='flag-5'>非線性</b>來源

    一次消諧器核心功能依賴于其非線性電阻材料

    一次消諧器在電力系統(tǒng)中發(fā)揮著至關(guān)重要的作用,今天我們來看看它的主要構(gòu)成材料: 1. 核心材料:非線性電阻的“靈魂” 一次消諧器的核心功能依賴于其非線性電阻材料,主要分為兩類:碳化硅(SiC)基:早期
    的頭像 發(fā)表于 08-02 06:20 ?906次閱讀
    一次消諧器核心功能依賴于其<b class='flag-5'>非線性</b>電阻材料

    Aigtek電壓放大器在非線性聲學(xué)共振法檢測中的應(yīng)用

    實驗名稱:復(fù)合材料沖擊疲勞試樣的非線性聲學(xué)共振法檢測 實驗?zāi)康模簽檠芯繌?fù)合材料中的沖擊疲勞損傷,還展開了非線性聲學(xué)共振法的相關(guān)檢測研究,并將檢測結(jié)果與振動聲調(diào)制檢測相對比。與振動聲調(diào)制檢測方法一樣
    的頭像 發(fā)表于 03-14 11:24 ?810次閱讀
    Aigtek電壓放大器在<b class='flag-5'>非線性</b>聲學(xué)共振法檢測中的應(yīng)用