Metadata-Version: 2.1
Name: BxTorch
Version: 0.3.3
Summary: High-level abstractions for PyTorch.
Home-page: https://github.com/borchero/bxtorch
Author: Oliver Borchert
Author-email: borchero@in.tum.de
License: License :: OSI Approved :: MIT License
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.7
Description-Content-Type: text/markdown
Requires-Dist: torch (<2.0.0,>=1.1.0)
Requires-Dist: numpy (<2.0.0,>=1.16.3)
Requires-Dist: scipy (<2.0.0,>=1.3.0)
Requires-Dist: numba (<1.0.0,>=0.43.1)
Requires-Dist: scikit-learn (<0.21.0,>=0.20.3)

# BxTorch

BxTorch is a high-level library for working with [PyTorch](https://pytorch.org).
It is designed to make PyTorch much simpler in the most common cases. Yet,
it is engineered to be highly extensible in order to preserve PyTorch's
flexibility --- while relieving you from writing boilerplate code.

Have a look at [BxModels](https://gitlab.lrz.de/kdd/bxmodels) if you want to
use implementations of well-known machine learning models.

## Installation

BxTorch is available on PyPi, so simply run the following command:

```bash
pip install bxtorch
```

The package will install the dependencies specified [here](requirements.txt).
If you plan to use plotting features of BxTorch, make sure to also install the
following packages:

```txt
matplotlib
```

## Features

Generally, BxTorch provides an object-oriented approach to abstracting PyTorch's
API. The core design objective is to provide an API both as simple and as
extensible as possible --- usually at the expense of some milliseconds of
execution time. Be aware that the goal of this library is *not* to maximize
performance in cases where it is not needed.

This does not mean that BxTorch does not care about performance: in fact, the
library has built-in support for multi-GPU training, both within a single
process and split over multiple processes.

It must be emphasized that BxTorch is not meant to be a wrapper for PyTorch as
Keras is for TensorFlow, for example. It only provides *extensions* for PyTorch.

## Documentation

Examples of the usage of BxTorch can be found in the [docs folder](docs).
Method documentation is currently only available as [docstrings](bxtorch).

## License

BxTorch is licensed under the [MIT License](LICENSE).

The logo is modified from [thenounproject.com](https://thenounproject.com),
"Torch by iconsmind.com from the Noun Project".


