평면 텐서 네트워크 수축의 복잡성

읽는 시간: 5 분
...

📝 원문 정보

  • Title: The Complexity of Contracting Planar Tensor Network
  • ArXiv ID: 2001.10204
  • 발행일: 2023-07-06
  • 저자: Liu Ying

📝 초록 (Abstract)

텐서 네트워크는 양자 컴퓨팅과 기계 학습 등 다양한 연구 분야에서 중요한 개념 및 기술입니다. 본 논문에서는 특별한 그래프 구조, 즉 평면 그래프와 유한 요소 그래프에서 텐서 네트워크의 수축에 대한 지수 복잡도를 연구합니다. 우리는 어떤 유한 요소 그래프가 $O(d\sqrt{\max\{\Delta,d\}N})$ 크기의 엣지 분리자를 갖는다는 것을 증명했습니다. 또한, 최대 차수가 $\Delta$이고 평면 골격에서 어떤 면도 $d$개 이상의 경계 변을 가지지 않는 유한 요소 그래프를 기반으로 하는 $N$ 개의 부울 텐서로 구성된 텐서 네트워크를 수축하는 시간 복잡도가 $2^{O(d\sqrt{\max\{\Delta,d\}N})}$인 알고리즘을 개발했습니다. 우리는 고차원 텐서를 저차원 텐서로 전환하여 지수적 알고리즘을 가속화하는 두 가지 방법을 사용합니다. 또한, 계산용 지수 시간 가설(\#ETH)이 성립할 때 텐서 네트워크 수축의 하한을 증명했습니다.

💡 논문 핵심 해설 (Deep Analysis)

This paper focuses on the complexity of contracting tensor networks, specifically for planar and finite element graphs. Tensor networks are essential in various fields like quantum computing and machine learning, but their contraction can be computationally intensive. The authors address this by developing a new algorithm that finds an edge separator with size $O(d\sqrt{\max\{\Delta,d\}N})$ for any finite element graph. This allows them to effectively partition and contract the tensor network in $2^{O(d\sqrt{\max\{\Delta,d\}N})}$ time, significantly improving efficiency. They also introduce methods to reduce high-dimensional tensors to low-dimensional ones, further enhancing algorithmic performance. The paper’s findings are crucial for theoretical advancements and practical applications, particularly in quantum computing and machine learning.

📄 논문 본문 발췌 (Translation)

# 텐서 네트워크 수축을 위한 알고리즘

Kourtis 등은 $`N`$ 개의 정점과 최대 차수 $\Delta$를 가진 평면 부울 텐서 네트워크를 $`2^{O(\sqrt{\Delta}N)}`$ 시간에 수축하는 알고리즘을 소개했습니다. 이들은 Lemma [planar_edge_separator] 에서 제시된 분할 정복 알고리즘을 사용하여 네트워크를 $`N`$ 개의 고립된 텐서로 분할하는 순차적인 엣지 분리자를 찾았습니다. 그런 다음, 분할 과정에서 역순으로 고립된 텐서들을 수축했습니다. 이 알고리즘은 각 수축 과정에서 나타나는 텐서의 차원이 $`O(\sqrt{\Delta N})`$라는 것을 보장하여 부울 텐서 네트워크를 $`2^{O(\sqrt{\Delta N})}`$ 시간에 수축할 수 있었습니다.

본 논문에서는 유한 요소 그래프의 엣지 분리자를 고려합니다.

유한 요소 그래프 $`G`$가 $`N`$ 개의 정점과 최대 차수 $\Delta$를 가지며, 각 요소가 $`d`$개 이하의 경계 변을 가진다고 가정합시다. 균형 잡힌 엣지 분리자 $`C`$는 다항 시간 내에 찾을 수 있으며, 크기는 $`|C|=O(d\sqrt{\max\{\Delta,d\}N})`$입니다.
*증명.* $`G^*`$는 $`G`$의 평면 골격을 나타냅니다. $`L_1,L_2,...,L_f`$로 표시된 $`f`$ 개의 면이 3개 이상의 경계 변을 가진다고 가정합시다. 우리는 각 면 $`L_i`$ 내부에 새로운 정점 $`w_i`$를 추가하고 이를 모든 경계 정점과 연결하여 평면 그래프 $`G^{**}`$를 구성합니다. $`W=\{w_1,w_2,...,w_f\}`$. 이 평면 그래프는 최대 차수가 $\Delta^{**}\leq \mathrm{max}\{\Delta,d\}$인 $`N+f\leq 2N`$ 개의 정점을 갖습니다. Lemma [separator_for_finite_element_graph]에 따라, 우리는 다항 시간 내에 크기 $`|C^{**}|=O(\sqrt{\Delta^{**}N})`$인 균형 잡힌 엣지 분리자 $`C^{**}`$를 찾습니다.

$`C^{**}`$는 평면 그래프 $`G^{**}`$를 두 개의 불연속 부분, $`A^{**}`$와 $`B^{**}`$로 분할한다고 가정합시다. $`A=A^{**}\cap V(G)`$이고 $`B=B^{**}\cap V(G)`$. 엣지 $(u,v)\in E(G)$가 $`A`$와 $`B`$를 연결하며, $`(u,v)\in C^{**}`$이거나 $`\{(u,w_i),(w_i,v)\}\cap C^{**}\neq\emptyset`$인 경우 $`w_i\in W`$. 만약 $`(u,w_i)\in C^{**}`$, 우리는 $`L_i`$의 경계 정점 중 하나와 연결되는 모든 대각선을 집합 $`C`$에 추가합니다. 같은 방법으로 $`(w_i,v)\in C^{**}`$인 경우도 처리합니다. 마지막으로, $`C`$는 균형 잡힌 엣지 분리자이며 크기는 $`|C|=O(d\sqrt{\max\{\Delta,d\}N})`$. ◻

이와 유사한 지수적 알고리즘을 구성할 수 있습니다.

유한 요소 그래프 $`G`$가 $`N`$ 개의 정점과 최대 차수 $\Delta$를 가지며, 각 요소가 $`d`$개 이하의 경계 변을 가진다고 가정합시다. 부울 텐서 네트워크가 이 그래프를 기반으로 한다면, 이를 $`2^{O(d\sqrt{\max\{\Delta,d\}N})}`$ 시간에 수축할 수 있습니다.

부울 대칭 함수의 집합 위에 정의됨

부울 대칭 함수의 집합 위에서 이 알고리즘을 가속화하는 방법을 고려합니다. 텐서 네트워크가 어떤 $`n`$ 개의 부울 대칭 함수로 정의되면, 각 함수를 $`O(n)`$ 개의 정점을 갖는 평면 제한 차수 구조로 교체할 수 있습니다.

$`F=[f_0,f_1,\cdots,f_n]`$와 $`f_0,f_1,...,f_n\in\mathbb{C}`$, (예를 들어, $`n`$은 2의 거듭제곱이라고 가정합시다)[^2]. 우리는 다음 그림 1과 같은 평면 구조로 $`F`$를 대체합니다. 이 구조의 일반적인 아이디어는 각 할당을 재정렬하는 것입니다. 할당 순서가 무관하기 때문입니다. 할당 $`x=(w_1w_2\cdots w_n)\in\{0,1\}^n`$의 해밍 무게(Hamming weight)를 계산하고, 이를 기반으로 정렬된 문자열을 반환합니다. 그런 다음 1과 0의 경계 위치에 따라 해당 함수 값을 결정합니다. 구체적으로 설명하겠습니다.

부울 대칭 함수를 실현하는 평면 제한 차수 구조.

이 평면 구조의 왼쪽 부분은 “Adder” 아이디어를 사용하여 할당 $`x=(w_1w_2\cdots w_n)\in\{0,1\}^n`$의 해밍 무게 ${\rm Hw}(x)$의 이진 표현을 계산합니다. 왼쪽 구조는 모든 인접 비트를 더하는 단순한 덧셈 연산자로 구성됩니다. 각 정점은 두 개 또는 세 개의 비트를 더하는 덧셈 함수 $`A`$와 $`B`$, 그림 2-(a)에 표시된 것과 같습니다. 이 덧셈 함수는 가장 자릿수 비트 $`u`$를 더 높은 단계의 덧셈에 사용하고, 최하위 비트 $`h`$ 또는 $`h_2`$를 오른쪽 인접 정점의 연산에 사용합니다. $`\log_2 n`$ 단계 후, 왼쪽 부분은 위에서 아래로 이어지는 수평 엣지에서 ${\rm Hw}(x)$의 이진 표현을 출력합니다 (정보가 손실되지 않으므로 ${\rm Hw}(x)\leq \log_2 n +1$).

image image

왼쪽 부분

image image

오른쪽 부분
평면 구조의 정점 모드.
MATH
\begin{align*}
        &A(u,h,I_1,I_2)=
        \begin{cases}
            1  &  \text{if $u=\lfloor (I_1 + I_2)/2 \rfloor $ and $h=(I_1+I_2)$ mod 2} \\
            0 &  \text{else}\\
        \end{cases}
        \\
        &B(u,h_1,h_2,I_1,I_2)=
        \begin{cases}
            1  &  \text{if  $u=\lfloor(I_1 + I_2 + h_1)/2\rfloor$ and $h_2=(I_1+I_2+h_1)$ mod 2} \\
            0 &  \text{else}\\
        \end{cases}
\end{align*}
클릭하여 더 보기

오른쪽 부분은 수평으로 ($`\log_2 n+1`$) 비트를 사용하여 정렬된 문자열 $`1^{{\rm Hw}(x)} 0^{|x|-{\rm Hw}(x)}`$을 복원하고, 이를 기반으로 정확한 값을 출력합니다. 가장 상위 두 비트가 동시에 1이 될 수 없습니다. 오른쪽 부분의 함수는 왼쪽과 약간 다릅니다 (그림 2-(b)). 각각은 다음과 같은 함수들 중 하나입니다:

MATH
\begin{align*}
        &C(u,h,o_1,o_2)=
        \begin{cases}
            1 &  \text{if $o_1=u + h$ and $o_2= 2u+h-o_1$} \\
            0 &  \text{else}\\
        \end{cases}
        \\
        &D(u,h_1,h_2,o_1,o_2)=
        \begin{cases}
            1 &  \text{if $u=1$ \& $o_1=o_2=1$ and $h_2=h_1$} \\
            1 &  \text{if $u=0$ \& $o_1=h_1$ and $o_2=h_2=0$} \\
            0 &  \text{else}\\
        \end{cases}
\end{align*}
클릭하여 더 보기

해밍 무게는 정렬된 문자열 $`1^{{\rm Hw}(x)} 0^{|x|-{\rm Hw}(x)}`$ 내에서 서브 스트링 $`10`$의 위치를 반영합니다. 이 구조는 추가적인 $`2`$-차원 함수 $`F_1,\cdots,F_i,\cdots,F_{n-1}`$을 사용하여 해당 위치를 식별합니다, 여기서 $`i\in \{2,\cdots,n-2\}`$.

MATH
\begin{equation}
    \begin{cases}
    F_1(0, 0)=f_0, &   \\
    F_1(1, 0)=f_1, &  \\
    F_1(1, 1)=F_1(0,1)=1; &  
    \end{cases}
    \nonumber
\end{equation}
클릭하여 더 보기
MATH
\begin{align*}
        &\begin{cases}
            F_i(0,0)=F_i(1,1)=F_i(0,1)=1, &   \\
            F_i(1,0)=f_i; &  
        \end{cases}
    \\
        &\begin{cases}
            F_{n-1}(1,1)=f_n, &   \\
            F_{n-1}(1,0)=f_{n-1}, &  \\
            F_{n-1}(0,0)=F_{n-1}(0,1)=1. &  
        \end{cases}
\end{align*}
클릭하여 더 보기

이 평면 구조의 정점 수는 $`2(n+ \frac{n}{2} + \frac{n}{4} + \cdots +1 ) + n-1 = O(n)`$이고, 최대 차수는 $`5`$입니다.

부울 대칭 함수 집합 위에 정의된 어떤 텐서 네트워크 $`G`$가 주어지면, 이 구조로 사전 처리하여 제한 차수 텐서 네트워크 $`G'`$를 생성합니다. 만약 $`G`$가 평면 그래프라면, $`\sum_{v\in V(G)} d_{v}=2E(G)\leq 6|V(G)|-12`$. 따라서 $`G'`$는 약 3-4 페이지 분량의 내용을 포함합니다.

평면 그래프 위에 정의된 부울 대칭 함수 집합으로 구성된 텐서 네트워크를 수축하는 알고리즘은 $`2^{O(\sqrt{N})}`$ 시간 복잡도를 가지며, 이를 통해 효율적인 수축이 가능합니다.

Reference

이 글은 ArXiv의 공개 자료를 바탕으로 AI가 자동 번역 및 요약한 내용입니다. 저작권은 원저자에게 있으며, 인류 지식 발전에 기여한 연구자분들께 감사드립니다.

검색 시작

검색어를 입력하세요

↑↓
ESC
⌘K 단축키