본문 바로가기

AI Compiler framework

딥러닝을 수식 그래프가 아닌 시간을 가진 실행 프로그램으로

1. 기존 딥러닝 프레임워크는 모델을 수식 그래프로 다룬다.

  • 노드 : 연산
  • 엣지 : 텐서 흐름
  • 목표 : 무엇을 계산하는가

모델 정의와 연구 생산성에는 효과적 하지만 아래의 문제

  • 이 연산의 실행 시점
  • 연산 가나 순서 보장
  • 중간 상태는 어느 시점을 기준으로 사용
  • 상태 갱신 시점

 

2. 레이어 생성 이유

기존 프레임 워크 제공 레이어 조합을 넘어 표현하기 어려운 로직 구현 목적

  • 연산을 넘어 실행 의미 execution semantics 정의 필요

레이어 구현 문제가 아니었음

 

3. 관점 전환 : 수식 그래프 vs 실행 프로그램

수식 그래프 관점

  • 연산은 순수 함수
  • 상태는 숨겨짐
  • 시간 개념 없음
  • 실행 순서 부차적

해당 관점에선

  • 프레임 워크가 연산을 재정렬
  • 내부 최저고하로 실행 순서 변경
  • 상태 갱신 시점은 암묵적

 

시간을 가진 실행 프로그램

  • 연산 = 명령
  • 상태 = 메모리
  • step = 시간
  • 실행 순서 = 의미 그 자체

다음이 핵심

  • 어떤 연산이 언제 실행되는가
  • 어떤 상태를 어느 시점 기준으로 사용하는가
  • 상태 갱신이 프로그램의 일부로 명시되는가

결과를 결정하는 것은 연산 자체가 아닌 실행 의미와 상태 관리