Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support perf result reference check for benchmark v2 #3096

Closed
wants to merge 243 commits into from

Conversation

goodsong81
Copy link
Contributor

Summary

  • Add reference data & check method
  • Support otx-ref which enables benchmarking other versions of otx on this repo
    image
  • Fix a few issues

How to test

Checklist

  • I have added unit tests to cover my changes.​
  • I have added integration tests to cover my changes.​
  • I have added e2e tests for validation.
  • I have added the description of my changes into CHANGELOG in my target branch (e.g., CHANGELOG in develop).​
  • I have updated the documentation in my target branch accordingly (e.g., documentation in develop).
  • I have linked related issues.

License

  • I submit my code changes under the same Apache License that covers the project.
    Feel free to contact the maintainers if that's a concern.
  • I have updated the license header for each file (see an example below).
# Copyright (C) 2023 Intel Corporation
# SPDX-License-Identifier: Apache-2.0

harimkang and others added 30 commits November 23, 2023 13:24
Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
* Init classification

* Wrap _get_img_data

* Edit detection part

* change the ignore folders

* Reflect reviews

* Fix wrong addition

* Reflect reviews

* Edit the ignore scope

* Decouple OTXModel from MMX frameworks

* Fix pre-commit

* Remove MMXCompatibleModel and make separate function

* Rename the function

* Rename the functions

* Fix precommit
* Edit pyproject.toml for packaging and installation & Add CLI class

* Add test_install test cases & fix description

* Fix install.py docstring style

* Align docsting types and replace tmp_dir_path to tmp_path
Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
* Fix coverage error

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
* Make subset_name configurable

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
* Make subset_name configurable

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Add tests

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Fix templates to enable test

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Add memory caching

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Revise to make it prettier

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Fix guide.md

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Fix SIGINT handler

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

---------

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
* Migrate Geti object detection models

* Resolve wrong labeling

* Additional hyper params tuning

* Resolve cli issues

* Remove duplicated codes

* Add packages for classification

* Change message to msg

* Change log method
* Fix warning from batch_size auto-inference failure

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Update unit test

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

---------

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
* Add Simple Integration test - CLI otx train

* Fix installation case without cuda/version.json

