Pythonプログラミング - NumPyを使ってみよう
Pythonの便利なライブラリの使い方です。今、話題の機械学習で計算をする場合に便利なのでよく利用されます。
numpyを使えるようにするには"numpy"を取り込み"np"をつけることで簡単に使えるようにします。
import numpy as np
配列を作ってみます。
arr = np.array([1,2,3])
これを使って計算します。例えば配列の中の値全てに"3"を掛けたい場合は
arr*2
と表示されます。これは配列"arr"の値を全てに2倍した値が出力されています。
numpyを使わずに同じように計算してみます。
nomalArray = [1,2,3]
nomalArray*2
と出てきます。値に"2"を掛けての表示ではなく、同じものがもひとつ追加されています。配列の中の値については変化はありません。
同じように配列の中の値を計算させるには
nomalArray = [1,2,3]
arr2 = []
for i in nomalArray:
arr2.append(i * 2)
という感じにfor in文で値にそれぞれ"2"を掛けていき配列として再度追加する方法が考えられます。
配列の値について計算させるのはnumpy配列を使えば計算が簡単にできることがわかります。
配列同士の総和を求める計算は"np.sum()"を使って
a = np.array([1, 2])
b = np.array([3, 4])
np.sum(a*b)
とすると"11"と出てきます。
の計算となります。
ベクトルの内積が計算は"np.dot()"を使って
a = np.array([1,2])
b = np.array([3,4])
np.dot(a,b)
とするとnp.sum()と同じように"11"と出ますが、多次元配列
a = np.array([[1,2],
[1,2]])
b = np.array([[3,4],
[3,4]])
np.dot(a,b)
の計算をすると
array([[ 9, 12],
[ 9, 12]])
と計算されます。この場合は2次元の配列の結果となります。
ニュートラルネットワークの計算にも使われているものとなります。
この記事が気に入ったらサポートをしてみませんか?