2015-07-02 13 views
9

Mi trovo di fronte a concatenare tre tensioni insieme in modo che i tensore 3 px1 diventino un tensore 3px1.Quali sono i modi più idiomatici per combinare i tensori nella torcia?

Il più succinta ho potuto venire con era:

torch.Tensor{v2:totable(),v4:totable(),v6:totable()}:view(3*p,1) 

ci sono modi per fare questo senza la conversione in tabelle e di nuovo a tensori? Sembra che ci dovrebbe essere un modo generico di concatenare i tensori lungo una determinata dimensione assumendo che abbiano forme compatibili.

Posso vedere come sarebbe possibile scrivere una funzione del genere, non esiste?

risposta

14
a = torch.randn(3,1) 
b = torch.randn(3,1) 
c = torch.randn(3,1) 

d = torch.cat(a,b,1):cat(c,1) 

print(d) 
+2

Che nome ovvio per questa funzione! Non l'ho notato perché non è stato discusso sul [tensore] (https://github.com/torch/torch7/blob/master/doc/tensor.md). Esistono documenti API completi che elencano tutte le funzioni? Mi rendo conto di poterli elencare nella console 'th' usando il completamento della tabulazione e poi interrogare la guida per ciascun metodo. Non sono tutti online da qualche parte in HTML? –

+3

@KevinBullaughey I documenti per 'tensor.cat' sono in [Operazioni matematiche] (https://github.com/torch/torch7/blob/master/doc/maths.md#res-torchcat-res-x_1-x_2- dimensione-d) nel repository GitHub. – ryanpattison

+0

Ah! In qualche modo ho perso quel file. Grazie a @rpattiso per averlo indicato. –

Problemi correlati