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

主頁 > 知識庫 > pytorch自定義不可導(dǎo)激活函數(shù)的操作

pytorch自定義不可導(dǎo)激活函數(shù)的操作

熱門標簽:商家地圖標注海報 打電話機器人營銷 騰訊地圖標注沒法顯示 南陽打電話機器人 孝感營銷電話機器人效果怎么樣 地圖標注自己和別人標注區(qū)別 海外網(wǎng)吧地圖標注注冊 聊城語音外呼系統(tǒng) ai電銷機器人的優(yōu)勢

pytorch自定義不可導(dǎo)激活函數(shù)

今天自定義不可導(dǎo)函數(shù)的時候遇到了一個大坑。

首先我需要自定義一個函數(shù):sign_f

import torch
from torch.autograd import Function
import torch.nn as nn
class sign_f(Function):
    @staticmethod
    def forward(ctx, inputs):
        output = inputs.new(inputs.size())
        output[inputs >= 0.] = 1
        output[inputs  0.] = -1
        ctx.save_for_backward(inputs)
        return output

    @staticmethod
    def backward(ctx, grad_output):
        input_, = ctx.saved_tensors
        grad_output[input_>1.] = 0
        grad_output[input_-1.] = 0
        return grad_output

然后我需要把它封裝為一個module 類型,就像 nn.Conv2d 模塊 封裝 f.conv2d 一樣,于是

import torch
from torch.autograd import Function
import torch.nn as nn
class sign_(nn.Module):
	# 我需要的module
    def __init__(self, *kargs, **kwargs):
        super(sign_, self).__init__(*kargs, **kwargs)
        
    def forward(self, inputs):
    	# 使用自定義函數(shù)
        outs = sign_f(inputs)
        return outs

class sign_f(Function):
    @staticmethod
    def forward(ctx, inputs):
        output = inputs.new(inputs.size())
        output[inputs >= 0.] = 1
        output[inputs  0.] = -1
        ctx.save_for_backward(inputs)
        return output

    @staticmethod
    def backward(ctx, grad_output):
        input_, = ctx.saved_tensors
        grad_output[input_>1.] = 0
        grad_output[input_-1.] = 0
        return grad_output

結(jié)果報錯

TypeError: backward() missing 2 required positional arguments: 'ctx' and 'grad_output'

我試了半天,發(fā)現(xiàn)自定義函數(shù)后面要加 apply ,詳細見下面

import torch
from torch.autograd import Function
import torch.nn as nn
class sign_(nn.Module):

    def __init__(self, *kargs, **kwargs):
        super(sign_, self).__init__(*kargs, **kwargs)
        self.r = sign_f.apply ### -----注意此處
        
    def forward(self, inputs):
        outs = self.r(inputs)
        return outs

class sign_f(Function):
    @staticmethod
    def forward(ctx, inputs):
        output = inputs.new(inputs.size())
        output[inputs >= 0.] = 1
        output[inputs  0.] = -1
        ctx.save_for_backward(inputs)
        return output

    @staticmethod
    def backward(ctx, grad_output):
        input_, = ctx.saved_tensors
        grad_output[input_>1.] = 0
        grad_output[input_-1.] = 0
        return grad_output

問題解決了!

PyTorch自定義帶學習參數(shù)的激活函數(shù)(如sigmoid)

有的時候我們需要給損失函數(shù)設(shè)一個超參數(shù)但是又不想設(shè)固定閾值想和網(wǎng)絡(luò)一起自動學習,例如給Sigmoid一個參數(shù)alpha進行調(diào)節(jié)

函數(shù)如下:

import torch.nn as nn
import torch
class LearnableSigmoid(nn.Module):
    def __init__(self, ):
        super(LearnableSigmoid, self).__init__()
        self.weight = torch.nn.Parameter(torch.FloatTensor(1), requires_grad=True)

        self.reset_parameters()
    def reset_parameters(self):
        self.weight.data.fill_(1.0)
        
    def forward(self, input):
        return 1/(1 +  torch.exp(-self.weight*input))

驗證和Sigmoid的一致性

class LearnableSigmoid(nn.Module):
    def __init__(self, ):
        super(LearnableSigmoid, self).__init__()
        self.weight = torch.nn.Parameter(torch.FloatTensor(1), requires_grad=True)

        self.reset_parameters()
    def reset_parameters(self):
        self.weight.data.fill_(1.0)
        
    def forward(self, input):
        return 1/(1 +  torch.exp(-self.weight*input))
   
