Tensorflow實現leakyRelu

      網友投稿 995 2022-05-29

      ReLU、LeakyReLU

      ReLU作為激活函數被廣泛應用于各種深度神經網絡中。在這篇博客中,我主要記錄一下它和它的變種在caffe中的實現。

      先看下來自wikipedia的一張示意圖,圖中藍色的線表示的就是ReLU函數。

      ReLU激活函數極為。而LeakyReLU則是其變體,其中,是一個小的非零數。

      綜上,在caffe中,ReLU和LeakyReLU都包含在relu_layer中。

      在后向傳播過程中,ReLU做如下運算:

      // Message that stores parameters used by ReLULayer

      message ReLUParameter {

      // Allow non-zero slope for negative inputs to speed up optimization

      // Described in:

      // Maas, A. L., Hannun, A. Y., & Ng, A. Y. (2013). Rectifier nonlinearities

      // improve neural network acoustic models. In ICML Workshop on Deep Learning

      // for Audio, Speech, and Language Processing.

      optional float negative_slope = 1 [default = 0]; //如之前分析的,默認值0即為ReLU,非零則為LeakyReLU

      enum Engine {

      DEFAULT = 0;

      CAFFE = 1;

      CUDNN = 2;

      }

      optional Engine engine = 2 [default = DEFAULT]; //運算引擎選擇,一般選擇默認

      }

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      13

      14

      15

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      13

      14

      15

      PReLU

      PReLU,即Parametric ReLU,是何凱明組提出的一種改進ReLU。它的數學表示為?,其中是可學習參數。當為固定的非零較小數時,它等價于LeakyReLU;當它為0時,PReLU等價于ReLU。它的后向傳播進行如下計算:

      message PReLUParameter {

      // Parametric ReLU described in K. He et al, Delving Deep into Rectifiers:

      // Surpassing Human-Level Performance on ImageNet Classification, 2015.

      // Initial value of a_i. Default is a_i=0.25 for all i.

      optional FillerParameter filler = 1; //默認填充,a_i的初始值為0.25

      // Whether or not slope parameters are shared across channels.

      optional bool channel_shared = 2 [default = false]; //是否通道共享參數,默認為不共享

      }

      1

      2

      3

      4

      5

      6

      7

      8

      9

      Tensorflow中實現leakyRelu操作(高效)

      從github上轉來,實在是厲害的想法,什么時候自己也能寫出這種精妙的代碼就好了

      原地址:

      簡易高效的LeakyReLu實現

      Tensorflow中實現leakyRelu

      代碼如下: 我做了些改進,因為實在tensorflow中使用,就將原來的abs()函數替換成了tf.abs()

      import tensorflow as tfdef LeakyRelu(x, leak=0.2, name="LeakyRelu"): with tf.variable_scope(name): f1 = 0.5 * (1 + leak) f2 = 0.5 * (1 - leak) return f1 * x + f2 * tf.abs(x) # 這里和原文有不一樣的,我沒試驗過原文的代碼,但tf.abs()肯定是對的

      TensorFlow

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:移動2G/4G物聯網卡、流量卡資費,13位物聯網專用卡,專為智能設備而生,全國通用
      下一篇:LINUX進階(持續更新)LINUX進階(基礎篇)之Linux常用工作命令
      相關文章
      中文字幕亚洲日韩无线码| 老司机亚洲精品影院| 亚洲熟妇av一区| 亚洲成色在线综合网站| 亚洲熟妇无码乱子AV电影| 国产成人精品亚洲精品| 中文字幕亚洲综合久久菠萝蜜| 国产黄色一级毛片亚洲黄片大全| 精品国产日韩亚洲一区| 亚洲国产精品日韩专区AV| 亚洲精品国产电影| 亚洲国产婷婷综合在线精品| 亚洲国产日韩在线观频| 亚洲国产成人a精品不卡在线| 亚洲av无码不卡私人影院| 亚洲第一成人影院| 亚洲色婷婷综合开心网| 久久亚洲国产成人精品无码区| 伊人久久大香线蕉亚洲五月天| 亚洲综合国产一区二区三区| 亚洲国产综合无码一区| 久久久影院亚洲精品| 亚洲一区精品中文字幕| 亚洲男女性高爱潮网站| 亚洲av无码国产综合专区| 亚洲一区二区三区亚瑟| 亚洲一区二区无码偷拍| 日韩色日韩视频亚洲网站| 亚洲国产成人久久综合碰| 亚洲永久无码3D动漫一区| 亚洲VA中文字幕不卡无码| 亚洲午夜未满十八勿入| 亚洲国产精品免费在线观看| 亚洲中文字幕久久无码| 朝桐光亚洲专区在线中文字幕| 亚洲国产午夜福利在线播放| 久久精品国产精品亚洲精品| 色婷婷六月亚洲婷婷丁香| 亚洲一级视频在线观看| 亚洲国产精品无码第一区二区三区| 国产精品亚洲专一区二区三区|