P-stage4 [day6] (6강) 모델최적화기법(2); Tensor Decomposition 이론
과거의 것들/AI Tech boostcamp

P-stage4 [day6] (6강) 모델최적화기법(2); Tensor Decomposition 이론

강의내용

(6강) 모델최적화기법(2); Tensor Decomposition 이론

Tensor decomposition - Wikipedia

tensor rank decomposition은 CPD라고 불렀던 거고 Tucker decomposition은 좀더 일반화 된거. 행렬이 diagonal해야 한다던지 같은 조건이 사라진 것 같다.

decomposition에 가장 많이 쓰이는 SVD.

이 그림이 직관적으로 이해하기 좋다는데 아직은 안간다. 밑에 예시 있으니 보면서 해야할듯.

앞의 몇가지들만 tensor를 결정하는데 중요한 역할을 하고 뒤로 갈수록 중요도가 점점 떨어짐. 이는 sigma를 오름차순으로 만들어서 그럼.

그림 예시를 보면 더 알 수 있다. 앞의 10가지로만 해도 그림의 전체적인 윤곽이 다 드러나면서도 원래 pixel의 10% 도 안씀.

이런식으로 원래 데이터를 low rank 데이터로 만든다. error는 low rank 만큼 줄여서 생긴 차이

근데 이럼 문제가 적절한 r를 찾는 문제가 매우 어렵고, r-1이 r에 포함된다고 할 수 없어서 점진적으로 못구하고, orthogonal이 아니면 안되고 매우 특별한 경우임.

자세한 내용은 pdf를 보자.

CP는 Tucker의 특별한 case이다. CP는 eigen value로 분해해서 만들지만 Tucker는 core tensor를 만들어서 rank를 줄이는 방식으로 함.

하지만 이걸 우리가 현재 하고있는 프로젝트에 맞추는거는 데이터를 줄이는게 아니라 weight를 줄이는거.

rank 3까지는 대부분 복원하고, rank4는 거의 다 복원하는 것 같다. 자세한 에러값 등의 정보는 pdf.

프로젝트 진행한거

주말에 돌렸던 wandb 결과들 공유함.