Class: Google::Apis::AiplatformV1::GoogleCloudAiplatformV1FeatureStatsAnomaly

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/aiplatform_v1/classes.rb,
lib/google/apis/aiplatform_v1/representations.rb,
lib/google/apis/aiplatform_v1/representations.rb

Overview

Stats and Anomaly generated at specific timestamp for specific Feature. The start_time and end_time are used to define the time range of the dataset that current stats belongs to, e.g. prediction traffic is bucketed into prediction datasets by time window. If the Dataset is not defined by time window, start_time = end_time. Timestamp of the stats and anomalies always refers to end_time. Raw stats and anomalies are stored in stats_uri or anomaly_uri in the tensorflow defined protos. Field data_stats contains almost identical information with the raw stats in Vertex AI defined proto, for UI to display.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudAiplatformV1FeatureStatsAnomaly

Returns a new instance of GoogleCloudAiplatformV1FeatureStatsAnomaly.



8184
8185
8186
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 8184

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#anomaly_detection_thresholdFloat

This is the threshold used when detecting anomalies. The threshold can be changed by user, so this one might be different from ThresholdConfig.value. Corresponds to the JSON property anomalyDetectionThreshold

Returns:

  • (Float)


8132
8133
8134
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 8132

def anomaly_detection_threshold
  @anomaly_detection_threshold
end

#anomaly_uriString

Path of the anomaly file for current feature values in Cloud Storage bucket. Format: gs:////anomalies. Example: gs://monitoring_bucket/feature_name/ anomalies. Stats are stored as binary format with Protobuf message Anoamlies are stored as binary format with Protobuf message tensorflow.metadata.v0. AnomalyInfo. Corresponds to the JSON property anomalyUri

Returns:

  • (String)


8142
8143
8144
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 8142

def anomaly_uri
  @anomaly_uri
end

#distribution_deviationFloat

Deviation from the current stats to baseline stats. 1. For categorical feature, the distribution distance is calculated by L-inifinity norm. 2. For numerical feature, the distribution distance is calculated by Jensen–Shannon divergence. Corresponds to the JSON property distributionDeviation

Returns:

  • (Float)


8149
8150
8151
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 8149

def distribution_deviation
  @distribution_deviation
end

#end_timeString

The end timestamp of window where stats were generated. For objectives where time window doesn't make sense (e.g. Featurestore Snapshot Monitoring), end_time indicates the timestamp of the data used to generate stats (e.g. timestamp we take snapshots for feature values). Corresponds to the JSON property endTime

Returns:

  • (String)


8157
8158
8159
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 8157

def end_time
  @end_time
end

#scoreFloat

Feature importance score, only populated when cross-feature monitoring is enabled. For now only used to represent feature attribution score within range [0, 1] for ModelDeploymentMonitoringObjectiveType.FEATURE_ATTRIBUTION_SKEW and ModelDeploymentMonitoringObjectiveType.FEATURE_ATTRIBUTION_DRIFT. Corresponds to the JSON property score

Returns:

  • (Float)


8165
8166
8167
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 8165

def score
  @score
end

#start_timeString

The start timestamp of window where stats were generated. For objectives where time window doesn't make sense (e.g. Featurestore Snapshot Monitoring), start_time is only used to indicate the monitoring intervals, so it always equals to (end_time - monitoring_interval). Corresponds to the JSON property startTime

Returns:

  • (String)


8173
8174
8175
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 8173

def start_time
  @start_time
end

#stats_uriString

Path of the stats file for current feature values in Cloud Storage bucket. Format: gs:////stats. Example: gs://monitoring_bucket/feature_name/stats. Stats are stored as binary format with Protobuf message tensorflow.metadata. v0.FeatureNameStatistics. Corresponds to the JSON property statsUri

Returns:

  • (String)


8182
8183
8184
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 8182

def stats_uri
  @stats_uri
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8189
8190
8191
8192
8193
8194
8195
8196
8197
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 8189

def update!(**args)
  @anomaly_detection_threshold = args[:anomaly_detection_threshold] if args.key?(:anomaly_detection_threshold)
  @anomaly_uri = args[:anomaly_uri] if args.key?(:anomaly_uri)
  @distribution_deviation = args[:distribution_deviation] if args.key?(:distribution_deviation)
  @end_time = args[:end_time] if args.key?(:end_time)
  @score = args[:score] if args.key?(:score)
  @start_time = args[:start_time] if args.key?(:start_time)
  @stats_uri = args[:stats_uri] if args.key?(:stats_uri)
end