With time models get out of date and a little
refreshing is required. With GeneXproTools 4.0 refreshing models is
easy. For models created by GeneXproTools, you just have to replace
the old training set (that is, the data set that was used to create the model you want to
refresh) with the new one. You can do that in the Data Panel ->
Training Set Tab or by choosing Change Training Data in the Data
Menu.
Then we recommend you go to the Results Panel and check how the
old model fares in this training set, as sometimes calculation
errors might occur with new data, which obviously will render the
model unviable in this new environment. If that is the case, you'll
have to check carefully your new data and get rid of the problematic
samples that are causing the errors in order to make it viable,
otherwise you won't be able to use it as seed for starting the
refreshing process.
Thus, after making sure that your old model is viable in this new
data set, you just go to the Run Panel
and press the Optimize
button. By doing that you are starting a new evolutionary process
where all the best-of-generation models are refreshed models, much
better adapted to the new circumstances than the old model.
For models created outside of GeneXproTools, a new .gep run must be
created using the new data set for training. Then the old model is fed
into GeneXproTools through the Change Seed window where both the fitness and structural soundness of the model
can be tested. In this case, you will need to know how to convert the model into
Karva code, as the Change Seed window only accepts Karva code.
The easiest way of translating your model into Karva code, consists of representing your model in a
tree structure and then create a linear representation of the parse tree by
writing down all the nodes in the tree from top to bottom and from left to right. You will end up with a
K-expression that you can, with only a small modification, use as seed.
For instance, the expression tree below:
can be represented linearly by the following K-expression:
/.d1./.-.Exp.Exp.Ln.d2.d2.d2
Now you only need to incorporate this K-expression into a correct gene structure, with a
head and a tail correctly
defined. A simple way of doing this, consists of considering the entire K-expression the head of your gene and then add a tail (with the correct length, of course) containing only terminals (which terminals you add is irrelevant as these terminals
will not interfere with the expression of your K-expression). For instance, the K-expression above could be correctly accommodated into the following gene:
/.d1./.-.Exp.Exp.Ln.d2.d2.d2.d0.d0.d0.d0.d0.d0.d0.d0.d0.d0.d0
Then you just have to create a new run in GeneXproTools and evolve quickly
(for one generation is enough) a proto-model with exactly the same structure
you’ll need for integrating your seed model (that is, number of genes, head size, linking function, function
set, etc.), and then replace this proto-model in the Change Seed window
by your seed.
Then, in the Run Panel, by clicking the
Optimize button, an evolutionary process starts in which all the subsequent models will be descendants of the
model you want to refresh, being all the best-of-generation models
refreshed models, much better adapted to the new circumstances than
the old model.
|