Genetic Programming Feature Extraction for Unsupervised Learning

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvecapability to handle unsupervised learningVSAvoidfeature complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice 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.

Inventive Principle:
Principle #15Dynamics

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.

Inventive Principle:
Principle #35Parameter changes

2Extent of automation

If conventional genetic programming methods are used, then automation is achieved, but the features cannot be expressed in a programming language

Engineering Contradiction:
Improveautomation of feature extractionVSAvoidprogrammability of features
Core Design Contradiction:
Extent of automationVSEase of operation

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.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

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.

Inventive Principle:
Principle #25Self-service

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

Engineering Contradiction:
Improvecomplexity of machine learning processVSAvoidinformation content preservation
Core Design Contradiction:
Device complexityVSLoss of information

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.

Inventive Principle:
Principle #23Feedback

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.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11972842B2Automated feature extraction using genetic programming
Publication Date: 2024.04.30 NATURAL COMPUTATION LLC
  • US11972842B2 patent drawing
  • US11972842B2 patent drawing
  • US11972842B2 patent drawing

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.