← 문제 목록/코사인 유사도

코사인 유사도

NumPy 기초 · easy

preview

코사인 유사도

두 벡터의 각도만 비교하는 유사도. 크기(norm)를 제거하므로 방향이 비슷한지만 봅니다. 문서·임베딩 비교에서 기본 도구:

cos(x,y)=xyxy\text{cos}(\mathbf{x}, \mathbf{y}) = \frac{\mathbf{x} \cdot \mathbf{y}}{\|\mathbf{x}\| \, \|\mathbf{y}\|}

범위: [1,1][-1, 1]

  • 1 — 같은 방향
  • 0 — 직각 (무관)
  • -1 — 반대 방향

과제

함수 cosine(x, y) 를 완성하세요.

  • 입력: 1D 배열 x, y (같은 길이).
  • 반환: Python float.
  • np.linalg.norm, np.dot (또는 np.sum(x*y)) 사용.

테스트 케이스

#이름xy기대
1자기자신[1, 2, 3][1, 2, 3]1.0
2스케일 불변[1, 0][5, 0]1.0
3직각[1, 0][0, 1]0.0
4반대 방향[1, 2][-1, -2]-1.0
5일반[1, 1][1, 0]1/√2 ≈ 0.707
Loading...

코드를 작성하고 Run 을 눌러보세요.