1// Code generated by smithy-go-codegen DO NOT EDIT.
2
3package types
4
5import (
6	smithydocument "github.com/aws/smithy-go/document"
7	"time"
8)
9
10// Specifies a categorical hyperparameter and it's range of tunable values. This
11// object is part of the ParameterRanges object.
12type CategoricalParameterRange struct {
13
14	// The name of the categorical hyperparameter to tune.
15	//
16	// This member is required.
17	Name *string
18
19	// A list of the tunable categories for the hyperparameter.
20	//
21	// This member is required.
22	Values []string
23
24	noSmithyDocumentSerde
25}
26
27// Specifies a continuous hyperparameter and it's range of tunable values. This
28// object is part of the ParameterRanges object.
29type ContinuousParameterRange struct {
30
31	// The maximum tunable value of the hyperparameter.
32	//
33	// This member is required.
34	MaxValue *float64
35
36	// The minimum tunable value of the hyperparameter.
37	//
38	// This member is required.
39	MinValue *float64
40
41	// The name of the hyperparameter to tune.
42	//
43	// This member is required.
44	Name *string
45
46	// The scale that hyperparameter tuning uses to search the hyperparameter range.
47	// Valid values: Auto Amazon Forecast hyperparameter tuning chooses the best scale
48	// for the hyperparameter. Linear Hyperparameter tuning searches the values in the
49	// hyperparameter range by using a linear scale. Logarithmic Hyperparameter tuning
50	// searches the values in the hyperparameter range by using a logarithmic scale.
51	// Logarithmic scaling works only for ranges that have values greater than 0.
52	// ReverseLogarithmic hyperparameter tuning searches the values in the
53	// hyperparameter range by using a reverse logarithmic scale. Reverse logarithmic
54	// scaling works only for ranges that are entirely within the range 0 <= x < 1.0.
55	// For information about choosing a hyperparameter scale, see Hyperparameter
56	// Scaling
57	// (http://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html#scaling-type).
58	// One of the following values:
59	ScalingType ScalingType
60
61	noSmithyDocumentSerde
62}
63
64// The destination for an export job. Provide an S3 path, an AWS Identity and
65// Access Management (IAM) role that allows Amazon Forecast to access the location,
66// and an AWS Key Management Service (KMS) key (optional).
67type DataDestination struct {
68
69	// The path to an Amazon Simple Storage Service (Amazon S3) bucket along with the
70	// credentials to access the bucket.
71	//
72	// This member is required.
73	S3Config *S3Config
74
75	noSmithyDocumentSerde
76}
77
78// Provides a summary of the dataset group properties used in the ListDatasetGroups
79// operation. To get the complete set of properties, call the DescribeDatasetGroup
80// operation, and provide the DatasetGroupArn.
81type DatasetGroupSummary struct {
82
83	// When the dataset group was created.
84	CreationTime *time.Time
85
86	// The Amazon Resource Name (ARN) of the dataset group.
87	DatasetGroupArn *string
88
89	// The name of the dataset group.
90	DatasetGroupName *string
91
92	// When the dataset group was created or last updated from a call to the
93	// UpdateDatasetGroup operation. While the dataset group is being updated,
94	// LastModificationTime is the current time of the ListDatasetGroups call.
95	LastModificationTime *time.Time
96
97	noSmithyDocumentSerde
98}
99
100// Provides a summary of the dataset import job properties used in the
101// ListDatasetImportJobs operation. To get the complete set of properties, call the
102// DescribeDatasetImportJob operation, and provide the DatasetImportJobArn.
103type DatasetImportJobSummary struct {
104
105	// When the dataset import job was created.
106	CreationTime *time.Time
107
108	// The location of the training data to import and an AWS Identity and Access
109	// Management (IAM) role that Amazon Forecast can assume to access the data. The
110	// training data must be stored in an Amazon S3 bucket. If encryption is used,
111	// DataSource includes an AWS Key Management Service (KMS) key.
112	DataSource *DataSource
113
114	// The Amazon Resource Name (ARN) of the dataset import job.
115	DatasetImportJobArn *string
116
117	// The name of the dataset import job.
118	DatasetImportJobName *string
119
120	// The last time the resource was modified. The timestamp depends on the status of
121	// the job:
122	//
123	// * CREATE_PENDING - The CreationTime.
124	//
125	// * CREATE_IN_PROGRESS - The
126	// current timestamp.
127	//
128	// * CREATE_STOPPING - The current timestamp.
129	//
130	// * CREATE_STOPPED
131	// - When the job stopped.
132	//
133	// * ACTIVE or CREATE_FAILED - When the job finished or
134	// failed.
135	LastModificationTime *time.Time
136
137	// If an error occurred, an informational message about the error.
138	Message *string
139
140	// The status of the dataset import job. States include:
141	//
142	// * ACTIVE
143	//
144	// *
145	// CREATE_PENDING, CREATE_IN_PROGRESS, CREATE_FAILED
146	//
147	// * DELETE_PENDING,
148	// DELETE_IN_PROGRESS, DELETE_FAILED
149	//
150	// * CREATE_STOPPING, CREATE_STOPPED
151	Status *string
152
153	noSmithyDocumentSerde
154}
155
156// Provides a summary of the dataset properties used in the ListDatasets operation.
157// To get the complete set of properties, call the DescribeDataset operation, and
158// provide the DatasetArn.
159type DatasetSummary struct {
160
161	// When the dataset was created.
162	CreationTime *time.Time
163
164	// The Amazon Resource Name (ARN) of the dataset.
165	DatasetArn *string
166
167	// The name of the dataset.
168	DatasetName *string
169
170	// The dataset type.
171	DatasetType DatasetType
172
173	// The domain associated with the dataset.
174	Domain Domain
175
176	// When you create a dataset, LastModificationTime is the same as CreationTime.
177	// While data is being imported to the dataset, LastModificationTime is the current
178	// time of the ListDatasets call. After a CreateDatasetImportJob operation has
179	// finished, LastModificationTime is when the import job completed or failed.
180	LastModificationTime *time.Time
181
182	noSmithyDocumentSerde
183}
184
185// The source of your training data, an AWS Identity and Access Management (IAM)
186// role that allows Amazon Forecast to access the data and, optionally, an AWS Key
187// Management Service (KMS) key. This object is submitted in the
188// CreateDatasetImportJob request.
189type DataSource struct {
190
191	// The path to the training data stored in an Amazon Simple Storage Service (Amazon
192	// S3) bucket along with the credentials to access the data.
193	//
194	// This member is required.
195	S3Config *S3Config
196
197	noSmithyDocumentSerde
198}
199
200// An AWS Key Management Service (KMS) key and an AWS Identity and Access
201// Management (IAM) role that Amazon Forecast can assume to access the key. You can
202// specify this optional object in the CreateDataset and CreatePredictor requests.
203type EncryptionConfig struct {
204
205	// The Amazon Resource Name (ARN) of the KMS key.
206	//
207	// This member is required.
208	KMSKeyArn *string
209
210	// The ARN of the IAM role that Amazon Forecast can assume to access the AWS KMS
211	// key. Passing a role across AWS accounts is not allowed. If you pass a role that
212	// isn't in your account, you get an InvalidInputException error.
213	//
214	// This member is required.
215	RoleArn *string
216
217	noSmithyDocumentSerde
218}
219
220// Provides detailed error metrics to evaluate the performance of a predictor. This
221// object is part of the Metrics object.
222type ErrorMetric struct {
223
224	// The Forecast type used to compute WAPE, MAPE, MASE, and RMSE.
225	ForecastType *string
226
227	// The Mean Absolute Percentage Error (MAPE)
228	MAPE *float64
229
230	// The Mean Absolute Scaled Error (MASE)
231	MASE *float64
232
233	// The root-mean-square error (RMSE).
234	RMSE *float64
235
236	// The weighted absolute percentage error (WAPE).
237	WAPE *float64
238
239	noSmithyDocumentSerde
240}
241
242// Parameters that define how to split a dataset into training data and testing
243// data, and the number of iterations to perform. These parameters are specified in
244// the predefined algorithms but you can override them in the CreatePredictor
245// request.
246type EvaluationParameters struct {
247
248	// The point from the end of the dataset where you want to split the data for model
249	// training and testing (evaluation). Specify the value as the number of data
250	// points. The default is the value of the forecast horizon. BackTestWindowOffset
251	// can be used to mimic a past virtual forecast start date. This value must be
252	// greater than or equal to the forecast horizon and less than half of the
253	// TARGET_TIME_SERIES dataset length. ForecastHorizon <= BackTestWindowOffset < 1/2
254	// * TARGET_TIME_SERIES dataset length
255	BackTestWindowOffset *int32
256
257	// The number of times to split the input data. The default is 1. Valid values are
258	// 1 through 5.
259	NumberOfBacktestWindows *int32
260
261	noSmithyDocumentSerde
262}
263
264// The results of evaluating an algorithm. Returned as part of the
265// GetAccuracyMetrics response.
266type EvaluationResult struct {
267
268	// The Amazon Resource Name (ARN) of the algorithm that was evaluated.
269	AlgorithmArn *string
270
271	// The array of test windows used for evaluating the algorithm. The
272	// NumberOfBacktestWindows from the EvaluationParameters object determines the
273	// number of windows in the array.
274	TestWindows []WindowSummary
275
276	noSmithyDocumentSerde
277}
278
279// Provides featurization (transformation) information for a dataset field. This
280// object is part of the FeaturizationConfig object. For example: {
281//
282// "AttributeName": "demand",
283//
284//     FeaturizationPipeline [ {
285//
286//
287// "FeaturizationMethodName": "filling",
288//
289//     "FeaturizationMethodParameters":
290// {"aggregation": "avg", "backfill": "nan"}
291//
292//     } ]
293//
294//     }
295type Featurization struct {
296
297	// The name of the schema attribute that specifies the data field to be featurized.
298	// Amazon Forecast supports the target field of the TARGET_TIME_SERIES and the
299	// RELATED_TIME_SERIES datasets. For example, for the RETAIL domain, the target is
300	// demand, and for the CUSTOM domain, the target is target_value. For more
301	// information, see howitworks-missing-values.
302	//
303	// This member is required.
304	AttributeName *string
305
306	// An array of one FeaturizationMethod object that specifies the feature
307	// transformation method.
308	FeaturizationPipeline []FeaturizationMethod
309
310	noSmithyDocumentSerde
311}
312
313// In a CreatePredictor operation, the specified algorithm trains a model using the
314// specified dataset group. You can optionally tell the operation to modify data
315// fields prior to training a model. These modifications are referred to as
316// featurization. You define featurization using the FeaturizationConfig object.
317// You specify an array of transformations, one for each field that you want to
318// featurize. You then include the FeaturizationConfig object in your
319// CreatePredictor request. Amazon Forecast applies the featurization to the
320// TARGET_TIME_SERIES and RELATED_TIME_SERIES datasets before model training. You
321// can create multiple featurization configurations. For example, you might call
322// the CreatePredictor operation twice by specifying different featurization
323// configurations.
324type FeaturizationConfig struct {
325
326	// The frequency of predictions in a forecast. Valid intervals are Y (Year), M
327	// (Month), W (Week), D (Day), H (Hour), 30min (30 minutes), 15min (15 minutes),
328	// 10min (10 minutes), 5min (5 minutes), and 1min (1 minute). For example, "Y"
329	// indicates every year and "5min" indicates every five minutes. The frequency must
330	// be greater than or equal to the TARGET_TIME_SERIES dataset frequency. When a
331	// RELATED_TIME_SERIES dataset is provided, the frequency must be equal to the
332	// RELATED_TIME_SERIES dataset frequency.
333	//
334	// This member is required.
335	ForecastFrequency *string
336
337	// An array of featurization (transformation) information for the fields of a
338	// dataset.
339	Featurizations []Featurization
340
341	// An array of dimension (field) names that specify how to group the generated
342	// forecast. For example, suppose that you are generating a forecast for item sales
343	// across all of your stores, and your dataset contains a store_id field. If you
344	// want the sales forecast for each item by store, you would specify store_id as
345	// the dimension. All forecast dimensions specified in the TARGET_TIME_SERIES
346	// dataset don't need to be specified in the CreatePredictor request. All forecast
347	// dimensions specified in the RELATED_TIME_SERIES dataset must be specified in the
348	// CreatePredictor request.
349	ForecastDimensions []string
350
351	noSmithyDocumentSerde
352}
353
354// Provides information about the method that featurizes (transforms) a dataset
355// field. The method is part of the FeaturizationPipeline of the Featurization
356// object. The following is an example of how you specify a FeaturizationMethod
357// object. {
358//     "FeaturizationMethodName": "filling",
359//
360//
361// "FeaturizationMethodParameters": {"aggregation": "sum", "middlefill": "zero",
362// "backfill": "zero"}
363//
364//     }
365type FeaturizationMethod struct {
366
367	// The name of the method. The "filling" method is the only supported method.
368	//
369	// This member is required.
370	FeaturizationMethodName FeaturizationMethodName
371
372	// The method parameters (key-value pairs), which are a map of override parameters.
373	// Specify these parameters to override the default values. Related Time Series
374	// attributes do not accept aggregation parameters. The following list shows the
375	// parameters and their valid values for the "filling" featurization method for a
376	// Target Time Series dataset. Bold signifies the default value.
377	//
378	// * aggregation:
379	// sum, avg, first, min, max
380	//
381	// * frontfill: none
382	//
383	// * middlefill: zero, nan (not a
384	// number), value, median, mean, min, max
385	//
386	// * backfill: zero, nan, value, median,
387	// mean, min, max
388	//
389	// The following list shows the parameters and their valid values
390	// for a Related Time Series featurization method (there are no defaults):
391	//
392	// *
393	// middlefill: zero, value, median, mean, min, max
394	//
395	// * backfill: zero, value,
396	// median, mean, min, max
397	//
398	// * futurefill: zero, value, median, mean, min, max
399	//
400	// To
401	// set a filling method to a specific value, set the fill parameter to value and
402	// define the value in a corresponding _value parameter. For example, to set
403	// backfilling to a value of 2, include the following: "backfill": "value" and
404	// "backfill_value":"2".
405	FeaturizationMethodParameters map[string]string
406
407	noSmithyDocumentSerde
408}
409
410// Describes a filter for choosing a subset of objects. Each filter consists of a
411// condition and a match statement. The condition is either IS or IS_NOT, which
412// specifies whether to include or exclude the objects that match the statement,
413// respectively. The match statement consists of a key and a value.
414type Filter struct {
415
416	// The condition to apply. To include the objects that match the statement, specify
417	// IS. To exclude matching objects, specify IS_NOT.
418	//
419	// This member is required.
420	Condition FilterConditionString
421
422	// The name of the parameter to filter on.
423	//
424	// This member is required.
425	Key *string
426
427	// The value to match.
428	//
429	// This member is required.
430	Value *string
431
432	noSmithyDocumentSerde
433}
434
435// Provides a summary of the forecast export job properties used in the
436// ListForecastExportJobs operation. To get the complete set of properties, call
437// the DescribeForecastExportJob operation, and provide the listed
438// ForecastExportJobArn.
439type ForecastExportJobSummary struct {
440
441	// When the forecast export job was created.
442	CreationTime *time.Time
443
444	// The path to the Amazon Simple Storage Service (Amazon S3) bucket where the
445	// forecast is exported.
446	Destination *DataDestination
447
448	// The Amazon Resource Name (ARN) of the forecast export job.
449	ForecastExportJobArn *string
450
451	// The name of the forecast export job.
452	ForecastExportJobName *string
453
454	// The last time the resource was modified. The timestamp depends on the status of
455	// the job:
456	//
457	// * CREATE_PENDING - The CreationTime.
458	//
459	// * CREATE_IN_PROGRESS - The
460	// current timestamp.
461	//
462	// * CREATE_STOPPING - The current timestamp.
463	//
464	// * CREATE_STOPPED
465	// - When the job stopped.
466	//
467	// * ACTIVE or CREATE_FAILED - When the job finished or
468	// failed.
469	LastModificationTime *time.Time
470
471	// If an error occurred, an informational message about the error.
472	Message *string
473
474	// The status of the forecast export job. States include:
475	//
476	// * ACTIVE
477	//
478	// *
479	// CREATE_PENDING, CREATE_IN_PROGRESS, CREATE_FAILED
480	//
481	// * CREATE_STOPPING,
482	// CREATE_STOPPED
483	//
484	// * DELETE_PENDING, DELETE_IN_PROGRESS, DELETE_FAILED
485	//
486	// The Status
487	// of the forecast export job must be ACTIVE before you can access the forecast in
488	// your S3 bucket.
489	Status *string
490
491	noSmithyDocumentSerde
492}
493
494// Provides a summary of the forecast properties used in the ListForecasts
495// operation. To get the complete set of properties, call the DescribeForecast
496// operation, and provide the ForecastArn that is listed in the summary.
497type ForecastSummary struct {
498
499	// When the forecast creation task was created.
500	CreationTime *time.Time
501
502	// The Amazon Resource Name (ARN) of the dataset group that provided the data used
503	// to train the predictor.
504	DatasetGroupArn *string
505
506	// The ARN of the forecast.
507	ForecastArn *string
508
509	// The name of the forecast.
510	ForecastName *string
511
512	// The last time the resource was modified. The timestamp depends on the status of
513	// the job:
514	//
515	// * CREATE_PENDING - The CreationTime.
516	//
517	// * CREATE_IN_PROGRESS - The
518	// current timestamp.
519	//
520	// * CREATE_STOPPING - The current timestamp.
521	//
522	// * CREATE_STOPPED
523	// - When the job stopped.
524	//
525	// * ACTIVE or CREATE_FAILED - When the job finished or
526	// failed.
527	LastModificationTime *time.Time
528
529	// If an error occurred, an informational message about the error.
530	Message *string
531
532	// The ARN of the predictor used to generate the forecast.
533	PredictorArn *string
534
535	// The status of the forecast. States include:
536	//
537	// * ACTIVE
538	//
539	// * CREATE_PENDING,
540	// CREATE_IN_PROGRESS, CREATE_FAILED
541	//
542	// * CREATE_STOPPING, CREATE_STOPPED
543	//
544	// *
545	// DELETE_PENDING, DELETE_IN_PROGRESS, DELETE_FAILED
546	//
547	// The Status of the forecast
548	// must be ACTIVE before you can query or export the forecast.
549	Status *string
550
551	noSmithyDocumentSerde
552}
553
554// Configuration information for a hyperparameter tuning job. You specify this
555// object in the CreatePredictor request. A hyperparameter is a parameter that
556// governs the model training process. You set hyperparameters before training
557// starts, unlike model parameters, which are determined during training. The
558// values of the hyperparameters effect which values are chosen for the model
559// parameters. In a hyperparameter tuning job, Amazon Forecast chooses the set of
560// hyperparameter values that optimize a specified metric. Forecast accomplishes
561// this by running many training jobs over a range of hyperparameter values. The
562// optimum set of values depends on the algorithm, the training data, and the
563// specified metric objective.
564type HyperParameterTuningJobConfig struct {
565
566	// Specifies the ranges of valid values for the hyperparameters.
567	ParameterRanges *ParameterRanges
568
569	noSmithyDocumentSerde
570}
571
572// The data used to train a predictor. The data includes a dataset group and any
573// supplementary features. You specify this object in the CreatePredictor request.
574type InputDataConfig struct {
575
576	// The Amazon Resource Name (ARN) of the dataset group.
577	//
578	// This member is required.
579	DatasetGroupArn *string
580
581	// An array of supplementary features. The only supported feature is a holiday
582	// calendar.
583	SupplementaryFeatures []SupplementaryFeature
584
585	noSmithyDocumentSerde
586}
587
588// Specifies an integer hyperparameter and it's range of tunable values. This
589// object is part of the ParameterRanges object.
590type IntegerParameterRange struct {
591
592	// The maximum tunable value of the hyperparameter.
593	//
594	// This member is required.
595	MaxValue *int32
596
597	// The minimum tunable value of the hyperparameter.
598	//
599	// This member is required.
600	MinValue *int32
601
602	// The name of the hyperparameter to tune.
603	//
604	// This member is required.
605	Name *string
606
607	// The scale that hyperparameter tuning uses to search the hyperparameter range.
608	// Valid values: Auto Amazon Forecast hyperparameter tuning chooses the best scale
609	// for the hyperparameter. Linear Hyperparameter tuning searches the values in the
610	// hyperparameter range by using a linear scale. Logarithmic Hyperparameter tuning
611	// searches the values in the hyperparameter range by using a logarithmic scale.
612	// Logarithmic scaling works only for ranges that have values greater than 0.
613	// ReverseLogarithmic Not supported for IntegerParameterRange. Reverse logarithmic
614	// scaling works only for ranges that are entirely within the range 0 <= x < 1.0.
615	// For information about choosing a hyperparameter scale, see Hyperparameter
616	// Scaling
617	// (http://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html#scaling-type).
618	// One of the following values:
619	ScalingType ScalingType
620
621	noSmithyDocumentSerde
622}
623
624// Provides metrics that are used to evaluate the performance of a predictor. This
625// object is part of the WindowSummary object.
626type Metrics struct {
627
628	// The average value of all weighted quantile losses.
629	AverageWeightedQuantileLoss *float64
630
631	// Provides detailed error metrics for each forecast type. Metrics include
632	// root-mean square-error (RMSE), mean absolute percentage error (MAPE), mean
633	// absolute scaled error (MASE), and weighted average percentage error (WAPE).
634	ErrorMetrics []ErrorMetric
635
636	// The root-mean-square error (RMSE).
637	//
638	// Deprecated: This property is deprecated, please refer to ErrorMetrics for both
639	// RMSE and WAPE
640	RMSE *float64
641
642	// An array of weighted quantile losses. Quantiles divide a probability
643	// distribution into regions of equal probability. The distribution in this case is
644	// the loss function.
645	WeightedQuantileLosses []WeightedQuantileLoss
646
647	noSmithyDocumentSerde
648}
649
650// Specifies the categorical, continuous, and integer hyperparameters, and their
651// ranges of tunable values. The range of tunable values determines which values
652// that a hyperparameter tuning job can choose for the specified hyperparameter.
653// This object is part of the HyperParameterTuningJobConfig object.
654type ParameterRanges struct {
655
656	// Specifies the tunable range for each categorical hyperparameter.
657	CategoricalParameterRanges []CategoricalParameterRange
658
659	// Specifies the tunable range for each continuous hyperparameter.
660	ContinuousParameterRanges []ContinuousParameterRange
661
662	// Specifies the tunable range for each integer hyperparameter.
663	IntegerParameterRanges []IntegerParameterRange
664
665	noSmithyDocumentSerde
666}
667
668// Provides a summary of the predictor backtest export job properties used in the
669// ListPredictorBacktestExportJobs operation. To get a complete set of properties,
670// call the DescribePredictorBacktestExportJob operation, and provide the listed
671// PredictorBacktestExportJobArn.
672type PredictorBacktestExportJobSummary struct {
673
674	// When the predictor backtest export job was created.
675	CreationTime *time.Time
676
677	// The destination for an export job. Provide an S3 path, an AWS Identity and
678	// Access Management (IAM) role that allows Amazon Forecast to access the location,
679	// and an AWS Key Management Service (KMS) key (optional).
680	Destination *DataDestination
681
682	// The last time the resource was modified. The timestamp depends on the status of
683	// the job:
684	//
685	// * CREATE_PENDING - The CreationTime.
686	//
687	// * CREATE_IN_PROGRESS - The
688	// current timestamp.
689	//
690	// * CREATE_STOPPING - The current timestamp.
691	//
692	// * CREATE_STOPPED
693	// - When the job stopped.
694	//
695	// * ACTIVE or CREATE_FAILED - When the job finished or
696	// failed.
697	LastModificationTime *time.Time
698
699	// Information about any errors that may have occurred during the backtest export.
700	Message *string
701
702	// The Amazon Resource Name (ARN) of the predictor backtest export job.
703	PredictorBacktestExportJobArn *string
704
705	// The name of the predictor backtest export job.
706	PredictorBacktestExportJobName *string
707
708	// The status of the predictor backtest export job. States include:
709	//
710	// * ACTIVE
711	//
712	// *
713	// CREATE_PENDING, CREATE_IN_PROGRESS, CREATE_FAILED
714	//
715	// * CREATE_STOPPING,
716	// CREATE_STOPPED
717	//
718	// * DELETE_PENDING, DELETE_IN_PROGRESS, DELETE_FAILED
719	Status *string
720
721	noSmithyDocumentSerde
722}
723
724// The algorithm used to perform a backtest and the status of those tests.
725type PredictorExecution struct {
726
727	// The ARN of the algorithm used to test the predictor.
728	AlgorithmArn *string
729
730	// An array of test windows used to evaluate the algorithm. The
731	// NumberOfBacktestWindows from the object determines the number of windows in the
732	// array.
733	TestWindows []TestWindowSummary
734
735	noSmithyDocumentSerde
736}
737
738// Contains details on the backtests performed to evaluate the accuracy of the
739// predictor. The tests are returned in descending order of accuracy, with the most
740// accurate backtest appearing first. You specify the number of backtests to
741// perform when you call the operation.
742type PredictorExecutionDetails struct {
743
744	// An array of the backtests performed to evaluate the accuracy of the predictor
745	// against a particular algorithm. The NumberOfBacktestWindows from the object
746	// determines the number of windows in the array.
747	PredictorExecutions []PredictorExecution
748
749	noSmithyDocumentSerde
750}
751
752// Provides a summary of the predictor properties that are used in the
753// ListPredictors operation. To get the complete set of properties, call the
754// DescribePredictor operation, and provide the listed PredictorArn.
755type PredictorSummary struct {
756
757	// When the model training task was created.
758	CreationTime *time.Time
759
760	// The Amazon Resource Name (ARN) of the dataset group that contains the data used
761	// to train the predictor.
762	DatasetGroupArn *string
763
764	// The last time the resource was modified. The timestamp depends on the status of
765	// the job:
766	//
767	// * CREATE_PENDING - The CreationTime.
768	//
769	// * CREATE_IN_PROGRESS - The
770	// current timestamp.
771	//
772	// * CREATE_STOPPING - The current timestamp.
773	//
774	// * CREATE_STOPPED
775	// - When the job stopped.
776	//
777	// * ACTIVE or CREATE_FAILED - When the job finished or
778	// failed.
779	LastModificationTime *time.Time
780
781	// If an error occurred, an informational message about the error.
782	Message *string
783
784	// The ARN of the predictor.
785	PredictorArn *string
786
787	// The name of the predictor.
788	PredictorName *string
789
790	// The status of the predictor. States include:
791	//
792	// * ACTIVE
793	//
794	// * CREATE_PENDING,
795	// CREATE_IN_PROGRESS, CREATE_FAILED
796	//
797	// * DELETE_PENDING, DELETE_IN_PROGRESS,
798	// DELETE_FAILED
799	//
800	// * CREATE_STOPPING, CREATE_STOPPED
801	//
802	// The Status of the predictor
803	// must be ACTIVE before you can use the predictor to create a forecast.
804	Status *string
805
806	noSmithyDocumentSerde
807}
808
809// The path to the file(s) in an Amazon Simple Storage Service (Amazon S3) bucket,
810// and an AWS Identity and Access Management (IAM) role that Amazon Forecast can
811// assume to access the file(s). Optionally, includes an AWS Key Management Service
812// (KMS) key. This object is part of the DataSource object that is submitted in the
813// CreateDatasetImportJob request, and part of the DataDestination object.
814type S3Config struct {
815
816	// The path to an Amazon Simple Storage Service (Amazon S3) bucket or file(s) in an
817	// Amazon S3 bucket.
818	//
819	// This member is required.
820	Path *string
821
822	// The ARN of the AWS Identity and Access Management (IAM) role that Amazon
823	// Forecast can assume to access the Amazon S3 bucket or files. If you provide a
824	// value for the KMSKeyArn key, the role must allow access to the key. Passing a
825	// role across AWS accounts is not allowed. If you pass a role that isn't in your
826	// account, you get an InvalidInputException error.
827	//
828	// This member is required.
829	RoleArn *string
830
831	// The Amazon Resource Name (ARN) of an AWS Key Management Service (KMS) key.
832	KMSKeyArn *string
833
834	noSmithyDocumentSerde
835}
836
837// Defines the fields of a dataset. You specify this object in the CreateDataset
838// request.
839type Schema struct {
840
841	// An array of attributes specifying the name and type of each field in a dataset.
842	Attributes []SchemaAttribute
843
844	noSmithyDocumentSerde
845}
846
847// An attribute of a schema, which defines a dataset field. A schema attribute is
848// required for every field in a dataset. The Schema object contains an array of
849// SchemaAttribute objects.
850type SchemaAttribute struct {
851
852	// The name of the dataset field.
853	AttributeName *string
854
855	// The data type of the field.
856	AttributeType AttributeType
857
858	noSmithyDocumentSerde
859}
860
861// Provides statistics for each data field imported into to an Amazon Forecast
862// dataset with the CreateDatasetImportJob operation.
863type Statistics struct {
864
865	// For a numeric field, the average value in the field.
866	Avg *float64
867
868	// The number of values in the field. If the response value is -1, refer to
869	// CountLong.
870	Count *int32
871
872	// The number of distinct values in the field. If the response value is -1, refer
873	// to CountDistinctLong.
874	CountDistinct *int32
875
876	// The number of distinct values in the field. CountDistinctLong is used instead of
877	// CountDistinct if the value is greater than 2,147,483,647.
878	CountDistinctLong *int64
879
880	// The number of values in the field. CountLong is used instead of Count if the
881	// value is greater than 2,147,483,647.
882	CountLong *int64
883
884	// The number of NAN (not a number) values in the field. If the response value is
885	// -1, refer to CountNanLong.
886	CountNan *int32
887
888	// The number of NAN (not a number) values in the field. CountNanLong is used
889	// instead of CountNan if the value is greater than 2,147,483,647.
890	CountNanLong *int64
891
892	// The number of null values in the field. If the response value is -1, refer to
893	// CountNullLong.
894	CountNull *int32
895
896	// The number of null values in the field. CountNullLong is used instead of
897	// CountNull if the value is greater than 2,147,483,647.
898	CountNullLong *int64
899
900	// For a numeric field, the maximum value in the field.
901	Max *string
902
903	// For a numeric field, the minimum value in the field.
904	Min *string
905
906	// For a numeric field, the standard deviation.
907	Stddev *float64
908
909	noSmithyDocumentSerde
910}
911
912// Describes a supplementary feature of a dataset group. This object is part of the
913// InputDataConfig object. Forecast supports the Weather Index and Holidays
914// built-in featurizations. Weather Index The Amazon Forecast Weather Index is a
915// built-in featurization that incorporates historical and projected weather
916// information into your model. The Weather Index supplements your datasets with
917// over two years of historical weather data and up to 14 days of projected weather
918// data. For more information, see Amazon Forecast Weather Index
919// (https://docs.aws.amazon.com/forecast/latest/dg/weather.html). Holidays Holidays
920// is a built-in featurization that incorporates a feature-engineered dataset of
921// national holiday information into your model. It provides native support for the
922// holiday calendars of 66 countries. To view the holiday calendars, refer to the
923// Jollyday (http://jollyday.sourceforge.net/data.html) library. For more
924// information, see Holidays Featurization
925// (https://docs.aws.amazon.com/forecast/latest/dg/holidays.html).
926type SupplementaryFeature struct {
927
928	// The name of the feature. Valid values: "holiday" and "weather".
929	//
930	// This member is required.
931	Name *string
932
933	// Weather Index To enable the Weather Index, set the value to "true" Holidays To
934	// enable Holidays, specify a country with one of the following two-letter country
935	// codes:
936	//
937	// * "AL" - ALBANIA
938	//
939	// * "AR" - ARGENTINA
940	//
941	// * "AT" - AUSTRIA
942	//
943	// * "AU" -
944	// AUSTRALIA
945	//
946	// * "BA" - BOSNIA HERZEGOVINA
947	//
948	// * "BE" - BELGIUM
949	//
950	// * "BG" - BULGARIA
951	//
952	// *
953	// "BO" - BOLIVIA
954	//
955	// * "BR" - BRAZIL
956	//
957	// * "BY" - BELARUS
958	//
959	// * "CA" - CANADA
960	//
961	// * "CL" -
962	// CHILE
963	//
964	// * "CO" - COLOMBIA
965	//
966	// * "CR" - COSTA RICA
967	//
968	// * "HR" - CROATIA
969	//
970	// * "CZ" - CZECH
971	// REPUBLIC
972	//
973	// * "DK" - DENMARK
974	//
975	// * "EC" - ECUADOR
976	//
977	// * "EE" - ESTONIA
978	//
979	// * "ET" -
980	// ETHIOPIA
981	//
982	// * "FI" - FINLAND
983	//
984	// * "FR" - FRANCE
985	//
986	// * "DE" - GERMANY
987	//
988	// * "GR" -
989	// GREECE
990	//
991	// * "HU" - HUNGARY
992	//
993	// * "IS" - ICELAND
994	//
995	// * "IN" - INDIA
996	//
997	// * "IE" - IRELAND
998	//
999	// *
1000	// "IT" - ITALY
1001	//
1002	// * "JP" - JAPAN
1003	//
1004	// * "KZ" - KAZAKHSTAN
1005	//
1006	// * "KR" - KOREA
1007	//
1008	// * "LV" -
1009	// LATVIA
1010	//
1011	// * "LI" - LIECHTENSTEIN
1012	//
1013	// * "LT" - LITHUANIA
1014	//
1015	// * "LU" - LUXEMBOURG
1016	//
1017	// * "MK"
1018	// - MACEDONIA
1019	//
1020	// * "MT" - MALTA
1021	//
1022	// * "MX" - MEXICO
1023	//
1024	// * "MD" - MOLDOVA
1025	//
1026	// * "ME" -
1027	// MONTENEGRO
1028	//
1029	// * "NL" - NETHERLANDS
1030	//
1031	// * "NZ" - NEW ZEALAND
1032	//
1033	// * "NI" - NICARAGUA
1034	//
1035	// *
1036	// "NG" - NIGERIA
1037	//
1038	// * "NO" - NORWAY
1039	//
1040	// * "PA" - PANAMA
1041	//
1042	// * "PY" - PARAGUAY
1043	//
1044	// * "PE" -
1045	// PERU
1046	//
1047	// * "PL" - POLAND
1048	//
1049	// * "PT" - PORTUGAL
1050	//
1051	// * "RO" - ROMANIA
1052	//
1053	// * "RU" - RUSSIA
1054	//
1055	// *
1056	// "RS" - SERBIA
1057	//
1058	// * "SK" - SLOVAKIA
1059	//
1060	// * "SI" - SLOVENIA
1061	//
1062	// * "ZA" - SOUTH AFRICA
1063	//
1064	// *
1065	// "ES" - SPAIN
1066	//
1067	// * "SE" - SWEDEN
1068	//
1069	// * "CH" - SWITZERLAND
1070	//
1071	// * "UA" - UKRAINE
1072	//
1073	// * "AE" -
1074	// UNITED ARAB EMIRATES
1075	//
1076	// * "US" - UNITED STATES
1077	//
1078	// * "UK" - UNITED KINGDOM
1079	//
1080	// * "UY" -
1081	// URUGUAY
1082	//
1083	// * "VE" - VENEZUELA
1084	//
1085	// This member is required.
1086	Value *string
1087
1088	noSmithyDocumentSerde
1089}
1090
1091// The optional metadata that you apply to a resource to help you categorize and
1092// organize them. Each tag consists of a key and an optional value, both of which
1093// you define. The following basic restrictions apply to tags:
1094//
1095// * Maximum number of
1096// tags per resource - 50.
1097//
1098// * For each resource, each tag key must be unique, and
1099// each tag key can have only one value.
1100//
1101// * Maximum key length - 128 Unicode
1102// characters in UTF-8.
1103//
1104// * Maximum value length - 256 Unicode characters in
1105// UTF-8.
1106//
1107// * If your tagging schema is used across multiple services and resources,
1108// remember that other services may have restrictions on allowed characters.
1109// Generally allowed characters are: letters, numbers, and spaces representable in
1110// UTF-8, and the following characters: + - = . _ : / @.
1111//
1112// * Tag keys and values are
1113// case sensitive.
1114//
1115// * Do not use aws:, AWS:, or any upper or lowercase combination
1116// of such as a prefix for keys as it is reserved for AWS use. You cannot edit or
1117// delete tag keys with this prefix. Values can have this prefix. If a tag value
1118// has aws as its prefix but the key does not, then Forecast considers it to be a
1119// user tag and will count against the limit of 50 tags. Tags with only the key
1120// prefix of aws do not count against your tags per resource limit.
1121type Tag struct {
1122
1123	// One part of a key-value pair that makes up a tag. A key is a general label that
1124	// acts like a category for more specific tag values.
1125	//
1126	// This member is required.
1127	Key *string
1128
1129	// The optional part of a key-value pair that makes up a tag. A value acts as a
1130	// descriptor within a tag category (key).
1131	//
1132	// This member is required.
1133	Value *string
1134
1135	noSmithyDocumentSerde
1136}
1137
1138// The status, start time, and end time of a backtest, as well as a failure reason
1139// if applicable.
1140type TestWindowSummary struct {
1141
1142	// If the test failed, the reason why it failed.
1143	Message *string
1144
1145	// The status of the test. Possible status values are:
1146	//
1147	// * ACTIVE
1148	//
1149	// *
1150	// CREATE_IN_PROGRESS
1151	//
1152	// * CREATE_FAILED
1153	Status *string
1154
1155	// The time at which the test ended.
1156	TestWindowEnd *time.Time
1157
1158	// The time at which the test began.
1159	TestWindowStart *time.Time
1160
1161	noSmithyDocumentSerde
1162}
1163
1164// The weighted loss value for a quantile. This object is part of the Metrics
1165// object.
1166type WeightedQuantileLoss struct {
1167
1168	// The difference between the predicted value and the actual value over the
1169	// quantile, weighted (normalized) by dividing by the sum over all quantiles.
1170	LossValue *float64
1171
1172	// The quantile. Quantiles divide a probability distribution into regions of equal
1173	// probability. For example, if the distribution was divided into 5 regions of
1174	// equal probability, the quantiles would be 0.2, 0.4, 0.6, and 0.8.
1175	Quantile *float64
1176
1177	noSmithyDocumentSerde
1178}
1179
1180// The metrics for a time range within the evaluation portion of a dataset. This
1181// object is part of the EvaluationResult object. The TestWindowStart and
1182// TestWindowEnd parameters are determined by the BackTestWindowOffset parameter of
1183// the EvaluationParameters object.
1184type WindowSummary struct {
1185
1186	// The type of evaluation.
1187	//
1188	// * SUMMARY - The average metrics across all windows.
1189	//
1190	// *
1191	// COMPUTED - The metrics for the specified window.
1192	EvaluationType EvaluationType
1193
1194	// The number of data points within the window.
1195	ItemCount *int32
1196
1197	// Provides metrics used to evaluate the performance of a predictor.
1198	Metrics *Metrics
1199
1200	// The timestamp that defines the end of the window.
1201	TestWindowEnd *time.Time
1202
1203	// The timestamp that defines the start of the window.
1204	TestWindowStart *time.Time
1205
1206	noSmithyDocumentSerde
1207}
1208
1209type noSmithyDocumentSerde = smithydocument.NoSerde
1210