Troubleshooting in Data Science

Until the day arrives when project sponsors (or the international standards they are required to follow) trust the decisions of “black box” deep neural networks, there will be such questions.

b) Other Doubts They May HaveThe reliance on predictive analytics is new for many business people.

Perhaps only yesterday they were using a weighted scorecard, with an alchemist’s mix of some qualitative measures, past knowledge and gut feelings.

While it wasn’t accurate or reliable, at least they had comfort in understanding it.

Therefore, it is not surprising that some are reluctant to trust their decisions to an algorithm that looks like Greek to them (seriously, that mathematics formula is sprinkled with Greek letters).

Or maybe they have doubts about your team’s understanding or skills, since you are not, after all, the domain subject matter experts.

Therefore, getting sufficient buy-in from stakeholders may take up an inordinate amount of your time.

Troubleshooting helps you analyze their concerns and solve the mystery of how best to communicate analytics concepts and findings.

Some Key Traits of a Good TroubleshooterBy this point, it’s clear that there are many areas where a data analytics professional has to troubleshoot.

If the role of troubleshooter isn’t already a part of your life background, it’s not too late to start working on these traits and skills.

Below are some of the traits that stand out to me as very important in a good troubleshooter, based on my own experience.

Strong BeliefIt begins here.

“What kind of belief?”, you may ask.

Most of all, I’m speaking of the need to believe deep down that you can do it, you can climb that mountain, you can solve that sphinx’s riddle.

If you believe in a higher power, by whatever name you know it/him/her, draw from that.

There is a long history of faith helping people (even scientists) solve big problems.

How about parents or others who have mentored you in your life, showing that they believe in your abilities, your inner resolve to accomplish things?.Draw from that well, too, and replace negative thinking with positive self-talk, prayer, meditation, whatever works for you.

It’s amazing what people can do if they simply believe they can do it.

(Wow! I feel inspired by these words, myself! Maybe I should write a book and start a new religion, like Data Scientolo… uh, never mind.

)Critical Thinking MindsetI am no expert on critical thinking, I must admit.

But, I do know that an analyst has to analyze.

You have to break things down with your mind, and look for the reasons for a thing, the essence of a thing.

If you get to know and understand a thing, you can do something with it.

For more, it would be good to examine resources from those who have studied this topic, such as It’s a Matter of Mindset: Ten Principles for Unleashing Critical Thinking, containing nuggets like this: “ It’s simply not enough to have the critical thinking skills.

A critical thinking mindset is required — it is a way of doing business, an attitude, a behavior, an approach, an inclination, a disposition, a confidence, a frame of mind, the drive, or motivation to solving big problems.

” In the years since Christine Riordan wrote that piece, she has become a university president.

Yeah, I think I would take her advice.

PerseveranceIn the mind map at the top of the page, I called this part “persistence”.

But perserverance is a better word, because persistence can imply stubbornly trying one approach continuously.

That’s not good thinking.

Let’s go with “perseverance”.

Whether it’s Winston Churchill and the British people trying to save Great Britain, MLK Jr.

and the brave souls of the American Civil Rights movement or “the Doctor” facing the Daleks yet again, the winners are those who persevere in their efforts.

If your first attempted workaround doesn’t work around the problem, then stop, regroup, rethink and try another approach.

But don’t just try the first approach again, hoping “it will work this time”, or unintentionally try it again as your fifth attempt, because you forgot that you tried it already.

I have done the latter, because I didn’t track all the ways I tried to solve a problem.

It’s wise to write down each approach as you come up with it, and record “lessons learned” after it failed to break through the roadblock.

Knowing When To Get HelpNo determined data scientist wants to give up too early.

Good ones know that they don’t know everything, and that their first few ideas to break a roadblock may be all they can come up with…on their own.

At some point, you will be starting to waste time by trying yet another solution to your problem.

Your instincts will tell you when you’ve reached that point.

Trust them.

When I was a systems analyst/developer, I often came upon a head-scratching problem with a new project.

It’s easy to keep on diving in, convincing yourself that “if I simply try this, it will work”, without doing that stop and regroup thing I mentioned.

Before long, I would realize I needed an outside perspective.

I would walk over to my most knowledgeable programming colleague and tell him I needed his thoughts on a problem, when he has a moment, of course.

Often, simply by describing my situation to him, I would realize the answer.

I would thank him profusely for listening, then go back to my cubicle to try out my new idea.

Most of the time, it worked.

Oops, maybe I should not have bothered my colleague yet, but should have done what I wrote about above at the end of the “Perseverance” section, and recorded my each and every attempt.

The “lessons learned” phase is where I probably would have figured out the right approach.

Okay, so what about getting help?.Yeah, for those times where I actually had tried a lot of approaches and studied their reasons for failure, I found that there really is truth to the adage, “two heads are better than one”.

My colleague usually came through for me by the fact that he saw my problem from a slightly different angle (James Coffman, I’m talking about you — now you are famous).

Or, maybe he had some particular skill or experience that was not yet in my bag of tricks, and freely shared something that I could try.

If it isn’t convenient to bother a colleague (well, actually BEFORE you bother them), I will say what you know I’m going to say…Google it.

It is part of troubleshooting to know (and learn until you know) the right search terms that may lead to your answer.

So is it part of troubleshooting to carefully read the replies of experts on Stack Overflow who are answering a question similar to yours.

You may be working with a new tool, whose particular error message (in your case) has not yet made it into the questions of sites that should have the answer.

You may have to interpolate the answer to fit your situation.

If nothing else, other people have written things that give you new ideas to try.

A good troubleshooter can synthesize three or four ideas from different answers or web pages to craft the answer that gets them past their roadblock.

Keep an eye out for Part 2, Troubleshooting Steps and How to Develop the Traits and Skills.

Until then, share your thoughts on areas and traits that I haven’t touched upon.

We will all learn from each other, and become better troubleshooters!.. More details

Leave a Reply