In this short post we'll take a project that uses Edge Implulse and a Neural Network to classify Covid patients' health and implement it using a completely different approach: a sliding window with basic statistics (min/max/mean/std).

At the end of the post you may be wandering: "do I really need Neural Networks?"

A few days ago, user @Manivannan published a post titled Covid Patient Health Assessing Device Using Edge Impulse, where he proposed a prototype of medical device able to detect if a Covid patient is stable, critical or deteriorating.

Scrolling down at the results section, I saw a stunning 100% classification accuracy and my reaction was "Wow, 100% accuracy is really impressive: either the model is very good or the data is very easy".

If you're a reader of this blog, you know I've my personal (bad) opinion about Neural Networks, so I wanted to replicate the exact same project with a totally different approach. I'm a fan of Decision Trees and Random Forest, so I built a setup that could help me apply these "traditional" Machine Learning models to the given dataset.

This is the first of a series of posts I'm willing to write that fall into the "you may not need Neural Networks" category, where I'll showcase a few examples of traditional Machine Learning solving the same problems where Neural Networks are used instead.

I soon realized that time-series analysis is a broad topic that covers many application scenarios (IMU gesture classification, vibration pattern classification, ...), so I settled to create a reusable component that will serve many purposes.

I wrapped this component into a Python package called embedded_window that does 2 things:

  1. applies a sliding window to the input data and computes simple statistics (min/max/mean/std...)
  2. transpiles to plain C++, so you can use it in your Arduino projects

To showcase the use of this package, I borrowed from @Manivannan's notebook and created my personal one.

And you?

Do you think that, sometimes, you may not need Neural Networks?

Help the blow grow