I collect time series wind speed data. Occasionally, the anemometers that collect this data break. I have flag "events" in place to notify me when this occurs - they are very rudimentary, for example, when a sensor breaks, it will return flat line data. So I have code that checks for wind speed data < 1 m/s. Usually the sensors are not broken - flat line happened because temperature is below freezing or the wind is simply not blowing.
The problem: Many false positives.
Current solution is very rudimentary and rule based. Example pseudocode might be:
if windspeed < 1 AND temp < 0: return "Broken Sensor"
I have maybe 20 of these rules but I would like to develop a ML classifier that is more sophisticated. I thought about a decision tree where the features might be:
- Wind Speed
- Barometric Pressure
- Boolean: Is another sensor at the same height reading a similar value
And I would be seeking to predict whether the failure event is either False Flag or Real Event
However, this would model each time-stamp in the data as it's own separate row independent of each other, when in actuality my data is time series.
Are there effective methods for modeling time series with decision trees?
Would you recommend another model altogether?
Should the data be modeling with booleans or actual values? For example, instead having temperature, I could just use boolean for freezing v. not freezing. Or does this matter?
I have wind direction and standard deviation data as well, maybe that could help predict as well.