成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 知識(shí)庫(kù) > Pytorch中Softmax和LogSoftmax的使用詳解

Pytorch中Softmax和LogSoftmax的使用詳解

熱門(mén)標(biāo)簽:商家地圖標(biāo)注海報(bào) 地圖標(biāo)注自己和別人標(biāo)注區(qū)別 南陽(yáng)打電話機(jī)器人 孝感營(yíng)銷電話機(jī)器人效果怎么樣 ai電銷機(jī)器人的優(yōu)勢(shì) 打電話機(jī)器人營(yíng)銷 騰訊地圖標(biāo)注沒(méi)法顯示 海外網(wǎng)吧地圖標(biāo)注注冊(cè) 聊城語(yǔ)音外呼系統(tǒng)

一、函數(shù)解釋

1.Softmax函數(shù)常用的用法是指定參數(shù)dim就可以:

(1)dim=0:對(duì)每一列的所有元素進(jìn)行softmax運(yùn)算,并使得每一列所有元素和為1。

(2)dim=1:對(duì)每一行的所有元素進(jìn)行softmax運(yùn)算,并使得每一行所有元素和為1。

class Softmax(Module):
    r"""Applies the Softmax function to an n-dimensional input Tensor
    rescaling them so that the elements of the n-dimensional output Tensor
    lie in the range [0,1] and sum to 1.
    Softmax is defined as:
    .. math::
        \text{Softmax}(x_{i}) = \frac{\exp(x_i)}{\sum_j \exp(x_j)}
    Shape:
        - Input: :math:`(*)` where `*` means, any number of additional
          dimensions
        - Output: :math:`(*)`, same shape as the input
    Returns:
        a Tensor of the same dimension and shape as the input with
        values in the range [0, 1]
    Arguments:
        dim (int): A dimension along which Softmax will be computed (so every slice
            along dim will sum to 1).
    .. note::
        This module doesn't work directly with NLLLoss,
        which expects the Log to be computed between the Softmax and itself.
        Use `LogSoftmax` instead (it's faster and has better numerical properties).
    Examples::
        >>> m = nn.Softmax(dim=1)
        >>> input = torch.randn(2, 3)
        >>> output = m(input)
    """
    __constants__ = ['dim']
 
    def __init__(self, dim=None):
        super(Softmax, self).__init__()
        self.dim = dim
 
    def __setstate__(self, state):
        self.__dict__.update(state)
        if not hasattr(self, 'dim'):
            self.dim = None
 
    def forward(self, input):
        return F.softmax(input, self.dim, _stacklevel=5)
 
    def extra_repr(self):
        return 'dim={dim}'.format(dim=self.dim)

2.LogSoftmax其實(shí)就是對(duì)softmax的結(jié)果進(jìn)行l(wèi)og,即Log(Softmax(x))

class LogSoftmax(Module):
    r"""Applies the :math:`\log(\text{Softmax}(x))` function to an n-dimensional
    input Tensor. The LogSoftmax formulation can be simplified as:
    .. math::
        \text{LogSoftmax}(x_{i}) = \log\left(\frac{\exp(x_i) }{ \sum_j \exp(x_j)} \right)
    Shape:
        - Input: :math:`(*)` where `*` means, any number of additional
          dimensions
        - Output: :math:`(*)`, same shape as the input
    Arguments:
        dim (int): A dimension along which LogSoftmax will be computed.
    Returns:
        a Tensor of the same dimension and shape as the input with
        values in the range [-inf, 0)
    Examples::
        >>> m = nn.LogSoftmax()
        >>> input = torch.randn(2, 3)
        >>> output = m(input)
    """
    __constants__ = ['dim']
 
    def __init__(self, dim=None):
        super(LogSoftmax, self).__init__()
        self.dim = dim
 
    def __setstate__(self, state):
        self.__dict__.update(state)
        if not hasattr(self, 'dim'):
            self.dim = None
 
    def forward(self, input):
        return F.log_softmax(input, self.dim, _stacklevel=5)

二、代碼示例

輸入代碼

import torch
import torch.nn as nn
import numpy as np
 
batch_size = 4
class_num = 6
inputs = torch.randn(batch_size, class_num)
for i in range(batch_size):
    for j in range(class_num):
        inputs[i][j] = (i + 1) * (j + 1)
 
