대칭과 등변성: 대칭을 바꾸면 기저가 바뀐다
자주 하는 실수와 요약
자주 하는 실수
| 실수 |
바른 생각 |
나온 문제 |
| 4시간씩과 6시간씩을 섞으면 시계의 모든 시각에 닿는다 |
둘 다 짝수라 짝수 시각 여섯에만 닿는다. 4시간씩만 도는 동작들도 열두 동작 안의 작은 군이다 |
문제 1 |
| 바꾸기가 두 가지뿐이면 만들 수 있는 순서도 몇 개뿐이다 |
1·2 바꾸기와 2·3 바꾸기를 이어 하면 여섯 가지가 모두 나온다. 순서 바꾸기는 이어 하는 순서에 따라 결과가 다르다 |
문제 2 |
| 증강 옵션을 이어 붙이면 새 그림이 끝없이 나온다 |
90° 돌리기와 좌우 뒤집기는 군을 이루어 여덟 가지 안에서만 돈다 |
문제 3 |
| 섞으면 숫자가 바뀌는 계산은 대칭과 상관없다 |
숫자가 원소를 따라 자리만 옮기면 등변이다. 줄 순서를 쓰는 계산만 둘 다 아니다 |
문제 4 |
| 돌리기에 등변인 합성곱 커널은 아홉 칸이 모두 같아야 한다 |
90° 돌려도 칸마다 값이 같으면 된다. 3 × 3 은 가운데, 가장자리, 모서리 세 숫자 |
문제 5 |
| 어텐션이 등변이면 어느 자리를 읽어도 같다 |
출력이 같이 섞이므로 한 자리만 읽으면 다른 토큰을 읽는다. 평균처럼 모아야 불변이다 |
문제 6 |
| 순서를 당겨 적은 신호는 계수가 전부 새로 나온다 |
계수에 1, i, −1, −i 가 곱해질 뿐 크기는 그대로다 |
문제 7 |
| 대칭이 있는 그림에서 어떤 성분이 0인 것은 우연이다 |
그대로여야 하면서 −1배가 되는 성분은 0이다. 대칭이 살아남을 성분을 정한다 |
문제 8 |
| 등변 층 λI + γ11ᵀ 는 입력을 λ 배 한다 |
평균 부분은 λ + Mγ 배, 나머지는 λ 배다 |
문제 9 |
| 대소문자 꼴 몇 가지를 카드로 적으면 거의 다 덮는다 |
다섯 글자면 32가지라 세 꼴은 9.4% 뿐이다. 규칙으로 박는 편이 낫다 |
문제 10 |
| 대칭은 구조에 박을수록 좋다 |
데이터에 없는 대칭을 박으면 ㄱ 과 ㄴ 처럼 가려야 할 것을 못 가른다 |
문제 11 |
| 채널을 절반으로 줄인 등변 층은 가중치가 4분의 1이다 |
입력도 방향마다 지도가 넷이라 가중치 수는 같고, 계산은 4배다 |
문제 12 |
요약
- 군: 이어 해도 묶음 안에 있고, 아무것도 안 하는 것이 있고, 되돌릴 수 있는 변환들의 묶음. 90° 돌리기 넷은 이어 하는 순서가 상관없고, 칸 세 개 순서 바꾸기 여섯은 순서에 따라 결과가 다르다. 클라인은 허락하는 변환으로 기하학을 갈랐다.
- 등변: 입력을 변환하면 출력도 같은 변환을 받는 성질 Φ(gx) = gΦ(x). 출력이 그대로인 불변은 그 특별한 경우다. 돌려도 같은 꼴의 합성곱 커널은 돌리기에 등변이고, 위치 인코딩 없는 어텐션은 순서 바꾸기에 등변이다. 등변인 출력을 모으면 불변이 된다.
- 군의 푸리에 변환: 대칭 변환이 성분마다 숫자 하나를 곱하는 일이 되게 신호를 나누는 것. 90° 돌리기 넷은 4점 이산 푸리에 변환으로 성분 넷을 내고, 돌리면 성분에 1, i, −1, −i 가 곱해진다. 순서 바꾸기는 평균 부분과 쪼개지지 않는 나머지로 나뉜다.
- 군 합성곱: 합성곱 커널을 군의 원소마다 변환해 함께 쓰는 연산. 같은 가중치 수로 데이터 늘리기보다 적은 그림으로 배우지만, 데이터에 없는 대칭을 박으면 가를 것을 못 가른다.
- ML에서는 데이터가 놓인 바탕의 군이 신경망의 꼴을 정한다(기하학적 딥러닝). 집합 신경망은 「합과 평균」, 돌림 등변 신경망은 돌린 합성곱 커널 넷을 쓴다.
flowchart LR
A["군<br/>대칭을 모은 것"] --> B["등변<br/>Φ(gx) = gΦ(x)"]
A --> C["군의 푸리에 변환<br/>성분마다 숫자 하나를 곱받게"]
B --> D["군 합성곱<br/>돌린 합성곱 커널을 함께"]
C --> D
막힌 곳
- 이 장의 군은 원소가 넷, 여섯, 여덟인 작은 군이었다. 구를 돌리는 방법은 축도 각도도 끝없이 많고, 이어 하는 순서에 따라 결과가 달라진다. 지구 위의 기온처럼 구 위에 놓인 값에는 어떤 성분이 짝지어질까?
- 순서 바꾸기에서는 쪼개지지 않는 「나머지 평면」이 남았다. 구의 회전에서도 그런 덩어리가 생긴다면 덩어리마다 성분이 몇 개씩 들어갈까? 그 덩어리별 파워는 구를 돌려도 그대로일까?
- 90° 돌리기만 다루었으므로 그림의 칸이 정확히 칸으로 옮겨 갔다. 45°나 30°처럼 칸 사이로 떨어지는 돌리기에서는 등변을 어떻게 지킬 수 있을까?