|
@@ -336,19 +336,23 @@ public class RankStrategy4RegionMergeModelV562 extends RankStrategy4RegionMergeM
|
|
|
// 5 排序公式特征
|
|
|
Map<String, Map<String, String>> vid2MapFeature = this.getVideoRedisFeature(vids, "redis:fea_hasreturn_vor:");
|
|
|
List<Video> result = new ArrayList<>();
|
|
|
+ double strPlusPow = mergeWeight.getOrDefault("strPlusPow", 1.05);
|
|
|
for (RankItem item : items) {
|
|
|
- double score;
|
|
|
+
|
|
|
double fmRovOrigin = item.getScoreRov();
|
|
|
item.getScoresMap().put("fmRovOrigin", fmRovOrigin);
|
|
|
- // double fmRov = restoreScore(fmRovOrigin);
|
|
|
- double fmRov = this.fmRovRestoreAndCalibration(item);
|
|
|
+ double fmRov = restoreScore(fmRovOrigin);
|
|
|
+ item.getScoresMap().put("fmRovRestore", fmRov);
|
|
|
+ fmRov = Math.pow(fmRov, strPlusPow);
|
|
|
item.getScoresMap().put("fmRov", fmRov);
|
|
|
+ item.getScoresMap().put("strPlusPow", strPlusPow);
|
|
|
+
|
|
|
double hasReturnRovScore = this.calcHasReturnRovScore(vid2MapFeature.getOrDefault(item.getVideoId() + "", new HashMap<>()), param.getHotSceneType().toString(), item);
|
|
|
hasReturnRovScore = Math.pow(hasReturnRovScore, 1.1);
|
|
|
item.getScoresMap().put("hasReturnRovScore", hasReturnRovScore);
|
|
|
double vor = this.calcVorScore(vid2MapFeature.getOrDefault(item.getVideoId() + "", new HashMap<>()));
|
|
|
item.getScoresMap().put("vor", vor);
|
|
|
- score = fmRov * (0.1 + hasReturnRovScore) * (0.1 + vor);
|
|
|
+ double score = fmRov * (0.1 + hasReturnRovScore) * (0.1 + vor);
|
|
|
Video video = item.getVideo();
|
|
|
video.setScore(score);
|
|
|
video.setSortScore(score);
|