Skip to content

Releases: wzwietering/model_builder

Hyperparameter improvements

07 Mar 13:44
Compare
Choose a tag to compare
Pre-release

Improvements to the HyperParameters object. Now you have to set bounds. Hyperparameters created from a nested dictionary structure, allowing them to be stored as JSON. Below is an example.

from model_builder import HyperParameters

hyperparameters_dict = {
     "learning_rate": {"min": 0.0001, "max": 0.001, "start": 0.0001},
     "epochs": {"min": 1, "max": 100, "start": 2},
     "validation_split": {"min": 0.1, "max": 0.3, "start": 0.2},
}

hyperparameters = HyperParameters(**hyperparameters_dict)

Also ensured that learning rate is now used, which was previously forgotten.

Optimization framework

03 Mar 20:56
603a0bc
Compare
Choose a tag to compare
Pre-release

This release contains code to optimize hyperparameters. It is mainly a framework, but Hill Climbing is included as a proof of technology.

Added learning rate

28 Feb 08:15
Compare
Choose a tag to compare
Added learning rate Pre-release
Pre-release

Now you can set the learning rate of your model from the configuration. This is optional.

Improved packaging

27 Feb 13:25
Compare
Choose a tag to compare
Improved packaging Pre-release
Pre-release

Changes

The ModelBuilder, ModelSerializer and Model are now easier to import:

from model_builder import ModelBuilder
from model_builder import ModelSerializer
from model_builder import Model

First release

27 Feb 12:24
Compare
Choose a tag to compare
First release Pre-release
Pre-release

Version 0.1.0

Build Keras models using a config. All can be done from the ModelBuilder class. This parses the config, analyzes it and converts it into a Keras model. A serializer is also available which can reproduce the input exactly. Currently the code supports the following parameters:

  • Model parameters
    • Loss
    • Activation
    • Optimizer
    • Metrics (optional)
  • Dense layers
    • Units
    • Dropout (optional)
  • Conv2D layers
    • Filters
    • Kernel size
    • Stride (optional)
    • Max Pooling (optional, can not be combined with Average Pooling)
    • Average Pooling (optional, can not be combined with Max Pooling)
    • Dropout (optional)
  • RNN, GRU and LSTM layers
    • Units
    • Dropout (optional)
    • Bidirectional (optional)
  • Gaussian Noise layers
    • Stddev