Class FeaturizationConfig
- java.lang.Object
-
- software.amazon.awssdk.services.forecast.model.FeaturizationConfig
-
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<FeaturizationConfig.Builder,FeaturizationConfig>
@Generated("software.amazon.awssdk:codegen") public final class FeaturizationConfig extends Object implements SdkPojo, Serializable, ToCopyableBuilder<FeaturizationConfig.Builder,FeaturizationConfig>
This object belongs to the CreatePredictor operation. If you created your predictor with CreateAutoPredictor, see AttributeConfig.
In a CreatePredictor operation, the specified algorithm trains a model using the specified dataset group. You can optionally tell the operation to modify data fields prior to training a model. These modifications are referred to as featurization.
You define featurization using the
FeaturizationConfigobject. You specify an array of transformations, one for each field that you want to featurize. You then include theFeaturizationConfigobject in yourCreatePredictorrequest. Amazon Forecast applies the featurization to theTARGET_TIME_SERIESandRELATED_TIME_SERIESdatasets before model training.You can create multiple featurization configurations. For example, you might call the
CreatePredictoroperation twice by specifying different featurization configurations.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceFeaturizationConfig.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static FeaturizationConfig.Builderbuilder()booleanequals(Object obj)booleanequalsBySdkFields(Object obj)List<Featurization>featurizations()An array of featurization (transformation) information for the fields of a dataset.List<String>forecastDimensions()An array of dimension (field) names that specify how to group the generated forecast.StringforecastFrequency()The frequency of predictions in a forecast.<T> Optional<T>getValueForField(String fieldName, Class<T> clazz)booleanhasFeaturizations()For responses, this returns true if the service returned a value for the Featurizations property.booleanhasForecastDimensions()For responses, this returns true if the service returned a value for the ForecastDimensions property.inthashCode()Map<String,SdkField<?>>sdkFieldNameToField()List<SdkField<?>>sdkFields()static Class<? extends FeaturizationConfig.Builder>serializableBuilderClass()FeaturizationConfig.BuildertoBuilder()StringtoString()Returns a string representation of this object.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
forecastFrequency
public final String forecastFrequency()
The frequency of predictions in a forecast.
Valid intervals are an integer followed by Y (Year), M (Month), W (Week), D (Day), H (Hour), and min (Minute). For example, "1D" indicates every day and "15min" indicates every 15 minutes. You cannot specify a value that would overlap with the next larger frequency. That means, for example, you cannot specify a frequency of 60 minutes, because that is equivalent to 1 hour. The valid values for each frequency are the following:
-
Minute - 1-59
-
Hour - 1-23
-
Day - 1-6
-
Week - 1-4
-
Month - 1-11
-
Year - 1
Thus, if you want every other week forecasts, specify "2W". Or, if you want quarterly forecasts, you specify "3M".
The frequency must be greater than or equal to the TARGET_TIME_SERIES dataset frequency.
When a RELATED_TIME_SERIES dataset is provided, the frequency must be equal to the TARGET_TIME_SERIES dataset frequency.
- Returns:
- The frequency of predictions in a forecast.
Valid intervals are an integer followed by Y (Year), M (Month), W (Week), D (Day), H (Hour), and min (Minute). For example, "1D" indicates every day and "15min" indicates every 15 minutes. You cannot specify a value that would overlap with the next larger frequency. That means, for example, you cannot specify a frequency of 60 minutes, because that is equivalent to 1 hour. The valid values for each frequency are the following:
-
Minute - 1-59
-
Hour - 1-23
-
Day - 1-6
-
Week - 1-4
-
Month - 1-11
-
Year - 1
Thus, if you want every other week forecasts, specify "2W". Or, if you want quarterly forecasts, you specify "3M".
The frequency must be greater than or equal to the TARGET_TIME_SERIES dataset frequency.
When a RELATED_TIME_SERIES dataset is provided, the frequency must be equal to the TARGET_TIME_SERIES dataset frequency.
-
-
-
hasForecastDimensions
public final boolean hasForecastDimensions()
For responses, this returns true if the service returned a value for the ForecastDimensions property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
forecastDimensions
public final List<String> forecastDimensions()
An array of dimension (field) names that specify how to group the generated forecast.
For example, suppose that you are generating a forecast for item sales across all of your stores, and your dataset contains a
store_idfield. If you want the sales forecast for each item by store, you would specifystore_idas the dimension.All forecast dimensions specified in the
TARGET_TIME_SERIESdataset don't need to be specified in theCreatePredictorrequest. All forecast dimensions specified in theRELATED_TIME_SERIESdataset must be specified in theCreatePredictorrequest.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasForecastDimensions()method.- Returns:
- An array of dimension (field) names that specify how to group the generated forecast.
For example, suppose that you are generating a forecast for item sales across all of your stores, and your dataset contains a
store_idfield. If you want the sales forecast for each item by store, you would specifystore_idas the dimension.All forecast dimensions specified in the
TARGET_TIME_SERIESdataset don't need to be specified in theCreatePredictorrequest. All forecast dimensions specified in theRELATED_TIME_SERIESdataset must be specified in theCreatePredictorrequest.
-
hasFeaturizations
public final boolean hasFeaturizations()
For responses, this returns true if the service returned a value for the Featurizations property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
featurizations
public final List<Featurization> featurizations()
An array of featurization (transformation) information for the fields of a dataset.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasFeaturizations()method.- Returns:
- An array of featurization (transformation) information for the fields of a dataset.
-
toBuilder
public FeaturizationConfig.Builder toBuilder()
- Specified by:
toBuilderin interfaceToCopyableBuilder<FeaturizationConfig.Builder,FeaturizationConfig>
-
builder
public static FeaturizationConfig.Builder builder()
-
serializableBuilderClass
public static Class<? extends FeaturizationConfig.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFieldsin interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
sdkFieldNameToField
public final Map<String,SdkField<?>> sdkFieldNameToField()
- Specified by:
sdkFieldNameToFieldin interfaceSdkPojo
-
-