Files
openvino/docs/optimization_guide/model_optimization_guide.md

35 lines
1.9 KiB
Markdown
Raw Normal View History

# Model Optimization Guide {#openvino_docs_model_optimization_guide}
@sphinxdirective
.. toctree::
:maxdepth: 1
:hidden:
pot_README
docs_nncf_introduction
Perf Hints docs and General Opt Guide refactoring (#10815) * Brushed the general optimization page * Opt GUIDE, WIP * perf hints doc placeholder * WIP * WIP2 * WIP 3 * added streams and few other details * fixed titles, misprints etc * Perf hints * movin the runtime optimizations intro * fixed link * Apply suggestions from code review Co-authored-by: Tatiana Savina <tatiana.savina@intel.com> * some details on the FIL and other means when pure inference time is not the only factor * shuffled according to general->use-case->device-specifics flow, minor brushing * next iter * section on optimizing for tput and latency * couple of links to the features support matrix * Links, brushing, dedicated subsections for Latency/FIL/Tput * had to make the link less specific (otherwise docs compilations fails) * removing the Temp/Should be moved to the Opt Guide * shuffled the tput/latency/etc info into separated documents. also the following docs moved from the temp into specific feature, general product desc or corresponding plugins - openvino_docs_IE_DG_Model_caching_overview - openvino_docs_IE_DG_Int8Inference - openvino_docs_IE_DG_Bfloat16Inference - openvino_docs_OV_UG_NoDynamicShapes * fixed toc for ov_dynamic_shapes.md * referring the openvino_docs_IE_DG_Bfloat16Inference to avoid docs compilation errors * fixed main product TOC, removed ref from the second-level items * reviewers remarks * reverted the openvino_docs_OV_UG_NoDynamicShapes * reverting openvino_docs_IE_DG_Bfloat16Inference and openvino_docs_IE_DG_Int8Inference * "No dynamic shapes" to the "Dynamic shapes" as TOC * removed duplication * minor brushing * Caching to the next level in TOC * brushing * more on the perf counters ( for latency and dynamic cases) Co-authored-by: Tatiana Savina <tatiana.savina@intel.com>
2022-03-17 11:09:13 +03:00
openvino_docs_IE_DG_Int8Inference
@endsphinxdirective
Model optimization assumes applying transformations to the model and relevant data flow to improve the inference performance. These transformations are basically offline and can require the availability of training and validation data. It includes such methods as quantization, pruning, preprocessing optimization, etc. OpenVINO provides several tools to optimize models at different steps of model development:
- **Post-training Optimization tool [(POT)](../../tools/pot/README.md)** is designed to optimize the inference of deep learning models by applying post-training methods that do not require model retraining or fine-tuning, like post-training quantization.
- **Neural Network Compression Framework [(NNCF)](./nncf_introduction.md)** provides a suite of advanced algorithms for Neural Networks inference optimization with minimal accuracy drop, for example, quantization, pruning algorithms.
Update Model Optimizer User Guide (#10759) (#10934) * Remove install prerequisites steps, order FWs, and move pre-processing details Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Update Introduction: examples of MO CLIs, references to parameters description pages Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Update Setting Input Shape section Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Update Optimizing Preprocessing Computation page Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Revert location of Additional_Optimizations.md Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Describe layout and FP16 support in MO * Fix docs issue * Apply feedback * Apply review feedback * Clean-up Resources Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Mention FP16 compression in MO Introduction Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Apply the first portion of feedback Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Apply the second portion of feedback Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Apply review feedback * Apply review feedback * Apply the third portion of feedback Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Apply suggestions from code review Co-authored-by: Tatiana Savina <tatiana.savina@intel.com> * Apply feedback for FP16 compression documentation * Apply review for FP16 page * Apply suggestions from code review Co-authored-by: Tatiana Savina <tatiana.savina@intel.com> * Update docs/MO_DG/prepare_model/Additional_Optimizations.md Co-authored-by: Tatiana Savina <tatiana.savina@intel.com> * Apply feedback Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Apply feedback Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Apply feedback Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Address feedback about tutorials, input_shape option Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Rework Setting Input Shapes section Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Update "See also" list Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Correct conversion documents for each FW Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Refactor TensorFlow converting document and expand Embedding Preprocessing document Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Fix a link to POT Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com> * Apply suggestions from code review Co-authored-by: Tatiana Savina <tatiana.savina@intel.com> Co-authored-by: Maxim Vafin <maxim.vafin@intel.com> Co-authored-by: Tatiana Savina <tatiana.savina@intel.com> Co-authored-by: Sergey Lyalin <sergey.lyalin@intel.com> Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com> Co-authored-by: Tatiana Savina <tatiana.savina@intel.com> Co-authored-by: Sergey Lyalin <sergey.lyalin@intel.com>
2022-03-14 19:12:34 +03:00
- **Model Optimizer** implements optimization to a model, most of them added by default, but you can configure mean/scale values, batch size, RGB vs BGR input channels, and other parameters to speed-up preprocess of a model ([Embedding Preprocessing Computation](../MO_DG/prepare_model/Additional_Optimizations.md))
## Detailed workflow:
![](../img/DEVELOPMENT_FLOW_V3_crunch.svg)
To understand which development optimization tool you need, refer to the diagram:
POT is the easiest way to get optimized models, and usually takes several minutes depending on the model size and used HW. NNCF can be considered as an alternative or addition when the first one does not give accurate results.
![](../img/WHAT_TO_USE.svg)
## See also
- [Deployment optimization](./dldt_deployment_optimization_guide.md)