如何在不使用扫描的情况下在Theano中堆叠矢量?
发布时间:2020-12-20 13:44:04 所属栏目:Python 来源:网络整理
导读:我使用theano.scan创建像这样的上下文的堆叠向量: 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))) 扫描似乎很慢,这会减慢整个处
我使用theano.scan创建像这样的上下文的堆叠向量:
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))) 扫描似乎很慢,这会减慢整个处理过程. 例: 的情况下 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) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |