Я тренирую простой инструмент CrossValidatorModel с использованием логистической регрессии и искробельных трубопроводов. Я могу предсказать новые данные, но я хотел бы, чтобы выйти за пределы черного ящика и сделать некоторый анализ коэффициентовКак получить коэффициенты лучшей логистической регрессии в spark-ml CrossValidatorModel?
val lr = new LogisticRegression().
setFitIntercept(true).
setMaxIter(maxIter).
setElasticNetParam(alpha).
setStandardization(true).
setFamily("binomial").
setWeightCol("weight").
setFeaturesCol("features").
setLabelCol("response")
val assembler = new VectorAssembler().
setInputCols(Array("feat1", "feat2")).
setOutputCol("features")
val modelPipeline = new Pipeline().
setStages(Array(assembler,lr))
val evaluator = new BinaryClassificationEvaluator()
.setLabelCol("response")
Затем я определяю сетку параметров и я тренируюсь по сетке, чтобы получить лучшую модель WRT AUC
val paramGrid = new ParamGridBuilder().
addGrid(lr.regParam, lambdas).
build()
val pipeline = new CrossValidator().
setEstimator(modelPipeline).
setEvaluator(evaluator).
setEstimatorParamMaps(paramGrid).
setNumFolds(nfolds)
val cvModel = pipeline.fit(train)
Как получить коэффициенты (бета) лучшей модели логистической регрессии?