Theano - Tipos de Dados

Agora que você entendeu o básico de Theano, vamos começar com os diferentes tipos de dados disponíveis para você criar suas expressões. A tabela a seguir fornece uma lista parcial dos tipos de dados definidos no Theano.

Tipo de dados Tipo Theano
Byte

bscalar, bvector, bmatrix, brow, bcol, btensor3, btensor4, btensor5, btensor6, btensor7

Inteiros de 16 bits

wscalar, wvector, wmatrix, wrow, wcol, wtensor3, wtensor4, wtensor5, wtensor6, wtensor7

Inteiros de 32 bits

iscalar, ivector, imatrix, irow, icol, itensor3, itensor4, itensor5, itensor6, itensor7

Inteiros de 64 bits

lscalar, lvector, lmatrix, lrow, lcol, ltensor3, ltensor4, ltensor5, ltensor6, ltensor7

flutuador

fscalar, fvector, fmatrix, frow, fcol, ftensor3, ftensor4, ftensor5, ftensor6, ftensor7

em dobro

dscalar, dvector, dmatrix, drow, dcol, dtensor3, dtensor4, dtensor5, dtensor6, dtensor7

complexo

cscalar, cvector, cmatrix, corvo, ccol, ctensor3, ctensor4, ctensor5, ctensor6, ctensor7

A lista acima não é exaustiva e o leitor deve consultar o documento de criação do tensor para obter uma lista completa.

Agora darei alguns exemplos de como criar variáveis ​​de vários tipos de dados no Theano.

Escalar

Para construir uma variável escalar, você usaria a sintaxe -

Sintaxe

x = theano.tensor.scalar ('x')
x = 5.0
print (x)

Resultado

5.0

Matriz unidimensional

Para criar uma matriz unidimensional, use a seguinte declaração -

Exemplo

f = theano.tensor.vector
f = (2.0, 5.0, 3.0)
print (f)f = theano.tensor.vector
f = (2.0, 5.0, 3.0)
print (f)
print (f[0])
print (f[2])

Resultado

(2.0, 5.0, 3.0)
2.0
3.0

Se você fizer f[3] isso geraria um índice fora do intervalo de erro, conforme mostrado aqui -

print f([3])

Resultado

IndexError                          Traceback (most recent call last)
<ipython-input-13-2a9c2a643c3a> in <module>
   4 print (f[0])
   5 print (f[2])
----> 6 print (f[3])
IndexError: tuple index out of range

Array bidimensional

Para declarar uma matriz bidimensional, você usaria o seguinte snippet de código -

Exemplo

m = theano.tensor.matrix
m = ([2,3], [4,5], [2,4])
print (m[0])
print (m[1][0])

Resultado

[2, 3]
4

Matriz 5-dimensional

Para declarar uma matriz 5-dimensional, use a seguinte sintaxe -

Exemplo

m5 = theano.tensor.tensor5
m5 = ([0,1,2,3,4], [5,6,7,8,9], [10,11,12,13,14])
print (m5[1])
print (m5[2][3])

Resultado

[5, 6, 7, 8, 9]
13

Você pode declarar uma matriz tridimensional usando o tipo de dados tensor3 no lugar de tensor5, uma matriz quadridimensional usando o tipo de dados tensor4, e assim por diante até tensor7.

Construtores plurais

Às vezes, você pode querer criar variáveis ​​do mesmo tipo em uma única declaração. Você pode fazer isso usando a seguinte sintaxe -

Sintaxe

from theano.tensor import * x, y, z = dmatrices('x', 'y', 'z') 
x = ([1,2],[3,4],[5,6]) 
y = ([7,8],[9,10],[11,12]) 
z = ([13,14],[15,16],[17,18]) 
print (x[2]) 
print (y[1]) 
print (z[0])

Resultado

[5, 6] 
[9, 10] 
[13, 14]