이 단원 목차
두 가지 분해의 관점
행렬을 열벡터의 조합으로 나타냈듯이, 다차원 배열도 작은 인자의 곱과 합으로 표현할 수 있습니다. CP는 축별 벡터의 바깥곱을 더합니다. Tucker는 축별 기저를 고르고 그 기저 사이의 상호작용을 작은 코어에 저장합니다. 축이 셋인 실수 배열을 기준으로 비교합니다.
각 CP 항은 한 축의 선택이 다른 축과 분리되는 성분입니다. CP 랭크는 정확한 표현에 필요한 최소 항 수이며, 단순히 축 개수나 행렬 랭크를 뜻하지 않습니다. 실습의 항 수 제한은 이 최소값을 일반적으로 계산하는 알고리즘이 아닙니다.
Tucker의 코어는 무엇을 저장하는가
코어는 선택한 축별 좌표들이 얼마나 결합하는지 기록합니다. CP의 대각 코어와 달리 Tucker 코어는 여러 조합에 값을 가질 수 있습니다. 보통 축별 크기를 서로 다르게 정할 수도 있습니다. 여기서는 비교를 위해 동일한 r을 씁니다.
손으로 복원하는 예제
실습은 2×2×2 배열에서 X[0,0,0]=2, X[1,1,1]=1이고 나머지는 0인 예제를 씁니다. 두 좌표 방향의 바깥곱을 모두 유지하면 CP와 Tucker가 같은 배열을 정확히 복원합니다. 한 항만 유지하면 두 번째 꼭짓점의 값 1을 잃습니다.
표의 여덟 좌표를 따라 원본과 두 복원을 확인하세요. 시각화의 코어와 세 인자 노드는 Tucker의 연결 구조를 보여줍니다. 선에 적힌 r은 합산되는 내부 지표의 크기이고, 바깥의 i,j,k는 남는 출력 축입니다.
압축과 적합 오차를 분리하기
가중치까지 명시적으로 저장하면 CP는 7r개, Tucker는 r³+6r개의 스칼라를 씁니다. r=2이면 각각 14개와 20개로 원본 8개보다 많습니다. 정확한 분해가 곧 압축이라는 뜻은 아닙니다. 큰 배열에서 작은 랭크가 충분할 때 유리합니다. 학습 시에는 분해를 찾는 비용과 근사 오차도 고려해야 합니다.
실습은 이미 직교 좌표 항으로 주어진 예제를 복원합니다. 일반 데이터에 CP 최적화나 HOSVD를 실행하지 않습니다. CP의 일반적인 최적 근사와 유일성은 별도 조건이 필요합니다.
확인 문제
- 항을 모두 제거하면 shape도 사라질까요? 아니요. 같은 shape의 영 배열이 됩니다.
- r=1일 때 두 표현의 저장 스칼라는? 각각 7개입니다.
- 가중치가 음수여도 복원할 수 있나요? 가능합니다. 부호도 성분의 일부입니다.
추가 읽기: Kolda–Bader, Tensor Decompositions and Applications. 본문의 작은 배열·복원·비용 예제는 직접 구성했습니다.
설명할 수 있나요?
실험 설정과 무관한 기준 예제를 묻습니다. 답을 고르고 설명을 확인해보세요.
선택한 답과 학습 표시는 이 브라우저에 저장됩니다. 다시 풀거나 표시를 해제할 수 있습니다.