Neelesh-Babu commited on
Commit
b3f2a3f
·
verified ·
1 Parent(s): 91e5f78

Match approved DINO minimal schema-v3 public package layout

Browse files
README.md CHANGED
@@ -1,99 +1,96 @@
1
  ---
2
- pipeline_tag: image-feature-extraction
3
  tags:
4
  - eidora
5
  - eidora-model-zoo
6
  - onnx
7
  - onnxruntime
8
- - image
9
  - embeddings
 
 
10
  - alexnet
11
- - imagenet
12
  ---
13
 
14
  # AlexNet Image Light
15
 
16
- AlexNet Image Light is a light image embedding model kept mainly as a reproducible baseline for comparing how older CNN features organize cultural image collections.
17
-
18
- ## Source and provenance
19
-
20
- - Base model/checkpoint: `torchvision/alexnet-imagenet1k-v1`
21
- - Source: https://pytorch.org/vision/stable/models/generated/torchvision.models.alexnet.html
22
- - Original model: AlexNet
23
- - Architecture paper: https://proceedings.neurips.cc/paper/2012/hash/c399862d3b9d6b76c8436e924a68c45b-Abstract.html
24
- - Training data: ImageNet-1K
25
-
26
- ## EIDORA package
27
-
28
- - Package schema: `3` (Desktop preparation implementation `1`)
29
- - Declared providers: `CPUExecutionProvider`
30
- - Provider declarations require certification in validation-report.json before publication.
31
- - Preparation runs in EIDORA; exposed defaults are recommended, alternatives are not equivalent-quality claims.
32
- - Modality: `image`
33
- - Embedding dimensions: `4096`
34
- - Normalized: `true`
35
- - Similarity: `cosine`
36
-
37
- ## Preparation
38
-
39
- ```yaml
40
- width: 224
41
- height: 224
42
- layout: NCHW
43
- resize: short_edge_crop
44
- interpolation: bilinear
45
- rescale: 0.00392156862745098
46
- mean:
47
- - 0.485
48
- - 0.456
49
- - 0.406
50
- std:
51
- - 0.229
52
- - 0.224
53
- - 0.225
54
- alpha_background:
55
- - 0
56
- - 0
57
- - 0
58
- short_edge: 256
59
- parameters:
60
- resize:
61
- default: short_edge_crop
62
- choices:
63
- - stretch
64
- - fill_crop
65
- - fit_pad
66
- - short_edge_crop
67
- interpolation:
68
- default: bilinear
69
- choices:
70
- - nearest
71
- - bilinear
72
- - bicubic
73
- - lanczos
74
- crop_position:
75
- default: center
76
- short_edge:
77
- default: 256
78
- minimum: 224
79
- maximum: 2048
80
- ```
81
 
82
- ## Intended use
83
 
84
- - Baseline comparisons against newer image embedding models.
85
- - Teaching, debugging, and validating the EIDORA ONNX conversion workflow.
86
- - Projects where compatibility and a simple architecture matter more than representation quality.
 
 
 
 
 
 
 
 
87
 
88
  ## Limitations
89
 
90
- AlexNet is an older supervised ImageNet model. Its embedding geometry reflects ImageNet categories and may not align with culturally meaningful distinctions. Use it mainly as a baseline and compare it with ResNet, DINO, and CLIP on the target collection.
 
 
 
 
 
 
 
 
91
 
92
- ## License and attribution
93
 
94
- Converted from TorchVision AlexNet weights; verify pretrained-weight redistribution terms before publishing the ONNX artifact.
95
 
96
- ## Citation
 
 
97
 
98
  ```bibtex
99
  @inproceedings{krizhevsky2012imagenet,
@@ -103,3 +100,22 @@ Converted from TorchVision AlexNet weights; verify pretrained-weight redistribut
103
  year={2012}
104
  }
105
  ```
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
+ pipeline_tag: feature-extraction
3
  tags:
4
  - eidora
5
  - eidora-model-zoo
6
  - onnx
7
  - onnxruntime
 
8
  - embeddings
9
+ - image
10
+ - modality:image
11
  - alexnet
 
12
  ---
13
 
14
  # AlexNet Image Light
15
 