Sigmoid = nn.Sigmoid()
LearnSigmoid = LearnableSigmoid()
input = torch.tensor([[0.5289, 0.1338, 0.3513],
        [0.4379, 0.1828, 0.4629],
        [0.4302, 0.1358, 0.4180]])

print(Sigmoid(input))
print(LearnSigmoid(input))

輸出結(jié)果

tensor([[0.6292, 0.5334, 0.5869],
[0.6078, 0.5456, 0.6137],
[0.6059, 0.5339, 0.6030]])

tensor([[0.6292, 0.5334, 0.5869],
[0.6078, 0.5456, 0.6137],
[0.6059, 0.5339, 0.6030]], grad_fn=MulBackward0>)

驗證權(quán)重是不是會更新

import torch.nn as nn
import torch
import torch.optim as optim
class LearnableSigmoid(nn.Module):
    def __init__(self, ):
        super(LearnableSigmoid, self).__init__()
        self.weight = torch.nn.Parameter(torch.FloatTensor(1), requires_grad=True)

        self.reset_parameters()

    def reset_parameters(self):
        self.weight.data.fill_(1.0)
        
    def forward(self, input):
        return 1/(1 +  torch.exp(-self.weight*input))
        
class Net(nn.Module):
    def __init__(self):
        super(Net, self).__init__()       
        self.LSigmoid = LearnableSigmoid()
    def forward(self, x):                
        x = self.LSigmoid(x)
        return x

net = Net()  
print(list(net.parameters()))
optimizer = optim.SGD(net.parameters(), lr=0.01)
learning_rate=0.001
input_data=torch.randn(10,2)
target=torch.FloatTensor(10, 2).random_(8)
criterion = torch.nn.MSELoss(reduce=True, size_average=True)

for i in range(2):
    optimizer.zero_grad()     
    output = net(input_data)   
    loss = criterion(output, target)
    loss.backward()             
    optimizer.step()           
    print(list(net.parameters()))

輸出結(jié)果

tensor([1.], requires_grad=True)]
[Parameter containing:
tensor([0.9979], requires_grad=True)]
[Parameter containing:
tensor([0.9958], requires_grad=True)]

會更新~

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

您可能感興趣的文章:
  • pytorch方法測試——激活函數(shù)(ReLU)詳解
  • PyTorch中常用的激活函數(shù)的方法示例
  • Pytorch 實現(xiàn)自定義參數(shù)層的例子

標簽:南寧 迪慶 牡丹江 撫州 聊城 楊凌 揚州 六盤水

