pthelper - boilerplate code for training, logging and evaluation in PyTorch.
Project description
pthelper - PyTorch
A python package containing the basic boilerplate code for training and evaluation of PyTorch models. The main purpose of this package is to remove writing the same code for training/inference again and again for different projects.
Apart from training and evaluation, it also contains other helper functions to perform logging stats in the console as well as Keras like model summaries using torchinfo package.
Install
pip install pthelper
Usage
Utility functions
- Print model details:
from pthelper import utils
model = PyTorchModel()
input_size = (4, 28*28)
device = torch.device('cpu')
utils.model_details(model, input_size, device)
Model training and evaluation
- Train the model:
import torch
import torch.nn as nn
from pthelper import trainer, utils
epochs = 5
model = PyTorchModel()
loss_fn = nn.BCEWithLogitsLoss()
optimizer = torch.optim.SGD(model.parameters(), lr=0.01)
logger = utils.get_logger()
pt_trainer = trainer.PTHelper(model, loss_fn, optimizer, logger, num_classes=1)
for i in range(epochs):
train_loss = pt_trainer.train(train_dataloader, epoch=i)
valid_loss, predictions, targets = pt_trainer.evaluate(valid_dataloader)
Scope
Right now, only binary and multi-class classification tasks are supported. In future releases, more functionality will be added like autoencoders, RNNs, GANs, etc.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pthelper-0.1.2.tar.gz.
File metadata
- Download URL: pthelper-0.1.2.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.8.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6cea351d3e70fadbfbe48c6a64c1ae90ffb51bedf8f7258efe0db56985bc5984
|
|
| MD5 |
aa190c96c04f902f08e4d437d7936dac
|
|
| BLAKE2b-256 |
a9dc194f6598ed40d821f0e31204e134fe699d272f0a8285815a94f7f7ae8bca
|
File details
Details for the file pthelper-0.1.2-py3-none-any.whl.
File metadata
- Download URL: pthelper-0.1.2-py3-none-any.whl
- Upload date:
- Size: 6.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.8.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d3981e1ae4938d89dc2913d8d5660e6aaba3a15b0dac213c8e197b3a0c5aa39d
|
|
| MD5 |
2275a35cdb2a1c76bf9bc78add756922
|
|
| BLAKE2b-256 |
7dd36447f071fb2713fdf27499eeffffda1e9dd1a2fb1868a6e3b91eab80696a
|