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.
tmax
is the maximum number of terms.pop
is 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