|
@@ -53,6 +53,7 @@ public class RankStrategyXGBAutoUpdateModel688 extends RankStrategyXGBBasic {
|
|
|
|
|
|
long start = System.currentTimeMillis();
|
|
|
// 特征处理
|
|
|
+ // feature1
|
|
|
Feature feature = this.getFeature(scoreParam, request);
|
|
|
|
|
|
Map<String, Map<String, String>> userFeature = feature.getUserFeature();
|
|
@@ -81,6 +82,7 @@ public class RankStrategyXGBAutoUpdateModel688 extends RankStrategyXGBBasic {
|
|
|
List<AdRankItem> adRankItems = new ArrayList<>();
|
|
|
Random random = new Random();
|
|
|
long time2 = 0;
|
|
|
+ // feature2
|
|
|
if (similarityConcurrent) {
|
|
|
for (AdPlatformCreativeDTO dto : request.getAdIdList()) {
|
|
|
AdRankItem adRankItem = new AdRankItem();
|
|
@@ -236,6 +238,7 @@ public class RankStrategyXGBAutoUpdateModel688 extends RankStrategyXGBBasic {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ // feature3
|
|
|
long time3 = System.currentTimeMillis();
|
|
|
// 分桶
|
|
|
this.readBucketFile();
|
|
@@ -246,8 +249,10 @@ public class RankStrategyXGBAutoUpdateModel688 extends RankStrategyXGBBasic {
|
|
|
}
|
|
|
long time4 = System.currentTimeMillis();
|
|
|
// 打分排序
|
|
|
+ // getScorerPipeline
|
|
|
List<AdRankItem> result = ScorerUtils.getScorerPipeline(ScorerUtils.XGBOOST_SCORE_CONF_20240909).scoring(sceneFeatureMap, userFeatureMap, adRankItems);
|
|
|
long time5 = System.currentTimeMillis();
|
|
|
+ // loop
|
|
|
for (AdRankItem item : result) {
|
|
|
item.setScore(item.getLrScore() * item.getCpa());
|
|
|
item.getScoreMap().put("cpa", item.getCpa());
|