feat(wiki): implement P-Reinforce v3.0 standard & integrate 26+ new knowledge artifacts
- Formalized automatic record migration protocol in System Manual. - Integrated high-density knowledge for RAG, AI, Business Strategy, and Leadership. - Enhanced graph connectivity across core strategic hubs. - Archived raw data and updated timeline records.
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
---
|
||||
id: [[P-Reinforce|P-Reinforce]]-AUTO-VSR-001
|
||||
category: AI_and_ML
|
||||
confidence_score: 1.00
|
||||
tags: [auto-reinforced, vector-search, ann, semantic-similarity, information-retrieval]
|
||||
last_reinforced: 2026-05-04
|
||||
---
|
||||
|
||||
# [[Vector Search|Vector Search]]
|
||||
|
||||
## 📌 한 줄 통찰 (The Karpathy Summary)
|
||||
> "키워드 매칭에서 의미 매칭으로: 단순한 단어의 일치 여부를 넘어, 고차원 벡터 공간에서의 거리를 계산함으로써 사용자의 '의도'와 가장 유사한 맥락의 정보를 찾아내는 수학적 검색 기법."
|
||||
|
||||
## 📖 구조화된 지식 (Synthesized Content)
|
||||
벡터 검색(Vector Search)은 데이터를 다차원 공간의 벡터로 표현하고, 질의 벡터와의 거리(Similarity)를 계산하여 가장 관련성 높은 항목을 반환하는 기술입니다.
|
||||
|
||||
1. **전통적 검색 vs 벡터 검색**:
|
||||
* **전통적 검색 ([[Keyword Search|Keyword Search]])**: 단어의 존재 유무(TF-IDF, BM25)에 의존합니다. '사과'를 검색하면 'Apple'이 포함된 문서를 놓칠 수 있습니다.
|
||||
* **벡터 검색 ([[Semantic Search|Semantic Search]])**: 의미적 유사성을 파악합니다. '아이폰 제조사'를 검색해도 'Apple' 관련 문서를 정확히 찾아낼 수 있습니다.
|
||||
|
||||
2. **핵심 알고리즘: [[ANN (Approximate Nearest Neighbor)|ANN]]**:
|
||||
대규모 데이터셋에서 모든 벡터를 전수 조사(Brute-force)하는 것은 불가능하므로, 근사치를 빠르게 찾는 알고리즘을 사용합니다.
|
||||
* **[[HNSW|HNSW]]**: 노드 간의 근접 그래프를 계층적으로 구성하여 고속 탐색을 지원합니다.
|
||||
* **[[Product Quantization (PQ)|PQ]]**: 벡터를 압축하여 메모리 효율성을 극대화합니다.
|
||||
* **[[IVF|IVF]]**: 공간을 클러스터로 분할하여 검색 범위를 국소화합니다.
|
||||
|
||||
3. **유사도 측정 지표 (Distance Metrics)**:
|
||||
* **Cosine Similarity**: 두 벡터 사이의 각도를 측정 (가장 널리 사용).
|
||||
* **Euclidean Distance (L2)**: 두 점 사이의 직선 거리를 측정.
|
||||
* **Dot Product**: 벡터의 크기와 방향을 모두 고려.
|
||||
|
||||
## ⚖️ Trade-offs & Caveats
|
||||
* **정확도와 속도의 균형**: [[ANN|ANN]] 알고리즘을 사용하면 검색 속도는 비약적으로 빨라지지만, 100% 완벽한 최적해를 보장하지 못하는 트레이드오프가 발생합니다.
|
||||
* **컴퓨팅 오버헤드**: 벡터 변환(Embedding) 및 고차원 연산 과정에서 기존 검색 대비 훨씬 많은 리소스를 소모합니다.
|
||||
* **단순 쿼리의 비효율성**: 모델명이나 특정 ID 검색과 같은 Exact Match 작업에서는 오히려 전통적인 [[BM25|BM25]]보다 느리거나 부정확할 수 있습니다. (이 때문에 최근에는 두 방식을 결합한 [[Hybrid Search|Hybrid Search]]가 권장됩니다.)
|
||||
|
||||
## 💻 실전 구현 코드 (Boilerplate)
|
||||
`scikit-learn`을 사용하여 두 벡터 간의 유사도를 측정하는 핵심 로직 예시입니다.
|
||||
|
||||
```python
|
||||
from sklearn.metrics.pairwise import cosine_similarity
|
||||
import numpy as np
|
||||
|
||||
# 1. 예시 벡터 (임베딩 모델에서 출력된 값이라고 가정)
|
||||
query_vector = np.array([[0.1, 0.2, 0.8]]) # "인공지능 지식"
|
||||
doc_vector_1 = np.array([[0.12, 0.18, 0.75]]) # "AI 지식 강화"
|
||||
doc_vector_2 = np.array([[0.9, 0.1, 0.05]]) # "오늘의 날씨"
|
||||
|
||||
# 2. 유사도 계산
|
||||
sim_1 = cosine_similarity(query_vector, doc_vector_1)
|
||||
sim_2 = cosine_similarity(query_vector, doc_vector_2)
|
||||
|
||||
print(f"Similarity with Doc 1 (Related): {sim_1[0][0]:.4f}")
|
||||
print(f"Similarity with Doc 2 (Unrelated): {sim_2[0][0]:.4f}")
|
||||
|
||||
# 3. 결과 해석
|
||||
if sim_1 > 0.85:
|
||||
print("문맥적으로 매우 유사한 문서입니다.")
|
||||
```
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
* **기반 기술**: [[Vector Embedding|Vector Embedding]], [[Vector Database|Vector Database]]
|
||||
* **활용 분야**: [[Retrieval-Augmented Generation (RAG)|RAG]], [[Semantic Search|Semantic Search]], [[Hybrid Search|Hybrid Search]]
|
||||
* **고도화 알고리즘**: [[ANN|ANN]], [[HNSW|HNSW]], [[Product Quantization|PQ]]
|
||||
|
||||
---
|
||||
*Last updated: 2026-05-04*
|
||||
Reference in New Issue
Block a user