Stacked combining |
By stacked combining sets of mappings are combined that operate from the same input space into different output spaces. The resulting mapping concatenates the output spaces. The combining operator is the horizontal concatenation. Alternatively the command stacked may be used.
As an example consider three mappings W1
, W2
and W3
defined for the same space in which a dataset A
is given. Applied separately to A
the mappings would result in three datasets B1
, B2
and B3
of possibly different dimensionality.
B1 = A*W1; B2 = A*W2; B3 = A*W3;
These mappings may be combined by
W = [W1 W2 W3];
or alternatively by
W = stacked(W1,W2,W3);
If W
is applied to A
B = A*W;
the result is equivalent to
B = [B1 B2 B3];
or, in summary,
B = A*W; % execution, results in B = A*[W1 W2 W3] = [A*W1 A*W2 A*W3] = [B1 B2 B3];
The user just has to supply B = A*W
. The remainder just shows what is done autoMatically by PRTools
. Note that the difference with parallel combining is that for stacked combining the base mappings W1
, W2
and W3
operate on all features of A
, while in parallel combining they just operate on a predefined subset.
Stacked combining can also be applied to untrained mappings. In that case a set of untrained base mappings U1
, U2
, ... are trained separately, resulting in W1
, W2
, .... These constitute a new, now trained, combined mapping.
U = [U1 U2 U3]; % concatenation of untrained mappings W = A*U; % training, results in W = [A*U1 A*U2 A*U3] = [W1 W2 W3]
Stacked combining is executed in PRTools
by the stacked command. Users may use the concatenation operator [ ... ].
R.P.W. Duin
, January 28, 2013Stacked combining |