lenskit.metrics.ExposureGini#

class lenskit.metrics.ExposureGini(*, items, k=None, weight=<lenskit.metrics.ranking._weighting.GeometricRankWeight object>)#

Bases: GiniBase

Measure exposure distribution of recommendations with the Gini coefficient.

This uses a weighting model to compute the exposure of each item in each list, and computes the Gini coefficient of the total exposure.

Parameters:
  • k (int | None) – The maximum recommendation list length.

  • items (int | pd.Series | pd.DataFrame | Dataset) – The total number of items, a data frame or series of item data, or a dataset. If a frame or series is provided, its length will be used as the number of items. If a dataset is provided, its item count will be used.

  • weight (RankWeight) – The rank weighting model to use. Defaults to GeometricRankWeight with the specified patience parameter.

Stability:
Caller (see Stability Levels).
__init__(*, items, k=None, weight=<lenskit.metrics.ranking._weighting.GeometricRankWeight object>)#
Parameters:

Methods

__init__(*, items[, k, weight])

compute_list_data(output, test)

Compute measurements for a single list.

extract_list_metric(metric, /)

Extract a single-list metric from the per-list measurement result (if applicable).

global_aggregate(values)

Aggregate list metrics to compute a global value.

truncate(items)

Truncate an item list if it is longer than k.

Attributes

k

The maximum length of rankings to consider.

label

Default name — class name, optionally @K.

weight

item_count

compute_list_data(output, test)#

Compute measurements for a single list.

Parameters:

output (ItemList)

global_aggregate(values)#

Aggregate list metrics to compute a global value.

Parameters:

values (list[tuple[Array, FloatArray]])