본문 바로가기

AI Compiler framework

미분 그래프 구성 방식에 대한 변경 - layer 순회에서 최적화된 emit 표현의 역순회

현재 방식은 model.add 를 통한 모델, 레이어 구성과 함께 tape 의 생성

미분 그래프 구성 시 layer 표현의 집합인 tape 를 역순회하면서 layer.emit_backward() 를 호출하는 방식의 사용으롤 각 layer 가 inputs, params 에서 직접 인자들을 추출하고

최적화 시점 또한 fwd, bwd 의 그래프의 생성 후 

 

하지만 이를 fwd 의 emit 그래프 생성 시점에서 compile (최적화) 수행 후 layer 가 아닌 emit 표현의 역순회로 bwd 그래프 ( 미분 그래프 ) 를 구성하는 것이 최적화 대상의 감소와 layer 구현 방식 안정 등의 이득이 있을 것,   

 

이를 위해 emit 표현 내부에 ops, ops_bwd 의 두 가지 표현 사전 생성, 

 

최적화 시점도 model 의 정의 이후에 Fwd 최적화 완료 후 그 결과에 대응하는 Bwd emit 을 매칭 시키며 단순화 가능