Monday

Machine Learning in the Test Automation space?


For those of you who know me I have been exploring and talking about Machine Learning a lot these days. (Blame it on one of the meetups I had been to)

Let's explore the what and how of ML:
What is it?

Machine learning is the subfield of computer science that gives computers the ability to learn without being explicitly programmed - Arthur Samuel, 1959

Evolved from the study of pattern recognition and computational learning theory in artificial intelligence, machine learning explores the study and construction of algorithms that can learn from and make predictions on data

Machine learning is the study of computer algorithms that improve automatically through experience
- Tom Mitchell

In 2006, the online movie company Netflix held the first "Netflix Prize" competition to find a program to better predict user preferences and improve the accuracy on its existing Cinematch movie recommendation algorithm by at least 10%. A joint team made up of researchers from AT&T Labs-Research in collaboration with the teams Big Chaos and Pragmatic Theory built an ensemble model to win the Grand Prize in 2009 for $1 million.Shortly after the prize was awarded, Netflix realized that viewers' ratings were not the best indicators of their viewing patterns ("everything is a recommendation") and they changed their recommendation engine accordingly.


In 2010 The Wall Street Journal wrote about money management firm Rebellion Research's use of machine learning to predict economic movements. The article describes Rebellion Research's prediction of the financial crisis and economic recovery.


In 2012 co-founder of Sun Microsystems Vinod Khosla predicted that 80% of medical doctors jobs would be lost in the next two decades to automated machine learning medical diagnostic software.


In 2014 it has been reported that a machine learning algorithm has been applied in Art History to study fine art paintings, and that it may have revealed previously unrecognized influences between artists

Approaches

  • Decision tree learning
  • Association rule learning
  • Artificial neural networks
  • Deep learning
  • Inductive logic programming
  • Support vector machines
  • Clustering
  • Bayesian networks
  • Reinforcement learning
  • Representation learning
  • Similarity and metric learning
  • Sparse dictionary learning
  • Genetic algorithms
  • Rule-based machine learning
  • Learning classifier systems

Applications



Very Important Difference between machine learning and predictive analytics

Most machine learning systems are based on neural networks. A neural network is a set of layered algorithms whose variables can be adjusted via a learning process. The learning process involves using known data inputs to create outputs that are then compared with known results. When the algorithms reflect the known results with the desired degree of accuracy, the algebraic coefficients are frozen and production code is generated.
Today, this comprises much of what we understand as artificial intelligence.
By contrast, predictive analytics makes adjustments to the algorithms in production, based on results fed back into the software. In other words, the application better understands how to apply its rules based on how those rules have worked in the past.

Test Automation and Machine Learning?