|
@@ -43,7 +43,7 @@ public class RankStrategy4RegionMergeModelV562 extends RankStrategy4RegionMergeM
|
|
private FeatureService featureService;
|
|
private FeatureService featureService;
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
- private RankStrategy4RegionMergeModelV564 rank564;
|
|
|
|
|
|
+ private RankStrategy4RegionMergeModelV567 modelV567;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public List<Video> mergeAndRankRovRecall(RankParam param) {
|
|
public List<Video> mergeAndRankRovRecall(RankParam param) {
|
|
@@ -51,12 +51,12 @@ public class RankStrategy4RegionMergeModelV562 extends RankStrategy4RegionMergeM
|
|
String rootSessionId = param.getRootSessionId();
|
|
String rootSessionId = param.getRootSessionId();
|
|
|
|
|
|
if (StringUtils.isBlank(rootSessionId) || CollectionUtils.isEmpty(rootSessionIdTails)) {
|
|
if (StringUtils.isBlank(rootSessionId) || CollectionUtils.isEmpty(rootSessionIdTails)) {
|
|
- return rank564.mergeAndRankRovRecall(param);
|
|
|
|
|
|
+ return modelV567.mergeAndRankRovRecall(param);
|
|
}
|
|
}
|
|
|
|
|
|
String tail = rootSessionId.substring(rootSessionId.length() - 1);
|
|
String tail = rootSessionId.substring(rootSessionId.length() - 1);
|
|
if (!rootSessionIdTails.contains(tail)) {
|
|
if (!rootSessionIdTails.contains(tail)) {
|
|
- return rank564.mergeAndRankRovRecall(param);
|
|
|
|
|
|
+ return modelV567.mergeAndRankRovRecall(param);
|
|
}
|
|
}
|
|
Map<String, Double> mergeWeight = this.mergeWeight != null ? this.mergeWeight : new HashMap<>(0);
|
|
Map<String, Double> mergeWeight = this.mergeWeight != null ? this.mergeWeight : new HashMap<>(0);
|
|
|
|
|
|
@@ -117,6 +117,14 @@ public class RankStrategy4RegionMergeModelV562 extends RankStrategy4RegionMergeM
|
|
// -------------------head province cate2------------------
|
|
// -------------------head province cate2------------------
|
|
int headCate2RecallN = mergeWeight.getOrDefault("headCate2RecallN", 3.0).intValue();
|
|
int headCate2RecallN = mergeWeight.getOrDefault("headCate2RecallN", 3.0).intValue();
|
|
addRecall(param, headCate2RecallN, HeadProvinceCate2RecallStrategy.PUSH_FORM, setVideo, rovRecallRank);
|
|
addRecall(param, headCate2RecallN, HeadProvinceCate2RecallStrategy.PUSH_FORM, setVideo, rovRecallRank);
|
|
|
|
+ //-------------------head cate2 of rovn------------------
|
|
|
|
+ List<Video> headCate2Rov = extractAndSort(param, HeadCate2RovRecallStrategy.PUSH_FROM);
|
|
|
|
+ // 视频去重
|
|
|
|
+ removeDuplicate(headCate2Rov);
|
|
|
|
+ headCate2Rov = headCate2Rov.stream().filter(o -> !setVideo.contains(o.getVideoId())).collect(Collectors.toList());
|
|
|
|
+ headCate2Rov = headCate2Rov.subList(0, Math.min(mergeWeight.getOrDefault("headCate2Rov", 5.0).intValue(), headCate2Rov.size()));
|
|
|
|
+ rovRecallRank.addAll(headCate2Rov);
|
|
|
|
+ setVideo.addAll(headCate2Rov.stream().map(Video::getVideoId).collect(Collectors.toSet()));
|
|
|
|
|
|
//-------------------排-------------------
|
|
//-------------------排-------------------
|
|
//-------------------序-------------------
|
|
//-------------------序-------------------
|