Theano tutorial – basic type

博客摘自:Deep learning 第二篇 婴儿学步 Theano如何做算数?

import theano.tensor as T
from theano import function

x=T.dscalar('x')
y=T.dscalar('y')
z=x+y 
f=function([x,y],z)
print f(2,3)

输出:

5.0

两个矩阵相加:

x=T.dmatrix('x')    #注意这里使用矩阵类型进行格式化
y=T.dmatrix('y')
z=x+y 
f2=function([x,y],z)

print f2([1,2],[3,4],[10,20],[30,40])

 

到这里,手册里面出现了3个专业名词:

scalars ----标量:只有大小,没有方向。比如欧几里几何中的两点的距离。
matrix ----矩阵:一种数学标记方法,通常由行和列组成.
vectors ---向量:也常称为矢量,即有方向的量,与标量相对。

 

可以用来做加法的变量:

The following types are available:
byte: bscalar, bvector, bmatrix, brow, bcol, btensor3, btensor4
16-bit integers: wscalar, wvector, wmatrix, wrow, wcol, wtensor3, wtensor4
32-bit integers: iscalar, ivector, imatrix, irow, icol, itensor3, itensor4
64-bit integers: lscalar, lvector, lmatrix, lrow, lcol, ltensor3, ltensor4
float: fscalar, fvector, fmatrix, frow, fcol, ftensor3, ftensor4
double: dscalar, dvector, dmatrix, drow, dcol, dtensor3, dtensor4
complex: cscalar, cvector, cmatrix, crow, ccol, ctensor3, ctensor4
 
import numpy 

import theano.tensor as T
from theano import function
#from numpy import asarray 
#from PIL import  Image
#im=Image.open("/Users/chaimwu/Desktop/test.png")
#im.rotate(45).show()
print "OK!"
#print random.rand(4,4)

print numpy.asarray([1,2],[3,4],[5,6]).shape
print numpy.asarray([1,2],[3,4],[5,6])[2,0]


a = numpy.asarray([1.0, 2.0, 3.0])
b=2.0 
print a*b 
print b*a


x=T.dscalar('x')
y=T.dscalar('y')
z=x+y 
f1=function([x,y],z)

print f1(1,3)

x=T.dmatrix('x')
y=T.dmatrix('y')
z=x+y 
f2=function([x,y],z)

print f2([1,2],[3,4],[10,20],[30,40])


x=T.dmatrix()
y=T.dmatrix()
z=x+2**y 
f3=function([x,y],z)

print f3([1,2],[3,4],[10,20],[30,40])


x=T.dvector()
y=T.dvector()
z=2*x+2**y 
f4=function([x,y],z)

print f4([2,3],[4,5])
posted @ 2015-10-13 15:47  姜楠  阅读(523)  评论(0编辑  收藏  举报