λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
IT/AI, λ”₯λŸ¬λ‹

λ”₯λŸ¬λ‹μ—μ„œ μœ ν΄λ¦¬λ””μ•ˆ κ±°λ¦¬λž€? 벑터 μœ μ‚¬λ„ κ³„μ‚°μ˜ 핡심 κ°œλ… 정리

by πŸ”₯κΉ‘ λ‹€ κ³ ! 2025. 4. 13.

λ”₯λŸ¬λ‹μ—μ„œ ‘λ²‘ν„°μ˜ 거리’λ₯Ό κ³„μ‚°ν•˜λŠ” 건 생각보닀 자주 μ‚¬μš©λ©λ‹ˆλ‹€. 특히 νŠΉμ§• 벑터(feature vector)λ‚˜ μž„λ² λ”©(embedding) κ°„ μœ μ‚¬λ„λ₯Ό νŒλ‹¨ν•  λ•Œ κ°€μž₯ 널리 μ“°μ΄λŠ” 방법이 λ°”λ‘œ μœ ν΄λ¦¬λ””μ•ˆ 거리(Euclidean Distance)μž…λ‹ˆλ‹€.

이번 κΈ€μ—μ„œλŠ” μœ ν΄λ¦¬λ””μ•ˆ κ±°λ¦¬λž€ 무엇인지, μˆ˜ν•™μ  μ •μ˜λŠ” μ–΄λ–€μ§€, 그리고 λ”₯λŸ¬λ‹μ—μ„œλŠ” 어디에 μ“°μ΄λŠ”μ§€λ₯Ό μ˜ˆμ œμ™€ ν•¨κ»˜ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.


1. μœ ν΄λ¦¬λ””μ•ˆ κ±°λ¦¬λž€?

μœ ν΄λ¦¬λ””μ•ˆ 거리(Euclidean Distance)λŠ” μš°λ¦¬κ°€ **μΌμƒμ—μ„œ μ‚¬μš©ν•˜λŠ” 직선 거리(두 점 μ‚¬μ΄μ˜ 거리)**λ₯Ό λ§ν•©λ‹ˆλ‹€. 즉, 2차원 ν‰λ©΄μ—μ„œλŠ” 두 점 사이λ₯Ό μž‡λŠ” μ§μ„ μ˜ 길이이고, n차원 벑터 κ³΅κ°„μ—μ„œλŠ” 두 벑터 μ‚¬μ΄μ˜ '거리'λ₯Ό μΈ‘μ •ν•˜λŠ” λŒ€ν‘œμ μΈ λ°©λ²•μž…λ‹ˆλ‹€.

κ°€μž₯ 직관적이고 널리 μ“°μ΄λŠ” 거리 계산 방식이기 λ•Œλ¬Έμ— λ¨Έμ‹ λŸ¬λ‹/λ”₯λŸ¬λ‹μ—μ„œ λ‹€μ–‘ν•œ κ³³μ—μ„œ μ‚¬μš©λ©λ‹ˆλ‹€.


2. μˆ˜ν•™μ  μ •μ˜μ™€ 계산 곡식

두 벑터 X = (x₁, xβ‚‚, ..., xβ‚™)κ³Ό Y = (y₁, yβ‚‚, ..., yβ‚™) μ‚¬μ΄μ˜ μœ ν΄λ¦¬λ””μ•ˆ κ±°λ¦¬λŠ” λ‹€μŒκ³Ό 같이 κ³„μ‚°λ©λ‹ˆλ‹€.

Euclidean Distance = √((x₁ - y₁)² + (xβ‚‚ - yβ‚‚)² + ... + (xβ‚™ - yβ‚™)²)

예λ₯Ό λ“€μ–΄ 2차원 벑터 A = (3, 4)와 B = (0, 0)의 μœ ν΄λ¦¬λ””μ•ˆ κ±°λ¦¬λŠ” √(3² + 4²) = √(9 + 16) = √25 = 5κ°€ λ©λ‹ˆλ‹€.


