Comments (4)
Can you provide examples of what you want to send to HDF5?
Params?
Trajectories?
Training progress?
from dowel.
At the moment I am saving trajectories (i.e. "paths").
Btw, I have already written a small, but more or less generic library for saving (and loading from) dictionaries into HDF5, but I haven't wrapped it inside of the logger. I also need a capability to provide a single path for a bunch of experiments to store all paths in a single h5, hence it is kept separate for now.
But I can share this lib if someone is willing to add the feature to the garage.
from dowel.
It is also convenient to store class arguments inside of the HDF5, hence the paths and the parameters that were used to generate them are kept in the same place.
RIght now I am using the following structure inside HDF5 due to the specifics of my project:
# teacher_info/
# - [teacher_indx]:
# traj_data/
# - [teacher_indx] * [iter_indx] * traj_data
For example traj_data/0000/0000 refers to data of the first run (teacher) in the first iteration
Where by "teacher" I mean the optimization run. Iteration is just a ppo policy iterations. Teacher info contains parameters associated with the run.
Hope it helps.
from dowel.
@pelillian is rewriting the logger now and it seems like this could be a good addition.
it's meant to be a single frontend with pluggable backends. this could be a great project to see if the plugging system works nicely.
@krzentner might be interested in this issue.
from dowel.
Related Issues (20)
- GrafanaOutput for the logger HOT 1
- Make the logger multiprocessing-aware HOT 1
- Fix module documentation generation
- Replace utils.mkdir_p with os.path or pathlib
- Use a package-global warn_once
- Replace utils.colorize with colorama
- Fix DeprecationWarnings in the Python 3.7 build
- TensorBoardOutput's resource is not cleaned up nicely
- Switch test runner to pytest
- Make matplotlib and optional extra
- dowel causes the main process to hang forever, if it contains a TensorboardOutput when the process is closing
- Robust handling of inconsistent TabularInput keys HOT 1
- Logging Numpy arrays, Torch Tensors and Tensorflow Tensors HOT 2
- Fix coverage reporting
- Mention SSH setup in CONTRIBUTING.md HOT 1
- Robust handling of inconsistent TabularInput keys
- Simple LogOutput decorator
- Replace logger.tabular with Logger.log_kv
- Replace csvkit with tablib?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dowel.