2017-03-01 2 views
0

Ich versuche dieses Problem seit einiger Zeit zu lösen und kann immer noch keine Lösung finden, vielleicht kann mir jemand hier helfen. Ich habe folgende AAABBB Eingabetabelle an das neuronale Netz:AAABBB Tabelle von Tensoren in verschachtelte ABABAB Tabelle von Tensoren in Torch umwandeln

{ 
    1 : 
    { 
     1 : DoubleTensor - size: 32x200 
     2 : DoubleTensor - size: 32x200 
     3 : DoubleTensor - size: 32x200 
    } 
    2 : 
    { 
     1 : DoubleTensor - size: 32x54 
     2 : DoubleTensor - size: 32x54 
     3 : DoubleTensor - size: 32x54 
    } 
} 

Die obige Tabelle wird vorverarbeitet und muß dann in verschachtelteABABAB Eingabetabelle umgewandelt werden:

{ 
    1 : 
    { 
     1 : DoubleTensor - size: 32x200 
     2 : DoubleTensor - size: 32x54 
    } 
    2 : 
    { 
     1 : DoubleTensor - size: 32x200 
     2 : DoubleTensor - size: 32x54 
    } 
    3 : 
    { 
     1 : DoubleTensor - size: 32x200 
     2 : DoubleTensor - size: 32x54   
    } 
} 

Wie kann ich AAABBB Tabelle zu ABABABverschachtelten Tabelle innerhalb das Netzwerk mit Torch table layers?

Antwort

0

Es scheint, dass dpnn Paket enthält eine Container, die genau das tut. ZipTable zips eine Tabelle von Tabellen in eine Tabelle von Tabellen.

Hier ist ein funktionierendes Beispiel dafür, wie AAABBB Tabelle in ABABAB Tabelle verschachtelt zu konvertieren.

require 'dpnn' 

aaa = torch.DoubleTensor(3,32,200) 
bbb = torch.DoubleTensor(3,32,54) 

model = nn.Sequential() 
par = nn.ParallelTable() 
par:add(nn.SplitTable(1)) 
par:add(nn.SplitTable(1)) 
model:add(par) 
model:add(nn.ZipTable()) 
model:forward({aaa,bbb}) 
Verwandte Themen