tw.endpoints.anomaly_detection.build_model
tw.endpoints.anomaly_detection.build_model(configuration=dict,dataset=pandas.DataFrame)
Submit a model-building job.
POST ``/anomaly-detection/build-model``
Parameters
configuration : dict
Model configuration payload.
dataset : pandas.DataFrame
Historical training data serialised as CSV and sent as a multipart file.
Returns
dict
API response containing at least ``"id"`` (the new job identifier).
Example Configuration
anomaly_detection_build_model_configuration = {
'normal_behavior':{
'target_column':'str',
'holiday_column:':'str',
'target_offsets':'combined',
'allow_offsets':True,
'offset_limit': 0,
'normalization':True,
'max_feature_count':20,
'transformations': [
'exponential_moving_average',
'rest_of_week',
'periodic',
'intercept',
'piecewise_linear',
'time_offsets',
'polynomial',
'identity',
'simple_moving_average',
'month',
'trend',
'day_of_week',
'fourier',
'public_holidays',
'one_hot_encoding'
],
'daily_cycle':True,
'confidence_level':90,
'categorical_columns':[
'str'
],
'data_alignment': [
{
'column_name': 'string',
'timestamp': 'yyyy-mm-dd hh:mm:ssZ'
}
],
},
'detection_layers': [
{
'residuals_transformation':{
'type':'residuals'
},
'sensitivity':0.3
},
{
'residuals_transformation':{
'type':'residuals_change',
'window_length':2
},
'sensitivity':0.3
},
{
'residuals_transformation':{
'type':'moving_average',
'window_length':1
},
'sensitivity':0.3
},
{
'residuals_transformation':{
'type':'moving_average_change',
'window_lengths':[
2,
1
]
},
'sensitivity':0.3
},
{
'residuals_transformation':{
'type':'standard_deviation',
'window_length':1
},
'sensitivity':0.3
},
{
'residuals_transformation':{
'type':'standard_deviation_change',
'window_lengths':[
2,
1
]
},
'sensitivity':0.3
},
]
}
Example Usage
anomaly_detection_build_model_response = tw.endpoints.anomaly_detection.build_model(
configuration = anomaly_detection_build_model_configuration,
dataset = dataset
)
Example Output
anomaly_detection_build_model_id = anomaly_detection_build_model_response['id']