Y_,scan_updates = theano.scan(fn=lambda *args,**kwargs: T.concatenate(args,axis=0),outputs_info=None,sequences=dict(input = Y_,taps=range(-left_ctx,right_ctx+1)))
扫描似乎很慢,这会减慢整个处理过程.
在信号处理中,这是相当标准的 *** 作,所以我考虑创建一个特殊的 *** 作,就这样.
不幸的是,我还需要这个 *** 作的GPU实现和毕业,这对我来说看起来像是一个很长的镜头.
你能踢我正确的方向吗?我已经阅读了扩展theano文档,但仍然没有帮助.
例:
的情况下
left_ctx=right_ctx=1
矩阵:
[[0.0,0.1],[1.0,1.1],[2.0,2.1],[3.0,3.1]]
将被转换为
[[0.0,0.1,1.0,1.1,2.0,2.1,3.0,3.1]]
谢谢
Ĵ
Y_= T.concatenate([Y_[c:Y_.shape[0]+c-left_ctx-right_ctx] for c in range(left_ctx+right_ctx+1)],axis=1)总结
以上是内存溢出为你收集整理的如何在不使用扫描的情况下在Theano中堆叠矢量?全部内容,希望文章能够帮你解决如何在不使用扫描的情况下在Theano中堆叠矢量?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)