create_ml_model
(**kwargs)¶Creates a new MLModel
using the DataSource
and the recipe as information sources.
An MLModel
is nearly immutable. Users can update only the MLModelName
and the ScoreThreshold
in an MLModel
without creating a new MLModel
.
CreateMLModel
is an asynchronous operation. In response toCreateMLModel
, Amazon Machine Learning (Amazon ML) immediately returns and sets theMLModel
status toPENDING
. After theMLModel
has been created and ready is for use, Amazon ML sets the status toCOMPLETED
.
You can use the GetMLModel
operation to check the progress of the MLModel
during the creation operation.
CreateMLModel
requires aDataSource
with computed statistics, which can be created by settingComputeStatistics
totrue
inCreateDataSourceFromRDS
,CreateDataSourceFromS3
, orCreateDataSourceFromRedshift
operations.
See also: AWS API Documentation
Request Syntax
response = client.create_ml_model(
MLModelId='string',
MLModelName='string',
MLModelType='REGRESSION'|'BINARY'|'MULTICLASS',
Parameters={
'string': 'string'
},
TrainingDataSourceId='string',
Recipe='string',
RecipeUri='string'
)
[REQUIRED]
A user-supplied ID that uniquely identifies the MLModel
.
MLModel
.[REQUIRED]
The category of supervised learning that this MLModel
will address. Choose from the following types:
REGRESSION
if the MLModel
will be used to predict a numeric value.BINARY
if the MLModel
result has two possible values.MULTICLASS
if the MLModel
result has a limited number of values.For more information, see the Amazon Machine Learning Developer Guide.
A list of the training parameters in the MLModel
. The list is implemented as a map of key-value pairs.
The following is the current set of training parameters:
sgd.maxMLModelSizeInBytes
- The maximum allowed size of the model. Depending on the input data, the size of the model might affect its performance. The value is an integer that ranges from 100000
to 2147483648
. The default value is 33554432
.sgd.maxPasses
- The number of times that the training process traverses the observations to build the MLModel
. The value is an integer that ranges from 1
to 10000
. The default value is 10
.sgd.shuffleType
- Whether Amazon ML shuffles the training data. Shuffling the data improves a model's ability to find the optimal solution for a variety of data types. The valid values are auto
and none
. The default value is none
. We strongly recommend that you shuffle your data.sgd.l1RegularizationAmount
- The coefficient regularization L1 norm. It controls overfitting the data by penalizing large coefficients. This tends to drive coefficients to zero, resulting in a sparse feature set. If you use this parameter, start by specifying a small value, such as 1.0E-08
. The value is a double that ranges from 0
to MAX_DOUBLE
. The default is to not use L1 normalization. This parameter can't be used when L2
is specified. Use this parameter sparingly.sgd.l2RegularizationAmount
- The coefficient regularization L2 norm. It controls overfitting the data by penalizing large coefficients. This tends to drive coefficients to small, nonzero values. If you use this parameter, start by specifying a small value, such as 1.0E-08
. The value is a double that ranges from 0
to MAX_DOUBLE
. The default is to not use L2 normalization. This parameter can't be used when L1
is specified. Use this parameter sparingly.String type.
String type.
[REQUIRED]
The DataSource
that points to the training data.
MLModel
. You must specify either the recipe or its URI. If you don't specify a recipe or its URI, Amazon ML creates a default.MLModel
recipe. You must specify either the recipe or its URI. If you don't specify a recipe or its URI, Amazon ML creates a default.dict
Response Syntax
{
'MLModelId': 'string'
}
Response Structure
(dict) --
Represents the output of a CreateMLModel
operation, and is an acknowledgement that Amazon ML received the request.
The CreateMLModel
operation is asynchronous. You can poll for status updates by using the GetMLModel
operation and checking the Status
parameter.
MLModelId (string) --
A user-supplied ID that uniquely identifies the MLModel
. This value should be identical to the value of the MLModelId
in the request.
Exceptions
MachineLearning.Client.exceptions.InvalidInputException
MachineLearning.Client.exceptions.InternalServerException
MachineLearning.Client.exceptions.IdempotentParameterMismatchException