Метрики оценки алгоритмов рекомендаций

искусственный интеллект

Открытие фигуры богини

Предисловие: Трудность заключается в AUC

1. Оффлайн-оценка

1) Метрики для предсказания результатов

1.MAE

MAE(Mean absolute error)

MAE = \frac 1 n \sum_{(u,i)}^{}\left| p_{ui}-r_{ui} \right|
  • p_{ui}прогнозируемый балл,r_{ui}это реальный рейтинг

2.MSE

MSE (среднеквадратичная ошибка), среднеквадратическая ошибка

MSE = \frac 1 n \sum_{(u,i)}^{} (p_{ui}-r_{ui})^2

3.RMSE

RMSE (среднеквадратичная ошибка), среднеквадратическая ошибка (также известная как стандартная ошибка)

RMSE = \sqrt {\frac 1 n \sum_{(u,i)}^{} (p_{ui}-r_{ui})^2}

Чем он отличается от МСЭ?

4.NMAE

NMAE (нормализованная средняя абсолютная ошибка), один пользователь uстандартная средняя абсолютная ошибка

NMAE = \frac {MAE} {r_{max}-r_{min}}

2) Метрики на основе классификации

1.Precision & Recall

Для задач бинарной классификации: матрица путаницы (матрица путаницы)

образец положительный класс | положительный образец образец отрицательный класс | отрицательный образец
Модель предсказывает положительный TP (истинно положительный, истинный пример) FP (ложноположительный, ложноположительный)
Модель предсказывает отрицательный FN (ложноотрицательный, ложноотрицательный) TN (истинно отрицательный, истинно отрицательный)
  • Точность: отношение количества образцов, которые действительно являются положительными, среди всех образцов, которые, по прогнозам, будут положительными.

Популярное понимание: меня интересуют только положительные образцы, какая часть предсказанных положительных образцов верна

Precision = \frac {TP} {TP+FP}
  • Отзыв (уровень отзыва): доля числа образцов, которые, по прогнозам, будут положительными среди всех положительных образцов.

Популярное понимание: меня интересуют только положительные образцы, какую долю положительных образцов я предсказываю правильно

Recall = \frac {TP} {TP+FN}
  • ACC (точность): точность (обычно не используется)
ACC = \frac {TP+TN} {TP+FP+FN+FP}
  • F-score

F-оценка используется для синтеза точности и отзыва

F-Score = (1+\beta^2)\cfrac{Precision\cdot Recall}{\beta^2\cdot Precision + Recall}

когда\beta = 1, то этоF_{1}-scoreсреднее геометрическое

F_{1}-score = \frac {2  P  R } {P+ R}

2. ROC AUC

Концепция ОКР

ROC (Receiver Operating Characteristic), кривая рабочих характеристик приемника.вики объяснил

Пространство ROC определяет частоту ложных срабатываний (FPR) какXось, истинная положительная скорость (TPR) определяется какYось.

  • TPR(истинно положительный показатель): Из всех образцов, которые были действительно положительными,ПравильноСтавка признана положительнойTPR = \frac {TP} {TP+FN}

  • TNR (истинно отрицательный показатель): TN / (FP + TN) = 1-FPR.

  • FPR(Коэффициент ложноотрицательных результатов): Среди всех образцов, которые действительно являются отрицательными,ошибочноСтавка признана положительнойTPR = \frac {FP} {FP+TN}

  • Всегда забывайте значение координат кривой ROC, следующий метод запоминания: сначала запомнитеВертикальная ось - это TPR, что напоминает. Важно понимать, что отзыв основан на наблюдении за положительными образцами и о том, сколько положительных образцов вспоминается. Соответственно, он также должен быть сосредоточен на отрицательном образце,Скорость отзыва отрицательных образцов — это абсцисса, а скорость отзыва положительных образцов — это ордината..

  1. данныйбинарная классификацияМодельИ егоПорог**, координатная точка (X=FPR, Y=TPR) может быть рассчитана из (положительных/отрицательных) истинных и прогнозируемых значений всех выборок.

  2. Диагональная линия от (0, 0) до (1, 1) делит пространство ROC на верхнюю левую/нижнюю правую области, точки над этой линией представляют хороший результат классификации (лучше, чем случайная классификация), а точки под этой линией представляют плохие результаты классификации (хуже, чем случайная классификация).

  3. идеальный прогноз- точка в верхнем левом углу, в точке пространственной координаты ROC (0,1), X=0 означает отсутствие ложных срабатываний, Y=1 означает отсутствие ложных срабатываний (все положительные значения являются истинными положительными)

