Расчет кривой Precision-Recall с помощью пакета PRROC в R

Мой вопрос относится к этому вопросу. Я заинтересован в вычислении кривой Precision-Recall Curve (PRC) и области под PRC. Я нашел хороший пакет R PRROC для решения обеих задач. Согласно описанию пакета (стр. 5) для функции pr.curve, вы должны указать 2 параметра. 1) оценки классификации точек данных, принадлежащих только положительному классу 2) оценки классификации точек данных, принадлежащих только отрицательному классу (см. стр. 7 руководства). Пример, который они предоставляют:

# create artificial scores as random numbers
x <- rnorm( 1000 );
y <- rnorm( 1000, -1 );
# compute PR curve
pr <- pr.curve( x, y, curve = TRUE );

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

# create artificial scores as random numbers
x <- rnorm( 14000 );
y <- rnorm( 2560595, -1 );
# compute PR curve
pr <- pr.curve( x, y, curve = TRUE );

person Newbie    schedule 15.09.2016    source источник
comment
Можете ли вы уточнить, в чем заключается ваш вопрос.   -  person Jonno Bourne    schedule 15.09.2016
comment
@jonno-bourne Вопрос: для моего набора данных функция pr.curve пакета PRROC не работает. Даже приведенный ими пример не работает, если вы увеличиваете точки данных.   -  person Newbie    schedule 15.09.2016


Ответы (1)


Вы можете попробовать AUPRC() из пакета PerfMeas

Отредактировано

Этот пакет precrec выглядит лучше. Он совместим с ggplot2 и реализован на C++. Для получения результатов сравнения проверьте эта статья

person NaNxT    schedule 04.09.2017
comment
Хотя теоретически это может ответить на вопрос, было бы предпочтительнее включить сюда основные части ответа и предоставить ссылку для справки . См. здесь инструкции по написанию лучших ответов на основе ссылок. Спасибо! - person GhostCat; 04.09.2017