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.



6099
6100
6101
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 6099

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)


6047
6048
6049
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 6047

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)


6057
6058
6059
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 6057

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)


6064
6065
6066
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 6064

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)


6072
6073
6074
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 6072

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)


6080
6081
6082
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 6080

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)


6088
6089
6090
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 6088

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)


6097
6098
6099
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 6097

def stats_uri
  @stats_uri
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6104
6105
6106
6107
6108
6109
6110
6111
6112
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 6104

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