Question/Issue: I have a CNN which is working quite well for classifying gestures when IMU detects movement above a certain g force in the sense that when performing a gesture, it classifies it correctly. Given this is a gesture recognition scenario, and based on this discussion I am inputting raw data to the NN rather than spectral analysis. For context it’s a gesture recognition device where classes are distinct “movements” eg a punch and windows are about 1s long.
However, the problem is that it is incorrectly labelling random non gesture movements with very high confidence levels. I thought one way of dealing with this might be anomaly detection (based on an Edge Impulse blog post I read) but I don’t know if it’s possible with raw data?
My understanding is that this is somewhat expected in part due to the softmax activation. I’d like to get some idea of “uncertainty” which is where the anomaly detection would come in. Or is a decent alternative to add a “noise” class which is just a bunch of random samples in an effort to capture OOD examples?
You can use the anomaly detection block with the raw data block, however you won’t get the added value of the “Select suggested axes” button and will need to select from an array of unknown features yourself:
I’m not sure I have enough domain knowledge to write a custom processor - bit of an ML n00b. As an alternative, do you think it would be feasible to include a “noise” class which attempts to capture random movements?
My goal is to only use the classification output if something is indeed a punch hence investigating anomaly detection