Skip to main content

Ferramenta para determinar a proporção ideal de dados sintéticos em modelos de ML

Project description

DataTunner

Otimizacao Automatica da Proporcao de Dados Sinteticos para Modelos de Deep Learning

DataTunner e uma ferramenta Python open-source que automatiza a determinacao da proporcao otima de dados sinteticos para maximizar o desempenho de modelos de machine learning.

Escopo

Imagens: data augmentation (albumentations) Dados tabulares: SMOTE, ADASYN, Borderline-SMOTE, Gaussian Noise, CTGAN, TVAE

Instalacao

pip install datatunner

Exemplo Rapido (Dados Tabulares)

import numpy as np
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from datatunner import DataTunner
from datatunner.models.mlp import MLPClassifier
from datatunner.generators.smote import GaussianNoiseGenerator

# Dados
iris = load_iris()
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.2, random_state=42)

# Gerar sinteticos
noise_gen = GaussianNoiseGenerator(noise_level=0.15, random_seed=42)
noise_gen.fit(X_train, y_train)
X_synth, y_synth = noise_gen.generate(n_samples=60)

# Otimizar
tunner = DataTunner(data_type='tabular', output_dir='results', random_seed=42,
                    config={'epochs': 10, 'batch_size': 8, 'device': 'cpu'})
tunner.real_data, tunner.real_labels = X_train, y_train
tunner.test_data, tunner.test_labels = X_test, y_test
tunner.synthetic_data, tunner.synthetic_labels = X_synth, y_synth
tunner.class_names = [str(c) for c in np.unique(y_train)]

model = MLPClassifier(input_dim=4, num_classes=3, hidden_layers=[32, 16], dropout=0.2)
results = tunner.optimize(model=model, proportions=[0.0, 0.3, 0.5, 0.7], epochs=10, n_trials=2)
print(f"Melhor proporcao: {results['best_proportion']}")

License

MIT

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

datatunner-2.0.0.tar.gz (35.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

datatunner-2.0.0-py3-none-any.whl (40.0 kB view details)

Uploaded Python 3

File details

Details for the file datatunner-2.0.0.tar.gz.

File metadata

  • Download URL: datatunner-2.0.0.tar.gz
  • Upload date:
  • Size: 35.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for datatunner-2.0.0.tar.gz
Algorithm Hash digest
SHA256 74c7a313d94c04f57873a34f4513f290346803756fd792860a3b10b7c131018d
MD5 7170ea6ede4282001dd06b357185b2ea
BLAKE2b-256 0196b5aca070bbab399443b30ee7456a21037b0c04897f3a8a2a807a2d6a1857

See more details on using hashes here.

File details

Details for the file datatunner-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: datatunner-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 40.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for datatunner-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2126adb06f418eee23eac66af1a8101bc8211ea088c59950376d0a7470800483
MD5 16da2af459e32e7dbda4742d5830ed00
BLAKE2b-256 eff8d2a8b49cea69a39e97c66a49914679394cc10a276cf32e90555c62452e6e

See more details on using hashes here.

Supported by

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