Keras K.switch()用法

 

一、switch

keras.backend.switch(condition, then_expression, else_expression)

根据一个标量值在两个操作之间切换。

请注意,then_expression 和 else_expression 都应该是相同尺寸的符号张量。

参数

  • condition: 张量 (int 或 bool)。
  • then_expression: 张量或返回张量的可调用函数。
  • else_expression: 张量或返回张量的可调用函数。

返回

选择的张量。

switch接口,顾名思义,就是一个if/else条件判断语句。不过要求输入和输出都必须是张量。

 

二、 example

    import keras.backend as K

    pred = K.placeholder([], dtype='bool')
    count = K.variable(0)
    x = K.switch(
        condition=pred,
        then_expression=lambda: K.update_add(count, 0),
        else_expression=lambda: K.update_add(count, 1)
    )

    f = K.function(inputs=[pred], outputs=[x])

    print(f([True]))
    print(f([False]))

    # print 
    [0.0]
    [1.0]

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值