Theano - Matris Çarpımı için İfade
İki matrisin iç çarpımını hesaplayacağız. İlk matris 2 x 3 boyutundadır ve ikincisi 3 x 2 boyutundadır. Girdi olarak kullandığımız matrisler ve bunların çarpımı burada ifade edilir -
$$ \ begin {bmatrix} 0 & -1 & 2 \\ 4 & 11 & 2 \ end {bmatrix} \: \ begin {bmatrix} 3 & -1 \\ 1 & 2 \\ 35 ve 20 \ end {bmatrix} = \ başlar {bmatrix} 11 ve 0 \\ 35 ve 20 \ end {bmatrix} $$Değişkenleri Bildirmek
Yukarıdakiler için bir Theano ifadesi yazmak için, önce matrislerimizi temsil edecek iki değişkeni aşağıdaki gibi tanımlarız:
a = tensor.dmatrix()
b = tensor.dmatrix()
Dmatris, çiftler için matrislerin türüdür. Matris boyutunu hiçbir yerde belirtmediğimize dikkat edin. Bu nedenle, bu değişkenler herhangi bir boyuttaki matrisleri temsil edebilir.
İfadeyi Tanımlamak
Nokta ürünü hesaplamak için, adı verilen yerleşik işlevi kullandık dot aşağıdaki gibi -
c = tensor.dot(a,b)
Çarpmanın çıktısı, adı verilen bir matris değişkenine atanır. c.
Theano Fonksiyonunun Tanımlanması
Daha sonra, ifadeyi değerlendirmek için önceki örnekte olduğu gibi bir fonksiyon tanımlıyoruz.
f = theano.function([a,b], c)
Fonksiyonun girdisinin matris tipinde iki değişken a ve b olduğuna dikkat edin. Fonksiyon çıkışı değişkene atanırc otomatik olarak matris türünde olacaktır.
Theano Fonksiyonunu Çağırmak
Şimdi aşağıdaki ifadeyi kullanarak işlevi çağırıyoruz -
d = f([[0, -1, 2], [4, 11, 2]], [[3, -1],[1,2], [6,1]])
Yukarıdaki ifadedeki iki değişken NumPy dizileridir. NumPy dizilerini burada gösterildiği gibi açıkça tanımlayabilirsiniz -
f(numpy.array([[0, -1, 2], [4, 11, 2]]),
numpy.array([[3, -1],[1,2], [6,1]]))
Sonra d hesaplanır, değerini yazdırırız -
print (d)
Çıktıda aşağıdaki çıktıyı göreceksiniz -
[[11. 0.]
[25. 20.]]
Tam Program Listesi
The complete program listing is given here:
from theano import *
a = tensor.dmatrix()
b = tensor.dmatrix()
c = tensor.dot(a,b)
f = theano.function([a,b], c)
d = f([[0, -1, 2],[4, 11, 2]], [[3, -1],[1,2],[6,1]])
print (d)
Programın çalıştırılmasının ekran görüntüsü burada gösterilmektedir -