|
|
@@ -37,7 +37,8 @@ public class RankStrategy4RegionMergeModelV564 extends RankStrategy4RegionMergeM
|
|
|
private FeatureService featureService;
|
|
|
|
|
|
/**
|
|
|
- * V564 个性化召回白名单 (7 路):召回 key 含 mid/uid,依赖该用户行为信号。
|
|
|
+ * V564 个性化召回白名单 (6 路):召回 key 含 mid/uid,依赖该用户行为信号。
|
|
|
+ * 注:YearReturnCate2 因线上效果不佳, 2026-06-04 起移到非个性化白名单。
|
|
|
*/
|
|
|
private static final Set<String> PERSONAL_RECALL_PUSH_FROMS = new HashSet<>(Arrays.asList(
|
|
|
UserCate1RecallStrategy.PUSH_FORM,
|
|
|
@@ -45,13 +46,12 @@ public class RankStrategy4RegionMergeModelV564 extends RankStrategy4RegionMergeM
|
|
|
Return1Cate2RosRecallStrategy.PUSH_FORM,
|
|
|
Return1Cate2StrRecallStrategy.PUSH_FORM,
|
|
|
YearShareCate1RecallStrategy.PUSH_FROM,
|
|
|
- YearShareCate2RecallStrategy.PUSH_FROM,
|
|
|
- YearReturnCate2RecallStrategy.PUSH_FROM
|
|
|
+ YearShareCate2RecallStrategy.PUSH_FROM
|
|
|
));
|
|
|
|
|
|
/**
|
|
|
- * V564 非个性化召回白名单 (16 路):只依赖 headVid + 地域/品类/相似度(vid-vid CF 也归此类)。
|
|
|
- * 含 5 路旧地域、新地域、城市、head province/cate、先验省份、return 相似、scene CF。
|
|
|
+ * V564 非个性化召回白名单 (17 路):只依赖 headVid + 地域/品类/相似度(vid-vid CF 也归此类)。
|
|
|
+ * 含 5 路旧地域、新地域、城市、head province/cate、先验省份、return 相似、scene CF、YearReturnCate2。
|
|
|
*/
|
|
|
private static final Set<String> NON_PERSONAL_RECALL_PUSH_FROMS = new HashSet<>(Arrays.asList(
|
|
|
RegionHRecallStrategy.PUSH_FORM,
|
|
|
@@ -69,7 +69,8 @@ public class RankStrategy4RegionMergeModelV564 extends RankStrategy4RegionMergeM
|
|
|
PrioriProvinceRosRecallStrategy.PUSH_FROM,
|
|
|
ReturnVideoRecallStrategy.PUSH_FORM,
|
|
|
SceneCFRovnRecallStrategy.PUSH_FORM,
|
|
|
- SceneCFRosnRecallStrategy.PUSH_FORM
|
|
|
+ SceneCFRosnRecallStrategy.PUSH_FORM,
|
|
|
+ YearReturnCate2RecallStrategy.PUSH_FROM
|
|
|
));
|
|
|
|
|
|
/** PERSONAL ∪ NON_PERSONAL = 23 路。用于 fetchCoarseRankScores 跳过流量池等不参与截断的 vid。 */
|
|
|
@@ -108,7 +109,7 @@ public class RankStrategy4RegionMergeModelV564 extends RankStrategy4RegionMergeM
|
|
|
//
|
|
|
// 粗排分 = alg_vid_recommend_exp_feature_20250212.rovn_1h / rovn_24h 平均
|
|
|
// ============================================================
|
|
|
- int totalTopN = mergeWeight.getOrDefault("coarseRankTopN", 100.0).intValue();
|
|
|
+ int totalTopN = mergeWeight.getOrDefault("coarseRankTopN", 80.0).intValue();
|
|
|
double personalRatio = mergeWeight.getOrDefault("personalRatio", 0.4);
|
|
|
int personalTopN = (int) Math.round(totalTopN * personalRatio);
|
|
|
Map<Long, Double> coarseRankMap = fetchCoarseRankScores(param);
|