충분한 크기의 데이터로 학습된 representation 모델들은 서로 다른 아키텍쳐로 따로 학습되었을지라도 결국 동일한 표현을 학습하게 된다
플라톤? → 이데아 이론
이데아라고 부를 수 있는 변하지 않는 본질이 존재하고 우리가 실제로 감각하고 보는 것들은 마치 어두운 동굴 속에 갇힌 사람들이 벽에 비치는 사물의 그림자를 보는 것과 같은 이데아의 불완전한 묘사
현실(본질적인 특성)이 존재할 때, 이미지와 텍스트는 이를 각각 다른 방식으로 묘사하지만 그 뒤에는 결국 하나의 진실(본질; 통계적 속성)이 존재하므로 데이터와 모델의 크기가 커질수록, 그리고 downstream task에서 잘 작동하는 유능한 모델이 될수록, 여러 임베딩이 하나의 표현으로 수렴
위 논문은 다양한 방식으로 훈련된 임베딩에 대해 alignment 지표를 관찰한 결과를 간접적인 증거로 같이 제시
조금 더 자세한 근거는
Task Generality : 데이터가 대규모이고 모델의 태스크가 범용적일(어려울) 수록 제약이 많아지고 결국 그 제약을 만족시킬 수 있는 가능한 표현(solution)의 공간은 더더욱 작아짐(즉 도달 가능한 목표 공간은 거기서 거기일 것임)
Model Capacity : 모델이 커질수록 최적해를 더 효과적으로 찾을 수 있기 때문에 충분히 유능한 모델은 수렴할 가능성이 높음.
Simplicity Bias : 입출력이 동일하더라도 내부 표현은 다르게 학습할 수 있지만 딥한 네트워크는 본질적으로 가장 simple fit을 찾도록 편향되어 있기 때문에 여러 가능한 복잡한 표현 중에서도 공유된 solution 공간으로 수렴할 가능성이 큼.
vec2vec
이 플라톤 표현 이론을 조금 더 발전시켜서 실제로 완전히 서로 다른 모델로 학습된 두 개의 임베딩을 (인코더를 모르더라도, 쌍으로 맵핑된 정답 없이도 완전히 비지도 방식으로) 성공적으로 연결할 수 있다는 것을 보여줌
구조
입력 어댑터(A), 출력 어댑터(B), 공유된 backbone 네트워크(T) 3가지 어댑터가 존재
입력 어댑터 A: 각 개별 임베딩 공간에서 나온 임베딩을 보편적인 잠재 표현으로 변환하는 역할
Shared Backbone Network T: 중간에서 잠재 공간 내에서 임베딩을 변환하는 역할
입력 어댑터 B: 보편적인 잠재 표현에서 나온 임베딩을 각 개별 임베딩 공간의 표현으로 변환하는 역할
(T는 왜 필요하지? → A는 단순히 각 모델에서 잠재 공간으로 일치시켜주는 역할이라면 T는 모델 1,2,3,..등 여러 다른 소스, 다른 도메인에서 온 임베딩들이 잠재 공간 내에서 정말 공통의 표현으로 잘 정렬될 수 있도록 하기 위한 목적의 MLP)
residual connections, layer normalization, and SiLU nonlinearities 조합의 MLP를 사용
4종의 함수
변환 함수:
F1 = B2 ∘ T ∘ A1: 모델1 공간에서 모델2 공간으로 변환
F2 = B1 ∘ T ∘ A2: 모델1 공간에서 모델2 공간으로 변환
재구성 함수:
R1 = B1 ∘ T ∘ A1: 모델1 공간에서 잠재 공간을 거쳐 다시 모델1 공간으로 재구성
R2 = B2 ∘ T ∘ A2: 모델2 공간에서 잠재 공간을 거쳐 다시 모델2 공간으로 재구성
학습
궁극적 목표: 동일한 텍스트에 대해 여러 방식으로 학습된 임베딩이 공유된 보편적인 잠재 표현 기준으로 거의 동일해지는 것
loss
재구성 손실 (Reconstruction Loss) : 임베딩이 잠재 공간을 거쳐 원래 공간으로 돌아왔을 때 온전히 잘 돌아와야 함
사이클 일관성 손실 (Cycle Consistency Loss) : 임베딩이 잠재 공간을 거쳐 다른 공간에 갔다가 다시 원래 공간으로 돌아왔을 때 온전히 잘 돌아와야 함
벡터 공간 보존 (Vector Space Preservation Loss) : 변환된 임베딩들 간의 pairwise 거리가 변환 전의 임베딩들 간의 거리와 비슷해야 함 (= 임베딩 공간 내의 상대적인 구조가 변환하면서 왜곡되지 않도록)
적대적 손실 (Adversarial Loss) : 일반적인 GAN 학습 방식과 동일함. F와 R이 generator라면 discriminator 네트워크를 따로 둬서 변환된(생성된) 임베딩 분포를 타겟 분포와 잘 맞출 수 있도록 함
2개의 임베딩 공간이 잠재 공간을 사이에 두고 벡터가 이리 갔다 저리 갔다 돌아왔다 난리를 쳐도 안정적으로 값이 유지될 때 우리의 A-T-B 어댑터가 완전하다고 볼 수 있어 라는 논리
GAN loss같은 경우는 ablation 했을 때 성능이 많이 떨어지는 것으로 보아 잠재공간으로 변환하는(새 벡터를 생성하는) 과정에서 핵심적인 역할을 하는 것으로 보인다고 함
평가
과제
소스 임베딩 ui=M1(di)가 주어졌지만 M1이 뭔지는 모르는 상황에서, 동일한 원본 문서에 대한 타겟 모델의 임베딩 vi=M2(di) 에 최대한 가까운 벡터 F(ui) 를 생성해야 함
지표
Mean Cosine Similarity : 번역된 임베딩 F(ui)가 실제 타겟 임베딩 vi와 얼마나 유사한가 = 1.0이어야 이상적
Top-1 Accuracy: 번역된 임베딩 F(ui)가 타겟 임베딩 후보 집합 M2(dj) 내에서 실제 타겟 임베딩 vi와 가장 가까운(역시 코사인 유사도 기준) 임베딩으로 올바르게 식별되는 비율 = 1.0이어야 이상적
Mean Rank: 번역된 임베딩 F(ui)가 타겟 임베딩 후보 집합 M2(dj) 을 비교했을 때 실제 타겟 임베딩 vi의 평균 순위 = 1위어야 이상적
Natural Questions(NQ) 데이터를 통해 학습했는데, 같은 데이터를 통한 평가(in-distrbution) 결과 뿐 아니라 아예 도메인이 다른 트윗 데이터나 의료 기록 데이터에서도 좋은 성능을 보여 일반화 능력이 확인
임베딩과 보안
지금까지 산업장면에서 일반적으로 임베딩 데이터는 다른 데이터에 비해 보안대상이 아니었음 (그 데이터만 봤을 때 알아낼 수 있는 정보가 없다고 여겨졌기 때문에)
그러나 이메일 데이터로 실험한 결과, vec2vec을 활용해 모르는 모델로 학습된 임베딩의 modality와 언어 정보 정도만 알았을 때에도 그 안에서 최대 80%까지 유의미한 정보를 추출할 수 있었음
재구성된 텍스트가 완벽하지는 않았지만 이름, 날짜, 승진 정보, 재무 정보, 서비스 중단, 점심 주문 등 민감한 정보를 추출
결론
vec2vec이 두 개 임베딩 공간을 효율적으로 변환할 수 있고, 단순히 기하학적인 구조만이 아닌 텍스트의 의미론적인 내용까지 보존