How to start with Machine learning?

Almost at the beginning of the first computer 50’s-60’s, Artificial intelligence aims at machines mimicking human intelligence. We, humans are very good at preciving the world: perceive forms, communicate with speech and text, resolve problem, judge, anticipate a situation.  Classic computer programs are not good at those tasks since it requires to adapt to various situations.

One of the most successful approach of AI is machine learning. The idea is come up with a model without coding explicitly the instructions. But rather let the program deduce a model from lot of data representative of a situation. Given a new situation, the program can deduce how to respond. With Data available on the internet and the processing power getting cheaper. The machine learning approach even with old algorithms such as neural network is able to out perform human at specialized tasks. For example, 2008, google trained a large neural network to recognize cats and dogs images base on cats and dogs on YouTube videos.

So far current AI programs with machine learning have achieved narrow intelligence only: specialized at one task. As opposed to general intelligence that let human to multi-tasking , reason with analogy.

All large companies, startups, public institutions, the media looks forward to the massive adoption of AI applications fueled with Data and Cloud processing. The Buzz is overwhelming varying from fear of job loss, singularity (AI that reach general intelligence) like terminator or matrix.

In reality, Machine learning is sill in its infancy as science. Each machine learning algorithms gives various results on different problems. The underlying unified theory is to be found (google: the work of mathematician Stephane Mallat). For engineer it is a craft to be mastered through experience that practitioner called data scientist call Data experimentation.

As IT professinal and former AI researcher, I propose you to follow me on a path to implement pratical AI applications in a lean project mode:

  • I prefer to experiment on usecase that motivates me.
  • I will occasionally use the online resources for my applications when necessary. I work in a full-time job as IT consultant. I have a limited time. Even if I would like to I cannot go through all the maths theories, librairies, course assignment.

I want to highlight how to develop an intuition on AI wether to force AI on every possible applications. To build an AI implication, I want to identify:

  • What are the prerequisites in maths (Probabilities, Statistics, Linear Algebra) and coding (Python, R,…)?
  • What are the most suitable algorithms ( types of neural nets, Baysian, Tree,…)? Does Deep learning always beat other algorithm in every case)
  • What are the most suitable tools libaries (Sci-kit learn, Tensor flow,…) or API e.g (google dialog flow for bot)?
  • What are the limit to the customization of pretrained models?
  • What are the prerequisite in terms of Data?
  • What is the hardware setup required ? I will start with my laptop but let see when we need to go to the Cloud?

Let’s choose some interesting applications that can be only addressed with AI.

I see really the following class of use case where Machine learning application can bring value:

  • Prediction, forecast future outcomes based on history (like meteo)
  • Classification, label unknown concept into category
  • Anomaly detection, detect outlier from normal pattern
  • Concept recognition, concept can be word, meaning of a text, voice, object , motion
  • Concept generation
  • Recommendation

Machine learning Use cases can be applied on all types of Data, each processing correspond to an area of study of AI:

  • Time series (sequence of value),
  • Text => Natural language processing
  • Words => Speech processing
  • Images => Computer vision
  • Videos => Computer vision

I propose to build the following AI application as MVP (quick and maybe dirty) by order of priorities:

  1. Real estate price predictor (price is fair or not) given an area
  2. Sentiment analysis on social comments on a topic
  3. Buzz word analyzer on internet on a topic
  4. market share predictor on an index enterprise or gold
  5. Anomaly detection on IT Virus detector
  6. Automatic color/ Style painter Black and white Comic Book
  7. chatbot FAQ
  8. Article recommendation

PS: If your are a student or you have time to spare, you can follow an academic MOOC training on AI online:

  • Udacity delivers nano degree in 4 months: https://eu.udacity.com/course/intro-to-artificial-intelligence–cs271
  • Coursera delivers a certification in 4 months: https://www.coursera.org/learn/machine-learning
  • Google propose Google.ai, 15 hours but oriented on google ai library tensorflow : https://developers.google.com/machine-learning/crash-course/?utm_source=google-ai&utm_medium=card-image&utm_campaign=training-hub&utm_content=ml-crash-course
  • Kaggle AI comptetitions platform links to university MOOC: https://www.kaggle.com/about/inclass/overview

 

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Close Menu