DL4J Learning UI access and learning statistics

Dear Community, Is there a way to visualize DL4J UI (https://deeplearning4j.org/visualization) while a model is training in KNIME?

Thanks in advance.

P.S.: a possibly related question, while the Learning view gives a nice dashboard of how loss function is changing while training over epochs for the training set, is there any way to get similar visualization for Validation set? This seems to be a pretty common practice in e.g. Keras.

Hi ayakimovich,

currently there is no way to access the DL4J UI from within KNIME. Also, you can't evaluate validation error during training.

Unfortunately, we do not plan to add these features in the near future. However, maybe you could have a look at the new version of the Keras integration in the upcoming KNIME release. There will be a Keras training node which has a similar visualization to the DL4J UI.

Cheers

David

Hi, I am using the DL4J integration and wondering if there are any plan to support the Visualization UI in the near future?

Thanks,

Jeff

Hi @JeffDeLong,

there are no plans to support the DL4J UI in the near future. However, our Keras Integration has a trainings monitoring UI. Maybe you could use the Keras Integration instead of DL4J.

Cheers,
David

Thanks for your response. Yes, I have used the Keras training monitor UI. However the Keras integration does not have the equivalent of the DL4J Feedforward Predictor, which makes prediction harder to model with Keras. It would be nice to have as close to equivalent functionality to compare performance, etc.

While on the topic of Keras, any plans to allow configuration of PlaidML as the backend for Keras? Unlike TensorFlow, PlaidML can use OpenCL and Apple Metal for integration with non-NVIDIA GPUs. (PlaidML is a bit unstable however, but hopefully that will improve over time). I run PlaidML with Keras in a Python environment and it is about 50 times as fast with Metal and Radeon GPU than TensorFlow on my Mac’s CPU.

Thanks,

Jeff

Hi @JeffDeLong,

what functionality are you missing exactly? In general, the Keras Integration should provide all (and more) functionality compared to DL4J.

Regarding PlaidML, I’ll do some research and get back to you shortly.

Edit:
There are currently no plans to support PlaidML. However, I’ll make a feature request.

Cheers,
David

The Keras Integration does not provide a the equivalent of the DL4J Feed Forward Predictor. So while the Keras Network Learner is good with the validation samples, predicting the test classes is not so simple (as far as I can tell). I will add a few screenshots to illustrate.


Thanks for adding a PlaidML feature request.

Jeff

1 Like

Hi @JeffDeLong,

have a look at the Keras Network Excutor. It provides the same functionality as the DL4J Feedforward Predictor.

Cheers,
David

1 Like

Hi Dave,

The Keras Network Executor is similar to the DL4J Feedforward Predictor, however the former provide probabilities not predictions.

Thanks,

Jeff

Hi Jeff,

from the probabilities you would usually just choose the one with the highest value (this is what the the DL4J node does). The corresponding class depends on your class mapping you used for training.

If you get stuck, I can have a look at your WF. Also, here is an example of how it works for simple image classification.

Hope that helps,
David

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.