텐서(Tensor) 입문 · 신뢰도 높은 PDF 모음 · 요약/스케치
Multilinear Algebra · Tensor Decompositions

텐서(Tensor) 입문 · 신뢰도 높은 PDF 모음 · 요약/스케치

“3차원 행렬”의 직관에서 출발해, 텐서/다중선형지도와 대표적 분해(CP, Tucker, HOSVD)를 한 번에 훑고, 검증된 PDF만 추려 소개합니다.

1) 텐서 한눈 개념

  • 차수(order): 인덱스의 개수. 벡터=1차, 행렬=2차, 3차원 배열=3차 텐서.
  • 표기: \( \mathcal{X} \in F^{n_1 \times \cdots \times n_d} \) (모드 \(1\ldots d\)).
  • 다중선형성: \( \mathcal{X}(x^{(1)},\dots,x^{(d)})=\sum_{i_1,\dots,i_d} x^{(1)}_{i_1}\cdots x^{(d)}_{i_d}\, \mathcal{X}_{i_1\cdots i_d} \).
  • 기본 연산: 모드-\(n\) 곱, 펼치기(unfolding), 수축(contraction).
  • 대표 분해:
    • CP(CANDECOMP/PARAFAC): \( \mathcal{X} \approx \sum_{r=1}^R a^{(1)}_r \circ \cdots \circ a^{(d)}_r \) (랭크 \(R\)).
    • Tucker/HOSVD: \( \mathcal{X} \approx \mathcal{G} \times_1 A^{(1)} \cdots \times_d A^{(d)} \) (코어 \( \mathcal{G} \), 다중선형 랭크).

가장 권위 있는 종합 리뷰는 Kolda–Bader의 SIAM Review 논문입니다. [oai_citation:0‡SIAM Ebooks](https://epubs.siam.org/doi/10.1137/07070111X?utm_source=chatgpt.com)

2) 신뢰도 높은 PDF 엄선 (용도별)

Tensor Decompositions and Applications — Kolda & Bader, SIAM Review (2009)

텐서 정의·표기부터 CP/Tucker/HOSVD·고유성·알고리즘·소프트웨어까지 총망라한 표준 리뷰. 학문·실무 둘 다 필수.

SIAM 페이지 · PDF 바로보기

