Skip to main content

Basenet API: A simpler way to build ML models.

Project description

BaseNet: A simpler way to build AI models.

Basenet API Package - 1.7.0

This package implements an API over Keras and Tensorflow to build Deep Learning models easily without losing the framework flexibility. BaseNet API tries to implement almost everything from a few lines of code.

About

Author: A.Palomo-Alonso (a.palomo@uah.es)
Universidad de Alcalá.
Escuela Politécnica Superior.
Departamento de Teoría De la Señal y Comunicaciones (TDSC).
ISDEFE Chair of Research.

Features

MACHINE LEARNING

  • Feature 01: Database train, validation and test automatic and random segmentation for DeepLearning.
  • Feature 02: Solving optimization problems for MetaHeuristic models.

EFFICIENCY

  • Feature 03: Real multiprocessing training process (CPU usage optimization).
  • Feature 04: Automatic and custom GPU usage and assignment.

SIMPLICITY

  • Feature 05: Easy-to-use API.
  • Feature 06: API documentation.
  • Feature 07: JuPyter Notebooks tutorials included.
  • Feature 08: Python Packaging and PyPi indexing.

MONITORIZATION

  • Feature 09: Real-time logging.
  • Feature 10: Dashboards included.
  • Feature 11: Model printing and easy debugging.

CONNECTIVITY

  • Feature 12: Model merging and multiple model inputs.
  • Feature 13: Computational cluster linking.
  • Feature 14: The different parts of the API are designed to interact.
  • Feature 15: It allows to create dynamic databases for data ingestion and math problems that require synthetic data.

RELIABILITY

  • Feature 16: Depends on huge and reliable frameworks: KERAS, TENSORFLOW, RAY.
  • Feature 17: Code updating and active support.

Cons:

FLEXIBILITY

  • An API must look for a balance between simplicity and flexibility. In this case, we bet on simplicity; but the API is still highly flexible.
  • The API is designed for high level research and design. But it is not optimal for low-level research.

DEPENDENCE

  • This API is built over highly reliable frameworks, however, the API depends on those frameworks to run the models.

DEPLOYMENT

  • The API can not deploy models by itself yet in this current verion. But I am planning!

What's new?

< 0.1.0

  1. BaseNetModel included.
  2. BaseNetDatabase included.
  3. BaseNetCompiler included.
  4. Inheritance from CorNetAPI project.
  5. Multi-processing fitting.
  6. Tensorboard launching.

0.2.0

  1. BaseNetResults included (working).
  2. Now the model is callable.
  3. Switched print to logging.
  4. Project documentation.

1.0.0 - 1.0.3

  1. Python packaging
  2. 1.0.x: Upload bug solving.

1.1.0

  1. Functional package.
  2. PyPi indexing.

1.2.0:

  1. Loss results included in the BaseNetResults while multiprocessing.
  2. GPU auto set up to avoid TensorFlow memory errors.
  3. Method BaseNetCompiler.set_up_devices() configures the GPUs according to the free RAM to be used in the API.

1.3.0

  1. Included WindowDiff to the project scope.

1.4.0

  1. Solved python packaging problems.
  2. Included force stop callback in the BaseNetModel.fit_stop() method.

1.5.0

  1. BaseNetDatabase now has the attributes BaseNetDatabase.size and BaseNetDatabase.distribution.
  2. Solved forced stopping bugs with multiprocessing in the method BaseNetDatabase.fit_stop().
  3. BaseNetModel._threshold() private method now takes a set of outputs instead only one. This was only for optimization.
  4. Solved wrong BaseNetModel.recover().
  5. Auto recover implemented, now BaseNetModel.recover() is a private method: BaseNetModel._recover(). Now the used does not need to recover it. The model recovers by itself. -- Hans Niemann 2022. NOTE: RECOVER IS NECESARY WHEN THE MODEL IS EARLY STOPPED; CONSIDER RECOVERING ALWAYS THE MODEL.

1.5.1 - 1.5.3

  1. Solved a bug where BaseNetDatabase modified the incoming list of instances in the database; avoiding checkpoints for large database generators.
  2. Exception handler for nvml library if NVIDIA Drivers are not installed`in the machine.

1.5.4

  1. Added some BaseNetDatabase utils: merge and split databases.
  2. Added BaseNetDatabase equality check.
  3. Added a BaseNetDatabase._reversion(), BaseNetCompiler._reversion() and BaseNetModel.__version__. Which rebuilds the Classes to the current version of the API.

1.6.0

  1. Start to develop the second branch of the API: BaseNetHeuristic
  2. Start to create JuPyter Notebook tutorials of the API.
  3. Included BaseNetDatabase binarization and normalization of databases.
  4. Included in BaseNetDatabase to read TensorFlow and Pandas databases.
  5. Some rework was done for bug-fixing and providing more logging information.

1.7.0

  1. Reworked BaseNetDatabase for minor bug fixing.
  2. Added the BaseNetFeeder Class to generate dynamic BaseNetDatabases.
  3. Jupyter tutorials.

Basic and fast usage

There are Jupyter Notebooks with usage tutorials! Refer to them HERE. You should run your notebook creating a virtual environment in this README path.

Cite as

Please, cite this library as:

@misc{basenetapi,
  title={CorNet: Correlation clustering solving methods based on Deep Learning Models},
  author={A. Palomo-Alonso},
  booktitle={PhD in TIC: Machine Learning and NLP.},
  year={2022}
}

Project details


Download files

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

Source Distribution

basenet_api-1.9.0.tar.gz (794.2 kB view details)

Uploaded Source

Built Distribution

basenet_api-1.9.0-py3-none-any.whl (815.6 kB view details)

Uploaded Python 3

File details

Details for the file basenet_api-1.9.0.tar.gz.

File metadata

  • Download URL: basenet_api-1.9.0.tar.gz
  • Upload date:
  • Size: 794.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.8

File hashes

Hashes for basenet_api-1.9.0.tar.gz
Algorithm Hash digest
SHA256 803a3109f017dc09c97e5587969c6a167f609bdc7d3c775f45ac471555246c42
MD5 0ecffc29d566d43d2c99caa0860e961b
BLAKE2b-256 cfef8fcf1150b58348cff2a9097a41e322a4bc80c00de841bdd29bf1f9231618

See more details on using hashes here.

File details

Details for the file basenet_api-1.9.0-py3-none-any.whl.

File metadata

  • Download URL: basenet_api-1.9.0-py3-none-any.whl
  • Upload date:
  • Size: 815.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.8

File hashes

Hashes for basenet_api-1.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 66a5844aacd5c31f280f37de8c1566d07f1ca1893c0a40ce9cee664d2bdc5363
MD5 594abd548e50555066423284ef787115
BLAKE2b-256 5e13a33be7977710d12e39ba0df7468a490c852684bb85776b6c0fc075118563

See more details on using hashes here.

Supported by

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