Код: Выделить всё
('recs', 'array'),
('model_pred_score', 'array'),
('ground_truth_score', 'array'),
('model_ranked_items', 'array'),
('actual_ranked_items', 'array')]
Код: Выделить всё
model_pred_scoreТеперь я отсортировал записи, в результате чего мы получили model_ranked_items и fact_ranked_items, которые представляют собой элементы, ранжированные на основе их оценок. Все они будут иметь одинаковый размер столбца массива Recs
Теперь я хочу вычислить NDCG и точность для этих элементов, поэтому я использую библиотеку RankingMetrics в такой питон.
Код: Выделить всё
predictions_and_labels_rdd = df_grp.rdd.map(lambda row: (row["model_ranked_items"], row["actual_ranked_items"]))
ranking_metrics = RankingMetrics(predictions_and_labels_rdd)
ranking_metrics.ndcgAt(10)
ranking_metrics.precisionAt(10)
Не следует ли мне добавлять нерелевантные элементы в ground_truth_set?
Подробнее здесь: https://stackoverflow.com/questions/786 ... s-expected