In the previous post, I noted the Internet of Things (IoT) technology wave is upon us. It will be truly disruptive, and it will fundamentally change your business. Aside from noting these technologies, I am also talking about a process and mindset that works best to navigate through this new technology wave. The process is based on Design Thinking principles, but these blogs focus on the flavor in the business-to-business space.
To motivate the discussion, I’ll talk about a category of IoT that revolves around predictive analytics, machine learning and artificial intelligence.
Wired Magazine recently noted that “an artificially intelligent Google machine just beat a human grandmaster at the game of Go, the 2,500-year-old contest of strategy and intellect that’s exponentially more complex than the game of chess,” It’s the latest example of progress made by researchers in the AI field, but of course Google is not a research firm. It is a public company with shareholder responsibilities. Google is pushing hard to monetize this technology on a grand scale. Others are pushing just as hard toward the same goal, notably IBM with Watson and GE with Predix.
Are you now asking what this means for your business? Or what you should be doing right now? Do you feel like you’re falling behind… and quickly? If so, let us apply the process discussion and see how it may help with the problem.
Getting to Understand
As shown in the figure below, the first step in the process is to Understand.
The goal here is getting a clear understanding of the problem to be solved or the goal to be achieved. In addition to a clear goal/problem statement, other artifacts are often needed, such as personas for key actors and stakeholders, and information about the problem. For business-to-business problems and goals, it can be very helpful to use a business plan canvas to capture some this information.
This “Understand” step is the most important and most difficult part of the process to get right.
It’s all well and good, but how does this help us with the problem at hand? What should business be doing today with the AI and Machine Learning technologies?
Digging Deeper into Understanding
As I noted in the previous blog, one of the process’ best features is that it is inherently iterative. What that means in the “Understanding” step is an explicit recognition that the problem itself is not well understood. As with the AI problem, for non-trivial problems, it will take more than one pass through the process to make real progress.
In our case, the goal of the first iteration should be to gain business insight around the problem. Google’s definition of insight is: “the capacity to gain an accurate and deep intuitive understanding of a person or thing.” It is the exact prerequisite needed to solve our problem. Our first victory in tackling this problem could be the realization that we need to understand AI to a point where we can elaborate on the original problem.
Design Thinking helps us with a heavy focus on the concept of empathy and deep understanding of a problem or goal. The traditional Design Thinking process is human-centric with multiple techniques aimed at getting a deep understanding of the person that would be using or interacting with a certain technology. For a business-to-business situation, additional techniques and tools can help with this understanding step, such as a business model canvas.
Since the area of AI is broad, we know that in order to complete an iteration, we need to produce something that passes a test and produces results. We need to be more specific. Let’s look at Machine Learning and attempt to gain insight into how machine learning works.
The Wired Magazine article talks about something called Neural Networks as means for the computer to “learn.” So, let’s fine tune the goal for the iteration of gaining insight into Neural Networks.
With this type of goal, we could put together one or more Machine Learning prototypes that help us get past the technical jargon and marketing hype. The fact that the techniques are inspired by our current understanding of how the human brain works doesn’t help.
If we are very new to the topic, we may decide to take on a basic problem of applying Machine Learning to recognize a scanned image of handwritten digits – the “Hello World” program of Machine Learning.
Using images, such as those shown below, we can develop a set of programs that will read the images and “learn” which images corresponds to which digits.
The Learning process will result in a model that can be saved. At that point, we can take any new image, apply this model to that image and predict which digit is in the image. Our goal would be to do this with greater than 95% accuracy.
At first the problem seems difficult. The software will receive nothing more than a set of pixels, for example a 20×20 pixel image would result in 400 pixel values as input to the program. The other difficulty is that these images are of handwritten digits. There would seem to be an almost infinite variety to each digit. It seems daunting to build a program to recognize all of these and do it at over 95% accuracy.
The solution and result of what we would review at the end of our iteration is shown below:
Through a clever (and very unintuitive) application of very simple math, one can feed the above Neural Network any 20×20 image of a digit, and it will predict what digit is in the image. It can achieve over 95% accuracy.
Looking at the previous figure (and avoiding the details) to predict what digit is in an image, one simply executes the mathematics from left to right, and the answer is given as the maximum number on the far right.
No elaborate if-then loops. No complicated edge detection and geometry calculations. In fact, no traditional program logic at all. Only Math!
The magic of how one calculates the model (in this case T1 and T2) is likewise primarily an application of math and techniques similar to those used to fit a line to a set of data points.
Since this problem is solved with all mathematics, it’s also obviously important that the data being used as input is numeric.
So here is what we would have learned in this hypothetical iteration:
- Machine Learning is very powerful. Even the simple POC solved a tricky problem, and it did so by “learning,” opposed to heavy software development investment.
- We have a better sense of what the term “Neural Network” is. It is a mathematical model.
- We understand that to use this approach, we need to translate data into a numerical representation. If I have texts that I plan on applying this technique to, I need to plan on spending a good deal of time in developing a good approach to translate the texts into numbers that can work with the model.
- I can quickly see some of the limitations of the “fully connected” Neural Network, such as scalability. But there are solutions to these limitations.
With this insight (and others not listed here), we can revisit the Understand step in our process and take another look at the basic problem statements:
So what does this mean for my business? What should I be doing right now? I feel I’m falling behind… and quickly.
Insight Gained Toward Understanding
With insight gained, we are well positioned to reframe the problem. Clearly, we would need to go through at least one more iteration based on the reframed problem. Given that AI and the application of AI are so broad, focus and prioritization based on business goals will need to be made. But after a relative short period of time and with possibly three iterations through the process, there is a good chance that at least the context for AI would be clear for the company. Annual budgets can be made with these results in mind. And more elaborate and possible concurrent efforts can be spun up, each using the same process.
The Wired Magazine article mentions that AI applied to some video games has shown to result in computers that play better than any human player, and they achieved this playing the game in a way no human ever would. This type of achievement in the business world would make or break companies. Trying to make sense of this technology can be tough. Applying a Design Thinking, iterative approach can make this much more manageable.
Next time, my blog will focus on the next two steps in our process, and continue to illustrate the iterative nature of this, as applied to various IoT technologies.