next up previous
Next: Hidden layer Up: Recipe I/O format Previous: Input layer

Feature maps and subsampling maps

The next two types, FEATURE_MAP and SUBSAMPLING_MAP, require more information. One or more of the following lines may be given for these types (note that although in the example this line is broken, in the recipe-file this must appear as one line of text):

	SIZE=(num-maps)@(x-size)x(y-size) 
    FILTER=(filter x-size)x(filter y-size)>(filter x-shift),(filter y-shift)
    [MASK=(mask-definition)]
    CONNECTED=1100,0011,...
    [BIAS=[ON|OFF|FIXED (value)|SHARED]]
    [WEIGHT=[ON|FIXED (value)]]
    [WEIGHTS=[ON|FIXED (value1,value2,...)]]
    [ALLWEIGHTS=[ON|FIXED (value1,value2,...)]]
    [TRANSFER=(transfer-function)]
	  [ACTIVATION=(activation-function)]

The SIZE-directive gives the number of maps that should be built, and their size. Note that more than one of these lines can be given to construct maps of different sizes or with different filters. In the example, there is one map of size tex2html_wrap_inline1671 and one of size tex2html_wrap_inline1673 .

The optional MASK-directive can be used to place additional constraints on weight sharing. For example, if MASK=ABA,BBB,ABA is specified, for a 3 by 3 filter, only two free weights will be created which will be shared by different units like this:

  ABA
  BBB
  ABA

Next, the FILTER-directive tells SPRANNLIB what size filter (sets of weights) to construct between this layer and the previous one. For the example network, in both maps each cell is connected through a tex2html_wrap_inline1675 matrix of weights to the input layer. The only difference is, that the tex2html_wrap_inline1671 mask has a filter with shift 2, whereas the tex2html_wrap_inline1673 mask has a filter with shift 3.

The reader may have noticed that one of the parameters from the SIZE- and FILTER-directives is superfluous, since it can be deduced from the other parameters. In fact, the routine that builds the network uses this to check the integrity of the recipe. There is one exception: if a map is declared as having SIZE=1@1x1, there is only one cell which is connected to all cells in the specified maps in the previous layer through one set of shared weights.

The CONNECTED-directive uses a binary coding to indicate the presence (1) or absence (0) of connections between maps in this layer and the previous layer. For each map in this layer, a binary string of length equal to the number of maps in the previous maps should be given. These strings are separated by commas. In the example's subsampling layer, the first three maps are connected to the first ( tex2html_wrap_inline1671 ) map only, the last three to the second ( tex2html_wrap_inline1673 ) map.

Finally, there are a number of optional more complicated directives:


next up previous
Next: Hidden layer Up: Recipe I/O format Previous: Input layer

Created by LaTeX2HTML on Thu Mar 5 16:02:50 MET 1998