3. λ”₯λŸ¬λ‹μ—μ„œμ˜ ν™œμš© 사둀

  • 1. 이미지 검색: μž„λ² λ”©λœ 이미지 벑터 κ°„ μœ ν΄λ¦¬λ””μ•ˆ 거리λ₯Ό λΉ„κ΅ν•˜μ—¬ μœ μ‚¬ 이미지 검색
  • 2. ν΄λŸ¬μŠ€ν„°λ§(K-means): 쀑심 벑터와 각 데이터 벑터 κ°„ 거리λ₯Ό λΉ„κ΅ν•˜μ—¬ κ·Έλ£Ήν™”
  • 3. μ–Όκ΅΄ 인식(FaceNet λ“±): μ‚¬λžŒ 얼꡴을 λ²‘ν„°λ‘œ μž„λ² λ”©ν•œ λ’€, μœ ν΄λ¦¬λ””μ•ˆ 거리가 μž‘μœΌλ©΄ 같은 μ‚¬λžŒμœΌλ‘œ νŒλ‹¨
  • 4. Siamese Network: 두 μƒ˜ν”Œμ˜ μœ μ‚¬λ„λ₯Ό νŒλ‹¨ν•˜κΈ° μœ„ν•΄ μœ ν΄λ¦¬λ””μ•ˆ 거리λ₯Ό μ‚¬μš©ν•˜μ—¬ Loss 계산

λ”₯λŸ¬λ‹μ—μ„œλŠ” 벑터λ₯Ό λΉ„κ΅ν•˜λŠ” 상황이 맀우 λ§Žμ€λ°, μ΄λ•Œ κ°€μž₯ 기본적이고 널리 μ“°μ΄λŠ” 방법이 λ°”λ‘œ μœ ν΄λ¦¬λ””μ•ˆ κ±°λ¦¬μž…λ‹ˆλ‹€.


4. μœ ν΄λ¦¬λ””μ•ˆ 거리 vs 코사인 μœ μ‚¬λ„

비ꡐ ν•­λͺ© μœ ν΄λ¦¬λ””μ•ˆ 거리 코사인 μœ μ‚¬λ„
의미 μ ˆλŒ€μ μΈ 거리 벑터 κ°„ λ°©ν–₯의 μœ μ‚¬μ„±
길이 영ν–₯ 영ν–₯ λ°›μŒ 영ν–₯ μ—†μŒ (λ‹¨μœ„ λ²‘ν„°λ‘œ μ •κ·œν™”)
μ‚¬μš© μ˜ˆμ‹œ Siamese Network, K-means λ“± λ¬Έμ„œ μœ μ‚¬λ„, NLP μž„λ² λ”© 비ꡐ

즉, 두 λ²‘ν„°μ˜ '크기와 거리' μžμ²΄κ°€ μ€‘μš”ν•˜λ©΄ μœ ν΄λ¦¬λ””μ•ˆ 거리, λ°©ν–₯만 μ€‘μš”ν•˜λ‹€λ©΄ 코사인 μœ μ‚¬λ„λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.


5. 마무리 μš”μ•½

μœ ν΄λ¦¬λ””μ•ˆ 거리(Euclidean Distance)λŠ” λ”₯λŸ¬λ‹μ—μ„œ 벑터 κ°„ μœ μ‚¬λ„λ₯Ό μΈ‘μ •ν•  λ•Œ κ°€μž₯ 널리 μ“°μ΄λŠ” 방법 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€.

직관적이고 계산이 μ‰¬μš°λ©°, μ΄λ―Έμ§€λ‚˜ μž„λ² λ”© 벑터 λΉ„κ΅μ—μ„œ 높은 효과λ₯Ό λ³΄μž…λ‹ˆλ‹€. ν•˜μ§€λ§Œ λ°μ΄ν„°μ˜ νŠΉμ„±κ³Ό λͺ©μ μ— 따라 코사인 μœ μ‚¬λ„, λ§¨ν•΄νŠΌ 거리 λ“± λ‹€λ₯Έ 거리 츑정법과 ν•¨κ»˜ κ³ λ €ν•˜λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€.

특히 λ”₯λŸ¬λ‹μ—μ„œλŠ” **λ‹¨μˆœν•œ μˆ˜ν•™ κ°œλ…μ΄ λͺ¨λΈ μ„±λŠ₯κ³Ό 직결되기 λ•Œλ¬Έμ—**, 거리 μΈ‘μ • 방식에 λŒ€ν•œ μ΄ν•΄λŠ” ν•„μˆ˜λΌκ³  ν•  수 μžˆμŠ΅λ‹ˆλ‹€.