adjusted_mutual_info_score
- sklearn.metrics.adjusted_mutual_info_score(labels_true, labels_pred, буквально именованные параметры *, average_method='arithmetic')[исходный код]
-
Скорректированная взаимная информация между двумя разбиениями на кластеры.
Скорректированная взаимная информация (AMI) — это скорректированная с учётом случайности оценка взаимной информации (MI). Она учитывает тот факт, что MI обычно выше для двух разбиений на кластеры с большим числом кластеров, независимо от того, действительно ли они содержат больше общей информации. Для двух разбиений на кластеры \(U\) и \(V\) AMI определяется следующим образом:
AMI(U, V) = [MI(U, V) - E(MI(U, V))] / [avg(H(U), H(V)) - E(MI(U, V))]
Эта метрика не зависит от абсолютных значений меток: перестановка значений меток классов или кластеров никак не изменит значение оценки.
Кроме того, эта метрика симметрична: перестановка \(U\) (
label_true) и \(V\) (labels_pred) даст то же значение оценки. Это может быть полезно для измерения согласованности двух независимых стратегий присвоения меток на одном наборе данных, когда истинные метки неизвестны.Учтите, что эта функция на порядок медленнее других метрик, например скорректированного индекса Рэнда.
Подробнее см. в руководстве пользователя.
- Параметры:
-
- labels_trueмассивоподобный объект формы (n_samples,)
-
Разбиение данных на непересекающиеся подмножества, обозначенное выше в формуле как \(U\).
- labels_predмассивоподобный объект формы (n_samples,)
-
Разбиение данных на непересекающиеся подмножества, обозначенное выше в формуле как \(V\).
- average_method{‘min’, ‘geometric’, ‘arithmetic’, ‘max’}, по умолчанию=’arithmetic’
-
Способ вычисления нормирующего множителя в знаменателе.
Добавлено в версии 0.20.
Изменено в версии 0.22: Значение по умолчанию для
average_methodизменено с ‘max’ на ‘arithmetic’.
- Возвращает:
-
- ami: float (ограничено сверху значением 1.0)
-
AMI равна 1, если два разбиения идентичны (то есть полностью совпадают). Для случайных разбиений (независимых присвоений меток) ожидаемое значение AMI в среднем близко к 0, поэтому оно может быть отрицательным. Значение выражено в скорректированных натах (на основе натурального логарифма).
См. также
adjusted_rand_score-
Скорректированный индекс Рэнда.
mutual_info_score-
Взаимная информация (без поправки на случайность).
Список литературы
Примеры
Идеальные разметки являются одновременно однородными и полными, поэтому их оценка равна 1.0:
>>> from sklearn.metrics.cluster import adjusted_mutual_info_score >>> adjusted_mutual_info_score([0, 0, 1, 1], [0, 0, 1, 1]) 1.0 >>> adjusted_mutual_info_score([0, 0, 1, 1], [1, 1, 0, 0]) 1.0
Если объекты классов полностью распределены по разным кластерам, разбиение совершенно неполное, поэтому AMI равна нулю:
>>> adjusted_mutual_info_score([0, 0, 0, 0], [0, 1, 2, 3]) 0.0
Примеры в галерее
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.metrics.adjusted_mutual_info_score.html