Required prerequisites
Question
[Question] What is the recommended way to understand and debug the BOAT data_hyper_cleaning example?
Environment
OS: Windows
Python: 3.11
torch: 2.1.2
boat-torch: local course material version
What I'm trying to do
I am reading and running the examples/data_hyper_cleaning/test_data_hyper_cleaning.py example to understand the BOAT workflow for bilevel optimization. As a beginner, I can follow the high-level pipeline, but I still find it difficult to connect the configuration items and the actual optimization behavior during execution.
Questions
- What is the best order for beginners to understand this example: config first, optimization operators first, or the data flow in run_iter first?
- Is there a recommended way to inspect the effect of each BOAT operator on the upper-level and lower-level updates?
- Are there any lightweight debugging tips for checking whether the current configuration is valid before running the full optimization process?
What I observed
The example is useful, but the amount of configuration and operator-related logic is still a bit hard to map to the actual execution path.
For new users, a short debugging guide or execution walkthrough would make the example easier to learn from.
Suggestion
It would be very helpful to add a beginner-oriented note for this example, such as:
the recommended reading order,
the meaning of each important config field,
and a minimal checklist for debugging the optimization flow.
Required prerequisites
Question
[Question] What is the recommended way to understand and debug the BOAT data_hyper_cleaning example?
Environment
OS: Windows
Python: 3.11
torch: 2.1.2
boat-torch: local course material version
What I'm trying to do
I am reading and running the
examples/data_hyper_cleaning/test_data_hyper_cleaning.pyexample to understand the BOAT workflow for bilevel optimization. As a beginner, I can follow the high-level pipeline, but I still find it difficult to connect the configuration items and the actual optimization behavior during execution.Questions
What I observed
The example is useful, but the amount of configuration and operator-related logic is still a bit hard to map to the actual execution path.
For new users, a short debugging guide or execution walkthrough would make the example easier to learn from.
Suggestion
It would be very helpful to add a beginner-oriented note for this example, such as:
the recommended reading order,
the meaning of each important config field,
and a minimal checklist for debugging the optimization flow.