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
- BaseNetModel included.
- BaseNetDatabase included.
- BaseNetCompiler included.
- Inheritance from CorNetAPI project.
- Multi-processing fitting.
- Tensorboard launching.
0.2.0
- BaseNetResults included (working).
- Now the model is callable.
- Switched print to logging.
- Project documentation.
1.0.0 - 1.0.3
- Python packaging
- 1.0.x: Upload bug solving.
1.1.0
- Functional package.
- PyPi indexing.
1.2.0:
- Loss results included in the BaseNetResults while multiprocessing.
- GPU auto set up to avoid TensorFlow memory errors.
- Method
BaseNetCompiler.set_up_devices()
configures the GPUs according to the free RAM to be used in the API.
1.3.0
- Included WindowDiff to the project scope.
1.4.0
- Solved python packaging problems.
- Included force stop callback in the
BaseNetModel.fit_stop()
method.
1.5.0
- BaseNetDatabase now has the attributes
BaseNetDatabase.size
andBaseNetDatabase.distribution
. - Solved forced stopping bugs with multiprocessing in the method
BaseNetDatabase.fit_stop()
. BaseNetModel._threshold()
private method now takes a set of outputs instead only one. This was only for optimization.- Solved wrong
BaseNetModel.recover()
. - 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
- Solved a bug where
BaseNetDatabase
modified the incoming list of instances in the database; avoiding checkpoints for large database generators. - Exception handler for
nvml
library if NVIDIA Drivers are not installed`in the machine.
1.5.4
- Added some
BaseNetDatabase
utils: merge and split databases. - Added
BaseNetDatabase
equality check. - Added a
BaseNetDatabase._reversion()
,BaseNetCompiler._reversion()
andBaseNetModel.__version__
. Which rebuilds the Classes to the current version of the API.
1.6.0
- Start to develop the second branch of the API:
BaseNetHeuristic
- Start to create JuPyter Notebook tutorials of the API.
- Included
BaseNetDatabase
binarization and normalization of databases. - Included in
BaseNetDatabase
to readTensorFlow
andPandas
databases. - Some rework was done for bug-fixing and providing more logging information.
1.7.0
- Reworked
BaseNetDatabase
for minor bug fixing. - Added the
BaseNetFeeder
Class to generate dynamicBaseNetDatabase
s. - 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
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
basenet_api-1.9.0.tar.gz
(794.2 kB
view details)
Built Distribution
basenet_api-1.9.0-py3-none-any.whl
(815.6 kB
view details)
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 803a3109f017dc09c97e5587969c6a167f609bdc7d3c775f45ac471555246c42 |
|
MD5 | 0ecffc29d566d43d2c99caa0860e961b |
|
BLAKE2b-256 | cfef8fcf1150b58348cff2a9097a41e322a4bc80c00de841bdd29bf1f9231618 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 66a5844aacd5c31f280f37de8c1566d07f1ca1893c0a40ce9cee664d2bdc5363 |
|
MD5 | 594abd548e50555066423284ef787115 |
|
BLAKE2b-256 | 5e13a33be7977710d12e39ba0df7468a490c852684bb85776b6c0fc075118563 |