警告:このAPIは非推奨であり、置き換えが安定した後 TensorFlowの将来のバージョンで削除される予定です。

このページは Cloud Translation API によって翻訳されました。
Switch to English

GRUBlockCellGrad

パブリックファイナルクラスGRUBlockCellGrad

1タイムステップのGRUセルバックプロパゲーションを計算します。

Args x:GRUセルへの入力。 h_prev:前のGRUセルからの状態入力。 w_ru:リセットおよび更新ゲートの重み行列。 w_c:セル接続ゲートの重み行列。 b_ru:リセットおよび更新ゲートのバイアスベクトル。 b_c:セル接続ゲートのバイアスベクトル。 r:リセットゲートの出力。 u:更新ゲートの出力。 c:セル接続ゲートの出力。 d_h:目的関数に対するh_newwrtの勾配。

d_xを返します:目的関数へのxwrtの勾配。 d_h_prev:目的関数に対するhwrtの勾配。 d_c_bar目的関数に対するc_barの勾配。 d_r_bar_u_bar目的関数に対するr_barおよびu_barの勾配。

このカーネル操作は、次の数式を実装します。

変数の表記に関する注意:

aとbの連結はa_bで表されますaとbの要素ごとの内積はabで表されます要素ごとの内積は\ circで表されます行列乗算は*で表されます

明確にするための追加の注意事項:

`w_ru`は4つの異なる行列に分割できます。

w_ru = [w_r_x w_u_x
         w_r_h_prev w_u_h_prev]
 
同様に、 `w_c`は2つの異なる行列に分割できます。
w_c = [w_c_x w_c_h_prevr]
 
バイアスについても同じことが言えます。
b_ru = [b_ru_x b_ru_h]
 b_c = [b_c_x b_c_h]
 
表記に関する別の注意事項:
d_x = d_x_component_1 + d_x_component_2
 
 where d_x_component_1 = d_r_bar * w_r_x^T + d_u_bar * w_r_x^T
 and d_x_component_2 = d_c_bar * w_c_x^T
 
 d_h_prev = d_h_prev_component_1 + d_h_prevr \circ r + d_h \circ u
 where d_h_prev_componenet_1 = d_r_bar * w_r_h_prev^T + d_u_bar * w_r_h_prev^T
 
以下のグラデーションの背後にある数学:
d_c_bar = d_h \circ (1-u) \circ (1-c \circ c)
 d_u_bar = d_h \circ (h-c) \circ u \circ (1-u)
 
 d_r_bar_u_bar = [d_r_bar d_u_bar]
 
 [d_x_component_1 d_h_prev_component_1] = d_r_bar_u_bar * w_ru^T
 
 [d_x_component_2 d_h_prevr] = d_c_bar * w_c^T
 
 d_x = d_x_component_1 + d_x_component_2
 
 d_h_prev = d_h_prev_component_1 + d_h_prevr \circ r + u
 
以下の計算は、グラデーションのpythonラッパーで実行されます(グラデーションカーネルではありません)。
d_w_ru = x_h_prevr^T * d_c_bar
 
 d_w_c = x_h_prev^T * d_r_bar_u_bar
 
 d_b_ru = sum of d_r_bar_u_bar along axis = 0
 
 d_b_c = sum of d_c_bar along axis = 0
 

パブリックメソッド

static <T extends Number> GRUBlockCellGrad <T>
createスコープスコープ、オペランド<T> x、オペランド<T> hPrev、オペランド<T> wRu、オペランド<T> wC、オペランド<T> bRu、オペランド<T> bC、オペランド<T> r、オペランド<T > u、オペランド<T> c、オペランド<T> dH)
新しいGRUBlockCellGrad操作をラップするクラスを作成するファクトリメソッド。
出力<T>
dCBar ()
出力<T>
dHPrev ()
出力<T>
dRBarUBar ()
出力<T>
dX ()

継承されたメソッド

パブリックメソッド

public static GRUBlockCellGrad <T> create スコープスコープ、オペランド<T> x、オペランド<T> hPrev、オペランド<T> wRu、オペランド<T> wC、オペランド<T> bRu、オペランド<T> bC、オペランド<T > r、オペランド<T> u、オペランド<T> c、オペランド<T> dH)

新しいGRUBlockCellGrad操作をラップするクラスを作成するファクトリメソッド。

パラメーター
範囲現在のスコープ
戻り値
  • GRUBlockCellGradの新しいインスタンス

public Output <T> dCBar ()

パブリック出力<T> dHPrev ()

public Output <T> dRBarUBar ()

パブリック出力<T> dX ()