Как вы генерируете ROC-кривые для перекрестной проверки без участия?


10

При выполнении 5-кратной перекрестной проверки (например) обычно рассчитывают отдельную кривую ROC для каждой из 5-кратных и часто умножают среднюю кривую ROC на стандартное отклонение. девиация показано как толщина кривой.

Тем не менее, для перекрестной проверки LOO, когда в каждом сгибе имеется только один тестовый набор данных, не представляется разумным вычислять ROC-кривую для этого одного набора данных.

Я взял все свои точки тестовых данных (вместе с их отдельно вычисленными p-значениями) и объединил их в один большой набор для вычисления одной кривой ROC, но статистически ли это нужно делать кошернее?

Как правильно применять ROC-анализ, когда число точек данных в каждом сгибе равно единице (как в случае перекрестной проверки LOO)?


Почему? Что вы хотите достичь с таким существом?

Мне нужно проанализировать общую эффективность прогнозирования в диапазоне пороговых значений p, а кривые ROC - это то, что я традиционно использовал для любого другого типа перекрестной проверки. Таким образом, в основном те же причины, что анализ ROC полезен для любой перекрестной проверки в k раз. Если есть другой аналогичный подход для LOO xval, о нем также было бы полезно узнать. Кроме того, я бы вместо этого сделал что-то вроде 10-кратного xval, если бы у меня было достаточно данных, и это не было бы проблемой.
user1121

1
Я бы сказал, что вы делаете это разумно, просто создайте единственную ROC-кривую, используя истинную метку и прогнозируемое значение для каждого случая (где этот случай был
задержкой

Ответы:


15

Если классификатор выводит вероятности, то целесообразно объединить все выходные данные контрольной точки для одной кривой ROC. Если нет, то масштабируйте выходные данные классификатора таким образом, чтобы сделать его напрямую сопоставимым по классификаторам. Например, скажем, вы используете линейный дискриминантный анализ. Обучите классификатор, а затем введите данные обучения через классификатор. Изучите два веса: параметр масштаба (стандартное отклонение выходов классификатора после вычитания среднего значения класса) и параметр сдвига (среднее значение первого класса). Используйте эти параметры, чтобы нормализовать необработанный вывод каждого классификатора LDA черезσμrn=(rμ)/σ, а затем вы можете создать кривую ROC из набора нормализованных выходов. Это предостережение о том, что вы оцениваете больше параметров, и поэтому результаты могут немного отличаться, чем если бы вы построили кривую ROC на основе отдельного набора тестов.

Если невозможно нормализовать выходные данные классификатора или преобразовать их в вероятности, тогда анализ ROC на основе LOO-CV не подходит.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.