亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > 幫助中心 > 正文

基于TensorFlow中自定義梯度的2種方式

2024-07-09 22:43:22
字體:
來源:轉載
供稿:網友

前言

在深度學習中,有時候我們需要對某些節點的梯度進行一些定制,特別是該節點操作不可導(比如階梯除法如 ),如果實在需要對這個節點進行操作,而且希望其可以反向傳播,那么就需要對其進行自定義反向傳播時的梯度。在有些場景,如[2]中介紹到的梯度反轉(gradient inverse)中,就必須在某層節點對反向傳播的梯度進行反轉,也就是需要更改正常的梯度傳播過程,如下圖的 所示。

在tensorflow中有若干可以實現定制梯度的方法,這里介紹兩種。

1. 重寫梯度法

重寫梯度法指的是通過tensorflow自帶的機制,將某個節點的梯度重寫(override),這種方法的適用性最廣。我們這里舉個例子[3].

符號函數的前向傳播采用的是階躍函數y=sign(x) y = /rm{sign}(x)y=sign(x),如下圖所示,我們知道階躍函數不是連續可導的,因此我們在反向傳播時,將其替代為一個可以連續求導的函數y=Htanh(x) y = /rm{Htanh(x)}y=Htanh(x),于是梯度就是大于1和小于-1時為0,在-1和1之間時是1。

使用重寫梯度的方法如下,主要是涉及到tf.RegisterGradient()和tf.get_default_graph().gradient_override_map(),前者注冊新的梯度,后者重寫圖中具有名字name='Sign'的操作節點的梯度,用在新注冊的QuantizeGrad替代。

#使用修飾器,建立梯度反向傳播函數。其中op.input包含輸入值、輸出值,grad包含上層傳來的梯度@tf.RegisterGradient("QuantizeGrad")def sign_grad(op, grad): input = op.inputs[0] # 取出當前的輸入 cond = (input>=-1)&(input<=1) # 大于1或者小于-1的值的位置 zeros = tf.zeros_like(grad) # 定義出0矩陣用于掩膜 return tf.where(cond, grad, zeros)  # 將大于1或者小于-1的上一層的梯度置為0 #使用with上下文管理器覆蓋原始的sign梯度函數def binary(input): x = input with tf.get_default_graph().gradient_override_map({"Sign":'QuantizeGrad'}): #重寫梯度  x = tf.sign(x) return x #使用x = binary(x)

其中的def sign_grad(op, grad):是注冊新的梯度的套路,其中的op是當前操作的輸入值/張量等,而grad指的是從反向而言的上一層的梯度。

通常來說,在tensorflow中自定義梯度,函數tf.identity()是很重要的,其API手冊如下:

tf.identity( input, name=None)

其會返回一個形狀和內容都和輸入完全一樣的輸出,但是你可以自定義其反向傳播時的梯度,因此在梯度反轉等操作中特別有用。

這里再舉個反向梯度[2]的例子,也就是梯度為 而不是

import tensorflow as tfx1 = tf.Variable(1)x2 = tf.Variable(3)x3 = tf.Variable(6)@tf.RegisterGradient('CustomGrad')def CustomGrad(op, grad):#  tf.Print(grad) return -grad g = tf.get_default_graph()oo = x1+x2with g.gradient_override_map({"Identity": "CustomGrad"}): output = tf.identity(oo)grad_1 = tf.gradients(output, oo)with tf.Session() as sess: sess.run(tf.global_variables_initializer()) print(sess.run(grad_1))

