tvm.relay学习(十一)——relay let绑定

Let绑定是不可变的局部变量绑定,允许用户将表达式绑定到名称。

Let绑定包含一个局部变量,一个可选的类型注释,一个值和一个可以引用绑定标识符的主体表达式。 如果省略了绑定变量上的类型注释,则Relay会尝试推断该变量允许的最通用类型。

Let表达式中的绑定变量仅在其主体范围内,除非该变量定义了函数表达式。 当Let表达式创建函数时,该变量的值也在范围内,以允许递归定义的函数。

Let绑定的值是评估它所依赖的绑定之后的最终表达式的值。 例如,在下面的示例中,整个表达式的结果为形状张量(10,10),其中所有元素均为2:

let %x : Tensor[(10, 10), float32] = Constant(1, (10, 10), float32);
%x + %x

Let绑定的序列可以视为数据流图,其中绑定是由绑定变量连接的一系列子图。 由于这些绑定序列是纯序列,因此可以安全地对不依赖于彼此的一对绑定进行重新排序。 例如,下面的第一个和第二个let绑定可以按任一顺序求值,因为两者都不依赖于数据流:

let %x = %a + %b;
let %y = %c + %d;
%x * %y

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值