[tmva][sofie] SOFIE Keras parser doesn't support Keras 3
Keras 3 was released in November 2023, and is until now unsupported by TMVA SOFIE. It would be good to support it, because Keras 3 is also part of TensorFlow since TensorFlow 2.16.1 from March 2024.
In our CI, we don't see any failures because we only activate the SOFIE Keras tests and tutorials when Keras 2 is found. But our users will get segfaults when running the SOFIE Keras tutorials with TensorFlow 2.16.1+. This is shown in PR https://github.com/root-project/root/pull/20471, which removes the Keras version check to disable failing tests and tutorials for a trial CI run. The following failures appear:
TEST FAILURES:
498:gtest-tmva-sofie-TestRModelParserKeras
977:tutorial-machine_learning-TMVA_SOFIE_Keras
1424:tutorial-machine_learning-TMVA_SOFIE_Models-py
All three tests/tutorials fail with a segmentation violation with TMVA::Experimental::SOFIE::PyKeras::INTERNAL::AddKerasLayer() at the end of the stack trace.
This issue can be closed when the tests pass for all Keras versions on our CI, and no tests and tutorials have to be disabled conditionally on the Keras version.
Possibly fixed by:
- https://github.com/root-project/root/pull/19692