16
+ AlexNet is a convolutional image model from the ImageNet classification era. This EIDORA adaptation extracts a 4096-dimensional feature vector from its classifier rather than returning class probabilities.
17
+
18
+ ## Training Data and Checkpoint Provenance
19
+
20
+ - **Architecture:** AlexNet convolutional network with fully connected classifier.
21
+ - **Original checkpoint:** [torchvision/alexnet-imagenet1k-v1](https://pytorch.org/vision/stable/models/generated/torchvision.models.alexnet.html).
22
+ - **Weight variant:** `IMAGENET1K_V1` ([TorchVision download](https://download.pytorch.org/models/alexnet-owt-7be5be79.pth)).
23
+ - **Training data:** ImageNet-1K
24
+ - **Training method:** Supervised image classification.
25
+ - **Source:** AlexNet (original author attribution retained).
26
+
27
+ ## Model Overview
28
+
29
+ - **Model:** AlexNet Image Light
30
+ - **EIDORA identifier:** `eidora/image-alexnet-imagenet-light`
31
+ - **Modality:** Image
32
+ - **Embedding dimensions:** 4096
33
+ - **Embedding normalization:** L2-normalized
34
+ - **Similarity measure:** Cosine similarity
35
+ - **Package schema:** Version 3
36
+ - **Model version:** `0.1.0`
37
+
38
+ ## EIDORA Use and Supported Modalities
39
+
40
+ **Supported modality:** Images only.
41
+
42
+ Researchers can use this package to:
43
+
44
+ - Use a familiar CNN baseline when comparing image embedding models.
45
+ - Explore simple visual similarity and clustering in an image collection.
46
+ - Compare older CNN features with ResNet, DINO and CLIP.
47
+
48
+ ## Input and Preprocessing
49
+
50
+ EIDORA prepares the image before inference:
51
+
52
+ 1. Convert to RGB.
53
+ 2. Resize the shorter side to 256 pixels, then take a center crop of **224 × 224**.
54
+ 3. Use **bilinear** interpolation. Use **truncate** dimension rounding.
55
+ 4. Rescale by `0.00392156862745098` and normalize each RGB channel.
56
+ 5. Arrange the tensor in `NCHW` layout and pass `float32` `pixel_values` with shape `[batch, 3, 224, 224]`.
57
+
58
+ **Mean:** `[0.485, 0.456, 0.406]`
59
+ **Standard deviation:** `[0.229, 0.224, 0.225]`
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
60
 
61
+ Normalization is performed by EIDORA and should not be applied a second time. The defaults in `config.yaml` determine the documented embedding behavior; alternate settings may change the vectors.
62
 
63
+ ## Output Embeddings
64
+
65
+ The ONNX output is `float32` with shape `['batch', 4096]`. Each vector has **4096 dimensions**, is **L2-normalized**, and is intended for **cosine similarity** comparisons.
66
+
67
+ EIDORA retains the pretrained image network and extracts features from the second fully connected layer after ReLU, followed by L2 normalization.
68
+
69
+ ## Runtime and Compatibility
70
+
71
+ The package uses `model.onnx` and schema-v3 runtime declarations for image preparation and embedding output.
72
+
73
+ It declares **`CPUExecutionProvider`**. Actual execution availability depends on the installed ONNX Runtime and EIDORA Desktop environment. `config.yaml` is authoritative for graph inputs, preprocessing, provider and embedding dimensions.
74
 
75
  ## Limitations
76
 
77
+ - The model was trained for ImageNet classification, not cultural or historical interpretation.
78
+ - CNN feature proximity does not establish common authorship, identity or meaning.
79
+ - Other image resize settings may produce different embeddings.
80
+
81
+ Results should be evaluated against the intended research data and questions.
82
+
83
+ ## Research Context and References
84
+
85
+ ### Main paper
86
 
87
+ **ImageNet Classification with Deep Convolutional Neural Networks**
88
 
89
+ Paper: https://proceedings.neurips.cc/paper/2012/hash/c399862d3b9d6b76c8436e924a68c45b-Abstract.html
90
 
91
+ The publication describes the upstream learning method and original model. The embeddings returned by EIDORA additionally depend on the specific preprocessing and output adaptation documented here.
92
+
93
+ ### Primary citation (BibTeX)
94
 
95
  ```bibtex
96
  @inproceedings{krizhevsky2012imagenet,
 
100
  year={2012}
101
  }
102
  ```
103
+
104
+ ## License and Attribution
105
+
106
+ The TorchVision software library uses BSD-3-Clause terms. This does not by itself assign those terms to the pretrained ImageNet weights. The linked TorchVision model documentation does not establish a separate license for these pretrained weights. No weight-license identifier is asserted here. The ONNX graph contains converted weights from TorchVision. EIDORA does not claim authorship of the original model.
107
+
108
+ No separate upstream checkpoint `LICENSE` file was supplied in the captured EIDORA repository; that absence should not be interpreted as permission or prohibition.
109
+
110
+ ## Package Information
111
+
112
+ - **Model repository:** `EIDORA/AlexNet_IN1k`
113
+ - **Package version:** `0.1.0`
114
+ - **Package schema:** `3`
115
+ - **EIDORA configuration:** `config.yaml`
116
+ - **ONNX graph(s):** `model.onnx`
117
+ - **Supported modality:** Image
118
+ - **License identifier:** `other`
119
+ - **Declared provider:** CPUExecutionProvider
120
+
121
+ The configuration defines the authoritative model-facing runtime contract. Other packaged assets, where present, do not introduce additional inference modalities.
config.yaml CHANGED
@@ -11,30 +11,9 @@ bibtex: "@inproceedings{krizhevsky2012imagenet,\n title={ImageNet Classificatio
11
  compatibility:
12
  min_eidora_version: 0.1.0
13
  artifacts:
14
- - path: conversion_report.json
15
- sha256: a7f417fc4d8969b4682b96fda6ad6863cebab4f89adb48d1998bfde6b926abbd
16
- role: asset
17
  - path: model.onnx
18
  sha256: deea3812842a09731d3a9ddc88dcace1049d1b39cafd25a902a39437b9b239a5
19
  role: graph
20
- - path: validation.yaml
21
- sha256: 18b12ddef178c1cf77334dde9e101c228c4b8c88ade6ed2f0eef3fc4d8f2bbb4
22
- role: asset
23
- - path: validation/embedding.npy
24
- sha256: 990d9316a16850630befdd0ec9cfe5584e6ac441302d87fb68a7c4adde2cfa33
25
- role: asset
26
- - path: validation/photo.png
27
- sha256: 1d70a03fc99c16e3aa674dbb9c7a8d0c127b45e1cf416118131451932b2f2389
28
- role: asset
29
- - path: validation/pixels.npy
30
- sha256: f559af24acc89a03d8d1b1b59037d301fcb4d77ab8bea2e0e64d355a226abc8b
31
- role: asset
32
- - path: validation/random_image.npy
33
- sha256: 2e7b24b32c98c0ae8c05f508b9b037c6c3e51b0ba35405e5f2594604c3acbf48
34
- role: asset
35
- - path: validation/source_parity.json
36
- sha256: 7b5f9e26cae0535eebff345800ffab3c5aaf2d9b4f228a6e4a71cf2e8bbf9756
37
- role: asset
38
  runtime:
39
  graph: model.onnx
40
  inputs:
 
11
  compatibility:
12
  min_eidora_version: 0.1.0
13
  artifacts:
 
 
 
14
  - path: model.onnx
15
  sha256: deea3812842a09731d3a9ddc88dcace1049d1b39cafd25a902a39437b9b239a5
16
  role: graph
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
  runtime:
18
  graph: model.onnx
19
  inputs:
conversion_report.json DELETED
@@ -1,18 +0,0 @@
1
- {
2
- "converter": "torchvision_alexnet",
3
- "embedding_dimensions": 4096,
4
- "input_name": "pixel_values",
5
- "opset": 17,
6
- "output_name": "embedding",
7
- "schema_version": 1,
8
- "source_framework": "pytorch",
9
- "source_vs_onnx": {
10
- "atol": 0.0001,
11
- "max_abs_error": 1.043081283569336e-07,
12
- "mean_abs_error": 1.883620370790595e-09,
13
- "onnxruntime_version": "1.30.0",
14
- "rtol": 0.001,
15
- "status": "passed"
16
- },
17
- "torch_version": "2.14.0+cu130"
18
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
validation-report.json DELETED
@@ -1,26 +0,0 @@
1
- {
2
- "desktop_version": "0.2.0",
3
- "schema_version": 3,
4
- "preparation_version": 2,
5
- "providers": {
6
- "CPUExecutionProvider": {
7
- "status": "passed",
8
- "fixture_runs": 19,
9
- "scope": "session provider chain; CPU graph-node support allowed",
10
- "environment": {
11
- "onnxruntime": "1.31.0",
12
- "platform": "Linux-7.0.0-38-generic-x86_64-with-glibc2.43",
13
- "python": "3.13.16 (main, Oct 9 2026, 15:23:36) [Clang 22.1.3 ]"
14
- }
15
- }
16
- },
17
- "environment": {
18
- "onnxruntime": "1.31.0",
19
- "platform": "Linux-7.0.0-38-generic-x86_64-with-glibc2.43",
20
- "python": "3.13.16 (main, Oct 9 2026, 15:23:36) [Clang 22.1.3 ]"
21
- },
22
- "publication_ready": true,
23
- "validation_sha256": "df0c747d8cd0734a8dcad20da6afe6f74d437b51e431845f633577e714074167",
24
- "contract_sha256": "65c20b19452a5cedc6874434d8379a280d6c9b4343a4deab6d9772d93ee8d6b0",
25
- "package_sha256": "5dbe16d8f71ed8ce5c6507a74faeed81a02b3de3d98e1fe588c54ed4ad839093"
26
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
validation.yaml DELETED
@@ -1,21 +0,0 @@
1
- diagnostic_fixtures:
2
- - id: random_image
3
- path: validation/random_image.npy
4
- input_shape:
5
- - 1
6
- - 3
7
- - 224
8
- - 224
9
- expected_shape:
10
- - 1
11
- - 4096
12
- seed: 17
13
- fixtures:
14
- - modality: image
15
- path: validation/photo.png
16
- expected_tensors:
17
- pixel_values: validation/pixels.npy
18
- expected_vectors: validation/embedding.npy
19
- note: Publication requires real-media fixtures with source-reference expected_tensors
20
- and expected_vectors, copied using assets. Synthetic diagnostic fixtures do not
21
- certify compatibility.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
validation/embedding.npy DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:990d9316a16850630befdd0ec9cfe5584e6ac441302d87fb68a7c4adde2cfa33
3
- size 16512
 
 
 
 
validation/photo.png DELETED

Git LFS Details

  • SHA256: 1d70a03fc99c16e3aa674dbb9c7a8d0c127b45e1cf416118131451932b2f2389
  • Pointer size: 131 Bytes
  • Size of remote file: 303 kB
validation/pixels.npy DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:f559af24acc89a03d8d1b1b59037d301fcb4d77ab8bea2e0e64d355a226abc8b
3
- size 602240
 
 
 
 
validation/random_image.npy DELETED
@@ -1,3 +0,0 @@
1
- version https://git-lfs.github.com/spec/v1
2
- oid sha256:2e7b24b32c98c0ae8c05f508b9b037c6c3e51b0ba35405e5f2594604c3acbf48
3
- size 602240
 
 
 
 
validation/source_parity.json DELETED
@@ -1,15 +0,0 @@
1
- {
2
- "model": "alexnet",
3
- "source_checkpoint": "IMAGENET1K_V1",
4
- "image_sha256": "1d70a03fc99c16e3aa674dbb9c7a8d0c127b45e1cf416118131451932b2f2389",
5
- "onnx_sha256": "deea3812842a09731d3a9ddc88dcace1049d1b39cafd25a902a39437b9b239a5",
6
- "preprocessing_max_abs_error": 7.152557373046875e-07,
7
- "embedding_max_abs_error": 1.7695128917694092e-07,
8
- "cosine_similarity": 1.0000001192092896,
9
- "output_shape": [
10
- 1,
11
- 4096
12
- ],
13
- "source": "TorchVision pretrained model",
14
- "status": "passed"
15
- }