Absolutely, it's possible to try different hyperparameters of the network. This is what provided in h2o.deeplearning function:
I am not an expert in deep learning yet ... may be I am becoming one by doing research and discussing here ... however in my opinion the best way is simply to try different options. h2o has quite efficient code and training for my dataset typically takes about 4-5 minutes using 4 cores so what I typically would do is to write a for loop to try different options and record results of tests.
The way I do test is a bit specific (see above -1/+1 index). What it means is that model is used to perform predictions of price change on un-seen observations and provided that we know the ground truth it's a perfect way to estimate a simplified trading strategy: virtually buy or sell whatever model suggests and compare it with real results... do index is derived by dividing obtained model generated trades results by maximum possible results from the trades assumed we knew the ground truth... for example:
Inserted Code
activation = c("Tanh", "TanhWithDropout", "Rectifier", "RectifierWithDropout", "Maxout", "MaxoutWithDropout"), loss = c("Automatic", "CrossEntropy", "Quadratic", "Huber", "Absolute", "Quantile"), distribution = c("AUTO", "bernoulli", "multinomial", "gaussian", "poisson", "gamma", "tweedie", "laplace", "quantile", "huber")
I am not an expert in deep learning yet ... may be I am becoming one by doing research and discussing here ... however in my opinion the best way is simply to try different options. h2o has quite efficient code and training for my dataset typically takes about 4-5 minutes using 4 cores so what I typically would do is to write a for loop to try different options and record results of tests.
The way I do test is a bit specific (see above -1/+1 index). What it means is that model is used to perform predictions of price change on un-seen observations and provided that we know the ground truth it's a perfect way to estimate a simplified trading strategy: virtually buy or sell whatever model suggests and compare it with real results... do index is derived by dividing obtained model generated trades results by maximum possible results from the trades assumed we knew the ground truth... for example:
- absolute possible maximum gain is 14000 units. Model generated trades results in -7000 units then index is - -0.5 (bad)
- idem for +7000 units will result in 0.5 (good)
It does not provide exact results nor accounting for spreads however it's a fast way to evaluate each model and choose the best sets of parameters... Additionally pipes in R tidyverse package makes this as easy as to eat a piece of ...
What type of implementation do you have?