print("inputs:", inputs)

得到大小batch_size為4,類別數(shù)為6的向量(可以理解為經(jīng)過(guò)最后一層得到)

tensor([[ 1., 2., 3., 4., 5., 6.],
[ 2., 4., 6., 8., 10., 12.],
[ 3., 6., 9., 12., 15., 18.],
[ 4., 8., 12., 16., 20., 24.]])

接著我們對(duì)該向量每一行進(jìn)行Softmax

Softmax = nn.Softmax(dim=1)
probs = Softmax(inputs)
print("probs:\n", probs)

得到

tensor([[4.2698e-03, 1.1606e-02, 3.1550e-02, 8.5761e-02, 2.3312e-01, 6.3369e-01],
[3.9256e-05, 2.9006e-04, 2.1433e-03, 1.5837e-02, 1.1702e-01, 8.6467e-01],
[2.9067e-07, 5.8383e-06, 1.1727e-04, 2.3553e-03, 4.7308e-02, 9.5021e-01],
[2.0234e-09, 1.1047e-07, 6.0317e-06, 3.2932e-04, 1.7980e-02, 9.8168e-01]])

此外,我們對(duì)該向量每一行進(jìn)行LogSoftmax

LogSoftmax = nn.LogSoftmax(dim=1)
log_probs = LogSoftmax(inputs)
print("log_probs:\n", log_probs)

得到

tensor([[-5.4562e+00, -4.4562e+00, -3.4562e+00, -2.4562e+00, -1.4562e+00, -4.5619e-01],
[-1.0145e+01, -8.1454e+00, -6.1454e+00, -4.1454e+00, -2.1454e+00, -1.4541e-01],
[-1.5051e+01, -1.2051e+01, -9.0511e+00, -6.0511e+00, -3.0511e+00, -5.1069e-02],
[-2.0018e+01, -1.6018e+01, -1.2018e+01, -8.0185e+00, -4.0185e+00, -1.8485e-02]])

驗(yàn)證每一行元素和是否為1

# probs_sum in dim=1
probs_sum = [0 for i in range(batch_size)]
 
for i in range(batch_size):
    for j in range(class_num):
        probs_sum[i] += probs[i][j]
    print(i, "row probs sum:", probs_sum[i])

得到每一行的和,看到確實(shí)為1

0 row probs sum: tensor(1.)
1 row probs sum: tensor(1.0000)
2 row probs sum: tensor(1.)
3 row probs sum: tensor(1.)

驗(yàn)證LogSoftmax是對(duì)Softmax的結(jié)果進(jìn)行Log

# to numpy
np_probs = probs.data.numpy()
print("numpy probs:\n", np_probs)
 
# np.log()
log_np_probs = np.log(np_probs)
print("log numpy probs:\n", log_np_probs)

得到

numpy probs:
[[4.26977826e-03 1.16064614e-02 3.15496325e-02 8.57607946e-02 2.33122006e-01 6.33691311e-01]
[3.92559559e-05 2.90064461e-04 2.14330270e-03 1.58369839e-02 1.17020354e-01 8.64669979e-01]
[2.90672347e-07 5.83831024e-06 1.17265590e-04 2.35534250e-03 4.73083146e-02 9.50212955e-01]
[2.02340233e-09 1.10474026e-07 6.03167746e-06 3.29318427e-04 1.79801770e-02 9.81684387e-01]]
log numpy probs:
[[-5.4561934e+00 -4.4561934e+00 -3.4561934e+00 -2.4561932e+00 -1.4561933e+00 -4.5619333e-01]
[-1.0145408e+01 -8.1454077e+00 -6.1454072e+00 -4.1454072e+00 -2.1454074e+00 -1.4540738e-01]
[-1.5051069e+01 -1.2051069e+01 -9.0510693e+00 -6.0510693e+00 -3.0510693e+00 -5.1069155e-02]
[-2.0018486e+01 -1.6018486e+01 -1.2018485e+01 -8.0184851e+00 -4.0184855e+00 -1.8485421e-02]]

驗(yàn)證完畢

三、整體代碼

import torch
import torch.nn as nn
import numpy as np
 
batch_size = 4
class_num = 6
inputs = torch.randn(batch_size, class_num)
for i in range(batch_size):
    for j in range(class_num):
        inputs[i][j] = (i + 1) * (j + 1)
 
print("inputs:", inputs)
Softmax = nn.Softmax(dim=1)
probs = Softmax(inputs)
print("probs:\n", probs)
 
LogSoftmax = nn.LogSoftmax(dim=1)
log_probs = LogSoftmax(inputs)
print("log_probs:\n", log_probs)
 
# probs_sum in dim=1
probs_sum = [0 for i in range(batch_size)]
 
for i in range(batch_size):
    for j in range(class_num):
        probs_sum[i] += probs[i][j]
    print(i, "row probs sum:", probs_sum[i])
 
# to numpy
np_probs = probs.data.numpy()
print("numpy probs:\n", np_probs)
 
# np.log()
log_np_probs = np.log(np_probs)
print("log numpy probs:\n", log_np_probs)

基于pytorch softmax,logsoftmax 表達(dá)

import torch
import numpy as np
input = torch.autograd.Variable(torch.rand(1, 3))

print(input)
print('softmax={}'.format(torch.nn.functional.softmax(input, dim=1)))
print('logsoftmax={}'.format(np.log(torch.nn.functional.softmax(input, dim=1))))

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • PyTorch的SoftMax交叉熵?fù)p失和梯度用法
  • 淺談pytorch中torch.max和F.softmax函數(shù)的維度解釋
  • PyTorch: Softmax多分類實(shí)戰(zhàn)操作

