Headlines
Loading...
Machine learning • How do I learn machine learning? • some common machine learning interview questions?

Machine learning • How do I learn machine learning? • some common machine learning interview questions?

 


Machine learning - A field of study

queries cracked in this blog are:

1. What is machine learning?

2. How do I learn machine learning?

3. What are the possible careers in machine learning?

4. What are some of the best research papers or books for Machine learning?

5. What are some common machine learning interview questions?

6. Is machine learning difficult to learn?

7. What are some common machine learning interview questions?


Let's get started!!


Question 1.

  • What is machine learning?

Machine learning is a branch of artificial intelligence (AI) and computer science which focuses on the use of data and algorithms to imitate the way that humans learn, gradually improving its accuracy.

IBM has a rich history with machine learning. One of its own, Arthur Samuel, is credited for coining the term, “machine learning” with his research (PDF, 481 KB) (link resides outside IBM) around the game of checkers. Robert Nealey, the self-proclaimed checkers master, played the game on an IBM 7094 computer in 1962, and he lost to the computer. Compared to what can be done today, this feat almost seems trivial, but it’s considered a major milestone within the field of artificial intelligence. Over the next couple of decades, the technological developments around storage and processing power will enable some innovative products that we know and love today, such as Netflix’s recommendation engine or self-driving cars.

Machine learning is an important component of the growing field of data science. Through the use of statistical methods, algorithms are trained to make classifications or predictions, uncovering key insights within data mining projects. These insights subsequently drive decision-making within applications and businesses, ideally impacting key growth metrics. As big data continues to expand and grow, the market demand for data scientists will increase, requiring them to assist in the identification of the most relevant business questions and subsequently the data to answer them.

Other definition - 

Similar to how the human brain gains knowledge and understanding, machine learning relies on input, such as training data or knowledge graphs, to understand entities, domains, and the connections between them. With entities defined, deep learning can begin.

The machine learning process begins with observations or data, such as examples, direct experience, or instruction. It looks for patterns in data so it can later make inferences based on the examples provided. The primary aim of ML is to allow computers to learn autonomously without human intervention or assistance and adjust actions accordingly.

Question 2.

  • How do I learn machine learning?

First, we have to know how machine learning works?

UC Berkeley (link resides outside IBM) breaks out the learning system of a machine learning algorithm into three main parts.

  • A Decision Process: In general, machine learning algorithms are used to make a prediction or classification. Based on some input data, which can be labeled or unlabeled, your algorithm will produce an estimate of a pattern in the data.
  • An Error Function: An error function serves to evaluate the prediction of the model. If there are known examples, an error function can make a comparison to assess the accuracy of the model.
  • A Model Optimization Process: If the model can fit better to the data points in the training set, then weights are adjusted to reduce the discrepancy between the known example and the model estimate. The algorithm will repeat this evaluation and optimize the process, updating weights autonomously until a threshold of accuracy has been met.  

How can we learn?

My best advice for getting started in machine learning is broken down into a 5-step process:

Step 1: Adjust Mindset. Believe you can practice and apply machine learning.

  • What is Holding you Back From Your Machine Learning Goals?
  • Why Machine Learning Does Not Have to Be So Hard
  • How to Think About Machine Learning
  • Find Your Machine Learning Tribe

Step 2: Pick a Process. Use a systemic process to work through problems.

  • Applied Machine Learning Process

Step 3: Pick a Tool. Select a tool for your level and map it onto your process.

  • Beginners: Weka Workbench.
  • Intermediate: Python Ecosystem.
  • Advanced: R Platform.
  • Best Programming Language for Machine Learning

Step 4: Practice on Datasets. Select datasets to work on and practice the process.

  • Practice Machine Learning with Small In-Memory Datasets
  • Tour of Real-World Machine Learning Problems
  • Work on Machine Learning Problems That Matter To You

Step 5: Build a Portfolio. Gather results and demonstrate your skills.

  • Build a Machine Learning Portfolio
  • Get Paid To Apply Machine Learning
  • Machine Learning For Money
Note - Don't worry I will give you more!!
"The Machine Learning Mastery Method"

I teach a 5-step process that you can use to get your start in applied machine learning.

It is unconventional.

The traditional way to teach machine learning is bottom-up.

Start with the theory and math, then algorithm implementations, send you off to figure out how to start solving real-world problems.



