A ML logger package
Project description
Machine Learning LogWriter
ML LogWriter: Biblioteca para Registro de Logs e Armazenamento de Artefatos
Descrição
O ML LogWriter é uma biblioteca Python de código aberto disponibilizada que visa facilitar o registro de logs de execução de código e o armazenamento de artefatos de modelos em projetos de aprendizado de máquina e experimentos de ciência de dados.
Com duas classes principais, LogWriter e LogArtifacts, essa biblioteca oferece uma solução simples e eficiente para acompanhar o desempenho de modelos e registrar informações essenciais durante o desenvolvimento de projetos.
Módulos
LogWriter:
A classe LogWriter é responsável por registrar logs de execução em dois locais simultaneamente: em um arquivo de log e no terminal. Suas principais funcionalidades incluem:
Registro detalhado de eventos: Possibilita registrar informações relevantes em diferentes nÃveis de detalhe (por exemplo, INFO, WARNING, ERROR) para auxiliar na depuração e monitoramento da execução do código.
- Armazenamento em arquivo: Registra as informações em um arquivo de log, permitindo revisitar eventos passados e manter um histórico de execuções.
- SaÃda no terminal: Exibe informações importantes diretamente no terminal, facilitando o acompanhamento do progresso do código em tempo real.
Exemplo de uso do módulo LogWriter:
# Importando a classe LogWriter do módulo
from log_module import LogWriter
# Criando uma instância da classe LogWriter e definindo o caminho para o arquivo de log
log_writer = LogWriter()
log_path = 'logs/log_file.txt'
# Obtendo o logger para fazer os registros de log
logger = log_writer.logger(log_path)
# Exemplo de uso do logger para fazer registros de log
logger.debug("Debug message: This is a debug log.")
logger.info("Info message: This is an info log.")
logger.warning("Warning message: This is a warning log.")
logger.error("Error message: This is an error log.")
logger.critical("Critical message: This is a critical log.")
LogArtifacts:
A classe LogArtifacts foi desenvolvida para armazenar e organizar artefatos essenciais de experimentos e modelos. Suas principais funcionalidades incluem:
- Armazenamento de modelos e metadados: Permite salvar modelos treinados juntamente com metadados relevantes, como hiperparâmetros e métricas de desempenho.
- Gerenciamento de experimentos: Organiza os resultados de experimentos em uma estrutura de diretórios clara e consistente, facilitando a localização e comparação entre diferentes iterações de modelos.
- Armazenamento de dados e gráficos: Além dos modelos, a classe LogArtifacts é capaz de armazenar outros artefatos, como conjuntos de dados, gráficos de desempenho e imagens relevantes para a análise dos resultados.
Exemplo de Uso do Módulo LogArtifacts:
# Importando a classe LogArtifacts do módulo
from log_module import LogArtifacts
# Criando uma instância da classe LogArtifacts e definindo o caminho para o diretório de artefatos
artifacts_path = 'artifacts'
# Criando um novo diretório de artefatos (experimento)
experiment = LogArtifacts(artifacts_path)
experiment.create()
# Exemplo de uso da classe LogArtifacts para registrar parâmetros, métricas, modelo e dataset
parameters = {'learning_rate': 0.01, 'batch_size': 32, 'num_epochs': 50}
metrics = {'accuracy': 0.85, 'precision': 0.78, 'recall': 0.92}
model = 'Trained Model Object'
dataset = pd.DataFrame({'feature1': [1, 2, 3], 'feature2': [4, 5, 6]})
experiment.log_parameters(parameters)
experiment.log_metrics(metrics)
experiment.log_model(model)
experiment.log_dataset(dataset, 'example_dataset')
# Criando um gráfico de desempenho (exemplo com valores aleatórios)
x_values = [1, 2, 3, 4, 5]
y_values = [0.9, 0.85, 0.78, 0.75, 0.72]
experiment.log_performance_graph(x_values, y_values, title='Model Performance',
x_label='Epoch', y_label='Accuracy', filename='accuracy_graph')
# Após executar o código acima, você verá os artefatos salvos no diretório 'artifacts' com os resultados do experimento.
Principais BenefÃcios
- Facilidade de Uso: Com uma interface intuitiva, a biblioteca permite que desenvolvedores e cientistas de dados incorporem facilmente a funcionalidade de registro de logs e armazenamento de artefatos em seus projetos.
- Organização e Rastreabilidade: O ML LogWriter facilita a organização de experimentos e a rastreabilidade de modelos, permitindo que os usuários acessem informações históricas e comparem resultados de forma sistemática.
- Colaboração Eficiente: Ao armazenar artefatos e logs em arquivos, a biblioteca possibilita a colaboração entre membros da equipe, uma vez que todos os envolvidos podem compartilhar informações e resultados relevantes.
- Melhoria no Processo de Desenvolvimento: Com o registro detalhado de logs e a capacidade de armazenar artefatos, o ML LogWriter auxilia no processo de depuração, otimização de modelos e tomada de decisões com base em métricas objetivas.
Instalação
pip install ml-logwriter
Requisitos
O ML LogWriter requer a instalação das bibliotecas Python necessárias para funcionar corretamente.
DateTime==5.2
joblib==1.3.1
logging==0.4.9.6
pytz==2023.3
zope.interface==6.0
matplotlib==3.7.0
Ou instale executando:
pip install -r requirements.txt
Contribuição e Licença:
A biblioteca ML LogWriter é de código aberto e é incentivada a contribuição da comunidade para o seu aprimoramento. Ela está licenciada sob a Licença MIT, garantindo liberdade de uso e modificação para qualquer projeto, seja comercial ou não.
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 ml_logwriter-0.2.1.tar.gz.
File metadata
- Download URL: ml_logwriter-0.2.1.tar.gz
- Upload date:
- Size: 6.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cdb9e3d1de4fce72bbbb8828391667b4444320113c94bb303ec2235728331c3e
|
|
| MD5 |
11769cc53f143cecd55b28764641be42
|
|
| BLAKE2b-256 |
68c9e037d6528531246ab8429aa266c75a82610e16cc5943516a9bd3da276dcd
|
File details
Details for the file ml_logwriter-0.2.1-py3-none-any.whl.
File metadata
- Download URL: ml_logwriter-0.2.1-py3-none-any.whl
- Upload date:
- Size: 6.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc6a3a32720c7d234befae475d254a4eee3885394c3fff54958fee1f0075d39f
|
|
| MD5 |
16dad3acf6823f14a06370ab0deddd80
|
|
| BLAKE2b-256 |
4d9f14d34ed12752a834264b37a006f7c9abe3d9562dd214709e804882e58b57
|