Genetic Programming Feature Extraction for Unsupervised Learning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional methods for automated feature extraction using genetic programming are limited in their ability to handle unsupervised learning, produce features of arbitrary complexity, and express features in a programming language, making them inefficient for reducing data dimensionality and increasing the effectiveness of subsequent machine learning steps.
Innovation Solution
The approach involves creating generic computational building blocks using genetic programming, which allows for the extraction of features by initializing populations with previously generated building blocks, applying a fitness function to select non-trivial programs, and using a seed list to seed genetic programming instances, enabling both unsupervised and supervised learning and producing human-readable, explainable features.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If conventional genetic programming methods are used for automated feature extraction, then the process can be automated, but the methods cannot handle unsupervised learning and cannot produce features of arbitrary complexity
Solution Approach 1:
The patent applies dynamics by making the genetic programming system adaptable to different learning paradigms. The system dynamically adjusts its operation based on whether supervised or unsupervised learning is being performed, allowing it to handle both scenarios effectively. This is achieved through configurable fitness functions and population initialization strategies that can switch between supervised and unsupervised modes.
Solution Approach 2:
The patent utilizes parameter changes by allowing the feature extraction process to generate features of arbitrary complexity through modification of key parameters such as population size, generation count, fitness function parameters, and feature transformation parameters. This enables the system to produce features ranging from simple to highly complex depending on the specific requirements of the unsupervised or supervised learning task.
2Extent of automation
If conventional genetic programming methods are used, then automation is achieved, but the features cannot be expressed in a programming language
Solution Approach 1:
The patent replaces the conventional black-box feature extraction mechanism with a genetic programming-based system that produces programmable features. Instead of using traditional statistical or linear transformation methods that yield non-interpretable features, the system uses evolutionary algorithms to generate features expressed as executable code in a programming language, enabling both automation and programmability.
Solution Approach 2:
The genetic programming system performs self-service by automatically generating, optimizing, and expressing features in a programming language without requiring manual intervention. The system self-adapts through evolutionary processes, automatically producing features that are both optimized for the specific task and expressible in programmable form.
3Device complexity
If data dimensionality is reduced through feature extraction, then the complexity of subsequent machine learning steps decreases, but information content may be lost
Solution Approach 1:
The patent implements feedback mechanisms through fitness functions that evaluate the quality of extracted features based on their ability to preserve information content. The system uses feedback from performance metrics to iteratively refine feature transformations, ensuring that dimensionality reduction does not result in significant information loss. The fitness function incorporates measures that monitor information preservation while reducing complexity.
Solution Approach 2:
The system performs preliminary action by pre-processing the data through genetic programming-based feature extraction before subsequent machine learning steps. This preliminary transformation optimizes the feature space to maintain information content while reducing dimensionality, preparing the data in advance for more efficient processing in later stages without losing critical information.
Data Source
AI summary
A method evolves generic computational building blocks. The method obtains a parent population with programs that encode functions. The method also obtains a list of randomly generated test inputs. The method generates a target dataset that includes input-output pairs of randomly generated binary strings. The method also applies a fitness function to assign a fitness score to each program, based on the target dataset. The method grows a seed list by applying genetic operators, and selecting offspring that satisfy a novelty condition. The novelty condition is representative of an ability of a program to produce unique output for the list of randomly generated test inputs. The method iterates until a terminating condition has been satisfied. The terminating condition is representative of an ability of programs in the seed list to solve one or more genetic programming instances.


