Проблема, над которой я работаю, - это результаты поиска набора данных, который мы создали с помощью нейронной сети машиностроения (например, pointcloud). Мне нужно построить кривую точного отзыва из всего файла результатов.
После обработки результаты представляют собой матрицу * m, каждая строка имеет следующий формат:
Class(number of TP): retrieved1, retrieved2, retrieved3, retrieved4, retrieved5, ...
Чтобы облегчить объяснение моего вопроса, вотпример:
A(1): A, B, B, B, C
B(3): B, A, B, B, N
C(2): A, C, C, B, M
D(4): D, D, D, D, B
Когда я начал вычислять точность макросов и вызывать их, я понял, что, поскольку у каждого класса нет одинакового числа TP, было бы сложно создать усредненную точность и список отзыва, который будетиспользуется для построения. Точность и отзыв приведенного примера таковы:
Precision:
A(1): 1/1, null, null, null, null
B(3): 1/1, 1/2, 2/3, null, null
C(2): 0/1, 1/2, null, null, null
D(4): 1/1, 2/2, 3/3, 4/4, null
Recall:
A(1): 1/1, null, null, null, null
B(3): 1/3, 1/3, 2/3, null, null
C(2): 0/2, 1/2, null, null, null
D(4): 1/4, 2/4, 3/4, 4/4, null
Здесь я смог получить список точности и вызвать для каждого класса. Однако каждый класс имеет различную длину элементов.
Как мне создать усредненную кривую точности-отзыва между всеми классами, чтобы отразить эффективность поиска?
Спасибо, вперед!