I am trying to train a binary classification model, but I am not sure how I should think with regards to the background or "other" class.
Is it best to use a multiclass approach with two classes (and thus two output neurons), or should I have a single output neuron?
In the case of a single output neuron, how should I setup the loss function?
What should the background/other training data look like? I guess feeding empty/noise DVS streams are a waste of time since few events mean few generated spikes and thus no output anyway. Therefore I decided to use only negative samples that contain a fair amount of events. Is this correct thinking?
So far I have not found a relevant example to look at. The N-MNIST example contains only the 10 relevant classes and no OTHER class. The Gesture demo trained on DVS-Gesture contains an OTHER GESTURE class but I can't find any information on how it is trained.
Hi @hovren, thanks for you question.
-"Other" class refers to data that can affect recognition results and is typically determined based on the application scenario. If your recognition target is human gestures, anything irrelevant to the target class such as "pedestrians walking back and forth" or "flickering light noise" should be classified as "other." It's generally recommended that the amount of "other" data is 1.2 times of the other class.
-We haven't train related to a "single output neuron" network using Speck . ANN commonly use single output neurons for binary classification. However, due to our output are spikes, it cannot be effectively mapped into posterior probabilities using a sigmoid function. In binary classification, so we typically use two neurons to represent the two classes.