Num_pairsample is not supported within xgboost4j

Sorry to bother you.
I notice that we could use num_pairsample in the python version of xgboost for rank: pairwise task.
But for my version of xgboost, which is xgboost-spark 0.9.0, I could not make it in use.
Does it mean that xgboost4j doesn’t support to finetune the sample size for rank: pairwise task?

val paramMap = Map("eta" -> eta, "max_depth" -> max_depth, 
      "objective" -> "rank:pairwise", "num_round" -> num_round,
      "group_col" -> "group", "tracker_conf" -> TrackerConf(0L, "scala"),
      "eval_metric" -> "ndcg", "min_child_weight" -> min_child_weight, 
      "eval_sets" -> Map("eval1" -> df_eval), "num_pairsample" -> 2)
XGBoostRegressor(paramMap).fit(df_train)

Please consider upgrading to latest XGBoost4J.

Thanks for reply.
I have updated xgboost4j to 1.1.2 which support my scala 2.11.
But the model parameter still doesn’t contain num_pairsample as followed.

The params of best XGBoostClassification model : {
        xgbr_ee7ddf2a59a6-allowNonZeroForMissing: false,
        xgbr_ee7ddf2a59a6-alpha: 0.0,
        xgbr_ee7ddf2a59a6-baseScore: 0.5,
        xgbr_ee7ddf2a59a6-batchSize: 32768,
        xgbr_ee7ddf2a59a6-cacheTrainingSet: false,
        xgbr_ee7ddf2a59a6-checkpointInterval: -1,
        xgbr_ee7ddf2a59a6-checkpointPath: ,
        xgbr_ee7ddf2a59a6-colsampleBylevel: 1.0,
        xgbr_ee7ddf2a59a6-colsampleBytree: 1.0,
        xgbr_ee7ddf2a59a6-customEval: null,
        xgbr_ee7ddf2a59a6-customObj: null,
        xgbr_ee7ddf2a59a6-dmlcWorkerConnectRetry: 5,
        xgbr_ee7ddf2a59a6-eta: 0.1,
        xgbr_ee7ddf2a59a6-evalMetric: ndcg,
        xgbr_ee7ddf2a59a6-featuresCol: features,
        xgbr_ee7ddf2a59a6-gamma: 0.0,
        xgbr_ee7ddf2a59a6-groupCol: group,
        xgbr_ee7ddf2a59a6-growPolicy: depthwise,
        xgbr_ee7ddf2a59a6-labelCol: label,
        xgbr_ee7ddf2a59a6-lambda: 1.0,
        xgbr_ee7ddf2a59a6-lambdaBias: 0.0,
        xgbr_ee7ddf2a59a6-maxBin: 16,
        xgbr_ee7ddf2a59a6-maxDeltaStep: 0.0,
        xgbr_ee7ddf2a59a6-maxDepth: 6,
        xgbr_ee7ddf2a59a6-minChildWeight: 6.0,
        xgbr_ee7ddf2a59a6-missing: 0.0,
        xgbr_ee7ddf2a59a6-normalizeType: tree,
        xgbr_ee7ddf2a59a6-nthread: 1,
        xgbr_ee7ddf2a59a6-numEarlyStoppingRounds: 0,
        xgbr_ee7ddf2a59a6-numRound: 200,
        xgbr_ee7ddf2a59a6-numWorkers: 1,
        xgbr_ee7ddf2a59a6-objective: rank:pairwise,
        xgbr_ee7ddf2a59a6-predictionCol: prediction,
        xgbr_ee7ddf2a59a6-rabitRingReduceThreshold: 32768,
        xgbr_ee7ddf2a59a6-rabitTimeout: -1,
        xgbr_ee7ddf2a59a6-rateDrop: 0.0,
        xgbr_ee7ddf2a59a6-sampleType: uniform,
        xgbr_ee7ddf2a59a6-scalePosWeight: 1.0,
        xgbr_ee7ddf2a59a6-seed: 0,
        xgbr_ee7ddf2a59a6-silent: 0,
        xgbr_ee7ddf2a59a6-sketchEps: 0.03,
        xgbr_ee7ddf2a59a6-skipDrop: 0.0,
        xgbr_ee7ddf2a59a6-subsample: 1.0,
        xgbr_ee7ddf2a59a6-timeoutRequestWorkers: 1800000,
        xgbr_ee7ddf2a59a6-trackerConf: TrackerConf(0,scala),
        xgbr_ee7ddf2a59a6-trainTestRatio: 1.0,
        xgbr_ee7ddf2a59a6-treeLimit: 0,
        xgbr_ee7ddf2a59a6-treeMethod: auto,
        xgbr_ee7ddf2a59a6-useExternalMemory: false,
        xgbr_ee7ddf2a59a6-verbosity: 2,
        xgbr_ee7ddf2a59a6-weightCol: weight
}

Does it mean that only xgboost4j 1.3.x support such parameter num_pairsample ?

You should be able to set num_pairsample in the parameter pack.

Do you mean set the num_pairsample as followed?
I have tried it, but the model parameter remain same.

    val paramMap = Map("eta" -> eta, "max_depth" -> max_depth, "verbosity" -> "2",
      "objective" -> "rank:pairwise", "num_workers" -> 1, "num_round" -> num_round,
      "group_col" -> "group", "tracker_conf" -> TrackerConf(0L, "scala"),
      "eval_metric" -> "ndcg", "min_child_weight" -> min_child_weight, 
      "eval_sets" -> Map("eval1" -> df_eval), "missing" -> 0.0, "num_pairsample" -> 2)
    val model = new XGBoostRegressor(paramMap).setWeightCol("weight").fit(df_train)