← 返回列表

AI 시리즈 면접 10: Embedding은 도대체 무엇을 했을까? — 기술 본질부터 면접 답변까지

Embedding은 도대체 무엇을 했을까? — 기술 본질부터 면접 답변까지

1. 기술 본질: 한 문장으로 핵심을 밝힌다

Embedding의 핵심 작업은 이산적인 비정형 데이터(텍스트, 이미지 등)를 연속적이고 저차원의 벡터 공간에 매핑하여 의미적으로 유사한 객체가 해당 공간에서 서로 가까워지도록 하는 것입니다.
쉽게 말하면, 컴퓨터에 '의미 좌표계'를 구축하여 인간의 '모호한 의미'를 컴퓨터가 계산할 수 있는 '위치 좌표'로 번역하는 것입니다.


2. 직관적 이해: 의미 지도

2차원 지도를 상상해 보세요(실제 임베딩은 수백 차원인 경우가 많지만 원리는 동일합니다):

  • 고양이 → [0.92, 0.31, -0.45, …]
  • 개 → [0.88, 0.29, -0.42, …]
  • 자동차 → [0.15, -0.87, 0.53, …]

고양이와 개의 벡터는 매우 가깝고, 자동차는 멀리 떨어져 있습니다.
Embedding을 통해 컴퓨터는 단어를 더 이상 고립된 기호로 보지 않고, '의미의 가까움'에 따라 텍스트를 비교할 수 있습니다.


3. 기술 원리(간략화 버전): 어떻게 학습되는가?

언어학적 가정에 기반: '단어의 의미는 그 문맥에 의해 결정된다.'

  • 방대한 텍스트에서 훈련(예: Word2Vec, BERT 임베딩 레이어)을 통해 모델은 각 단어의 벡터를 지속적으로 조정합니다.
  • 결국, 유사한 문맥에서 자주 등장하는 단어(고양이와 개는 '반려동물', '쓰다듬다', '먹이를 주다' 맥락에서)는 서로 가까운 위치에 놓이게 됩니다.
  • 이 과정은 전적으로 인간의 주석 없이, 언어 사용에서 자동으로 나타나는 기하학적 구조입니다.

중요한 성질: 벡터 공간은 심지어 유추 관계도 포착할 수 있습니다. 예: 왕 - 남자 + 여자 ≈ 여왕.


4. RAG 시스템에서 Embedding이 구체적으로 어떤 일을 수행하는가?

  1. 색인 구축 시: 각 문서 청크(chunk)를 벡터로 변환 → 벡터 데이터베이스에 저장 → '의미 주소' 생성.
  2. 쿼리 시: 사용자 질문을 동일한 공간의 벡터로 변환 → 데이터베이스에서 가장 가까운 문서 벡터 찾기 → 의미적으로 관련된 지식 조각 검색.

효과 예시:
사용자가 '내 반려견을 행복하게 유지하는 방법은?'이라고 질문하면, 지식 베이스에 '개는 매일 산책이 필요하며, 이것이 정신 건강에 도움이 됩니다'만 있더라도 embedding은 '행복/건강/개'의 의미적 근접성으로 인해 성공적으로 검색합니다. '의미적 일치'를 실현하며, '형식적 일치'가 아닙니다.


5. 면접 답변 전략(2~3분 완전한 대본)

다음은 이론적 깊이를 보여주면서도 프로젝트 경험을 드러낼 수 있도록 설계된 답변 프레임워크입니다.

[시작 설정]

'Embedding의 핵심 작업은 이산적인 비정형 데이터를 연속적이고 저차원의 벡터 공간에 매핑하여 의미적으로 유사한 객체가 해당 공간에서 서로 가까워지도록 하는 것입니다. 쉽게 말하면, 컴퓨터에 '의미 좌표계'를 구축하는 것입니다.'

[원리 전개, 고전적 성질 언급]

