Skip to main content

CMIP - Conditional Mutual Information with the logging Policy

CMIP implementation from the 2023 SIGIR paper: An Offline Metric for the Debiasedness of Click Models.

The metric quantifies the mutual information between a new click model policy and the production system that collected the train dataset (logging policy), conditional on human relevance judgments. CMIP quantifies the degree of debiasedness (see paper for details). A policy is said to be debiased w.r.t. its logging policy with a cmip <= 0.

Example

import numpy as np

n_queries = 1_000
n_results = 25

# Human relevance annotations per query-document pair
y_true = np.random.randint(5, size=(n_queries, n_results))
# Relevance scores of the logging policy
y_logging_policy = y_true + np.random.randn(n_queries, n_results)
# Relevance scores of a new policy (in this case, strongly dependent on logging policy) 
y_predict = y_logging_policy + np.random.randn(n_queries, n_results)
# Number of documents per query, used for masking
n = np.full(n_queries, n_results)
from cmip_metric import CMIP

metric = CMIP()
metric(y_predict, y_logging_policy, y_true, n)
> 0.2687 # The policy predicting y_predict is not debiased w.r.t. the logging policy.

Installation

pip install cmip-metric

Reference

Note: To be published at:

@inproceedings{Deffayet2023Debiasedness,
  author = {Romain Deffayet and Philipp Hager and Jean-Michel Renders and Maarten de Rijke},
  title = {An Offline Metric for the Debiasedness of Click Models},
  booktitle = {Proceedings of the 46th International ACM SIGIR Conference on Research and Development in Information Retrieval (SIGIR`23)},
  organization = {ACM},
  year = {2023},
}

License

This project uses the MIT license.

Metadata

Release files for cmip-metric 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cmip-metric 0.1.2
File Size Uploaded
cmip_metric-0.1.2.tar.gz 5.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cmip-metric 0.1.2
File Interpreter ABI Platform
cmip_metric-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 11.2 kB

Release files / cmip_metric-0.1.2.tar.gz

Download URL cmip_metric-0.1.2.tar.gz
Size 5.0 kB
Tags Source
SHA-256 checksum
How to use checksums
d5577c8d52a4d781542cf9d8e4f0ebca5b0bace030261b4ef548048a2e224d02
BLAKE2b-256 checksum
How to use checksums
754e40ff740aa163f42c325764765df8fd08d9b792f90129d2bc811d03fc18bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.3.2 CPython/3.11.1 Darwin/22.4.0

Release files / cmip_metric-0.1.2-py3-none-any.whl

Download URL cmip_metric-0.1.2-py3-none-any.whl
Size 6.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
081a4a45a230275d7579250292e19ff3ced629a180d2c8fa5f0f1caee7ca1599
BLAKE2b-256 checksum
How to use checksums
61546649787acbbf7186a00422bfdd2b9121806977f7a9829e3ac242739e5996
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.3.2 CPython/3.11.1 Darwin/22.4.0

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page