스파크 파이프 라인에서 평가자의 결과를 얻으려면 어떻게해야합니까?스파크 파이프 라인 평가
val evaluator = new BinaryClassificationEvaluator()
val cv = new CrossValidator()
.setEstimator(pipeline)
.setEvaluator(evaluator)
.setEstimatorParamMaps(paramGrid)
.setNumFolds(10)
변환 연산의 결과는 단지 라벨 확률 및 예측을 포함한다.
"최상의 모델"을 얻을 수도 있지만 평가 척도를 얻는 데 관심이 있습니다.
여기서 https://jaceklaskowski.gitbooks.io/mastering-apache-spark/content/spark-mllib/spark-mllib-evaluators.html은 파이프 라인없이 평가자를 사용하는 방법을 보여줍니다.
매우 흥미로운 링크 중 어느 것도 evaluator
을 사용하지 않는 것 같습니다. https://benfradet.github.io/blog/2015/12/16/Exploring-spark.ml-with-the-Titanic-Kaggle-competition, 여기 https://developer.ibm.com/spark/blog/2016/02/22/predictive-model-for-online-advertising-using-spark-machine-learning-pipelines/ 또는 공식 사례 https://github.com/apache/spark/blob/39e2bad6a866d27c3ca594d15e574a1da3ee84cc/examples/src/main/scala/org/apache/spark/examples/ml/ModelSelectionViaCrossValidationExample.scala은 마침내 표시된 평가자의 결과입니다.
는 실제로 링크 중 하나는 손으로 메트릭을 계산합니다
cvAccuracy = cvPrediction.filter(cvPrediction['label'] == cvPrediction['prediction']).count()/float(cvPrediction.count
I가 반환 한 배 수준 또는 가능 평균/분산에 대한 통계를 얻을 것으로 예상했을 것이다
.
입니까? – mtoto
정렬 방법. 매개 변수 설정 A 또는 알고리즘 B가 다른 설정/알고리즘보다 나은지 확인하고 싶습니다. –