[파이썬][Scipy] 행렬 노름 (Matrix Norms) 예제
행렬 노름(Matrix Norm)은 행렬의 크기나 길이를 측정하는 방법 중 하나로, 다양한 목적으로 사용됩니다. Scipy에서는 다양한 행렬 노름을 계산할 수 있습니다. 아래에는 Scipy를 사용하여 행렬 노름을 계산하는 예제를 제공합니다.
mport numpy as np
from scipy.linalg import norm
# 행렬 생성
matrix = np.array([[1, 2],
[3, 4]])
# 행렬의 Frobenius 노름 계산
frobenius_norm = norm(matrix, 'fro')
print("Frobenius 노름:", frobenius_norm)
# L1 노름 계산
l1_norm = norm(matrix, 1)
print("L1 노름:", l1_norm)
# L2 노름 (유클리드 노름) 계산
l2_norm = norm(matrix, 2)
print("L2 (유클리드) 노름:", l2_norm)
# 무한대 노름 계산
infinity_norm = norm(matrix, np.inf)
print("무한대 노름:", infinity_norm)
위의 예제에서는 다음을 수행합니다:
- NumPy를 사용하여 행렬을 생성합니다.
scipy.linalg
모듈의norm
함수를 사용하여 행렬의 Frobenius 노름, L1 노름, L2(유클리드) 노름, 무한대 노름을 각각 계산합니다.
행렬 노름은 행렬의 크기나 길이를 측정하는 데 사용되며, 문제에 따라 어떤 노름을 사용할지 선택할 수 있습니다. 각 노름은 행렬의 특성을 다른 측면에서 강조하므로, 문제에 맞게 적절한 노름을 선택해야 합니다.