Key Takeaways
Hands-On Genetic Algorithms with Python by Eyal Wirsansky is a new book which explores the world of genetic algorithms to solve search, optimization, and AI-related tasks, and improve machine learning models. InfoQ interviewed Eyal Wirsansky about how genetic algorithms work and what they can be used for.
In addition to our interview, InfoQ was able to obtain a sample chapter which can be downloaded here.
InfoQ: How do genetic algorithms work?
Eyal Wirsansky: Genetic algorithms are a family of search algorithms inspired by the principles of evolution in nature. They imitate the process of natural selection and reproduction, by starting with a set of random solutions, evaluating each one of them, then selecting the better ones to create the next generation of solutions. As generations go by, the solutions we have get better at solving the problem. This way, genetic algorithms can produce high-quality solutions for various problems involving search, optimization, and learning. At the same time, their analogy to natural evolution allows genetic algorithms to overcome some of the hurdles encountered by traditional search and optimization algorithms, especially for problems with a large number of parameters and complex mathematical representations.
InfoQ: What type of problems do genetic algorithms solve?
Wirsansky: Genetic algorithms can be used for solving almost any type of problem, but they particularly shine where traditional algorithms cannot be used, or fail to produce usable results within a practical amount of time. For example, problems with very complex or non-existing mathematical representation, problems where the number of variables involved is large, and problems with noisy or inconsistent input data. In addition, genetic algorithms are better equipped to handle deceptive problems, where traditional algorithms may get trapped in a suboptimal solution.
Genetic algorithms can even deal with cases where there is no way to evaluate an individual solution by itself, as long as there is a way to compare two solutions and determine which of them is better. An example can be a machine learning-based agent that drives a car in a simulated race. A genetic algorithm can optimize and tune the agent by having different versions of it compete against each other to determine which version is better.
InfoQ: What are the best use cases for genetic algorithms?
Wirsansky: The most common use case is where we need to assemble a solution using a combination of many different available parts; we want to select the best combination, but the number of possible combinations is too large to try them all. Genetic algorithms can usually find a good combination within a reasonable amount of time. Examples can be scheduling personnel, planning of delivery routes, designing bridge structures, and also constructing the best machine learning model from many available building blocks, or finding the best architecture for a deep learning model.
Another interesting use case is where the evaluation is based on peoples opinion or response. For example, you can use the genetic algorithm approach to determine the design parameters for a web sitesuch as color palette, font size, and location of components on the pagethat will achieve the best response from customers, such as conversion or retention. This idea can also be used for genetic art artificially created paintings or music that prove pleasant to the human eye (or ear).
Genetic algorithms can also be used for ongoing optimizationcases where the best solution may change over time. The algorithm can run continuously within the changing environment and respond dynamically to these changes by updating the best solution based on the current generation.
InfoQ: How can genetic algorithms select the best subset of features for supervised learning?
Wirsansky: In many cases, reducing the number of featuresused as inputs for a model in supervised learningcan increase the models accuracy, as some of the features may be irrelevant or redundant. This will also result in a simpler, better generalizing model. But we need to figure out which are the features that we want to keep. As this comes down to finding the best combination of features out of a potentially immense number of possible combinations, genetic algorithms provide a very practical approach. Each potential solution is represented by a list of booleans, one for each feature.
The value of the boolean (0 or 1) represents the absence or presence of the corresponding feature. These lists of boolean values are used as genetic material, that can be exchanged between solutions when we mate them, or even mutated by flipping values randomly. Using these mating and mutation operations, we create new generations out of preceding ones, while giving an advantage to solutions that yielded better performing models. After a while, we can have some good solutions, each representing a subset of the features. This is demonstrated in Chapter 7 of the book (our sample chapter) with the UCI Zoo dataset using python code, where the best performance was achieved by selecting six particular features out of the original sixteen.
InfoQ: What are the benefits that we can get from using genetic algorithms with machine learning for hyperparameter tuning?
Wirsansky: Every machine learning model utilizes a set of hyperparametersvalues that are set before the training takes place and affect the way the learning is done. The combined effect of hyperparameters on the performance of the model can be significant. Unfortunately, finding the best combination of the hyperparameter valuesalso known as hyperparameter tuningcan be as difficult as finding a needle in a haystack.
Two common approaches are grid search and random search, each with its own disadvantages. Genetic algorithms can be used in two ways to improve upon these methods. One way is by optimizing the grid search, so instead of trying out every combination on the grid, we can search only a subset of combinations but still get a good combination. The other way is to conduct a full search over the hyperparameter space, as genetic algorithms are capable of handling a large number of parameters as well as different parameter types continuous, discrete and categorical. These two approaches are demonstrated in Chapter 8 of the book with the UCI Wine dataset using python code.
InfoQ: How can genetic algorithms be used in Reinforcement Learning?
Wirsansky: Reinforcement Learning (RL) is a very exciting and promising branch of machine learning, with the potential to handle complex, everyday-life-like tasks. Unlike supervised learning, RL does not present an immediate 'right/wrong' feedback, but instead provides an environment where a longer-term, cumulative reward is sought after. This kind of setting can be viewed as an optimization problem, another area where genetic algorithms excel.
As a result, genetic algorithms can be utilized for reinforcement learning in several different ways. One example can be determining the weights and biases of a neural network that interacts with its environment by mapping input values to output values. Chapter 10 of the book includes two examples of applying genetic algorithms to RL tasks, using the OpenAI Gym environments mountain-car and cart-pole.
InfoQ: What is bio-inspired computing?
Wirsansky: Genetic algorithms are just one branch within a larger family of algorithms called Evolutionary Computation, all inspired by Darwinian evolution. One particularly interesting member of this family is Genetic Programming, that evolves computer programs aiming to solve a specific problem. More broadly, as evolutionary computation techniques are based on various biological systems or behaviors, they can be considered part of the algorithm family known as Bio-inspired Computing.
Among the many fascinating members of this family are Ant Colony Optimizationimitating the way certain species of ants locate food and mark the paths to it, giving advantage to closer and richer locations of food; Artificial Immune Systems, capable of identifying and learning new threats, as well as applying the acquired knowledge and respond faster the next time a similar threat is detected; and Particle Swarm Optimization, based on the behavior of flocks of birds or schools of fish, where individuals within the group work together towards a common goal without central supervision.
Another related, broad field of computation is Artificial Life, involving systems and processes imitating natural life in different ways, such as computer simulations and robotic systems. Chapter 12 of the book includes two relevant Python-written examples, one solving a problem using genetic programming, and the otherusing particle swarm optimization.
Eyal Wirsansky is a senior software engineer, a technology community leader, and an artificial intelligence researcher and consultant. Eyal started his software engineering career as a pioneer in the field of voice over IP, and he now has over 20 years' experience of creating a variety of high-performing enterprise solutions. While in graduate school, he focused his research on genetic algorithms and neural networks. One outcome of his research is a novel supervised machine learning algorithm that combines the two. Eyal leads the Jacksonville (FL) Java user group, hosts the Artificial Intelligence for Enterprise virtual user group, and writes the developer-oriented artificial intelligence blog, ai4java.
Excerpt from:
Q&A on the Book Hands-On Genetic Algorithms with Python - InfoQ.com
- What Is Machine Learning? | How It Works, Techniques ... [Last Updated On: September 5th, 2019] [Originally Added On: September 5th, 2019]
- Start Here with Machine Learning [Last Updated On: September 22nd, 2019] [Originally Added On: September 22nd, 2019]
- What is Machine Learning? | Emerj [Last Updated On: October 1st, 2019] [Originally Added On: October 1st, 2019]
- Microsoft Azure Machine Learning Studio [Last Updated On: October 1st, 2019] [Originally Added On: October 1st, 2019]
- Machine Learning Basics | What Is Machine Learning? | Introduction To Machine Learning | Simplilearn [Last Updated On: October 1st, 2019] [Originally Added On: October 1st, 2019]
- What is Machine Learning? A definition - Expert System [Last Updated On: October 2nd, 2019] [Originally Added On: October 2nd, 2019]
- Machine Learning | Stanford Online [Last Updated On: October 2nd, 2019] [Originally Added On: October 2nd, 2019]
- How to Learn Machine Learning, The Self-Starter Way [Last Updated On: October 17th, 2019] [Originally Added On: October 17th, 2019]
- definition - What is machine learning? - Stack Overflow [Last Updated On: November 3rd, 2019] [Originally Added On: November 3rd, 2019]
- Artificial Intelligence vs. Machine Learning vs. Deep ... [Last Updated On: November 3rd, 2019] [Originally Added On: November 3rd, 2019]
- Machine Learning in R for beginners (article) - DataCamp [Last Updated On: November 3rd, 2019] [Originally Added On: November 3rd, 2019]
- Machine Learning | Udacity [Last Updated On: November 3rd, 2019] [Originally Added On: November 3rd, 2019]
- Machine Learning Artificial Intelligence | McAfee [Last Updated On: November 3rd, 2019] [Originally Added On: November 3rd, 2019]
- Machine Learning [Last Updated On: November 3rd, 2019] [Originally Added On: November 3rd, 2019]
- AI-based ML algorithms could increase detection of undiagnosed AF - Cardiac Rhythm News [Last Updated On: November 19th, 2019] [Originally Added On: November 19th, 2019]
- The Cerebras CS-1 computes deep learning AI problems by being bigger, bigger, and bigger than any other chip - TechCrunch [Last Updated On: November 19th, 2019] [Originally Added On: November 19th, 2019]
- Can the planet really afford the exorbitant power demands of machine learning? - The Guardian [Last Updated On: November 19th, 2019] [Originally Added On: November 19th, 2019]
- New InfiniteIO Platform Reduces Latency and Accelerates Performance for Machine Learning, AI and Analytics - Business Wire [Last Updated On: November 19th, 2019] [Originally Added On: November 19th, 2019]
- How to Use Machine Learning to Drive Real Value - eWeek [Last Updated On: November 19th, 2019] [Originally Added On: November 19th, 2019]
- Machine Learning As A Service Market to Soar from End-use Industries and Push Revenues in the 2025 - Downey Magazine [Last Updated On: November 26th, 2019] [Originally Added On: November 26th, 2019]
- Rad AI Raises $4M to Automate Repetitive Tasks for Radiologists Through Machine Learning - - HIT Consultant [Last Updated On: November 26th, 2019] [Originally Added On: November 26th, 2019]
- Machine Learning Improves Performance of the Advanced Light Source - Machine Design [Last Updated On: November 26th, 2019] [Originally Added On: November 26th, 2019]
- Synthetic Data: The Diamonds of Machine Learning - TDWI [Last Updated On: November 26th, 2019] [Originally Added On: November 26th, 2019]
- The transformation of healthcare with AI and machine learning - ITProPortal [Last Updated On: November 26th, 2019] [Originally Added On: November 26th, 2019]
- Workday talks machine learning and the future of human capital management - ZDNet [Last Updated On: November 26th, 2019] [Originally Added On: November 26th, 2019]
- Machine Learning with R, Third Edition - Free Sample Chapters - Neowin [Last Updated On: November 26th, 2019] [Originally Added On: November 26th, 2019]
- Verification In The Era Of Autonomous Driving, Artificial Intelligence And Machine Learning - SemiEngineering [Last Updated On: November 26th, 2019] [Originally Added On: November 26th, 2019]
- Podcast: How artificial intelligence, machine learning can help us realize the value of all that genetic data we're collecting - Genetic Literacy... [Last Updated On: November 28th, 2019] [Originally Added On: November 28th, 2019]
- The Real Reason Your School Avoids Machine Learning - The Tech Edvocate [Last Updated On: November 28th, 2019] [Originally Added On: November 28th, 2019]
- Siri, Tell Fido To Stop Barking: What's Machine Learning, And What's The Future Of It? - 90.5 WESA [Last Updated On: November 28th, 2019] [Originally Added On: November 28th, 2019]
- Microsoft reveals how it caught mutating Monero mining malware with machine learning - The Next Web [Last Updated On: November 28th, 2019] [Originally Added On: November 28th, 2019]
- The role of machine learning in IT service management - ITProPortal [Last Updated On: November 28th, 2019] [Originally Added On: November 28th, 2019]
- Global Director of Tech Exploration Discusses Artificial Intelligence and Machine Learning at Anheuser-Busch InBev - Seton Hall University News &... [Last Updated On: November 28th, 2019] [Originally Added On: November 28th, 2019]
- The 10 Hottest AI And Machine Learning Startups Of 2019 - CRN: The Biggest Tech News For Partners And The IT Channel [Last Updated On: November 28th, 2019] [Originally Added On: November 28th, 2019]
- Startup jobs of the week: Marketing Communications Specialist, Oracle Architect, Machine Learning Scientist - BetaKit [Last Updated On: November 30th, 2019] [Originally Added On: November 30th, 2019]
- Here's why machine learning is critical to success for banks of the future - Tech Wire Asia [Last Updated On: December 2nd, 2019] [Originally Added On: December 2nd, 2019]
- 3 questions to ask before investing in machine learning for pop health - Healthcare IT News [Last Updated On: December 8th, 2019] [Originally Added On: December 8th, 2019]
- Machine Learning Answers: If Caterpillar Stock Drops 10% A Week, Whats The Chance Itll Recoup Its Losses In A Month? - Forbes [Last Updated On: December 8th, 2019] [Originally Added On: December 8th, 2019]
- Measuring Employee Engagement with A.I. and Machine Learning - Dice Insights [Last Updated On: December 8th, 2019] [Originally Added On: December 8th, 2019]
- Amazon Wants to Teach You Machine Learning Through Music? - Dice Insights [Last Updated On: December 8th, 2019] [Originally Added On: December 8th, 2019]
- Machine Learning Answers: If Nvidia Stock Drops 10% A Week, Whats The Chance Itll Recoup Its Losses In A Month? - Forbes [Last Updated On: December 8th, 2019] [Originally Added On: December 8th, 2019]
- AI and machine learning platforms will start to challenge conventional thinking - CRN.in [Last Updated On: December 23rd, 2019] [Originally Added On: December 23rd, 2019]
- Machine Learning Answers: If Twitter Stock Drops 10% A Week, Whats The Chance Itll Recoup Its Losses In A Month? - Forbes [Last Updated On: December 23rd, 2019] [Originally Added On: December 23rd, 2019]
- Machine Learning Answers: If Seagate Stock Drops 10% A Week, Whats The Chance Itll Recoup Its Losses In A Month? - Forbes [Last Updated On: December 23rd, 2019] [Originally Added On: December 23rd, 2019]
- Machine Learning Answers: If BlackBerry Stock Drops 10% A Week, Whats The Chance Itll Recoup Its Losses In A Month? - Forbes [Last Updated On: December 23rd, 2019] [Originally Added On: December 23rd, 2019]
- Amazon Releases A New Tool To Improve Machine Learning Processes - Forbes [Last Updated On: December 23rd, 2019] [Originally Added On: December 23rd, 2019]
- Another free web course to gain machine-learning skills (thanks, Finland), NIST probes 'racist' face-recog and more - The Register [Last Updated On: December 23rd, 2019] [Originally Added On: December 23rd, 2019]
- Kubernetes and containers are the perfect fit for machine learning - JAXenter [Last Updated On: December 23rd, 2019] [Originally Added On: December 23rd, 2019]
- TinyML as a Service and machine learning at the edge - Ericsson [Last Updated On: December 23rd, 2019] [Originally Added On: December 23rd, 2019]
- AI and machine learning products - Cloud AI | Google Cloud [Last Updated On: December 23rd, 2019] [Originally Added On: December 23rd, 2019]
- Machine Learning | Blog | Microsoft Azure [Last Updated On: December 23rd, 2019] [Originally Added On: December 23rd, 2019]
- Machine Learning in 2019 Was About Balancing Privacy and Progress - ITPro Today [Last Updated On: December 25th, 2019] [Originally Added On: December 25th, 2019]
- CMSWire's Top 10 AI and Machine Learning Articles of 2019 - CMSWire [Last Updated On: December 25th, 2019] [Originally Added On: December 25th, 2019]
- Here's why digital marketing is as lucrative a career as data science and machine learning - Business Insider India [Last Updated On: January 13th, 2020] [Originally Added On: January 13th, 2020]
- Dell's Latitude 9510 shakes up corporate laptops with 5G, machine learning, and thin bezels - PCWorld [Last Updated On: January 13th, 2020] [Originally Added On: January 13th, 2020]
- Finally, a good use for AI: Machine-learning tool guesstimates how well your code will run on a CPU core - The Register [Last Updated On: January 13th, 2020] [Originally Added On: January 13th, 2020]
- Cloud as the enabler of AI's competitive advantage - Finextra [Last Updated On: January 13th, 2020] [Originally Added On: January 13th, 2020]
- Forget Machine Learning, Constraint Solvers are What the Enterprise Needs - - RTInsights [Last Updated On: January 13th, 2020] [Originally Added On: January 13th, 2020]
- Informed decisions through machine learning will keep it afloat & going - Sea News [Last Updated On: January 13th, 2020] [Originally Added On: January 13th, 2020]
- The Problem with Hiring Algorithms - Machine Learning Times - machine learning & data science news - The Predictive Analytics Times [Last Updated On: January 13th, 2020] [Originally Added On: January 13th, 2020]
- New Program Supports Machine Learning in the Chemical Sciences and Engineering - Newswise [Last Updated On: January 13th, 2020] [Originally Added On: January 13th, 2020]
- AI-System Flags the Under-Vaccinated in Israel - PrecisionVaccinations [Last Updated On: January 22nd, 2020] [Originally Added On: January 22nd, 2020]
- New Contest: Train All The Things - Hackaday [Last Updated On: January 22nd, 2020] [Originally Added On: January 22nd, 2020]
- AFTAs 2019: Best New Technology Introduced Over the Last 12 MonthsAI, Machine Learning and AnalyticsActiveViam - www.waterstechnology.com [Last Updated On: January 22nd, 2020] [Originally Added On: January 22nd, 2020]
- Educate Yourself on Machine Learning at this Las Vegas Event - Small Business Trends [Last Updated On: January 22nd, 2020] [Originally Added On: January 22nd, 2020]
- Seton Hall Announces New Courses in Text Mining and Machine Learning - Seton Hall University News & Events [Last Updated On: January 22nd, 2020] [Originally Added On: January 22nd, 2020]
- Looking at the most significant benefits of machine learning for software testing - The Burn-In [Last Updated On: January 22nd, 2020] [Originally Added On: January 22nd, 2020]
- Leveraging AI and Machine Learning to Advance Interoperability in Healthcare - - HIT Consultant [Last Updated On: January 22nd, 2020] [Originally Added On: January 22nd, 2020]
- Adventures With Artificial Intelligence and Machine Learning - Toolbox [Last Updated On: January 22nd, 2020] [Originally Added On: January 22nd, 2020]
- Five Reasons to Go to Machine Learning Week 2020 - Machine Learning Times - machine learning & data science news - The Predictive Analytics Times [Last Updated On: January 22nd, 2020] [Originally Added On: January 22nd, 2020]
- Uncover the Possibilities of AI and Machine Learning With This Bundle - Interesting Engineering [Last Updated On: January 22nd, 2020] [Originally Added On: January 22nd, 2020]
- Learning that Targets Millennial and Generation Z - HR Exchange Network [Last Updated On: January 23rd, 2020] [Originally Added On: January 23rd, 2020]
- Red Hat Survey Shows Hybrid Cloud, AI and Machine Learning are the Focus of Enterprises - Computer Business Review [Last Updated On: January 23rd, 2020] [Originally Added On: January 23rd, 2020]
- Vectorspace AI Datasets are Now Available to Power Machine Learning (ML) and Artificial Intelligence (AI) Systems in Collaboration with Elastic -... [Last Updated On: January 23rd, 2020] [Originally Added On: January 23rd, 2020]
- What is Machine Learning? | Types of Machine Learning ... [Last Updated On: January 23rd, 2020] [Originally Added On: January 23rd, 2020]
- How Machine Learning Will Lead to Better Maps - Popular Mechanics [Last Updated On: January 30th, 2020] [Originally Added On: January 30th, 2020]
- Jenkins Creator Launches Startup To Speed Software Testing with Machine Learning -- ADTmag - ADT Magazine [Last Updated On: January 30th, 2020] [Originally Added On: January 30th, 2020]
- An Open Source Alternative to AWS SageMaker - Datanami [Last Updated On: January 30th, 2020] [Originally Added On: January 30th, 2020]
- Machine Learning Could Aid Diagnosis of Barrett's Esophagus, Avoid Invasive Testing - Medical Bag [Last Updated On: January 30th, 2020] [Originally Added On: January 30th, 2020]
- OReilly and Formulatedby Unveil the Smart Cities & Mobility Ecosystems Conference - Yahoo Finance [Last Updated On: January 30th, 2020] [Originally Added On: January 30th, 2020]