

Conjunto de pytorch
Un marco de conjunto unificado para Pytorch para mejorar fácilmente el rendimiento y la robustez de su modelo de aprendizaje profundo. Ensemble-Pytorch es parte del ecosistema de Pytorch, que requiere que el proyecto se mantenga bien.
Instalación
pip install torchensemble
Ejemplo
from torchensemble import VotingClassifier # voting is a classic ensemble strategy
# Load data
train_loader = DataLoader (...)
test_loader = DataLoader (...)
# Define the ensemble
ensemble = VotingClassifier (
estimator = base_estimator , # estimator is your pytorch model
n_estimators = 10 , # number of base estimators
)
# Set the optimizer
ensemble . set_optimizer (
"Adam" , # type of parameter optimizer
lr = learning_rate , # learning rate of parameter optimizer
weight_decay = weight_decay , # weight decay of parameter optimizer
)
# Set the learning rate scheduler
ensemble . set_scheduler (
"CosineAnnealingLR" , # type of learning rate scheduler
T_max = epochs , # additional arguments on the scheduler
)
# Train the ensemble
ensemble . fit (
train_loader ,
epochs = epochs , # number of training epochs
)
# Evaluate the ensemble
acc = ensemble . evaluate ( test_loader ) # testing accuracy Conjunto compatible
| Nombre de conjunto | Tipo | Código fuente | Problema |
|---|
| Fusión | Mezclado | fusion.py | Clasificación / regresión |
| Votación [1] | Paralelo | voting.py | Clasificación / regresión |
| Bosque neuronal | Paralelo | voting.py | Clasificación / regresión |
| Bolsas [2] | Paralelo | bagging.py | Clasificación / regresión |
| Aumento de gradiente [3] | Secuencial | gradiente_boosting.py | Clasificación / regresión |
| Conjunto de instantáneas [4] | Secuencial | snapshot_ensemble.py | Clasificación / regresión |
| Entrenamiento adversario [5] | Paralelo | adversarial_training.py | Clasificación / regresión |
| Conjunto geométrico rápido [6] | Secuencial | Fast_Geometric.py | Clasificación / regresión |
| Aumento de gradiente suave [7] | Paralelo | soft_gradient_boosting.py | Clasificación / regresión |
Dependencias
- Scikit-Learn> = 0.23.0
- antorcha> = 1.4.0
- Visación de antorchas> = 0.2.2
Referencia
| [1] | Zhou, Zhi-Hua. Métodos de conjunto: fundamentos y algoritmos. CRC Press, 2012. |
| [2] | Breiman, Leo. Predictores de embolsado. Aprendizaje automático (1996): 123-140. |
| [3] | Friedman, Jerome H. Aproximación de la función codiciosa: una máquina de impulso de gradiente. Annals of Statistics (2001): 1189-1232. |
| [4] | Huang, Gao, et al. Conjuntos de instantáneas: Train 1, obtenga M gratis. ICLR, 2017. |
| [5] | Lakshminarayanan, Balaji, et al. Estimación de incertidumbre predictiva simple y escalable utilizando conjuntos profundos. NIPS, 2017. |
| [6] | Garipov, Timur, et al. Superficies de pérdida, conectividad de modo y conjunto rápido de DNN. Neurips, 2018. |
| [7] | Feng, Ji, et al. Máquina de refuerzo de gradiente suave. Arxiv, 2020. |
Gracias a todos nuestros contribuyentes