2016-06-25 5 views
1

私は、2Dバッチテンソル(128x512)と1Dテンソル(512)の間で要素の賢明な乗算を実行しようとしています。それは作品と私は期待どおりの結果を得るが、私はそれがなぜそれを行うための最善の効率的ではないと思う2Dと1DテンソルのTorch/Lua要素の賢明な乗算

nbatch = input:size(1) 
    for i = 1 , nbatch , 1 do 
     self.output[i]:cmul(self.noise) 
    end 

:なぜ

現在、私はこの中でそれをやっています。

より効率的に行うことはできますか?

(n-1)DテンソルでnDテンソル要素をwise乗算するにはどうすればよいですか?

ありがとうございます!

答えて

1
self.output:cmul(self.noise:view(1, self.output:size(2)):expandAs(self.output)) 
+0

こんにちは、それ以上のディメンションのためにそれを拡張する方法はありますか? –

+0

複数のシングルトンディメンションを展開することができます。 'torch.rand(3):view(1,3,1):expand(2、3、5)'です。 – deltheil

関連する問題