DeiT
DeiT (Data-efficient image Transformer) adalah classifier Vision Transformer polos yang dilatih hanya pada ImageNet-1k, tanpa data pretraining tambahan. LibreYOLO menyediakan ukuran tiny, small dan base patch-16 sebagai koleksi museum yang dibekukan dan hanya untuk inferensi.
- Task
- classify
- Ukuran
- t, s, b at 224 px
- Instalasi
pip install libreyolo- Tier dukungan
- Arsip, sejak v. Pameran beku. Hanya perbaikan bug.
- Lisensi
- Kode Apache-2.0, bobot Apache-2.0. Penggunaan komersial
Instalasi
DeiT tidak memerlukan extra apa pun di luar paket dasar.
pip install libreyoloPrediksi
Family ini hanya untuk inferensi: train() memunculkan NotImplementedError,
jadi halaman ini tidak punya bagian Pelatihan. Prediksi, validasi dan ekspor
semuanya didukung. Bobot diunduh dari Hugging Face saat pertama kali dipakai dan
disimpan di cache lokal. Sufiks -cls pada nama berkas wajib ada dan memilih
task klasifikasi.
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreDeiTb-cls.pt")result = model(SAMPLE_IMAGE) print(result.probs.top1, result.probs.top1conf)print(result.probs.top5)libreyolo predict model=LibreDeiTb-cls.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpgObjek Results yang dikembalikan membawa tensor probs, bukan boxes; top1
dan top5 memberi indeks ke 1.000 kelas ImageNet-1k, sedangkan top1conf
adalah skor softmax untuk prediksi teratas. Setiap ukuran punya resolusi input
tetap yang berasal dari positional embedding-nya: praproses mengubah ukuran dan
melakukan center-crop ke resolusi tersebut, dan memberikan imgsz yang berbeda
akan memunculkan error alih-alih diam-diam melakukan resampling. Lihat
prediksi untuk sumber, streaming dan penanganan hasil.
Validasi
val() mengembalikan dictionary berisi akurasi top-1 dan top-5, diukur terhadap
dataset yang ditata dalam struktur folder konvensional train/<class>/ dan
val/<class>/.
from libreyolo import LibreYOLO model = LibreYOLO("LibreDeiTb-cls.pt")metrics = model.val(data="my-dataset.yaml") print(metrics["metrics/accuracy_top1"])print(metrics["metrics/accuracy_top5"])libreyolo val model=LibreDeiTb-cls.pt data=my-dataset.yamlEkspor
| 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 lewat LibreYOLO() berdasarkan sufiks
berkasnya, jadi berkas .onnx atau .engine berperilaku seperti checkpoint dan
mengembalikan Results yang sama. Menjalankan graph di runtime polos, tanpa
LibreYOLO terpasang, juga didukung, tetapi praproses dan pascaproses menjadi
tanggung jawab Anda.
from libreyolo import LibreYOLO model = LibreYOLO("LibreDeiTb-cls.pt")model.export(format="onnx")model.export(format="tensorrt", half=True)libreyolo export model=LibreDeiTb-cls.pt format=onnxlibreyolo export model=LibreDeiTb-cls.pt format=tensorrt half=Truefrom libreyolo import LibreYOLO, SAMPLE_IMAGE # Factory memilih rute berdasarkan sufiks berkas, jadi artefak hasil# ekspor dimuat seperti checkpoint biasa dan mengembalikan objek# Results yang sama.model = LibreYOLO("LibreDeiTb-cls.onnx")result = model(SAMPLE_IMAGE) print(result.probs.top1)Checkpoint
Semua berkas bobot yang dipublikasikan untuk family ini.
| Berkas | Input (piksel) | Lisensi bobot |
|---|---|---|
| classify | ||
| LibreDeiTt-cls.pt | 224 | apache-2.0 |
| LibreDeiTs-cls.pt | 224 | apache-2.0 |
| LibreDeiTb-cls.pt | 224 | apache-2.0 |
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
- DeiT, Meta Research
- Lisensi upstream
- Apache-2.0
- Sumber upstream
- github.com/facebookresearch/deit
- Kode LibreYOLO
- MIT
- Bobot
- Apache-2.0, dipublikasikan ulang di huggingface.co/LibreYOLO
- Interpretasi
- Apache-2.0 is a permissive license, so these weights can be used in commercial and closed-source products. It asks you to keep its license text and attribution notices with any copy of the weights you redistribute, and it grants a patent license. It places no obligation on your own application code, and weights you train yourself on your own data are yours. LibreYOLO ships the plain tiny, small and base patch-16 classifiers at fixed 224px only; the distillation-token, CaiT, DeiT III and 384px variants from the same repository are out of scope.
Sitasi
@InProceedings{pmlr-v139-touvron21a,
title = {Training data-efficient image transformers & distillation through attention},
author = {Touvron, Hugo and Cord, Matthieu and Douze, Matthijs and Massa, Francisco and Sablayrolles, Alexandre and Jegou, Herve},
booktitle = {International Conference on Machine Learning},
pages = {10347--10357},
year = {2021},
volume = {139},
month = {July}
}Disalin dari blok sitasi penulis di github.com/facebookresearch/deit#-model-zoo.