|
@@ -1,6 +1,7 @@
|
|
|
package com.tzld.piaoquan.recommend.server.service.rank.strategy;
|
|
|
|
|
|
import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue;
|
|
|
+import com.google.common.base.Stopwatch;
|
|
|
import com.tzld.piaoquan.recommend.server.common.base.RankItem;
|
|
|
import com.tzld.piaoquan.recommend.server.model.Video;
|
|
|
import com.tzld.piaoquan.recommend.server.service.FeatureService;
|
|
@@ -19,6 +20,7 @@ import java.io.IOException;
|
|
|
import java.io.InputStream;
|
|
|
import java.io.InputStreamReader;
|
|
|
import java.util.*;
|
|
|
+import java.util.concurrent.TimeUnit;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@Service
|
|
@@ -35,6 +37,7 @@ public class RankStrategy4RegionMergeModelV552 extends RankStrategy4RegionMergeM
|
|
|
|
|
|
@Override
|
|
|
public List<Video> mergeAndRankRovRecall(RankParam param) {
|
|
|
+ Stopwatch stopwatch = Stopwatch.createStarted();
|
|
|
Map<String, Double> mergeWeight = this.mergeWeight != null ? this.mergeWeight : new HashMap<>(0);
|
|
|
//-------------------融-------------------
|
|
|
//-------------------合-------------------
|
|
@@ -85,6 +88,8 @@ public class RankStrategy4RegionMergeModelV552 extends RankStrategy4RegionMergeM
|
|
|
Map<String, Map<String, String>> featureOriginUser = feature.getUserFeature();
|
|
|
Map<String, Map<String, Map<String, String>>> featureOriginVideo = feature.getVideoFeature();
|
|
|
|
|
|
+ log.info("batch get feature cost={}", stopwatch.elapsed(TimeUnit.MILLISECONDS));
|
|
|
+ stopwatch.reset().start();
|
|
|
|
|
|
// 2 特征处理
|
|
|
Map<String, Double> userFeatureMapDouble = new HashMap<>();
|
|
@@ -292,6 +297,9 @@ public class RankStrategy4RegionMergeModelV552 extends RankStrategy4RegionMergeM
|
|
|
item.featureMap = featureMap;
|
|
|
}
|
|
|
|
|
|
+ log.info("handle feature cost={}", stopwatch.elapsed(TimeUnit.MILLISECONDS));
|
|
|
+ stopwatch.reset().start();
|
|
|
+
|
|
|
// 3 排序
|
|
|
Map<String, String> sceneFeatureMap = new HashMap<>(0);
|
|
|
|
|
@@ -337,6 +345,8 @@ public class RankStrategy4RegionMergeModelV552 extends RankStrategy4RegionMergeM
|
|
|
result.add(video);
|
|
|
}
|
|
|
result.sort(Comparator.comparingDouble(o -> -o.getSortScore()));
|
|
|
+ log.info("sort cost={}", stopwatch.elapsed(TimeUnit.MILLISECONDS));
|
|
|
+ stopwatch.reset().start();
|
|
|
|
|
|
return result;
|
|
|
}
|