| Prev
| Start of Chapter | Next Chapter | Contents | Index | (18 out of 18)
Novelty Filter
|
The Novelty Filter is a filter that prevents a Data Set from being filled with
redundant data. Whenever you add a data pair to the attached Data Set, the
Novelty Filter checks whether there are more than a specified number of data
pairs within a specified distance of the new data pair. If there are, the Novelty
Filter removes the older data pair. The filter can also archive the removed data
pairs to another Data Set.
To filter a Data Set, connect the filters`s capability link to it. To archive the
removed data pairs in another Data Set, connect the filter's action link to it.
Neither of these connections requires a port in the Data Set.
The Novelty Filter sends a control signal on its cp-out path whenever the filter
detects a novel data pair.
Choosing Which Points to Keep
Whenever the attached Data Set receives a new data pair, the Novelty Filter
encloses the input value with a rectangular cell. If that cell contains more than the
maximum specified in the attribute Points per Cell, the Novelty Filter removes the
oldest data pair from it. You set the sizes of the cell in the configuration panel.
Each input has its own cell size, which is one-half the cell's width.
In the example below, there are three newly added data pairs (the filled circles)
and a large number of existing data pairs (the empty circles). Each data pair has
two inputs (X1 and X2). In the Novelty Filter's configuration panel, the size for X1
is 1 and the size for X2 is 2. This means that each new point is enclosed by a cell
that is 2 by 4 units large. The maximum Points per cell is 3.
|
The following list describes how the Novelty Filter handles the three new points:
- Since the cell contains fewer than the maximum Points per cell, nothing is removed.
- Since the cell contains exactly the maximum Points per cell, nothing is removed.
- Since the cell contains more than the maximum Points per cell, the oldest data pair in the cell is removed. In this picture, that data pair has an X through it.
Deciding Whether a Data Pair is Novel
The Novelty Filter passes a control signal when it receives a data pair that it determines is novel. However, a data pair is not novel just because the filter keeps it.
An incoming data pair is judged to be novel if either of the following criteria is
satisfied:
- If the input cell contains only the newly received data pair, the data pair is novel.
- If the input cell contains other data pairs, the Novelty Filter averages the target values (or Y values) for those data pairs. Then, it computes the target values for the received data pair and encloses it in a cell. You specify the dimensions for the cell in the filter's configuration panel. These are different dimensions from the ones for the input cell. If the average output values fall outside the cell, the newly received data pair is novel.
Making Values Permanent
When you select make permanent from the block's menu, the block saves the
sizes of all the input and output values.
Configuring
This is the configuration panel for the Novelty Filter.
Set Number of Inputs to the number of input values in each data pair, and set
Number of Targets to the number of output values in each data pair. Set
Points per Cell to the maximum number of data pairs you want inside each cell.
Once you have specified these attributes, select Edit Input Cell Sizes and Edit
Target Cell Sizes to edit the cell sizes. The block displays a spreadsheet, which lets
you enter the size for each input and output value.
For more information on the spreadsheet, see "Using the GXL Spreadsheet to Edit
Data".
When you connect more than one filter to a Data Set, Execution Priority lets you
determine when each executes. For more information, see "Choosing When a
Data Set Filter Executes".
Example
In the example below, whenever the Current Data Set receives a data pair, the
Novelty Filter removes any data pairs from the Unique Data Set that are close to it
and places those data pairs in the Excess Data Set.
See Also
For more information on how to use this block, see the pages below.
| Prev
| Start of Chapter | Next Chapter | Contents | Index | (18 out of 18)
Copyright © 1996, Gensym Corporation, Inc.