'전통적인 one-hot 인코딩은 단어 간 거리 개념이 없지만, embedding은 신경망을 통해 대량의 말뭉치에서 학습합니다 — '단어의 의미는 그 문맥에 의해 결정됩니다'. 결국 각 단어/문장은 밀집 벡터로 표현되며, 벡터의 코사인 유사도로 직접 의미 유사도를 측정할 수 있습니다. 심지어 유추 관계도 포착할 수 있습니다. 예: 왕 - 남자 + 여자 ≈ 여왕.'

[프로젝트 경험 결합 — 중요]

'제가 이전에 수행한 RAG 지식 질의응답 시스템에서 embedding을 직접 사용했습니다. 당시 text-embedding-3-small을 선택하여 회사 내부 문서를 500자 단위로 나누고, 각 청크를 벡터로 변환하여 Qdrant에 저장했습니다.'
'한 번은 사용자가 '연차 신청 방법'을 물었는데, 키워드 검색으로는 찾을 수 없었습니다. 문서에는 '휴가 신청 절차'라고 적혀 있었기 때문입니다. 하지만 embedding은 '연차'와 '휴가'를 가까운 위치에 매핑하여 올바른 단락을 성공적으로 검색했습니다.'
'또한 한 가지 실수를 겪었습니다. 처음에는 범용 embedding을 사용했는데 법률 조항에서 효과가 매우 나빴습니다. 나중에 도메인 미세 조정된 BGE-large로 변경하자 검색 적중률이 72%에서 89%로 향상되었습니다. 따라서 embedding 모델 선택이 하위 작업에 큰 영향을 미칩니다.'

[깊이 있는 사고 추가, 시니어 잠재력 발휘]

'또 한 가지 추가하고 싶은 점은 embedding은 본질적으로 손실이 있는 의미 압축이라는 것입니다 — 단어 순서, 구문 등 표면 정보를 버리고 '대략적인 의미'만 유지합니다. 따라서 정확한 일치가 필요한 일부 시나리오(예: 제품 모델 'iPhone12' vs 'iPhone13')에서는 순수 벡터 검색이 키워드 검색만 못할 수 있습니다. 실제 엔지니어링에서는 혼합 검색(벡터 + BM25)을 자주 사용하여 상호 보완합니다.'

[마무리]

'전반적으로 embedding은 '컴퓨터가 의미 유사도를 계산하게 하는 방법'이라는 기본 문제를 해결합니다. 이는 현대 NLP와 RAG의 초석 중 하나입니다.'


6. 면접관이 추궁할 수 있는 질문과 대응

추궁 질문 답변 요점
“embedding은 어떻게 학습되나요?” Word2Vec의 CBOW/Skip-gram(문맥을 이용해 중심 단어 예측 또는 그 반대) 또는 현대 대조 학습(SimCSE, Sentence-BERT)을 간략히 설명. 훈련의 본질은 공기 통계를 이용한다는 점을 강조.
“embedding의 품질을 어떻게 평가하나요?” 구체적인 작업에서 정확률, MRR 사용; 공개 벤치마크(예: MTEB). 실제로는 A/B 테스트로 검색 효과 평가.
“어떤 embedding 모델을 사용해 보셨나요? 장단점은?” OpenAI는 편리하지만 비쌈, BGE는 중국어에 효과적, M3E는 가벼움, E5는 다국어. 시나리오에 따라 선택.
“벡터 차원은 어떻게 선택하나요?” 고차원은 표현력이 좋지만 계산/저장 비용이 큼; 저차원은 과소적합 가능. 일반적으로 384/768/1536 사용, 실험을 통해 절충.

7. 함정 피하기 알림(면접 시 적용)

  • ❌ 'embedding은 텍스트를 벡터로 바꾸는 것'만 외우지 마세요 — 너무 얕아서 면접관이 '그 다음은?'이라고 추궁할 것입니다.
  • ❌ 지나치게 수학적으로 접근하지 마세요(처음부터 힐베르트 공간을 이야기하면) — 암기처럼 보이기 쉽고 실천적이지 않습니다.
  • 직접 사용하여 어떤 문제를 해결했는지 반드시 이야기하세요, 비록 수업 프로젝트일지라도. 구체적인 숫자(예: 적중률 17% 향상)는 열 문장의 이론보다 더 강력합니다.

评论

暂无已展示的评论。

发表评论(匿名)