← 문제 목록/민코프스키 거리 행렬 (Lp)
문제 해설

민코프스키 거리 행렬 (Lp)

NumPy 기초 · easy

preview

민코프스키 거리 행렬 (Lp)

앞선 거리 3형제 (L1, L2, L∞) 를 하나의 파라미터 로 묶는 일반화:

Dij=(kxikyjkp)1/pD_{ij} = \Big( \sum_k |x_{ik} - y_{jk}|^p \Big)^{1/p}

파라미터 p:

  • p = 1 → 맨해튼 (L1)
  • p = 2 → 유클리드 (L2)
  • p → ∞ → 체비셰프 (L∞)
  • 그 사이 값도 가능 (예: p = 1.5 는 중간 성질)

KNN 구현체 대부분이 이 일반화된 거리를 매개변수로 받습니다. scikit-learn 의 metric='minkowski', p=....

과제

함수 pairwise_minkowski(X, Y, p) 를 완성하세요.

  • X shape (N, D), Y shape (M, D), p > 0 float.
  • 반환: (N, M).
  • 루프 없이 브로드캐스팅 + np.abs + ** p + sum + ** (1/p).

테스트 케이스

#이름검증
1shape(3, 5)
2p=1 == Manhattan같은 데이터로 두 방법 일치
3p=2 == Euclidean같은 데이터로 두 방법 일치
4자기 비교 대각선 0X=Y 일 때
5루프 없이for/while 금지
코드 작성
Loading...
실행 결과

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