← 문제 목록/Minkowski Distance Matrix (L_p 통합) [medium]
문제 해설

Minkowski Distance Matrix (L_p 통합) [medium]

거리/유사도 · medium

preview

Minkowski Distance Matrix [medium]

v1 Manhattan 은 L1. 일반화된 Minkowskipp 파라미터 하나로 여러 거리를 통합:

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

  • p=1p = 1: Manhattan (L1)
  • p=2p = 2: Euclidean (L2)
  • pp \to \infty: Chebyshev = maxkxikyjk\max_k |x_{ik} - y_{jk}|
  • 0<p<10 < p < 1: fractional norm (metric 성질 약해짐)

수치 안정성

  • pp 에서 xyp|x - y|^p 가 오버플로.
  • np.inf 특수 처리: (abs(x-y)).max(axis=-1) 로 직접.

구현 힌트

if np.isinf(p):
    return np.abs(X[:, None, :] - Y[None, :, :]).max(axis=-1)
diff = np.abs(X[:, None, :] - Y[None, :, :])
return (diff ** p).sum(axis=-1) ** (1 / p)

과제

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

  • X (N, D), Y (M, D), 스칼라 또는 np.inf p.
  • 반환: (N, M) 거리 행렬.
  • p=inf 특별 처리 필수.

테스트 케이스

#이름검증
1shape (N, M)
2p=2 → L2
3p=1 → L1 (v1 일치)
4p=∞ → Chebyshev
5대각 0 (X=Y)
6p 증가 → 거리 감소 경향 (고정 X, Y)
7수치 안정 (큰 p 에서 finite)
코드 작성
Loading...
실행 결과

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