Swin Transformer
Swin Transformer V1: vision transformer hierarkis yang menghitung attention di dalam window lokal bergeser, bukan di seluruh gambar. LibreYOLO menyediakan empat ukuran untuk klasifikasi gambar.
- Task
- classify
- Ukuran
- t, s, b, l at 224 px
- Instalasi
pip install libreyolo- Tier dukungan
- Hanya inferensi, sejak v. Hanya prediksi, validasi, dan ekspor. Fitur pelatihan tidak berlaku.
- Lisensi
- Kode Apache-2.0, bobot MIT. Penggunaan komersial
Instalasi
Swin tidak memerlukan komponen tambahan opsional. Semua impornya tersedia dalam instalasi dasar.
pip install libreyoloPrediksi
Bobot diunduh dari Hugging Face saat pertama kali digunakan dan disimpan dalam cache lokal.
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreSwint-cls.pt")result = model(SAMPLE_IMAGE, save=True) probs = result.probsprint(probs.top1, probs.top1conf)print(probs.top5, probs.top5conf)libreyolo predict model=LibreSwint-cls.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=TruePengklasifikasi mengembalikan result.probs, bukan result.boxes: top1 dan top5
memberikan indeks kelas, sedangkan top1conf dan top5conf memberikan confidence-nya.
Setiap ukuran ditetapkan pada input 224px karena tahap attention akhir dibuat untuk resolusi
tersebut; prediksi, validasi, dan ekspor semuanya memunculkan error jika imgsz berbeda
diteruskan. Lihat prediksi untuk sumber, streaming, dan penanganan hasil.
Varian
Empat ukuran, tiny hingga large, dibuat dari tower shifted-window yang sama dan berbeda dalam lebar embedding serta kedalaman tahap. Large di-pretrain pada ImageNet-22k dan dilakukan fine-tuning pada ImageNet-1k; tiga lainnya dilatih langsung pada ImageNet-1k. LibreYOLO menyediakan family ini khusus untuk inferensi: prediksi, validasi top-1/top-5 bergaya ImageNet, dan ekspor didukung, sedangkan resep pelatihan ImageNet upstream tidak diimplementasikan.
Validasi
val() berjalan terhadap split bergaya ImageFolder (direktori dengan subfolder train/
dan val/, satu folder per kelas) dan mengembalikan akurasi top-1 dan top-5.
from libreyolo import LibreYOLO model = LibreYOLO("LibreSwint-cls.pt") # data adalah root direktori dengan split folder kelas train/ dan val/# (tata letak ImageFolder), bukan YAML dataset.metrics = model.val(data="imagenet-1k/") print(metrics["metrics/accuracy_top1"])print(metrics["metrics/accuracy_top5"])libreyolo val model=LibreSwint-cls.pt data=imagenet-1k/Ekspor
| Task | ONNX | TorchScript | ExecuTorch | TensorRT | OpenVINO | Paddle | MNN | RKNN | ncnn | TFLite | CoreML | Core AI |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| classify | classify to ONNX: didukung | classify to TorchScript: didukung | classify to ExecuTorch: didukung | classify to TensorRT: didukung | classify to OpenVINO: didukung | classify to Paddle: tidak didukung | classify to MNN: tidak didukung | classify to RKNN: tidak didukung | classify to ncnn: didukung | classify to TFLite: tidak didukung | classify to CoreML: tidak didukung | classify to Core AI: tidak didukung |
Artefak hasil ekspor dimuat kembali melalui LibreYOLO() berdasarkan sufiks berkasnya,
sehingga berkas .onnx atau .engine berperilaku seperti checkpoint dan mengembalikan
Results yang sama. Ekspor mencantumkan argumen yang diterima setiap format
beserta komponen tambahan yang disediakan beberapa format.
from libreyolo import LibreYOLO model = LibreYOLO("LibreSwint-cls.pt")model.export(format="onnx")model.export(format="tensorrt", half=True)libreyolo export model=LibreSwint-cls.pt format=onnxlibreyolo export model=LibreSwint-cls.pt format=tensorrt half=Truefrom libreyolo import LibreYOLO, SAMPLE_IMAGE # Factory merutekan berdasarkan sufiks berkas, sehingga artefak hasil ekspor# dimuat seperti checkpoint lain dan mengembalikan objek Results yang sama.model = LibreYOLO("LibreSwint-cls.onnx")result = model(SAMPLE_IMAGE) print(result.probs.top1)Checkpoint
Setiap berkas bobot yang dipublikasikan untuk family ini.
| Berkas | Input (piksel) | Lisensi bobot |
|---|---|---|
| classify | ||
| LibreSwint-cls.pt | 224 | mit |
| LibreSwins-cls.pt | 224 | mit |
| LibreSwinb-cls.pt | 224 | mit |
| LibreSwinl-cls.pt | 224 | mit |
Setiap berkas di atas saat ini tersedia di organisasi LibreYOLO dan diunduh saat pertama kali digunakan.
Lisensi
Periksa lisensi di repositori Hugging Face untuk bobot tertentu yang diunduh. Setiap checkpoint di organisasi LibreYOLO memiliki lisensi, dan lisensinya tidak selalu sama dalam satu family. Repositori tersebut adalah sumber resmi. Ringkasan di bawah menjelaskan ketentuan yang berlaku saat halaman ini terakhir diverifikasi.
Ini adalah deskripsi lisensi yang terlibat, bukan nasihat hukum. Jika jawabannya penting secara komersial, baca sendiri lisensinya dan mintalah nasihat dari penasihat hukum Anda.
- Karya asli
- Swin Transformer, Microsoft Research
- Lisensi upstream
- MIT
- Sumber upstream
- github.com/microsoft/Swin-Transformer
- Kode LibreYOLO
- MIT
- Bobot
- MIT, dipublikasikan ulang di huggingface.co/LibreYOLO
- Interpretasi
- MIT is a permissive license, so these weights can be used in commercial and closed-source products. It asks only that you keep the license text and copyright notice with any copy you redistribute, and it carries no explicit patent grant. LibreYOLO's runtime code for this family is a derived port of the Apache-2.0 timm Swin implementation (Ross Wightman, huggingface/pytorch-image-models), kept parameter-name compatible so the tensors load unchanged; the four released Tiny/Small/Base/Large checkpoints are Microsoft's own MIT-licensed patch-4/window-7 classifiers. Code and weights therefore sit under two different permissive licenses, both of which allow commercial use.
Sitasi
@inproceedings{liu2021Swin,
title={Swin Transformer: Hierarchical Vision Transformer using Shifted Windows},
author={Liu, Ze and Lin, Yutong and Cao, Yue and Hu, Han and Wei, Yixuan and Zhang, Zheng and Lin, Stephen and Guo, Baining},
booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)},
year={2021}
}Disalin dari blok sitasi penulis di github.com/microsoft/Swin-Transformer#citing-swin-transformer.