xor

package
v4.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 13, 2023 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Package xor defines the XOR experiment which serves to actually check that network topology actually evolves and everything works as expected. Because XOR is not linearly separable, a neural network requires hidden units to solve it. The two inputs must be combined at some hidden unit, as opposed to only at the output node, because there is no function over a linear combination of the inputs that can separate the inputs into the proper classes. These structural requirements make XOR suitable for testing NEAT’s ability to evolve structure.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewXORGenerationEvaluator

func NewXORGenerationEvaluator(outputPath string) experiment.GenerationEvaluator

NewXORGenerationEvaluator is to create new generations' evaluator to be used for the XOR experiment execution. XOR is very simple and does not make a very interesting scientific experiment; however, it is a good way to check whether your system works. Make sure recurrency is disabled for the XOR test. If NEAT is able to add recurrent connections, it may solve XOR by memorizing the order of the training set. (Which is why you may even want to randomize order to be most safe) All documented experiments with XOR are without recurrent connections. Interestingly, XOR can be solved by a recurrent network with no hidden nodes.

This method performs evolution on XOR for specified number of generations and output results into outDirPath It also returns number of nodes, genes, and evaluations performed per each run (context.NumRuns)

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL