Theano - Grafik Komputasi
Dari dua contoh di atas, Anda mungkin telah memperhatikan bahwa di Theano kami membuat ekspresi yang akhirnya dievaluasi menggunakan Theano function. Theano menggunakan teknik pengoptimalan lanjutan untuk mengoptimalkan eksekusi ekspresi. Untuk memvisualisasikan grafik komputasi, Theano menyediakan aprinting paket di perpustakaannya.
Grafik Simbolik untuk Penambahan Skalar
Untuk melihat grafik komputasi program penambahan skalar kami, gunakan perpustakaan pencetakan sebagai berikut -
theano.printing.pydotprint(f, outfile="scalar_addition.png", var_with_name_simple=True)
Ketika Anda menjalankan pernyataan ini, sebuah file bernama scalar_addition.pngakan dibuat di mesin Anda. Grafik komputasi yang disimpan ditampilkan di sini untuk referensi cepat Anda -
Daftar program lengkap untuk menghasilkan gambar di atas diberikan di bawah ini -
from theano import *
a = tensor.dscalar()
b = tensor.dscalar()
c = a + b
f = theano.function([a,b], c)
theano.printing.pydotprint(f, outfile="scalar_addition.png", var_with_name_simple=True)
Grafik Simbolik untuk Pengganda Matriks
Sekarang, coba buat grafik komputasi untuk pengganda matriks kita. Daftar lengkap untuk menghasilkan grafik ini diberikan di bawah ini -
from theano import *
a = tensor.dmatrix()
b = tensor.dmatrix()
c = tensor.dot(a,b)
f = theano.function([a,b], c)
theano.printing.pydotprint(f, outfile="matrix_dot_product.png", var_with_name_simple=True)
Grafik yang dihasilkan ditampilkan di sini -
Grafik Kompleks
Dalam ekspresi yang lebih besar, grafik komputasi bisa menjadi sangat kompleks. Salah satu grafik yang diambil dari dokumentasi Theano ditampilkan di sini -
Untuk memahami cara kerja Theano, pertama-tama penting untuk mengetahui pentingnya grafik komputasi ini. Dengan pemahaman ini, kita akan mengetahui pentingnya Theano.
Mengapa Theano?
Dengan melihat kompleksitas grafik komputasi, Anda sekarang dapat memahami tujuan di balik pengembangan Theano. Kompiler tipikal akan memberikan pengoptimalan lokal dalam program karena tidak pernah melihat keseluruhan komputasi sebagai satu unit.
Theano menerapkan teknik pengoptimalan yang sangat canggih untuk mengoptimalkan grafik komputasi secara penuh. Ini menggabungkan aspek Aljabar dengan aspek penyusun yang mengoptimalkan. Sebagian dari grafik dapat dikompilasi menjadi kode bahasa C. Untuk kalkulasi berulang, kecepatan evaluasi sangat penting dan Theano memenuhi tujuan ini dengan menghasilkan kode yang sangat efisien.