Skip to content
This repository was archived by the owner on Jun 15, 2023. It is now read-only.

Latest commit

 

History

History
32 lines (29 loc) · 7.16 KB

IC-TF-Hyperparameter.md

File metadata and controls

32 lines (29 loc) · 7.16 KB

Image Classification - TensorFlow Hyperparameters

Hyperparameters are parameters that are set before a machine learning model begins learning. The following hyperparameters are supported by the Amazon SageMaker built-in Image Classification - TensorFlow algorithm. See Tune an Image Classification - TensorFlow model for information on hyperparameter tuning.

Parameter Name Description
augmentation Set to "True" to apply augmentation_random_flip, augmentation_random_rotation, and augmentation_random_zoom to the training data. Valid values: string, either: ("True" or "False"). Default value: "False".
augmentation_random_flip Indicates which flip mode to use for data augmentation when augmentation is set to "True". For more information, see RandomFlip in the TensorFlow documentation. Valid values: string, any of the following: ("horizontal_and_vertical", "vertical", or "None"). Default value: "horizontal_and_vertical".
augmentation_random_rotation Indicates how much rotation to use for data augmentation when augmentation is set to "True". Values represent a fraction of 2π. Positive values rotate counterclockwise while negative values rotate clockwise. 0 means no rotation. For more information, see RandomRotation in the TensorFlow documentation. Valid values: float, range: [-1.0, 1.0]. Default value: 0.2.
augmentation_random_zoom Indicates how much vertical zoom to use for data augmentation when augmentation is set to "True". Positive values zoom out while negative values zoom in. 0 means no zoom. For more information, see RandomZoom in the TensorFlow documentation. Valid values: float, range: [-1.0, 1.0]. Default value: 0.1.
batch_size The batch size for training. For training on instances with multiple GPUs, this batch size is used across the GPUs. Valid values: positive integer. Default value: 32.
beta_1 The beta1 for the "adam" optimizer. Represents the exponential decay rate for the first moment estimates. Ignored for other optimizers. Valid values: float, range: [0.0, 1.0]. Default value: 0.9.
beta_2 The beta2 for the "adam" optimizer. Represents the exponential decay rate for the second moment estimates. Ignored for other optimizers. Valid values: float, range: [0.0, 1.0]. Default value: 0.999.
binary_mode When binary_mode is set to "True", the model returns a single probability number for the positive class and can use additional eval_metric options. Use only for binary classification problems. Valid values: string, either: ("True" or "False"). Default value: "False".
dropout_rate The dropout rate for the dropout layer in the top classification layer. Valid values: float, range: [0.0, 1.0]. Default value: 0.2
early_stopping Set to "True" to use early stopping logic during training. If "False", early stopping is not used. Valid values: string, either: ("True" or "False"). Default value: "False".
early_stopping_min_delta The minimum change needed to qualify as an improvement. An absolute change less than the value of early_stopping_min_delta does not qualify as improvement. Used only when early_stopping is set to "True".Valid values: float, range: [0.0, 1.0].Default value: 0.0.
early_stopping_patience The number of epochs to continue training with no improvement. Used only when early_stopping is set to "True". Valid values: positive integer. Default value: 5.
epochs The number of training epochs. Valid values: positive integer. Default value: 3.
epsilon The epsilon for "adam", "rmsprop", "adadelta", and "adagrad" optimizers. Usually set to a small value to avoid division by 0. Ignored for other optimizers. Valid values: float, range: [0.0, 1.0]. Default value: 1e-7.
eval_metric If binary_mode is set to "False", eval_metric can only be "accuracy". If binary_mode is "True", select any of the valid values. For more information, see Metrics in the TensorFlow documentation. Valid values: string, any of the following: ("accuracy", "precision", "recall", "auc", or "prc"). Default value: "accuracy".
image_resize_interpolation Indicates interpolation method used when resizing images. For more information, see image.resize in the TensorFlow documentation. Valid values: string, any of the following: ("bilinear", "nearest", "bicubic", "area", "lanczos3" , "lanczos5", "gaussian", or "mitchellcubic"). Default value: "bilinear".
initial_accumulator_value The starting value for the accumulators, or the per-parameter momentum values, for the "adagrad" optimizer. Ignored for other optimizers. Valid values: float, range: [0.0, 1.0]. Default value: 0.0001.
label_smoothing Indicates how much to relax the confidence on label values. For example, if label_smoothing is 0.1, then non-target labels are 0.1/num_classes and target labels are 0.9+0.1/num_classes. Valid values: float, range: [0.0, 1.0]. Default value: 0.1.
learning_rate The optimizer learning rate. Valid values: float, range: [0.0, 1.0].Default value: 0.001.
momentum The momentum for "sgd", "nesterov", and "rmsprop" optimizers. Ignored for other optimizers. Valid values: float, range: [0.0, 1.0]. Default value: 0.9.
optimizer The optimizer type. For more information, see Optimizers in the TensorFlow documentation. Valid values: string, any of the following: ("adam", "sgd", "nesterov", "rmsprop", "adagrad" , "adadelta"). Default value: "adam".
regularizers_l2 The L2 regularization factor for the dense layer in the classification layer. Valid values: float, range: [0.0, 1.0]. Default value: .0001.
reinitialize_top_layer If set to "Auto", the top classification layer parameters are re-initialized during fine-tuning. For incremental training, top classification layer parameters are not re-initialized unless set to "True". Valid values: string, any of the following: ("Auto", "True" or "False"). Default value: "Auto".
rho The discounting factor for the gradient of the "adadelta" and "rmsprop" optimizers. Ignored for other optimizers. Valid values: float, range: [0.0, 1.0]. Default value: 0.95.
train_only_on_top_layer If "True", only the top classification layer parameters are fine-tuned. If "False", all model parameters are fine-tuned. Valid values: string, either: ("True" or "False"). Default value: "False".