Skip to main content

No project description provided

Project description

mlconfig

Installation

$ pip install mlconfig

Example

config.yaml

num_classes: 50

model:
  name: LeNet
  num_classes: ${num_classes}

optimizer:
  name: Adam
  lr: 1.e-3
  weight_decay: 1.e-4

main.py

from torch import nn
from torch import optim

from mlconfig import instantiate
from mlconfig import load
from mlconfig import register

register(optim.Adam)


@register
class LeNet(nn.Module):

    def __init__(self, num_classes):
        super(LeNet, self).__init__()
        self.num_classes = num_classes

        self.features = nn.Sequential(
            nn.Conv2d(1, 6, 5, bias=False),
            nn.ReLU(inplace=True),
            nn.MaxPool2d(2, 2),
            nn.Conv2d(6, 16, 5, bias=False),
            nn.ReLU(inplace=True),
            nn.MaxPool2d(2, 2),
        )

        self.classifier = nn.Sequential(
            nn.Linear(16 * 5 * 5, 120),
            nn.ReLU(inplace=True),
            nn.Linear(120, 84),
            nn.ReLU(inplace=True),
            nn.Linear(84, self.num_classes),
        )

    def forward(self, x):
        x = self.features(x)
        x = x.view(x.size(0), -1)
        x = self.classifier(x)
        return x


def main():
    config = load('conf.yaml')

    model = instantiate(config.model)
    optimizer = instantiate(config.optimizer, model.parameters())


if __name__ == '__main__':
    main()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

mlconfig-0.3.0-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file mlconfig-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: mlconfig-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 4.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.6

File hashes

Hashes for mlconfig-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a5e6d8cb137367a9012ba4a0d59cf14ba0e02783d15cc083c8fe2ecb26954bce
MD5 33d097beded655a6bbe00e6fe895a676
BLAKE2b-256 375a8929fdff1559b198fdd4b788d422c584d8f94ef9421f5a89fa4bfdd13ae2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page