Numpyのブロードキャストってなに

NumPyのブロードキャストは、異なる形状やサイズの配列同士の演算を行うための機能です。通常、異なる形状やサイズの配列同士の演算を行うとエラーが発生しますが、ブロードキャストを使用することで、NumPyは自動的に配列の形状を拡張し、要素ごとの演算を実行します。

具体的には、ブロードキャストの際には以下のようなルールが適用されます。

  1. サイズが一致している場合は、要素ごとの演算が行われます。
  2. どちらかの配列の次元数が1の場合、その次元が他方の配列と一致するように拡張されます。
  3. 拡張後に配列のサイズが一致しない場合は、エラーが発生します。

以下は、ブロードキャストの例です。

python
import numpy as np a = np.array([1, 2, 3]) b = np.array([2, 2, 2]) # サイズが一致するので要素ごとの演算が行われる result = a + b print(result) # [3 4 5] c = np.array([1, 2, 3]) d = 2 # dが1次元の配列に拡張され、要素ごとの演算が行われる result = c + d print(result) # [3 4 5]

このように、ブロードキャストを使用することで、異なる形状やサイズの配列同士の演算を簡潔に行うことができます。

未分類

Posted by ぼっち