@@ -7565,81 +7565,6 @@ class EvalTestSetEntry(google.protobuf.message.Message):
75657565
75667566global___EvalTestSetEntry = EvalTestSetEntry
75677567
7568- @typing_extensions.final
7569- class LOPQEvalResult(google.protobuf.message.Message):
7570- """LOPQEvalResult"""
7571-
7572- DESCRIPTOR: google.protobuf.descriptor.Descriptor
7573-
7574- K_FIELD_NUMBER: builtins.int
7575- RECALL_VS_BRUTE_FORCE_FIELD_NUMBER: builtins.int
7576- KENDALL_TAU_VS_BRUTE_FORCE_FIELD_NUMBER: builtins.int
7577- MOST_FREQUENT_CODE_PERCENT_FIELD_NUMBER: builtins.int
7578- LOPQ_NDCG_FIELD_NUMBER: builtins.int
7579- BRUTE_FORCE_NDCG_FIELD_NUMBER: builtins.int
7580- k: builtins.int
7581- """Rank k for which all metrics are reported."""
7582- recall_vs_brute_force: builtins.float
7583- """Recall @ k assuming the brute force search is the ground truth."""
7584- kendall_tau_vs_brute_force: builtins.float
7585- """Kendall's tau correlation @ k assuming the brute force search is the ground truth."""
7586- most_frequent_code_percent: builtins.float
7587- """The percentage of the most frequent code in the indexed part of evaluation data."""
7588- lopq_ndcg: builtins.float
7589- """Normalized Discounted Cumulative Gain (NDCG) @ k with a ground truth inferred from annotations
7590- and/or prediction for this evaluation LOPQ model.
7591- NDCG uses individual relevance scores of each returned image to evaluate the usefulness, or
7592- gain, of a document based on its position in the result list. The premise of DCG is that
7593- highly relevant documents appearing lower in a search result list should be penalized as the
7594- graded relevance value is reduced logarithmically proportional to the position of the result.
7595- See: https://en.wikipedia.org/wiki/Information_retrieval#Discounted_cumulative_gain
7596-
7597- To compute the relevance score between two images we consider two cases:
7598- 1) Only one label for each image
7599- An image is relevant to an image query iff they are labeled the same (score 1), and
7600- not relevant otherwise (score 0)
7601- 2) Multiple labels for each image
7602- Here an image relevancy with respect to a single image query is measured by f-beta score
7603- assuming the query image list of labels as ground truth and comparing them with that of
7604- the search result. These labels can come from image annotations or if substitute_annotation_misses
7605- is set, predictions of base classifier where any prediction with prob < prob_threshold are
7606- discarded. To quantify the relevancy score of a single search result we opt to compute precision
7607- and recall @ k for simplicity, and combine them with f-beta score to obtain a single number.
7608- """
7609- brute_force_ndcg: builtins.float
7610- """Brute force NDCG which gives a baseline to compare to and is a measure of how good
7611- the embeddings are.
7612- """
7613- def __init__(
7614- self,
7615- *,
7616- k: builtins.int = ...,
7617- recall_vs_brute_force: builtins.float = ...,
7618- kendall_tau_vs_brute_force: builtins.float = ...,
7619- most_frequent_code_percent: builtins.float = ...,
7620- lopq_ndcg: builtins.float = ...,
7621- brute_force_ndcg: builtins.float = ...,
7622- ) -> None: ...
7623- def ClearField(
7624- self,
7625- field_name: typing_extensions.Literal[
7626- "brute_force_ndcg",
7627- b"brute_force_ndcg",
7628- "k",
7629- b"k",
7630- "kendall_tau_vs_brute_force",
7631- b"kendall_tau_vs_brute_force",
7632- "lopq_ndcg",
7633- b"lopq_ndcg",
7634- "most_frequent_code_percent",
7635- b"most_frequent_code_percent",
7636- "recall_vs_brute_force",
7637- b"recall_vs_brute_force",
7638- ],
7639- ) -> None: ...
7640-
7641- global___LOPQEvalResult = LOPQEvalResult
7642-
76437568@typing_extensions.final
76447569class MetricsSummary(google.protobuf.message.Message):
76457570 """MetricsSummary"""
@@ -7656,7 +7581,6 @@ class MetricsSummary(google.protobuf.message.Message):
76567581 MACRO_AVG_RECALL_FIELD_NUMBER: builtins.int
76577582 MEAN_AVG_PRECISION_IOU_50_FIELD_NUMBER: builtins.int
76587583 MEAN_AVG_PRECISION_IOU_RANGE_FIELD_NUMBER: builtins.int
7659- LOPQ_METRICS_FIELD_NUMBER: builtins.int
76607584 top1_accuracy: builtins.float
76617585 top5_accuracy: builtins.float
76627586 macro_avg_roc_auc: builtins.float
@@ -7667,12 +7591,6 @@ class MetricsSummary(google.protobuf.message.Message):
76677591 macro_avg_recall: builtins.float
76687592 mean_avg_precision_iou_50: builtins.float
76697593 mean_avg_precision_iou_range: builtins.float
7670- @property
7671- def lopq_metrics(
7672- self,
7673- ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
7674- global___LOPQEvalResult
7675- ]: ...
76767594 def __init__(
76777595 self,
76787596 *,
@@ -7686,13 +7604,10 @@ class MetricsSummary(google.protobuf.message.Message):
76867604 macro_avg_recall: builtins.float = ...,
76877605 mean_avg_precision_iou_50: builtins.float = ...,
76887606 mean_avg_precision_iou_range: builtins.float = ...,
7689- lopq_metrics: collections.abc.Iterable[global___LOPQEvalResult] | None = ...,
76907607 ) -> None: ...
76917608 def ClearField(
76927609 self,
76937610 field_name: typing_extensions.Literal[
7694- "lopq_metrics",
7695- b"lopq_metrics",
76967611 "macro_avg_f1_score",
76977612 b"macro_avg_f1_score",
76987613 "macro_avg_precision",
@@ -8783,83 +8698,6 @@ class Rank(google.protobuf.message.Message):
87838698
87848699global___Rank = Rank
87858700
8786- @typing_extensions.final
8787- class AnnotationSearchMetrics(google.protobuf.message.Message):
8788- """AnnotationSearchMetrics"""
8789-
8790- DESCRIPTOR: google.protobuf.descriptor.Descriptor
8791-
8792- GROUND_TRUTH_FIELD_NUMBER: builtins.int
8793- SEARCH_TO_EVAL_FIELD_NUMBER: builtins.int
8794- METRICS_FIELD_NUMBER: builtins.int
8795- DATA_FIELD_NUMBER: builtins.int
8796- ACTIVE_CONCEPT_COUNT_FIELD_NUMBER: builtins.int
8797- VISIBILITY_FIELD_NUMBER: builtins.int
8798- @property
8799- def ground_truth(self) -> global___Search:
8800- """The ground truth we are evaluating against"""
8801- @property
8802- def search_to_eval(self) -> global___Search:
8803- """The set we are evaluating"""
8804- @property
8805- def metrics(self) -> global___EvalMetrics:
8806- """The metric result"""
8807- @property
8808- def data(self) -> global___Data:
8809- """data is filled out with the concepts used for this evaluation"""
8810- active_concept_count: builtins.int
8811- """active_concept_count is the number of concepts for this evaluation"""
8812- @property
8813- def visibility(self) -> global___Visibility:
8814- """The visibility field represents whether this message is privately/publicly visible.
8815- To be visible to the public the App that contains it AND the User that contains the App must
8816- also be publicly visible.
8817- """
8818- def __init__(
8819- self,
8820- *,
8821- ground_truth: global___Search | None = ...,
8822- search_to_eval: global___Search | None = ...,
8823- metrics: global___EvalMetrics | None = ...,
8824- data: global___Data | None = ...,
8825- active_concept_count: builtins.int = ...,
8826- visibility: global___Visibility | None = ...,
8827- ) -> None: ...
8828- def HasField(
8829- self,
8830- field_name: typing_extensions.Literal[
8831- "data",
8832- b"data",
8833- "ground_truth",
8834- b"ground_truth",
8835- "metrics",
8836- b"metrics",
8837- "search_to_eval",
8838- b"search_to_eval",
8839- "visibility",
8840- b"visibility",
8841- ],
8842- ) -> builtins.bool: ...
8843- def ClearField(
8844- self,
8845- field_name: typing_extensions.Literal[
8846- "active_concept_count",
8847- b"active_concept_count",
8848- "data",
8849- b"data",
8850- "ground_truth",
8851- b"ground_truth",
8852- "metrics",
8853- b"metrics",
8854- "search_to_eval",
8855- b"search_to_eval",
8856- "visibility",
8857- b"visibility",
8858- ],
8859- ) -> None: ...
8860-
8861- global___AnnotationSearchMetrics = AnnotationSearchMetrics
8862-
88638701@typing_extensions.final
88648702class Text(google.protobuf.message.Message):
88658703 """Text"""
0 commit comments