728x90
반응형
안녕하세요. 오늘은 코사인 유사도(Cosine Similarity) 에 대해 알아보도록 하겠습니다. 코사인 유사도는 두 벡터 간의 유사성을 측정하는 방법으로 주로 텍스트 분석, 추천 시스템, 정보 검색 등 다양한 분야에서 활용됩니다. 벡터 간의 각도가 얼마나 가까운지를 통해 유사도를 판단하는 방식이기 때문에 그 값은 -1과 1 사이의 범위를 가집니다. 1에 가까울수록 유사도가 높고, 0에 가까울수록 유사도가 낮다는 의미입니다.
코사인 유사도의 정의
코사인 유사도는 다음과 같이 정의됩니다:
cos(θ) = (A · B) / (||A|| ||B||)
여기서 A와 B는 두 벡터를 의미하고, ||A||와 ||B||는 각각의 벡터의 크기입니다. 예를 들어, 두 문서를 벡터 형태로 표현할 수 있다면, 그 사이의 코사인 유사도를 통해 얼마나 유사한지를 측정할 수 있습니다.
코사인 유사도의 예시
실제 예시를 통해 보다 쉽게 이해해 보겠습니다. 두 개의 벡터 A와 B가 다음과 같다고 가정해 보겠습니다:
import numpy as np
# 두 벡터
A = np.array([1, 2, 3])
B = np.array([4, 5, 6])
# 코사인 유사도 계산
cosine_similarity = np.dot(A, B) / (np.linalg.norm(A) * np.linalg.norm(B))
print("코사인 유사도:", cosine_similarity)
이 코드를 실행하면 A와 B 간의 코사인 유사도가 출력되며, 이를 통해 두 벡터의 유사성을 확인할 수 있습니다.
코사인 유사도의 활용 사례
코사인 유사도는 다음과 같은 다양한 방법으로 활용됩니다:
- 문서 유사도 분석: 텍스트 데이터를 벡터화하여 유사한 문서를 찾는 데 사용합니다.
- 추천 시스템: 사용자와 아이템 간의 유사도를 측정하여 추천 목록을 생성합니다.
- 클러스터링: 유사한 데이터 포인트를 그룹화하는 데 사용됩니다.
결론적으로 , 코사인 유사도는 단순하면서도 강력한 유사도 측정 방법입니다. 다양한 분야에서 활용되는 만큼, 이 개념에 대한 이해를 통해 데이터 분석 및 머신러닝 분야에서도 많은 도움이 될 것입니다.
728x90
반응형
'IT > 정보' 카테고리의 다른 글
GPT로 텍스트 임베딩 검색 에이전트 만들기 (1) | 2025.04.28 |
---|---|
SELinux와 AppArmor 비교: 리눅스 보안 설정 따라잡기 (1) | 2025.04.27 |
파인튜닝 vs 프롬프트 엔지니어링: 언제 무엇을 써야 할까? (2) | 2025.04.26 |
Edge DB – PostgreSQL 기반의 차세대 그래프 리레이셔널 데이터베이스 (0) | 2025.04.24 |
MariaDB 설치 가이드 (0) | 2025.04.23 |