GRUBlockCell

공개 최종 클래스 GRUlockCell

1시간 단계에 대한 GRU 셀 순방향 전파를 계산합니다.

인수 x: GRU 셀에 대한 입력입니다. h_prev: 이전 GRU 셀의 상태 입력입니다. w_ru: 재설정 및 업데이트 게이트에 대한 가중치 행렬입니다. w_c: 셀 연결 게이트의 가중치 행렬입니다. b_ru: 재설정 및 업데이트 게이트에 대한 바이어스 벡터입니다. b_c: 셀 연결 게이트에 대한 바이어스 벡터입니다.

r: 리셋 게이트의 출력을 반환합니다. u: 업데이트 게이트의 출력. c: 셀 연결 게이트의 출력. h: GRU 셀의 현재 상태.

변수 표기에 대한 참고사항:

a와 b의 연결은 a_b로 표시됩니다. a와 b의 요소별 내적은 ab로 표시됩니다. 요소별 내적은 \circ로 표시됩니다. 행렬 곱셈은 *로 표시됩니다.

바이어스는 다음으로 초기화됩니다: `b_ru` - 상수_초기화(1.0) `b_c` - 상수_초기화(0.0)

이 커널 작업은 다음 수학

x_h_prev = [x, h_prev]
 
 [r_bar u_bar] = x_h_prev * w_ru + b_ru
 
 r = sigmoid(r_bar)
 u = sigmoid(u_bar)
 
 h_prevr = h_prev \circ r
 
 x_h_prevr = [x h_prevr]
 
 c_bar = x_h_prevr * w_c + b_c
 c = tanh(c_bar)
 
 h = (1-u) \circ c + u \circ h_prev
 
을 구현합니다.

공개 방법

출력 <T>
()
static <T 확장 번호> GRUBlockCell <T>
생성 ( 범위 범위, 피연산자 <T> x, 피연산자 <T> hPrev, 피연산자 <T> wRu, 피연산자 <T> wC, 피연산자 <T> bRu, 피연산자 <T> bC)
새로운 GRUBlockCell 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.
출력 <T>
시간 ()
출력 <T>
r ()
출력 <T>
당신 ()

상속된 메서드

공개 방법

공개 출력 <T> c ()

공개 정적 GRUBlockCell <T> 생성 ( 범위 범위, 피연산자 <T> x, 피연산자 <T> hPrev, 피연산자 <T> wRu, 피연산자 <T> wC, 피연산자 <T> bRu, 피연산자 <T> bC)

새로운 GRUBlockCell 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.

매개변수
범위 현재 범위
보고
  • GRUlockCell의 새로운 인스턴스

공개 출력 <T> h ()

공개 출력 <T> r ()

공개 출력 <T> u ()