Data science when lives are at stake

Most data scientists apply their craft at predicting the mundane. If it's retail, we're talking about recommending an album, gizmo or such that has the best chance of wresting another dollar from the customer's wallet. If the underlying data science model pushes the latest Cardi B on a father whose teenage daughter had hijacked his account for a day last week, no harm is done - one can even say it made the father feel a little hip for a second. If that Next thermostat tends to be set more to your significant other's liking just because she cares to get up and change the setting and thus train the damn thing, you can only blame yourself and not the thermostat. And if Alexa fails to play your favorite song because of the way you roll your r's, you shrug and move on and soon enough your favorite song becomes whatever Alexa does play on a consistent basis.

But data scientists are moving beyond the mundane more and more. 

Take self-driving. If your algorithm is going to decide if that blur, moving swiftly towards the car and having a vague resemblance to a bicycle is instead just white noise in the video or an artifact of the compression algorithm or a ghost reflection of an unknown variety in the radar (and so on.. the list is long here), and instruct the car to carry on without a worry in the world, you better be sure - like almost hundred percent sure (granting full perfection is unattainable). But how do you really be really, really sure? And how much is really, really sure? What if this particular bicycle has only a vague resemblance to most bicycles in the first place? What if it's a unicycle? Or one of those giant-wheeled bicycles that make you wonder how the hell the rider got on it in the first place. Does the algorithm get a pass? Do such bikes and the riders that ride them are to blame here for not opting for a standard bike more visible to algorithms? Perhaps you can train your algorithm for these varieties of bicycles but how about the next odd incarnation of a bicycle. In a more mundane application, you wait for a few false negatives and retrain. Nothing wrong about learning from one's mistakes. But the real question here is when is an algorithm ready to be put out in the field in the first place. What's the right level of false negatives (or false positives for that matter)? In situations where lives depend upon the success of algorithms, it's imperative that data scientists take it upon themselves to take a closer look at how to measure accuracy and how to set bars of performance and not rely solely on a word from above as it may only come when the lives have already been unnecessarily harmed.

The general principal on which to do this is clear enough. 

The algorithm must be more accurate than a human being.

It's the application of this principal where short-cuts are made in the interest of time and money. When it comes to comparisons, the tendency is to choose a human being who is average in driving skills but an algorithm that is inside a car in a mint state operating in friendly conditions and deep within its trained domain of application. In other words, the tendency is to not compare an algorithm driving in snowy conditions next to an elementary school with jumpy kids to a parent driving carefully with all their experience but instead an algorithm driving a car on perfectly painted lanes to an average human driving with life’s distractions in their mind and a drink or two in their belly. This is not a high enough bar, not when lives are at stake. We should aim higher as in this guiding principal.

An algorithm with such high stakes is ready for prime time only when it can beat not the average human in average conditions but also the best of the human drivers in the worst of the conditions the algorithm would be allowed to encounter.

Take predictive maintenance in the Oil and Gas off-shore drilling as another example. A malfunction of the Blowout Preventer (BOP), which stops uncontrollable release of subsurface oil or gas, is not something to take lightly. If your algorithm is going to mine the IoT sensor history of a BOP, analyze the machine’s degradation with age and then provide assurance that the BOP can be safely used for another, say, three months without any reconfirmation from human experts, it better be sure - really, really sure. Is there even enough data to draw that conclusion with any reasonable confidence? A typical drilling company will have multiple models of BOPs from multiple suppliers at various drilling sites. Drawing behavioral conclusions from one model of BOP and applying to another is rife with risk unless data proves it otherwise. Often such concerns are ignored and overstated conclusions follow. No drilling company has enough data to solely depend upon a data science model to predict usability of infrequently used equipment such as a BOP. In this scenario, chances of both false positives and negatives are high unless the analysis is corroborated by more traditional physics models. What needs to be acknowledged in this scenario is that the data science model has a limited domain of application and it's best used in conjunction with both physics-based models and human experts.

Where does it leave us data scientists? Here's a more generalized version of the guiding principle to follow in such high stake applications.

In each of its domains of application, the algorithm must be more accurate than a human being without any impairment. The application containing the algorithm must fully ensure that the algorithm is never applied outside its domains of application and there must a fail-safe mechanism to take algorithm out of operation and control be handed over to a human being without any harm to any one whenever there is a danger of conditions shifting out the training domain. If the domain of application is such that such a hand-over is not possible, consider the algorithm not ready for the field.

Put even more simply, for god’s sake, do not overstate the model results. Lives are at stake.

If Isaac Newton were to be a data scientist

newton.jpg

