© Leila Etaati 2019
Leila EtaatiMachine Learning with Microsoft Technologieshttps://doi.org/10.1007/978-1-4842-3658-1_20

20. Overview of Microsoft Machine Learning Tools

Leila Etaati1 
(1)
Aukland, Auckland, New Zealand
 

The last 19 chapters were an overview of how you can undertake machine learning with different Microsoft products. First, an introduction to machine learning approaches, such as descriptive, predictive, and prescriptive analytics, was provided. The R language, as one of the principal languages for machine learning was then discussed. Following was a brief explanation of how to do machine learning using such tools as Power BI, Azure ML Studio, SQL Server, and others.

This chapter offers a summary of machine learning technologies and best practices when using particular approaches.

Overview of Microsoft Machine Learning Technologies

Artificial intelligence (AI), and specifically machine learning, can bring lots of benefits to businesses. Many have been using Microsoft data platform tools for years. Microsoft employed machine learning to create such products such as Xbox, Bing Search, and others. However, from 2014, Microsoft began to provide a facility for power users and end users to embed machine learning in their reports and software.

Previous chapters categorized the relevant Microsoft tools, based on the way machine learning is used. In this chapter, technologies are categorized according to the following:
  • The need to write R or Python code

  • Cloud or on-premises computing

The first classification is based on the degree to which these tools are easy to use and accurate.

We can classify the associated products into two main groups:
  • Pre-built AI: Microsoft machine learning tools that do not require that you write any R or Python code to generate a machine learning scenario.

  • Custom AI: Microsoft machine learning tools that require you to know how to write R or Python code

The first group is easy to use, and you need only follow the instructions provided. The main benefit of using pre-built AI tools is that there is no need to know the machine learning concepts, or at least by knowing some, most anyone is able to create an AI application. Pre-built AI tools can address general problems and issues, but for some business problems, other categories of tools (e.g., for writing R or Python code) are more efficient. In this book, the Cognitive Services (Chapter 18) and Bot Framework (Chapter 19) are the tools that you can embed in Power BI, Windows, or other web applications without writing any R or Python code. As mentioned in the relevant chapters, there is no direct way to access the code behind pre-built custom AI tools, so there is no way to alter that code and change the algorithms.

In contrast, to use Custom AI tools requires knowing how to code and how to write code for the purpose of machine learning. However, for some tools, such as Azure ML Studio, it is possible to conduct machine learning without writing R or Python code, although at least some understanding of how machine learning works is necessary. Some Custom AI tools address writing R or Python code inside other Microsoft tools, such as R or Python in
  • Power BI (Chapters 6, 7, and 8)

  • SQL Server 2016 for R Services and SQL Server 2017 for Machine Learning (ML) Services (Chapter 9)

  • Azure Data Lake Analytics (Chapter 11)

  • Azure Databricks (Chapter 10)

  • Azure HDInsight (Chapter 15)

  • .NET applications (Chapter 13)

  • And others

For Azure machine learning tools, it is possible to write R or Python code as well. In addition, the drag-and-drop environment is quite easy to use.

The second classification is about cloud vs. on-premises AI tools. Many companies still prefer to keep their tools on-site, while some others prefer to move all their business products to the cloud. Between the two, some companies have both cloud and on-premises tools.

If the main strategy of a company is to keep everything on-premises, using Power BI or SQL Server for writing R or Python can be more suitable. However, if the preference is to do machine learning in the cloud, the Azure ML Studio (Chapter 12), for writing R or Python on Databricks, and Azure Data Analytics can be most helpful.

The third categories of tools address solutions to business problems. The nature of a problem and the scenario that we want to enrich with AI also matter when selecting specific tools, for example
  • Applying machine learning on Internet of things (IoT) use case scenarios

  • Using Text Analytics, speech, images, and so forth, for analysis

  • Applying machine learning to an ETL (extract, transform, load) project

  • Fast tracking a prototype for a client with Azure Machine Studio

IoT Scenario

Analyzing real-time data is a need that has been addressed by such Microsoft tools as Event Hub, Stream Analytics (Chapter 13), Databricks (Chapter 10), and others. With Power BI, it is possible to create a live stream report based on the real data that flows from sensors, applications, and so forth.

For most of this scenario, there is a need to identify anomalies in the data or classify prospective data into different groups. By using Azure Machine Learning with Stream Analytics or Databricks, we can apply machine learning to IoT scenarios.

Image, Text, and Voice Analytics

There are different tools for image, text, and voice analytics in the Microsoft stack. Cognitive Services (Chapter 18) is one of the popular tools for text, voice, and image analytics that provides APIs to use in other applications.

However, it is also possible to do image processing and voice recognition using the CNTK platform, which is covered in Chapter 17. These Microsoft packages and libraries provide facilities for developers to employ for performing machine learning with a deep learning approach.

Machine Learning on ETL

Another possible requirement is to apply machine learning to data that has been loaded and transformed with the aim of visualization and creating reports. There is always a need to apply some descriptive or predictive analytics on data before showing it to the final users. As a result, those who use Power BI self-service BI can leverage the machine learning, using R and Python scripts to make reports more insightful. Another approach is to use R or Python in SQL Server 2016 or 2017. In addition, if the data is on the cloud, it is possible to use Databricks for ETL and machine learning at the same time.

Machine Learning Prototype

For companies that want to use machine learning on their data for the first time, Azure Machine Learning Studio is a great tool that demonstrates the real process of machine learning, from collecting data to training and testing models. Moreover, managers and stakeholders are able to fast track the machine learning process and see how it can be used as an API in other applications or a simple Excel file.

To sum up, tool selection for machine learning depends on the architecture being used, how much effort is willing to be expended on programming, and what scenario is to be put in place. Tools related to the first requirement are based on pre-built AI and custom AI. Those for the second depend on the current architecture in place, whether on-premises or cloud-based. Finally, the last requirement to consider relates to appropriate tools for a specific scenario that is to be implemented, such as for IoT, ETL, or prototype creation.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.222.164.246