|
@@ -30,6 +30,7 @@ object pred_01_xgb_ad_hdfsfile_20240813{
|
|
|
val savePath = param.getOrElse("savePath", "/dw/recommend/model/34_ad_predict_data/")
|
|
|
val featureFilter = param.getOrElse("featureFilter", "XXXXXX").split(",")
|
|
|
val negSampleRate = param.getOrElse("negSampleRate", "1").toDouble
|
|
|
+ val saveFeatureScoresOnly = param.getOrElse("saveFeatureScoresOnly", "false").toBoolean
|
|
|
|
|
|
val repartition = param.getOrElse("repartition", "20").toInt
|
|
|
val modelPath = param.getOrElse("modelPath", "/dw/recommend/model/35_ad_model/model_xgb")
|
|
@@ -63,6 +64,11 @@ object pred_01_xgb_ad_hdfsfile_20240813{
|
|
|
|
|
|
val model = XGBoostClassificationModel.load(modelPath)
|
|
|
model.setMissing(0.0f).setFeaturesCol("features")
|
|
|
+ if (saveFeatureScoresOnly) {
|
|
|
+ val featureScores = model.nativeBooster.getFeatureScore()
|
|
|
+ sc.parallelize(featureScores.toSeq.map(r => r._1 + "\t" + r._2), 1).saveAsTextFile(savePath)
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
val testData = createData4Ad(
|
|
|
sc.textFile(testPath),
|