You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have developed a custom event handler that would make ignite code (more specifically: MONAI code) accessible to hyperparamer tuning jobs in GCP Vertex AI. It is an Ignite-tified version of this Link. As you can see from the code in the link, the metrics are simply saved at a certain time, in a certain place with a certain syntax. Once this is possible the Vertex HPO orchestration kicks in. Input arguments are controlled via Vertex.AI custom training jobs and output model performance can be extracted from that output file written at the end of the training.
Why is this useful? With this handler Ignite code can be subject to "outsourced" hyperparameter screening with just adding this handler and a few lines of Vertex config files. I found the outsourcing of HPO to the cloud platform way easier than coding it myself.
If you want I can contribute my solution to the codebase via a PR. Just let me know.
The text was updated successfully, but these errors were encountered:
If you want I can contribute my solution to the codebase via a PR. Just let me know.
Yes, this contribution is very welcome! Technically, we split the code as following:
handlers that require external packages to work: e.g. TensorboardLogger, ClearMLLogger etc, their code goes to ignite.contrib.handlers
other handlers go to ignite.handlers.
I expect that we would need to install and use a python client for vertex ai, so most probably we can put the code into contrib module. Let me know if you need any guidance.
Dear PyTorch team,
I have developed a custom event handler that would make ignite code (more specifically: MONAI code) accessible to hyperparamer tuning jobs in GCP Vertex AI. It is an Ignite-tified version of this Link. As you can see from the code in the link, the metrics are simply saved at a certain time, in a certain place with a certain syntax. Once this is possible the Vertex HPO orchestration kicks in. Input arguments are controlled via Vertex.AI custom training jobs and output model performance can be extracted from that output file written at the end of the training.
Why is this useful? With this handler Ignite code can be subject to "outsourced" hyperparameter screening with just adding this handler and a few lines of Vertex config files. I found the outsourcing of HPO to the cloud platform way easier than coding it myself.
If you want I can contribute my solution to the codebase via a PR. Just let me know.
![image003_obf](https://private-user-images.githubusercontent.com/87860698/260458496-cddb0d13-d33b-4418-bc13-c57d3bfac3b0.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ4NzQ3ODQsIm5iZiI6MTcyNDg3NDQ4NCwicGF0aCI6Ii84Nzg2MDY5OC8yNjA0NTg0OTYtY2RkYjBkMTMtZDMzYi00NDE4LWJjMTMtYzU3ZDNiZmFjM2IwLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjglMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI4VDE5NDgwNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJkMjRiNjA4YjU4YTU2Y2Q0NzBiNWQxNzhmYjI5YmQ3MWRhOGFlNjZhZjVmZTViYTFiYWJjNDZjNjA3ZjBiNjcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.q4yrQ6ztC5C4P2__5ykP2Oyy40HjZ--4kyAo_lJz53U)
![image002_obf](https://private-user-images.githubusercontent.com/87860698/260458503-2caa0e42-7c50-4312-8357-3b5f0862d81f.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ4NzQ3ODQsIm5iZiI6MTcyNDg3NDQ4NCwicGF0aCI6Ii84Nzg2MDY5OC8yNjA0NTg1MDMtMmNhYTBlNDItN2M1MC00MzEyLTgzNTctM2I1ZjA4NjJkODFmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjglMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI4VDE5NDgwNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTU1ZWE1MTA5YmM4MmYxMWEzMGE1MWQ2NzViYjE3YTM5MzhiZDQ1NjY2NzJkMDkyNGQ3YzY5MjE5ODYyYjY2YTcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.oaJRV0ZPCQmkDZMenTnEn8wuC6rIJ274KviPm0qtOl0)
![image001](https://private-user-images.githubusercontent.com/87860698/260458508-9c3a665f-3cf7-4c80-8bcc-f3ed751c6847.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ4NzQ3ODQsIm5iZiI6MTcyNDg3NDQ4NCwicGF0aCI6Ii84Nzg2MDY5OC8yNjA0NTg1MDgtOWMzYTY2NWYtM2NmNy00YzgwLThiY2MtZjNlZDc1MWM2ODQ3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjglMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI4VDE5NDgwNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTBlNzc4Njk1NDkyMDcwMzBmYjFjMDMyMDkxYjQ4ODMxNjM4ZmVjNzRmMTI5ZmYyOTI1ZjVhOTQ1ZDZhZWM4ZmImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.0L_qZV8w17Mv7sC1Fa-o7x9m8cR0TeC_7ATe4T8d-UY)
The text was updated successfully, but these errors were encountered: