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