Концепция АУК
  • Единственная точка в приведенном выше пространстве ROC получается после заданной модели классификации и заданного порога. но то же самоемодель бинарной классификацииизпорогМожет быть установлено как высокое, так и низкое значение, каждая настройка порога приведет к разным значениям FPR и TPR.
  • будетодна и та же модель для каждого порогаКоординаты (FPR, TPR) рисуются в пространстве ROC, которое становитсяКривая ROC для конкретной модели.
  • Площадь под кривой ROC (AUC ROC)
  • Мое понимание: TPR — это частота повторения положительных образцов, а FPR — частота ошибок отрицательных образцов. Следовательно, чем больше TPR, тем лучше, а чем меньше FPR, тем лучше.
  • Если случайным образом выбраны один положительный образец и один отрицательный образец, классификаторправильное суждениеПоложительные образцы имеют более высокие значения, чем отрицательные образцывероятность = AUC
Два способа найти AUC
  1. Приблизительная площадь трапеции
  2. Вероятностный метод (Ссылаться на)
  • Для задач бинарной классификации модель предсказания предсказывает оценку s или вероятность p для каждой выборки. Затем пороговое значение t может быть выбрано таким образом, чтобы образцы с оценкой s>t прогнозировались как положительные, а выборки с оценкой s

  • Для TPR истинной скорости числитель — это количество положительных образцов в балле > t, а знаменатель — общее количество положительных образцов. Для частоты ложноположительных результатов FPR числитель — это количество отрицательных образцов в балле > t, а знаменатель — общее количество отрицательных образцов.

  • если определеноN_{+}(t)количество положительных образцов в score>t,N_{-}(t)количество отрицательных выборок в score>t; определениеN_{+}общее количество положительных образцов,N_{-}- общее количество отрицательных образцов, тогда TPR и FPR можно выразить как:

    TPR(t)=\frac {N_{+}(t)} {N_{+}}  \quad \qquad \quad  FPR(t)= \frac {N_{-}(t)} {N_{-}}
  • При изменении порога t TPR и FPR образуют кривую на графике координат, и эта кривая является ROC-кривой.

  • Если модель является случайной и оценка модели не различает положительные и отрицательные выборки, то в выборках с оценками больше t доля положительных и отрицательных выборок и доля положительных и отрицательных выборок в популяции должны быть в основном равными такой же. это

    \frac {N_{+}(t)} {N_{-}(t)} = \frac {N_{+}} {N_{-}}

Комбинируя приведенную выше формулу, мы видим, что TPR и FPR равны, а соответствующая кривая ROC представляет собой прямую линию!

Интерпретация вероятности AUC
  • Для классификатора C для любой выборки существует модель, предсказывающая выходное значение s. Для пары положительных и отрицательных выборок классификатор предсказывает оценку положительной выборки какs_{+}Прогнозируемый отрицательный показатель выборки равенs_{-}.
  • Предполагая, что порог равен t, отрицательный показатель выборки равен[t,t+\Delta t  ]Вероятность между:
\begin{align*}& \quad P(t<s_{-}<t+\Delta t) \\& = P(s_{-}>t)-P(s_{-}>t+\Delta t) \\& = \frac {N_{-}(t)-N_{-}(t+\Delta t)} {N_{-}} \\& = x(t) - x(t+\Delta t) = -\Delta x(t)  \end{align*}
  • Отрицательный показатель выборки равен[t,t+\Delta t  ], а вероятность того, что оценка положительных образцов выше, чем у отрицательных, равна