* Add classification overrides value
Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
…on (#2699)

Change docstring location and learning hyperparams
* added mmsegmentation as dependency

* fixed common_semantic_dataset

* fixed integration tests for segmentation

* fixed hard coded model loading. Changed metric

* add aditional dependency for segmentation

---------

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
Co-authored-by: Kim, Vinnam <vinnam.kim@intel.com>
* Add integration setting cfg into debug folder & Fix integration test to use os.system

* Replace os.system to main function

* Revert debug in TrainConfig

* mmsegmentation registry issue resolve
* Align callbacks

* Add segmentation callbacks
Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
* Add 'otx test' & initial commits

* Add setup_guide to otx_test & add GlobalHydra().clear() into train, test

* Replace GlobalHydra clear to with initialize
Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
* Initial commit for dinov2 implementation

* Add conftest

* Sync with the upstream

* Update test and add freeze, normalize

* Update tests

* Reflect reviews

* Remove num_classes at data preprocessor

* Edit the unit-test

* Remove useless data_preprocessor.num_classes

* mock the torch.hub.load, change the normalize

* Reflect reviews

---------

Co-authored-by: Vinnam Kim <vinnam.kim@intel.com>
…ion) (#2711)

* Add unit tests for algo

* Add unit tests for otx/core/data/

* Reflect latest PR

* Reflect reviews

* Set max_refetch
* add new inst-seg to new design

---------

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
Co-authored-by: Kim, Vinnam <vinnam.kim@intel.com>
Co-authored-by: jaegukhyun <jaeguk.hyun@intel.com>
Co-authored-by: Prokofiev Kirill <kirill.prokofiev@intel.com>
Co-authored-by: Harim Kang <harim.kang@intel.com>
* Update data config

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Add resizing to mem caching

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Fix

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Fix

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Fix

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Add example notebook

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Fix rebase conflicts

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Update docstring for custom resolvers

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Fix conflicts

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Add yaml config

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Fix test

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Rerun notebook

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Add example notebook for adding custom model

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Add more descriptions

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

* Remove manually not beautiful stdout from example

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>

---------

Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
* Change the cls head to make them same with the otx1.5

* Fix mis-input channel for mvn3

* Add light models to guarantee the backward compatibility

* Fix mis-channel of mvn3
Signed-off-by: Kim, Vinnam <vinnam.kim@intel.com>
eugene123tw and others added 24 commits March 11, 2024 09:32
* add rtmdet inst

* update recipe

* update rtmdet recipe

* reformat

* add pad_value
* Fix return's shape when all predicted masks are zero

* Swap order of prompts in segment_anything.py

* Enable to export segment anything modules respectively

* Update prompt order and refactoring

* Fix `return_single_mask` to True

* Add OVIR inference logic

* Updates for integration test

* precommit

* Update prompt getter

* (WIP) Update zero-shot

* (WIP) Internalize preprocess into model

* Update reference infos to buffer

* Update reference_info path

* Enable standalone infer logic

* Update location of `-load_latest_reference_info` for OVModel

* Update recipes

* Enable `infer` ov inference

* Enable standalone `infer` logic on OVModel

* precommit

* Update unittest

* Update for integration test

* precommit

* Fix

* Fix

* Fix

* Fix intg tests

* Enable to update `export_args` to `deploy_cfg`

* Update with walrus

* Update to use dict labels

* Change openvino model names

* Update compatibility with zero-shot

* Refactoring for unnecessary assigned variables

* Avoid repeatedly executing `torch.cat`

* precommit

* Fix unit test

* Update variable name

* Add `example_inputs` in anomaly

* Fix unit test

* Fix

* Update `model_names` for visual prompting

* precommit

* Not to include other params in `example_inputs`

* Disable condition for visual prompting

* Update to `example_inputs`

* Remove unused kwargs

* Update

* Remove unused parts

* Update exported models' names

* Remove `example_inputs`

* Add `OTXVisualPromptingModelExporter`

* Update overlapped region refinement

* Update `export_params`

* Enable optimize

* Add exportable code, but updating `demo.py` is required

* Update model_type

* Fix integration test
…HLabelInfo (#3046)

* Initial commit

* Add function: add ancestor

* Integrate HLabelData and HLabelInfo

* Add unit-test for _add_ancestor func

* Fix invalid names

* Fix precommit

* Fix hlabel{

* Add type checking

* enlarge the threshold

* Fix intg test
* Evauate exported models

* Evaluate optimized models

* Fix metric names

* Fix --model.model_name to --checkpoint for 'otx optimize' input

* Refactor date string tag

* Log metric to MLFlow

* Merge accuracy & efficiency tests

* Fix pre-commit

* Add per-task summary to csv output

* Fix default num_repeat to 5 for all data sizes

* Fix pre-commit

* Add train/e2e_time & train/epoch criteria

* Fix pre-commit

* Fix pre-commit
…eduler and update warmup_step logic (#3060)

* Edit the default factor for lr scheduler and update warmup_step logic

* Edit the warmup logic, update the lr shceduler patience

* Fix unit tests

* Fix the logic

* Fix the logic

* Fix precommit
* update recipes

* add inst seg to module

* revert recipe changes

* udpate

* update pred_step

* update predict_step

* add predict in api test
* add dependabot config
* fix bug on tox.ini
* update for resolving security issues

* add dependencies for installing pypa/build

* fix pip install command in dockerfile
bump mlflow version to 2.11.1
* Add MoViNet

* Add regression test

* Add unit tests

* Modify unit test
* Add Anomaly intg test

* Fix anoamly integration test

* Fix unit-test

* Revert lower torchmetric things

* Fix export tests

* Fix anomalib version to hot-fix commit

* Fix anomalib issues

* Fix tox.ini

* Update otx_efficientnet_v2.yaml
add docs workflow for latest & testing
* Initial commit for documentation

* Fix typo

* Fix api tutorials

* Fix anomaly task part

* Fix typo train_config to train_subset

* Re-Rocate of api tutorial & write config file explain

* Fix wrong path in api_tutorial

* Change index to grid

* Fix tox build-docs

* Change tabs to tab-set
* Initial commit

* Add the logic for auto hlabel information

* Fix precommit
@github-actions github-actions bot added DEPENDENCY Any changes in any dependencies (new dep or its version) should be produced via Change Request on PM TEST Any changes in tests BUILD labels Mar 14, 2024
@goodsong81 goodsong81 changed the base branch from v2 to develop March 15, 2024 00:45
@goodsong81 goodsong81 closed this Mar 15, 2024
@goodsong81 goodsong81 deleted the test/perf-check-ref-v2 branch March 15, 2024 05:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BUILD DEPENDENCY Any changes in any dependencies (new dep or its version) should be produced via Change Request on PM TEST Any changes in tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.