【问题标题】:Thresholding in TheanoTheano 中的阈值
【发布时间】:2014-07-24 03:42:06
【问题描述】:

有没有办法对 Theano 张量中的值进行阈值处理?例如,如果v = t.vector(),我想创建另一个张量w,它包含与v相同的值,除了超过某个阈值T的值被T本身替换:

v = [1, 2, 3, 100, 200, 300]
T = 100
w = [1, 2, 3, 100, 100, 100]

更一般地说,有什么标准框架可以在张量上创建自己的操作?

【问题讨论】:

    标签: theano


    【解决方案1】:

    这是执行此操作的代码。使用剪辑功能。

    import theano
    v = theano.tensor.vector()
    f = theano.function([v], theano.tensor.clip(v, 0, 100))
    f([1, 2, 3, 100, 200, 300])
    # array([   1.,    2.,    3.,  100.,  100.,  100.])
    

    如果你不想要一分钟,你可以使用开关:

    import theano
    v = theano.tensor.vector()
    f = theano.function([v], theano.tensor.clip(v, 0, 100))
    f([1, 2, 3, 100, 200, 300])
    # array([   1.,    2.,    3.,  100.,  100.,  100.])
    f = theano.function([v], theano.tensor.switch(v<100, v, 100))
    f([1, 2, 3, 100, 200, 300])
    # array([   1.,    2.,    3.,  100.,  100.,  100.])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-10
      • 2016-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-22
      相关资源
      最近更新 更多