\begin{align*}& \quad P(s_{+}>s_{-} \ |\ t<s_{-}<t+\Delta t) \\& \approx_{\Delta t \to 0} P(s_{+}>t) = \frac {N_{+}(t)} {N_{+}} \\& = PTR = y(t)\end{align*}

Приведенный выше расчет относится к случаю определенного порога.Для всех случаев удобно получить вероятность того, что оценка положительных образцов выше, чем оценка отрицательных образцов для любого порога.

  • \begin{equation}\begin{aligned}& P(s_{+}>s_{-})  \\& = \sum_{t=-\infty}^{\infty} P(t<s_{-}<t+\Delta t)P(s_{+}>s_{-} \ |\ t<s_{-}<t+\Delta t)   \\& = \sum - \Delta x(t)\cdot y(t) = -\int_{t=-\infty}^{t=\infty} y(t)\,dx(t ) \\& = \int_{x=0}^{x=1}y(x)\,d(x) \qquad \qquad note:{x=x(t)} \in(0,1) \\& = Area_{\,under \,ROC}\end{aligned}\end{equation}

Интегральный член на самом деле представляет собой вероятность такого события:Случайным образом возьмите пару положительных и отрицательных образцов, оценка отрицательного образца равна t, а положительного образца больше t.. Следовательно, интегрирование этого исчисления вероятности дает вероятность того, что положительная выборка наберет больше баллов, чем отрицательная. Следовательно, площадь под ROC-кривой равна: случайным образом выбирают пару положительных и отрицательных образцов, и вероятность того, что оценка положительного образца выше, чем у отрицательного образца

Сортировка свойств AUC

Ссылаться на

  • AUC относится к вероятности того, что модель ранжирует положительные образцы перед отрицательными, поэтому AUC часто используется для оценки модели в сценариях сортировки, таких как сценарии поиска и рекомендаций.
  • В соответствии с вероятностной интерпретацией добавление дополнительной константы к оценкам всех образцов не меняет вероятность, поэтому AUC не изменяется. Поэтому в рекламе и других сценариях, требующих абсолютной кликабельности, AUC не подходит в качестве оценочного показателя, а используются такие показатели, как logloss.
  • Используя вероятностную интерпретацию, можно получить еще одно свойство AUC, нечувствительное к соотношению положительных и отрицательных образцов. Если выполняется случайная отрицательная выборка, в новой выборке отрицательной выборкиs_{-}>(t)иs_{-}<(t)Доля α остается неизменной (поскольку это случайная выборка), не влияет на PFR и влияет на AUC, AUC не изменяется.

Рассчитать AUC методом сортировки

  1. Предположим, что тестовый набор имеетN_{+}положительные образцы,N_{-}Есть отрицательные выборки, а сами положительные выборки изначально отсортированы (например, в результатах поиска есть лучшие и вторые лучшие). Положительные образцы сами сортируются как 1, 2, 3...j...N_{+}. Для всех положительных и отрицательных образцов модель имеет оценку прогноза, ранжированную как 1, 2, 3...r_{j}...(N_{+}+N_{-}).
  2. Для j-го положительного образца модель предсказывает оценку, а ее ранг оценки равенr_{j}(От малого к большому, наименьший балл — первый. Высшему баллу также можно присвоить 1, и идея остается неизменной), а значит, естьr_{j}-jотрицательные образцы (с меньшим баллом, чем он) ранжируются перед этим положительным образцом. Затем случайным образом возьмите отрицательную выборку, вероятность того, что ее оценка ниже, чем оценка положительной выборки (случайное распределение вероятностей):(r_{j}-j)/N_{-}
  3. Таким образом, в среднем вероятность случайного выбора положительных образцов выше, чем вероятность случайного выбора отрицательных образцов.
P(s_{+}>s_{-}) = \frac {1}{N_{+}}\sum_{j=1}^{N_{+}} \frac {r_{j}-j} {N_{-}} = \cfrac {\sum_{j=1}^{N_{+}}r_{j} \quad - N_{+}\cdot (N_{+}+1)/2 } {N_{+}\cdot N_{-}} = AUC

