| Copyright | (c) Fabricio Olivetti de Franca 2020 | 
|---|---|
| License | GPL-3 | 
| Maintainer | fabricio.olivetti@gmail.com | 
| Stability | experimental | 
| Portability | POSIX | 
| Safe Haskell | None | 
RunCrossVal
Description
Run a 5-fold cross-validation on the training set to find the best combination of hyperparameters.
TODO: refactor, document, write the best configuration in a config file
Synopsis
- createMutCfg :: (Int, Int) -> Int -> [Transformation] -> MutationCfg
 - validateArgs :: [String] -> (String, Int)
 - runITEARegCV :: Fitness -> (Solution -> Maybe [Double]) -> Int -> MutationCfg -> Int -> Int -> IO Double
 - runFI2POPRegCV :: Fitness -> (Solution -> Maybe [Double]) -> Int -> MutationCfg -> Int -> Int -> IO Double
 - runCfg :: FilePath -> Int -> MutationCfg -> IO Double
 - runCrossVal :: [String] -> IO ()
 
Documentation
createMutCfg :: (Int, Int) -> Int -> [Transformation] -> MutationCfg Source #
Returns the mutation configuration, population size and number of generations.
- '(e1, e2)' are the minimum and maximum exponentes.
 tmaxis the maximum number of terms.popis the population size.
validateArgs :: [String] -> (String, Int) Source #
Validates the program arguments
Arguments
| :: Fitness | Training fitness function  | 
| -> (Solution -> Maybe [Double]) | Test fitness function  | 
| -> Int | Problem dimension  | 
| -> MutationCfg | Mutation configuration  | 
| -> Int | population size  | 
| -> Int | number of generations  | 
| -> IO Double | 
Runs a single experiment with a given configuration
Arguments
| :: Fitness | Training fitness function  | 
| -> (Solution -> Maybe [Double]) | Test fitness function  | 
| -> Int | Problem dimension  | 
| -> MutationCfg | Mutation configuration  | 
| -> Int | population size  | 
| -> Int | number of generations  | 
| -> IO Double | 
runCfg :: FilePath -> Int -> MutationCfg -> IO Double Source #
runs a configuration for a given data set
runCrossVal :: [String] -> IO () Source #
Main function