What’s even more mind boggling is that an emotionally intelligent AI could help support astronauts making the trip to Mars, according to https://www.technologyreview.com/2020/01/14/64990/an-emotionally-intelligent-ai-could-support-astronauts-on-a-trip-to-mars/
. Oddly enough, an astronaut could require support from an entity that isn’t emotionally involved in the grueling activities of working in tight spaces with the same people for a long time. Think about it: The AI would never get upset.
Eventually, someone will be able to describe a problem in sufficient detail that a specialized program can create the necessary algorithm using an appropriate language. In other words, average people will eventually begin creating new machine learning environments based on ideas they have and want to try. As with creating machine learning tasks, people who create future environments will be experts in their particular craft, rather than be computer scientists or data scientists. Solving the science of machine learning will eventually turn into an engineering exercise that will give anyone with a good idea the required access.
Avoiding the Potential Pitfalls of Future Technologies
Any new technology comes with potential pitfalls. The higher the expectations for that technology, the more severe the pitfalls become. Unrealistic expectations cause all sorts of problems with machine learning because people think that what they see in movies is what they’ll get in the real world. It’s essential to remember the basic concepts presented in Chapter 1 — that machine learning algorithms currently can’t feel, think independently, or create anything. Unlike those movie AIs, a machine learning algorithm does precisely what you expect it to do, nothing more. Of course, some of the results are amazing, but keeping expectations in line with what the actual technology can do is important. Otherwise, you’ll promise something that the technology can never deliver, and those adherents whom you were expecting will go looking for the next big thing.
In fact, the uses for machine learning today are quite narrow. As described in the article at https://www.linkedin.com/pulse/machine-learning-its-hard-problems-valuable-toby-coppel
, narrow AI, such as the business use of AI to gain insights into huge datasets, relies on well-understood techniques that companies have started to employ within the past decade. The machine can’t infer anything, which limits the use of the machine to the task for which the developer or data scientist designed it. In fact, a good analogy for today’s algorithms is that they’re like a tailored shirt (see the article at https://www.computerworld.com/article/3006525/cloud-computing/why-microsofts-data-chief-thinks-machine-learning-tools-are-like-tailored-shirts.html
for more details). You need specialized skills to create an algorithm that is tailored to meet specific needs today, but the future could see algorithms that can tackle nearly any task. Companies that rely on narrow AI need to exercise care in how they develop products or services. A change in product or service offerings might place the data used for the machine learning environment outside the learner algorithm’s domain, reducing the output of the machine learning algorithm to gibberish (or at least making it unreliable).
Using machine learning in an organization also requires that you hire people with the right set of skills and create a team. Machine learning in the corporate environment, where results mean an improvement in the bottom line, is relatively new. Companies face challenges in getting the right team together, developing a reasonable set of goals, and then actually accomplishing those goals. To attract a world-class team, your company has to offer a problem that’s exciting enough to entice the people needed from other organizations. It isn’t an easy task, and you need to think about it as part of defining the goals for creating a machine learning environment.
Part 2
Preparing Your Learning Tools
IN THIS PART …
Creating a Python setup
Performing basic Python tasks
Using Google Colab
Chapter 4
Installing a Python Distribution
IN THIS CHAPTER
Determining which Python distribution to use for machine learning
Performing a Linux, Mac OS X, and Windows installation
Obtaining the datasets and example code
Before you can do too much with Python or use it to solve machine learning problems, you need a workable installation. In addition, you need access to the datasets and code used for this book. This chapter tells you how to perform the required Python setups and downloads. Downloading the sample code (found at this book’s page at www.dummies.com
) and installing it on your system is the best way to get a good learning experience from the book. This chapter helps you get your system set up so that you can easily follow the examples in the remainder of the book.
Using the downloadable source code doesn’t prevent you from typing the examples on your own, following them using a debugger, expanding them, or working with the code in all sorts of ways. The downloadable source code is there to help you get a good start with your machine learning and Python learning experience. After you see how the code works when it’s correctly typed and configured, you can try to create the examples on your own. If you make a mistake, you can compare what you’ve typed with the downloadable source code and discover precisely where the error exists. You can find the downloadable source for this chapter in the
ML4D2E; 04; Sample.ipynb
and ML4D2E; 04; Dataset Load.ipynb
files. (The Introduction tells you where to download the source code for this book.)
The downloadable source also provides access to the examples written as R variants. Although the Python code appears in the ML4D2E
(for Machine Learning For Dummies, 2nd Edition) folder of the downloadable source, the R code appears in the ML4D2ER
(for Machine Learning For Dummies, 2nd Edition, R code) folder. The R examples don't always precisely follow the Python examples because of the differences in the two languages, but the R examples are heavily annotated so that you can follow along. Using either language will allow you to reach the desired result.
Using Anaconda for Machine Learning
You can use a number of packages to perform machine learning tasks. In fact, too many exist to discuss adequately in a single chapter. To make it easier for you to focus on machine learning rather than a software package, the first section that follows tells you how to obtain your copy of Anaconda, the Anaconda3-2020.07 version. This book uses Anaconda for a number of reasons, as explained in the next section. However, if you’re using a platform where the installation process doesn’t work well (or possibly at all), you can also follow along