Конкретно:

  1. Во-первых, все выборки сортируются в соответствии с оценкой предсказания модели, и они, в свою очередь, представлены по рангу.
  2. Например, выборка с наибольшим количеством баллов, rank=n (гдеn=N+M, N — количество отрицательных образцов, M — количество положительных образцов), за которыми следует n-1
  3. Затем добавьте ранг всех положительных образцов и вычтите комбинацию двух положительных образцов.
  4. Получите, сколько из всех образцов имеют более высокий балл для положительных образцов, чем для отрицательных, а затем разделите наM\times N
AUC = \frac {\sum_{i\in (positive \ class)}rank_i - \frac {M(M+1)}{2}} {M\times N}

ссылка на код аукциона

3) Метрики на основе сортировки

1.MAP

  • AP (средняя точность): среднее значение различных точек отзыва является «отзывом с учетом порядка». В результате поиска и сортировки имеется r положительных образцов, сортировка очень важна, и каждая позиция имеет различный вес.r_{j}- отсортированная позиция j-го положительного образца
AP = \frac {1} {r} \sum_{i=1}^{r}\frac {i} {r_{j}}   \qquad \qquad 与下图公式等效
AP表示
  • MAP (средняя средняя точность) — это среднее значение всех пользовательских точек доступа.Ссылаться на

2.NDCG

  • G (выигрыш): оценка релевантности элементов в списке (определяется сценарием).Gain=r(i)

  • CG (кумулятивный прирост): совокупный прирост, совокупный прирост для K элементовCG@K=\sum_{i=1}^{K}r(i)

  • DCG (дисконтированная совокупная прибыль): дисконтированная совокупная прибыль. С учетом фактора местоположения логарифмические скидки для разных местоположений

DCG@K = \sum_{i=1}^{K}\frac {r(i)} {\log_2 {(i+1)}}
  • NDCG(Normalized Discounted Cumulative Gain)

DCG можно рассчитать для списка рекомендаций пользователя, но разные пользователи имеют разные суждения и должны быть нормализованы, прежде чем их можно будет сравнивать. IDCG (оптимально отсортированные DCG, например, положительные образцы ранжируются первыми).NDCG@K = \frac {DCG@K} {IDCG}

3.MRR

  • MRR(Mean Reciprocal Rank): MRR = \frac {1}{Q} \sum_{i=1}^{Q}\frac{1}{rank_i}
  • Q - количество пользователей,rank_i— ранжирование первого элемента в достоверном результате в списке рекомендаций для i-го пользователя.
  • Пример: Есть три пользователя, и минимальные ранговые значения положительных примеров в списке рекомендаций равны 3, 2 и 1 соответственно, тогда MRR=(1 + 0,5 + 0,33) / 3 = 0,61

4) Другие показатели

1.Coverage

Простейшее определение охвата — это доля элементов, рекомендованных рекомендательной системой, к общему количеству элементов. Более высокий коэффициент охвата указывает на то, что модель может генерировать рекомендации для большего количества элементов, тем самым способствуя анализу длинных хвостов.

2.HR

  • Частота попаданий в рекомендации Top-K – это часто используемый индикатор для измерения скорости отзыва. В знаменателе представлены все наборы тестов, а в числителе – сумма количества наборов тестов в списке рекомендаций Top-K каждого пользователя.
  • Знаменатель — это все наборы тестов, а числитель — сумма количества наборов тестов в списке лучших K рекомендаций каждого пользователя.
  • Например: количество продуктов в тестовом наборе для трех пользователей равно 10, 12 и 8 соответственно.В топ-10 рекомендаций, полученных моделью, в тестовом наборе 6, 5 и 4 соответственно. Тогда значение ЧСС в это время равно (6+5+4)/(10+12+8) = 0,5.Ссылаться на
HR@K = \frac {Number\ of \ hits} {Number\ of\ tests }

3. ARHR

ARHR (Average Reciprocal Hit Rank) также является очень популярным показателем в текущих рекомендациях Top-N. Это взвешенная версия HR, которая измеряет силу рекомендуемого элемента.

2. Онлайн-оценка

1.A/B Test