행렬 스택의 (Moore-Penrose) 의사 역행렬을 계산하려면 Python에서 numpy.linalg.pinv() 메서드를 사용합니다. SVD(특이값 분해)를 사용하고 모든 큰 특이값을 포함하여 행렬의 일반화된 역행렬을 계산합니다.
첫 번째 매개변수인 a는 의사 반전될 행렬 또는 행렬 스택입니다. 두 번째 매개변수인 rcodn은 작은 특이값에 대한 차단입니다. rcond * maximum_singular_value보다 작거나 같은 특이값은 0으로 설정됩니다. 행렬 스택에 대해 브로드캐스트합니다. 세 번째 매개변수인 hermitian이 True이면 a를 Hermitian으로 가정하여 특이값을 찾는 데 보다 효율적인 방법을 제공합니다. 기본값은 False입니다.
단계
먼저 필요한 라이브러리를 가져옵니다.
numpy를 np로 가져오기
array()를 사용하여 배열을 만듭니다.
arr =np.array([ [[1, 2], [3, 4]], [[1, 2], [2, 1]], [[1, 3], [3, 1] ] ])
배열을 표시합니다.
print("우리 배열...\n",arr)
치수를 확인하십시오.
print("\n배열의 차원...\n",arr.ndim)
데이터 유형을 가져옵니다.
print("\n배열 개체의 데이터 유형...\n",arr.dtype)
모양을 가져옵니다.
print("\n배열 개체의 모양...\n",arr.shape)
행렬 스택의 (Moore-Penrose) 의사 역행렬을 계산하려면 Python에서 numpy.linalg.pinv() 메서드를 사용하십시오.
print("\n결과...\n",np.linalg.pinv(arr))
예시
import numpy as np# array()arr =np.array([ [[1, 2], [3, 4]], [[1, 2], [2, 1]], [[1, 3], [3, 1]] ])# Display the arrayprint("Our Array...\n",arr)# Check the Dimensionsprint("\nDimensions of our Array...\n", arr.ndim)# Get Datatypeprint("\n배열 개체의 데이터 유형...\n",arr.dtype)# Get Shapeprint("\n배열 개체의 모양...\n",arr.shape) # 행렬 스택의 (Moore-Penrose) 의사 역행렬을 계산하려면 Python.print("\nResult...\n",np.linalg.pinv(arr)에서 numpy.linalg.pinv() 메서드를 사용합니다. ))
출력
우리 배열...[[[1 2][3 4]][[1 2][2 1]][[1 3][3 1]]]우리 배열의 차원...3우리 배열의 데이터 유형 배열 객체...int64배열 객체의 모양...(3, 2, 2)결과...[[[-2. 1. ][ 1.5 -0.5 ]][[-0.33333333 0.66666667][ 0.66666667 -0.33333333]][[-0.125 0.375 ][ 0.375 -0.125>