lOE-Coe-initial-review
Repositories
pipe-breaks
Original repository for training and prediction. It has the working code and can be used for training using different algorithms, testing, and saving the models. Detailed steps can be found in the section following this.
loe-coe-App
A Streamlit app for pipe-breaks, which provides a shell script that is used to train models and predict.
Issue Encountered
I tried running the loe-coe-App Streamlit app. It has a view, but all the buttons didn't work.
Solution
I had to load the deven-loe-coe-fork repository and create a virtual environment with Python 3.8 with help of Jake.
Streamlit App
app.pycalls a script runner.- The script runner calls
processing.py. - The algorithms chosen from the GUI are used by the script runner.
Dependency Issues
scikit-survival == 0.13.0is required for transfer learning but fails to install on any Python version, causing build errors. This version relies onscikit-learn <= 0.24.0.scikit-learn <= 0.24.0requires Python < 3.10, which conflicts with other requirements.- Manual downgrade to
scikit-survival == 0.20.0andscikit-learn <= 0.24.0results in missing methods and API changes, leading to failures. - Using
scikit-learn > 1.0.0allows the Streamlit app to run but disables transfer learning functionality.
Current Situation
- With
scikit-survival == 0.13.0andscikit-learn <= 0.24.0, the Streamlit app crashes on load. - With
scikit-survival == 0.20.0andscikit-learn <= 0.24.0, transfer learning doesn't work due to API changes and missing methods. - With
scikit-learn > 1.0.0, the Streamlit app runs, but transfer learning is not supported.