소개
이 랩에서는 두 벡터의 내적을 계산하는 데 주로 사용되는 Numpy 라이브러리의 dot() 함수를 살펴봅니다. 또한 이 함수가 2 차원 배열을 행렬로 처리하고 행렬 곱셈을 수행하는 방법을 알아봅니다.
VM 팁
VM 시작이 완료되면 왼쪽 상단을 클릭하여 Notebook 탭으로 전환하여 실습을 위해 Jupyter Notebook에 액세스하십시오.
때로는 Jupyter Notebook 이 로딩을 완료하는 데 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한으로 인해 작업의 유효성 검사를 자동화할 수 없습니다.
학습 중에 문제가 발생하면 언제든지 Labby 에게 문의하십시오. 세션 후 피드백을 제공해주시면 문제를 신속하게 해결해 드리겠습니다.
numpy.dot() 구문 이해
dot() 함수를 사용하기 위한 구문은 다음과 같습니다.
numpy.dot(a, b, out=None)
여기서:
- a는 첫 번째 매개변수입니다. "a"가 복소수이면, 내적 계산에 복소 공액이 사용됩니다.
- b는 두 번째 매개변수입니다. "b"가 복소수이면, 내적 계산에 복소 공액이 사용됩니다.
- out은 출력 인자입니다. 사용하지 않으면 반환될 정확한 종류를 가져야 합니다. 그렇지 않으면 C-contiguous 여야 하며,
dtype은dot(a, b)에 대해 반환될dtype이어야 합니다.
스칼라 및 1D 배열의 내적 계산
이 단계에서는 dot() 함수를 사용하여 스칼라 및 1D 배열의 내적을 계산합니다.
import numpy as np
## 스칼라 값의 내적 계산
a = np.dot(8, 4)
print("위의 주어진 스칼라 값의 내적은 다음과 같습니다: ")
print(a)
## 두 개의 1D 배열의 내적 계산
vect_a = 4 + 3j
vect_b = 8 + 5j
dot_product = np.dot(vect_a, vect_b)
print("두 개의 1D 배열의 내적은 다음과 같습니다: ")
print(dot_product)
2D 배열을 사용한 행렬 곱셈 수행
이 단계에서는 dot() 함수를 사용하여 2D 배열로 행렬 곱셈을 수행합니다.
import numpy as np
a = np.array([[50,100],[12,13]])
print("행렬 a 는:")
print(a)
b = np.array([[10,20],[12,21]])
print("행렬 b 는:")
print(b)
dot = np.dot(a, b)
print("행렬 a 와 b 의 내적은:")
print(dot)
오류 처리
이 단계에서는 a의 마지막 차원이 b의 뒤에서 두 번째 차원과 크기가 같지 않을 때 발생하는 ValueError를 살펴봅니다.
import numpy as np
a = np.array([[1, 2, 3], [4, 5, 6]])
b = np.array([[7, 8], [9, 10], [11, 12], [13, 14]])
## 오류 처리
error = np.dot(a, b)
print(error)
요약
이 랩에서는 Numpy 라이브러리의 dot() 함수를 다루었습니다. 이 함수의 구문을 사용하여 이 함수를 사용하는 방법을 배웠으며, 코드 예제를 통해 함수가 반환하는 값을 설명했습니다. 또한 함수의 오류 처리도 살펴보았습니다.