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.
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.
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.
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.
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.
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.