2016-05-26 6 views
2

私は、アレイにアクセスするにはLuaのTorch7の配列インデックス表記

xTrain = torch.linspace(-1,1,nData) 

として初期化したサイズのxTainnDatax1

という名前の配列を持って、著者はxTrain[{{i}}]

を使用していますあなたはこれを説明してくださいすることができます表記法?単にxTrain[i]ではないのはなぜですか?

私はなぜそれがまた、第三に[torch.DoubleTensor of size 1]を印刷ん

th> print(xTrain[1])  
-1 

th> print(xTrain[{1}]) 
-1 

th> print(xTrain[{{1}}]) 
-1 
[torch.DoubleTensor of size 1] 

を行う際

xTrain=torch.linespace(-1,1,10) 

ノート・追加のPGとしてノー21- https://www.cs.ox.ac.uk/people/nando.defreitas/machinelearning/lecture4.pdf

にここに著者のコードを参照してください場合。私の推測は最初の2つのケースで、その場所と3番目のケースでスカラー値を返します。DoubleTensor

答えて

1

いい場所はLua manualです。これは構文と解説です。あなたは{...}の意味はLuaの中で何で、見ることができます。

{...}    -- creates a list with all vararg parameters 

だから、要するに、あなたの{1}では、単一の番号1を含むリストを含むリストを持って、もう一度それを繰り返す1.単一の値を持つリストを作成します。

xTrainがシンプルなテーブルの場合、リストを使用してインデックスを作成するのが難しいため、おそらく失敗するでしょうが、実際の値はテーブルのインデックスには使用されず、リストの

さらに関数から返されたTensorクラスについての詳細は、参照するのが良い場所です。 「配列アクセス」を使用した索引付けについては、[Tensor] [{ dim1,dim2,... }] or [{ {dim1s,dim1e}, {dim2s,dim2e} }]

のセクションで説明しています。
関連する問題