핵심: CP의 유일성 조건, HOSVD 기반 Tucker 요약, 구현 가이드. [oai_citation:1‡SIAM Ebooks](https://epubs.siam.org/doi/abs/10.1137/07070111X?utm_source=chatgpt.com)

Basics of Tensor Computations — UIUC 고급강의 노트

수축을 행렬곱으로 환원하는 법, 펼치기·재배열 등 구현 관점의 깔끔한 요약.

PDF

핵심: 텐서 연산을 BLAS로 매핑하는 실전 팁. [oai_citation:2‡relate.cs.illinois.edu](https://relate.cs.illinois.edu/course/cs598evs-f20/f/lectures/02-lecture.pdf?utm_source=chatgpt.com)

Tensor Decomposition (CP/Rank) — UIUC 강의 노트

CP 랭크·고유성·응용을 압축 정리(히치콕 1927 기원 포함). Kolda–Bader 흐름을 따라감.

PDF

핵심: CP 랭크 개념과 난이도, 고전 참고계보. [oai_citation:3‡relate.cs.illinois.edu](https://relate.cs.illinois.edu/course/cs598evs-f20/f/lectures/04-lecture.pdf?utm_source=chatgpt.com)

Tensorlab User Guide 3.0 — KU Leuven

MATLAB 텐서 도구 모음. CP/Tucker 포함 coupled/structured 텐서까지 구현 예시 풍부.

PDF

핵심: 실무 구현 참고서. [oai_citation:4‡tensorlab.net](https://www.tensorlab.net/userguide3.pdf?utm_source=chatgpt.com)

Multilinear algebra for analyzing data… — Sandia 보고서

데이터 마이닝/신호처리 맥락에서 CP 분해를 실제 예와 함께 설명.

PDF

핵심: 희소텐서·응용 사례. [oai_citation:5‡Sandia National Laboratories](https://www.sandia.gov/app/uploads/sites/143/2021/10/daniel-dunlavy-2010-DuKoKe10.pdf?utm_source=chatgpt.com)

Tensor Products — Keith Conrad

범주론적 보편성으로 정의되는 텐서곱의 표준적 입문 노트(선형대수 토대 탄탄).

PDF

핵심: 텐서곱의 보편성·예시·성질. [oai_citation:6‡kconrad.math.uconn.edu](https://kconrad.math.uconn.edu/blurbs/linmultialg/tensorprod.pdf?utm_source=chatgpt.com)

3) 핵심 내용 요약 · 스케치

3.1 Kolda–Bader(SIAM Review) 핵심 7줄

  1. 텐서는 \(N\)-way 배열. 분해는 고차원 데이터의 구조적 저차 표현. [oai_citation:7‡SIAM Ebooks](https://epubs.siam.org/doi/10.1137/07070111X?utm_source=chatgpt.com)
  2. CP: 랭크-\(R\) 외적합. 고유성 조건(Kruskal) 덕에 해석 가능한 잠재인자. [oai_citation:8‡SIAM Ebooks](https://epubs.siam.org/doi/10.1137/07070111X?utm_source=chatgpt.com)
  3. Tucker/HOSVD: 모드별 기저 + 코어. 다중선형 랭크 개념 제공. [oai_citation:9‡SIAM Ebooks](https://epubs.siam.org/doi/10.1137/07070111X?utm_source=chatgpt.com)
  4. HOSVD-truncated는 최적은 아니나 상계 보장(실무적으로 안정). [oai_citation:10‡SIAM Ebooks](https://epubs.siam.org/doi/10.1137/07070111X?utm_source=chatgpt.com)
  5. 알고리즘: ALS 변형이 표준. 수렴·스케일·정규화 주의. [oai_citation:11‡SIAM Ebooks](https://epubs.siam.org/doi/10.1137/07070111X?utm_source=chatgpt.com)
  6. 응용: 화학계량학·심리측정·신호처리·컴퓨터비전·데이터마이닝 등. [oai_citation:12‡SIAM Ebooks](https://epubs.siam.org/doi/10.1137/07070111X?utm_source=chatgpt.com)
  7. 소프트웨어: Tensor Toolbox, Tensorlab 등. [oai_citation:13‡SIAM Ebooks](https://epubs.siam.org/doi/10.1137/07070111X?utm_source=chatgpt.com)

3.2 구현 관점(연산 환원)

  • 모드-\(n\) 펼치기 → 대부분의 수축을 행렬곱으로 환원(BLAS 활용). [oai_citation:14‡relate.cs.illinois.edu](https://relate.cs.illinois.edu/course/cs598evs-f20/f/lectures/02-lecture.pdf?utm_source=chatgpt.com)
  • CP 랭크 판정/추정은 난이도 높음(비볼록). 실무는 초기화·정규화·정칙화가 성패 좌우. [oai_citation:15‡relate.cs.illinois.edu](https://relate.cs.illinois.edu/course/cs598evs-f20/f/lectures/04-lecture.pdf?utm_source=chatgpt.com)
  • 도구: Tensorlab 가이드의 예제 스크립트 참조. [oai_citation:16‡tensorlab.net](https://www.tensorlab.net/userguide3.pdf?utm_source=chatgpt.com)

3.3 텐서곱 관점(이론 토대)

텐서곱 \(V\otimes W\)는 “모든 쌍선형사상 \(V\times W\to -\)를 선형사상으로 모아주는 보편대상”이라는 보편성이 핵심. 텐서 계산의 ‘문법’ 역할을 함. [oai_citation:17‡kconrad.math.uconn.edu](https://kconrad.math.uconn.edu/blurbs/linmultialg/tensorprod.pdf?utm_source=chatgpt.com)

4) 어떤 PDF를 먼저 볼까?

목적추천읽는 포인트
빠른 전반 개관 Kolda–Bader 리뷰 CP/Tucker/HOSVD 구조·장단점·고유성 요약. [oai_citation:18‡kolda.net](https://www.kolda.net/publication/TensorReview.pdf?utm_source=chatgpt.com)
연산/구현 관점 UIUC Basics 수축→행렬곱 환원, 펼치기 규약. [oai_citation:19‡relate.cs.illinois.edu](https://relate.cs.illinois.edu/course/cs598evs-f20/f/lectures/02-lecture.pdf?utm_source=chatgpt.com)
CP 랭크·고유성 UIUC CP 노트 CP 랭크 난점/조건/응용. [oai_citation:20‡relate.cs.illinois.edu](https://relate.cs.illinois.edu/course/cs598evs-f20/f/lectures/04-lecture.pdf?utm_source=chatgpt.com)
실무 툴킷 Tensorlab Guide MATLAB 예제·coupled/structured 분해. [oai_citation:21‡tensorlab.net](https://www.tensorlab.net/userguide3.pdf?utm_source=chatgpt.com)
응용 사례 Sandia 보고서 희소텐서·데이터마이닝 예시. [oai_citation:22‡Sandia National Laboratories](https://www.sandia.gov/app/uploads/sites/143/2021/10/daniel-dunlavy-2010-DuKoKe10.pdf?utm_source=chatgpt.com)
이론 기초(선형대수) Conrad 텐서곱 보편성·구성·예시. [oai_citation:23‡kconrad.math.uconn.edu](https://kconrad.math.uconn.edu/blurbs/linmultialg/tensorprod.pdf?utm_source=chatgpt.com)

5) 다음 학습 루트 제안

  1. 개관: Kolda–Bader 리뷰에서 CP/Tucker 비교표 먼저 보기. [oai_citation:24‡SIAM Ebooks](https://epubs.siam.org/doi/10.1137/07070111X?utm_source=chatgpt.com)
  2. 연산 감각: UIUC Basics로 수축→행렬곱 환원법 익히기. [oai_citation:25‡relate.cs.illinois.edu](https://relate.cs.illinois.edu/course/cs598evs-f20/f/lectures/02-lecture.pdf?utm_source=chatgpt.com)
  3. CP 집중: UIUC CP 노트로 랭크/유일성/초기화 포인트 확인. [oai_citation:26‡relate.cs.illinois.edu](https://relate.cs.illinois.edu/course/cs598evs-f20/f/lectures/04-lecture.pdf?utm_source=chatgpt.com)
  4. 실습: Tensorlab로 CP/Tucker 실험(희소·결측 포함). [oai_citation:27‡tensorlab.net](https://www.tensorlab.net/userguide3.pdf?utm_source=chatgpt.com)
  5. 응용 읽기: Sandia 보고서로 사례 감각 보정. [oai_citation:28‡Sandia National Laboratories](https://www.sandia.gov/app/uploads/sites/143/2021/10/daniel-dunlavy-2010-DuKoKe10.pdf?utm_source=chatgpt.com)
  6. 이론 보강: Conrad 노트로 텐서곱의 보편성 소화. [oai_citation:29‡kconrad.math.uconn.edu](https://kconrad.math.uconn.edu/blurbs/linmultialg/tensorprod.pdf?utm_source=chatgpt.com)

원하면 위 문서 중 하나를 골라 완전 한국어 요약 + 연습문제 형태로 확장해 드릴게요. (예: Kolda–Bader CP vs Tucker 비교표를 실습용 체크리스트로 변환)

Tensor Decompositions & Applications 요약 & 연습문제

Tensor Decompositions and Applications 요약 & 연습문제

Kolda & Bader의 리뷰 논문을 토대로 텐서 분해의 핵심 개념 정리와 이를 점검할 수 있는 연습문제를 제공합니다.

① 논문 개요 & 목적

  • 텐서는 다차원 배열(N-way array)이며, \(N \ge 3\)일 때의 배열 구조와 분해 방법을 다룹니다. [oai_citation:3‡kolda.net](https://www.kolda.net/publication/TensorReview.pdf?utm_source=chatgpt.com)
  • 중점 분해 방식:
    • CANDECOMP / PARAFAC (CP): 랭크-1 텐서들의 합으로 표현
    • Tucker (HOSVD 포함): 모드별 기저 + 코어 텐서로 분해
  • 분해의 응용 분야: 화학계량학, 신호 처리, 컴퓨터 비전, 데이터 마이닝 등 [oai_citation:4‡kolda.net](https://www.kolda.net/publication/TensorReview.pdf?utm_source=chatgpt.com)
  • 소프트웨어 도구: Tensor Toolbox, N-way Toolbox 등도 소개됨 [oai_citation:5‡kolda.net](https://www.kolda.net/publication/TensorReview.pdf?utm_source=chatgpt.com)

② 핵심 개념 & 수식 요약

텐서와 차수

\(d\)-차 텐서 \(\mathcal{X} \in \mathbb{R}^{n_1 \times \cdots \times n_d}\). \(d=1\)이면 벡터, \(d=2\)이면 행렬.

CP 분해 (CANDECOMP/PARAFAC)

\[ \mathcal{X} \approx \sum_{r=1}^R a^{(1)}_r \circ a^{(2)}_r \circ \cdots \circ a^{(d)}_r, \] 여기서 \(a^{(k)}_r \in \mathbb{R}^{n_k}\). 즉, 각 랭크-1 텐서는 외적(outer product) 형태.

Tucker / HOSVD

\[ \mathcal{X} \approx \mathcal{G} \times_1 U^{(1)} \times_2 U^{(2)} \cdots \times_d U^{(d)}, \] 여기서 \(\mathcal{G}\)는 코어 텐서, \(U^{(k)}\)는 모드-\(k\) 기저 행렬.

유일성 & 제약

  • CP 분해는 (특정 조건 하에서) 유일성 보장 가능 (예: Kruskal 조건)
  • Tucker 분해는 일반적으로 유일하지 않으며, 해석 가능성은 제약을 추가해야 함

③ 주요 아이디어 스케치 & 논리 흐름

CP 분해 유일성의 직관

행렬 분해에서는 U, V 스케일 조절 가능 → 유일성 낮음. 반면 텐서는 세 축 이상이므로, 스케일 조절 자유도가 제한되고 랭크-1 표현 간 혼동 가능성이 낮아져 유일성 확보 가능성이 커짐.

HOSVD를 통한 근사

모드별 특잇값 분해(SVD)를 적용하여 각 모드의 주축을 잡고, 코어 텐서를 만들어 절단(truncate)하는 방식 — 완전 최적은 아니지만 실제 근사 용도로 유용.

계산 알고리즘 흐름

  • ALS(Alternating Least Squares): 각 모드별 계수 업데이트 반복
  • 정규화, 초기화, 스케일링 고려 필요

④ 연습문제 + 풀이 스케치

문제 1 · CP 분해 구조 전개

\(\mathcal{X} \in \mathbb{R}^{2\times 3 \times 4}\)이고, 랭크 \(R=2\)라 가정하자. CP 분해 형태를 적고, 각 모드의 인자 벡터의 차원을 표기하라.

풀이 스케치 \[ \mathcal{X} \approx \sum_{r=1}^2 a^{(1)}_r \circ a^{(2)}_r \circ a^{(3)}_r, \] 여기서 \(a^{(1)}_r \in \mathbb{R}^2\), \(a^{(2)}_r \in \mathbb{R}^3\), \(a^{(3)}_r \in \mathbb{R}^4\).

문제 2 · HOSVD 근사

\(\mathcal{X} \in \mathbb{R}^{5\times 6\times 7}\). 각 모드의 기저 행렬 \(U^{(1)}, U^{(2)}, U^{(3)}\) 차원을 어떻게 정하면 좋겠는가?

풀이 스케치 각 모드 \(k\)에서 최대 \(\min(n_k, \text{rank})\) 정도 선택. 예: \(U^{(1)} \in \mathbb{R}^{5 \times r_1},\; r_1 \le 5\).

문제 3 · 유일성 조건 감각

어떤 문맥에서 CP 분해가 유일하게 결정될 수 있을까? 조건 하나 제시하고 이유를 서술하라.

풀이 스케치 예: Kruskal 조건 — 각 모드의 벡터 집합이 충분히 선형독립이면 유일성 보장.

⑤ 참고 & PDF 원문

원문 PDF: Tensor Decompositions and Applications (Kolda & Bader, SIAM Review) [oai_citation:6‡kolda.net](https://www.kolda.net/publication/TensorReview.pdf?utm_source=chatgpt.com)

이 요약본은 원문의 내용을 해석해 정리한 것이며, 완전한 증명이나 응용 예시는 원문을 참고하세요.

원한다면 이 요약 + 문제본을 기반으로 한 **슬라이드 버전 (ppt/pdf)** 도 바로 만들어줄까?

“3차원 행렬”에서 텐서로: a-튜플 스칼라와 b차원 행렬의 일반화
Linear / Multilinear Algebra · Tensors

“3차원 행렬”에서 텐서로: a-튜플 스칼라와 b차원 행렬의 일반화

행렬 \(m\times n\)을 넘어 \(m\times n\times \ell\) 같은 “3차원 행렬”을 상상하면 곧 **텐서**로 이어집니다. 더 나아가 “체(Field)의 원소 자체가 \(a\)-튜플”일 때의 구조까지 한 번에 정리합니다.

1) 큰 그림: 행렬 → 텐서

  • 스칼라: 체 \(F\)의 원소.
  • 벡터: \(F^n\) (1차원 배열).
  • 행렬: \(F^{m\times n}\) (2차원 배열 = 2차 텐서).
  • “3차원 행렬”: \(F^{m\times n\times \ell}\) (3차 텐서).
  • 일반화: \(k\)차 텐서 \( \mathcal{A}\in F^{n_1\times n_2\times\cdots\times n_k} \).

직관적으로는 “여러 축(모드)을 가진 다차원 배열”; 이론적으로는 다중선형사상을 나타내는 기하학적 객체입니다.

2) 3차원 행렬 = 3차 텐서의 수식적 정의

벡터공간 \(V_1,V_2,V_3\) 위의 3차 텐서 \(\mathcal{A}\)는 보통 다음과 같은 다중선형형식으로 생각할 수 있습니다:

\[ \mathcal{A} : V_1 \times V_2 \times V_3 \to F,\qquad \mathcal{A}(x,y,z) = \sum_{i,j,k} a_{ijk}\, x_i\, y_j\, z_k. \]

좌표계(기저)를 고정하면 텐서는 성분 \(a_{ijk}\)로 이루어진 배열 \( (a_{ijk}) \)와 동치입니다.

3) “체의 원소가 a-튜플”이라면?

만약 스칼라로 쓰는 체가 \(F=\mathbb{R}^a\) (또는 \(\mathbb{C}^a\))처럼 각 원소가 \(a\)-튜플(벡터)라면, “행렬의 각 원소”가 사실상 길이 \(a\)의 벡터가 됩니다. 그러면

\[ A \in (\,\mathbb{R}^a\,)^{m\times n} \ \cong\ \mathbb{R}^{a\times m\times n}, \]

즉, 2차 배열이 아니라 3차 텐서가 됩니다. 더 일반적으로 “원소가 \(a\)-튜플”이고 “\(b\)차원 배열(= \(b\)차 텐서)”이면:

\[ \mathcal{A} \in (\,\mathbb{R}^a\,)^{n_1\times\cdots\times n_b} \ \cong\ \mathbb{R}^{a\times n_1\times\cdots\times n_b}, \]

즉, 전체는 \((a+b)\)차 텐서가 됩니다. (스칼라의 내부 차원 \(a\)가 텐서의 한 모드로 “펼쳐진” 셈)

4) “b차원 행렬”의 정확한 말: b차 텐서

차수표현관점
1차\(F^{n}\)벡터, 선형사상 \(V\to F\)
2차\(F^{m\times n}\)행렬, 쌍선형/선형사상 \(V\to W\)
3차\(F^{m\times n\times \ell}\)3차 텐서, 삼중선형형식
\(k\)차\(F^{n_1\times\cdots\times n_k}\)다중선형형식(텐서)

따라서 “\(b\)차원 행렬”이라는 표현은 정식으로는 “\(b\)차 텐서”라고 부르는 게 정확합니다.

5) 텐서에 대한 기본 연산 (개념 맛보기)

  • 슬라이싱/섹션: 한 모드를 고정하면 더 낮은 차수의 텐서를 얻음 (예: \(a_{ij\color{#888}{k_0}}\)).
  • 텐서 수축(contraction): 한 쌍의 인덱스를 합쳐서(합을 취해) 차수를 2 낮춤. \[ (\mathcal{A}\,\text{contract}\,\mathcal{B})_{ij} = \sum_{k} a_{ik}\, b_{kj}\quad\text{(행렬 곱의 일반화)}. \]
  • 모드-\(n\) 곱(mode-\(n\) product): 텐서의 \(n\)번째 축에 행렬을 곱해 차원 변환을 수행.
  • 리셰이프 / 펼치기(unfolding): 텐서를 특정 모드 기준으로 행렬로 펼쳐 선형대수 도구를 적용.
  • 분해: CP/Tucker/HOSVD 등 텐서 전용 분해(기저/랭크 개념의 일반화).

6) 예시로 감각 잡기

예시 A · 색상 영상

RGB 이미지: \(\mathbb{R}^{H\times W\times 3}\). 각 픽셀의 “스칼라”가 사실 R/G/B 세 성분으로 이뤄진 3-튜플 → 3차 텐서.

예시 B · 채널이 더 많은 데이터

스펙트럼 영상(밴드 \(B\)개): \(\mathbb{R}^{H\times W\times B}\). \(B\)가 스칼라 내부 구조의 크기 \(a\)에 해당.

예시 C · a-튜플 스칼라 + b차 구조

원소가 \(a\)-튜플이고 구조가 \(b\)차라면 전체는 \(\mathbb{R}^{a\times n_1\times\cdots\times n_b}\). 예: 벡터값 신호열 \( (\text{시간 } T)\times(\text{센서 } S)\times(\text{채널 } a) \).

예시 D · 다중선형 평가

\(\mathcal{A}\in F^{m\times n\times \ell}\), \(x\in F^{m},y\in F^{n},z\in F^{\ell}\). \(\ \mathcal{A}(x,y,z)=\sum_{i,j,k} a_{ijk}x_i y_j z_k\) — 3개 벡터를 받아 스칼라를 내는 삼중선형형식.

7) 한눈 요약

개념표기요지
행렬\(F^{m\times n}\)2차 텐서, 선형사상/쌍선형형식
3차원 행렬\(F^{m\times n\times \ell}\)3차 텐서(다중선형)
b차원 행렬\(F^{n_1\times\cdots\times n_b}\)\(b\)차 텐서
a-튜플 스칼라\(F=\mathbb{R}^a\)스칼라 내부 구조 → 한 모드로 펼쳐짐
종합\((\mathbb{R}^a)^{n_1\times\cdots\times n_b}\cong \mathbb{R}^{a\times n_1\times\cdots\times n_b}\)전체는 \((a+b)\)차 텐서

원하면 위 내용을 바탕으로 텐서 연산(모드-n 곱, 수축)이나 텐서 분해(CP/Tucker/HOSVD)까지 확장한 실습/연습문제 버전도 만들어 줄게요.

+ Recent posts