

Ensemble Pytorch
Kerangka kerja ensemble terpadu untuk Pytorch untuk dengan mudah meningkatkan kinerja dan ketahanan model pembelajaran mendalam Anda. Ensemble-Pytorch adalah bagian dari ekosistem Pytorch, yang mengharuskan proyek dipertahankan dengan baik.
Instalasi
pip install torchensemble
Contoh
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 Ansambel yang didukung
| Nama Ensemble | Jenis | Kode Sumber | Masalah |
|---|
| Fusi | Campur aduk | fusion.py | Klasifikasi / Regresi |
| Voting [1] | Paralel | voting.py | Klasifikasi / Regresi |
| Hutan saraf | Paralel | voting.py | Klasifikasi / Regresi |
| Mengantongi [2] | Paralel | Bagging.py | Klasifikasi / Regresi |
| Peningkatan gradien [3] | Berurutan | gradient_boosting.py | Klasifikasi / Regresi |
| Snapshot Ensemble [4] | Berurutan | snapshot_ensemble.py | Klasifikasi / Regresi |
| Pelatihan permusuhan [5] | Paralel | adversarial_training.py | Klasifikasi / Regresi |
| Ensemble geometris cepat [6] | Berurutan | fast_geometric.py | Klasifikasi / Regresi |
| Meningkatkan gradien lunak [7] | Paralel | soft_gradient_boosting.py | Klasifikasi / Regresi |
Dependensi
- scikit-learn> = 0.23.0
- obor> = 1.4.0
- TorchVision> = 0.2.2
Referensi
| [1] | Zhou, Zhi-hua. Metode Ensemble: Yayasan dan Algoritma. CRC Press, 2012. |
| [2] | Breiman, Leo. Prediktor mengantongi. Pembelajaran Mesin (1996): 123-140. |
| [3] | Friedman, Jerome H. Perkiraan fungsi serakah: mesin penambah gradien. Annals of Statistics (2001): 1189-1232. |
| [4] | Huang, Gao, dkk. Snapshot Ensemble: Train 1, dapatkan M gratis. ICLR, 2017. |
| [5] | Lakshminarayanan, Balaji, dkk. Estimasi ketidakpastian prediktif yang sederhana dan dapat diskalakan menggunakan ansambel dalam. Nips, 2017. |
| [6] | Garipov, Timur, dkk. Permukaan kehilangan, konektivitas mode, dan ensembling cepat DNNs. Neurips, 2018. |
| [7] | Feng, JI, dkk. Mesin penambah gradien lunak. Arxiv, 2020. |
Terima kasih untuk semua kontributor kami