Frequently Asked Questions


1. Is TopoART a deep neural network?

No, at least not in its classic meaning. A single TopoART module contains just three layers of nodes which interact in a different way than the layers of networks commonly used in deep learning. Additional TopoART modules act as some kind of input filters for subsequent modules. This enables TopoART to group its input with different levels of coarseness, but it does not compute feature maps at different levels of abstraction. This is a major difference to current deep neural networks. As a result, TopoART may use many node layers depending on its number of modules but it still cannot be considered a deep neural network.

2. Can TopoART be combined with deep neural networks?

Yes, deep neural networks can be used as feature extractors while TopoART can fulfill the function of the final node layer (head) such as classification which is often implemented as a combination of a fully connected layer and a softmax layer. Then, the backbone of a pretrained deep neural network provides high-quality features. These feature are fed into the respective TopoART network which can be used as usual; i.e., it can even be trained incrementally, for instance, if new classes show up during application. This combines the advantages of both neural network approaches.

3. Have all TopoART networks two modules?

No, the number of modules can have any (integer) value greater or equal to 1. Usually, one to three modules fit best.

4. Are TopoART networks very sensitive to noise?

No, TopoART has a very powerful noise reduction mechanism controlled by the parameters φ and τ. As a rule of thumb, if the results are disturbed by noise increase φ.

5. Does TopoART use Fuzzy ART modules?

Not really, although there are some similarities. If βsbm=0 and φ=1 the categories learnt by a TopoART module are equivalent to those of a Fuzzy ART module using complement coding, fast learning (β=1), and the same values for the vigilance parameter ρ and α. Fuzzy ART cannot group categories into clusters.

6. How to solve the problem that the results do not contain noise categories but the expected clusters are split into separated cluster fragments?

Most likely the value of φ is too high. If decreasing φ does not lead to the desired results due to too much noise, increasing τ might help.

7. Why does the clustering result contain single unconnected categories in addition to the expected clusters?

There are three main reasons why this effect might show up:

  • Firstly, the dataset has small data hotspots which can be represented by the categories in question. This could be caused by random variations of the training data.
  • Secondly, the unconnected categories lie in close proximity of a bigger cluster. If so, they are likely to be connected to this cluster if learning continues.
  • Finally, the data distribution might have changed and the unconnected categories constitute the starting point of a novel cluster.

Please keep in mind that TopoART is a lifelong learning neural network. Thus, every output is just the result of a temporary network state. In particular, existing categories can grow and new categories or links may be added in the future.

8. What are the requirements regarding the input data of Episodic TopoART?

The individual input values should reflect the underlying data with respect to the application at hand. If the input data consists of features extracted from individual images of a video stream, for instance, these features should change to a similar degree like the relevant image information. There is no restriction on either low-level features or high-level features.