Yup, currently PMML export, or Java serialization, are the options
realistically available.

Though PMML may deter some, there are not many viable cross-platform
alternatives (with nearly as much coverage).

On Thu, Nov 12, 2015 at 1:42 PM, Sean Owen <so...@cloudera.com> wrote:

> This is all starting to sound a lot like what's already implemented in
> Java-based PMML parsing/scoring libraries like JPMML and OpenScoring. I'm
> not clear it helps a lot to reimplement this in Spark.
>
> On Thu, Nov 12, 2015 at 8:05 AM, Felix Cheung <felixcheun...@hotmail.com>
> wrote:
>
>> +1 on that. It would be useful to use the model outside of Spark.
>>
>>
>> _____________________________
>> From: DB Tsai <dbt...@dbtsai.com>
>> Sent: Wednesday, November 11, 2015 11:57 PM
>> Subject: Re: thought experiment: use spark ML to real time prediction
>> To: Nirmal Fernando <nir...@wso2.com>
>> Cc: Andy Davidson <a...@santacruzintegration.com>, Adrian Tanase <
>> atan...@adobe.com>, user @spark <user@spark.apache.org>
>>
>>
>>
>> Do you think it will be useful to separate those models and model
>> loader/writer code into another spark-ml-common jar without any spark
>> platform dependencies so users can load the models trained by Spark ML in
>> their application and run the prediction?
>>
>>
>> Sincerely,
>>
>> DB Tsai
>> ----------------------------------------------------------
>> Web: https://www.dbtsai.com
>> PGP Key ID: 0xAF08DF8D
>>
>> On Wed, Nov 11, 2015 at 3:14 AM, Nirmal Fernando <nir...@wso2.com>
>> wrote:
>>
>>> As of now, we are basically serializing the ML model and then
>>> deserialize it for prediction at real time.
>>>
>>> On Wed, Nov 11, 2015 at 4:39 PM, Adrian Tanase <atan...@adobe.com>
>>> wrote:
>>>
>>>> I don’t think this answers your question but here’s how you would
>>>> evaluate the model in realtime in a streaming app
>>>>
>>>> https://databricks.gitbooks.io/databricks-spark-reference-applications/content/twitter_classifier/predict.html
>>>>
>>>> Maybe you can find a way to extract portions of MLLib and run them
>>>> outside of spark – loading the precomputed model and calling .predict on
>>>> it…
>>>>
>>>> -adrian
>>>>
>>>> From: Andy Davidson
>>>> Date: Tuesday, November 10, 2015 at 11:31 PM
>>>> To: "user @spark"
>>>> Subject: thought experiment: use spark ML to real time prediction
>>>>
>>>> Lets say I have use spark ML to train a linear model. I know I can save
>>>> and load the model to disk. I am not sure how I can use the model in a real
>>>> time environment. For example I do not think I can return a “prediction” to
>>>> the client using spark streaming easily. Also for some applications the
>>>> extra latency created by the batch process might not be acceptable.
>>>>
>>>> If I was not using spark I would re-implement the model I trained in my
>>>> batch environment in a lang like Java  and implement a rest service that
>>>> uses the model to create a prediction and return the prediction to the
>>>> client. Many models make predictions using linear algebra. Implementing
>>>> predictions is relatively easy if you have a good vectorized LA package. Is
>>>> there a way to use a model I trained using spark ML outside of spark?
>>>>
>>>> As a motivating example, even if its possible to return data to the
>>>> client using spark streaming. I think the mini batch latency would not be
>>>> acceptable for a high frequency stock trading system.
>>>>
>>>> Kind regards
>>>>
>>>> Andy
>>>>
>>>> P.s. The examples I have seen so far use spark streaming to
>>>> “preprocess” predictions. For example a recommender system might use what
>>>> current users are watching to calculate “trending recommendations”. These
>>>> are stored on disk and served up to users when the use the “movie guide”.
>>>> If a recommendation was a couple of min. old it would not effect the end
>>>> users experience.
>>>>
>>>>
>>>
>>>
>>> --
>>>
>>> Thanks & regards,
>>> Nirmal
>>>
>>> Team Lead - WSO2 Machine Learner
>>> Associate Technical Lead - Data Technologies Team, WSO2 Inc.
>>> Mobile: +94715779733
>>> Blog: http://nirmalfdo.blogspot.com/
>>>
>>>
>>>
>>
>>
>>
>

Reply via email to