AlexNet
AlexNet è la rete convoluzionale che ha vinto ILSVRC 2012 e ha contribuito ad aprire l'era del deep learning nella computer vision. LibreYOLO distribuisce la revisione successiva dell'architettura, a torre singola, per la classificazione di immagini.
- Task
- classify
- Dimensioni
- b at 224 px
- Installa
pip install libreyolo- Livello di supporto
- Solo inferenza, dalla v. Solo predizione, validazione ed esportazione. Le funzionalità di addestramento non si applicano.
- Licenze
- Codice BSD-3-Clause, pesi BSD-3-Clause. Uso commerciale
Installazione
AlexNet non richiede nessun extra opzionale. Tutto ciò che importa è già nell'installazione di base.
pip install libreyoloPredizione
I pesi vengono scaricati da Hugging Face al primo utilizzo e restano nella cache locale.
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreAlexNetb-cls.pt")result = model(SAMPLE_IMAGE, save=True) probs = result.probsprint(probs.top1, probs.top1conf)print(probs.top5, probs.top5conf)libreyolo predict model=LibreAlexNetb-cls.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=TrueUn classificatore restituisce result.probs invece di result.boxes: top1
e top5 danno gli indici delle classi, top1conf e top5conf le rispettive
confidenze. Vedi predizione per sorgenti, streaming e
gestione dei risultati.
Varianti
Una sola dimensione. Il grafo distribuito è la revisione successiva a torre singola rilasciata da torchvision, con 64 filtri nel primo layer e senza local response normalization, non l'architettura originale del 2012 a due GPU. LibreYOLO distribuisce questa famiglia solo per l'inferenza: predizione, validazione top-1/top-5 in stile ImageNet ed esportazione sono supportate, mentre il fine-tuning non è implementato.
Validazione
val() gira su uno split in stile ImageFolder (una directory con sottocartelle
train/ e val/, una cartella per classe) e restituisce l'accuratezza top-1 e
top-5.
from libreyolo import LibreYOLO model = LibreYOLO("LibreAlexNetb-cls.pt") # data è la directory radice con gli split train/ e val/ in cartelle# per classe (layout ImageFolder), non uno YAML del dataset.metrics = model.val(data="imagenet-1k/") print(metrics["metrics/accuracy_top1"])print(metrics["metrics/accuracy_top5"])libreyolo val model=LibreAlexNetb-cls.pt data=imagenet-1k/Esportazione
| Task | ONNX | TorchScript | ExecuTorch | TensorRT | OpenVINO | Paddle | MNN | RKNN | ncnn | TFLite | CoreML | Core AI |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| classify | classify to ONNX: supportato | classify to TorchScript: supportato | classify to ExecuTorch: supportato | classify to TensorRT: supportato | classify to OpenVINO: supportato | classify to Paddle: non supportato | classify to MNN: non supportato | classify to RKNN: non supportato | classify to ncnn: supportato | classify to TFLite: non supportato | classify to CoreML: non supportato | classify to Core AI: non supportato |
Un artefatto esportato si ricarica con LibreYOLO() in base al suffisso del
file, quindi un file .onnx o .engine si comporta come un checkpoint e
restituisce lo stesso Results. Esportazione elenca gli
argomenti accettati da ogni formato e gli extra che alcuni di essi aggiungono.
from libreyolo import LibreYOLO model = LibreYOLO("LibreAlexNetb-cls.pt")model.export(format="onnx")model.export(format="tensorrt", half=True)libreyolo export model=LibreAlexNetb-cls.pt format=onnxlibreyolo export model=LibreAlexNetb-cls.pt format=tensorrt half=Truefrom libreyolo import LibreYOLO, SAMPLE_IMAGE # La factory smista in base al suffisso del file, quindi un artefatto# esportato si carica come qualsiasi checkpoint e restituisce lo stesso# oggetto Results.model = LibreYOLO("LibreAlexNetb-cls.onnx")result = model(SAMPLE_IMAGE) print(result.probs.top1)Checkpoint
Tutti i file di pesi pubblicati per questa famiglia.
| File | Ingresso (px) | Licenza dei pesi |
|---|---|---|
| classify | ||
| LibreAlexNetb-cls.pt | 224 | bsd-3-clause |
Oggi tutti i file elencati sopra sono presenti nell<link>organizzazione LibreYOLO</link> e vengono scaricati al primo utilizzo.
Licenze
Controlla la licenza nel repository Hugging Face degli specifici pesi che scarichi. Ogni checkpoint nell<link>organizzazione LibreYOLO</link> ne include una e non è sempre la stessa per tutta la famiglia. Quel repository è la fonte autorevole; il riepilogo seguente descrive le condizioni applicabili al momento dellultima verifica di questa pagina.
Questa è una descrizione delle licenze coinvolte, non una consulenza legale. Se la risposta è importante a fini commerciali, leggi personalmente le licenze e chiedi una consulenza indipendente.
- Lavoro originale
- AlexNet, University of Toronto
- Licenza upstream
- BSD-3-Clause
- Sorgente upstream
- github.com/pytorch/vision
- Codice LibreYOLO
- MIT
- Pesi
- BSD-3-Clause, ripubblicati su huggingface.co/LibreYOLO
- Interpretazione
- BSD-3-Clause is a permissive license, so these weights can be used in commercial and closed-source products. It asks you to keep the copyright notice, the list of conditions and the disclaimer with any copy you redistribute, and it forbids using the contributors' names to endorse a derived product without permission; it carries no explicit patent grant. LibreYOLO's code and the shipped checkpoint are both derived from torchvision's single-tower AlexNet, the later "one weird trick" graph, not the original two-GPU 2012 model, and no code from the 2012 paper's authors is republished here. Torchvision itself notes that BSD-3-Clause redistribution of a pretrained checkpoint is an implied basis rather than a grant written for that specific checkpoint, and that pretrained-model terms can depend on the data a model was trained on; LibreYOLO repeats that caveat on the hosted weights repository.