Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 4차원 배열의 역수 얻기

<시간/>

4차원 배열의 역함수를 계산하려면 Python에서 numpy.linalg.tensorinv() 메서드를 사용합니다. 결과는 tensordot 연산 tensordot(a, b, ind), i에 대한 상대적인 역입니다. 예를 들어, 부동 소수점 정확도까지, tensordot(tensorinv(a), a, ind)는 tensordot 연산을 위한 "identity" 텐서입니다.

이 메서드는 a의 텐소도트 역행렬, 모양 a.shape[ind:] + a.shape[:ind]를 반환합니다. 첫 번째 매개변수는 'invert'할 Tensor입니다. 그 모양은 '정사각형'이어야 합니다. i. 즉, prod(a.shape[:ind]) ==prod(a.shape[ind:]). 두 번째 매개변수는 ind로 역합과 관련된 첫 번째 인덱스의 수입니다. 양의 정수여야 하며 기본값은 2입니다.

단계

먼저 필요한 라이브러리를 가져옵니다-

numpy를 npfrom numpy.linalg import inv로 가져오기

배열을 만듭니다. numpy.eye()는 대각선에 1이 있고 다른 곳에 0이 있는 2차원 배열을 반환합니다. -

arr =np.eye(4*6)

위에서 생성한 배열의 모양 변경 -

arr.shape =(4, 6, 8, 3)

배열 표시 -

print("우리 배열...\n",arr)

치수 확인 -

print("\n배열의 차원...\n",arr.ndim)

데이터 유형 가져오기 -

print("\n배열 개체의 데이터 유형...\n",arr.dtype)

모양 가져오기 -

print("\n배열 개체의 모양...\n",arr.shape)

4차원 배열의 역함수를 계산하려면 Python에서 numpy.linalg.tensorinv() 메서드를 사용하십시오 -

print("\n결과...\n",np.linalg.tensorinv(arr))

예시

import numpy as npfrom numpy.linalg import inv# 배열 생성# numpy.eye()는 대각선에 1이 있고 다른 곳에 0이 있는 2차원 배열을 반환합니다.arr =np.eye(4*6)# 모양 변경 위에서 생성된 배열의 arr.shape =(4, 6, 8, 3)# 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)# 4차원 배열의 역을 계산하려면 Python.print("\nResult...\n",np.linalg.tensorinv(arr)) 

출력

우리 어레이... [[[[1. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 1. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 1.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [1. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 1. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 1.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]]] [[[0. 0. 0.] [0. 0. 0.] [1. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 1. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 1.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [1. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 1. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]]] [[[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [1. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 1. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 1.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [1. 0. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 1. 0.] [0. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 1.] [0. 0. 0.] [0. 0. 0.]]] [[[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [1. 0. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 1. 0.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 1.] [0. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [1. 0. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 1. 0.]] [[0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 0.] [0. 0. 1.]]]]배열의 차원...4배열 개체의 데이터 유형...float64배열 개체의 모양...(4, 6, 8, 3)결과... [[[[1. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 1. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 0. 1. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]]] [[[0. 0. 0. 1. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 1. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0. 1.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]]] [[[0. 0. 0. 0. 0. 0.] [1. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 1. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 0. 1. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]]] [[[0. 0. 0. 0. 0. 0.] [0. 0. 0. 1. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 1. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 1.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]]] [[[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [1. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 1. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 1. 0. 0. 0.] [0. 0. 0. 0. 0. 0.]]] [[[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 1. 0. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 1. 0.] [0. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 1.] [0. 0. 0. 0. 0. 0.]]] [[[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [1. 0. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 1. 0. 0. 0. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 1. 0. 0. 0.]]] [[[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 1. 0. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 1. 0.]] [[0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 0. 1.]]]]