Wanting to predict remaining useful life of a submersible pump or an turbo-engine on a plane? Or performance of an oil field? Or price of crude oil? If you are a data scientist, chances are that someone with pedigree harder than that of a data scientist has asked you the following question with an annoying smile on their face – “How does your model account for the underlying physics, you know real science, of these situations?” – and you have stumbled and bumbled your way out, unless, of course, you were a physicist before someone told you about an easier way to make a living than trying to come up with a theory of everything, not a small probability but still leaving out most of us. Well, merely claiming that many machine-learning models are theoretically capable of learning any physics model, a claim that may be true but in such an impractical way that it might as well be false, may come across as smug at the very least, merely unbelievable if you are lucky and downright fraudulent if you are dressed too well. Still, I thought why not get a bit deeper into this and muse what would’ve happened if machine-learning had come to be known before Newton watched that apple fall to the ground. Not possible unless an abacus is the computer of your choice, but, hey, let’s run with it for a while longer. Newton would’ve first done what most data scientists do, which, of course, is ask for data – more the better. In Newton’s case, since he also set up the problem, that meant collecting that data himself. Damn it. I hate it when they don’t even have data. But what data? It’s likely that Newton would have tried to predict how long an apple takes to fall to the ground. Or a book dropped from a building. Or something heavier from a different height. Then, his data would have been the weight of the object, the height it was dropped from and the time it took for the object to fall to the ground. After weeks of dropping of objects, clandestinely, naturally, to avoid raising suspicions among the less scientifically-inclined, he put together a little matrix of tabular data – weight, height and time, which could have looked something like this:

newton_data.png

To start with, Newton, the data scientist, likely would have thrown the data as is at a straightforward linear regression. He would have been pleasantly surprised at how good the results look. A R-square of 0.986, standard error of 0.155. A very low p-value for two of three coefficients. Many a data scientists would take this without a second thought. If this model were to be deployed for a specific application – when should a stone be dropped to hit an approaching enemy’s helmeted head, for example – this type of accuracy is more than good enough. No real understanding of anything remotely connected to theory of gravitation is to be found here. But it does the job. Does this count as success? Does the model account of the underlying physics? No, but yet the model is not entirely wrong either. In fact, it’s good enough for that application.

 Linear Regression Model R

Linear Regression Model R

Newton may have gone further and tried another standard trick in linear regression – try a log-linear model. The results would have been even better. A R-square of 0.995, standard error of 0.029. Even lower p-values for all coefficients. In terms of the application, the model would not be terribly different in its prediction, at least in the range of heights the training data was collected, but the model seems clearly better. What the data scientist may not stop to ponder is that the log model is not merely more accurate, it has discovered a key effect of the classical theory of gravity – a body will fall to earth at a constant rate of acceleration and that rate is independent of the mass of the body. Strictly speaking, the model has a small not zero coefficient against the weight. Newton, the data scientist, may not again stop to wonder if it’s exactly zero. To complicate matters, all the real-world issues step in. Atmosphere, variable wind resistance, inaccuracy in measurements of weight, time and height, presence of other bodies so on and so forth. These factors will stop even a perfect experiment to come up with an exact zero coefficient against the body weight. The platonic ideal form of the elegant Newton’s laws may not have ever been discovered by Newton, the data scientist. But like before, this does not deter from the usefulness, or even accuracy, of the log-linear regression model.

 Log-linear Regression Model

Log-linear Regression Model

How far can this be taken? After all, we haven't even gone beyond regression yet. Could all the measurements of planetary bodies taken by astronomers prior to Newton’s arrival on the scene been fed by Newton into a machine-learning model for him to create a representation of the full theory of gravitation? Could enough measurements data be used to learn and predict Einstein’s relativity theory, explaining the minute discrepancies in astronomical calculations from the Newtonian’s version? We are not talking about building a full understanding of the physics, of course, but still a good enough model for predictions in similar situations. The answer is a qualified yes. With enough data, a predictive model that performs very close to the ideal form can be built. The qualification is owed to the very real and often prohibitive issues in getting that finely granular data and also identifying and training the right machine-learning model in practical amount of time. Linear, log-linear or even generalized linear regression are certainly not going to be enough, but a multi-layered Boltzmann machine would, to an arbitrary level of precision, even though it's possible that even with all the data, the training algorithms fail to find the the absolute best fit, which might be the only fit that reflects the actual physics.

If Newton were to be a data scientist then, he may have discovered the laws of motion and gravity but without really realizing it. These “laws” would have been approximate and statistical in nature and represented only through computational models. But they still would have been good enough to predict seasons and motion of planetary bodies. 

So, the next time someone asks you to build a machine-learning model to predict a natural phenomenon without learning the physics of it, feel free to hesitate but don’t shy away from it entirely. Chances are that within certain range the machine-learning model you create will perform well enough. If you have access to some type of physics model for that phenomenon, you can use it to create the right machine-learning model – sometimes as a Bayesian prior, sometimes to scale the variables and still other times to determine the right form of functional parameters for the machine-learning model.