public class DeepLearning extends Job.ValidatedJob
Modifier and Type | Class and Description |
---|---|
static class |
DeepLearning.Activation
Activation functions
|
static class |
DeepLearning.ClassSamplingMethod |
static class |
DeepLearning.InitialWeightDistribution |
static class |
DeepLearning.Loss
Loss functions
CrossEntropy is recommended
|
Job.ValidatedJob.Response2CMAdaptor
Job.ChunkProgress, Job.ChunkProgressJob, Job.ColumnsJob, Job.ColumnsResJob, Job.Fail, Job.FrameJob, Job.HexJob, Job.JobCancelledException, Job.JobState, Job.List, Job.ModelJob, Job.ModelJobWithoutClassificationField, Job.Progress, Job.ProgressMonitor, Job.ValidatedJob
Request2.ColumnSelect, Request2.Dependent, Request2.DoClassBoolean, Request2.DRFCopyDataBoolean, Request2.MultiVecSelect, Request2.MultiVecSelectType, Request2.TypeaheadKey, Request2.VecClassSelect, Request2.VecSelect
Request.API, Request.Default, Request.Filter, Request.Validator<V>
RequestBuilders.ArrayBuilder, RequestBuilders.ArrayHeaderRowBuilder, RequestBuilders.ArrayRowBuilder, RequestBuilders.ArrayRowElementBuilder, RequestBuilders.ArrayRowSingleColBuilder, RequestBuilders.BooleanStringBuilder, RequestBuilders.Builder, RequestBuilders.ElementBuilder, RequestBuilders.HideBuilder, RequestBuilders.KeyCellBuilder, RequestBuilders.KeyElementBuilder, RequestBuilders.KeyLinkElementBuilder, RequestBuilders.KeyMinAvgMaxBuilder, RequestBuilders.NoCaptionObjectBuilder, RequestBuilders.ObjectBuilder, RequestBuilders.PaginatedTable, RequestBuilders.PreFormattedBuilder, RequestBuilders.Response, RequestBuilders.ResponseInfo, RequestBuilders.WarningCellBuilder
RequestArguments.Argument<T>, RequestArguments.Bool, RequestArguments.CaseModeSelect, RequestArguments.CaseSelect, RequestArguments.ClassifyBool, RequestArguments.DRFCopyDataBool, RequestArguments.EnumArgument<T extends java.lang.Enum<T>>, RequestArguments.ExistingFile, RequestArguments.FrameClassVec, RequestArguments.FrameKeyMultiVec, RequestArguments.FrameKeyVec, RequestArguments.GeneralFile, RequestArguments.H2OCategoryStrata, RequestArguments.H2OCategoryWeights, RequestArguments.H2OExistingKey, RequestArguments.H2OGLMModelKey, RequestArguments.H2OHexKey, RequestArguments.H2OHexKeyCol, RequestArguments.H2OIllegalArgumentException, RequestArguments.H2OKey, RequestArguments.H2OKey2, RequestArguments.H2OKMeansModelKey, RequestArguments.H2OModelKey<TM extends OldModel,TK extends TypeaheadKeysRequest>, RequestArguments.HexAllColumnSelect, RequestArguments.HexColumnSelect, RequestArguments.HexKeyClassCol, RequestArguments.HexNonClassColumnSelect, RequestArguments.HexNonConstantColumnSelect, RequestArguments.HexPCAColumnSelect, RequestArguments.InputCheckBox, RequestArguments.InputSelect<T>, RequestArguments.InputText<T>, RequestArguments.Int, RequestArguments.LongInt, RequestArguments.MultipleSelect<T>, RequestArguments.MultipleText<T>, RequestArguments.NTree, RequestArguments.NumberSequence, RequestArguments.NumberSequenceFloat, RequestArguments.Real, RequestArguments.Record<T>, RequestArguments.RFModelKey, RequestArguments.RSeq, RequestArguments.RSeqFloat, RequestArguments.Str, RequestArguments.StringList, RequestArguments.TypeaheadInputText<T>
RequestStatics.RequestType
Constants.Extensions, Constants.Schemes, Constants.Suffixes
Modifier and Type | Field and Description |
---|---|
DeepLearning.Activation |
activation
The activation function (non-linearity) to be used the neurons in the hidden layers.
|
long |
actual_train_samples_per_iteration |
boolean |
adaptive_rate
The implemented adaptive learning rate algorithm (ADADELTA) automatically
combines the benefits of learning rate annealing and momentum
training to avoid slow convergence.
|
boolean |
balance_classes
For imbalanced data, balance training data class counts via
over/under-sampling.
|
Key |
best_model_key
If given, store the best model so far under this key.
|
Key |
checkpoint
A model key associated with a previously trained Deep Learning
model.
|
double |
classification_stop
The stopping criteria in terms of classification error (1-accuracy) on the
training data scoring dataset.
|
boolean |
col_major |
boolean |
diagnostics
Gather diagnostics for hidden layers, such as mean and RMS values of learning
rate, momentum, weights and biases.
|
static DocGen.FieldDoc[] |
DOC_FIELDS |
static java.lang.String |
DOC_GET |
double |
epochs
The number of passes over the training dataset to be carried out.
|
double |
epsilon
The second of two hyper parameters for adaptive learning rate (ADADELTA).
|
boolean |
expert_mode
Unlock expert mode parameters than can affect model building speed,
predictive accuracy and scoring.
|
boolean |
fast_mode
Enable fast mode (minor approximation in back-propagation), should not affect results significantly.
|
boolean |
force_load_balance
Increase training speed on small datasets by splitting it into many chunks
to allow utilization of all cores.
|
int[] |
hidden
The number and size of each hidden layer in the model.
|
double[] |
hidden_dropout_ratios
A fraction of the inputs for each hidden layer to be omitted from training in order
to improve generalization.
|
boolean |
ignore_const_cols
Ignore constant training columns (no information can be gained anyway).
|
DeepLearning.InitialWeightDistribution |
initial_weight_distribution
The distribution from which initial weights are to be drawn.
|
double |
initial_weight_scale
The scale of the distribution function for Uniform or Normal distributions.
|
double |
input_dropout_ratio
A fraction of the features for each training row to be omitted from training in order
to improve generalization (dimension sampling).
|
double |
l1
A regularization method that constrains the absolute value of the weights and
has the net effect of dropping some weights (setting them to zero) from a model
to reduce complexity and avoid overfitting.
|
double |
l2
A regularization method that constrdains the sum of the squared
weights.
|
DeepLearning.Loss |
loss
The loss (error) function to be minimized by the model.
|
float |
max_after_balance_size
When classes are balanced, limit the resulting dataset size to the
specified multiple of the original dataset size.
|
int |
max_confusion_matrix_size
For classification models, the maximum size (in terms of classes) of the
confusion matrix for it to be printed.
|
int |
max_hit_ratio_k
The maximum number (top K) of predictions to use for hit ratio computation (for multi-class only, 0 to disable)
|
float |
max_w2
A maximum on the sum of the squared incoming weights into
any one neuron.
|
double |
momentum_ramp
The momentum_ramp parameter controls the amount of learning for which momentum increases
(assuming momentum_stable is larger than momentum_start).
|
double |
momentum_stable
The momentum_stable parameter controls the final momentum value reached after momentum_ramp training samples.
|
double |
momentum_start
The momentum_start parameter controls the amount of momentum at the beginning of training.
|
boolean |
nesterov_accelerated_gradient
The Nesterov accelerated gradient descent method is a modification to
traditional gradient descent for convex functions.
|
boolean |
quiet_mode
Enable quiet mode for less output to standard output.
|
double |
rate
When adaptive learning rate is disabled, the magnitude of the weight
updates are determined by the user specified learning rate
(potentially annealed), and are a function of the difference
between the predicted value and the target value.
|
double |
rate_annealing
Learning rate annealing reduces the learning rate to "freeze" into
local minima in the optimization landscape.
|
double |
rate_decay
The learning rate decay parameter controls the change of learning rate across layers.
|
double |
regression_stop
The stopping criteria in terms of regression error (MSE) on the training
data scoring dataset.
|
boolean |
replicate_training_data
Replicate the entire training dataset onto every node for faster training on small datasets.
|
double |
rho
The first of two hyper parameters for adaptive learning rate (ADADELTA).
|
double |
score_duty_cycle
Maximum fraction of wall clock time spent on model scoring on training and validation samples,
and on diagnostics such as computation of feature importances (i.e., not on training).
|
double |
score_interval
The minimum time (in seconds) to elapse between model scoring.
|
long |
score_training_samples
The number of training dataset points to be used for scoring.
|
long |
score_validation_samples
The number of validation dataset points to be used for scoring.
|
DeepLearning.ClassSamplingMethod |
score_validation_sampling
Method used to sample the validation dataset for scoring, see Score Validation Samples above.
|
long |
seed
The random seed controls sampling and initialization.
|
boolean |
shuffle_training_data
Enable shuffling of training data (on each node).
|
boolean |
single_node_mode
Run on a single node for fine-tuning of model parameters.
|
boolean |
sparse |
long |
train_samples_per_iteration
The number of training data rows to be processed per iteration.
|
boolean |
variable_importances
Whether to compute variable importances for input features.
|
_cmDomain, _names, _responseName, _sourceResponseDomain, _train, _valid, _validResponse, _validResponseDomain, validation
classification
response
cols, ignored_cols, ignored_cols_by_name
source
_fjtask, description, destination_key, end_time, exception, job_key, LIST, start_time, state
_parms, response_info
_requestHelp, SUPPORTS_ONLY_V1, SUPPORTS_ONLY_V2, SUPPORTS_V1_V2
ARRAY_BUILDER, ARRAY_HEADER_ROW_BUILDER, ARRAY_ROW_BUILDER, ARRAY_ROW_ELEMENT_BUILDER, ARRAY_ROW_SINGLECOL_BUILDER, ELEMENT_BUILDER, GSON_BUILDER, OBJECT_BUILDER, ROOT_OBJECT
_queryHtml
_arguments
ALPHA, ARGUMENTS, AUC, BASE, BEST_THRESHOLD, BETA_EPS, BIN_LIMIT, BROWSE, BUCKET, BUILT_IN_KEY_JOBS, CANCELLED, CARDINALITY, CASE, CASE_MODE, CHUNK, CLASS, CLOUD_HEALTH, CLOUD_NAME, CLOUD_SIZE, CLOUD_UPTIME_MILLIS, CLUSTERS, COEFFICIENTS, COL_INDEX, COLS, COLUMN_NAME, COLUMNS_DISPLAY, CONSENSUS, CONTENTS, COUNT, DATA_KEY, DEPTH, DESCRIPTION, DEST_KEY, DTHRESHOLDS, ELAPSED, END_TIME, ENUM_DOMAIN_SIZE, ERROR, ESCAPE_NAN, EXCLUSIVE_SPLIT_LIMIT, EXPRESSION, FAILED, FAMILY, FEATURES, FILE, FILES, FILTER, FIRST_CHUNK, FJ_QUEUE_HI, FJ_QUEUE_LO, FJ_THREADS_HI, FJ_THREADS_LO, FREE_DISK, FREE_MEM, HEADER, HEIGHT, HELP, IGNORE, ITEMS, ITERATIVE_CM, JOB, JOB_KEY, JOBS, JSON_H2O, KEY, KEYS, LAMBDA, LAST_CONTACT, LIMIT, LINK, LOCKED, MAX, MAX_DISK, MAX_ITER, MAX_MEM, MAX_ROWS, MEAN, MIN, MODEL_KEY, MODELS, MORE, MTRY, MTRY_NODES, NAME, NEG_X, NO_CM, NODE, NODE_HEALTH, NODE_NAME, NODES, NORMALIZE, NUM_COLS, NUM_CPUS, NUM_FAILED, NUM_KEYS, NUM_MISSING_VALUES, NUM_ROWS, NUM_SUCCEEDED, NUM_TREES, OBJECT, OFFSET, OOBEE, PARALLEL, PARSER_TYPE, PATH, PREVIEW, PREVIOUS_MODEL_KEY, PRIOR, PROGRESS, PROGRESS_KEY, PROGRESS_TOTAL, REDIRECT, REDIRECT_ARGS, REPLICATION_FACTOR, REQUEST_TIME, RESPONSE, RHO, ROW, ROW_SIZE, ROWS, RPCS, SAMPLE, SAMPLING_STRATEGY, SCALE, SEED, SENT_ROWS, SEPARATOR, SIZE, SOURCE_KEY, STACK_TRACES, START_TIME, STAT_TYPE, STATUS, STEP, STRATA_SAMPLES, SUCCEEDED, SYSTEM_LOAD, TASK_KEY, TCPS_ACTIVE, TCPS_DUTY, TIME, TO_ENUM, TOT_MEM, TREE_COUNT, TREE_DEPTH, TREE_LEAVES, TREE_NUM, TREES, TWEEDIE_POWER, TYPE, URL, USE_NON_LOCAL_DATA, VALUE, VALUE_SIZE, VALUE_TYPE, VARIANCE, VERSION, VIEW, WARNINGS, WEIGHT, WEIGHTS, WIDTH, X, XVAL, Y
Constructor and Description |
---|
DeepLearning() |
Modifier and Type | Method and Description |
---|---|
void |
delete()
Delete job related keys
|
void |
execImpl()
Train a Deep Learning model, assumes that all members are populated
|
DeepLearningModel |
initModel()
Create an initial Deep Learning model, typically to be trained by trainModel(model)
|
static java.lang.String |
link(Key k,
java.lang.String content)
Return a query link to this page
|
static java.lang.String |
link(Key k,
java.lang.String content,
Key cp,
java.lang.String response,
Key val)
Return a query link to this page
|
float |
progress()
Report the relative progress of building a Deep Learning model (measured by how many epochs are done)
|
protected void |
queryArgumentValueSet(RequestArguments.Argument arg,
java.util.Properties inputArgs)
Helper to handle arguments based on existing input values
|
protected RequestBuilders.Response |
redirect()
Redirect to the model page for that model that is trained by this job
|
protected void |
registered(RequestServer.API_VERSION ver)
Helper to specify which arguments trigger a refresh on change
|
boolean |
toHTML(java.lang.StringBuilder sb)
Print model parameters as JSON
|
DeepLearningModel |
trainModel(DeepLearningModel model)
Train a Deep Learning neural net model
|
getCMDomain, getOrigValidation, getValidAdaptor, getValidation, getVectorDomain, hasValidation, init, prepareValidationWithModel, toJSON
selectFrame, selectVecs
all, cancel, cancel, cancel, checkIdx, defaultDestKey, defaultJobKey, dest, findJob, findJobByDest, fork, get, getState, gridParallelism, invoke, isCancelledOrCrashed, isCancelledXX, isCrashed, isDone, isEnded, isRunning, isRunning, onCancelled, remove, runTimeMs, self, serve, speedDescription, speedValue, start, waitUntilJobEnded, waitUntilJobEnded
create, fillResponseInfo, filterNaCols, input, logStart, makeJsonBox, serveGrid, set, split, superServeGrid, supportedVersions, toString
addToNavbar, addToNavbar, addToNavbar, DocExampleFail, DocExampleSucc, href, href, hrefType, HTMLHelp, htmlTemplate, initializeNavBar, log, mapTypeahead, ReSTHelp, serve, serveJava, serveResponse, toDocGET, toJava, wrap, wrap, wrap, writeJSONFields
build, buildJSONResponseBox, buildResponseHeader, name
buildQuery, checkArguments
arguments, argumentsToJson, frameColumnNameToIndex, vaCategoryNames, vaCategoryNames, vaColumnNameToIndex
checkJsonName, encodeRedirectArgs, JSON2HTML, jsonError, requestName, Str2JSON
clone, frozenType, init, newInstance, read, toDocField, write, writeJSON
public static DocGen.FieldDoc[] DOC_FIELDS
public static final java.lang.String DOC_GET
@Request.API(help="Model checkpoint to resume training with", filter=Request.Default.class, json=true) public Key checkpoint
@Request.API(help="Key to store the always-best model under", filter=Request.Default.class, json=true) public Key best_model_key
@Request.API(help="Enable expert mode (to access all options from GUI)", filter=Request.Default.class, json=true) public boolean expert_mode
@Request.API(help="Activation function", filter=Request.Default.class, json=true, importance=CRITICAL) public DeepLearning.Activation activation
@Request.API(help="Hidden layer sizes (e.g. 100,100). Grid search: (10,10), (20,20,20)", filter=Request.Default.class, json=true, importance=CRITICAL) public int[] hidden
@Request.API(help="How many times the dataset should be iterated (streamed), can be fractional", filter=Request.Default.class, dmin=0.001, json=true, importance=CRITICAL) public double epochs
@Request.API(help="Number of training samples (globally) per MapReduce iteration. Special values are 0: one epoch, -1: all available data (e.g., replicated training data)", filter=Request.Default.class, lmin=-1L, json=true, importance=SECONDARY) public long train_samples_per_iteration
public long actual_train_samples_per_iteration
@Request.API(help="Seed for random numbers (affects sampling) - Note: only reproducible when running single threaded", filter=Request.Default.class, json=true) public long seed
@Request.API(help="Adaptive learning rate (ADADELTA)", filter=Request.Default.class, json=true, importance=SECONDARY) public boolean adaptive_rate
@Request.API(help="Adaptive learning rate time decay factor (similarity to prior updates)", filter=Request.Default.class, dmin=0.01, dmax=1.0, json=true, importance=SECONDARY) public double rho
@Request.API(help="Adaptive learning rate smoothing factor (to avoid divisions by zero and allow progress)", filter=Request.Default.class, dmin=1.0E-15, dmax=1.0, json=true, importance=SECONDARY) public double epsilon
@Request.API(help="Learning rate (higher => less stable, lower => slower convergence)", filter=Request.Default.class, dmin=1.0E-10, dmax=1.0, json=true, importance=SECONDARY) public double rate
@Request.API(help="Learning rate annealing: rate / (1 + rate_annealing * samples)", filter=Request.Default.class, dmin=0.0, dmax=1.0, json=true, importance=SECONDARY) public double rate_annealing
@Request.API(help="Learning rate decay factor between layers (N-th layer: rate*alpha^(N-1))", filter=Request.Default.class, dmin=0.0, json=true, importance=EXPERT) public double rate_decay
@Request.API(help="Initial momentum at the beginning of training (try 0.5)", filter=Request.Default.class, dmin=0.0, dmax=0.9999999999, json=true, importance=SECONDARY) public double momentum_start
@Request.API(help="Number of training samples for which momentum increases", filter=Request.Default.class, dmin=1.0, json=true, importance=SECONDARY) public double momentum_ramp
@Request.API(help="Final momentum after the ramp is over (try 0.99)", filter=Request.Default.class, dmin=0.0, dmax=0.9999999999, json=true, importance=SECONDARY) public double momentum_stable
@Request.API(help="Use Nesterov accelerated gradient (recommended)", filter=Request.Default.class, json=true, importance=SECONDARY) public boolean nesterov_accelerated_gradient
@Request.API(help="Input layer dropout ratio (can improve generalization, try 0.1 or 0.2)", filter=Request.Default.class, dmin=0.0, dmax=1.0, json=true, importance=SECONDARY) public double input_dropout_ratio
@Request.API(help="Hidden layer dropout ratios (can improve generalization), specify one value per hidden layer, defaults to 0.5", filter=Request.Default.class, dmin=0.0, dmax=1.0, json=true, importance=SECONDARY) public double[] hidden_dropout_ratios
@Request.API(help="L1 regularization (can add stability and improve generalization, causes many weights to become 0)", filter=Request.Default.class, dmin=0.0, dmax=1.0, json=true, importance=SECONDARY) public double l1
@Request.API(help="L2 regularization (can add stability and improve generalization, causes many weights to be small", filter=Request.Default.class, dmin=0.0, dmax=1.0, json=true, importance=SECONDARY) public double l2
@Request.API(help="Constraint for squared sum of incoming weights per unit (e.g. for Rectifier)", filter=Request.Default.class, dmin=1.0E-10, json=true, importance=EXPERT) public float max_w2
@Request.API(help="Initial Weight Distribution", filter=Request.Default.class, json=true, importance=EXPERT) public DeepLearning.InitialWeightDistribution initial_weight_distribution
@Request.API(help="Uniform: -value...value, Normal: stddev)", filter=Request.Default.class, dmin=0.0, json=true, importance=EXPERT) public double initial_weight_scale
@Request.API(help="Loss function", filter=Request.Default.class, json=true, importance=EXPERT) public DeepLearning.Loss loss
@Request.API(help="Shortest time interval (in secs) between model scoring", filter=Request.Default.class, dmin=0.0, json=true, importance=SECONDARY) public double score_interval
@Request.API(help="Number of training set samples for scoring (0 for all)", filter=Request.Default.class, lmin=0L, json=true, importance=EXPERT) public long score_training_samples
@Request.API(help="Number of validation set samples for scoring (0 for all)", filter=Request.Default.class, lmin=0L, json=true, importance=EXPERT) public long score_validation_samples
@Request.API(help="Maximum duty cycle fraction for scoring (lower: more training, higher: more scoring).", filter=Request.Default.class, dmin=0.0, dmax=1.0, json=true, importance=EXPERT) public double score_duty_cycle
@Request.API(help="Stopping criterion for classification error fraction on training data (-1 to disable)", filter=Request.Default.class, dmin=-1.0, dmax=1.0, json=true, importance=EXPERT) public double classification_stop
@Request.API(help="Stopping criterion for regression error (MSE) on training data (-1 to disable)", filter=Request.Default.class, dmin=-1.0, json=true, importance=EXPERT) public double regression_stop
@Request.API(help="Enable quiet mode for less output to standard output", filter=Request.Default.class, json=true) public boolean quiet_mode
@Request.API(help="Max. size (number of classes) for confusion matrices to be shown", filter=Request.Default.class, json=true) public int max_confusion_matrix_size
@Request.API(help="Max. number (top K) of predictions to use for hit ratio computation (for multi-class only, 0 to disable)", filter=Request.Default.class, lmin=0L, json=true, importance=EXPERT) public int max_hit_ratio_k
@Request.API(help="Balance training data class counts via over/under-sampling (for imbalanced data)", filter=Request.Default.class, json=true, importance=EXPERT) public boolean balance_classes
@Request.API(help="Maximum relative size of the training data after balancing class counts (can be less than 1.0)", filter=Request.Default.class, json=true, dmin=0.001, importance=EXPERT) public float max_after_balance_size
@Request.API(help="Method used to sample validation dataset for scoring", filter=Request.Default.class, json=true, importance=EXPERT) public DeepLearning.ClassSamplingMethod score_validation_sampling
@Request.API(help="Enable diagnostics for hidden layers", filter=Request.Default.class, json=true) public boolean diagnostics
@Request.API(help="Compute variable importances for input features (Gedeon method) - can be slow for large networks", filter=Request.Default.class, json=true) public boolean variable_importances
@Request.API(help="Enable fast mode (minor approximation in back-propagation)", filter=Request.Default.class, json=true, importance=EXPERT) public boolean fast_mode
@Request.API(help="Ignore constant training columns (no information can be gained anyway)", filter=Request.Default.class, json=true, importance=EXPERT) public boolean ignore_const_cols
@Request.API(help="Force extra load balancing to increase training speed for small datasets (to keep all cores busy)", filter=Request.Default.class, json=true) public boolean force_load_balance
@Request.API(help="Replicate the entire training dataset onto every node for faster training on small datasets", filter=Request.Default.class, json=true, importance=EXPERT) public boolean replicate_training_data
@Request.API(help="Run on a single node for fine-tuning of model parameters", filter=Request.Default.class, json=true) public boolean single_node_mode
@Request.API(help="Enable shuffling of training data (recommended if training data is replicated and train_samples_per_iteration is close to #nodes x #rows)", filter=Request.Default.class, json=true, importance=EXPERT) public boolean shuffle_training_data
@Request.API(help="Sparse data handling (Experimental).", filter=Request.Default.class, json=true, importance=EXPERT) public boolean sparse
@Request.API(help="Use a column major weight matrix for input layer. Can speed up forward propagation, but might slow down backpropagation (Experimental).", filter=Request.Default.class, json=true, importance=EXPERT) public boolean col_major
protected void registered(RequestServer.API_VERSION ver)
registered
in class Job.ColumnsResJob
ver
- protected void queryArgumentValueSet(RequestArguments.Argument arg, java.util.Properties inputArgs)
queryArgumentValueSet
in class RequestQueries
arg
- inputArgs
- public boolean toHTML(java.lang.StringBuilder sb)
public static java.lang.String link(Key k, java.lang.String content)
k
- Model Keycontent
- Link textpublic static java.lang.String link(Key k, java.lang.String content, Key cp, java.lang.String response, Key val)
k
- Model Keycontent
- Link textcp
- Key to checkpoint to continue training with (optional)response
- Responseval
- Validation data set keypublic float progress()
public final void execImpl()
protected RequestBuilders.Response redirect()
public final DeepLearningModel initModel()
public final DeepLearningModel trainModel(DeepLearningModel model)
model
- Input model (e.g., from initModel(), or from a previous training run)public void delete()