What you will learn in Evolutionary Deep Learning: Genetic algorithms and neural networks
Genetic algorithms and neural networks
Chapter by chapter
Concepts explained in this book
- genetic algorithmA genetic algorithm is an evolutionary optimization method that encodes candidate traits as genes and applies selection and recombination to search for solutions.
- DEAPDEAP is a Python framework for rapid prototyping of evolutionary algorithms and other computational intelligence techniques.
- evolutionary computationAn evolutionary optimizer is an optimization algorithm that searches candidate configurations through population-based variation and selection.
- hyperparameter tuningHyperparameter optimization, or hyperparameter tuning, is the process of selecting configuration values that control a machine-learning model or training procedure to improve a chosen objective.
- fitnessA fitness function maps an individual or candidate solution to a numerical value representing its closeness to a target or performance in an optimization problem.
- neuroevolution of augmenting topologiesNeuroEvolution of Augmenting Topologies (NEAT) is an evolutionary method that evolves neural-network weights and connection topologies, typically through genomes and speciation.
- crossoverA crossover operator combines genetic sequences from parent individuals to produce offspring in an evolutionary algorithm.
- genetic programmingGenetic programming is an evolutionary method that develops executable programs or algorithmic code.
- gene expression programmingGene expression programming is an evolutionary method that develops mathematical expressions or functions represented by expression trees.
- genetic operationA genetic operator is a computational transformation, such as crossover or mutation, that changes or combines candidate solutions in an evolutionary algorithm.
- expression treeAn expression tree is a hierarchical data structure whose nodes represent operators, functions, or values in a mathematical or executable expression.
- particle swarm optimizationParticle swarm optimization is a population-based optimization algorithm in which candidate solutions move through a search space according to collective-swarm behavior.
- differential evolutionDifferential evolution is a population-based evolutionary optimization algorithm that generates candidate solutions from scaled differences between existing solutions.
- generatorA GAN generator is the neural-network component of a generative adversarial network that maps latent inputs or noise samples to synthetic data.
- mutation operatorA mutation operator alters one or more components of an individual's encoded solution to introduce variation in an evolutionary algorithm.
- selectionA selection operator chooses individuals from a population for reproduction or survival according to their fitness.
- neuroevolutionNeuroevolution of architecture is the evolutionary optimization of a neural network's structural organization, including its layers and connectivity.
- Q-learningQ-learning is a model-free reinforcement-learning algorithm that learns action values by updating estimates of expected return for state-action pairs.
- autoencoderAn autoencoder is a neural network that learns to encode inputs into a representation and decode that representation to reconstruct the inputs.
- evolution strategyAn evolution strategy is an evolutionary optimization method that searches for solutions through population-based variation and selection, typically emphasizing stochastic mutation of candidate parameters.
- hyperparameterA hyperparameter is a configuration value governing model structure or training that is set outside ordinary parameter learning.
- NEAT-PythonNEAT-Python is a Python library that implements neuroevolution of augmenting topologies and provides configurable evolutionary neural-network components.
- reinforcement learningReinforcement learning is a machine-learning paradigm in which an agent learns behavior by interacting with an environment and receiving rewards or other evaluative feedback.
- PrimitiveSetPrimitiveSet is a genetic-programming configuration object that defines the primitives, arguments, and input symbols available to evolved expressions.
- Traveling Salesman problemThe traveling salesman problem is the optimization problem of finding a route that visits each destination while minimizing total travel distance, typically with a return to the start.
- latent spaceA latent space is the multidimensional representation space in which an encoder places input data for decoding or generation.
- convolutional layerA convolutional layer applies learned local filters across structured input locations to detect spatial or otherwise local patterns.
- deep learningA deep learning model is a neural network with multiple learned layers that learns hierarchical representations from data.
- evolutionary deep learningEvolutionary deep learning integrates evolutionary computation with deep learning to optimize or automate deep-learning models and their development.
- life simulationLife simulation is a computational approach that models observed natural life processes such as movement, interaction, growth, and death.
- genomeA genome is an encoded representation of an evolutionary candidate, including the genes that specify its neural-network structure and parameters.
- action spaceAn action space specifies the set and structure of actions that an agent can take in an environment.
- state spaceA state space is the set of states that describe the situations an agent can encounter in an environment.
- discriminatorA GAN discriminator is the neural-network component of a generative adversarial network that distinguishes generated samples from real data.
- convolutional neural networkA convolutional neural network is a neural network that processes structured inputs with learned convolutional filters, typically for tasks such as image classification.
- OpenAI GymGym is an open-source toolkit that provides standardized environments and interfaces for developing and evaluating reinforcement-learning algorithms.
- instinctual learningInstinctual learning is a mental model in which inherited or evolved responses guide behavior without conventional individual learning at the time of action.
- generalizationGeneralization is a model's ability to perform well across environments or data conditions beyond those directly optimized during development.
- reward signalA reward is a numerical feedback signal returned by a reinforcement-learning environment after an agent takes an action.
- model selectionModel selection is the process of choosing a model’s architecture and training-related configuration for a problem.
- evolutionBiological evolution is the change in heritable characteristics of populations across generations through processes such as variation and selection.
- tournament selectionTournament selection is a selection method that compares randomly chosen groups of individuals and selects the highest-fitness competitor from each group.
- variational autoencoderA variational autoencoder is a neural network that encodes inputs as probability distributions, samples from those distributions, and decodes the samples to reconstruct or generate data.
- agentAn agent is a persistent candidate solution represented by a vector whose components are modified during differential evolution.
- epochAn epoch is one iteration or pass of a machine-learning training procedure over its training process or data.
- discount factorA discount factor, commonly denoted gamma, is a numerical multiplier that reduces the contribution of temporally distant rewards.
- toolboxA DEAP toolbox is a registry and configuration container for evolutionary-algorithm operators, types, and construction functions.
- trajectoryAn episode is one complete trajectory of interaction between a reinforcement-learning agent and its environment, from an initial state to termination.
- geneA gene is a heritable unit of biological information that influences an organism's traits and occupies a position on a chromosome.
- DQNDeep Q-learning is reinforcement learning that uses a deep neural network to approximate action-value estimates instead of storing them only in a Q-table.
- sampling layerA sampling layer is a neural-network layer that produces a latent representation by sampling from distribution parameters such as a mean and variance.
- GeppyGeppy is a Python extension to DEAP that provides gene expression programming operators and utilities for evolving mathematical functions.
- genealogy plotA genealogy plot is a graph showing ancestry and generational connections among individuals or populations in an evolutionary process.
- multilayer perceptronA multilayer perceptron is a feedforward neural network composed of an input layer, one or more hidden layers, and an output layer of interconnected units.
- grid searchGrid search is a hyperparameter-optimization technique that evaluates configurations formed from a specified Cartesian product of candidate values.
- natural selectionNatural selection is the biological process by which heritable traits better suited to an environment lead to greater survival or reproduction.
- Q-tableA Q-table is a tabular representation that stores estimated action-quality values for states in a Q-learning agent.
- max poolingMax pooling is a neural-network operation that downsamples local activation regions by retaining their maximum values.
- AutoMLAutomated machine learning is the automation of selecting, configuring, training, evaluating, and optimizing machine-learning models and workflows.
- eaSimpleeaSimple is a DEAP evolutionary algorithm implementing a simple generational loop with configured selection, crossover, mutation, evaluation, and statistics.
- DCGAN / deep convolutional ganA deep convolutional generative adversarial network is a generative adversarial network whose generator and discriminator use convolutional neural-network architectures.
- two-point crossoverTwo-point crossover exchanges the subsequences between two split positions in a pair of parent sequences.
- vanishing gradient problemA neural-network training failure in which backpropagated gradients become extremely small across successive layers, limiting effective parameter updates.
- decoderA decoder is a model component that maps an encoded representation back to an output, typically reconstructing the original input.
- encoderAn encoder is a model component that transforms an input into a lower-dimensional or otherwise compressed representation.
- NSGA-IINSGA-II is a multi-objective evolutionary algorithm that uses elitist non-dominated sorting and crowding to preserve diverse high-quality solutions.
- order crossoverOrdered crossover combines parent sequences while preserving the relative order of selected elements.
- partially mapped crossoverPartially matched crossover recombines indexed parent sequences while preserving matching positional relationships between exchanged segments.
- SPEA2SPEA2 is a multi-objective evolutionary algorithm that uses Pareto dominance and fitness assignment to maintain a diverse approximation of the Pareto front.
- generative adversarial networkA generative adversarial network is a model consisting of a generator and discriminator trained in opposition to produce realistic synthetic data.
- learning rateA learning rate is the step-size parameter that determines how strongly model parameters are updated during training.
- protected divisionProtected division is a division operation that returns a defined fallback result when its denominator would make ordinary division invalid.
- co-evolutionCoevolution is an evolutionary process or computational technique in which interacting populations or solution components adapt to one another over successive generations.
- search spaceA search space is the set of candidate configurations or solutions that an optimization process can explore.
- kernel sizeKernel size is the spatial extent of a convolutional filter applied by a convolutional layer.
- upsamplingAn upsampling layer increases the spatial resolution of an intermediate feature representation, typically without learning a convolutional filter.
- neural network sizeNetwork size is the scale of a neural network as determined by its numbers of nodes and layers.
- chromosomeA computational chromosome is an encoded segment of a candidate solution that groups genes for evolutionary variation and recombination.
- traitA trait is a heritable characteristic of an organism or computational individual that can be passed to offspring.
- backpropagationBackpropagation is an algorithm that computes gradients of a neural-network objective with respect to parameters by propagating error signals backward through the network.
- batch sizeBatch size is the number of input examples processed in one training update or forward pass.
- Conv2DTransposeA Conv2DTranspose layer is a neural-network layer that performs a learned spatial upsampling operation commonly implemented as transposed convolution.
- Kullback–Leibler divergenceA divergence-based measure comparing probability distributions through differences in their information content.
- latent dimensionA latent dimension is one coordinate in the lower-dimensional representation produced by an encoder.
- reconstruction lossReconstruction loss is a loss value measuring the discrepancy between an input example and the output reconstructed from it.
- generationA generation is one complete iteration of population variation, evaluation, and selection in an evolutionary algorithm.
- terminal functionA terminal function is a genetic-programming function that supplies an executable leaf operation or observation without taking expression inputs.
- early stoppingEarly stopping is the termination of an iterative optimization or training process before its configured iteration limit when a stopping condition is met.
- linear layerA dense layer is a neural-network layer in which each unit receives inputs from all units in the preceding layer.
- exploitationExploitation is the selection of actions believed to produce the highest available value according to current knowledge.
- frozen lake problemA frozen lake environment is a discrete grid-world environment containing traversable frozen squares, terminal holes, and a goal location.
- action-value functionA Q-function maps a state and action to an estimate of the expected cumulative reward from taking that action and following a policy thereafter.
- strategy vectorA vector of strategy parameters carried by an evolutionary individual to control the mutation and blending applied to its genes.
- function approximationA function approximator is a computational model that estimates the outputs of a target function without necessarily reproducing its exact form.
- dropoutDropout is a neural-network regularization technique that randomly deactivates a proportion of nodes during training.
- lunar lander environmentThe Lunar Lander environment is a reinforcement-learning benchmark task in which an agent controls a simulated spacecraft to land safely.
- poolingPooling is a neural-network operation that aggregates values within local regions to reduce spatial or feature-map dimensions.
- convolutional autoencoderA convolutional autoencoder is an autoencoder whose encoder and decoder use convolutional operations to learn and reconstruct structured inputs such as images.
- mutation rateA mutation rate is the probability or proportion governing how often candidate representations undergo mutation during evolutionary reproduction.
- memorizationModel memorization is the phenomenon in which a model fits particular training examples without learning patterns that transfer to new data.
- mean squared errorMean squared error is the average of the squared differences between corresponding predicted and target numerical values.
- hyperparameter gridA parameter grid is a structured collection of predefined values whose Cartesian combinations define configurations for systematic evaluation.
- ParameterGridParameterGrid is a scikit-learn helper class that constructs the Cartesian product of parameter names and lists of candidate values.
- generative modelingGenerative modeling is the machine-learning task of modeling a data-generating process so that its outputs can be replicated or newly generated.
- Wasserstein distanceA distance between probability distributions that measures the minimum transport cost required to transform one distribution into another.
- optimizerAn optimizer is an algorithm that updates model parameters to minimize or otherwise improve an objective during training.
- Functional APIThe Keras Functional API is an interface for defining neural-network models as directed graphs of layer operations and tensors.
- instinct functionAn instinct function is a reusable neural-network function or layer that can be placed in models for different tasks or environments.
- instinct poolAn instinct pool is a shared collection of reusable neural-network layers or functions from which environment-specific models select instincts.
- instinct slotAn instinct slot is a designated position in a neural network that can contain a reusable instinct function or layer.
- feature selectionFeature selection is the process of identifying and retaining input variables that contribute to a model's predictions while excluding less-relevant variables.
- scaler geneA scaler gene is an encoded evolutionary variable whose value specifies a scaling factor for an input feature.
- batch normalizationBatch normalization is a neural-network technique that normalizes intermediate activations using statistics computed over training batches.
- elite selectionBest selection chooses the highest-performing individuals as parents for reproduction.
- instinctAn instinct is an inherited or evolutionarily developed behavioral tendency that guides action without conventional individual learning.
- speciesA species is a group or subset of evolutionary individuals grouped by similar features for population-level evaluation and management.
- artificial lifeArtificial life is a computational approach that simulates life-like processes and interactions among agents.
- genetic simulationGenetic simulation is a computational approach that models the transmission and evolution of genes and chromosomes in biological reproduction.
- populationA population is a collection of candidate solutions maintained together during an evolutionary optimization process.
- feature engineeringFeature engineering is the construction, transformation, or selection of input variables that represent useful information for a machine-learning model.
- target functionA target function is a mathematical function that an evolutionary program is intended to reproduce or approximate.
- deep reinforcement learningDeep reinforcement learning is reinforcement learning that uses deep neural networks to represent policies, value functions, or related decision-making components.
- principal component analysisPrincipal component analysis is a dimensionality-reduction technique that transforms correlated multidimensional data into a smaller set of components capturing variation in the data.
- channelA channel is one feature plane in a structured input or intermediate neural-network representation, such as a color or learned feature map.
- convolution kernelA convolutional filter is a learned array of weights that is slid across local input regions to produce feature responses.
- individualAn individual is a single candidate entity in a genetic algorithm whose traits are encoded by genes and chromosomes.
- exploding gradientAn exploding gradient is a neural-network training failure in which backpropagated gradient values become extremely large across successive layers.
- queen's gambitThe Queen's Gambit is a chessboard placement problem that asks for a specified number of queens to be placed so that none can capture another.
- Neural Architecture SearchArchitecture search is the systematic exploration of alternative neural-network structures to identify one that performs well on a specified task.
- balanced accuracyBalanced accuracy is the average of per-class recall values, giving equal weight to each class regardless of its frequency.
- stagnationStagnation is a period during which an evolutionary species shows no discernible improvement in fitness.
- trial and errorTrial-and-error learning is a strategy that discovers effective actions by repeatedly testing alternatives and retaining those that produce favorable outcomes.
- crossover chanceCrossover rate is a genetic-algorithm configuration that controls the likelihood, location, or extent of recombination between parents.
- species extinctionSpecies extinction is the removal of an evolutionary species from the population when it no longer persists or remains viable.
- discontinuous functionA discontinuous function is a function whose output has a jump, break, or other noncontinuous change as its input varies.
- component-wise differentiationComponent-wise differentiation computes candidate changes independently for each vector component using differences between other candidate vectors.
- population sizePopulation size is the number of individuals simulated in each generation of an evolutionary algorithm.
- AI/ML model development workflowThe sequence of data, modeling, configuration, training, tuning, evaluation, and deployment activities involved in building an AI or machine-learning model.
- preprocessingThe process of cleaning, transforming, and organizing data for machine-learning analysis or training.
- validation selectionThe process of selecting and applying procedures for evaluating model performance on training and testing data.
- mode collapseMode collapse is a generative-adversarial-network failure in which the generator produces only one or a small range of output variations despite the diversity of the training data.
- KerasKeras is an open-source deep-learning library providing high-level APIs for constructing and training neural networks.
- Gym environmentA Gym environment is an interactive task specification that exposes states, actions, transitions, rewards, and termination behavior to a reinforcement-learning agent.
- relative complexityRelative complexity is a metric defined here as the size of the state space raised to the power of the action-space size.
- discounted rewardA discounted reward is a reward whose contribution is multiplied by a temporal discount factor.
- reproductionThe biological or computational process by which parent individuals produce offspring.
- layer typeA layer type is the architectural kind of computational layer used in a machine-learning model.
- particle update operatorA particle update operator changes a particle's speed and position during an iteration of particle swarm optimization.
- particleA particle is a candidate agent in particle swarm optimization whose position and movement encode a possible solution.
- particle operatorA particle operator is a procedure that generates, updates, or evaluates particles in particle swarm optimization.
- criticA critic is the scoring network in a Wasserstein generative adversarial network that assigns realness scores rather than real-or-fake probabilities.
- XOR exampleThe XOR problem is a binary classification task whose desired output is the exclusive-or of two input values.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.
