theano 程序(二)

#导入头文件

import numpy as np

import matplotlib.pyplot as plt

import theano


import theano.tensor as T

from theano import pp

#本文件演示共享变量的定义、获取、设置和更新



#共享变量,指可以在各个函数之间共享的量,相当于C语言中的全局变量。

#可以通过set_value和get_value设置共享变量的值


#共享变量声明

shared_var = theano.shared(np.array([[1,2],[3,4]],dtype=theano.config.floatX))

#获取

print shared_var.type()    #运行结果:<TensorType(float64, matrix)>

print '共享变量的初始值:'

print shared_var.get_value()

#设置

shared_var.set_value(np.array([[3,4],[2,1]],dtype=theano.config.floatX))

print '修改后的共享变量的值:'

print shared_var.get_value()

#与函数一起使用

shared_squared = shared_var**2

#定义一个没有输入参数,只有输出的函数

function1 = theano.function([],shared_squared)

print '共享变量的平方:'

print function1()


subt = T.matrix('subt')

#更新共享变量,采用字典形式:{共享变量名:值}

fun2 = theano.function([subt],shared_var,updates={shared_var:shared_var-subt})

fun2(np.array([[1,1],[1,1]]))

print shared_var.get_value()


#function1的值也改变了,因为它操作的是共享变量shared_var,因为此变量已经被更改

print function1()


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值