Conversation
Authored with OpenAI Codex.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add a task-led Learning Path for fine-tuning DeiT-Tiny on Oxford-IIIT Pet, exporting a quantized VGF-backed ExecuTorch program, and classifying real pet images with the existing host runner. The workflow pins public ExecuTorch revision
9dfe4086846ad372b8b78976586ee1857a0c6d13and does not change the upstream example.Review the pages in learning order: workflow, environment preparation, training, export, and real-image inference/validation. Then review
deit_vgf_helper.py, the downloadable Learning Path helper for checkpoint-format compatibility, input preparation, prediction decoding, and stale-result protection. There are no generated models, logs, or build artifacts in this PR.Validation
Functional E2E testing passed in a fresh Ubuntu 24.04 aarch64 container with Python 3.12, fresh Python/native builds, and ML SDK 0.10.0. Testing caught and corrected the setup directory name: the pinned ExecuTorch build requires the checkout to be named
executorch.The complete three-epoch training run and evaluation on 3,669 test images passed, reporting 86.81% FP32 accuracy. All 200 tensors in the helper-generated checkpoint exactly match the original trained weights. Export completed with 300 calibration images and 100 quantized PyTorch evaluation images, reporting 90% accuracy on that subset. These different evaluation sets are not a before/after quantization comparison.
The exported program executed through VGF on two real images (Newfoundland and Pug). Both produced 37 finite scores and matched the dataset label and FP32 winning class. Preparing the second image correctly caused inspection of the old output to fail until inference was rerun. Hugo builds with and without draft content passed, as did preview navigation and helper-download checks.
Limitations and review status
Execution used Mesa llvmpipe software Vulkan in Docker on Apple Silicon, not a physical GPU. This does not establish Arm GPU compatibility or performance. The upstream setup leaves a FlatBuffers dependency-version inconsistency and missing optional Model Explorer dependencies; the full documented flow passed without working around them.
Source
draft: trueand cascading draft metadata are retained under the repository's intake guidance until technical and editorial review is complete. This PR is ready for review, not a request to bypass publication review.Authored with AI assistance using OpenAI Codex.
Contribution checklist
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution under the terms of the Creative Commons Attribution 4.0 International License.