The Machine Learning Mastery approach flips this and starts with the most valuable outcome.

It targets the outcome that business wants to pay for:

how to deliver a result.

A result in the form of a set of predictions or models that can reliably make predictions.

This is a top-down and results-first approach.

Starting with the goal of achieving the result that is most desirable in the marketplace, what is the shortest path to take you, the practitioner, to that result?


We can summarize this path in 5-steps as follows:

Step 1: Adjust Mindset (belief!).

Step 2: Pick a Process (how to get results).

Step 3: Pick a Tool (implementation).

Step 4: Practice on Datasets (put in the work).

Step 5: Build a Portfolio (show your skills).

That’s it.

It’s why I created this website. I knew an easier way and just had to share it.

Below is a cartoon to illustrate the process, where step 1 (on mindset) and step 2 (on show your work) are omitted for brevity.


Let’s take a closer look at each step.

Step 0: Landmarks

Before we begin, you must know the landmarks of machine learning.

I often just assume this, but you cannot proceed unless you know some true basics.


For example:

  • You should know what machine learning is and be able to explain it to a colleague
  • You should know some examples of machine learning problems off the top of your head
  • You should know that machine learning is the only way to solve some complex problems.
  • You should know that predictive modeling is the most useful part of applied machine learning.
  • You should know where machine learning fits concerning AI and Data Science
  • You should know the types of machine learning algorithms available.
  • You should know some basic machine learning terms

Step 1: Mindset

Machine learning is not just for the professors.
It is not just for the gifted or the academics.
You Must Believe

You can learn the topic and apply it to solve problems.

There’s no reason why not.

  • You do not need to write code.
  • You do not need to know or be good at math.
  • You do not need a higher degree.
  • You do not need big data.
  • You do not need access to a supercomputer.
  • You do not need a lot of time.

Really, there is only one thing that can stop you from getting started and getting good at machine learning.

It’s you.

  • Maybe you just can’t find the motivation.
  • Maybe you think you have to implement everything from scratch.
  • Maybe you keep picking advanced problems rather than beginner problems to work on.
  • Maybe you don’t have a systematic process to follow to deliver a result.
  • Maybe you’re not making use of good tools and libraries.
Clear the limiting beliefs stopping you from getting started.

There are a lot of speed bumps you can hit.

Identify them, address them, and keep moving.

Why Machine Learning?


Once you know that you can do machine learning, understand why.
  • Maybe you’re interested in learning more about machine learning algorithms.
  • Maybe you’re interested in creating predictions.
  • Maybe you’re interested in solving complex problems.
  • Maybe you’re interested in creating smarter software.
  • Maybe you’re even interested in becoming a data scientist.
Think hard on this topic and try and figure out your “why“.

Once you have your “why“, find your tribe.

Which group of machine learning practitioners do you have the most affinity for?
  • Maybe you’re a business person with a general interest.
  • Maybe you’re a manager delivering a project.
  • Maybe you’re a machine learning student.
  • Maybe you’re a machine learning researcher.
  • Maybe you’re a researcher with a sticky problem.
  • Maybe you want to implement algorithms
  • Maybe you need one-off predictions.
  • Maybe you need a model you can deploy.
  • Maybe you’re a data scientist.
  • Maybe you’re a data analyst.
Each tribe has different interests and will approach the field of machine learning from a different direction.

Not all books and materials are right for you, find your tribe, then find the materials that speak to you.

Step 2: Pick a Process


Do you want to reliably get above-average results on problem after problem?

You need to follow a systematic process.
  • Step 1: Define your problem.
  • Step 2: Prepare your data.
  • Step 3: Spot-check algorithms.
  • Step 4: Improve results.
  • Step 5: Present results.
Below is a nice cartoon to summarize this systematic process:

You do not have to use this process, but you do need a systematic process for working through predictive modeling problems.

Step 3: Pick a Tool

Pick a best-of-breed tool that you can use to deliver machine learning results.

Map your process onto the tool and learn how to use it most effectively.

There are three tools I recommend the most:

  • Weka Machine Learning Workbench (Perfect for beginners). Weka offers a GUI interface and no code is required.
  • Python Ecosystem (Perfect for intermediate). Specifically pandas and scikit-learn on top of the SciPy platform. You can use the same code and models in development and they are reliable enough to run-in operations.
  • R Platform (Perfect for advanced). R was designed for statistical computing, and although the language is arcane and some of the packages are poorly documented, it offers the most methods as well as state-of-the-art techniques.
I also have recommendations for specialty areas:

  • Keras for Deep Learning. It uses Python meaning you can leverage the whole Python ecosystem which saves a lot of time. The interface is very clean, whilst also supporting the power of the Theano and Keras back-ends.
    • XGBoost for Gradient Boosting. It is the fastest implementation of the technique around. It also supports both R and Python allowing you to leverage either platform in your project.

    These are just my personal recommendations and I have lots of posts as well as more detailed training on each.

    Learn how to use your chosen tool well. Study it. Become an expert in it.

    What Programming Language?

    The programming language does not matter.

    Even the tool you use does not matter.

    The skills you learn working through problems will transfer from platform to platform easily.

    Step 4: Practice on Datasets:

    Once you have a process and a tool, you need to practice.

    You need to practice a lot.

    Practice on standard machine learning datasets.
    • Use real-world datasets, collected from an actual problem domain (rather than contrived).
    • Use small datasets that fit into memory or an excel spreadsheet.
    • Use well-understood datasets so you know what kind of results to expect.
    Practice on different types of datasets. Practice on problems that make you uncomfortable as you will have to push your skills to get a solution. Seek out different traits in data problems, such as:
    • Different types of supervised learning such as classification and regression.
    • Different sized datasets from tens, hundreds, thousands, and millions of instances.
    • Different numbers of attributes from less than ten, tens, hundreds, and thousands of attributes.
    • Different attribute types from real, integer, categorical, ordinal, and mixtures.
    • Different domains that force you to quickly understand and characterize a new problem in which you have no previous experience.
    Use the UCI Machine Learning Repository
    These are the most used and best-understood datasets and the best place to start.

    Use machine learning competitions, such as Kaggle
    These datasets are often larger and require more preparation to model well.

    Practice on problems of your own devising

    Collect data on machine learning problems that matter to you.

    You will find the problems and the solutions you devise so much more rewarding.

    Step 5: Build a Portfolio

    You will build up a collection of completed projects.

    Put them to good use.

    As you work through datasets and get better, create semi-formal outputs that summarize your findings.

    Maybe upload your code and summarize it in a readme.

    • Maybe you write up your results in a blog post.
    • Maybe you make a slide deck.
    • Maybe you create a little video on youtube.
    Each one of these completed projects represents one piece of your growing portfolio.

    Just like a painter, you can build a portfolio of completed work to demonstrate your growing skills in delivering results with machine learning.

    You can use this portfolio yourself, leveraging code and knowledge in your prior results in larger and more ambitious projects.

    Once your portfolio is mature, you may even choose to leverage it into more responsibility at work or into a new machine learning-focused role.

    The favorite part:

    Tips And Tricks

    Below are some practical tips and tricks you may consider when using this process.

    • Start with a simple process (like above) and a simple tool (like Weka), then advance once you have confidence.
    • Begin with the simplest and most used datasets (iris flowers and Pima diabetes).
    • Each time you apply the process, look for ways to improve it and your usage of it.
    • If you discover new methods, figure out the best way to integrate them into your process.
    • Study algorithms, but only as much and in ways that help you achieve better results with your process.
    • Study and learn from experts and see what methods you can steal and add to your process.
    • Study your tool like you do predictive modeling problems and get the most out of it.
    • Tackle harder and harder problems, leave the easy ones as you won’t learn much from them.
    • Focus on clearly presenting results, the better you do this, the greater the impact of your portfolio.
    • Engage in the community on forums and Q&A sites, both ask and answer questions.
    Summary

    In this post, you discovered a simple 5-step process that you can use to get started and make progress in applied machine learning.
    Although simple to layout, the approach does take hard work, but it does pay off.
    Many of my students worked through this process and got work as machine learning engineers and data scientists.



    Thanks for being here


    "You have been a lovely viewer"

    - Follow us -




    I am a writer and geek. I have a deep understanding of how to make engaging content, with a focus on tech hacks. I'm a writer, editor, and content strategist with a passion for technology, hacks, tips and tricks. I write about the latest in tech news and trends.

    0 Comments:

    If you have any promblem, please let me know!