1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/machinelearning/MachineLearning_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/core/utils/DateTime.h>
10 #include <aws/machinelearning/model/EntityStatus.h>
11 #include <aws/machinelearning/model/RealtimeEndpointInfo.h>
12 #include <aws/core/utils/memory/stl/AWSMap.h>
13 #include <aws/machinelearning/model/Algorithm.h>
14 #include <aws/machinelearning/model/MLModelType.h>
15 #include <utility>
16 
17 namespace Aws
18 {
19 namespace Utils
20 {
21 namespace Json
22 {
23   class JsonValue;
24   class JsonView;
25 } // namespace Json
26 } // namespace Utils
27 namespace MachineLearning
28 {
29 namespace Model
30 {
31 
32   /**
33    * <p> Represents the output of a <code>GetMLModel</code> operation. </p> <p>The
34    * content consists of the detailed metadata and the current status of the
35    * <code>MLModel</code>.</p><p><h3>See Also:</h3>   <a
36    * href="http://docs.aws.amazon.com/goto/WebAPI/machinelearning-2014-12-12/MLModel">AWS
37    * API Reference</a></p>
38    */
39   class AWS_MACHINELEARNING_API MLModel
40   {
41   public:
42     MLModel();
43     MLModel(Aws::Utils::Json::JsonView jsonValue);
44     MLModel& operator=(Aws::Utils::Json::JsonView jsonValue);
45     Aws::Utils::Json::JsonValue Jsonize() const;
46 
47 
48     /**
49      * <p>The ID assigned to the <code>MLModel</code> at creation.</p>
50      */
GetMLModelId()51     inline const Aws::String& GetMLModelId() const{ return m_mLModelId; }
52 
53     /**
54      * <p>The ID assigned to the <code>MLModel</code> at creation.</p>
55      */
MLModelIdHasBeenSet()56     inline bool MLModelIdHasBeenSet() const { return m_mLModelIdHasBeenSet; }
57 
58     /**
59      * <p>The ID assigned to the <code>MLModel</code> at creation.</p>
60      */
SetMLModelId(const Aws::String & value)61     inline void SetMLModelId(const Aws::String& value) { m_mLModelIdHasBeenSet = true; m_mLModelId = value; }
62 
63     /**
64      * <p>The ID assigned to the <code>MLModel</code> at creation.</p>
65      */
SetMLModelId(Aws::String && value)66     inline void SetMLModelId(Aws::String&& value) { m_mLModelIdHasBeenSet = true; m_mLModelId = std::move(value); }
67 
68     /**
69      * <p>The ID assigned to the <code>MLModel</code> at creation.</p>
70      */
SetMLModelId(const char * value)71     inline void SetMLModelId(const char* value) { m_mLModelIdHasBeenSet = true; m_mLModelId.assign(value); }
72 
73     /**
74      * <p>The ID assigned to the <code>MLModel</code> at creation.</p>
75      */
WithMLModelId(const Aws::String & value)76     inline MLModel& WithMLModelId(const Aws::String& value) { SetMLModelId(value); return *this;}
77 
78     /**
79      * <p>The ID assigned to the <code>MLModel</code> at creation.</p>
80      */
WithMLModelId(Aws::String && value)81     inline MLModel& WithMLModelId(Aws::String&& value) { SetMLModelId(std::move(value)); return *this;}
82 
83     /**
84      * <p>The ID assigned to the <code>MLModel</code> at creation.</p>
85      */
WithMLModelId(const char * value)86     inline MLModel& WithMLModelId(const char* value) { SetMLModelId(value); return *this;}
87 
88 
89     /**
90      * <p>The ID of the training <code>DataSource</code>. The
91      * <code>CreateMLModel</code> operation uses the
92      * <code>TrainingDataSourceId</code>.</p>
93      */
GetTrainingDataSourceId()94     inline const Aws::String& GetTrainingDataSourceId() const{ return m_trainingDataSourceId; }
95 
96     /**
97      * <p>The ID of the training <code>DataSource</code>. The
98      * <code>CreateMLModel</code> operation uses the
99      * <code>TrainingDataSourceId</code>.</p>
100      */
TrainingDataSourceIdHasBeenSet()101     inline bool TrainingDataSourceIdHasBeenSet() const { return m_trainingDataSourceIdHasBeenSet; }
102 
103     /**
104      * <p>The ID of the training <code>DataSource</code>. The
105      * <code>CreateMLModel</code> operation uses the
106      * <code>TrainingDataSourceId</code>.</p>
107      */
SetTrainingDataSourceId(const Aws::String & value)108     inline void SetTrainingDataSourceId(const Aws::String& value) { m_trainingDataSourceIdHasBeenSet = true; m_trainingDataSourceId = value; }
109 
110     /**
111      * <p>The ID of the training <code>DataSource</code>. The
112      * <code>CreateMLModel</code> operation uses the
113      * <code>TrainingDataSourceId</code>.</p>
114      */
SetTrainingDataSourceId(Aws::String && value)115     inline void SetTrainingDataSourceId(Aws::String&& value) { m_trainingDataSourceIdHasBeenSet = true; m_trainingDataSourceId = std::move(value); }
116 
117     /**
118      * <p>The ID of the training <code>DataSource</code>. The
119      * <code>CreateMLModel</code> operation uses the
120      * <code>TrainingDataSourceId</code>.</p>
121      */
SetTrainingDataSourceId(const char * value)122     inline void SetTrainingDataSourceId(const char* value) { m_trainingDataSourceIdHasBeenSet = true; m_trainingDataSourceId.assign(value); }
123 
124     /**
125      * <p>The ID of the training <code>DataSource</code>. The
126      * <code>CreateMLModel</code> operation uses the
127      * <code>TrainingDataSourceId</code>.</p>
128      */
WithTrainingDataSourceId(const Aws::String & value)129     inline MLModel& WithTrainingDataSourceId(const Aws::String& value) { SetTrainingDataSourceId(value); return *this;}
130 
131     /**
132      * <p>The ID of the training <code>DataSource</code>. The
133      * <code>CreateMLModel</code> operation uses the
134      * <code>TrainingDataSourceId</code>.</p>
135      */
WithTrainingDataSourceId(Aws::String && value)136     inline MLModel& WithTrainingDataSourceId(Aws::String&& value) { SetTrainingDataSourceId(std::move(value)); return *this;}
137 
138     /**
139      * <p>The ID of the training <code>DataSource</code>. The
140      * <code>CreateMLModel</code> operation uses the
141      * <code>TrainingDataSourceId</code>.</p>
142      */
WithTrainingDataSourceId(const char * value)143     inline MLModel& WithTrainingDataSourceId(const char* value) { SetTrainingDataSourceId(value); return *this;}
144 
145 
146     /**
147      * <p>The AWS user account from which the <code>MLModel</code> was created. The
148      * account type can be either an AWS root account or an AWS Identity and Access
149      * Management (IAM) user account.</p>
150      */
GetCreatedByIamUser()151     inline const Aws::String& GetCreatedByIamUser() const{ return m_createdByIamUser; }
152 
153     /**
154      * <p>The AWS user account from which the <code>MLModel</code> was created. The
155      * account type can be either an AWS root account or an AWS Identity and Access
156      * Management (IAM) user account.</p>
157      */
CreatedByIamUserHasBeenSet()158     inline bool CreatedByIamUserHasBeenSet() const { return m_createdByIamUserHasBeenSet; }
159 
160     /**
161      * <p>The AWS user account from which the <code>MLModel</code> was created. The
162      * account type can be either an AWS root account or an AWS Identity and Access
163      * Management (IAM) user account.</p>
164      */
SetCreatedByIamUser(const Aws::String & value)165     inline void SetCreatedByIamUser(const Aws::String& value) { m_createdByIamUserHasBeenSet = true; m_createdByIamUser = value; }
166 
167     /**
168      * <p>The AWS user account from which the <code>MLModel</code> was created. The
169      * account type can be either an AWS root account or an AWS Identity and Access
170      * Management (IAM) user account.</p>
171      */
SetCreatedByIamUser(Aws::String && value)172     inline void SetCreatedByIamUser(Aws::String&& value) { m_createdByIamUserHasBeenSet = true; m_createdByIamUser = std::move(value); }
173 
174     /**
175      * <p>The AWS user account from which the <code>MLModel</code> was created. The
176      * account type can be either an AWS root account or an AWS Identity and Access
177      * Management (IAM) user account.</p>
178      */
SetCreatedByIamUser(const char * value)179     inline void SetCreatedByIamUser(const char* value) { m_createdByIamUserHasBeenSet = true; m_createdByIamUser.assign(value); }
180 
181     /**
182      * <p>The AWS user account from which the <code>MLModel</code> was created. The
183      * account type can be either an AWS root account or an AWS Identity and Access
184      * Management (IAM) user account.</p>
185      */
WithCreatedByIamUser(const Aws::String & value)186     inline MLModel& WithCreatedByIamUser(const Aws::String& value) { SetCreatedByIamUser(value); return *this;}
187 
188     /**
189      * <p>The AWS user account from which the <code>MLModel</code> was created. The
190      * account type can be either an AWS root account or an AWS Identity and Access
191      * Management (IAM) user account.</p>
192      */
WithCreatedByIamUser(Aws::String && value)193     inline MLModel& WithCreatedByIamUser(Aws::String&& value) { SetCreatedByIamUser(std::move(value)); return *this;}
194 
195     /**
196      * <p>The AWS user account from which the <code>MLModel</code> was created. The
197      * account type can be either an AWS root account or an AWS Identity and Access
198      * Management (IAM) user account.</p>
199      */
WithCreatedByIamUser(const char * value)200     inline MLModel& WithCreatedByIamUser(const char* value) { SetCreatedByIamUser(value); return *this;}
201 
202 
203     /**
204      * <p>The time that the <code>MLModel</code> was created. The time is expressed in
205      * epoch time.</p>
206      */
GetCreatedAt()207     inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; }
208 
209     /**
210      * <p>The time that the <code>MLModel</code> was created. The time is expressed in
211      * epoch time.</p>
212      */
CreatedAtHasBeenSet()213     inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
214 
215     /**
216      * <p>The time that the <code>MLModel</code> was created. The time is expressed in
217      * epoch time.</p>
218      */
SetCreatedAt(const Aws::Utils::DateTime & value)219     inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; }
220 
221     /**
222      * <p>The time that the <code>MLModel</code> was created. The time is expressed in
223      * epoch time.</p>
224      */
SetCreatedAt(Aws::Utils::DateTime && value)225     inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); }
226 
227     /**
228      * <p>The time that the <code>MLModel</code> was created. The time is expressed in
229      * epoch time.</p>
230      */
WithCreatedAt(const Aws::Utils::DateTime & value)231     inline MLModel& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;}
232 
233     /**
234      * <p>The time that the <code>MLModel</code> was created. The time is expressed in
235      * epoch time.</p>
236      */
WithCreatedAt(Aws::Utils::DateTime && value)237     inline MLModel& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;}
238 
239 
240     /**
241      * <p>The time of the most recent edit to the <code>MLModel</code>. The time is
242      * expressed in epoch time.</p>
243      */
GetLastUpdatedAt()244     inline const Aws::Utils::DateTime& GetLastUpdatedAt() const{ return m_lastUpdatedAt; }
245 
246     /**
247      * <p>The time of the most recent edit to the <code>MLModel</code>. The time is
248      * expressed in epoch time.</p>
249      */
LastUpdatedAtHasBeenSet()250     inline bool LastUpdatedAtHasBeenSet() const { return m_lastUpdatedAtHasBeenSet; }
251 
252     /**
253      * <p>The time of the most recent edit to the <code>MLModel</code>. The time is
254      * expressed in epoch time.</p>
255      */
SetLastUpdatedAt(const Aws::Utils::DateTime & value)256     inline void SetLastUpdatedAt(const Aws::Utils::DateTime& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = value; }
257 
258     /**
259      * <p>The time of the most recent edit to the <code>MLModel</code>. The time is
260      * expressed in epoch time.</p>
261      */
SetLastUpdatedAt(Aws::Utils::DateTime && value)262     inline void SetLastUpdatedAt(Aws::Utils::DateTime&& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = std::move(value); }
263 
264     /**
265      * <p>The time of the most recent edit to the <code>MLModel</code>. The time is
266      * expressed in epoch time.</p>
267      */
WithLastUpdatedAt(const Aws::Utils::DateTime & value)268     inline MLModel& WithLastUpdatedAt(const Aws::Utils::DateTime& value) { SetLastUpdatedAt(value); return *this;}
269 
270     /**
271      * <p>The time of the most recent edit to the <code>MLModel</code>. The time is
272      * expressed in epoch time.</p>
273      */
WithLastUpdatedAt(Aws::Utils::DateTime && value)274     inline MLModel& WithLastUpdatedAt(Aws::Utils::DateTime&& value) { SetLastUpdatedAt(std::move(value)); return *this;}
275 
276 
277     /**
278      * <p>A user-supplied name or description of the <code>MLModel</code>.</p>
279      */
GetName()280     inline const Aws::String& GetName() const{ return m_name; }
281 
282     /**
283      * <p>A user-supplied name or description of the <code>MLModel</code>.</p>
284      */
NameHasBeenSet()285     inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
286 
287     /**
288      * <p>A user-supplied name or description of the <code>MLModel</code>.</p>
289      */
SetName(const Aws::String & value)290     inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
291 
292     /**
293      * <p>A user-supplied name or description of the <code>MLModel</code>.</p>
294      */
SetName(Aws::String && value)295     inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
296 
297     /**
298      * <p>A user-supplied name or description of the <code>MLModel</code>.</p>
299      */
SetName(const char * value)300     inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
301 
302     /**
303      * <p>A user-supplied name or description of the <code>MLModel</code>.</p>
304      */
WithName(const Aws::String & value)305     inline MLModel& WithName(const Aws::String& value) { SetName(value); return *this;}
306 
307     /**
308      * <p>A user-supplied name or description of the <code>MLModel</code>.</p>
309      */
WithName(Aws::String && value)310     inline MLModel& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
311 
312     /**
313      * <p>A user-supplied name or description of the <code>MLModel</code>.</p>
314      */
WithName(const char * value)315     inline MLModel& WithName(const char* value) { SetName(value); return *this;}
316 
317 
318     /**
319      * <p>The current status of an <code>MLModel</code>. This element can have one of
320      * the following values: </p> <ul> <li> <p> <code>PENDING</code> - Amazon Machine
321      * Learning (Amazon ML) submitted a request to create an <code>MLModel</code>.</p>
322      * </li> <li> <p> <code>INPROGRESS</code> - The creation process is underway.</p>
323      * </li> <li> <p> <code>FAILED</code> - The request to create an
324      * <code>MLModel</code> didn't run to completion. The model isn't usable.</p> </li>
325      * <li> <p> <code>COMPLETED</code> - The creation process completed
326      * successfully.</p> </li> <li> <p> <code>DELETED</code> - The <code>MLModel</code>
327      * is marked as deleted. It isn't usable.</p> </li> </ul>
328      */
GetStatus()329     inline const EntityStatus& GetStatus() const{ return m_status; }
330 
331     /**
332      * <p>The current status of an <code>MLModel</code>. This element can have one of
333      * the following values: </p> <ul> <li> <p> <code>PENDING</code> - Amazon Machine
334      * Learning (Amazon ML) submitted a request to create an <code>MLModel</code>.</p>
335      * </li> <li> <p> <code>INPROGRESS</code> - The creation process is underway.</p>
336      * </li> <li> <p> <code>FAILED</code> - The request to create an
337      * <code>MLModel</code> didn't run to completion. The model isn't usable.</p> </li>
338      * <li> <p> <code>COMPLETED</code> - The creation process completed
339      * successfully.</p> </li> <li> <p> <code>DELETED</code> - The <code>MLModel</code>
340      * is marked as deleted. It isn't usable.</p> </li> </ul>
341      */
StatusHasBeenSet()342     inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
343 
344     /**
345      * <p>The current status of an <code>MLModel</code>. This element can have one of
346      * the following values: </p> <ul> <li> <p> <code>PENDING</code> - Amazon Machine
347      * Learning (Amazon ML) submitted a request to create an <code>MLModel</code>.</p>
348      * </li> <li> <p> <code>INPROGRESS</code> - The creation process is underway.</p>
349      * </li> <li> <p> <code>FAILED</code> - The request to create an
350      * <code>MLModel</code> didn't run to completion. The model isn't usable.</p> </li>
351      * <li> <p> <code>COMPLETED</code> - The creation process completed
352      * successfully.</p> </li> <li> <p> <code>DELETED</code> - The <code>MLModel</code>
353      * is marked as deleted. It isn't usable.</p> </li> </ul>
354      */
SetStatus(const EntityStatus & value)355     inline void SetStatus(const EntityStatus& value) { m_statusHasBeenSet = true; m_status = value; }
356 
357     /**
358      * <p>The current status of an <code>MLModel</code>. This element can have one of
359      * the following values: </p> <ul> <li> <p> <code>PENDING</code> - Amazon Machine
360      * Learning (Amazon ML) submitted a request to create an <code>MLModel</code>.</p>
361      * </li> <li> <p> <code>INPROGRESS</code> - The creation process is underway.</p>
362      * </li> <li> <p> <code>FAILED</code> - The request to create an
363      * <code>MLModel</code> didn't run to completion. The model isn't usable.</p> </li>
364      * <li> <p> <code>COMPLETED</code> - The creation process completed
365      * successfully.</p> </li> <li> <p> <code>DELETED</code> - The <code>MLModel</code>
366      * is marked as deleted. It isn't usable.</p> </li> </ul>
367      */
SetStatus(EntityStatus && value)368     inline void SetStatus(EntityStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
369 
370     /**
371      * <p>The current status of an <code>MLModel</code>. This element can have one of
372      * the following values: </p> <ul> <li> <p> <code>PENDING</code> - Amazon Machine
373      * Learning (Amazon ML) submitted a request to create an <code>MLModel</code>.</p>
374      * </li> <li> <p> <code>INPROGRESS</code> - The creation process is underway.</p>
375      * </li> <li> <p> <code>FAILED</code> - The request to create an
376      * <code>MLModel</code> didn't run to completion. The model isn't usable.</p> </li>
377      * <li> <p> <code>COMPLETED</code> - The creation process completed
378      * successfully.</p> </li> <li> <p> <code>DELETED</code> - The <code>MLModel</code>
379      * is marked as deleted. It isn't usable.</p> </li> </ul>
380      */
WithStatus(const EntityStatus & value)381     inline MLModel& WithStatus(const EntityStatus& value) { SetStatus(value); return *this;}
382 
383     /**
384      * <p>The current status of an <code>MLModel</code>. This element can have one of
385      * the following values: </p> <ul> <li> <p> <code>PENDING</code> - Amazon Machine
386      * Learning (Amazon ML) submitted a request to create an <code>MLModel</code>.</p>
387      * </li> <li> <p> <code>INPROGRESS</code> - The creation process is underway.</p>
388      * </li> <li> <p> <code>FAILED</code> - The request to create an
389      * <code>MLModel</code> didn't run to completion. The model isn't usable.</p> </li>
390      * <li> <p> <code>COMPLETED</code> - The creation process completed
391      * successfully.</p> </li> <li> <p> <code>DELETED</code> - The <code>MLModel</code>
392      * is marked as deleted. It isn't usable.</p> </li> </ul>
393      */
WithStatus(EntityStatus && value)394     inline MLModel& WithStatus(EntityStatus&& value) { SetStatus(std::move(value)); return *this;}
395 
396 
397 
GetSizeInBytes()398     inline long long GetSizeInBytes() const{ return m_sizeInBytes; }
399 
400 
SizeInBytesHasBeenSet()401     inline bool SizeInBytesHasBeenSet() const { return m_sizeInBytesHasBeenSet; }
402 
403 
SetSizeInBytes(long long value)404     inline void SetSizeInBytes(long long value) { m_sizeInBytesHasBeenSet = true; m_sizeInBytes = value; }
405 
406 
WithSizeInBytes(long long value)407     inline MLModel& WithSizeInBytes(long long value) { SetSizeInBytes(value); return *this;}
408 
409 
410     /**
411      * <p>The current endpoint of the <code>MLModel</code>.</p>
412      */
GetEndpointInfo()413     inline const RealtimeEndpointInfo& GetEndpointInfo() const{ return m_endpointInfo; }
414 
415     /**
416      * <p>The current endpoint of the <code>MLModel</code>.</p>
417      */
EndpointInfoHasBeenSet()418     inline bool EndpointInfoHasBeenSet() const { return m_endpointInfoHasBeenSet; }
419 
420     /**
421      * <p>The current endpoint of the <code>MLModel</code>.</p>
422      */
SetEndpointInfo(const RealtimeEndpointInfo & value)423     inline void SetEndpointInfo(const RealtimeEndpointInfo& value) { m_endpointInfoHasBeenSet = true; m_endpointInfo = value; }
424 
425     /**
426      * <p>The current endpoint of the <code>MLModel</code>.</p>
427      */
SetEndpointInfo(RealtimeEndpointInfo && value)428     inline void SetEndpointInfo(RealtimeEndpointInfo&& value) { m_endpointInfoHasBeenSet = true; m_endpointInfo = std::move(value); }
429 
430     /**
431      * <p>The current endpoint of the <code>MLModel</code>.</p>
432      */
WithEndpointInfo(const RealtimeEndpointInfo & value)433     inline MLModel& WithEndpointInfo(const RealtimeEndpointInfo& value) { SetEndpointInfo(value); return *this;}
434 
435     /**
436      * <p>The current endpoint of the <code>MLModel</code>.</p>
437      */
WithEndpointInfo(RealtimeEndpointInfo && value)438     inline MLModel& WithEndpointInfo(RealtimeEndpointInfo&& value) { SetEndpointInfo(std::move(value)); return *this;}
439 
440 
441     /**
442      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
443      * implemented as a map of key-value pairs.</p> <p>The following is the current set
444      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
445      * - The maximum allowed size of the model. Depending on the input data, the size
446      * of the model might affect its performance.</p> <p> The value is an integer that
447      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
448      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
449      * number of times that the training process traverses the observations to build
450      * the <code>MLModel</code>. The value is an integer that ranges from
451      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
452      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
453      * training data. Shuffling the data improves a model's ability to find the optimal
454      * solution for a variety of data types. The valid values are <code>auto</code> and
455      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
456      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
457      * norm, which controls overfitting the data by penalizing large coefficients. This
458      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
459      * If you use this parameter, start by specifying a small value, such as
460      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
461      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
462      * normalization. This parameter can't be used when <code>L2</code> is specified.
463      * Use this parameter sparingly.</p> </li> <li> <p>
464      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
465      * norm, which controls overfitting the data by penalizing large coefficients. This
466      * tends to drive coefficients to small, nonzero values. If you use this parameter,
467      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
468      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
469      * The default is to not use L2 normalization. This parameter can't be used when
470      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
471      */
GetTrainingParameters()472     inline const Aws::Map<Aws::String, Aws::String>& GetTrainingParameters() const{ return m_trainingParameters; }
473 
474     /**
475      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
476      * implemented as a map of key-value pairs.</p> <p>The following is the current set
477      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
478      * - The maximum allowed size of the model. Depending on the input data, the size
479      * of the model might affect its performance.</p> <p> The value is an integer that
480      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
481      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
482      * number of times that the training process traverses the observations to build
483      * the <code>MLModel</code>. The value is an integer that ranges from
484      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
485      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
486      * training data. Shuffling the data improves a model's ability to find the optimal
487      * solution for a variety of data types. The valid values are <code>auto</code> and
488      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
489      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
490      * norm, which controls overfitting the data by penalizing large coefficients. This
491      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
492      * If you use this parameter, start by specifying a small value, such as
493      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
494      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
495      * normalization. This parameter can't be used when <code>L2</code> is specified.
496      * Use this parameter sparingly.</p> </li> <li> <p>
497      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
498      * norm, which controls overfitting the data by penalizing large coefficients. This
499      * tends to drive coefficients to small, nonzero values. If you use this parameter,
500      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
501      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
502      * The default is to not use L2 normalization. This parameter can't be used when
503      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
504      */
TrainingParametersHasBeenSet()505     inline bool TrainingParametersHasBeenSet() const { return m_trainingParametersHasBeenSet; }
506 
507     /**
508      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
509      * implemented as a map of key-value pairs.</p> <p>The following is the current set
510      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
511      * - The maximum allowed size of the model. Depending on the input data, the size
512      * of the model might affect its performance.</p> <p> The value is an integer that
513      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
514      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
515      * number of times that the training process traverses the observations to build
516      * the <code>MLModel</code>. The value is an integer that ranges from
517      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
518      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
519      * training data. Shuffling the data improves a model's ability to find the optimal
520      * solution for a variety of data types. The valid values are <code>auto</code> and
521      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
522      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
523      * norm, which controls overfitting the data by penalizing large coefficients. This
524      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
525      * If you use this parameter, start by specifying a small value, such as
526      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
527      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
528      * normalization. This parameter can't be used when <code>L2</code> is specified.
529      * Use this parameter sparingly.</p> </li> <li> <p>
530      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
531      * norm, which controls overfitting the data by penalizing large coefficients. This
532      * tends to drive coefficients to small, nonzero values. If you use this parameter,
533      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
534      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
535      * The default is to not use L2 normalization. This parameter can't be used when
536      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
537      */
SetTrainingParameters(const Aws::Map<Aws::String,Aws::String> & value)538     inline void SetTrainingParameters(const Aws::Map<Aws::String, Aws::String>& value) { m_trainingParametersHasBeenSet = true; m_trainingParameters = value; }
539 
540     /**
541      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
542      * implemented as a map of key-value pairs.</p> <p>The following is the current set
543      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
544      * - The maximum allowed size of the model. Depending on the input data, the size
545      * of the model might affect its performance.</p> <p> The value is an integer that
546      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
547      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
548      * number of times that the training process traverses the observations to build
549      * the <code>MLModel</code>. The value is an integer that ranges from
550      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
551      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
552      * training data. Shuffling the data improves a model's ability to find the optimal
553      * solution for a variety of data types. The valid values are <code>auto</code> and
554      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
555      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
556      * norm, which controls overfitting the data by penalizing large coefficients. This
557      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
558      * If you use this parameter, start by specifying a small value, such as
559      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
560      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
561      * normalization. This parameter can't be used when <code>L2</code> is specified.
562      * Use this parameter sparingly.</p> </li> <li> <p>
563      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
564      * norm, which controls overfitting the data by penalizing large coefficients. This
565      * tends to drive coefficients to small, nonzero values. If you use this parameter,
566      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
567      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
568      * The default is to not use L2 normalization. This parameter can't be used when
569      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
570      */
SetTrainingParameters(Aws::Map<Aws::String,Aws::String> && value)571     inline void SetTrainingParameters(Aws::Map<Aws::String, Aws::String>&& value) { m_trainingParametersHasBeenSet = true; m_trainingParameters = std::move(value); }
572 
573     /**
574      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
575      * implemented as a map of key-value pairs.</p> <p>The following is the current set
576      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
577      * - The maximum allowed size of the model. Depending on the input data, the size
578      * of the model might affect its performance.</p> <p> The value is an integer that
579      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
580      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
581      * number of times that the training process traverses the observations to build
582      * the <code>MLModel</code>. The value is an integer that ranges from
583      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
584      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
585      * training data. Shuffling the data improves a model's ability to find the optimal
586      * solution for a variety of data types. The valid values are <code>auto</code> and
587      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
588      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
589      * norm, which controls overfitting the data by penalizing large coefficients. This
590      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
591      * If you use this parameter, start by specifying a small value, such as
592      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
593      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
594      * normalization. This parameter can't be used when <code>L2</code> is specified.
595      * Use this parameter sparingly.</p> </li> <li> <p>
596      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
597      * norm, which controls overfitting the data by penalizing large coefficients. This
598      * tends to drive coefficients to small, nonzero values. If you use this parameter,
599      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
600      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
601      * The default is to not use L2 normalization. This parameter can't be used when
602      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
603      */
WithTrainingParameters(const Aws::Map<Aws::String,Aws::String> & value)604     inline MLModel& WithTrainingParameters(const Aws::Map<Aws::String, Aws::String>& value) { SetTrainingParameters(value); return *this;}
605 
606     /**
607      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
608      * implemented as a map of key-value pairs.</p> <p>The following is the current set
609      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
610      * - The maximum allowed size of the model. Depending on the input data, the size
611      * of the model might affect its performance.</p> <p> The value is an integer that
612      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
613      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
614      * number of times that the training process traverses the observations to build
615      * the <code>MLModel</code>. The value is an integer that ranges from
616      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
617      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
618      * training data. Shuffling the data improves a model's ability to find the optimal
619      * solution for a variety of data types. The valid values are <code>auto</code> and
620      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
621      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
622      * norm, which controls overfitting the data by penalizing large coefficients. This
623      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
624      * If you use this parameter, start by specifying a small value, such as
625      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
626      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
627      * normalization. This parameter can't be used when <code>L2</code> is specified.
628      * Use this parameter sparingly.</p> </li> <li> <p>
629      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
630      * norm, which controls overfitting the data by penalizing large coefficients. This
631      * tends to drive coefficients to small, nonzero values. If you use this parameter,
632      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
633      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
634      * The default is to not use L2 normalization. This parameter can't be used when
635      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
636      */
WithTrainingParameters(Aws::Map<Aws::String,Aws::String> && value)637     inline MLModel& WithTrainingParameters(Aws::Map<Aws::String, Aws::String>&& value) { SetTrainingParameters(std::move(value)); return *this;}
638 
639     /**
640      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
641      * implemented as a map of key-value pairs.</p> <p>The following is the current set
642      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
643      * - The maximum allowed size of the model. Depending on the input data, the size
644      * of the model might affect its performance.</p> <p> The value is an integer that
645      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
646      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
647      * number of times that the training process traverses the observations to build
648      * the <code>MLModel</code>. The value is an integer that ranges from
649      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
650      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
651      * training data. Shuffling the data improves a model's ability to find the optimal
652      * solution for a variety of data types. The valid values are <code>auto</code> and
653      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
654      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
655      * norm, which controls overfitting the data by penalizing large coefficients. This
656      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
657      * If you use this parameter, start by specifying a small value, such as
658      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
659      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
660      * normalization. This parameter can't be used when <code>L2</code> is specified.
661      * Use this parameter sparingly.</p> </li> <li> <p>
662      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
663      * norm, which controls overfitting the data by penalizing large coefficients. This
664      * tends to drive coefficients to small, nonzero values. If you use this parameter,
665      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
666      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
667      * The default is to not use L2 normalization. This parameter can't be used when
668      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
669      */
AddTrainingParameters(const Aws::String & key,const Aws::String & value)670     inline MLModel& AddTrainingParameters(const Aws::String& key, const Aws::String& value) { m_trainingParametersHasBeenSet = true; m_trainingParameters.emplace(key, value); return *this; }
671 
672     /**
673      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
674      * implemented as a map of key-value pairs.</p> <p>The following is the current set
675      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
676      * - The maximum allowed size of the model. Depending on the input data, the size
677      * of the model might affect its performance.</p> <p> The value is an integer that
678      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
679      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
680      * number of times that the training process traverses the observations to build
681      * the <code>MLModel</code>. The value is an integer that ranges from
682      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
683      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
684      * training data. Shuffling the data improves a model's ability to find the optimal
685      * solution for a variety of data types. The valid values are <code>auto</code> and
686      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
687      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
688      * norm, which controls overfitting the data by penalizing large coefficients. This
689      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
690      * If you use this parameter, start by specifying a small value, such as
691      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
692      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
693      * normalization. This parameter can't be used when <code>L2</code> is specified.
694      * Use this parameter sparingly.</p> </li> <li> <p>
695      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
696      * norm, which controls overfitting the data by penalizing large coefficients. This
697      * tends to drive coefficients to small, nonzero values. If you use this parameter,
698      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
699      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
700      * The default is to not use L2 normalization. This parameter can't be used when
701      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
702      */
AddTrainingParameters(Aws::String && key,const Aws::String & value)703     inline MLModel& AddTrainingParameters(Aws::String&& key, const Aws::String& value) { m_trainingParametersHasBeenSet = true; m_trainingParameters.emplace(std::move(key), value); return *this; }
704 
705     /**
706      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
707      * implemented as a map of key-value pairs.</p> <p>The following is the current set
708      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
709      * - The maximum allowed size of the model. Depending on the input data, the size
710      * of the model might affect its performance.</p> <p> The value is an integer that
711      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
712      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
713      * number of times that the training process traverses the observations to build
714      * the <code>MLModel</code>. The value is an integer that ranges from
715      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
716      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
717      * training data. Shuffling the data improves a model's ability to find the optimal
718      * solution for a variety of data types. The valid values are <code>auto</code> and
719      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
720      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
721      * norm, which controls overfitting the data by penalizing large coefficients. This
722      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
723      * If you use this parameter, start by specifying a small value, such as
724      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
725      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
726      * normalization. This parameter can't be used when <code>L2</code> is specified.
727      * Use this parameter sparingly.</p> </li> <li> <p>
728      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
729      * norm, which controls overfitting the data by penalizing large coefficients. This
730      * tends to drive coefficients to small, nonzero values. If you use this parameter,
731      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
732      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
733      * The default is to not use L2 normalization. This parameter can't be used when
734      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
735      */
AddTrainingParameters(const Aws::String & key,Aws::String && value)736     inline MLModel& AddTrainingParameters(const Aws::String& key, Aws::String&& value) { m_trainingParametersHasBeenSet = true; m_trainingParameters.emplace(key, std::move(value)); return *this; }
737 
738     /**
739      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
740      * implemented as a map of key-value pairs.</p> <p>The following is the current set
741      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
742      * - The maximum allowed size of the model. Depending on the input data, the size
743      * of the model might affect its performance.</p> <p> The value is an integer that
744      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
745      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
746      * number of times that the training process traverses the observations to build
747      * the <code>MLModel</code>. The value is an integer that ranges from
748      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
749      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
750      * training data. Shuffling the data improves a model's ability to find the optimal
751      * solution for a variety of data types. The valid values are <code>auto</code> and
752      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
753      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
754      * norm, which controls overfitting the data by penalizing large coefficients. This
755      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
756      * If you use this parameter, start by specifying a small value, such as
757      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
758      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
759      * normalization. This parameter can't be used when <code>L2</code> is specified.
760      * Use this parameter sparingly.</p> </li> <li> <p>
761      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
762      * norm, which controls overfitting the data by penalizing large coefficients. This
763      * tends to drive coefficients to small, nonzero values. If you use this parameter,
764      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
765      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
766      * The default is to not use L2 normalization. This parameter can't be used when
767      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
768      */
AddTrainingParameters(Aws::String && key,Aws::String && value)769     inline MLModel& AddTrainingParameters(Aws::String&& key, Aws::String&& value) { m_trainingParametersHasBeenSet = true; m_trainingParameters.emplace(std::move(key), std::move(value)); return *this; }
770 
771     /**
772      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
773      * implemented as a map of key-value pairs.</p> <p>The following is the current set
774      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
775      * - The maximum allowed size of the model. Depending on the input data, the size
776      * of the model might affect its performance.</p> <p> The value is an integer that
777      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
778      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
779      * number of times that the training process traverses the observations to build
780      * the <code>MLModel</code>. The value is an integer that ranges from
781      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
782      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
783      * training data. Shuffling the data improves a model's ability to find the optimal
784      * solution for a variety of data types. The valid values are <code>auto</code> and
785      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
786      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
787      * norm, which controls overfitting the data by penalizing large coefficients. This
788      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
789      * If you use this parameter, start by specifying a small value, such as
790      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
791      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
792      * normalization. This parameter can't be used when <code>L2</code> is specified.
793      * Use this parameter sparingly.</p> </li> <li> <p>
794      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
795      * norm, which controls overfitting the data by penalizing large coefficients. This
796      * tends to drive coefficients to small, nonzero values. If you use this parameter,
797      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
798      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
799      * The default is to not use L2 normalization. This parameter can't be used when
800      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
801      */
AddTrainingParameters(const char * key,Aws::String && value)802     inline MLModel& AddTrainingParameters(const char* key, Aws::String&& value) { m_trainingParametersHasBeenSet = true; m_trainingParameters.emplace(key, std::move(value)); return *this; }
803 
804     /**
805      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
806      * implemented as a map of key-value pairs.</p> <p>The following is the current set
807      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
808      * - The maximum allowed size of the model. Depending on the input data, the size
809      * of the model might affect its performance.</p> <p> The value is an integer that
810      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
811      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
812      * number of times that the training process traverses the observations to build
813      * the <code>MLModel</code>. The value is an integer that ranges from
814      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
815      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
816      * training data. Shuffling the data improves a model's ability to find the optimal
817      * solution for a variety of data types. The valid values are <code>auto</code> and
818      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
819      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
820      * norm, which controls overfitting the data by penalizing large coefficients. This
821      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
822      * If you use this parameter, start by specifying a small value, such as
823      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
824      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
825      * normalization. This parameter can't be used when <code>L2</code> is specified.
826      * Use this parameter sparingly.</p> </li> <li> <p>
827      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
828      * norm, which controls overfitting the data by penalizing large coefficients. This
829      * tends to drive coefficients to small, nonzero values. If you use this parameter,
830      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
831      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
832      * The default is to not use L2 normalization. This parameter can't be used when
833      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
834      */
AddTrainingParameters(Aws::String && key,const char * value)835     inline MLModel& AddTrainingParameters(Aws::String&& key, const char* value) { m_trainingParametersHasBeenSet = true; m_trainingParameters.emplace(std::move(key), value); return *this; }
836 
837     /**
838      * <p>A list of the training parameters in the <code>MLModel</code>. The list is
839      * implemented as a map of key-value pairs.</p> <p>The following is the current set
840      * of training parameters:</p> <ul> <li> <p> <code>sgd.maxMLModelSizeInBytes</code>
841      * - The maximum allowed size of the model. Depending on the input data, the size
842      * of the model might affect its performance.</p> <p> The value is an integer that
843      * ranges from <code>100000</code> to <code>2147483648</code>. The default value is
844      * <code>33554432</code>.</p> </li> <li> <p> <code>sgd.maxPasses</code> - The
845      * number of times that the training process traverses the observations to build
846      * the <code>MLModel</code>. The value is an integer that ranges from
847      * <code>1</code> to <code>10000</code>. The default value is <code>10</code>.</p>
848      * </li> <li> <p> <code>sgd.shuffleType</code> - Whether Amazon ML shuffles the
849      * training data. Shuffling the data improves a model's ability to find the optimal
850      * solution for a variety of data types. The valid values are <code>auto</code> and
851      * <code>none</code>. The default value is <code>none</code>.</p> </li> <li> <p>
852      * <code>sgd.l1RegularizationAmount</code> - The coefficient regularization L1
853      * norm, which controls overfitting the data by penalizing large coefficients. This
854      * parameter tends to drive coefficients to zero, resulting in sparse feature set.
855      * If you use this parameter, start by specifying a small value, such as
856      * <code>1.0E-08</code>.</p> <p>The value is a double that ranges from
857      * <code>0</code> to <code>MAX_DOUBLE</code>. The default is to not use L1
858      * normalization. This parameter can't be used when <code>L2</code> is specified.
859      * Use this parameter sparingly.</p> </li> <li> <p>
860      * <code>sgd.l2RegularizationAmount</code> - The coefficient regularization L2
861      * norm, which controls overfitting the data by penalizing large coefficients. This
862      * tends to drive coefficients to small, nonzero values. If you use this parameter,
863      * start by specifying a small value, such as <code>1.0E-08</code>.</p> <p>The
864      * value is a double that ranges from <code>0</code> to <code>MAX_DOUBLE</code>.
865      * The default is to not use L2 normalization. This parameter can't be used when
866      * <code>L1</code> is specified. Use this parameter sparingly.</p> </li> </ul>
867      */
AddTrainingParameters(const char * key,const char * value)868     inline MLModel& AddTrainingParameters(const char* key, const char* value) { m_trainingParametersHasBeenSet = true; m_trainingParameters.emplace(key, value); return *this; }
869 
870 
871     /**
872      * <p>The location of the data file or directory in Amazon Simple Storage Service
873      * (Amazon S3).</p>
874      */
GetInputDataLocationS3()875     inline const Aws::String& GetInputDataLocationS3() const{ return m_inputDataLocationS3; }
876 
877     /**
878      * <p>The location of the data file or directory in Amazon Simple Storage Service
879      * (Amazon S3).</p>
880      */
InputDataLocationS3HasBeenSet()881     inline bool InputDataLocationS3HasBeenSet() const { return m_inputDataLocationS3HasBeenSet; }
882 
883     /**
884      * <p>The location of the data file or directory in Amazon Simple Storage Service
885      * (Amazon S3).</p>
886      */
SetInputDataLocationS3(const Aws::String & value)887     inline void SetInputDataLocationS3(const Aws::String& value) { m_inputDataLocationS3HasBeenSet = true; m_inputDataLocationS3 = value; }
888 
889     /**
890      * <p>The location of the data file or directory in Amazon Simple Storage Service
891      * (Amazon S3).</p>
892      */
SetInputDataLocationS3(Aws::String && value)893     inline void SetInputDataLocationS3(Aws::String&& value) { m_inputDataLocationS3HasBeenSet = true; m_inputDataLocationS3 = std::move(value); }
894 
895     /**
896      * <p>The location of the data file or directory in Amazon Simple Storage Service
897      * (Amazon S3).</p>
898      */
SetInputDataLocationS3(const char * value)899     inline void SetInputDataLocationS3(const char* value) { m_inputDataLocationS3HasBeenSet = true; m_inputDataLocationS3.assign(value); }
900 
901     /**
902      * <p>The location of the data file or directory in Amazon Simple Storage Service
903      * (Amazon S3).</p>
904      */
WithInputDataLocationS3(const Aws::String & value)905     inline MLModel& WithInputDataLocationS3(const Aws::String& value) { SetInputDataLocationS3(value); return *this;}
906 
907     /**
908      * <p>The location of the data file or directory in Amazon Simple Storage Service
909      * (Amazon S3).</p>
910      */
WithInputDataLocationS3(Aws::String && value)911     inline MLModel& WithInputDataLocationS3(Aws::String&& value) { SetInputDataLocationS3(std::move(value)); return *this;}
912 
913     /**
914      * <p>The location of the data file or directory in Amazon Simple Storage Service
915      * (Amazon S3).</p>
916      */
WithInputDataLocationS3(const char * value)917     inline MLModel& WithInputDataLocationS3(const char* value) { SetInputDataLocationS3(value); return *this;}
918 
919 
920     /**
921      * <p>The algorithm used to train the <code>MLModel</code>. The following algorithm
922      * is supported:</p> <ul> <li> <p> <code>SGD</code> -- Stochastic gradient descent.
923      * The goal of <code>SGD</code> is to minimize the gradient of the loss function.
924      * </p> </li> </ul>
925      */
GetAlgorithm()926     inline const Algorithm& GetAlgorithm() const{ return m_algorithm; }
927 
928     /**
929      * <p>The algorithm used to train the <code>MLModel</code>. The following algorithm
930      * is supported:</p> <ul> <li> <p> <code>SGD</code> -- Stochastic gradient descent.
931      * The goal of <code>SGD</code> is to minimize the gradient of the loss function.
932      * </p> </li> </ul>
933      */
AlgorithmHasBeenSet()934     inline bool AlgorithmHasBeenSet() const { return m_algorithmHasBeenSet; }
935 
936     /**
937      * <p>The algorithm used to train the <code>MLModel</code>. The following algorithm
938      * is supported:</p> <ul> <li> <p> <code>SGD</code> -- Stochastic gradient descent.
939      * The goal of <code>SGD</code> is to minimize the gradient of the loss function.
940      * </p> </li> </ul>
941      */
SetAlgorithm(const Algorithm & value)942     inline void SetAlgorithm(const Algorithm& value) { m_algorithmHasBeenSet = true; m_algorithm = value; }
943 
944     /**
945      * <p>The algorithm used to train the <code>MLModel</code>. The following algorithm
946      * is supported:</p> <ul> <li> <p> <code>SGD</code> -- Stochastic gradient descent.
947      * The goal of <code>SGD</code> is to minimize the gradient of the loss function.
948      * </p> </li> </ul>
949      */
SetAlgorithm(Algorithm && value)950     inline void SetAlgorithm(Algorithm&& value) { m_algorithmHasBeenSet = true; m_algorithm = std::move(value); }
951 
952     /**
953      * <p>The algorithm used to train the <code>MLModel</code>. The following algorithm
954      * is supported:</p> <ul> <li> <p> <code>SGD</code> -- Stochastic gradient descent.
955      * The goal of <code>SGD</code> is to minimize the gradient of the loss function.
956      * </p> </li> </ul>
957      */
WithAlgorithm(const Algorithm & value)958     inline MLModel& WithAlgorithm(const Algorithm& value) { SetAlgorithm(value); return *this;}
959 
960     /**
961      * <p>The algorithm used to train the <code>MLModel</code>. The following algorithm
962      * is supported:</p> <ul> <li> <p> <code>SGD</code> -- Stochastic gradient descent.
963      * The goal of <code>SGD</code> is to minimize the gradient of the loss function.
964      * </p> </li> </ul>
965      */
WithAlgorithm(Algorithm && value)966     inline MLModel& WithAlgorithm(Algorithm&& value) { SetAlgorithm(std::move(value)); return *this;}
967 
968 
969     /**
970      * <p>Identifies the <code>MLModel</code> category. The following are the available
971      * types:</p> <ul> <li> <p> <code>REGRESSION</code> - Produces a numeric result.
972      * For example, "What price should a house be listed at?"</p> </li> <li> <p>
973      * <code>BINARY</code> - Produces one of two possible results. For example, "Is
974      * this a child-friendly web site?".</p> </li> <li> <p> <code>MULTICLASS</code> -
975      * Produces one of several possible results. For example, "Is this a HIGH-, LOW-,
976      * or MEDIUM-risk trade?".</p> </li> </ul>
977      */
GetMLModelType()978     inline const MLModelType& GetMLModelType() const{ return m_mLModelType; }
979 
980     /**
981      * <p>Identifies the <code>MLModel</code> category. The following are the available
982      * types:</p> <ul> <li> <p> <code>REGRESSION</code> - Produces a numeric result.
983      * For example, "What price should a house be listed at?"</p> </li> <li> <p>
984      * <code>BINARY</code> - Produces one of two possible results. For example, "Is
985      * this a child-friendly web site?".</p> </li> <li> <p> <code>MULTICLASS</code> -
986      * Produces one of several possible results. For example, "Is this a HIGH-, LOW-,
987      * or MEDIUM-risk trade?".</p> </li> </ul>
988      */
MLModelTypeHasBeenSet()989     inline bool MLModelTypeHasBeenSet() const { return m_mLModelTypeHasBeenSet; }
990 
991     /**
992      * <p>Identifies the <code>MLModel</code> category. The following are the available
993      * types:</p> <ul> <li> <p> <code>REGRESSION</code> - Produces a numeric result.
994      * For example, "What price should a house be listed at?"</p> </li> <li> <p>
995      * <code>BINARY</code> - Produces one of two possible results. For example, "Is
996      * this a child-friendly web site?".</p> </li> <li> <p> <code>MULTICLASS</code> -
997      * Produces one of several possible results. For example, "Is this a HIGH-, LOW-,
998      * or MEDIUM-risk trade?".</p> </li> </ul>
999      */
SetMLModelType(const MLModelType & value)1000     inline void SetMLModelType(const MLModelType& value) { m_mLModelTypeHasBeenSet = true; m_mLModelType = value; }
1001 
1002     /**
1003      * <p>Identifies the <code>MLModel</code> category. The following are the available
1004      * types:</p> <ul> <li> <p> <code>REGRESSION</code> - Produces a numeric result.
1005      * For example, "What price should a house be listed at?"</p> </li> <li> <p>
1006      * <code>BINARY</code> - Produces one of two possible results. For example, "Is
1007      * this a child-friendly web site?".</p> </li> <li> <p> <code>MULTICLASS</code> -
1008      * Produces one of several possible results. For example, "Is this a HIGH-, LOW-,
1009      * or MEDIUM-risk trade?".</p> </li> </ul>
1010      */
SetMLModelType(MLModelType && value)1011     inline void SetMLModelType(MLModelType&& value) { m_mLModelTypeHasBeenSet = true; m_mLModelType = std::move(value); }
1012 
1013     /**
1014      * <p>Identifies the <code>MLModel</code> category. The following are the available
1015      * types:</p> <ul> <li> <p> <code>REGRESSION</code> - Produces a numeric result.
1016      * For example, "What price should a house be listed at?"</p> </li> <li> <p>
1017      * <code>BINARY</code> - Produces one of two possible results. For example, "Is
1018      * this a child-friendly web site?".</p> </li> <li> <p> <code>MULTICLASS</code> -
1019      * Produces one of several possible results. For example, "Is this a HIGH-, LOW-,
1020      * or MEDIUM-risk trade?".</p> </li> </ul>
1021      */
WithMLModelType(const MLModelType & value)1022     inline MLModel& WithMLModelType(const MLModelType& value) { SetMLModelType(value); return *this;}
1023 
1024     /**
1025      * <p>Identifies the <code>MLModel</code> category. The following are the available
1026      * types:</p> <ul> <li> <p> <code>REGRESSION</code> - Produces a numeric result.
1027      * For example, "What price should a house be listed at?"</p> </li> <li> <p>
1028      * <code>BINARY</code> - Produces one of two possible results. For example, "Is
1029      * this a child-friendly web site?".</p> </li> <li> <p> <code>MULTICLASS</code> -
1030      * Produces one of several possible results. For example, "Is this a HIGH-, LOW-,
1031      * or MEDIUM-risk trade?".</p> </li> </ul>
1032      */
WithMLModelType(MLModelType && value)1033     inline MLModel& WithMLModelType(MLModelType&& value) { SetMLModelType(std::move(value)); return *this;}
1034 
1035 
1036 
GetScoreThreshold()1037     inline double GetScoreThreshold() const{ return m_scoreThreshold; }
1038 
1039 
ScoreThresholdHasBeenSet()1040     inline bool ScoreThresholdHasBeenSet() const { return m_scoreThresholdHasBeenSet; }
1041 
1042 
SetScoreThreshold(double value)1043     inline void SetScoreThreshold(double value) { m_scoreThresholdHasBeenSet = true; m_scoreThreshold = value; }
1044 
1045 
WithScoreThreshold(double value)1046     inline MLModel& WithScoreThreshold(double value) { SetScoreThreshold(value); return *this;}
1047 
1048 
1049     /**
1050      * <p>The time of the most recent edit to the <code>ScoreThreshold</code>. The time
1051      * is expressed in epoch time.</p>
1052      */
GetScoreThresholdLastUpdatedAt()1053     inline const Aws::Utils::DateTime& GetScoreThresholdLastUpdatedAt() const{ return m_scoreThresholdLastUpdatedAt; }
1054 
1055     /**
1056      * <p>The time of the most recent edit to the <code>ScoreThreshold</code>. The time
1057      * is expressed in epoch time.</p>
1058      */
ScoreThresholdLastUpdatedAtHasBeenSet()1059     inline bool ScoreThresholdLastUpdatedAtHasBeenSet() const { return m_scoreThresholdLastUpdatedAtHasBeenSet; }
1060 
1061     /**
1062      * <p>The time of the most recent edit to the <code>ScoreThreshold</code>. The time
1063      * is expressed in epoch time.</p>
1064      */
SetScoreThresholdLastUpdatedAt(const Aws::Utils::DateTime & value)1065     inline void SetScoreThresholdLastUpdatedAt(const Aws::Utils::DateTime& value) { m_scoreThresholdLastUpdatedAtHasBeenSet = true; m_scoreThresholdLastUpdatedAt = value; }
1066 
1067     /**
1068      * <p>The time of the most recent edit to the <code>ScoreThreshold</code>. The time
1069      * is expressed in epoch time.</p>
1070      */
SetScoreThresholdLastUpdatedAt(Aws::Utils::DateTime && value)1071     inline void SetScoreThresholdLastUpdatedAt(Aws::Utils::DateTime&& value) { m_scoreThresholdLastUpdatedAtHasBeenSet = true; m_scoreThresholdLastUpdatedAt = std::move(value); }
1072 
1073     /**
1074      * <p>The time of the most recent edit to the <code>ScoreThreshold</code>. The time
1075      * is expressed in epoch time.</p>
1076      */
WithScoreThresholdLastUpdatedAt(const Aws::Utils::DateTime & value)1077     inline MLModel& WithScoreThresholdLastUpdatedAt(const Aws::Utils::DateTime& value) { SetScoreThresholdLastUpdatedAt(value); return *this;}
1078 
1079     /**
1080      * <p>The time of the most recent edit to the <code>ScoreThreshold</code>. The time
1081      * is expressed in epoch time.</p>
1082      */
WithScoreThresholdLastUpdatedAt(Aws::Utils::DateTime && value)1083     inline MLModel& WithScoreThresholdLastUpdatedAt(Aws::Utils::DateTime&& value) { SetScoreThresholdLastUpdatedAt(std::move(value)); return *this;}
1084 
1085 
1086     /**
1087      * <p>A description of the most recent details about accessing the
1088      * <code>MLModel</code>.</p>
1089      */
GetMessage()1090     inline const Aws::String& GetMessage() const{ return m_message; }
1091 
1092     /**
1093      * <p>A description of the most recent details about accessing the
1094      * <code>MLModel</code>.</p>
1095      */
MessageHasBeenSet()1096     inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
1097 
1098     /**
1099      * <p>A description of the most recent details about accessing the
1100      * <code>MLModel</code>.</p>
1101      */
SetMessage(const Aws::String & value)1102     inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
1103 
1104     /**
1105      * <p>A description of the most recent details about accessing the
1106      * <code>MLModel</code>.</p>
1107      */
SetMessage(Aws::String && value)1108     inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
1109 
1110     /**
1111      * <p>A description of the most recent details about accessing the
1112      * <code>MLModel</code>.</p>
1113      */
SetMessage(const char * value)1114     inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
1115 
1116     /**
1117      * <p>A description of the most recent details about accessing the
1118      * <code>MLModel</code>.</p>
1119      */
WithMessage(const Aws::String & value)1120     inline MLModel& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
1121 
1122     /**
1123      * <p>A description of the most recent details about accessing the
1124      * <code>MLModel</code>.</p>
1125      */
WithMessage(Aws::String && value)1126     inline MLModel& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
1127 
1128     /**
1129      * <p>A description of the most recent details about accessing the
1130      * <code>MLModel</code>.</p>
1131      */
WithMessage(const char * value)1132     inline MLModel& WithMessage(const char* value) { SetMessage(value); return *this;}
1133 
1134 
1135 
GetComputeTime()1136     inline long long GetComputeTime() const{ return m_computeTime; }
1137 
1138 
ComputeTimeHasBeenSet()1139     inline bool ComputeTimeHasBeenSet() const { return m_computeTimeHasBeenSet; }
1140 
1141 
SetComputeTime(long long value)1142     inline void SetComputeTime(long long value) { m_computeTimeHasBeenSet = true; m_computeTime = value; }
1143 
1144 
WithComputeTime(long long value)1145     inline MLModel& WithComputeTime(long long value) { SetComputeTime(value); return *this;}
1146 
1147 
1148 
GetFinishedAt()1149     inline const Aws::Utils::DateTime& GetFinishedAt() const{ return m_finishedAt; }
1150 
1151 
FinishedAtHasBeenSet()1152     inline bool FinishedAtHasBeenSet() const { return m_finishedAtHasBeenSet; }
1153 
1154 
SetFinishedAt(const Aws::Utils::DateTime & value)1155     inline void SetFinishedAt(const Aws::Utils::DateTime& value) { m_finishedAtHasBeenSet = true; m_finishedAt = value; }
1156 
1157 
SetFinishedAt(Aws::Utils::DateTime && value)1158     inline void SetFinishedAt(Aws::Utils::DateTime&& value) { m_finishedAtHasBeenSet = true; m_finishedAt = std::move(value); }
1159 
1160 
WithFinishedAt(const Aws::Utils::DateTime & value)1161     inline MLModel& WithFinishedAt(const Aws::Utils::DateTime& value) { SetFinishedAt(value); return *this;}
1162 
1163 
WithFinishedAt(Aws::Utils::DateTime && value)1164     inline MLModel& WithFinishedAt(Aws::Utils::DateTime&& value) { SetFinishedAt(std::move(value)); return *this;}
1165 
1166 
1167 
GetStartedAt()1168     inline const Aws::Utils::DateTime& GetStartedAt() const{ return m_startedAt; }
1169 
1170 
StartedAtHasBeenSet()1171     inline bool StartedAtHasBeenSet() const { return m_startedAtHasBeenSet; }
1172 
1173 
SetStartedAt(const Aws::Utils::DateTime & value)1174     inline void SetStartedAt(const Aws::Utils::DateTime& value) { m_startedAtHasBeenSet = true; m_startedAt = value; }
1175 
1176 
SetStartedAt(Aws::Utils::DateTime && value)1177     inline void SetStartedAt(Aws::Utils::DateTime&& value) { m_startedAtHasBeenSet = true; m_startedAt = std::move(value); }
1178 
1179 
WithStartedAt(const Aws::Utils::DateTime & value)1180     inline MLModel& WithStartedAt(const Aws::Utils::DateTime& value) { SetStartedAt(value); return *this;}
1181 
1182 
WithStartedAt(Aws::Utils::DateTime && value)1183     inline MLModel& WithStartedAt(Aws::Utils::DateTime&& value) { SetStartedAt(std::move(value)); return *this;}
1184 
1185   private:
1186 
1187     Aws::String m_mLModelId;
1188     bool m_mLModelIdHasBeenSet;
1189 
1190     Aws::String m_trainingDataSourceId;
1191     bool m_trainingDataSourceIdHasBeenSet;
1192 
1193     Aws::String m_createdByIamUser;
1194     bool m_createdByIamUserHasBeenSet;
1195 
1196     Aws::Utils::DateTime m_createdAt;
1197     bool m_createdAtHasBeenSet;
1198 
1199     Aws::Utils::DateTime m_lastUpdatedAt;
1200     bool m_lastUpdatedAtHasBeenSet;
1201 
1202     Aws::String m_name;
1203     bool m_nameHasBeenSet;
1204 
1205     EntityStatus m_status;
1206     bool m_statusHasBeenSet;
1207 
1208     long long m_sizeInBytes;
1209     bool m_sizeInBytesHasBeenSet;
1210 
1211     RealtimeEndpointInfo m_endpointInfo;
1212     bool m_endpointInfoHasBeenSet;
1213 
1214     Aws::Map<Aws::String, Aws::String> m_trainingParameters;
1215     bool m_trainingParametersHasBeenSet;
1216 
1217     Aws::String m_inputDataLocationS3;
1218     bool m_inputDataLocationS3HasBeenSet;
1219 
1220     Algorithm m_algorithm;
1221     bool m_algorithmHasBeenSet;
1222 
1223     MLModelType m_mLModelType;
1224     bool m_mLModelTypeHasBeenSet;
1225 
1226     double m_scoreThreshold;
1227     bool m_scoreThresholdHasBeenSet;
1228 
1229     Aws::Utils::DateTime m_scoreThresholdLastUpdatedAt;
1230     bool m_scoreThresholdLastUpdatedAtHasBeenSet;
1231 
1232     Aws::String m_message;
1233     bool m_messageHasBeenSet;
1234 
1235     long long m_computeTime;
1236     bool m_computeTimeHasBeenSet;
1237 
1238     Aws::Utils::DateTime m_finishedAt;
1239     bool m_finishedAtHasBeenSet;
1240 
1241     Aws::Utils::DateTime m_startedAt;
1242     bool m_startedAtHasBeenSet;
1243   };
1244 
1245 } // namespace Model
1246 } // namespace MachineLearning
1247 } // namespace Aws
1248