Framework for the automatic creation of CNN architectures
Project description
TorchCNNBuilder
TorchCNNBuilder is an open-source framework for the automatic creation of CNN architectures. This framework should first of all help researchers in the applicability of CNN models for a huge range of tasks, taking over most of the writing of the architecture code. This framework is distributed under the 3-Clause BSD license. All the functionality is written only using pytorch
(no third-party dependencies).
Installation
The simplest way to install framework is using pip
:
pip install torchcnnbuilder
Usage examples
The basic structure of the framework is presented below. Each subdirectory has its own example of using the appropriate available functionality. You can check <directory>_examples.ipynb
files in order to see the ways to use the proposed toolkit. In short, there is the following functionality:
- the ability to calculate the size of tensors after (transposed) convolutional layers
- preprocessing an n-dimensional time series in
TensorDataset
- automatic creation of (transposed) convolutional sequences
- automatic creation of (transposed) convolutional layers and (transposed) blocks from convolutional layers
The structure of the main part of the package:
├── examples
│ ├── builder_examples.ipynb
│ ├── preprocess_examples.ipynb
│ ├── models_examples.ipynb
│ └── tools # additional functions for the examples
└── torchcnnbuilder
├── preprocess
│ └── time_series.py
├── builder.py
└── models.py
Initially, the library was created to help predict n-dimensional time series (geodata), so there is a corresponding functionality and templates of predictive models (like ForecasterBase
).
Sources
- Forecasting of Sea Ice Concentration using CNN, PDE discovery and Bayesian Networks
- Surrogate Modelling for Sea Ice Concentration using Lightweight Neural Ensemble
Development
We try to maintain good practices of readable open source code. Therefore, if you want to participate in the development and open your pool request, pay attention to the following points:
- Every push is checked by the flake8 job. It will show you PEP8 errors or possible code improvements.
- Use this linter script after your code:
bash lint_and_check.sh
You can mark function docstrings using #noqa
, in order for flake8 not to pay attention to them.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file torchcnnbuilder-0.1.1.tar.gz
.
File metadata
- Download URL: torchcnnbuilder-0.1.1.tar.gz
- Upload date:
- Size: 14.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f4bf514266746c1d31fbbfb5dd2b05f86c0fed3b79d607e60b5463e7ad79ef8f |
|
MD5 | c7a4bcd75c24446d0fdbe4fc4e3fdb43 |
|
BLAKE2b-256 | 122fa56599229af6e297f6cd7175c3dc3374bf254c55bd36bfa054e182c35e7b |
Provenance
File details
Details for the file torchcnnbuilder-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: torchcnnbuilder-0.1.1-py3-none-any.whl
- Upload date:
- Size: 14.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ec0f01f2ed2dd1f3ef72186b6b1bd5fe0c464f298a810994f71fd5e1e624ad6 |
|
MD5 | aec8a4eb5b6d82431b6e895ab56b1a03 |
|
BLAKE2b-256 | 9431842bb92fe237bd16ae634f1ea208252042179aafd6d290de390f26ca5f34 |