我使用 Spark 2.1.0 和 Scala 2.11.8。
我正在尝试在 apache spark 中构建一个 twitter 情绪分析模型并使用MLeap 为其提供服务。
当我在不使用 mleap 的情况下运行模型时,一切都很顺利。仅当我尝试以 mleap 的序列化格式保存模型时才会出现问题,以便稍后使用 mleap 为模型提供服务。
这是引发错误的行 -
val modelSavePath = "/tmp/sampleapp/model-mleap/"
val pipelineConfig = json.get("PipelineConfig").get.asInstanceOf[Map[String, Any]]
val loaderConfig = json.get("LoaderConfig").get.asInstanceOf[Map[String, Any]]
val loaderPath = loaderConfig
.get("DataLocation")
.get
.asInstanceOf[String]
var data = sqlContext.read.format("com.databricks.spark.csv").
option("header", "true").
option("delimiter", "\t").
option("inferSchema", "true").
load(loaderPath)
val pipeline = Pipeline(pipelineConfig)
val model = pipeline.fit(data)
val mleapPipeline: Transformer = model
我在最后一行得到 java.util.NoSuchElementException: key not found: org.apache.spark.ml.feature.Tokenizer。
当我快速搜索时,我发现 mleap 并不支持所有的转换器。但我找不到详尽的清单。
如何确定我正在使用的转换器是否实际上不受支持或是否存在其他错误。