Справочник по аномалиям проверки данных TensorFlow

TFDV проверяет наличие аномалий, сравнивая прототип(ы) схемы и статистики. В следующей таблице перечислены типы аномалий, которые может обнаруживать TFDV, поля схемы и статистики, которые используются для обнаружения каждого типа аномалии, а также условия, при которых обнаруживается каждый тип аномалии.

  • BOOL_TYPE_BIG_INT

    • Поля схемы:
      • feature.bool_domain
    • Поля статистики:
      • features.num_stats.max
      • features.type
    • Условия обнаружения:
      • feature.bool_domain указан и
      • features.type == INT и
      • features.num_stats.max > 1
  • BOOL_TYPE_BYTES_NOT_INT

    • Тип аномалии не обнаружен в TFDV
  • BOOL_TYPE_BYTES_NOT_STRING

    • Тип аномалии не обнаружен в TFDV
  • BOOL_TYPE_FLOAT_NOT_INT

    • Тип аномалии не обнаружен в TFDV
  • BOOL_TYPE_FLOAT_NOT_STRING

    • Тип аномалии не обнаружен в TFDV
  • BOOL_TYPE_INT_NOT_STRING

    • Тип аномалии не обнаружен в TFDV
  • BOOL_TYPE_SMALL_INT

    • Поля схемы:
      • feature.bool_domain
    • Поля статистики:
      • features.num_stats.min
      • features.type
    • Условия обнаружения:
      • features.type == INT и
      • feature.bool_domain указан и
      • features.num_stats.min < 0
  • BOOL_TYPE_STRING_NOT_INT

    • Тип аномалии не обнаружен в TFDV
  • BOOL_TYPE_UNEXPECTED_STRING

    • Поля схемы:
      • feature.bool_domain
    • Поля статистики:
      • features.string_stats.rank_histogram *
    • Условия обнаружения:
      • features.type == STRING и
      • feature.bool_domain указан и
      • по крайней мере одно значение в rank_histogram * не является feature.bool_domain.true_value или feature.bool_domain.false_value
  • BOOL_TYPE_UNEXPECTED_FLOAT

    • Поля схемы:
      • feature.bool_domain
    • Поля статистики:
      • features.num_stats.min
      • features.num_stats.max
      • features.num_stats.histograms.num_nan
      • features.num_stats.histograms.buckets.low_value
      • features.num_stats.histograms.buckets.high_value
      • features.type
    • Условия обнаружения:
      • features.type == FLOAT и
      • указан feature.bool_domain и либо
        • ( features.num_stats.min != 0 или features.num_stats.min != 1) или
        • ( features.num_stats.max != 0 или features.num_stats.max != 1) или
        • features.num_stats.histograms.num_nan > 0 или
        • ( features.num_stats.histograms.buckets.low_value != 0 или features.num_stats.histograms.buckets.high_value != 1) и features.num_stats.histograms.buckets.sample_count > 0
  • BOOL_TYPE_INVALID_CONFIG

    • Поля схемы:
      • feature.bool_domain
    • Поля статистики:
      • features.type
    • Условия обнаружения:
      • Если features.type == INT или FLOAT ,
        • feature.bool_domain указан и
        • указано feature.bool_domain.true_value или feature.bool_domain.false_value , или
      • если features.type == STRING ,
        • feature.bool_domain указан и
        • feature.bool_domain.true_value и feature.bool_domain.false_value не указаны
  • ENUM_TYPE_BYTES_NOT_STRING

    • Тип аномалии не обнаружен в TFDV
  • ENUM_TYPE_FLOAT_NOT_STRING

    • Тип аномалии не обнаружен в TFDV
  • ENUM_TYPE_INT_NOT_STRING

    • Тип аномалии не обнаружен в TFDV
  • ENUM_TYPE_INVALID_UTF8

    • Поля статистики:
      • features.string_stats.invalid_utf8_count
    • Условия обнаружения:
      • invalid_utf8_count > 0
  • ENUM_TYPE_UNEXPECTED_STRING_VALUES

    • Поля схемы:
      • string_domain и feature.domain ; или feature.string_domain
      • feature.distribution_constraints.min_domain_mass
    • Поля статистики:
      • features.string_stats.rank_histogram *
    • Условия обнаружения:
      • Либо (количество значений в rank_histogram *, которые не относятся к домену/общее количество значений) > (1 - feature.distribution_constraints.min_domain_mass ), либо
      • feature.distribution_constraints.min_domain_mass == 1.0 и в гистограмме есть значения, которые не относятся к домену
  • FEATURE_TYPE_HIGH_NUMBER_VALUES

    • Поля схемы:
      • feature.value_count.max
      • feature.value_counts.value_count.max
    • Поля статистики:
      • features.common_stats.max_num_values
      • features.common_stats.presence_and_valency_stats.max_num_values
    • Условия обнаружения:
      • Если указано feature.value_count.max
        • features.common_stats.max_num_values ​​> feature.value_count.max ; или
      • если указано feature.value_counts
        • feature.value_counts.value_count.max < features.common_stats.presence_and_valency_stats.max_num_values ​​на заданном уровне вложенности
  • FEATURE_TYPE_LOW_FRACTION_PRESENT

    • Поля схемы:
      • feature.presence.min_fraction
    • Поля статистики:
      • features.common_stats.num_non_missing *
      • num_examples *
    • Условия обнаружения:
      • feature.presence.min_fraction указывается и ( features.common_stats.num_non_missing * / num_examples *) < feature.presence.min_fraction или
      • feature.presence.min_fraction == 1.0 и common_stats.num_missing != 0
  • FEATURE_TYPE_LOW_NUMBER_PRESENT

    • Поля схемы:
      • feature.presence.min_count
    • Поля статистики:
      • features.common_stats.num_non_missing *
    • Условия обнаружения:
      • feature.presence.min_count указан и либо
        • features.common_stats.num_non_missing * == 0 или
        • features.common_stats.num_non_missing * < feature.presence.min_count
  • FEATURE_TYPE_LOW_NUMBER_VALUES

    • Поля схемы:
      • feature.value_count.min
      • feature.value_counts.value_count.min
    • Поля статистики:
      • features.common_stats.min_num_values
      • features.common_stats.presence_and_valency_stats.min_num_values
    • Условия обнаружения:
      • Если указано feature.value_count.min
        • features.common_stats.min_num_values ​​< feature.value_count.min ; или
      • если указано feature.value_counts
        • features.common_stats.presence_and_valency_stats.min_num_values ​​< feature.value_counts.value_count.min на заданном уровне вложенности
  • FEATURE_TYPE_NOT_PRESENT

    • Поля схемы:
      • feature.in_environment или feature.not_in_environment или schema.default_environment
      • feature.lifecycle_stage
      • feature.presence.min_count или feature.presence.min_fraction
    • Поля статистики:
      • features.common_stats.num_non_missing *
    • Условия обнаружения:
      • feature.lifecycle_stage не в [ PLANNED , ALPHA , DEBUG , DEPRECATED ] и
      • common_stats.num_non_missing * == 0 и
      • ( feature.presence.min_count > 0 или feature.presence.min_fraction > 0) и либо
        • feature.in_environment == текущая среда или
        • feature.not_in_environment != текущая среда или
        • schema.default_environment != текущая среда
  • FEATURE_TYPE_NO_VALUES

    • Тип аномалии не обнаружен в TFDV
  • FEATURE_TYPE_UNEXPECTED_REPEATED

    • Тип аномалии не обнаружен в TFDV
  • FEATURE_TYPE_HIGH_UNIQUE

    • Поля схемы:
      • feature.unique_constraints.max
    • Поля статистики:
      • features.string_stats.unique
    • Условия обнаружения:
      • features.string_stats.unique > feature.unique_constraints.max
  • FEATURE_TYPE_LOW_UNIQUE

    • Поля схемы:
      • feature.unique_constraints.min
    • Поля статистики:
      • features.string_stats.unique
    • Условия обнаружения:
      • features.string_stats.unique < feature.unique_constraints.min
  • FEATURE_TYPE_NO_UNIQUE

    • Поля схемы:
      • feature.unique_constraints
    • Поля статистики:
      • features.string_stats.unique
    • Условия обнаружения:
      • feature.unique_constraints указан, но features.string_stats.unique отсутствует (как в случае, когда функция не является строкой или категорией)
  • FLOAT_TYPE_BIG_FLOAT

    • Поля схемы:
      • feature.float_domain.max
    • Поля статистики:
      • features.type
      • features.num_stats.max или features.string_stats.rank_histogram
    • Условия обнаружения:
      • Если features.type == FLOAT ,
        • features.num_stats.max > feature.float_domain.max ; или
      • если features.type == BYTES или STRING ,
        • максимальное значение в features.string_stats.rank_histogram (при преобразовании в число с плавающей запятой) > feature.float_domain.max
  • FLOAT_TYPE_NOT_FLOAT

    • Тип аномалии не обнаружен в TFDV
  • FLOAT_TYPE_SMALL_FLOAT

    • Поля схемы:
      • feature.float_domain.min
    • Поля статистики:
      • features.type
      • features.num_stats.min или features.string_stats.rank_histogram
    • Условия обнаружения:
      • Если features.type == FLOAT ,
        • features.num_stats.min < feature.float_domain.min ; или
      • если features.type == BYTES или STRING ,
        • минимальное значение в features.string_stats.rank_histogram (при преобразовании в число с плавающей запятой) < feature.float_domain.min
  • FLOAT_TYPE_STRING_NOT_FLOAT

    • Поля схемы:
      • feature.float_domain
    • Поля статистики:
      • features.type
      • features.string_stats.rank_histogram
    • Условия обнаружения:
      • features.type == BYTES или STRING и
      • features.string_stats.rank_histogram есть по крайней мере одно значение, которое нельзя преобразовать в число с плавающей запятой.
  • FLOAT_TYPE_NON_STRING

    • Тип аномалии не обнаружен в TFDV
  • FLOAT_TYPE_UNKNOWN_TYPE_NUMBER

    • Тип аномалии не обнаружен в TFDV
  • FLOAT_TYPE_HAS_NAN

    • Поля схемы:
      • feature.float_domain.disallow_nan
    • Поля статистики:
      • features.type
      • features.num_stats.histograms.num_nan
    • Условия обнаружения:
      • float_domain.disallow_nan истинно и
      • features.num_stats.histograms.num_nan > 0
  • FLOAT_TYPE_HAS_INF

    • Поля схемы:
      • feature.float_domain.disallow_inf
    • Поля статистики:
      • features.type
      • features.num_stats.min
      • features.num_stats.max
    • Условия обнаружения:
      • features.type == FLOAT
      • float_domain.disallow_inf имеет значение true и либо
        • features.num_stats.min == inf/-inf или
        • features.num_stats.max == inf/-inf
  • INT_TYPE_BIG_INT

    • Поля схемы:
      • feature.int_domain.max
    • Поля статистики:
      • features.type
      • features.num_stats.max
      • features.string_stats.rank_histogram
    • Условия обнаружения:
      • Если features.type == INT ,
        • features.num_stats.max > feature.int_domain.max ; или
      • если features.type == BYTES или STRING ,
        • максимальное значение в features.string_stats.rank_histogram (при преобразовании в int) > feature.int_domain.max
  • INT_TYPE_INT_EXPECTED

    • Тип аномалии не обнаружен в TFDV
  • INT_TYPE_NOT_INT_STRING

    • Поля схемы:
      • feature.int_domain
    • Поля статистики:
      • features.type
      • features.string_stats.rank_histogram
    • Условия обнаружения:
      • features.type == BYTES или STRING и
      • features.string_stats.rank_histogram есть по крайней мере одно значение, которое нельзя преобразовать в целое число.
  • INT_TYPE_NOT_STRING

    • Тип аномалии не обнаружен в TFDV
  • INT_TYPE_SMALL_INT

    • Поля схемы:
      • feature.int_domain.min
    • Поля статистики:
      • features.type
      • features.num_stats.min
      • features.string_stats.rank_histogram
    • Условия обнаружения:
      • Если features.type == INT ,
        • features.num_stats.min < feature.int_domain.min ; или
      • если features.type == BYTES или STRING ,
        • минимальное значение в features.string_stats.rank_histogram (при преобразовании в int) < feature.int_domain.min
  • INT_TYPE_STRING_EXPECTED

    • Тип аномалии не обнаружен в TFDV
  • INT_TYPE_UNKNOWN_TYPE_NUMBER

    • Тип аномалии не обнаружен в TFDV
  • LOW_SUPPORTED_IMAGE_FRACTION

    • Поля схемы:
      • feature.image_domain.minimum_supported_image_fraction
    • Поля статистики:
      • features.custom_stats.rank_histogram для custom_stats с именем image_format_histogram . Обратите внимание, что статистика семантической области должна быть включена для создания image_format_histogram и для выполнения этой проверки. Статистика семантической области не создается по умолчанию.
    • Условия обнаружения:
      • Доля значений, которые поддерживаются типами изображений Tensorflow для всех типов изображений, меньше, чем feature.image_domain.minimum_supported_image_fraction .
  • SCHEMA_MISSING_COLUMN

    • Поля схемы:
      • feature.in_environment или feature.not_in_environment или schema.default_environment
      • feature.lifecycle_stage
      • feature.presence.min_count или feature.presence.min_fraction
    • Условия обнаружения:
      • feature.lifecycle_stage != PLANNED , ALPHA , DEBUG или DEPRECATED и
      • feature.presence.min_count > 0 или feature.presence.min_fraction > 0 и
      • feature.in_environment == текущая среда или feature.not_in_environment != текущая среда или schema.default_environment != текущая среда и
      • объект с указанным именем/путем не найден в прото статистики
  • SCHEMA_NEW_COLUMN

    • Условия обнаружения:
      • в прототипе статистики есть функция, но нет функции с ее именем/путем в прототипе схемы
  • SCHEMA_TRAINING_SERVING_SKEW

    • Тип аномалии не обнаружен в TFDV
  • STRING_TYPE_NOW_FLOAT

    • Тип аномалии не обнаружен в TFDV
  • STRING_TYPE_NOW_INT

    • Тип аномалии не обнаружен в TFDV
  • COMPARATOR_CONTROL_DATA_MISSING

    • Поля схемы:
      • feature.skew_comparator.infinity_norm.threshold
      • feature.drift_comparator.infinity_norm.threshold
    • Условия обнаружения:
      • контрольная статистика прото (т. е. статистика обслуживания перекоса или предыдущая статистика дрейфа) доступна, но не содержит указанной функции
  • COMPARATOR_TREATMENT_DATA_MISSING

    • Тип аномалии не обнаружен в TFDV
  • COMPARATOR_L_INFTY_HIGH

    • Поля схемы:
      • feature.skew_comparator.infinity_norm.threshold
      • feature.drift_comparator.infinity_norm.threshold
    • Поля статистики:
      • features.string_stats.rank_histogram *
    • Условия обнаружения:
      • L-бесконечная норма вектора, представляющая разницу между нормализованными подсчетами из features.string_stats.rank_histogram * в контрольной статистике (т. е. обслуживающей статистике перекоса или предыдущей статистике дрейфа) и статистике обработки (т. е. перекос или текущая статистика дрейфа) > feature.skew_comparator.infinity_norm.threshold или feature.drift_comparator.infinity_norm.threshold
  • COMPARATOR_NORMALIZED_ABSOLUTE_DIFFERENCE_HIGH

    • Поля схемы:
      • feature.skew_comparator.normalized_abs_difference.threshold
      • feature.drift_comparator.normalized_abs_difference.threshold
    • Поля статистики:
      • features.string_stats.rank_histogram
    • Условия обнаружения:
      • Превышена нормализованная абсолютная разница между значениями от features.string_stats.rank_histogram в контрольной статистике (т. е. статистике обслуживания для перекоса или предыдущей статистике для дрейфа) и статистике обработки (т. е. тренировочной статистике для перекоса или текущей статистике для дрейфа). feature.skew_comparator.normalized_abs_difference.threshold или feature.drift_comparator.normalized_abs_difference.threshold. Различия в подсчетах нормализуются по общему подсчету в обоих условиях.
  • COMPARATOR_JENSEN_SHANNON_DIVERGENCE_HIGH

    • Поля схемы:
      • feature.skew_comparator.jensen_shannon_divergence.threshold
      • feature.drift_comparator.jensen_shannon_divergence.threshold
    • Поля статистики:
      • features.num_stats.histograms типа STANDARD
      • features.string_stats.rank_histogram *
    • Условия обнаружения:
      • Приблизительное расхождение Дженсена-Шеннона, вычисленное между контрольной статистикой (т. е. обслуживающей статистикой перекоса или предыдущей статистикой дрейфа) и статистикой лечения (т. е. обучающей статистикой перекоса или текущей статистикой дрейфа) > feature.skew_comparator.jensen_shannon_divergence.threshold или feature.drift_comparator.jensen_shannon_divergence.threshold . Приблизительное расхождение Дженсена-Шеннона вычисляется на основе нормализованного количества выборок как в стандартной гистограмме features.num_stats.histograms , так и features.string_stats.rank_histogram *.
  • NO_DATA_IN_SPAN

    • Тип аномалии не обнаружен в TFDV
  • SPARSE_FEATURE_MISSING_VALUE

    • Поля схемы:
      • sparse_feature.value_feature
    • Поля статистики:
      • features.custom_stats
    • Условия обнаружения:
      • features.custom_stats с именем «missing_value» и
      • Пользовательская missing_value != 0
  • SPARSE_FEATURE_MISSING_INDEX

    • Поля схемы:
      • sparse_feature.index_feature
    • Поля статистики:
      • features.custom_stats
    • Условия обнаружения:
      • features.custom_stats с именем «missing_index» и
      • missing_index статистикаmissing_index содержит любое значение != 0
  • SPARSE_FEATURE_LENGTH_MISMATCH

    • Поля схемы:
      • sparse_feature.value_feature
      • sparse_feature.index_feature
    • Поля статистики:
      • features.custom_stats
    • Условия обнаружения:
      • features.custom_stats с "min_length_diff" или "max_length_diff" в качестве имени
      • Пользовательская статистика min_length_diff или max_length_diff содержит любое значение!= 0
  • SPARSE_FEATURE_NAME_COLLISION

    • Поля схемы:
      • sparse_feature.name
      • sparse_feature.lifecycle_stage
      • feature.name
      • feature.lifecycle_stage
    • Условия обнаружения:
      • sparse_feature.lifecycle_stage != PLANNED , ALPHA , DEBUG или DEPRECATED , и
      • feature.lifecycle_stage != PLANNED , ALPHA , DEBUG или DEPRECATED , и
      • sparse_feature.name == feature.name
  • SEMANTIC_DOMAIN_UPDATE

    • Поля схемы:
      • feature.domain_info
    • Поля статистики:
      • features.custom_stats
    • Условия обнаружения:
      • features.custom_stats с именем «domain_info» и
      • feature.domain_info еще не установлен в схеме и
      • для этой функции существует единая пользовательская статистика domain_info
  • COMPARATOR_LOW_NUM_EXAMPLES

    • Поля схемы:
      • schema.dataset_constraints.num_examples_drift_comparator.min_fraction_threshold
      • schema.dataset_constraints.num_examples_version_comparator.min_fraction_threshold
    • Поля статистики:
      • num_examples *
    • Условия обнаружения:
      • num_examples * > 0 и
      • доступна предыдущая статистика
      • num_examples * / предыдущая статистика num_examples * < компаратор min_fraction_threshold
  • COMPARATOR_HIGH_NUM_EXAMPLES

    • Поля схемы:
      • schema.dataset_constraints.num_examples_drift_comparator.max_fraction_threshold
      • schema.dataset_constraints.num_examples_version_comparator.max_fraction_threshold
    • Поля статистики:
      • num_examples *
    • Условия обнаружения:
      • num_examples * > 0 и
      • доступна предыдущая статистика
      • num_examples * / предыдущая статистика num_examples * > компаратор max_fraction_threshold
  • DATASET_LOW_NUM_EXAMPLES

    • Поля схемы:
      • schema.dataset_constraints.min_examples_count
    • Поля статистики:
      • num_examples *
    • Условия обнаружения:
      • num_examples * < dataset_constraints.min_examples_count
  • DATASET_HIGH_NUM_EXAMPLES

    • Поля схемы:
      • schema.dataset_constraints.max_examples_count
    • Поля статистики:
      • num_examples *
    • Условия обнаружения:
      • num_examples * > dataset_constraints.max_examples_count
  • WEIGHTED_FEATURE_NAME_COLLISION

    • Поля схемы:
      • weighted_feature.name
      • weighted_feature.lifecycle_stage
      • sparse_feature.name
      • sparse_feature.lifecycle_stage
      • feature.name
      • feature.lifecycle_stage
    • Условия обнаружения:
      • weighted_feature.lifecycle_stage != PLANNED , ALPHA , DEBUG или DEPRECATED и либо
        • если feature.lifecycle_stage != PLANNED , ALPHA , DEBUG или DEPRECATED ,
          • weighted_feature.name == feature.name ; или
        • если sparse_feature.lifecycle_stage != PLANNED , ALPHA , DEBUG или DEPRECATED ,
          • weighted_feature.name == sparse_feature.name
  • WEIGHTED_FEATURE_MISSING_VALUE

    • Поля схемы:
      • weighted_feature.feature
    • Поля статистики:
      • features.custom_stats
    • Условия обнаружения:
      • features.custom_stats с именем «missing_value» и
      • Пользовательская missing_value != 0
  • WEIGHTED_FEATURE_MISSING_WEIGHT

    • Поля схемы:
      • weighted_feature.weight_feature
    • Поля статистики:
      • features.custom_stats
    • Условия обнаружения:
      • features.custom_stats с именем «missing_weight» и
      • Пользовательская missing_weight != 0
  • WEIGHTED_FEATURE_LENGTH_MISMATCH

    • Поля схемы:
      • weighted_feature.feature
      • weighted_feature.weight_feature
    • Поля статистики:
      • features.custom_stats
    • Условия обнаружения:
      • features.custom_stats с именем "min_weighted_length_diff" или "max_weight_length_diff" и
      • min_weight_length_diff или max_weight_length_diff пользовательская статистика! = 0
  • VALUE_NESTEDNESS_MISMATCH

    • Поля схемы:
      • feature.value_count
      • feature.value_counts
    • Поля статистики:
      • features.common_stats.presence_and_valency_stats
    • Условия обнаружения:
      • указан feature.value_count , а также присутствует повторяющееся presence_and_valency_stats функции (что указывает на уровень вложенности, превышающий единицу) и
      • Указано feature.value_counts , и количество повторений атрибута presence_and_valency_stats функции не совпадает с количеством повторений value_count в feature.value_counts .
  • DOMAIN_INVALID_FOR_TYPE

    • Поля схемы:
      • feature.type
      • feature.domain_info
    • Поля статистики:
      • features.type
    • Условия обнаружения:
      • Если features.type == BYTES ,
        • feature.domain_info имеет несовместимый тип; или
      • если features.type != BYTES ,
        • feature.domain_info не соответствует feature.type (например, указан int_domain , но type функции — FLOAT )
  • FEATURE_MISSING_NAME

    • Поля схемы:
      • feature.name
    • Условия обнаружения:
      • feature.name не указано
  • FEATURE_MISSING_TYPE

    • Поля схемы:
      • feature.type
    • Условия обнаружения:
      • feature.type не указан
  • INVALID_SCHEMA_SPECIFICATION

    • Поля схемы:
      • feature.domain_info
      • feature.presence.min_fraction
      • feature.value_count.min
      • feature.value_count.max
      • feature.distribution_constraints
    • Условия обнаружения:
      • feature.presence.min_fraction < 0,0 или > 1,0 или
      • feature.value_count.min < 0 или > feature.value_count.max или
      • для функции указывается bool, int, float, struct или семантический домен, а для этой функции также указывается feature.distribution_constraints , или
      • feature.distribution_constraints указан для функции, но для этой функции не указан ни домен уровня схемы, ни feature.string_domain .
  • INVALID_DOMAIN_SPECIFICATION

    • Поля схемы:
      • feature.domain_info
      • feature.bool_domain
      • feature.string_domain
    • Условия обнаружения:
      • Указан неизвестный тип feature.domain_info или
      • указан feature.domain , но на уровне схемы не указан соответствующий домен, или
      • если указаны feature.bool_domain , feature.bool_domain.true_value и feature.bool_domain.false_value ,
        • feature.bool_domain.true_value == feature.bool_domain.false_value или
      • если указан feature.string_domain ,
        • имеет дублированные feature.string_domain.values ​​или
        • feature.string_domain превышает максимальный размер
  • UNEXPECTED_DATA_TYPE

    • Поля схемы:
      • feature.type
    • Поля статистики:
      • features.type
    • Условия обнаружения:
      • features.type не относится к типу, указанному в feature.type
  • SEQUENCE_VALUE_TOO_FEW_OCCURRENCES

    • Поля схемы:
      • feature.natural_language_domain.token_constraints.min_per_sequence
    • Поля статистики:
      • features.custom_stats.nl_statistics.token_statistics.per_sequence_min_frequency
    • Условия обнаружения:
      • min_per_sequence > per_sequence_min_frequency
  • SEQUENCE_VALUE_TOO_MANY_OCCURRENCES

    • Поля схемы:
      • feature.natural_language_domain.token_constraints.max_per_sequence
    • Поля статистики:
      • features.custom_stats.nl_statistics.token_statistics.per_sequence_max_frequency
    • Условия обнаружения:
      • max_per_sequence < per_sequence_max_frequency
  • SEQUENCE_VALUE_TOO_SMALL_FRACTION

    • Поля схемы:
      • feature.natural_language_domain.token_constraints.min_fraction_of_sequences
    • Поля статистики:
      • features.custom_stats.nl_statistics.token_statistics.fraction_of_sequences
    • Условия обнаружения:
      • min_fraction_of_sequences > fraction_of_sequences
  • SEQUENCE_VALUE_TOO_LARGE_FRACTION

    • Поля схемы:
      • feature.natural_language_domain.token_constraints.max_fraction_of_sequences
    • Поля статистики:
      • features.custom_stats.nl_statistics.token_statistics.fraction_of_sequences
    • Условия обнаружения:
      • max_fraction_of_sequences < fraction_of_sequences
  • FEATURE_COVERAGE_TOO_LOW

    • Поля схемы:
      • feature.natural_language_domain.coverage.min_coverage
    • Поля статистики:
      • features.custom_stats.nl_statistics.feature_coverage
    • Условия обнаружения:
      • feature_coverage < coverage.min_coverage
  • FEATURE_COVERAGE_TOO_SHORT_AVG_TOKEN_LENGTH

    • Поля схемы:
      • feature.natural_language_domain.coverage.min_avg_token_length
    • Поля статистики:
      • features.custom_stats.nl_statistics.avg_token_length
    • Условия обнаружения:
      • avg_token_length < min_avg_token_length
  • NLP_WRONG_LOCATION

    • Тип аномалии не обнаружен в TFDV
  • EMBEDDING_SHAPE_INVALID

    • Тип аномалии не обнаружен в TFDV
  • MAX_IMAGE_BYTE_SIZE_EXCEEDED

    • Поля схемы:
      • feature.image_domain.max_image_byte_size
    • Поля статистики:
      • features.bytes_stats.max_num_bytes_int
    • Условия обнаружения:
      • max_num_bytes_int > max_image_byte_size
  • INVALID_FEATURE_SHAPE

    • Поля схемы:
      • feature.shape
    • Поля статистики:
      • features.common_stats.num_missing
      • features.common_stats.min_num_values
      • features.common_stats.max_num_values
      • features.common_stats.presence_and_valency_stats.num_missing
      • features.common_stats.presence_and_valency_stats.min_num_values
      • features.common_stats.presence_and_valency_stats.max_num_values
      • features.common_stats.weighted_presence_and_valency_stats
    • Условия обнаружения:
      • указан feature.shape , и либо
        • функция может отсутствовать ( num_missing != 0) на каком-то уровне гнезда или
        • функция может иметь переменное количество значений ( min_num_values ​​!= max_num_values ​​) на каком-то уровне вложенности или
        • указанная форма несовместима со статистикой подсчета значений объекта. Например, форма [16] совместима с ( min_num_values ​​== max_num_values ​​== [2, 2, 4] (для 3-вложенных функций))
  • STATS_NOT_AVAILBLE

    • Аномалия возникает, когда статистика, необходимая для проверки ограничений, отсутствует.
  • DERIVED_FEATURE_BAD_LIFECYCLE

    • Поля схемы:
      • feature.lifecycle_stage
    • Поля статистики:
      • features.validation_derived_source
    • Условия обнаружения:
      • feature.lifecycle_stage не является ни DERIVED , ни DISABLED , и присутствует features.validation_derived_source , что указывает на то, что это производная функция.
  • DERIVED_FEATURE_INVALID_SOURCE

    • Поля схемы:
      • feature.validation_derived_source
    • Поля статистики:
      • features.validation_derived_source
    • Условия обнаружения:
      • features.validation_derived_source присутствует для функции, но соответствующий feature.validation_derived_source отсутствует.

* Если для этого поля доступна взвешенная статистика, она будет использоваться вместо невзвешенной статистики.