neuro-ml / deep_pipe Goto Github PK
View Code? Open in Web Editor NEWA collection of tools for deep learning experiments
License: MIT License
A collection of tools for deep learning experiments
License: MIT License
This test randomly fail but ideally it shouldn't
from dpipe.batch_iter import Loky
from dpipe.batch_iter.pipeline import wrap_pipeline
size = 100
for i, item in enumerate(wrap_pipeline(range(size), Loky(lambda x: x ** 2, n_workers=2))):
assert item == i ** 2
Previously written batch predictors were written to support models with multiple inputs in deepmedic-like manner, but now we use crops inside of the model instead. Maybe refactor them?
I can choose arbitrary save_func, but the extension remains the same.
Line 96 in 9a87ece
For example, I may prefer to save predictions for the whole image in json, if my slice-wise predictions have different length.
Files in checkpoint folder have no extension
Consider reorganizing library structure and usages.
Check if tensorboard lib is good enough for direct logging:
It is a complex issue:
Are exceptionally complex and need refactoring
Merge batch iter branch
Consider:
import dpipe
dpipe.version
'0.2.7'import dpipe.medim
Traceback (most recent call last):
File "", line 1, in
ModuleNotFoundError: No module named 'dpipe.medim'
It's used for other purposes too.
Perhaps Counter
is a better name.
Get information about:
We need a way to combine batch predictors, because many of them are repetitive.
Consider creating a small grammar for that.
Instead of writing a custom runner, it might be feasible to generate the snakefile/makefile on the fly.
model_core currently requires prediction method, which increases coupling. Object prediction logic has to be extracted from the model core to separate module.
Users should be able to create training functions easily to allow more customization. Decrease amount of code, required to write new training process. #20
Namely ['PatientID', 'SeriesInstanceUID', 'StudyID', 'SequenceName']
Current model satisfy only the simplest requirements with one predictor and one loss.
Refactor model as a set of utility functions and a bunch of prebuilt models for typical use
It would be better for the generated config to be named something like resources.config
instead of config
.
Too many levels in the PyramidalPooling layer may cause job silent termination without any reports in the experiment's log file
If all gradients of the model are None
-s, then scaler.step(optimizer)
fails with AssertionError: No inf checks were recorded for this optimizer
.
If mask in dpipe.torch.functional.masked_loss
is empty, it creates and returns 0 wrapped in a torch tensor. This tensor is "detached" from model graph, so during backward no gradients flow into model parameters gradients, they are all None
-s and scaler.step
fails.
This can be simply fixed by not returning new 0 tensor in masked_loss
, but multiplying prediction by 0, so there will be not None
but 0 gradients in model parameters.
Model refactoring is required for writing custom user logs during training. Maybe remove model_controller?
deep_pipe/dpipe/torch/utils.py
Line 25 in fa55963
Move logging to training process. #20
Change interfaces, to use both pytorch and tf
Reorganize training process allowing more customization and logging
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.