巨人網(wǎng)絡(luò)通訊聲明:本文標題《pytorch自定義不可導(dǎo)激活函數(shù)的操作》,本文關(guān)鍵詞  pytorch,自定義,不,可導(dǎo),激活,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《pytorch自定義不可導(dǎo)激活函數(shù)的操作》相關(guān)的同類信息!
  • 本頁收集關(guān)于pytorch自定義不可導(dǎo)激活函數(shù)的操作的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    欧美三级网色| 97超碰人人模人人爽人人看| 亚洲免费影视| 欧美日韩激情一区二区三区| 亚洲精品国产福利| 国产精品亚洲人在线观看| 色香蕉在线观看| 国产又粗又猛又爽又黄的| 欧美性受xxxx黑人xyx| 玩弄中年熟妇正在播放| 亚洲欧美激情国产综合久久久| 三上悠亚在线观看二区| 国产一区二区视频免费在线观看| 99热这里精品| 国产午夜福利一区二区| 免费人成黄页网站在线一区二区| 日韩国产精品一区二区| 亚洲第一激情av| 婷婷在线免费视频| 日本美女xxx| 欧美人体视频xxxxx| 国产精品视频一区二区三区麻豆| 可以在线看的av网站| 亚洲女厕所小便bbb| av电影天堂一区二区在线| 91热爆在线观看| 最近中文字幕日韩精品| 精品久久久无码中文字幕| 波多野结衣中文字幕一区| 福利在线一区二区三区| 亚洲女人天堂成人av在线| 96pao国产成视频永久免费| 黄色在线观看www| 欧美成人se01短视频在线看| 国产九色porn网址| 香蕉视频在线观看黄| 思99热精品久久只有精品| 盗摄精品av一区二区三区| 免费看的黄色网| 欧美多人爱爱视频网站| 久久久久久美女| 好看的日韩精品视频在线| 免费日本视频一区| 色婷婷激情综合| 亚洲精品高清在线| 国产精品91av| 蜜臀aⅴ国产精品久久久国产老师| 国产一区二区三区乱码| 国产乱女淫av麻豆国产| 亚洲乱码国产乱码精品精的特点| 欧美日韩亚洲国产综合| 久草在线资源福利站| 2019中文字幕在线视频| 国产麻豆一区二区三区精品视频| 国产精品久久久久久久裸模| 中文字幕永久免费视频| 国产盗摄在线观看| 天堂av资源在线观看| 亚洲一区二区三区四区中文| 中文字幕在线永久在线视频| 日韩av免费看网站| 日日干天天草| eeuss影院www免费看| 人妻熟女一二三区夜夜爱| 久久精品97| 精品丰满少妇一区二区三区| 精品国产乱码久久久久久鸭王1| 日韩美女在线视频| 国产精一区二区| 天天躁日日躁狠狠躁伊人| 免费 成 人 黄 色| 国产一区二区三区高清播放| 北条麻妃在线观看视频| 国产三级小视频| av电影在线播放高清免费观看| 麻豆理论在线观看| 欧美黑人精品一区二区不卡| 精品国产乱码久久久久久天美| 日韩av高清在线看片| 亚洲精品一区二区| 成人av影视| 亚洲一区二区三区高清不卡| 色哟哟精品丝袜一区二区| 亚洲国产欧美日韩| 69av一区二区三区| 色婷婷久久99综合精品jk白丝| 日韩一区av在线| 浴室偷拍美女洗澡456在线| 国产精品第一| 污污视频在线免费看| 久久久免费看| 蜜桃av噜噜一区二区三区| 天堂网站www天堂资源在线| 亚洲缚视频在线观看| 久久亚洲综合| 久久精子c满五个校花| 禁网站在线观看免费视频| 亚洲av成人片无码| 丝袜诱惑制服诱惑色一区在线观看| 视频免费一区| 少妇久久久久久久久久| 麻豆传媒在线免费看| 在线区一区二视频| www.一区二区三区.com| 欧美精品三级| 精品人妻一区二区三区日产乱码| 国产精品久久久久影院老司| 欧美极品欧美精品欧美图片| 亚洲国产清纯| 欧美私人免费视频| www.天天射.com| 成人欧美一区| 中文字幕乱码人妻无码久久| 国产主播在线看| 欧美成人三级视频网站| 日日橹狠狠爱欧美超碰| 欧美精品1区| 国产一级视频在线| 亚洲综合av一区| 久久婷婷影院| 免费三片在线播放| 91精品国产黑色紧身裤美女| 天堂网在线资源| 日韩欧美在线免费观看视频| 国产吧在线视频| 国产xxxxhd| 狠狠激情五月综合婷婷俺| 天堂蜜桃91精品| 欧美日韩在线精品一区二区三区激情综| 大尺度在线观看| 美女做爰内谢全过程视频| 日韩影片中文字幕| 97超碰国产精品女人人人爽| 图片区小说区区亚洲五月| av电影资源| 91久久线看在观草草青青| 亚洲免费高清视频| 午夜精品一区二区三区av| 性色av蜜臀av| 黄色一区三区| 日韩精品一区在线观看| 日韩中文字幕av| 青娱乐国产在线视频| 久久av综合| 欧美国产激情视频| 任你操视频在线观看| 毛片在线免费视频| 欧美日韩在线观看一区| 久久久久国产美女免费网站| 国产精品视频精品视频| 热久久视久久精品18亚洲精品| 91一区二区三区在线| 欧美bbbbb性bbbbb视频| 日韩精品一级中文字幕精品视频免费观看| 色视频在线播放| 欧美成人精品网站| 亚洲日本视频| 五月婷婷久久丁香| 欧美手机在线| www.av麻豆| h网址在线观看| 九九热最新视频//这里只有精品| 免费在线小视频| 国产又粗又黄又爽的视频| 天天射成人网| 日韩精品一区二区三区四| 《视频一区视频二区| 久久久久中文| 在线看日韩精品电影| 毛片女人与拘交视频| 亚洲乱码日产精品bd| 国产精品国模在线| 国产精品刘玥久久一区| 日韩欧美激情电影| 欧美人与性动xxxx| 自拍偷拍亚洲激情| 免费不卡av在线| 麻豆映画在线观看| 日韩精品――色哟哟| 55夜色66夜色国产精品视频| 久久精视频免费在线久久完整在线看| 午夜精品福利一区二区三区av| 国产亚洲a∨片在线观看| xxxxxx黄色| 欧美久久影院| 最新av中文字幕| 69av在线视频| 日韩欧美视频在线| 亚洲精品一区二区18漫画| 手机av在线免费| 日本黄色一级视频| 中文字字幕码一二三区| 亚洲午夜在线观看视频在线| 91大学生片黄在线观看| 欧美丝袜美腿| 一区二区三区日本| 无码人妻丰满熟妇啪啪网站| 亚洲人成网7777777国产| 老司机精品影院| 亚洲精品v日韩精品| 欧美变态挠脚心| 欧美一区2区三区4区公司二百| 性日韩欧美在线视频| 日韩精品免费看| 国产精品伦理一区二区| 久操视频在线观看| 久久天堂av综合合色蜜桃网| 欧美中文字幕视频在线观看| 日本不卡视频一区二区| 亚洲一二三四2021不卡| 亚洲av综合一区二区| 国产精华一区二区三区| 韩国18福利视频免费观看| 久久久久久久久久国产| 蜜臀av性久久久久蜜臀aⅴ| 又粗又黑又大的吊av| 一区二区av| 在线不卡一区二区| 国产精品一级在线观看| 在线看日韩av| 欧美男男tv网站在线播放| 亚洲综合欧美| 中文字幕一区二区在线观看视频| 在线亚洲高清视频| 国产视频在线观看免费| 五月天亚洲综合| silk一区二区三区精品视频| 影音先锋亚洲天堂| 久久亚洲精品伦理| 日韩精品亚洲人成在线观看| 亚洲制服丝袜在线播放| 在线观看黄网站免费继续| 樱花www成人免费视频| 日韩欧美精品一区二区综合视频| 亚洲人亚洲人成电影网站色| 激情五月综合色婷婷一区二区| 成人午夜两性视频| 欧美一区二区视频免费观看| 簧片在线观看| 人人澡人一摸人人添| 日韩欧美亚洲范冰冰与中字| 岛国在线视频免费看| 在线观看操人| 久久久成人免费视频| 欧美私模裸体表演在线观看| 福利一区二区三区视频在线观看| 亚洲电影第三页| 动漫av免费观看| 中文字幕乱码亚洲无线精品一区| 99久久免费国产| 久久99精品久久久久久秒播放器| 亚洲综合自拍一区| 日本人妖在线| 色综合色综合| 91精品国产黑色紧身裤美女| 免费欧美激情| 精品麻豆剧传媒av国产九九九| 国产黑丝在线一区二区三区| 亚洲国产精品久久人人爱蜜臀| 亚洲视频一二三| 国产女人18毛片水18精| 91精品国产91久久久久久久久| 国产精品久99| 亚洲成人在线网站| 麻豆视频一区| 色悠久久久久综合网小说| 欧美高清视频在线观看| 精品国产亚洲一区二区三区| 久久精品一二区| www.av视频在线观看| 成人免费毛片高清视频| 刘玥91精选国产在线观看| 亚洲理论电影在线观看| 欧美贵妇videos办公室| 国产精品久久久久久久久久久久久久久久| 国产成人精品三级高清久久91| 亚洲精品永久免费| 欧美xxxhd| 18禁男女爽爽爽午夜网站免费| 亚洲h片在线看| 中文国产成人精品久久一| 亚洲欧美一区二区三区在线观看| 91亚洲午夜精品久久久久久| 在线观看免费电影| 91成人破解版| 久久精品电影一区二区| 日本一区二区三区电影| 日本黄色中文字幕| 国产成人在线免费观看视频| 国产精品你懂的在线欣赏| 国产又黄又粗又猛又爽的视频| 91在线视频网址| 欧美色图综合网| 最近中文字幕在线mv视频在线| 久久av中文字幕| 伊人成人免费视频| 日本一区二区三区视频视频| 午夜一级毛片| 欧美精品福利视频| 青青草成人免费视频| 国产精品乱码一区二区三区视频| 亚洲国产精品黑人久久久| 免费人成短视频在线观看网站| 蜜桃视频www网站在线观看| 夜夜嗨av一区二区三区四季av| 婷婷丁香激情网| 亚洲免费在线视频| 欧美精品久久久久性色| 国产精品狼人色视频一区| 色无极影院亚洲| 福利电影一区二区三区| 亚洲精品免费一区二区三区| 久久综合九九| 黑人巨大精品欧美一区二区免费| 国产精品入口夜色视频大尺度| 91在线在线观看| 91亚洲精品久久久蜜桃借种| 欧美视频免费看| 踪合国产第二页| 亚洲中文无码av在线| 人妻 日韩 欧美 综合 制服| 欧美激情伊人电影| 中文在线观看视频| 欧美亚洲综合久久| 日韩av一区二区在线影视| 欧美一级电影在线| 中出中文字幕| 最美情侣韩剧在线播放|