Machine Learning for Beginners - 2nd Edition: Build and deploy Machine Learning systems using Python (English Edition)
()
About this ebook
The book begins with an introduction to the foundational principles of machine learning, followed by a discussion of data preprocessing. It then delves into feature extraction and feature selection, providing comprehensive coverage of various techniques such as the Fourier transform, short-time Fourier transform, and local binary patterns. Moving on, the book discusses principal component analysis and linear discriminant analysis. Next, the book covers the topics of model representation, training, testing, and cross-validation. It emphasizes regression and classification, explaining and implementing methods such as gradient descent. Essential classification techniques, including k-nearest neighbors, logistic regression, and naive Bayes, are also discussed in detail. The book then presents an overview of neural networks, including their biological background, the limitations of the perceptron, and the backpropagation model. It also covers support vector machines and kernel methods. Decision trees and ensemble models are also discussed. The final section of the book provides insight into unsupervised learning and deep learning, offering readers a comprehensive overview of these advanced topics.
By the end of the book, you will be well-prepared to explore and apply machine learning in various real-world scenarios.
Related to Machine Learning for Beginners - 2nd Edition
Related ebooks
Applied Deep Learning: Design and implement your own Neural Networks to solve real-world problems (English Edition) Rating: 0 out of 5 stars0 ratingsPythonic AI: A beginner's guide to building AI applications in Python (English Edition) Rating: 5 out of 5 stars5/5Hands-on ML Projects with OpenCV: Master computer vision and Machine Learning using OpenCV and Python Rating: 0 out of 5 stars0 ratingsIoT Data Analytics using Python: Learn how to use Python to collect, analyze, and visualize IoT data (English Edition) Rating: 0 out of 5 stars0 ratingsMachine Learning for Education: Revolutionizing the way we learn and teach (English Edition) Rating: 0 out of 5 stars0 ratingsData Visualization with Python: Exploring Matplotlib, Seaborn, and Bokeh for Interactive Visualizations (English Edition) Rating: 0 out of 5 stars0 ratingsDeep Learning for Data Architects: Unleash the power of Python's deep learning algorithms (English Edition) Rating: 0 out of 5 stars0 ratingsLearn Python Generative AI: Journey from autoencoders to transformers to large language models (English Edition) Rating: 0 out of 5 stars0 ratingsPractical Machine Learning for Data Analysis Using Python Rating: 0 out of 5 stars0 ratingsPragmatic Machine Learning with Python: Learn How to Deploy Machine Learning Models in Production Rating: 0 out of 5 stars0 ratingsMastering Machine Learning: A Comprehensive Guide to Success Rating: 0 out of 5 stars0 ratingsOperationalizing Machine Learning Pipelines: Building Reusable and Reproducible Machine Learning Pipelines Using MLOps Rating: 0 out of 5 stars0 ratingsArtificial Intelligence and Deep Learning for Decision Makers Rating: 0 out of 5 stars0 ratingsHands-on Supervised Learning with Python Rating: 0 out of 5 stars0 ratingsDemystifying Artificial intelligence: Simplified AI and Machine Learning concepts for Everyone (English Edition) Rating: 0 out of 5 stars0 ratingsDigital Image Processing: Fundamentals and Applications Rating: 0 out of 5 stars0 ratingsRake Task Management Essentials Rating: 3 out of 5 stars3/5.NET Mastery: The .NET Interview Questions and Answers Rating: 0 out of 5 stars0 ratingsMachine Learning in Production: Master the art of delivering robust Machine Learning solutions with MLOps (English Edition) Rating: 0 out of 5 stars0 ratings
Intelligence (AI) & Semantics For You
2084: Artificial Intelligence and the Future of Humanity Rating: 4 out of 5 stars4/5Artificial Intelligence: A Guide for Thinking Humans Rating: 4 out of 5 stars4/5Creating Online Courses with ChatGPT | A Step-by-Step Guide with Prompt Templates Rating: 4 out of 5 stars4/5Mastering ChatGPT: 21 Prompts Templates for Effortless Writing Rating: 5 out of 5 stars5/5101 Midjourney Prompt Secrets Rating: 3 out of 5 stars3/5ChatGPT For Fiction Writing: AI for Authors Rating: 5 out of 5 stars5/5Dark Aeon: Transhumanism and the War Against Humanity Rating: 5 out of 5 stars5/5Our Final Invention: Artificial Intelligence and the End of the Human Era Rating: 4 out of 5 stars4/5Impromptu: Amplifying Our Humanity Through AI Rating: 5 out of 5 stars5/5Chat-GPT Income Ideas: Pioneering Monetization Concepts Utilizing Conversational AI for Profitable Ventures Rating: 4 out of 5 stars4/5Summary of Super-Intelligence From Nick Bostrom Rating: 5 out of 5 stars5/5ChatGPT Ultimate User Guide - How to Make Money Online Faster and More Precise Using AI Technology Rating: 0 out of 5 stars0 ratingsThe Secrets of ChatGPT Prompt Engineering for Non-Developers Rating: 5 out of 5 stars5/5What Makes Us Human: An Artificial Intelligence Answers Life's Biggest Questions Rating: 5 out of 5 stars5/5Midjourney Mastery - The Ultimate Handbook of Prompts Rating: 5 out of 5 stars5/5The Business Case for AI: A Leader's Guide to AI Strategies, Best Practices & Real-World Applications Rating: 0 out of 5 stars0 ratingsWays of Being: Animals, Plants, Machines: The Search for a Planetary Intelligence Rating: 4 out of 5 stars4/5Discovery Writing with ChatGPT: AI-Powered Storytelling: Three Story Method, #6 Rating: 0 out of 5 stars0 ratingsAI for Educators: AI for Educators Rating: 5 out of 5 stars5/5The Algorithm of the Universe (A New Perspective to Cognitive AI) Rating: 5 out of 5 stars5/5ChatGPT For Dummies Rating: 0 out of 5 stars0 ratingsDancing with Qubits: How quantum computing works and how it can change the world Rating: 5 out of 5 stars5/5
Reviews for Machine Learning for Beginners - 2nd Edition
0 ratings0 reviews
Book preview
Machine Learning for Beginners - 2nd Edition - Dr. Harsh Bhasin
Section I: Fundamentals
By far, the greatest danger of Artificial Intelligence is that people conclude too early that they understand it.
—Eliezer Yudkowsky
C
HAPTER
1
An Introduction to Machine Learning
Introduction
When you turn on the location on your mobile, upload your pictures on Facebook or Instagram, fill out online forms, browse websites, or even order items from apps, your data is collected. What do companies do with this huge data? They analyze it and find your preferences and this helps them in targeted marketing. The advertisements being shown to you generally depend on the data collected. This data helps marketing professionals lure you into buying something you need or are even remotely interested in. Likewise, the dispensation may keep track of suspicious activities using this data, may track the source of transactions, or gather other important information. However, this is easier said than done. The analysis of this huge data cannot be done using conventional methods.
To understand this, let us consider another example. Suppose Hari visits YouTube every day and watches videos related to Indian Classical Music, Hindi Poetry, and watch Lizzie McGuire. His friend Tarush goes to YouTube and watches Beer Biceps and other videos related to workouts. After some time, YouTube starts suggesting different videos to both of them. While Hari is shown a video related to Lizzie McGuire’s reboot or Dinkar, in the recommended videos list, Tarush is shown the recommendations of videos related to workouts. This is done using a Machine Learning algorithm that uses the profile information, context, and the video being watched.
Machine Learning comes to the rescue of those wanting to analyze huge amounts of data, predict trends, find patterns, and so on. It is currently being used to diagnose diseases, for surveillance, for developing automated vehicles, etc. This chapter introduces Machine Learning, discusses the types of Machine Learning, and gives a brief overview of its history. This chapter also presents an overview of the history of Machine Learning and its applications.
Structure
The main topics covered in this chapter are as follows:
Conventional Algorithm and Machine Learning
Types of Learning
Working
Applications of Machine Learning
History of Machine Learning
Some exciting tools that use AI
Objectives
After reading this chapter, the reader will be able to understand the definition and types of Machine Learning. The reader will be introduced to the ML pipeline and apprised of the applications of Machine Learning. The chapter also gives a brief overview of the history of Machine Learning. Finally, we will have a look at some of the exciting tools based on Machine Learning capable of creating images, generating music, and so on.
Conventional Algorithm and Machine Learning
The algorithmic solution of a problem requires the input data and a program to produce an output. Here, a program is a set of instructions and output is generated by applying those instructions to the input data. In a Machine Learning Algorithm, the system takes the Input Data along with the examples of Output (in the case of supervised learning) and creates a model, which establishes (or tries to establish) some relation between the input and the output. Learning, in general, is improving the outcome using experience (E). How do we know that we have improved? The performance measure tells the performance of our model. As per Tom Michel, Machine Learning can be defined as follows:
If the performance measure (P) improves with experience on task (T), then the system is said to have learned.
Here, the Task (T) can be Classification, Regression, clustering, and so on. The data constitutes Experience (E). The Performance Measure (P) can be any accuracy, specificity, sensitivity, F measure, Sum of Squared errors, and so on. These terms will be defined as we proceed. To understand this, let us consider an example of disease classification, using Magnetic Resonance Imagining. If the number of patients correctly classified (accuracy) as diseased is considered a performance measure, then this problem can be defined as follows:
T: Classify given patients as diseased or not diseased
P: Accuracy
E: The MRI images of a patient
The task will be accomplished by pre-processing the given data, extracting relevant features from the pre-processed data, selecting the most important features, and applying a classification algorithm followed by post-processing. In general, a Machine Learning pipeline constitutes the following steps, as shown in Figure 1.1:
Figure 1.1: Machine Learning Pipeline
These terms will become clear in the following chapters. The following chapters will discuss pre-processing, Feature Selection, Feature Extraction, and supervised learning techniques. Having seen the definition of Machine Learning, let us now have a look at its types.
Types of Learning
Machine Learning can be classified as Supervised, Unsupervised, Semi-Supervised, and reinforcement. Let us understand these terms before proceeding any further.
Supervised Machine Learning
This type of learning uses the labels of the data in the training-set to predict the label of a sample in the test-set. The training set acts as a teacher in this type of algorithm, which supervises the training process. The data in these algorithms contain samples and their correct labels. The training process tries to uncover the pattern hidden in the data. That is, the learning aims to relate the label Y with the data X as y = f(x), where x is a sample, and y is the label.
If this label is a discrete value, then the process is termed Classification. If y is a real value, then it is called Regression. Regression and classification algorithms have been discussed in the following chapters.
Examples of classification are face detection, voice detection, object detection, and so on. Classification essentially means placing the given sample into one of the predefined categories. Examples of regression include predicting the price of a commodity, predicting temperature, housing price, and so on.
Unsupervised Learning
This type of learning uses input Data(X) but no labels. The learning aims to learn about the data by grouping the like samples or by deducing the associations. Since there is no teacher involved in the algorithm, it is called Unsupervised Learning. Clustering and association come under Unsupervised Learning. Clustering uncovers the groupings in the data. Association, on the other hand, uncovers the rules which associate with the events.
Semi-supervised Learning
There is something in between supervised and unsupervised learning. This is called semi-supervised learning. In this type of learning, a part of the input data may be labeled. Many practical problems fall into this category.
Reinforcement Learning
In some problems, the sequence of the steps is important, but the individual steps are not that important. The goodness of a sequence is determined by whether a particular sequence helps to reach the goal or not. The ML algorithm, in this case, tries to find the correct sequence of steps that helps it to achieve a given goal. During this process, the failure is penalized, and a good move
is awarded. This is like training a dog. Assume that you have a puppy and decide to teach Getting newspaper from the doorstep
to it. If, while teaching, he gets the newspaper to you, you award it with treats, whereas if he tears apart the newspaper, you say Bad Puppy
to it. It will eventually learn the task. The same trick is used to train drones, automated vehicles, and to a certain extent, robots.
Applications
Machine Learning is an involved task and along with other things, it also requires algorithms that learn from data. Machine Learning has successfully been applied in many domains and disciplines. From Social Science to Drug Development, ML has proved its mettle everywhere. It is creating history and we are a part of this history. Let us just not watch it, let us live this history and immerse ourselves in ML. Some of the applications of Machine Learning are as follows:
Natural Language Processing
NLP aims to process and understand the Natural Language. It involves linguistics, engineering, and Artificial Intelligence. The advancements in ML have greatly helped the field. One of the fascinating examples of the advancement in this field is Alexa, voice assistance by Amazon.
Weather Forecasting
This discipline aims at predicting the weather conditions at a particular location, using the past data available. It may be stated that even before the advent of Machine Learning, or even computers, the weather was being predicted. However, the latest technologies have helped improve this prediction.
Robot Control
As per the literature review, the mechanical parts of the robot are generally controlled by software. This software may fail if it does not update itself with time or learn. At this point, ML comes into play. ML helps a robot in taking intelligent decisions using the training data.
Speech Recognition
Speech recognition aims at the translation of spoken languages by computers. It requires computational linguistics and Computer Science. This field helps in understanding speech.
Business Intelligence
The data collected by a company must be converted into a form, which helps us in making decisions. This field helps in analyzing data to create the following:
Reports
Graphs
Dashboards
The above helps in generating actionable insights into the data. Along with the above, ML has been successfully used in diagnosing diseases using medical imaging and many other things. So, Machine Learning is interesting. Let us have a brief look at how the story started.
History
One of the central characters in this play is the Neural Network. The story of this character started when Warren McCulloch and Walter Pitts published a paper explaining the working of Neurons in 1943. They created an electric circuit for this model. The model laid the foundation for Machine Learning. This model is discussed in Chapter 4, Feature Extraction.
Alan Turing, in the 1950s, worked on a seminal paper called COMPUTING MACHINERY AND INTELLIGENCE, which analyzed the question, "Can Machines Think?". He proposed that if a computer can convince a person that it is a human, it is deemed to be intelligent. This is called the Turing Test. This test laid the foundation of Artificial Intelligence, of which Machine Learning is a part [1] .
In the 1950s, Samuel designed a program for playing Checkers. The program was fascinating as it did manage to get ahead of its creator. The program used heuristic search techniques. The first version of the program was released in 1955 [2] , and the subsequent versions achieved enhanced proficiency. Samuel decided to work on Checkers as it was simple to understand but difficult to master. This is true for most games, including Chess. This is the reason that Game Theory is given importance in Artificial Intelligence. Coming back to the Checkers program, it used heuristic search methods to search the tree, which used a linear function to evaluate a move.
The McCulloch-Pitts model was also being studied and analyzed. The perceptron model was created by Rosenblatt in 1958. The researchers came up with novel ways to handle the inability of these models to detect non-linearly separable data. John Hopfield created a network that had bidirectional lines in 1982.
The development of Multi-Layer Perceptron helped in classifying the non-linearly separable data also. The discipline got a boost with the invention of Support Vector Machines, which did not need the whole data to create a separating hyperplane and were based on the concept of maximum margin classifier.
1957 saw the advent of the perceptron model. This model was proposed by Rosenblatt and is considered a Seminal work in Neural networks. Later, in the year 1959, Bernard Widrow and Hoff proposed two algorithms, one for binary classification and the other for removing noise in the audio. These were called Adeline and Madeline.
In 1967 the Nearest Neighbour algorithm was proposed. This is one of the simplest yet most powerful algorithms of the time. 1981 saw the advent of the Explanation based theory. The 1980s is generally known for the work on Decision Trees. The Support Vector Machine was proposed in the 1990s by Vapnik. In fact, he worked on it in his Ph. D., but the SVM was popularized when he moved to the States.
The second half of the ’90s witnessed some amazing inventions. IBM developed Deep Blue in 1997, which was a chess-playing computer. This was followed by the development of tools that could handle large data and hardware which could process faster.
Currently, we are in the Deep Learning Age. GoogleBrain was developed in 2012. This was a deep neural network created by Jeff, which focused on pattern detection in images and videos.
AlexNet was also developed in 2012. It won the ImageNet competition by a large margin in 2012, which led to the use of GPUs and Convolutional Neural Networks in Machine Learning. DeepFace was developed in 2014. This is a Deep Neural Network created by Facebook, which they claimed can recognize people with the same accuracy as a human can. The research in the field of ML and DL continues and will hopefully, amaze us in the near future also.
The journey has been summarized in Figure 1.2:
Figure 1.2: A Brief History of Machine Learning
Let us now have a look at two amazing case study which underlines the importance of Machine Learning in this day and age.
Case Study I - YouTube Recommendation System
Hari likes Indian classical music. He has an ear for classical, classical-based, and melodious light songs. During his work-from-home days, in the pandemic era, he gets a recommendation of songs from a series called "Bandish Bandits". He watches the videos on YouTube, likes them, and finds them interesting. Subsequently, he decides to watch this series on Amazon Prime. After watching the series, he decides to watch Spiderman on the platform, after which he starts getting recommendations of other Spiderman movies on the platform. Now, he starts watching videos related to Spiderman on YouTube. His recommendations on YouTube have now changed. He now gets a mix of the two genres as recommendations. Furthermore, he watches all these videos in the evening. In the morning, he listens to devotional songs and gets the recommendations likewise.
YouTube uses a recommendation system to suggest which videos to watch next. Recommendation systems are also used in many other applications like Amazon, Netflix, and so on. These systems track the video recently watched, the context, and the user profile as the input and generate the recommendations. The systems are really interesting. As in the case of the above example, they can suggest videos based on the time of the day, like suggesting devotional songs to Hari in the morning; the month(s) of the year, for example, suggesting appropriate songs around Bhadrapada; day of the month and so on. This is an example of recommendations based on context. Likewise, while recommending the video, the profile of the user is also taken into consideration. How these recommendations are ranked is also very interesting. From the billion videos present on the platform, how do you get appropriate recommendations? The system is based on hierarchical ranking. Furthermore, the algorithm learns as you watch more and more videos. Your taste for music may evolve; your recommendations will also change accordingly. Also, the system will try to show you the video which you like (not dislike), so it can be perceived as a classification problem. The system predicts the length of the video you are most likely to watch, so it is a regression problem. As a matter of fact, there is a blend of unsupervised learning also. We will study such problems later in the chapter.
There is a flip side to this system, though. If you start watching a particular type of video, the recommendation system starts suggesting the same kind of videos. This may create a cocoon around you, which will only show what you like to see.
Let us analyze the problem:
Problem: Recommending videos
Input: Current video, context, and user profile
Output: A set of recommended videos
Type: Supervised, unsupervised
Case Study II - Detection of Alzheimer’s Disease
In recent years the betterment of healthcare amenities has increased life expectancy. Subsequently, there has been a striking rise in the probability of getting an age-related disease[3]. Dementia is one such age-related disease and Alzheimer’s disease makes up the leading share of those tormented by dementia [4]. It leads to problems with memory, language, thinking, and judgment, that are much more than normal age-related changes[5]. Symptoms of early stages of dementia may advance to Alzheimer’s or another type of dementia. The headway towards dementia causes enormous affliction to the patient and his/her associates. This makes the diagnosis of early states of dementia utterly crucial so that appropriate steps can be taken for dawdling its headway towards dementia.
Early dementia can be detected by either clinical tests or brain scans. A medical professional can judge the cognitive and behavioral changes in a person and make a professional judgment about the presence or absence of this disease. Manual assessment of cognitive impairment requires considerable time, resources, and expertise, which is inopportune and may prove expensive to the patient. In the recent past, the computer aided diagnosis of dementia has fascinated the Machine Learning fraternity. These methods require lesser manual intervention of experts and may be proved to be inexpensive and at the same time, offer an improved visualization of the massive data judged against the manual methods.
Machine Learning has recently been used to detect the early stages of dementia. These methods used conventional feature extraction methods[6], recent Deep Learning Algorithms[7], and even NLP-based methods to successfully diagnose the early stages of dementia. Interested readers can refer to the Appendix and the References at the end of the book for a comprehensive discussion on this topic.
Fun with Machine Learning
We have seen what Machine Learning is, its types and some of its important applications. This section will give you an idea of what we have come to. We can use Machine Learning/ Deep Learning to draw cartoons, create pictures, generate music and analyze the data. Here are some of the tools which will help you to accomplish these