標(biāo)簽:牡丹江 六盤(pán)水 聊城 楊凌 迪慶 揚(yáng)州 撫州 南寧

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Pytorch中Softmax和LogSoftmax的使用詳解》,本文關(guān)鍵詞  Pytorch,中,Softmax,和,LogSoftmax,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Pytorch中Softmax和LogSoftmax的使用詳解》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Pytorch中Softmax和LogSoftmax的使用詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    99精品视频在线观看免费| 日韩中文字幕在线播放| 国产一区二区三区四区五区六区| 秋霞午夜av一区二区三区| 亚洲国产精品久久久天堂| 蜜桃臀av在线| sm在线观看| 久久伊99综合婷婷久久伊| 中文字幕在线视频网站| 色琪琪丁香婷婷综合久久| 国产精品中文字幕一区二区三区| 久久久久久福利| 老司机成人影院| 你懂的在线看| 国产白丝袜美女久久久久| 国产精品爱久久久久久久小说| 成人免费一级视频| 国产又爽又黄免费软件| 国产一区二区精品在线| 国产成人三级在线播放| 亚洲欧美一区二区视频| 中文字幕伊人| chinesespank调教| 亚洲区在线播放| 亚洲欧洲二区| 欧美一a一片一级一片| 成人台湾亚洲精品一区二区| 中文字字幕在线中文乱码电影| 久久国产视频一区| sm一区二区三区| 久久99精品久久久久久青青日本| 色一色在线观看视频网站| 国产一区二区三区在线观看网站| 国产一区二区三区视频| 国产69精品久久久久9999| 国内精品国产成人国产三级| 国产免费一区二区三区四在线播放| heisi视频网在线观看| 国产免费一区| 污污动漫在线观看| 国产伦精品一区二区三区视频小说| 91嫩草国产丨精品入口麻豆| 中文字幕中文字幕在线中心一区| 麻豆专区一区二区三区四区五区| 99国产精品一区二区三区| 日本一区二区三区网站| 亚洲欧美黄色片| 九一精品久久久| 天天综合网 天天综合色| 丁香五精品蜜臀久久久久99网站| 精品婷婷色一区二区三区蜜桃| 波多野结衣中文字幕一区| 亚洲欧美综合久久久| 亚洲精品aⅴ中文字幕乱码| 欧美日韩在线播放视频| 91精品国产九九九久久久亚洲| 精品影片在线观看的网站| 亚洲精品国产精品国自产网站| 中文在线资源观看网站视频免费不卡| 欧美激情视频网| 9191精品国产综合久久久久久| 另类图片亚洲色图| 久久免费看av| 国产成人综合精品| 欧美伊久线香蕉线新在线| 久久精品久久精品国产大片| 国产精品日本精品| 国产视频精品免费播放| 欧洲免费在线视频| 91吃瓜网在线观看| 日韩欧美激情电影| 日韩精品视频网站| a级日韩大片| 日韩精品福利一区二区三区| 亚洲麻豆视频| 91丨九色丨蝌蚪丨老板| 亚洲精品xxx| 欧美性狂猛xxxxxbbbbb| a黄色片在线观看| 久久深夜福利免费观看| 蜜桃一区二区三区四区| 国产在线视频福利| 国产极品在线观看| 免费看岛国视频在线观看| 五月婷在线视频| 怡红院精品视频| 精品无码久久久久久久| 国产精品国产三级国产试看| jizz在亚洲| av先锋影音少妇| 97在线观看免费高清视频| 国产伦精品一区二区三区免费视频| 亚洲精品中文字幕av| 一区二区三区四区五区在线| 蜜桃麻豆av在线| 成人黄色在线观看视频| 韩日中文字幕第一页| 国产一区喷水| 日韩av在线影院| av基地在线| 久久精品99国产精品日本| 免费一区二区三区视频狠狠| 视频一区视频二区国产精品| 一菊综合网成人综合网| 日本一区二区电影| 亚洲人成毛片在线播放女女| 国产+成+人+亚洲欧洲在线| 国产喷水吹潮视频www| 免费黄漫在线观看| 国产精品久久久久久久小唯西川| 免费高清完整在线观看| 亚洲欧洲日产国码av系列天堂| www.4hu95.com四虎| 国产一区二区三区精品视频| 亚洲精品乱码久久久久久按摩观| 欧美欧美全黄| 国产精品二区在线观看| 日韩一级免费| 在线观看视频h| 欧美性猛交xxxx黑人| 欧美一级黑人aaaaaaa做受| 午夜福利理论片在线观看| 性欧美18一19内谢| 欧美自拍偷拍第一页| 久久www视频| 《视频一区视频二区| 色94色欧美sute亚洲线路二| 国内精彩免费自拍视频在线观看网址| 国产情人综合久久777777| 影视一区二区三区| 欧美日本亚洲视频| 成人免费毛片嘿嘿连载视频| 国产精品123区| 日韩电影一区二区三区四区| 一区二区国产日产| 日韩电影中文字幕在线观看| 久久机热这里只有精品| 午夜精品影院在线观看| 91视频观看| 成人小视频免费在线观看| 婷婷丁香花五月天| 亚洲国产日韩欧美一区二区三区| 黄色福利视频网站| 亚洲精品自拍动漫在线| 青青视频在线观| 日韩成人在线视频观看| www日韩av| 午夜在线观看一区| 色哟哟精品丝袜一区二区| 88xx成人精品| 成人综合社区| 5g成人永久免费影院| 亚洲第一天堂在线观看| 亚洲春色综合另类校园电影| 久久精品在线| 最新中文字幕在线观看| 国产一区日韩二区欧美三区| 中文字幕av免费在线观看| 亚洲精品一区二区三区影院忠贞| 亚洲成人动漫在线观看| 国产福利免费观看| 久久国产精品首页| 久本草在线中文字幕亚洲| 欧美国产亚洲精品久久久8v| 97久久天天综合色天天综合色hd| 久久在线免费观看视频| 凹凸成人精品亚洲精品密奴| 欧美伦理视频网站| 中文字幕一区二区三区四区| 日本福利一区二区| 久草在线中文最新视频| 首页国产欧美日韩丝袜| 欧美中文字幕久久| 成人看片毛片免费播放器| 色欲AV无码精品一区二区久久| 蜜桃成人在线| 九色porny蝌蚪视频在线观看| 秋霞电影网一区二区| 日韩av在线中文| 超级砰砰砰97免费观看最新一期| 成人精品一区二区三区电影| 母乳一区在线观看| 欧美一级成年大片在线观看| av文字幕在线观看| 色天使色偷偷av一区二区| 亚洲免费不卡视频| 国产亚洲自拍偷拍| 欧美特黄一级大片| 风间由美性色一区二区三区四区| 男人的天堂va| 六十路在线观看| 性高爱久久久久久久久| 91麻豆国产视频| 97香蕉久久夜色精品国产| 久久精品影视| 亚洲蜜桃精久久久久久久久久久久| 一区二区三区观看| 亚洲av无码乱码国产精品| 久久婷婷激情| 一区二区三区无码高清视频| 高清欧美性猛交| 中文字幕在线观看一区| 亚洲第一色网站| 成人欧美一区二区三区在线湿哒哒| 你懂的在线视频观看| 色七七影院综合| 99久久免费看精品国产一区| 国产精品美女在线播放| 精品成av人一区二区三区| 无遮挡动作视频在线观看免费入口| 国产日韩在线| 欧美日韩高清在线一区| 99re热这里只有精品视频| 日本二区三区视频| 在线亚洲色图| 亚洲一区在线观看免费| 中文字幕视频一区二区在线有码| 内衣办公室在线| 亚洲不卡av一区二区三区| 黑人巨大精品欧美一区二区桃花岛| 超碰免费97在线观看| 欧美性视频在线播放| 乱馆动漫1~6集在线观看| 欧美激情精品久久久久久免费| 成人激情免费电影网址| 免费看成人a| 夜夜嗨av一区二区三区中文字幕| 亚洲综合视频在线观看| xxxx在线免费观看| а√天堂资源国产精品| 天天干天天操天天爱| 亚洲国产aⅴ精品一区二区三区| 欧美日韩一区二区三区免费看| 国内不卡一区二区三区| 久久躁狠狠躁夜夜爽| 中国日本在线视频中文字幕| 色老头一区二区| xvideos.蜜桃一区二区| 国产女人被狂躁到高潮小说| 午夜精彩视频| 欧美三级在线观看视频| 琪琪亚洲精品午夜在线| 中文字幕一区二区三区中文字幕| 五月天网站亚洲| 国产精品日韩在线| 成人天堂入口网站| 专区另类欧美日韩| 国产精欧美一区二区三区| 亚洲欧美中文在线视频| 精品一区二区三区久久| 在线观看成人黄色| 无码人妻精品一区二区三区夜夜嗨| 一区二区三区视频免费在线观看| 国产精品自拍亚洲| 色女人在线视频| 午夜精品久久久久影视| 国产一起色一起爱| 青青草精品视频在线观看| 伊人在我在线看导航| 欧美激情三级| 特级西西人体www高清大胆| 色琪琪综合男人的天堂aⅴ视频| 玖玖精品在线视频| 国产视频在线一区| 黄色片久久久久| 欧美男女视频| 福利视频一区二区三区四区| 午夜美女久久久久爽久久| 老鸭窝91久久精品色噜噜导演| 欧美aaa视频| 亚洲成人黄色片| 国产成人三级在线观看视频| 欧美日韩在线观看一区二区| 日韩美女视频一区二区在线观看| 久久九九电影| 国内精品一区二区| 神马久久影院| 国产永久免费高清在线观看| 精品偷拍一区二区三区在线看| 18性欧美xxxⅹ性满足| 欧美一区免费看| 亚洲va国产va天堂va久久| 在线色欧美三级视频| 麻豆久久一区| 亚洲成人一区| 天堂成人在线视频| 另类尿喷潮videofree| 日韩欧美一级在线播放| 欧美有码视频| 特黄视频免费观看| av电影在线观看一区二区三区| 亚洲bbw性色大片| 波多野一区二区| 国产在线更新| 久久久中精品2020中文| 亚洲视屏一区| 人人爽人人爽av| 精品国模一区二区三区| 91精品国产入口在线| 国产乱淫a∨片免费观看| eeuss鲁片一区| 日本午夜人人精品| 人体内射精一区二区三区| 成人高h视频在线| 91精品中文字幕一区二区三区| 国产偷久久久精品专区| 性一交一乱一精一晶| 久久久久久高潮国产精品视| 中文字幕av在线播放| 在线观看的黄色| 免费看三级黄色片| 九九热视频精品| 欧美激情一级欧美精品| 最新精品在线| 免费在线看一区| 青青草精品视频在线| 亚洲人成网站色在线观看| 99re这里只有精品6| 色网在线免费观看| 亚洲熟妇av日韩熟妇在线| 久久大胆人体| 成人观看网站a| 久久精品国产第一区二区三区| 久久精品一级片| 999久久久国产| 伊人久久国产| 国产91精品捆绑调教| 国产成人77亚洲精品www|