2016-01-17 4 views
1

мои данные - данные о спаме/ветчине ... и я пытаюсь вычислить среднее значение микро/макроса с помощью встроенных функций, но я точно получаю то же число. они оба дали мне: 0.6666666667 ... это правда? и даже если изменить данные, они дали мне другое число, чем выше, но с Macreo = Micro! мой расчет, как это:вычисление макро/средний средний

cm= metrics.confusion_matrix(y_test,y_pred) 
#calculating the FP,FN 
TP=cm[1,1] 
TN=cm[0,0] 
FP=cm[0,1] 
FN=cm[1,0] 
print cm 

#calculating the false positive rate 
print "calculating the false positive rate" 
print FP,TN,FP 
print FP/float(TN+FP) 
print "calculating the macro-averaged" 
print metrics.average_precision_score(y_test, y_pred, average='macro', sample_weight=None) 
print "calculating the macro-averaged" 
print metrics.average_precision_score(y_test, y_pred, average='micro', sample_weight=None) 

ответ

1

Микро и макро средние определяются для нескольких классов задач (или по крайней мере последовательностей). Если ваши данные просты, двоичная маркированная классификация (и, похоже, так), эти два объекта: идентичны.

+0

Извините .. Я не уверен, должна ли быть действительно бинарная маркированная классификация, или я делаю что-то неправильно! Я классифицирую ветчину/спам, используя собранные тексты как функции! – Ophilia

+0

Это просто простая бинарная классификация, поэтому нет такой вещи, как микро- или макросредние, они оба вырождаются в «просто» регулярную метрику – lejlot

+0

Я вижу .. Большое спасибо за вашу помощь .. Не могу вас поблагодарить достаточно – Ophilia

Смежные вопросы