You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@predictionio.apache.org by William Cao <wi...@gmail.com> on 2017/08/05 11:00:04 UTC

Train and deploy on the fly dynamically

Hi, PredictionIO Support:

We are planning to use PredictionIO combine with deeplearning4j. and use
Java client SDK to have rest calls from Spring.

One question I would like to post is we need to pass training data and
deploy in the run time instead of issue "pio train" and "pio deploy"
predictionIO commands. So can we do those things above through Java client
SDK, If yes, Would you please point us to some examples of template?

Thanks in advance.

William Cao

Re: Train and deploy on the fly dynamically

Posted by Pat Ferrel <pa...@occamsmachete.com>.
PredictionIO only supports batch training of models. If you want online training that updates models with every new input be aware that DL4J is not fast enough to guarantee what some call “kappa” style online learning and PIO does not directly support it. 

One hack I have used with another online learning platform with a PIO template is to put the algorithm code in an infinite loop, asking for new input constantly, then training as it comes in.

There are some undocumented ways to hook into new input but they are undocumented for a reason so I personally would not recommend them.

So you have 2 questions:
Do you need online realtime model updates or just train with every input (neural nets are iterative with new input and so the later is my guess)
Are you able to modify the template code, the hack I mention will require a template change, not a PIO change.


On Aug 5, 2017, at 4:00 AM, William Cao <wi...@gmail.com> wrote:

Hi, PredictionIO Support:

We are planning to use PredictionIO combine with deeplearning4j. and use Java client SDK to have rest calls from Spring.

One question I would like to post is we need to pass training data and deploy in the run time instead of issue "pio train" and "pio deploy" predictionIO commands. So can we do those things above through Java client SDK, If yes, Would you please point us to some examples of template?

Thanks in advance.

William Cao