본문 바로가기
함수 설명/기본 및 범용

[NumPy] 배열 간 내적 및 행렬 곱셈: np.dot() 사용 및 설명

by First Adventure 2024. 10. 2.
반응형

소개

  np.dot(a, b, out=None)는 두 배열 간의 행렬 곱셈 또는 벡터 내적을 수행하는 함수입니다. 1차원 배열(벡터)일 경우에는 내적(inner product)을, 2차원 배열(행렬)일 경우에는 행렬 곱셈을 수행합니다. 이 함수는 수학적 연산, 머신러닝 모델, 데이터 분석 등에서 자주 사용됩니다.

 

기본 사용법

import numpy as np

# 1차원 배열 간 내적
vector1 = np.array([1, 2, 3])
vector2 = np.array([4, 5, 6])
dot_product = np.dot(vector1, vector2)

# 2차원 배열 간 행렬 곱셈
matrix1 = np.array([[1, 2], [3, 4]])
matrix2 = np.array([[5, 6], [7, 8]])
matrix_product = np.dot(matrix1, matrix2)

print("1차원 배열 내적 결과:", dot_product)
print("2차원 배열 행렬 곱셈 결과:\n", matrix_product)

상세 설명

  • a, b: 내적 또는 곱셈을 수행할 두 배열입니다. a와 b는 1차원 배열일 경우 내적을, 2차원 배열일 경우 행렬 곱셈을 수행합니다.
    • 예시: np.dot(vector1, vector2)는 [1, 2, 3]과 [4, 5, 6]의 내적을 계산해 32를 반환합니다.
    • 예시: np.dot(matrix1, matrix2)는 2x2 크기의 행렬 곱셈을 수행하여 [[19, 22], [43, 50]]을 반환합니다.
  • out (선택사항): 결과를 저장할 배열을 지정할 수 있습니다. 이 배열은 입력 배열과 동일한 크기를 가져야 하며, 메모리 절약을 위해 사용할 수 있습니다.
    • 예시: np.dot(matrix1, matrix2, out=output_array)는 곱셈 결과를 output_array에 저장합니다.
  • 활용
    • 벡터 및 행렬 연산: 벡터 간 내적과 행렬 간 곱셈을 처리하며, 수학적 모델링, 신경망 가중치 계산, 머신러닝 및 물리학 시뮬레이션 등에서 자주 사용됩니다.
    • 데이터 분석 및 처리: 데이터 분석에서 행렬 연산은 필수적인 작업으로, np.dot()을 사용하여 빠르고 효율적으로 연산을 수행할 수 있습니다.

 

라이센스

  NumPy는 BSD-3-Clause 라이센스를 따릅니다. 자유롭게 사용, 수정, 배포할 수 있으며 상업적 목적으로도 사용할 수 있습니다. 라이센스와 저작권 정보는 NumPy의 공식 GitHub 리포지토리에서 확인할 수 있습니다.

 

관련 내용

  [NumPy] 배열 간 거듭제곱 계산하기: np.power() 사용 및 설명

  [NumPy] 배열 간 내적 및 행렬 곱셈: np.dot() 사용 및 설명

  [NumPy] 배열 간 나눗셈 수행하기: np.divide() 사용 및 설명

  [NumPy] 배열 간 곱셈 수행하기: np.multiply() 사용 및 설명

  [NumPy] 배열 간 뺄셈하기: np.subtract() 사용 및 설명

  [NumPy] 배열 간 덧셈하기: np.add() 사용 및 설명

반응형