멀티모달 인코더 융합 검색 스택 (bge-m3·CLIP·Trajectory→Fusion)
Day 1: 멀티모달 RAG
멀티모달 인코더 융합 검색 스택 (bge-m3·CLIP·Trajectory→Fusion)
RAG 심화 > Day 1: 멀티모달 RAG
- 모달리티별 인코더(bge-m3·CLIP/ResNet18·TrajectoryEncoder)의 역할을 구분한다
- FusionEncoder의 early/late/cross-attention 융합 전략을 비교한다
- MRR·top1(순위 지표)과 점수 격차(margin)가 서로 다른 것을 잰다는 것을 구분한다
- 도메인 적응(PEFT/LoRA/qLoRA)이 검색 품질에 나타나는 두 가지 방식을 설명한다
멀티모달 인코더 융합 검색 스택
제조 현장의 질의는 한 가지 형태가 아니다. "이 부품(사진) 진동이 이런데(센서 그래프) 왜 자꾸 고장나죠(텍스트)?" — 이미지·시계열·텍스트가 섞인다. 단일 모달 검색으로는 한계가 명확하다. 멀티모달 융합 검색은 각 입력을 전용 인코더로 벡터화한 뒤 하나로 합쳐(Fusion) 검색한다.
1. 모달리티별 인코더
| 모달 | 인코더 | 역할 |
|---|---|---|
| 텍스트 | bge-m3 | 다국어·긴문맥 임베딩(dense+sparse+multi-vector). 한국어 설비 매뉴얼·증상 서술에 강함 |
| 이미지 | CLIP / ResNet18 | CLIP은 텍스트와 같은 공간(제로샷 검색), ResNet18은 경량 CNN 백본(외관검사 특징 학습) |
| 센서 궤적 | TrajectoryEncoder | 진동·온도 같은 시계열 궤적을 벡터로. 시간에 따른 패턴(주기성·급변)을 포착 |
각 인코더는 서로 다른 차원·의미 공간의 벡터를 만든다. 그대로는 비교할 수 없다.
2. FusionEncoder — 융합 전략
여러 모달 벡터를 하나의 표현으로 합치는 모듈. 대표 전략 세 가지:
- Early fusion: 입력 단계에서 합침 — 모달 간 상호작용은 풍부하나 정렬·결측에 취약
- Late fusion: 각 모달 점수를 따로 낸 뒤 가중합 — 단순·견고, 본 시뮬레이터의 기본 방식
- Cross-attention fusion: 모달 간 교차 어텐션 — 표현력 최고, 학습 비용 큼
핵심 직관: 한 모달이 헷갈려도 다른 모달이 보완한다. 외륜 흠집 이미지가 발열처럼 보여도(이미지 오인), 진동 궤적과 텍스트가 베어링을 가리키면 융합 결과는 정답으로 수렴한다.
3. 검색 품질 평가 — MRR · top1
융합이 정말 나은지는 지표로 증명한다.
- top1 (Recall@1): 정답이 1위로 검색된 질의 비율. 가장 엄격.
- MRR (Mean Reciprocal Rank): 정답 순위의 역수 평균(1/rank). 정답이 2위면 0.5. 랭킹 전반 품질.
단일 모달은 특정 질의에서 정답이 2위로 밀려 MRR·top1이 떨어지지만, 융합하면 1위로 올라온다. 연결된 시뮬레이터에서 모달리티를 끄고 켜며 직접 확인하라.
4. 도메인 적응 — PEFT / LoRA / qLoRA
범용 인코더를 제조 도메인에 맞추되, 전체를 재학습하지 않는다. LoRA는 저랭크 어댑터만(전체의 0.1~1%), qLoRA는 4-bit 양자화로 메모리까지 줄여 단일 GPU에서 인코더·FusionEncoder를 미세조정한다. (LoRA·qLoRA 를 직접 학습시키는 것은 Week 6 에서 다룬다. 여기서는 「도메인 적응이 검색 지표를 어떻게 바꾸는가」만 본다.)
도메인 적응은 두 가지로 나타난다. 하나는 순위 자체가 바뀌는 것, 다른 하나는 순위는 그대로여도 정답과 오답의 점수 격차가 벌어지는 것이다. 격차가 벌어지면 임계값으로 「검색 실패」를 걸러내기 쉬워진다.
연결된 시뮬레이터의 파인튜닝 토글은 뒤쪽만 보여 준다. q1(진동↑ + 금속음 + 외륜 흠집)에서 세 모달을 모두 켜면 정답 bearing 0.700 대 오답 spindle 0.660(격차 0.040)이고, 토글을 켜면 0.711 대 0.659(격차 0.052)가 된다. 순위는 1위·2위 그대로다. 이 시뮬의 샤프닝은 시그모이드 변환이고, 시그모이드는 순증가 함수라 정렬을 보존하기 때문이다.
여기서 검색 평가의 기본 사실 하나가 나온다. 순위를 보존하는 변환은 랭킹 지표(MRR·top1)를 바꿀 수 없다. 이 시뮬에서 MRR·top1을 움직이는 것은 파인튜닝이 아니라 모달리티 조합이다.
요약: 텍스트(bge-m3)·이미지(CLIP/ResNet18)·궤적(TrajectoryEncoder)을 각자 인코딩 → FusionEncoder로 융합 → 검색 → MRR/top1로 평가 → qLoRA로 도메인 적응. 멀티모달이 단일 모달의 모호함을 해소한다. 다만 지표를 볼 때는 순위가 바뀐 것인지 점수 격차만 벌어진 것인지를 반드시 나누어 읽는다.
early/late/cross-attention 융합의 장단점을 제조 결측 데이터 상황에 대입해 비판적으로 점검하세요.
제조 설비 검색에서 센서 데이터가 일부 결측될 때 early fusion과 late fusion 중 무엇이 더 견고한지, 그 이유와 반례를 함께 설명해줘.