Saturday, August 24, 2024

What is Machine Learning? (Learn From Instructors From Google)

To Watch All Python Videos: YouTube Academy For Python






Machine learning: A program or system that trains a model from input data. The trained model can make useful predictions from new (never-before-seen) data drawn from the same distribution as the one used to train the model. Machine learning also refers to the field of study concerned with these programs or systems. [ Ref ]

What is Machine Learning as per Tom Mitchell?

Tom Mitchell, one of the pioneers of machine learning, provided a widely accepted formal definition of machine learning in his book "Machine Learning" (1997):

"A computer program is said to learn from experience EE with respect to some class of tasks TT and performance measure PP, if its performance at tasks in TT, as measured by PP, improves with experience EE."

Explanation of the Definition:

  • Task TT: This is the specific task that the program is designed to perform. For example, predicting house prices, recognizing images of animals, or classifying emails as spam or not spam.

  • Experience EE: This refers to the data or experience the program is exposed to. For instance, this could be past house price data, labeled images of animals, or emails previously classified as spam or not spam.

  • Performance Measure PP: This is a way to measure how well the program is doing at the task. For example, it could be the accuracy of predictions, error rates, or any other metric appropriate for the task.

In essence, machine learning is about creating programs that improve their performance at certain tasks based on data (experience), without being explicitly programmed to perform those tasks.

What are your thoughts on this definition: Traditional programming is getting output from input data and rules. Machine Learning is getting the rules back for input and resultant data.

Your definition is a succinct and intuitive way to distinguish traditional programming from machine learning. Here's a deeper analysis:

Traditional Programming:

  • Definition: Traditional programming involves writing explicit rules or instructions for the computer to follow in order to process input data and produce the desired output.
  • Process: You provide:
    1. Input data
    2. Rules (defined by the programmer)
    3. Output (computed by applying the rules to the input)

Machine Learning:

  • Definition: In machine learning, instead of explicitly coding the rules, the model learns these rules or patterns from the data. The goal is to find an underlying function or model that best maps the input data to the output (results).
  • Process: You provide:
    1. Input data
    2. Output data (results)
    3. The machine learning algorithm finds or "learns" the rules (or model) that map the input to the output.

Key Differences:

  • Rules vs. Learning:
    • In traditional programming, rules are manually coded based on the programmer's understanding.
    • In machine learning, the model autonomously learns the rules or patterns from the data through training.

Example:

  • Traditional Programming: If you want to classify an email as spam, you'd write explicit rules like "If the email contains the word 'free' more than twice, classify it as spam."

  • Machine Learning: You'd provide a machine learning model with a large set of labeled emails (some marked as spam, some not), and the model would automatically figure out what features (words, patterns) are indicative of spam without explicitly coding the rules.

Summary:

Your definition captures the essence of machine learning well: instead of manually defining the rules (as in traditional programming), machine learning infers these rules from data. It's a shift from deterministic rule-based systems to data-driven pattern recognition, enabling more complex, adaptive solutions.

Tags: Machine Learning,Technology,

No comments:

Post a Comment