The Altair Community is migrating to a new platform to provide a better experience for you. In preparation for the migration, the Altair Community is on read-only mode from October 28 - November 6, 2024. Technical support via cases will continue to work as is. For any urgent requests from Students/Faculty members, please submit the form linked here
Interpreting Deep Learning Models
AizatAlam_129
Member Posts: 14 Contributor II
in Help
Newbie here, can anyone share with me how to interpret hidden layers for Deep Learning models?
0
Best Answers
-
jacobcybulski Member, University Professor Posts: 391 UnicornBy the way, the following article has examples from Tensorflow and Python (rather than RapidMiner), but it shows how to tell if you have some gradient-related issues in your deep learning: https://medium.com/analytics-vidhya/debugging-dnn-with-help-of-tensorboard-f737b7bc5ed90
-
Telcontar120 RapidMiner Certified Analyst, RapidMiner Certified Expert, Member Posts: 1,635 UnicornIMHO, I think for most people, "understanding" what is going on inside a NN is nearly impossible, especially if you are looking at parsing out differences between specific layers. NN by design are replicating complex variable interactions in high dimensional space. You are better off using some post-modeling tools to understand variable importance and sensitivity in the model as a whole. RapidMiner has several of those operators available for your use, including Explain Predictions and Model Simulator.1
Answers
My advice is: before you dive into analysing hidden layers, first learn how to analyse the model learning over time, both training and validation!
In RapidMiner, if you use the Deep Learning extension, you can have a look at what is going on in the network training, epoch by epoch and layer by layer. Place a break point after the Deep Learning operator and run the process. Make sure to make the log panel visible (View > Panel > Log). You will then see a message of the kind: Training UI available at: http://localhost:39725 (that URL is unique for each run). Open the URL and you'll access the DL4J Training UI window, which is extremely useful when you have a very long deep model training session and you can view the training performance and it is useful to check the model architecture and its evolving parameters. If you do not place that breakpoint and let the process finish, unfortunately at the end the DL4J Training UI "server" process also completes and the info is no longer accessible. Also beware that if you change and play with your model, and never let the process finish, your browser caches the same URL and you will not be able to see the changes, in which case let the process run to the finish at some point.
Enjoy, watching your deep model learn -- Jacob