{"id":13689178,"url":"https://github.com/borchero/pyblaze","last_synced_at":"2025-05-01T23:32:51.412Z","repository":{"id":56635270,"uuid":"226218802","full_name":"borchero/pyblaze","owner":"borchero","description":"Large-Scale Machine and Deep Learning in PyTorch.","archived":true,"fork":false,"pushed_at":"2021-11-18T01:10:39.000Z","size":7040,"stargazers_count":21,"open_issues_count":1,"forks_count":5,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-31T16:50:56.916Z","etag":null,"topics":["deep-learning","machine-learning","pytorch"],"latest_commit_sha":null,"homepage":"https://pyblaze.borchero.com","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/borchero.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-12-06T01:13:45.000Z","updated_at":"2024-03-08T21:32:01.000Z","dependencies_parsed_at":"2022-08-15T22:20:29.151Z","dependency_job_id":null,"html_url":"https://github.com/borchero/pyblaze","commit_stats":null,"previous_names":["borchero/bxtorch"],"tags_count":33,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/borchero%2Fpyblaze","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/borchero%2Fpyblaze/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/borchero%2Fpyblaze/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/borchero%2Fpyblaze/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/borchero","download_url":"https://codeload.github.com/borchero/pyblaze/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224282174,"owners_count":17285783,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deep-learning","machine-learning","pytorch"],"created_at":"2024-08-02T15:01:36.924Z","updated_at":"2024-11-12T13:31:01.998Z","avatar_url":"https://github.com/borchero.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# PyBlaze\n\n![PyPi](https://img.shields.io/pypi/v/pyblaze?label=version)\n![License](https://img.shields.io/github/license/borchero/pyblaze?label=license)\n\nPyBlaze is an unobtrusive, high-level library for large-scale machine and deep learning in\n[PyTorch](https://pytorch.org). It is engineered to cut obsolete boilerplate code while preserving\nthe flexibility of PyTorch to create just about any deep learning model.\n\n## Quickstart\n\nPlenty of tutorials are available in the [official documentation](https://pyblaze.borchero.com/).\nThe most basic tutorial builds a\n[classifier for CIFAR10](https://pyblaze.borchero.com/examples/classifier.html).\n\n### Installation\n\nPyBlaze is available on PyPi and can simply be installed as follows:\n\n```bash\npip install pyblaze\n```\n\n## Library Design\n\nPyBlaze revolves around the concept of an **engine**. An engine is a powerful abstraction for\ncombining a model's definition with the algorithm required to optimize its parameters according to\nsome data. Engines provided by PyBlaze are focused on generalization: while the engine encapsulates\nthe optimization algorithm, the user must explicitly define the optimization objective (usually the\nloss function).\n\nHowever, engines go far beyond implementing the optimization algorithm. Specifically, they further\nprovide the following features:\n\n- **Evaluation**: During training, validation data can be used to evaluate the generalization\n  performance of the trained model every so often. Also, arbitrary metrics may be computed.\n\n- **Callbacks**: During training and model evaluation, callbacks serve as hooks called at specific\n  events in the process. This makes it possible to easily use some tracking framework, perform\n  early stopping, or dynamically adjust parameters over the course of the training. Custom\n  callbacks can easily be created.\n\n- **GPU Support**: Training and model evaluation is automatically performed on all available GPUs.\n  The same code that works for the CPU works for the GPU ... and also for multiple GPUs.\n\n### Available Engines\n\nEngines are currently implemented for the following training procedures:\n\n- `pyblaze.nn.MLEEngine`: This is the most central engine as it enables supervised as well as\n  unsupervised learning. It can therefore adapt to multiple different problems: classification,\n  regression, (variational) autoencoders, ..., depending on the loss only. In order to simplify\n  initialization (as configuration requires toggling some settings), there exist some specialized\n  MLE engines. Currently, the only one is `pyblaze.nn.AutoencoderEngine`.\n\n- `pyblaze.nn.WGANEngine`: This engine is specifically designed for training Wasserstein GANs.\n  This class is required due to the independent training of generator and critic.\n\nImplementing your custom engine is rarely necessary for most common problems. However, when working\non highly customized machine learning models, it might be a good idea. Usually, it is sufficient to\nimplement the `train_batch` and `eval_batch` methods to specify how to perform training and\nevaluation, respectively, for a single batch of data. Consult the documentation of\n`pyblaze.nn.Engine` to read about all methods available for override.\n\n## License\n\nPyBlaze is licensed under the [MIT License](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fborchero%2Fpyblaze","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fborchero%2Fpyblaze","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fborchero%2Fpyblaze/lists"}