fix evaluation serialization exception.
diff --git a/src/main/java/org/template/recommendation/Algorithm.java b/src/main/java/org/template/recommendation/Algorithm.java
index 95f7c23..a9af2af 100644
--- a/src/main/java/org/template/recommendation/Algorithm.java
+++ b/src/main/java/org/template/recommendation/Algorithm.java
@@ -270,7 +270,7 @@
itemScores = validScores(itemScores, query.getWhitelist(), query.getBlacklist(), query.getCategories(), model.getItems(), query.getUserEntityId());
Collections.sort(itemScores, Collections.reverseOrder());
- return itemScores.subList(0, Math.min(query.getNumber(), itemScores.size()));
+ return new ArrayList<>(itemScores.subList(0, Math.min(query.getNumber(), itemScores.size())));
}
private List<ItemScore> similarItems(final List<double[]> recentProductFeatures, Model model, Query query) {
@@ -289,13 +289,13 @@
itemScores = validScores(itemScores, query.getWhitelist(), query.getBlacklist(), query.getCategories(), model.getItems(), query.getUserEntityId());
Collections.sort(itemScores, Collections.reverseOrder());
- return itemScores.subList(0, Math.min(query.getNumber(), itemScores.size()));
+ return new ArrayList<>(itemScores.subList(0, Math.min(query.getNumber(), itemScores.size())));
}
private List<ItemScore> mostPopularItems(Model model, Query query) {
List<ItemScore> itemScores = validScores(model.getItemPopularityScore().collect(), query.getWhitelist(), query.getBlacklist(), query.getCategories(), model.getItems(), query.getUserEntityId());
Collections.sort(itemScores, Collections.reverseOrder());
- return itemScores.subList(0, Math.min(query.getNumber(), itemScores.size()));
+ return new ArrayList<>(itemScores.subList(0, Math.min(query.getNumber(), itemScores.size())));
}
private double cosineSimilarity(double[] a, double[] b) {