Precyzja, ROI i AUC
Zwrot z inwestycji (ROI) można rozłożyć na iloczyn precyzji modelu i stosunku zwrotu do kosztu. Jak już wspomniano, precyzja modelu może być niska, nawet gdy AUC krzywej ROC jest wysokie. Niska precyzja oznacza również niski ROI. W tym ćwiczeniu użyjesz sieci MLP, aby obliczyć przykładowy ROI przy założeniu stałego r – zwrotu z kliknięcia na liczbę wyświetleń – oraz cost – kosztu na liczbę wyświetleń. Sprawdzisz też, jak zmieniają się wartości precyzji i AUC krzywej ROC.
W twoim środowisku dostępne są: X_train, y_train, X_test, y_test, a także clf jako klasyfikator MLP, wyniki prawdopodobieństwa zapisane w y_score oraz przewidywane etykiety w y_pred. Dostępne są również biblioteki pandas jako pd oraz sklearn.
To ćwiczenie jest częścią kursu
Przewidywanie CTR z użyciem uczenia maszynowego w Pythonie
Instrukcje do ćwiczenia
- Oblicz precyzję
precklasyfikatora MLP. - Oblicz całkowity ROI na podstawie precyzji
prec.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Get precision and total ROI
prec = ____(y_test, ____, average = 'weighted')
r = 0.2
cost = 0.05
roi = ____ * r / cost
# Get AUC
roc_auc = roc_auc_score(y_test, y_score[:, 1])
print("Total ROI: %s, Precision: %s, AUC of ROC curve: %s" %(
roi, prec, roc_auc))