Sunday, July 14, 2019

How to adopt machine learning?

After reading past few posts there is no doubt that any organization can take advantage of machine learning by applying machine learning to their business process. The significance of machine learning will depend on how it is applied and what kind of problem we are trying to solve with it. The results also depend on the experience of the data scientists and software engineers, along with the adoption of technology.

In this post, we will discuss about the machine learning development life cycle and see how any organization can build a team to solve their business problem with machine learning. Let's get started with the following image in mind:



From the above figure we can see that the machine learning process is a continuous process of extracting data from a variety of sources and then feeding into machine learning engines that generate the model. These models are plugged into the business process to produce results. The results from the models are fed into the process to solve business problems. These models can produce results independently as well at the edge, depending on their usage.

Now, the critical question is to understand how a machine learning development life cycle looks? What kind of talent is required to pull it off? What do these teams do while building and applying machine learning?

We will get the answers to above questions as we progress further. But first lets look at the machine learning development life cycle process in the figure shown below:


If we look at the machine learning development life cycle image above, we will see the following paradigms:

1. Collect data from various resources.
2. After collecting data, making it machine learning-ready.
3. The machine learning-ready data is feed into the "building machine learning" process where a data      science team works on data to produce results.

We can also notice that "building machine learning" process is very data science-heavy work. However, applying machine mainly involves the software engineering process. We can use the above figure to understand the technical resources needed to implement an end-to-end machine learning pipeline for any organization.

There are a few questions which involves the separation of building machine learning and applying machine learning. How are these two processes different? What are the end results of the machine learning process and how does software engineering apply?

The product of the "building machine learning" process is the model that an enterprise or business uses as the final product. This model shown below is ready to produce results as needed.



The model can be applied to various consumer, enterprise, and industrial use cases to provide edge-level intelligence, or in process intelligence, where model results are fed into another process. Sometimes, the model is fed into another machine learning process to generate further results.

Once we understand the significance of key individuals in the end-to-end machine learning process, the next question is, what do the key individuals do in the day-to-day process? How do they really engage in the process of building machine learning? What kind of tools and technology do they adopt or create to solve organizations' business problems?

To understand the kind of work data scientists do when building machine learning, we should understand that their main focus is to use and apply as many machine learning engines as needed along with various algorithms to solve the specific problem. Sometimes, they create something brand new to solve the problem because there is nothing available, and sometimes, they just need to improve an available solution.



The above image puts together the conceptual idea of various engines and could be used by a team of data scientists to accomplish their task.

The role of software engineering is critical to the overall machine learning pipeline. They help speed up and refine the data science process to generate faster results while applying the software engineering methods of data science.

The image below explains how software engineers can expedite the work of data scientists by creating fully automated machine learning systems that perform the repetitive tasks of data scientists in a fully automated fashion. At this point, data scientists can use their time to solve newer problems and just need to keep an eye on the automated system to make sure it's working as expected.



Various organizations such as Google (CloudML) and H2O (AutoML) have created automated machine learning software that can be utilized by any organization. There are also open-source packages available, i.e. Auto-SKLearn or TPOT.

Any organization can follow the above details to adopt machine learning into their organization and generate expected results. By investing in ML, your business will gain the ability to continuously analyze this high volume of granular and extremely diverse unstructured data, gaining a strong competitive advantage. Still wondering why Businesses should Adopt Machine Learning? We'll have an insight in our next post.

Share:

0 comments:

Post a Comment