오토인코더와 클로즈드 루프: 되살린 것을 다시 압축하기

자주 하는 실수와 요약

자주 하는 실수

실수 나온 문제 바로잡는 법
재구성 오차가 같으면 코드도 똑같이 좋다고 봄 1 되살린 것만 보는 오픈 루프로는 알 수 없다. 코드에서 클러스터가 갈리는지는 코드 공간에서 따로 잰다
두 기준이 비긴 것을 우연으로 넘김 2 덩어리가 동그라면 수 하나짜리 코드의 ΔR은 재구성 오차가 정한다. 길쭉한 덩어리에서 두 기준이 갈린다
검증 재구성 손실이 가장 낮은 인코더를 코드의 용도와 상관없이 고름 3 재구성 손실은 무엇을 남겼는지만 센다. 코드를 쓸 일에 맞는 숫자(ΔR 같은)로 고른다
항목별로 반쯤 맞으면 되살리기가 괜찮다고 봄 4 다시 얻은 코드들이 처음 코드들만큼 다양한지 본다. 모두 같은 코드로 모이면 무너진 것이다
재구성을 가장 잘하는 디코더라서 자기 일관이라고 봄 5 선형 디코더의 자기 일관은 uᵀv = 1 이라는 별개의 조건이다. 재구성이 나빠도 지켜질 수 있다
자기 일관이면 좋은 오토인코더라고 봄 5 자기 일관은 필요한 조건일 뿐이다. 코드의 클러스터가 갈리는지(ΔR(Z))도 함께 본다
화소 거리가 작으면 잘 되살렸다고 봄 6 흐릿한 평균 그림이 화소 거리로는 가깝다. 무엇을 같다고 볼지 담은 코드로 비교한다
표에서 가장 좋은 칸만 보고 고름 7 상대가 내 선택을 보고 대응한다. 줄마다 최악을 보고 그 최악이 가장 작은 쪽을 고른다
재구성 오차로 디코더를 골라도 클로즈드 루프와 같다고 봄 8 재구성 오차는 클러스터 가운데로 당기는 디코더를 좋아할 수 있다. 다시 얻은 코드의 차이가 그것을 잡는다
놀이에서 한쪽 선수의 대답만 보고 결론 냄 8 인코더와 디코더의 가장 좋은 대답을 함께 본다
총 코딩 레이트가 표현의 모든 무너짐을 잡는다고 봄 9 가운데를 빼지 않은 R은 방향의 수를 본다. 한 직선 위로 갈린 표현과 한 점으로 모인 표현은 같은 값을 받는다

요약

이 장에서 한 일을 정리해 보자. 오토인코더는 압축기(인코더)와 풀기 프로그램(디코더)을 함께 배우는 손실 압축기이고, 보통 재구성 오차로 학습하고 평가한다. 되살린 것을 원래 자료와만 비교하는 이 방식이 오픈 루프다. 길쭉한 덩어리 셋으로 된 점 180개를 수 하나로 줄이는 선형 오토인코더에서, 주축에서 ±40° 돌린 두 인코더는 재구성 오차가 0.293으로 같았지만 코드의 코딩 레이트 감소는 0.993비트와 2.653비트로 크게 달랐다. 오픈 루프는 코드 공간에서 일어난 일을 보지 못한다.

클로즈드 루프는 되살린 것을 같은 인코더에 다시 넣어, 다시 얻은 코드를 처음 코드와 코드 공간에서 비교한다. 다시 압축해도 같은 코드가 나오는 성질이 자기 일관이다. 덩어리마다 평균 점만 그리는 대표점 디코더는 재구성 오차가 0.307로 선형 디코더(0.293)와 비슷했지만, 다시 얻은 코드가 클러스터마다 한 점으로 모여 클러스터별 차이의 합이 0.316비트로 드러났다. 클로즈드 루프 전사는 인코더가 그 차이와 클러스터의 갈림을 키우고 디코더가 차이를 줄이는 놀이로 둘을 함께 배운다. 장난감에서 놀이에 올린 인코더는 재구성 오차가 가장 작은 3.9°가 아니라 클러스터가 가장 잘 갈리는 140°를 골랐다.

flowchart LR
  X["자료 x"] -- "인코더 f" --> Z["코드 z"]
  Z -- "디코더 g" --> XH["되살린 x̂"]
  XH -. "오픈 루프: ‖x − x̂‖²" .-> X
  XH -- "같은 인코더 f" --> ZH["다시 얻은 코드 ẑ"]
  ZH -. "클로즈드 루프: ΔR(Z, Ẑ)" .-> Z

막힌 곳

클로즈드 루프는 화소 거리 같은 자료 공간의 잣대 없이 압축기가 자기 결과를 검사하게 했다. 그러나 이 장의 장난감에는 끝까지 클러스터 라벨이 있었다. 클러스터별 차이 ΔR(Zⱼ, Ẑⱼ)도, 클러스터가 갈리는 정도 ΔR(Z)도 「어느 점이 어느 클러스터인가」를 알아야 잴 수 있다. 인코더가 무엇을 같다고 볼지는 결국 그 라벨이, 아니면 사람이 고른 코드(줄무늬의 세기)가 정했다. 라벨도, 사람이 고른 코드도 없을 때 압축기는 무엇을 남기고 무엇을 버릴지를 어디서 배울까? 그리고 그렇게 짧게 적은 코드가 자료를 「이해」했다고 말할 근거는 무엇일까?