44 lines
1.6 KiB
Markdown
44 lines
1.6 KiB
Markdown
Terminology:
|
|
|
|
Sample space 'S' has 'n' bits, and there is a function 'f', that maps 'x' (an n-bit vector) in 'S' to 'y'.
|
|
|
|
f(x) = y
|
|
|
|
We can use PCA to generate candidates for some sub-sample of 'S', 'P'. Candidates that exhibit generalization
|
|
properties (score higher than the previous generation on a sub-sample they haven't seen before, 'Q') can be
|
|
cascaded into the input for training the next generation of candidates.
|
|
|
|
This candidate generation process is 'G'. 'G' is considered to perform well if the candidates that it
|
|
generates exhibit generalization properties.
|
|
|
|
To bootstrap, we can use PCA for 'G' and store the state machine instructions 'S_G' for creating the highest-performing
|
|
candidates on a particular problem 'f' as a sample space for training a new generator 'G_n'.
|
|
|
|
Use 'G' to generate candidates for 'G_n'. Training samples come from 'S_G', but candidates should be evaluated
|
|
based on how well the candidates they generate perform on 'f'.
|
|
|
|
So, we need to be able to score a particular g e G_n. We can evaluate for a fixed number of epochs and use some combination
|
|
of the average difficulty and evaluation score.
|
|
|
|
A generator G is a state machine with input
|
|
|
|
G(|j-bit step|m * n-bit inputs|) = y
|
|
|
|
Where y is a bit in an instruction.
|
|
|
|
'a' is an address in 'A' |log2(n)|
|
|
|
|
|opcode 2-bit|
|
|
|00 - xor|
|
|
|01 - end|
|
|
|10 - and|
|
|
|11 - nand|
|
|
|
|
xor is followed by an address 'a' for an input bit.
|
|
|
|
This process can be repeated indefinitely, replacing 'G' with 'G_n' to create new generators that outperform the previous
|
|
generation for solving 'f'.
|
|
|
|
A candidate is a state machine with input
|
|
f(|n-bit input|) = y
|