ROSE
What is ROSE:
The RADICAL Optimal & Smart-Surrogate Explorer (ROSE) toolkit is a framework for supporting the concurrent and adaptive execution of simulation and surrogate training and selection tasks on High-Performance Computing (HPC) resources. ROSE is a Python package that provides tools to facilitate the development of machine learning surrogates for scientific applications. It standardizes the process of building surrogates using diverse methods such as active and reinforcement learning on HPC systems. ROSE enables users to define thousands of simulation and surrogate training tasks and workflows, while automatically managing their execution across thousands of HPC nodes.
ROSE also provides tools to facilitate the selection of the best surrogate model for a given simulation based on performance metrics.
ROSE uses RADICAL-Cybertools -- middleware building blocks to facilitate the development of sophisticated scientific workflows on HPC resources.
How to install:
pip install .
Documentation:
The complete documentation is available here.
For tutorials and walkthrough notebooks please check here
Basic usage
import asyncio
from rose.metrics import MEAN_SQUARED_ERROR_MSE
from rose.al import SequentialActiveLearner
from concurrent.futures import ProcessPoolExecutor
from radical.asyncflow import WorkflowEngine
from rhapsody.backends import ConcurrentExecutionBackend
async def main():
execution_engine = await ConcurrentExecutionBackend(ProcessPoolExecutor())
asyncflow = await WorkflowEngine.create(execution_engine)
acl = SequentialActiveLearner(asyncflow)
@acl.simulation_task
async def simulation(*args):
return f'python3 sim.py'
@acl.training_task
async def training(*args):
return f'python3 train.py'
@acl.active_learn_task
async def active_learn(*args):
return f'python3 active.py'
# Start the learning loop and break if max_iter = 10
await acl.start(max_iter=10)
await asyncflow.shutdown()
if __name__ == "__main__":
asyncio.run(main())
Metadata
Release files for rose-surrogate-explorer 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| rose_surrogate_explorer-0.3.0.tar.gz | 65.3 kB | Without provenance | Details for rose_surrogate_explorer-0.3.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| rose_surrogate_explorer-0.3.0-py3-none-any.whl | Python 3 | none | any | Details for rose_surrogate_explorer-0.3.0-py3-none-any.whl |
Total release size: 139.2 kB
Release files / rose_surrogate_explorer-0.3.0.tar.gz
| Download URL | rose_surrogate_explorer-0.3.0.tar.gz |
|---|---|
| Size | 65.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9d86bf43f54a2f37530985c1a4bd15ec607b871b56233cda8bf77174eae6acc7
|
|
BLAKE2b-256 checksum How to use checksums |
99a2baa791ddec35e20a38c7b08e1297de6f506e40a1d66ee1b0cd415881b79f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / rose_surrogate_explorer-0.3.0-py3-none-any.whl
| Download URL | rose_surrogate_explorer-0.3.0-py3-none-any.whl |
|---|---|
| Size | 73.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4da3d3c937919b5a4eb8e634c2b05bb2cb9b181510c074e155db7ee53dc409ef
|
|
BLAKE2b-256 checksum How to use checksums |
82f7a632db1089a868416fcf7e01d0e631610a199a13358ba1364771e765b6b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Security for rose-surrogate-explorer 0.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.