最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PyTorch 激活函數(shù)的實(shí)現(xiàn)示例

 更新時(shí)間:2025年12月24日 09:10:00   作者:byxdaz  
激活函數(shù)是神經(jīng)網(wǎng)絡(luò)中至關(guān)重要的組成部分,本文就來詳細(xì)的介紹一下PyTorch常用的激活函數(shù),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

激活函數(shù)是神經(jīng)網(wǎng)絡(luò)中至關(guān)重要的組成部分,它們?yōu)榫W(wǎng)絡(luò)引入了非線性特性,使得神經(jīng)網(wǎng)絡(luò)能夠?qū)W習(xí)復(fù)雜模式。PyTorch 提供了多種常用的激活函數(shù)實(shí)現(xiàn)。

常用激活函數(shù)

1. ReLU (Rectified Linear Unit)

數(shù)學(xué)表達(dá)式:

PyTorch實(shí)現(xiàn):

torch.nn.ReLU(inplace=False)

特點(diǎn):

  • 計(jì)算簡單高效
  • 解決梯度消失問題(正區(qū)間)
  • 可能導(dǎo)致"神經(jīng)元死亡"(負(fù)區(qū)間梯度為0),ReLU 在輸入為負(fù)時(shí)輸出恒為 0,導(dǎo)致反向傳播中梯度消失,相關(guān)權(quán)重?zé)o法更新‌14。若神經(jīng)元長期處于負(fù)輸入狀態(tài),則會(huì)永久“死亡”,失去學(xué)習(xí)能力‌。

示例:

relu = nn.ReLU()
input = torch.tensor([-1.0, 0.0, 1.0, 2.0])
output = relu(input)  # tensor([0., 0., 1., 2.])

2. LeakyReLU

數(shù)學(xué)表達(dá)式:

PyTorch實(shí)現(xiàn):

torch.nn.LeakyReLU(negative_slope=0.01, inplace=False)

特點(diǎn):

  • 解決了ReLU的"神經(jīng)元死亡"問題,通過引入負(fù)區(qū)間的微小斜率(如 torch.nn.LeakyReLU(negative_slope=0.01)),保留負(fù)輸入的梯度傳播,避免神經(jīng)元死亡‌。
  • negative_slope通常設(shè)為0.01

示例

leaky_relu = nn.LeakyReLU(negative_slope=0.1)
input = torch.tensor([-1.0, 0.0, 1.0, 2.0])
output = leaky_relu(input)  # tensor([-0.1000, 0.0000, 1.0000, 2.0000])

3. Sigmoid

數(shù)學(xué)表達(dá)式:

 PyTorch實(shí)現(xiàn):

torch.nn.Sigmoid()

特點(diǎn):

  • 輸出范圍(0,1),適合二分類問題
  • 容易出現(xiàn)梯度消失問題
  • 輸出不以0為中心

示例:

sigmoid = nn.Sigmoid()
input = torch.tensor([-1.0, 0.0, 1.0, 2.0])
output = sigmoid(input)  # tensor([0.2689, 0.5000, 0.7311, 0.8808])

4. Tanh (Hyperbolic Tangent)

數(shù)學(xué)表達(dá)式:

PyTorch實(shí)現(xiàn)

torch.nn.Tanh()

特點(diǎn):

  • 輸出范圍(-1,1),以0為中心
  • 比sigmoid梯度更強(qiáng)
  • 仍存在梯度消失問題

示例:

tanh = nn.Tanh()
input = torch.tensor([-1.0, 0.0, 1.0, 2.0])
output = tanh(input)  # tensor([-0.7616, 0.0000, 0.7616, 0.9640])

5. Softmax

數(shù)學(xué)表達(dá)式:

PyTorch實(shí)現(xiàn):

torch.nn.Softmax(dim=None)

特點(diǎn):

  • 輸出為概率分布(和為1)
  • 常用于多分類問題的輸出層
  • dim參數(shù)指定計(jì)算維度

示例:

softmax = nn.Softmax(dim=1)
input = torch.tensor([[1.0, 2.0, 3.0]])
output = softmax(input)  # tensor([[0.0900, 0.2447, 0.6652]])

其他激活函數(shù)

6. ELU (Exponential Linear Unit)

torch.nn.ELU(alpha=1.0, inplace=False)

7. GELU (Gaussian Error Linear Unit)

torch.nn.GELU()

8. Swish

class Swish(nn.Module):
    def forward(self, x):
        return x * torch.sigmoid(x)

選擇指南

  • 隱藏層:通常首選ReLU及其變體(LeakyReLU、ELU等)
  • 二分類輸出層:Sigmoid
  • 多分類輸出層:Softmax
  • 需要負(fù)輸出的情況:Tanh或LeakyReLU
  • Transformer模型:常用GELU

自定義激活函數(shù)

PyTorch可以輕松實(shí)現(xiàn)自定義激活函數(shù):

class CustomActivation(nn.Module):
    def __init__(self):
        super().__init__()
    
    def forward(self, x):
        return torch.where(x > 0, x, torch.exp(x) - 1)

注意事項(xiàng)

  • 梯度消失/爆炸問題
  • 死亡神經(jīng)元問題(特別是ReLU)
  • 計(jì)算效率考慮
  • 初始化方法應(yīng)與激活函數(shù)匹配

相關(guān)文章

  • python 快速排序代碼

    python 快速排序代碼

    閑來無事寫了個(gè)python快排序
    2009-11-11
  • 如何在Python里使用ChatGPT及ChatGPT簡介

    如何在Python里使用ChatGPT及ChatGPT簡介

    今年最火的應(yīng)該就是ChatGPT了,現(xiàn)在短短2個(gè)月已經(jīng)突破了1億注冊(cè)用戶,馬斯克可高興壞了,這篇文章主要介紹了如何在Python里使用ChatGPT及ChatGPT是什么?注冊(cè)方式?需要的朋友可以參考下
    2023-02-02
  • python實(shí)現(xiàn)Floyd算法

    python實(shí)現(xiàn)Floyd算法

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)Floyd算法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Python動(dòng)態(tài)導(dǎo)入模塊的方法實(shí)例分析

    Python動(dòng)態(tài)導(dǎo)入模塊的方法實(shí)例分析

    這篇文章主要介紹了Python動(dòng)態(tài)導(dǎo)入模塊的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了Python動(dòng)態(tài)導(dǎo)入系統(tǒng)模塊、自定義模塊以及模塊列表的相關(guān)操作技巧,需要的朋友可以參考下
    2018-06-06
  • Mac下python包管理工具pip的安裝

    Mac下python包管理工具pip的安裝

    這篇文章介紹了Mac下python包管理工具pip的安裝方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • 基于Python實(shí)現(xiàn)簡易的植物識(shí)別小系統(tǒng)

    基于Python實(shí)現(xiàn)簡易的植物識(shí)別小系統(tǒng)

    這篇文章主要介紹了利用Python實(shí)現(xiàn)一個(gè)簡易的植物識(shí)別系統(tǒng),文中的示例代碼簡潔易懂,對(duì)我們學(xué)習(xí)Python有一定的幫助,需要的小伙伴可以參考一下
    2021-12-12
  • 用Python進(jìn)行TCP網(wǎng)絡(luò)編程的教程

    用Python進(jìn)行TCP網(wǎng)絡(luò)編程的教程

    這篇文章主要介紹了用Python進(jìn)行TCP網(wǎng)絡(luò)編程的教程,是Python學(xué)習(xí)當(dāng)中的基礎(chǔ)知識(shí),代碼基于Python2.x版本,需要的朋友可以參考下
    2015-04-04
  • ndarray的轉(zhuǎn)置(numpy.transpose()與A.T命令對(duì)比分析)

    ndarray的轉(zhuǎn)置(numpy.transpose()與A.T命令對(duì)比分析)

    這篇文章主要介紹了ndarray的轉(zhuǎn)置(numpy.transpose()與A.T命令對(duì)比分析),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • python爬取微信公眾號(hào)文章的方法

    python爬取微信公眾號(hào)文章的方法

    這篇文章主要為大家詳細(xì)介紹了python爬取微信公眾號(hào)文章的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • python腳本實(shí)現(xiàn)mp4中的音頻提取并保存在原目錄

    python腳本實(shí)現(xiàn)mp4中的音頻提取并保存在原目錄

    這篇文章主要介紹了python腳本實(shí)現(xiàn)mp4中的音頻提取并保存在原目錄,本文給大家通過實(shí)例代碼介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-02-02

最新評(píng)論

滨州市| 花莲市| 建平县| 凌源市| 天峻县| 阿瓦提县| 锦州市| 永胜县| 吕梁市| 东辽县| 鄂尔多斯市| 辉南县| 芦山县| 分宜县| 贵定县| 北票市| 乌海市| 肥东县| 舞阳县| 孝感市| 色达县| 麦盖提县| 龙海市| 宜兴市| 怀集县| 丁青县| 江安县| 绥阳县| 疏附县| 游戏| 浑源县| 西贡区| 苏州市| 峨眉山市| 扶沟县| 信阳市| 汽车| 东台市| 栖霞市| 巴楚县| 富裕县|