因為-grad,所以這里的梯度輸出是[-1]而不是[1]。有一個我們需要注意的是,在自定義函數def CustomGrad()中,返回的值得是一個張量,而不能返回一個參數,比如return 0,這樣會報錯,如:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩中文娱乐网| 亚洲美女av在线| 影音先锋欧美精品| 欧美视频免费在线| 欧美一级高清免费播放| 亚洲2020天天堂在线观看| 91亚洲一区精品| 在线看福利67194| 色综合亚洲精品激情狠狠| 91久久精品国产| 国产91精品久久久久久| 日韩免费观看在线观看| 国产网站欧美日韩免费精品在线观看| 亚洲激情视频网站| 欧美精品videos性欧美| 久久精品美女视频网站| 91理论片午午论夜理片久久| 亚洲欧洲第一视频| 国产91在线视频| 亚洲午夜未满十八勿入免费观看全集| 在线播放国产精品| 亚洲精品一区在线观看香蕉| 久久资源免费视频| 欧美电影在线观看高清| 高清欧美一区二区三区| 国产成人精品国内自产拍免费看| 日韩一区二区av| 福利视频第一区| 8x拔播拔播x8国产精品| 国产精品九九九| 尤物yw午夜国产精品视频| 福利一区福利二区微拍刺激| 国产精品久久久久久久久久三级| 日本精品视频在线播放| 91av在线免费观看视频| 久久国产加勒比精品无码| 亚洲毛片在线看| 精品亚洲男同gayvideo网站| 精品中文视频在线| 久久这里有精品| 日韩男女性生活视频| 亚洲成年网站在线观看| 国产精品一区二区久久国产| 国产精品99久久久久久久久久久久| 亚洲欧洲在线播放| 亚洲激情 国产| 九九热这里只有精品免费看| 亚洲在线一区二区| 黄色一区二区在线观看| 亚洲精品视频久久| 国产综合在线视频| 亚洲欧美日韩高清| 日韩中文字幕网| 日韩在线www| 午夜精品久久久久久久男人的天堂| 国产91在线视频| 亚洲成人久久久| 国产午夜精品全部视频在线播放| 国产精品国内视频| 日韩美女免费视频| 91精品国产91久久久久| 91精品国产九九九久久久亚洲| 中日韩美女免费视频网站在线观看| 欧美国产精品人人做人人爱| 在线播放日韩专区| 中文字幕9999| 最新国产精品拍自在线播放| 亚洲人成在线免费观看| 久久五月天色综合| 亚洲欧洲xxxx| 亚洲人成网站色ww在线| 欧美激情亚洲精品| 一区二区三区回区在观看免费视频| 奇米成人av国产一区二区三区| 色yeye香蕉凹凸一区二区av| 久久国产精品网站| 国产精品网站大全| 国产成人久久久精品一区| 麻豆国产精品va在线观看不卡| 亚洲人成毛片在线播放| 亚洲天天在线日亚洲洲精| 狠狠久久五月精品中文字幕| 亚洲国产精品久久久久秋霞不卡| 国产精品私拍pans大尺度在线| 亚洲一区二区国产| 岛国视频午夜一区免费在线观看| 日韩中文字幕免费看| 欧美激情一区二区久久久| 久久久最新网址| 国产精品日韩欧美综合| 欧美性色视频在线| 91麻豆桃色免费看| 这里只有精品视频在线| 国外成人在线直播| 九九精品视频在线| 日韩在线中文字| 性欧美亚洲xxxx乳在线观看| 国产精品男人的天堂| 91免费精品国偷自产在线| 国产成人精品久久二区二区91| 日本高清+成人网在线观看| 夜夜躁日日躁狠狠久久88av| 中文字幕日韩av综合精品| 久久视频免费观看| 4438全国成人免费| 97视频在线观看亚洲| 欧美性猛交视频| 日韩精品视频免费在线观看| 国产乱肥老妇国产一区二| 亚洲精品乱码久久久久久金桔影视| 欧美亚洲日本网站| 国产91对白在线播放| 美乳少妇欧美精品| 日韩av片电影专区| 91视频8mav| 国产亚洲美女久久| 国产亚洲欧美日韩美女| 91精品视频网站| 久久久久久久久国产精品| 91高清视频在线免费观看| 91免费人成网站在线观看18| 人体精品一二三区| 亚洲a成v人在线观看| 日本一欧美一欧美一亚洲视频| 日韩暖暖在线视频| 一本色道久久综合狠狠躁篇的优点| 精品久久久视频| 久久精品国产久精国产一老狼| 国产成人福利网站| 亚洲亚裔videos黑人hd| 亚洲视频第一页| 高跟丝袜欧美一区| 91麻豆国产精品| 日韩在线播放一区| 日韩欧美国产激情| 久久久亚洲天堂| 亚洲人成网7777777国产| 日韩经典第一页| 亚洲国产欧美日韩精品| 久久精品国产亚洲精品2020| 亚洲国产精品大全| 国产精品青青在线观看爽香蕉| 中国日韩欧美久久久久久久久| 欧美极品欧美精品欧美视频| 国产精品18久久久久久麻辣| 欧美午夜精品久久久久久人妖| 91亚洲人电影| 欧美色道久久88综合亚洲精品| 国产在线观看不卡| 国产精品综合网站| 色狠狠av一区二区三区香蕉蜜桃| 日韩中文字幕精品| 亚洲成人久久久久| 亚洲精品日韩在线| 国语对白做受69| 国产97人人超碰caoprom| 欧美一级黑人aaaaaaa做受| 精品女同一区二区三区在线播放| 久久精品视频导航| 国产精品一区二区三区毛片淫片| 538国产精品一区二区免费视频| 中文字幕av一区二区三区谷原希美| 亚洲成人在线视频播放| 亚洲精品一区中文字幕乱码|