1

SparkDataFrames API를 scala으로 사용하여 기계 학습 모델을 작성하고 모델 튜닝에 사용할 수있는 모든 하이퍼 매개 변수 목록을 알고 싶습니다. 지금까지 검색하여 내가 좋아하는 LinearRegression 몇 하이퍼 매개 변수를 발견Spark에서 선형 회귀와 같은 ML 알고리즘의 모든 하이퍼 매개 변수 목록을 가져 오는 방법은 무엇입니까?

  • setMaxIter
  • setRegParam
  • setElasticNetParam 다음과 같은 방법으로 사용할 수 있습니다

:

import org.apache.spark.ml.regression.LinearRegression 

val lr = new LinearRegression().setMaxIter(100).setRegParam(0.3).setElasticNetParam(0.8) 
val lrModel = lr.fit(training) 

모든 tunabl을 나열 할 수있는 문서 페이지 나 방법이 있습니까? 하이퍼 매개 변수? 뭔가 같이 :

LinearRegression.getParamList() 
RandomForest.getParamList() 

답변

0

체크 ml-tuning, 예를 아래에, 당신은 CrossValidatorParamGridBuilder을 통해 당신에게 기능의 선택을 전달합니다 ML-Pipelines을 활용, 최상의 수행을 설정하는 추정 파이프 라인을 실행

val lr = new LinearRegression() 
.setMaxIter(10) 

val paramGrid = new ParamGridBuilder() 
.addGrid(lr.regParam, Array(0.1, 0.01)) 
.addGrid(lr.fitIntercept) 
.addGrid(lr.elasticNetParam, Array(0.0, 0.5, 1.0)) 
.build() 

val trainValidationSplit = new TrainValidationSplit() 
.setEstimator(lr) 
.setEvaluator(new RegressionEvaluator) 
.setEstimatorParamMaps(paramGrid) 
.setTrainRatio(0.8) 

val model = trainValidationSplit.fit(training) 

추가로 scala 문서를 검색 할 수 있습니다 ml.param, 방법이 있습니다 하지만 사용하지 않았습니다 api/scala/pipeline

+0

'val lr = new LinearRegression() ; lr.explainParams'는 저에게 해주었습니다. 또한'lr.extractParamMap'은 모든 하이퍼 - 매개 변수의 현재 값 목록을 제공합니다. 도움을 주셔서 감사합니다 @KarolSudol – StrikeR

관련 문제