{"id":438,"date":"2019-11-04T05:39:51","date_gmt":"2019-11-04T05:39:51","guid":{"rendered":"http:\/\/gyrus.ai\/blog\/?p=438"},"modified":"2021-01-28T04:01:10","modified_gmt":"2021-01-28T04:01:10","slug":"quantization-of-neural-network-model-for-ai-hardware","status":"publish","type":"post","link":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/","title":{"rendered":"Quantization of Neural Network Model for AI Hardware"},"content":{"rendered":"<div id=\"view1\" class=\"show\">\r\n\r\n<h2 class=\"wp-block-heading\">Background<\/h2>\r\n\r\n\r\n\r\n<p>In recent years, deep learning-based Artificial Intelligence (AI) and Machine Learning (ML) models are moving from cloud to edge devices for various factors such as bandwidth, latency, etc as in Figure-1. <\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img fetchpriority=\"high\" decoding=\"async\" width=\"620\" height=\"371\" src=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/ff-2.jpg\" alt=\"\" class=\"wp-image-465\" srcset=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/ff-2.jpg 620w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/ff-2-300x180.jpg 300w\" sizes=\"(max-width: 620px) 100vw, 620px\" \/><figcaption><strong>Factors Pushing Intelligence to edge<\/strong><\/figcaption><\/figure><\/div>\r\n\r\n\r\n\r\n<p>Power consumption, latency, hardware size are important aspects for inference at the edge.  Moreover, The Models developed in the cloud using the GPUs are floating-point models.<\/p>\r\n\r\n\r\n\r\n<p>Most importantly, it is highly desired for the edge inference hardware running Neural Networks do not have to support expensive Floating-Point units to suit the lower power and cost budgets. Compared to floating-point counterparts, the fixed point math engines are very area and power-efficient  <\/p>\r\n\r\n\r\n\r\n<p>Moreover, the model developed in the cloud needs to be quantized without significant loss of accuracy.  An efficient quantization mechanism can quantize 32-bit Floating Point (FP) Models to 8-bit INT operations with a loss of accuracy of less than 0.5% for most of the models.  This process reduces the memory footprint, compute requirements and thereby reduces the latency, and power required to do the inference of the models.<\/p>\r\n\r\n\r\n\r\n<p>Most of the edge devices, including GPUs (who have FP arithmetic), now take advantage of lower precision and quantized operations. whereas, Quantization is a defacto step for edge inference. This blog talks about common methods for doing quantization, challenges, and methods to overcome them.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Types of Quantization<\/h2>\r\n\r\n\r\n\r\n<p>Primarily Three types of quantization techniques of neural networks listed in increasing order of complexity and accuracy.<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\"><li>Power-2 <\/li><li>Symmetric <\/li><li>Asymmetric<\/li><\/ul>\r\n\r\n\r\n\r\n<h4 class=\"wp-block-heading\">Power-2 <\/h4>\r\n\r\n\r\n\r\n<p>Power-2 quantization uses only the left and right shifts of the data to perform the quantization. Shifts have a very low-cost of implementation, as barrel shifters are part of most hardware architectures.  To keep the most significant 7 bits (for INT8), based on the absolute maximum value, the weights and biases will be quantized by shifting left or right. These bits are tracked and re-adjusted if needed before and after the operation. <\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" width=\"701\" height=\"500\" src=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw1.jpg\" alt=\"Power-2 Quantization\" class=\"wp-image-484\" srcset=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw1.jpg 701w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw1-300x214.jpg 300w\" sizes=\"(max-width: 701px) 100vw, 701px\" \/><figcaption>Power-2 Quantization<\/figcaption><\/figure>\r\n\r\n\r\n\r\n<h4 class=\"wp-block-heading\">Symmetric <\/h4>\r\n\r\n\r\n\r\n<p>The next level in complexity is the Symmetric quantization, also sometimes referred to as linear quantization, which takes the maximum value in the tensor and equally divides the range using the maximum value.  Here the activations will be re-adjusted based on the input and output scaling factors.&nbsp; <\/p>\r\n\r\n\r\n\r\n<h4 class=\"wp-block-heading\">Asymmetric<\/h4>\r\n\r\n\r\n\r\n<p>Finally, Asymmetric quantization fully utilizes the bits given but has a high complexity of implementation<\/p>\r\n\r\n\r\n\r\n<p>Xf = Scale * (Xq \u2013 Xz), where Xf is the floating-point value of X, Xq is the quantized value and Xz is the Zero Offset<\/p>\r\n\r\n\r\n\r\n<p>The zero offset is adjusted such that the zero value is represented with a non-fractional value, so that zero paddings do not introduce a bias (Conv).<\/p>\r\n\r\n\r\n\r\n<p>Moreover. there will be an additional Add\/Sub operation per every operand when performing matrix multiplications and convolutions and not very conducive for many hardware architectures.<\/p>\r\n\r\n\r\n\r\n<p>Conv = SUM((Xq-Xz) * (Wq-Wz)), where W is the weight and X is the input<\/p>\r\n\r\n\r\n\r\n<p>Operations such as RELU that are present at most layers, knock off negative values, so Integer representations (INT8), virtually loses a bit in this representation compared to a UINT8 representation.<\/p>\r\n\r\n\r\n\r\n<p>After Multiply-And-Accumulate function, the re-quantization step uses Scalar multipliers and shifts to avoid supporting division functions. <\/p>\r\n\r\n\r\n\r\n<p>The quantization can be implemented per Tensor (per layer) or per output Channel (for Conv), if the dynamic range of each of the channel\u2019s weights is quite different.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Methods of Quantization<\/h2>\r\n\r\n\r\n\r\n<p> Above all, Four methods of quantization listed in increasing order of accuracy, <\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\"><li>Without Vectors<ul><li>This post-training quantization flow determines the range of the activations without any vectors<\/li><\/ul><ul><li>For INT8, the scaling factors are determined using the Scale \/ Shift values.<\/li><\/ul><\/li><li>Use Vectors to establish a range<ul><li>The vectors are used to know the range of activation.<\/li><\/ul><ul><li>The activations are quantized based on the range determined by running vectors and registering the range of each Tensor<\/li><\/ul><\/li><li>Second pass Quantized Training <ul><li>After a model is completely trained, the model is retrained by inserting Quantization nodes to incrementally retrain for the error, etc. <\/li><\/ul><ul><li>&nbsp;In this, the forward path uses quantized operations and the back-propagation is using floating-point arithmetic. (Tensorflow Lite &#8211; TFLite &#8211; Fake Quantization)<\/li><\/ul><\/li><li>Quantized Operator Flow (Q-Keras &#8211; Keras Quantization)<ul><li>There are new frameworks in development that perform quantization aware training  (use quantized operands while training from the start)<\/li><\/ul><\/li><\/ul>\r\n\r\n\r\n\r\n<p>For methods that do training, it requires that the customers provide their datasets and the definition for the loss\/accuracy functions. It is likely that both are customer\u2019s proprietary information that they would not readily share (a common scenario) and hence the need for the first two methods mentioned above. <\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Sample Results<\/h2>\r\n\r\n\r\n\r\n<p>The table below shows the results of quantization for some sample networks. The asymmetric UINT8 quantization, Per channel INT8, and UINT8 retrain quantization are compared with FP accuracy<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" width=\"799\" height=\"665\" src=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/kkk.png\" alt=\"Post Training Quantization \" class=\"wp-image-506\" srcset=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/kkk.png 799w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/kkk-300x250.png 300w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/kkk-768x639.png 768w\" sizes=\"(max-width: 799px) 100vw, 799px\" \/><figcaption>Quantization Accuracy Loss across different methods <\/figcaption><\/figure>\r\n\r\n\r\n\r\n<p>From the above result, some networks perform very poorly with standard quantization and may require per channel quantization and some would require retraining or other methods.&nbsp; <\/p>\r\n\r\n\r\n\r\n<p>Moreover, retraining or training with quantized weights gives the best result but would require customers providing datasets, model parameters, Loss and accuracy functions, etc., which may be feasible for all the cases.<\/p>\r\n\r\n\r\n\r\n<p>In Addition,  some of the customer models have frozen (constant) weights and cannot re-train immediately after the release.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Methods to improve accuracy<\/h2>\r\n\r\n\r\n\r\n<p>From the below figure, one of the main reasons for the loss of accuracy is the dynamic range of the weights across different channels <\/p>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dynamic Range<\/h3>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"427\" src=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw2-1-1024x427.jpg\" alt=\"Data Free Quantization by  Markus Nagel \" class=\"wp-image-493\" srcset=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw2-1-1024x427.jpg 1024w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw2-1-300x125.jpg 300w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw2-1-768x321.jpg 768w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw2-1.jpg 1337w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption>Figure From Data Free Quantization by <a href=\"https:\/\/arxiv.org\/abs\/1906.04721\">Markus Nagel <\/a><\/figcaption><\/figure>\r\n\r\n\r\n\r\n<p>Methods to address the loss of accuracy without having to retrain are <\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\"><li>Per-channel<ul><li>Firstly, from the figure above, establishing a different scale for each of the output channels of a convolutional neural network (CNN) would preserve the accuracy as corroborated by the results<\/li><\/ul><ul><li>Secondly, this introduces additional complexity to track the scaling of each channel and readjust the scaling value at the output activations to be at the same level to be used in the next layer<\/li><\/ul><ul><li>Moreover, Hardware should track the per-channel scaling values and apply them on the output of each layer<\/li><\/ul><\/li><li>Reducing the Dynamic Range<ul><li>The distribution of the range of weights can be analyzed and weights that are anomalies, small in the count, and that is extreme can be clamped to the 2-Standard Deviation or 3-Standard Deviation.<\/li><\/ul><ul><li>Usually, this step requires validation of the accuracies as some of the extreme weight may be required by the design<\/li><\/ul><\/li><li>Equalization<ul><li>The weights of each of the output layer are equalized in conjunction with the input weights of the next layers to normalize the ranges.<\/li><\/ul><\/li><li>Bias Correction<ul><li>Adjusts the bias values to compensate for the Quantization introduced bias error. <\/li><\/ul><\/li><\/ul>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Quantization Impact on Frames \/ Sec<\/h2>\r\n\r\n\r\n\r\n<p>8-bit Quantization significantly improves\r\nthe model performance by reducing the memory size and by doing 8-bit integer\r\ncomputations. <\/p>\r\n\r\n\r\n\r\n<p>By adopting a dynamic bit of widths per layer, quantization gives even more performance benefits. Moreover, some layers can have quantization to 4-bit, 2-bit, and 1-bit quantization (ternary and binary neural networks) without significant loss of accuracy. These would be layer dependent and usually, the final layers tend to perform well with lower quantization granularity. <\/p>\r\n\r\n\r\n\r\n<p>Binary and ternary operations are\r\ncomputationally less intensive than 8-bit Multiply Accumulates, yielding much lower\r\npower.<\/p>\r\n\r\n\r\n\r\n<p>Even in cases where the hardware does not support 4-bit or 2-bit operations, the model compression achieved by just storing weights in a lesser number of bits reduces the storage and bus bandwidth requirement. <\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Gyrus Flows<\/h2>\r\n\r\n\r\n\r\n<p>As a result, Gyrus developed several modules that bridge the gap between the Open Source AI Frameworks (Tensorflow, Pytorch, etc.) and the hardware from silicon vendors., <\/p>\r\n\r\n\r\n\r\n<p>The flows perform Graph Optimization, Compression, Pruning, Quantization, Scheduling, Compilation and ML\/AI Library modules. <\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"530\" height=\"425\" src=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/q.png\" alt=\"Gyrus AI Framework Modules \" class=\"wp-image-475\" srcset=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/q.png 530w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/q-300x241.png 300w\" sizes=\"(max-width: 530px) 100vw, 530px\" \/><figcaption>Gyrus AI Framework Modules <\/figcaption><\/figure><\/div>\r\n\r\n\r\n\r\n<p><em>To learn more about our AI framework models, check out <a href=\"https:\/\/gyrus.ai\/products\/ml_ai_frameworks\">Gyrus AI Framework Modules<\/a><\/em><\/p>\r\n\r\n\r\n\r\n<p>Specifically, in Quantization, the flows perform any of the three types of quantization (Power-2, Symmetric, and Asymmetric) and across the different methods of quantization (No Vectors, Vectors for Range, and Vectors for Retraining) mentioned above.\u00a0 <\/p>\r\n\r\n\r\n\r\n<p>The flows also employ advanced methods to improve the quantization loss by doing per channel quantization, Dynamic range adjustment, and bias corrections. These flows are applicable for canned models or new models and the results presented by Gyrus quantization modules. Also, the quantization flows work in conjunction with compression and pruning and the quantization method used influences the compression scheme employed in the hardware.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\r\n\r\n\r\n\r\n<p>Quantized fixed-point operations are the norm in edge computing. All Silicon vendors should support all or a sub-set of the different quantization schemes as there are advantages for each of them depending on the networks\/models. To achieve close to FP accuracy, one needs to employ additional techniques than simple conversions. In addition, representing small bit widths for certain layers gives additional power and size advantages. <\/p>\r\n\r\n\r\n\t\t<section class=\"sc_fs_faq sc_card \">\n\t\t\t<div>\n\t\t\t\t<h2>Types of Quantization<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\tPower-2, Symmetric and Asymmetric quantization are the three types of quantization techniques of neural networks listed in increasing order of complexity and accuracy.\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"sc_fs_faq sc_card \">\n\t\t\t<div>\n\t\t\t\t<h2>What is Symmetric Quantization<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\tSymmetric quantization also sometimes referred to as linear quantization, which takes the maximum value in the tensor and equally divides the range using the maximum value.  Here the activations will re-adjusted based on the input and output scaling factors.\u00a0  \t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"sc_fs_faq sc_card \">\n\t\t\t<div>\n\t\t\t\t<h2>What is Asymmetric Quantization<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\tAsymmetric quantization fully utilizes the bits given but has a high complexity of implementation. \t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/section>\n\t\t\n<script type=\"application\/ld+json\">\n\t{\n\t\t\"@context\": \"https:\/\/schema.org\",\n\t\t\"@type\": \"FAQPage\",\n\t\t\"mainEntity\": [\n\t\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"Types of Quantization\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"Power-2, Symmetric and Asymmetric quantization are the three types of quantization techniques of neural networks listed in increasing order of complexity and accuracy.\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"What is Symmetric Quantization\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"Symmetric quantization also sometimes referred to as linear quantization, which takes the maximum value in the tensor and equally divides the range using the maximum value.  Here the activations will re-adjusted based on the input and output scaling factors.\u00a0\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"What is Asymmetric Quantization\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"Asymmetric quantization fully utilizes the bits given but has a high complexity of implementation.\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t\t\t\t]\n\t}\n<\/script>\n\r\n\r\n\r\n<p><\/p>\r\n\r\n<\/div>\r\n<div id=\"view2\" class=\"hide\">\r\n\r\n<h2 class=\"wp-block-heading\">\u30d0\u30c3\u30af\u30b0\u30e9\u30a6\u30f3\u30c9<\/h2>\r\n\r\n\r\n\r\n<p>\u8fd1\u5e74\u3001\u6df1\u5c64\u5b66\u7fd2\u30d9\u30fc\u30b9\u306e\u6a5f\u68b0\u5b66\u7fd2\uff08ML\uff09\u30e2\u30c7\u30eb\u3068\u4eba\u5de5\u77e5\u80fd\uff08AI\uff09\u30e2\u30c7\u30eb\u306f\u3001\u56f31\u306b\u793a\u3059\u3088\u3046\u306b\u3001\u5e2f\u57df\u5e45\u3084\u9045\u5ef6\u306a\u3069\u306e\u3055\u307e\u3056\u307e\u306a\u8981\u56e0\u3067\u30af\u30e9\u30a6\u30c9\u304b\u3089\u30a8\u30c3\u30b8\u30c7\u30d0\u30a4\u30b9\u306b\u79fb\u884c\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img fetchpriority=\"high\" decoding=\"async\" width=\"620\" height=\"371\" src=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/ff-2.jpg\" alt=\"\" class=\"wp-image-465\" srcset=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/ff-2.jpg 620w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/ff-2-300x180.jpg 300w\" sizes=\"(max-width: 620px) 100vw, 620px\" \/><figcaption><strong>Factors Pushing Intelligence to edge<\/strong><\/figcaption><\/figure><\/div>\r\n\r\n\r\n\r\n<p>\u6d88\u8cbb\u96fb\u529b\u3001\u9045\u5ef6\u3001\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u30b5\u30a4\u30ba\u306f\u3001\u30a8\u30c3\u30b8\u3067\u306e\u63a8\u8ad6\u306b\u3068\u3063\u3066\u91cd\u8981\u306a\u5074\u9762\u3067\u3059\u3002 \u3055\u3089\u306b\u3001GPU\u3092\u4f7f\u7528\u3057\u3066\u30af\u30e9\u30a6\u30c9\u3067\u958b\u767a\u3055\u308c\u308b\u30e2\u30c7\u30eb\u306f\u6d6e\u52d5\u5c0f\u6570\u70b9\u30e2\u30c7\u30eb\u3067\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u6700\u3082\u91cd\u8981\u306a\u3053\u3068\u306f\u3001\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u5b9f\u884c\u3059\u308b\u30a8\u30c3\u30b8\u63a8\u8ad6\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u304c\u3001\u3088\u308a\u4f4e\u3044\u96fb\u529b\u3068\u30b3\u30b9\u30c8\u306e\u4e88\u7b97\u306b\u5408\u308f\u305b\u3066\u9ad8\u4fa1\u306a\u6d6e\u52d5\u5c0f\u6570\u70b9\u30e6\u30cb\u30c3\u30c8\u3092\u30b5\u30dd\u30fc\u30c8\u3059\u308b\u5fc5\u8981\u304c\u306a\u3044\u3053\u3068\u304c\u5f37\u304f\u671b\u307e\u308c\u3066\u3044\u308b\u3053\u3068\u3067\u3059\u3002 \u6d6e\u52d5\u5c0f\u6570\u70b9\u306e\u5bfe\u5fdc\u3059\u308b\u3082\u306e\u3068\u6bd4\u8f03\u3057\u3066\u3001\u56fa\u5b9a\u5c0f\u6570\u70b9\u306e\u6570\u5b66\u30a8\u30f3\u30b8\u30f3\u306f\u975e\u5e38\u306b\u9762\u7a4d\u3068\u96fb\u529b\u52b9\u7387\u304c\u9ad8\u3044\u3067\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u3055\u3089\u306b\u3001\u30af\u30e9\u30a6\u30c9\u3067\u958b\u767a\u3055\u308c\u305f\u30e2\u30c7\u30eb\u306f\u3001\u7cbe\u5ea6\u3092\u5927\u5e45\u306b\u640d\u306a\u3046\u3053\u3068\u306a\u304f\u91cf\u5b50\u5316\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u52b9\u7387\u7684\u306a\u91cf\u5b50\u5316\u30e1\u30ab\u30cb\u30ba\u30e0\u306b\u3088\u308a\u300132\u30d3\u30c3\u30c8\u6d6e\u52d5\u5c0f\u6570\u70b9\uff08FP\uff09\u30e2\u30c7\u30eb\u30928\u30d3\u30c3\u30c8INT\u6f14\u7b97\u306b\u91cf\u5b50\u5316\u3067\u304d\u307e\u3059\u304c\u3001\u307b\u3068\u3093\u3069\u306e\u30e2\u30c7\u30eb\u3067\u7cbe\u5ea6\u304c0.5\uff05\u672a\u6e80\u4f4e\u4e0b\u3057\u307e\u3059\u3002 \u3053\u306e\u30d7\u30ed\u30bb\u30b9\u306b\u3088\u308a\u3001\u30e1\u30e2\u30ea\u30d5\u30c3\u30c8\u30d7\u30ea\u30f3\u30c8\u3001\u8a08\u7b97\u8981\u4ef6\u304c\u524a\u6e1b\u3055\u308c\u3001\u30e2\u30c7\u30eb\u306e\u63a8\u8ad6\u3092\u5b9f\u884c\u3059\u308b\u305f\u3081\u306b\u5fc5\u8981\u306a\u30ec\u30a4\u30c6\u30f3\u30b7\u30fc\u3068\u96fb\u529b\u304c\u524a\u6e1b\u3055\u308c\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>GPU\uff08FP\u6f14\u7b97\u3092\u5099\u3048\u3066\u3044\u308b\uff09\u3092\u542b\u3080\u307b\u3068\u3093\u3069\u306e\u30a8\u30c3\u30b8\u30c7\u30d0\u30a4\u30b9\u306f\u3001\u73fe\u5728\u3001\u4f4e\u7cbe\u5ea6\u3067\u91cf\u5b50\u5316\u3055\u308c\u305f\u6f14\u7b97\u3092\u5229\u7528\u3057\u3066\u3044\u307e\u3059\u3002 \u4e00\u65b9\u3001\u91cf\u5b50\u5316\u306f\u30a8\u30c3\u30b8\u63a8\u8ad6\u306e\u4e8b\u5b9f\u4e0a\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u3059\u3002 \u3053\u306e\u30d6\u30ed\u30b0\u3067\u306f\u3001\u91cf\u5b50\u5316\u3092\u884c\u3046\u305f\u3081\u306e\u4e00\u822c\u7684\u306a\u65b9\u6cd5\u3001\u8ab2\u984c\u3001\u304a\u3088\u3073\u305d\u308c\u3089\u3092\u514b\u670d\u3059\u308b\u65b9\u6cd5\u306b\u3064\u3044\u3066\u8aac\u660e\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">\u91cf\u5b50\u5316\u306e\u7a2e\u985e<\/h2>\r\n\r\n\r\n\r\n<p>\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u306f\u3001\u8907\u96d1\u3055\u3068\u7cbe\u5ea6\u306e\u9ad8\u3044\u9806\u306b\u3001\u4e3b\u306b\u4ee5\u4e0b\u306e3\u7a2e\u985e\u306e\u91cf\u5b50\u5316\u624b\u6cd5\u306b\u5206\u985e\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\"><li>Power-2<\/li><li> \u5bfe\u79f0<\/li><li> \u975e\u5bfe\u79f0<\/li><\/ul>\r\n\r\n\r\n\r\n<h4 class=\"wp-block-heading\">Power-2 <\/h4>\r\n\r\n\r\n\r\n<p> Power-2\u91cf\u5b50\u5316\u306f\u3001\u30c7\u30fc\u30bf\u306e\u5de6\u53f3\u306e\u30b7\u30d5\u30c8\u306e\u307f\u3092\u4f7f\u7528\u3057\u3066\u91cf\u5b50\u5316\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002 \u30d0\u30ec\u30eb\u30b7\u30d5\u30bf\u306f\u307b\u3068\u3093\u3069\u306e\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306e\u4e00\u90e8\u3067\u3042\u308b\u305f\u3081\u3001\u30b7\u30d5\u30c8\u306e\u5b9f\u88c5\u30b3\u30b9\u30c8\u306f\u975e\u5e38\u306b\u4f4e\u304f\u306a\u308a\u307e\u3059\u3002 \u7d76\u5bfe\u6700\u5927\u5024\u306b\u57fa\u3065\u3044\u3066\u6700\u4e0a\u4f4d7\u30d3\u30c3\u30c8\uff08INT8\u306e\u5834\u5408\uff09\u3092\u7dad\u6301\u3059\u308b\u305f\u3081\u306b\u3001\u91cd\u307f\u3068\u30d0\u30a4\u30a2\u30b9\u306f\u5de6\u307e\u305f\u306f\u53f3\u306b\u30b7\u30d5\u30c8\u3059\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u91cf\u5b50\u5316\u3055\u308c\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30d3\u30c3\u30c8\u306f\u8ffd\u8de1\u3055\u308c\u3001\u64cd\u4f5c\u306e\u524d\u5f8c\u306b\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u518d\u8abf\u6574\u3055\u308c\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" width=\"701\" height=\"500\" src=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw1.jpg\" alt=\"Power-2 Quantization\" class=\"wp-image-484\" srcset=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw1.jpg 701w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw1-300x214.jpg 300w\" sizes=\"(max-width: 701px) 100vw, 701px\" \/><figcaption>Power-2 Quantization<\/figcaption><\/figure>\r\n\r\n\r\n\r\n<h4 class=\"wp-block-heading\">\u5bfe\u79f0<\/h4>\r\n\r\n\r\n\r\n<p>\u8907\u96d1\u3055\u306e\u6b21\u306e\u30ec\u30d9\u30eb\u306f\u3001\u7dda\u5f62\u91cf\u5b50\u5316\u3068\u3082\u547c\u3070\u308c\u308b\u5bfe\u79f0\u91cf\u5b50\u5316\u3067\u3059\u3002\u3053\u308c\u306f\u3001\u30c6\u30f3\u30bd\u30eb\u306e\u6700\u5927\u5024\u3092\u53d6\u5f97\u3057\u3001\u6700\u5927\u5024\u3092\u4f7f\u7528\u3057\u3066\u7bc4\u56f2\u3092\u5747\u7b49\u306b\u5206\u5272\u3057\u307e\u3059\u3002 \u3053\u3053\u3067\u3001\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u306f\u3001\u5165\u529b\u304a\u3088\u3073\u51fa\u529b\u306e\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u4fc2\u6570\u306b\u57fa\u3065\u3044\u3066\u518d\u8abf\u6574\u3055\u308c\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<h4 class=\"wp-block-heading\">\u975e\u5bfe\u79f0<\/h4>\r\n\r\n\r\n\r\n<p>\u6700\u5f8c\u306b\u3001\u975e\u5bfe\u79f0\u91cf\u5b50\u5316\u306f\u4e0e\u3048\u3089\u308c\u305f\u30d3\u30c3\u30c8\u3092\u5b8c\u5168\u306b\u5229\u7528\u3057\u307e\u3059\u304c\u3001\u5b9f\u88c5\u306f\u975e\u5e38\u306b\u8907\u96d1\u3067\u3059<\/p>\r\n\r\n\r\n\r\n<p>Xf =\u30b9\u30b1\u30fc\u30eb*\uff08Xq \u2013 Xz\uff09\u3001\u3053\u3053\u3067Xf\u306fX\u306e\u6d6e\u52d5\u5c0f\u6570\u70b9\u5024\u3001Xq\u306f\u91cf\u5b50\u5316\u3055\u308c\u305f\u5024\u3001Xz\u306f\u30bc\u30ed\u30aa\u30d5\u30bb\u30c3\u30c8\u3067\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u30bc\u30ed\u30aa\u30d5\u30bb\u30c3\u30c8\u306f\u3001\u30bc\u30ed\u5024\u304c\u975e\u5c0f\u6570\u5024\u3067\u8868\u3055\u308c\u308b\u3088\u3046\u306b\u8abf\u6574\u3055\u308c\u308b\u305f\u3081\u3001\u30bc\u30ed\u30d1\u30c7\u30a3\u30f3\u30b0\u306b\u3088\u3063\u3066\u30d0\u30a4\u30a2\u30b9\uff08Conv\uff09\u304c\u767a\u751f\u3059\u308b\u3053\u3068\u306f\u3042\u308a\u307e\u305b\u3093\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u307e\u305f\u3002\u884c\u5217\u306e\u4e57\u7b97\u3068\u7573\u307f\u8fbc\u307f\u3092\u5b9f\u884c\u3059\u308b\u5834\u5408\u3001\u3059\u3079\u3066\u306e\u30aa\u30da\u30e9\u30f3\u30c9\u3054\u3068\u306b\u8ffd\u52a0\u306eAdd \/ Sub\u64cd\u4f5c\u304c\u3042\u308a\u3001\u591a\u304f\u306e\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306b\u306f\u3042\u307e\u308a\u5f79\u7acb\u3061\u307e\u305b\u3093\u3002<\/p>\r\n\r\n\r\n\r\n<p>Conv = SUM\uff08\uff08Xq-Xz\uff09*\uff08Wq-Wz\uff09\uff09\u3001\u3053\u3053\u3067W\u306f\u91cd\u307f\u3001X\u306f\u5165\u529b\u3067\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u307b\u3068\u3093\u3069\u306e\u30ec\u30a4\u30e4\u30fc\u306b\u5b58\u5728\u3059\u308bRELU\u306a\u3069\u306e\u64cd\u4f5c\u306f\u8ca0\u306e\u5024\u3092\u30ce\u30c3\u30af\u30aa\u30d5\u3059\u308b\u305f\u3081\u3001\u6574\u6570\u8868\u73fe\uff08INT8\uff09\u306f\u3001UINT8\u8868\u73fe\u3068\u6bd4\u8f03\u3057\u3066\u3001\u3053\u306e\u8868\u73fe\u3067\u306f\u4e8b\u5b9f\u4e0a\u5c11\u3057\u5931\u308f\u308c\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u7a4d\u548c\u95a2\u6570\u306e\u5f8c\u3001\u518d\u91cf\u5b50\u5316\u30b9\u30c6\u30c3\u30d7\u3067\u306f\u3001\u30b9\u30ab\u30e9\u30fc\u4e57\u6570\u3068\u30b7\u30d5\u30c8\u3092\u4f7f\u7528\u3057\u3066\u3001\u9664\u7b97\u95a2\u6570\u306e\u30b5\u30dd\u30fc\u30c8\u3092\u56de\u907f\u3057\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u5404\u30c1\u30e3\u30cd\u30eb\u306e\u91cd\u307f\u306e\u30c0\u30a4\u30ca\u30df\u30c3\u30af\u30ec\u30f3\u30b8\u304c\u307e\u3063\u305f\u304f\u7570\u306a\u308b\u5834\u5408\u3001\u91cf\u5b50\u5316\u306f\u30c6\u30f3\u30bd\u30eb\u3054\u3068\uff08\u30ec\u30a4\u30e4\u30fc\u3054\u3068\uff09\u307e\u305f\u306f\u51fa\u529b\u30c1\u30e3\u30cd\u30eb\u3054\u3068\uff08\u5909\u63db\u306e\u5834\u5408\uff09\u306b\u5b9f\u88c5\u3067\u304d\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">\u91cf\u5b50\u5316\u306e\u65b9\u6cd5<\/h2>\r\n\r\n\r\n\r\n<p>\u3068\u308a\u308f\u3051\u3001\u7cbe\u5ea6\u306e\u9ad8\u3044\u9806\u306b\u30014\u3064\u306e\u91cf\u5b50\u5316\u65b9\u6cd5\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\"><li>\u30d9\u30af\u30c8\u30eb\u306a\u3057<ul><li>\u3053\u306e\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u5f8c\u306e\u91cf\u5b50\u5316\u30d5\u30ed\u30fc\u306f\u3001\u30d9\u30af\u30c8\u30eb\u306a\u3057\u3067\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u306e\u7bc4\u56f2\u3092\u6c7a\u5b9a\u3057\u307e\u3059<\/li><\/ul><ul><li>INT8\u306e\u5834\u5408\u3001\u500d\u7387\u306f\u30b9\u30b1\u30fc\u30eb\/\u30b7\u30d5\u30c8\u5024\u3092\u4f7f\u7528\u3057\u3066\u6c7a\u5b9a\u3055\u308c\u307e\u3059\u3002<\/li><\/ul><\/li><li>\u30d9\u30af\u30c8\u30eb\u3092\u4f7f\u7528\u3057\u3066\u7bc4\u56f2\u3092\u78ba\u7acb\u3059\u308b<ul><li>\u30d9\u30af\u30c8\u30eb\u306f\u3001\u6d3b\u6027\u5316\u306e\u7bc4\u56f2\u3092\u77e5\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/li><\/ul><ul><li>\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u306f\u3001\u30d9\u30af\u30c8\u30eb\u3092\u5b9f\u884c\u3057\u3001\u5404\u30c6\u30f3\u30bd\u30eb\u306e\u7bc4\u56f2\u3092\u767b\u9332\u3059\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u6c7a\u5b9a\u3055\u308c\u305f\u7bc4\u56f2\u306b\u57fa\u3065\u3044\u3066\u91cf\u5b50\u5316\u3055\u308c\u307e\u3059\u3002<\/li><\/ul><\/li><li>2\u756a\u76ee\u306e\u30d1\u30b9\u306e\u91cf\u5b50\u5316\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0<ul><li>\u30e2\u30c7\u30eb\u304c\u5b8c\u5168\u306b\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3055\u308c\u305f\u5f8c\u3001\u91cf\u5b50\u5316\u30ce\u30fc\u30c9\u3092\u633f\u5165\u3057\u3066\u30e2\u30c7\u30eb\u3092\u518d\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3057\u3001\u30a8\u30e9\u30fc\u306a\u3069\u3092\u6bb5\u968e\u7684\u306b\u518d\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3057\u307e\u3059\u3002<\/li><\/ul><ul><li>\u3053\u306e\u5834\u5408\u3001\u9806\u65b9\u5411\u30d1\u30b9\u306f\u91cf\u5b50\u5316\u3055\u308c\u305f\u6f14\u7b97\u3092\u4f7f\u7528\u3057\u3001\u9006\u65b9\u5411\u4f1d\u642c\u306f\u6d6e\u52d5\u5c0f\u6570\u70b9\u6f14\u7b97\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002 \uff08Tensorflow Lite \u2013 TFLite \u2013\u507d\u306e\u91cf\u5b50\u5316\uff09<\/li><\/ul><\/li><li>\u91cf\u5b50\u5316\u3055\u308c\u305f\u6f14\u7b97\u5b50\u30d5\u30ed\u30fc\uff08Q-Keras \u2013 Keras\u91cf\u5b50\u5316\uff09<ul><li>\u91cf\u5b50\u5316\u5bfe\u5fdc\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3092\u5b9f\u884c\u3059\u308b\u958b\u767a\u4e2d\u306e\u65b0\u3057\u3044\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u304c\u3042\u308a\u307e\u3059\u3002\uff08\u6700\u521d\u304b\u3089\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u4e2d\u306b\u91cf\u5b50\u5316\u3055\u308c\u305f\u30aa\u30da\u30e9\u30f3\u30c9\u3092\u4f7f\u7528\u3057\u307e\u3059\uff09<\/li><\/ul><\/li><\/ul>\r\n\r\n\r\n\r\n<p>\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3092\u884c\u3046\u65b9\u6cd5\u306e\u5834\u5408\u3001\u9867\u5ba2\u304c\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3068\u640d\u5931\/\u7cbe\u5ea6\u95a2\u6570\u306e\u5b9a\u7fa9\u3092\u63d0\u4f9b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3069\u3061\u3089\u3082\u304a\u5ba2\u69d8\u306e\u5c02\u6709\u60c5\u5831\u3067\u3042\u308a\u3001\u5bb9\u6613\u306b\u5171\u6709\u3067\u304d\u306a\u3044\u53ef\u80fd\u6027\u304c\u3042\u308a\uff08\u4e00\u822c\u7684\u306a\u30b7\u30ca\u30ea\u30aa\uff09\u3001\u3057\u305f\u304c\u3063\u3066\u3001\u4e0a\u8a18\u306e\u6700\u521d\u306e2\u3064\u306e\u65b9\u6cd5\u304c\u5fc5\u8981\u3067\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">\u30b5\u30f3\u30d7\u30eb\u7d50\u679c<\/h2>\r\n\r\n\r\n\r\n<p>\u30b5\u30f3\u30d7\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u91cf\u5b50\u5316\u306e\u7d50\u679c\u3092\u6b21\u306e\u8868\u306b\u793a\u3057\u307e\u3059\u3002 \u975e\u5bfe\u79f0UINT8\u91cf\u5b50\u5316\u3001\u30c1\u30e3\u30cd\u30eb\u3054\u3068\u306eINT8\u3001\u304a\u3088\u3073UINT8\u518d\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u91cf\u5b50\u5316\u304c\u3001FP\u7cbe\u5ea6\u3068\u6bd4\u8f03\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" width=\"799\" height=\"665\" src=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/kkk.png\" alt=\"Post Training Quantization \" class=\"wp-image-506\" srcset=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/kkk.png 799w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/kkk-300x250.png 300w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/kkk-768x639.png 768w\" sizes=\"(max-width: 799px) 100vw, 799px\" \/><figcaption>Quantization Accuracy Loss across different methods <\/figcaption><\/figure>\r\n\r\n\r\n\r\n<p>\u4e0a\u8a18\u306e\u7d50\u679c\u304b\u3089\u3001\u4e00\u90e8\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306f\u6a19\u6e96\u306e\u91cf\u5b50\u5316\u3067\u306f\u6027\u80fd\u304c\u975e\u5e38\u306b\u4f4e\u304f\u3001\u30c1\u30e3\u30cd\u30eb\u3054\u3068\u306e\u91cf\u5b50\u5316\u304c\u5fc5\u8981\u306b\u306a\u308b\u5834\u5408\u304c\u3042\u308a\u3001\u4e00\u90e8\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3067\u306f\u518d\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u307e\u305f\u306f\u305d\u306e\u4ed6\u306e\u65b9\u6cd5\u304c\u5fc5\u8981\u306b\u306a\u308a\u307e\u3059\u3002\u00a0 <\/p>\r\n\r\n\r\n\r\n<p>\u3055\u3089\u306b\u3001\u91cf\u5b50\u5316\u3055\u308c\u305f\u91cd\u307f\u3092\u4f7f\u7528\u3057\u305f\u518d\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u307e\u305f\u306f\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u306f\u6700\u826f\u306e\u7d50\u679c\u3092\u3082\u305f\u3089\u3057\u307e\u3059\u304c\u3001\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3001\u30e2\u30c7\u30eb\u30d1\u30e9\u30e1\u30fc\u30bf\u3001\u640d\u5931\u304a\u3088\u3073\u7cbe\u5ea6\u95a2\u6570\u306a\u3069\u3092\u63d0\u4f9b\u3059\u308b\u9867\u5ba2\u304c\u5fc5\u8981\u306b\u306a\u308a\u307e\u3059\u3002 \u3053\u308c\u306f\u3059\u3079\u3066\u306e\u30b1\u30fc\u30b9\u3067\u5f53\u3066\u306f\u307e\u308a\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u3055\u3089\u306b\u3001\u4e00\u90e8\u306e\u9867\u5ba2\u30e2\u30c7\u30eb\u306f\uff08\u4e00\u5b9a\u306e\uff09\u30a6\u30a7\u30a4\u30c8\u3092\u51cd\u7d50\u3057\u3066\u304a\u308a\u3001\u30ea\u30ea\u30fc\u30b9\u76f4\u5f8c\u306b\u518d\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3067\u304d\u307e\u305b\u3093\u3002<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">\u7cbe\u5ea6\u3092\u5411\u4e0a\u3055\u305b\u308b\u65b9\u6cd5<\/h2>\r\n\r\n\r\n\r\n<p>\u4e0b\u56f3\u304b\u3089\u3001\u7cbe\u5ea6\u304c\u4f4e\u4e0b\u3059\u308b\u4e3b\u306a\u7406\u7531\u306e1\u3064\u306f\u3001\u3055\u307e\u3056\u307e\u306a\u30c1\u30e3\u30cd\u30eb\u306b\u308f\u305f\u308b\u91cd\u307f\u306e\u30c0\u30a4\u30ca\u30df\u30c3\u30af\u30ec\u30f3\u30b8\u306b\u8d77\u56e0\u3059\u308b\u3053\u3068\u304c\u308f\u304b\u308a\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dynamic Range<\/h3>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"427\" src=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw2-1-1024x427.jpg\" alt=\"Data Free Quantization by  Markus Nagel \" class=\"wp-image-493\" srcset=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw2-1-1024x427.jpg 1024w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw2-1-300x125.jpg 300w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw2-1-768x321.jpg 768w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/draw2-1.jpg 1337w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption>Figure From Data Free Quantization by <a href=\"https:\/\/arxiv.org\/abs\/1906.04721\">Markus Nagel <\/a><\/figcaption><\/figure>\r\n\r\n\r\n\r\n<p>\u518d\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u305b\u305a\u306b\u7cbe\u5ea6\u306e\u4f4e\u4e0b\u306b\u5bfe\u51e6\u3059\u308b\u65b9\u6cd5\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\"><li>\u30c1\u30e3\u30cd\u30eb\u3054\u3068<ul><li>\u307e\u305a\u3001\u4e0a\u56f3\u304b\u3089\u3001\u7573\u307f\u8fbc\u307f\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\uff08CNN\uff09\u306e\u51fa\u529b\u30c1\u30e3\u30cd\u30eb\u3054\u3068\u306b\u7570\u306a\u308b\u30b9\u30b1\u30fc\u30eb\u3092\u78ba\u7acb\u3059\u308b\u3068\u3001\u7d50\u679c\u306b\u3088\u3063\u3066\u88cf\u4ed8\u3051\u3089\u308c\u308b\u7cbe\u5ea6\u304c\u7dad\u6301\u3055\u308c\u307e\u3059\u3002<\/li><\/ul><ul><li>\u6b21\u306b\u3001\u3053\u308c\u306b\u3088\u308a\u3001\u5404\u30c1\u30e3\u30cd\u30eb\u306e\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u3092\u8ffd\u8de1\u3057\u3001\u51fa\u529b\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u3067\u306e\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u5024\u3092\u518d\u8abf\u6574\u3057\u3066\u3001\u6b21\u306e\u30ec\u30a4\u30e4\u30fc\u3067\u4f7f\u7528\u3059\u308b\u306e\u3068\u540c\u3058\u30ec\u30d9\u30eb\u306b\u3059\u308b\u305f\u3081\u306e\u8907\u96d1\u3055\u304c\u5897\u3057\u307e\u3059\u3002<\/li><\/ul><ul><li>\u3055\u3089\u306b\u3001\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u306f\u30c1\u30e3\u30cd\u30eb\u3054\u3068\u306e\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u5024\u3092\u8ffd\u8de1\u3057\u3001\u305d\u308c\u3089\u3092\u5404\u30ec\u30a4\u30e4\u30fc\u306e\u51fa\u529b\u306b\u9069\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002<\/li><\/ul><\/li><li>\u30c0\u30a4\u30ca\u30df\u30c3\u30af\u30ec\u30f3\u30b8\u306e\u7e2e\u5c0f<ul><li>\u91cd\u307f\u306e\u7bc4\u56f2\u306e\u5206\u5e03\u3092\u5206\u6790\u3057\u3001\u7570\u5e38\u3067\u30ab\u30a6\u30f3\u30c8\u304c\u5c0f\u3055\u304f\u3001\u6975\u7aef\u306a\u91cd\u307f\u30922\u6a19\u6e96\u504f\u5dee\u307e\u305f\u306f3\u6a19\u6e96\u504f\u5dee\u306b\u56fa\u5b9a\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/li><\/ul><ul><li>\u901a\u5e38\u3001\u3053\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u306f\u3001\u8a2d\u8a08\u3067\u6975\u7aef\u306a\u91cd\u91cf\u304c\u5fc5\u8981\u306b\u306a\u308b\u5834\u5408\u304c\u3042\u308b\u305f\u3081\u3001\u7cbe\u5ea6\u306e\u691c\u8a3c\u304c\u5fc5\u8981\u3067\u3059\u3002<\/li><\/ul><\/li><li>\u30a4\u30b3\u30e9\u30a4\u30bc\u30fc\u30b7\u30e7\u30f3<ul><li>\u5404\u51fa\u529b\u30ec\u30a4\u30e4\u30fc\u306e\u91cd\u307f\u306f\u3001\u6b21\u306e\u30ec\u30a4\u30e4\u30fc\u306e\u5165\u529b\u91cd\u307f\u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u5747\u7b49\u5316\u3055\u308c\u3001\u7bc4\u56f2\u304c\u6b63\u898f\u5316\u3055\u308c\u307e\u3059\u3002<\/li><\/ul><\/li><li>\u30d0\u30a4\u30a2\u30b9\u88dc\u6b63<ul><li>\u30d0\u30a4\u30a2\u30b9\u5024\u3092\u8abf\u6574\u3057\u3066\u3001\u91cf\u5b50\u5316\u306b\u3088\u3063\u3066\u5c0e\u5165\u3055\u308c\u305f\u30d0\u30a4\u30a2\u30b9\u30a8\u30e9\u30fc\u3092\u88dc\u6b63\u3057\u307e\u3059\u3002<\/li><\/ul><\/li><\/ul>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">\u30d5\u30ec\u30fc\u30e0\/\u79d2\u306b\u5bfe\u3059\u308b\u91cf\u5b50\u5316\u306e\u5f71\u97ff<\/h2>\r\n\r\n\r\n\r\n<p>8\u30d3\u30c3\u30c8\u91cf\u5b50\u5316\u306f\u3001\u30e1\u30e2\u30ea\u30b5\u30a4\u30ba\u3092\u524a\u6e1b\u3057\u30018\u30d3\u30c3\u30c8\u6574\u6570\u8a08\u7b97\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u306b\u3088\u308a\u3001\u30e2\u30c7\u30eb\u306e\u6027\u80fd\u3092\u5927\u5e45\u306b\u5411\u4e0a\u3055\u305b\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u30ec\u30a4\u30e4\u30fc\u3054\u3068\u306e\u5e45\u306e\u52d5\u7684\u30d3\u30c3\u30c8\u3092\u63a1\u7528\u3059\u308b\u3053\u3068\u306b\u3088\u308a\u3001\u91cf\u5b50\u5316\u306f\u3055\u3089\u306b\u591a\u304f\u306e\u6027\u80fd\u4e0a\u306e\u5229\u70b9\u3092\u3082\u305f\u3089\u3057\u307e\u3059\u3002 \u3055\u3089\u306b\u3001\u4e00\u90e8\u306e\u30ec\u30a4\u30e4\u30fc\u3067\u306f\u3001\u7cbe\u5ea6\u3092\u5927\u5e45\u306b\u640d\u306a\u3046\u3053\u3068\u306a\u304f\u30014\u30d3\u30c3\u30c8\u30012\u30d3\u30c3\u30c8\u3001\u304a\u3088\u30731\u30d3\u30c3\u30c8\u306e\u91cf\u5b50\u5316\uff083\u5024\u304a\u3088\u30732\u5024\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\uff09\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002 \u3053\u308c\u3089\u306f\u30ec\u30a4\u30e4\u30fc\u306b\u4f9d\u5b58\u3057\u3001\u901a\u5e38\u3001\u6700\u7d42\u30ec\u30a4\u30e4\u30fc\u306f\u3088\u308a\u4f4e\u3044\u91cf\u5b50\u5316\u7c92\u5ea6\u3067\u3046\u307e\u304f\u6a5f\u80fd\u3059\u308b\u50be\u5411\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u30d0\u30a4\u30ca\u30ea\u30fc\u3068\u30bf\u30fc\u30ca\u30ea\u2015\u6f14\u7b97\u306f\u30018\u30d3\u30c3\u30c8\u306e\u7a4d\u548c\u6f14\u7b97\u3088\u308a\u3082\u8a08\u7b97\u91cf\u304c\u5c11\u306a\u304f\u3001\u96fb\u529b\u304c\u306f\u308b\u304b\u306b\u4f4e\u304f\u306a\u308a\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u304c\u30014\u30d3\u30c3\u30c8\u307e\u305f\u306f2\u30d3\u30c3\u30c8\u64cd\u4f5c\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u306a\u3044\u5834\u5408\u3067\u3082\u3001\u3088\u308a\u5c11\u306a\u3044\u30d3\u30c3\u30c8\u6570\u3067\u91cd\u307f\u3092\u683c\u7d0d\u3059\u308b\u3060\u3051\u3067\u30e2\u30c7\u30eb\u306e\u5727\u7e2e\u304c\u5b9f\u73fe\u3055\u308c\u308b\u305f\u3081\u3001\u30b9\u30c8\u30ec\u30fc\u30b8\u3068\u30d0\u30b9\u306e\u5e2f\u57df\u5e45\u306e\u8981\u4ef6\u304c\u8efd\u6e1b\u3055\u308c\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Gyrus\u306e\u958b\u767a\u30d5\u30ed\u30fc<\/h2>\r\n\r\n\r\n\r\n<p>\u305d\u306e\u7d50\u679c\u3001Gyrus\u306f\u3001\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9AI\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af(Tensorflow\u3001 Pytorch\u306a\u3069)\u3068\u30b7\u30ea\u30b3\u30f3\u30d9\u30f3\u30c0\u30fc\u306e\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u306e\u9593\u306e\u30ae\u30e3\u30c3\u30d7\u3092\u57cb\u3081\u308b\u8907\u6570\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u958b\u767a\u3057\u307e\u3057\u305f\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u30d5\u30ed\u30fc\u306f\u3001\u30b0\u30e9\u30d5\u306e\u6700\u9069\u5316\u3001\u5727\u7e2e\u3001\u30d7\u30eb\u30fc\u30cb\u30f3\u30b0\u3001\u91cf\u5b50\u5316\u3001\u30b9\u30b1\u30b8\u30e5\u30fc\u30ea\u30f3\u30b0\u3001\u30b3\u30f3\u30d1\u30a4\u30eb\u3001\u304a\u3088\u3073ML \/ AI\u30e9\u30a4\u30d6\u30e9\u30ea\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"530\" height=\"425\" src=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/q.png\" alt=\"Gyrus AI Framework Modules \" class=\"wp-image-475\" srcset=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/q.png 530w, https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/11\/q-300x241.png 300w\" sizes=\"(max-width: 530px) 100vw, 530px\" \/><figcaption>Gyrus AI Framework Modules <\/figcaption><\/figure><\/div>\r\n\r\n\r\n\r\n<p>AI\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u30e2\u30c7\u30eb\u306e\u8a73\u7d30\u306b\u3064\u3044\u3066\u306f\u3001Gyrus AI\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u3054\u89a7\u304f\u3060\u3055\u3044\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u5177\u4f53\u7684\u306b\u306f\u3001\u91cf\u5b50\u5316\u3067\u306f\u3001\u30d5\u30ed\u30fc\u306f\u4e0a\u8a18\u306e3\u7a2e\u985e\u306e\u91cf\u5b50\u5316\uff08Power-2\u3001\u5bfe\u79f0\u3001\u975e\u5bfe\u79f0\uff09\u306e\u3044\u305a\u308c\u304b\u3092\u5b9f\u884c\u3057\u3001\u4e0a\u8a18\u306e\u3055\u307e\u3056\u307e\u306a\u91cf\u5b50\u5316\u65b9\u6cd5\uff08\u30d9\u30af\u30c8\u30eb\u306a\u3057\u3001\u7bc4\u56f2\u306e\u30d9\u30af\u30c8\u30eb\u3001\u518d\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u306e\u30d9\u30af\u30c8\u30eb\uff09\u3067\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u30d5\u30ed\u30fc\u306f\u307e\u305f\u3001\u30c1\u30e3\u30cd\u30eb\u3054\u3068\u306e\u91cf\u5b50\u5316\u3001\u30c0\u30a4\u30ca\u30df\u30c3\u30af\u30ec\u30f3\u30b8\u8abf\u6574\u3001\u304a\u3088\u3073\u30d0\u30a4\u30a2\u30b9\u88dc\u6b63\u3092\u884c\u3046\u3053\u3068\u306b\u3088\u308a\u3001\u91cf\u5b50\u5316\u640d\u5931\u3092\u6539\u5584\u3059\u308b\u305f\u3081\u306e\u9ad8\u5ea6\u306a\u65b9\u6cd5\u3092\u63a1\u7528\u3057\u3066\u3044\u307e\u3059\u3002 \u3053\u308c\u3089\u306e\u30d5\u30ed\u30fc\u306f\u3001\u5b9a\u578b\u30e2\u30c7\u30eb\u307e\u305f\u306f\u3001\u65b0\u3057\u3044\u30e2\u30c7\u30eb\u304a\u3088\u3073\u3001Gyrus\u91cf\u5b50\u5316\u30e2\u30b8\u30e5\u30fc\u30eb\u306b\u3088\u3063\u3066\u63d0\u793a\u3055\u308c\u308b\u7d50\u679c\u306b\u9069\u7528\u3067\u304d\u307e\u3059\u3002 \u307e\u305f\u3001\u91cf\u5b50\u5316\u30d5\u30ed\u30fc\u306f\u3001\u5727\u7e2e\u3068\u30d7\u30eb\u30fc\u30cb\u30f3\u30b0\u3068\u9023\u643a\u3057\u3066\u6a5f\u80fd\u3057\u3001\u4f7f\u7528\u3055\u308c\u308b\u91cf\u5b50\u5316\u65b9\u6cd5\u306f\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u3067\u63a1\u7528\u3055\u308c\u3066\u3044\u308b\u5727\u7e2e\u30b9\u30ad\u30fc\u30e0\u306b\u5f71\u97ff\u3092\u4e0e\u3048\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">\u7d50\u8ad6<\/h2>\r\n\r\n\r\n\r\n<p>\u91cf\u5b50\u5316\u3055\u308c\u305f\u56fa\u5b9a\u5c0f\u6570\u70b9\u6f14\u7b97\u306f\u3001\u30a8\u30c3\u30b8\u30b3\u30f3\u30d4\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u306e\u6a19\u6e96\u3067\u3059\u3002 \u3059\u3079\u3066\u306e\u30b7\u30ea\u30b3\u30f3\u30d9\u30f3\u30c0\u30fc\u306f\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\/\u30e2\u30c7\u30eb\u306b\u5fdc\u3058\u3066\u305d\u308c\u305e\u308c\u306b\u5229\u70b9\u304c\u3042\u308b\u305f\u3081\u3001\u3055\u307e\u3056\u307e\u306a\u91cf\u5b50\u5316\u30b9\u30ad\u30fc\u30e0\u306e\u3059\u3079\u3066\u307e\u305f\u306f\u30b5\u30d6\u30bb\u30c3\u30c8\u3092\u30b5\u30dd\u30fc\u30c8\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 FP\u306b\u8fd1\u3044\u7cbe\u5ea6\u3092\u5b9f\u73fe\u3059\u308b\u306b\u306f\u3001\u5358\u7d14\u306a\u5909\u63db\u4ee5\u5916\u306e\u624b\u6cd5\u3092\u63a1\u7528\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 \u3055\u3089\u306b\u3001\u7279\u5b9a\u306e\u30ec\u30a4\u30e4\u30fc\u306e\u5c0f\u3055\u306a\u30d3\u30c3\u30c8\u5e45\u3092\u8868\u3059\u3068\u3001\u30d1\u30ef\u30fc\u3068\u30b5\u30a4\u30ba\u304c\u3055\u3089\u306b\u5411\u4e0a\u3057\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\t\t<section class=\"sc_fs_faq sc_card \">\n\t\t\t<div>\n\t\t\t\t<h2>\u91cf\u5b50\u5316\u306e\u7a2e\u985e<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u306f\u3001R5\u305d\u306e\u8907\u96d1\u3055\u3068\u7cbe\u5ea6\u306b\u3088\u308a\u3001\u6607\u9806\u3067\u30ea\u30b9\u30c8\u3055\u308c\u3066\u3044\u308bPower-2\u3001\u5bfe\u79f0\u304a\u3088\u3073\u975e\u5bfe\u79f0\u306e3\u7a2e\u985e\u306e\u91cf\u5b50\u5316\u624b\u6cd5\u304c\u3042\u308a\u307e\u3059\u3002\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"sc_fs_faq sc_card \">\n\t\t\t<div>\n\t\t\t\t<h2>\u5bfe\u79f0\u91cf\u5b50\u5316\u3068\u306f<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\u5bfe\u79f0\u91cf\u5b50\u5316\u306f\u3001\u7dda\u5f62\u91cf\u5b50\u5316\u3068\u3082\u547c\u3070\u308c\u307e\u3059\u3002\u3053\u308c\u306f\u3001\u30c6\u30f3\u30bd\u30eb\u306e\u6700\u5927\u5024\u3092\u53d6\u5f97\u3057\u3001\u6700\u5927\u5024\u3092\u4f7f\u7528\u3057\u3066\u7bc4\u56f2\u3092\u5747\u7b49\u306b\u5206\u5272\u3057\u307e\u3059\u3002 \u3053\u3053\u3067\u3001\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u306f\u3001\u5165\u529b\u304a\u3088\u3073\u51fa\u529b\u306e\u500d\u7387\u306b\u57fa\u3065\u3044\u3066\u518d\u8abf\u6574\u3055\u308c\u307e\u3059\u3002\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"sc_fs_faq sc_card \">\n\t\t\t<div>\n\t\t\t\t<h2>\u975e\u5bfe\u79f0\u91cf\u5b50\u5316\u3068\u306f<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\u975e\u5bfe\u79f0\u91cf\u5b50\u5316\u306f\u3001\u4e0e\u3048\u3089\u308c\u305f\u30d3\u30c3\u30c8\u3092\u3059\u3079\u3066\u5229\u7528\u3057\u307e\u3059\u304c\u3001\u5b9f\u88c5\u306f\u975e\u5e38\u306b\u8907\u96d1\u3067\u3059\u3002\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/section>\n\t\t\n<script type=\"application\/ld+json\">\n\t{\n\t\t\"@context\": \"https:\/\/schema.org\",\n\t\t\"@type\": \"FAQPage\",\n\t\t\"mainEntity\": [\n\t\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"\u91cf\u5b50\u5316\u306e\u7a2e\u985e\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u306f\u3001R5\u305d\u306e\u8907\u96d1\u3055\u3068\u7cbe\u5ea6\u306b\u3088\u308a\u3001\u6607\u9806\u3067\u30ea\u30b9\u30c8\u3055\u308c\u3066\u3044\u308bPower-2\u3001\u5bfe\u79f0\u304a\u3088\u3073\u975e\u5bfe\u79f0\u306e3\u7a2e\u985e\u306e\u91cf\u5b50\u5316\u624b\u6cd5\u304c\u3042\u308a\u307e\u3059\u3002\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"\u5bfe\u79f0\u91cf\u5b50\u5316\u3068\u306f\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"\u5bfe\u79f0\u91cf\u5b50\u5316\u306f\u3001\u7dda\u5f62\u91cf\u5b50\u5316\u3068\u3082\u547c\u3070\u308c\u307e\u3059\u3002\u3053\u308c\u306f\u3001\u30c6\u30f3\u30bd\u30eb\u306e\u6700\u5927\u5024\u3092\u53d6\u5f97\u3057\u3001\u6700\u5927\u5024\u3092\u4f7f\u7528\u3057\u3066\u7bc4\u56f2\u3092\u5747\u7b49\u306b\u5206\u5272\u3057\u307e\u3059\u3002 \u3053\u3053\u3067\u3001\u30a2\u30af\u30c6\u30a3\u30d9\u30fc\u30b7\u30e7\u30f3\u306f\u3001\u5165\u529b\u304a\u3088\u3073\u51fa\u529b\u306e\u500d\u7387\u306b\u57fa\u3065\u3044\u3066\u518d\u8abf\u6574\u3055\u308c\u307e\u3059\u3002\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"\u975e\u5bfe\u79f0\u91cf\u5b50\u5316\u3068\u306f\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"\u975e\u5bfe\u79f0\u91cf\u5b50\u5316\u306f\u3001\u4e0e\u3048\u3089\u308c\u305f\u30d3\u30c3\u30c8\u3092\u3059\u3079\u3066\u5229\u7528\u3057\u307e\u3059\u304c\u3001\u5b9f\u88c5\u306f\u975e\u5e38\u306b\u8907\u96d1\u3067\u3059\u3002\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t\t\t\t]\n\t}\n<\/script>\n\r\n\r\n\r\n<p><\/p>\r\n\r\n<\/div>\r\n <script>\r\n  var x = document.getElementById(\"view1\");\r\n  var y = document.getElementById(\"view2\");\r\n  var btn11 = document.getElementById(\"btn11\");\r\n  var btn12 = document.getElementById(\"btn12\");\r\nfunction btn1(){\r\n  x.className = \"show\";\r\n  y.className = \"hide\";\r\n  btn12.className = \"btn-disabled\";\r\n  btn11.className = \"btnx\";\r\ndocument.getElementById(\"demon\").innerHTML = \"Quantization of Neural Network Model for AI Hardware\";\r\n\r\n}\r\nfunction btn2(){\r\n  x.className = \"hide\";\r\n  y.className = \"show\";\r\n  btn11.className = \"btn-disabled\";\r\n  btn12.className = \"btnx\";\r\n  \r\n document.getElementById(\"demon\").innerHTML = \"AI\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u306e\u30cb\u30e5\u30fc\u30e9\u30eb\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30e2\u30c7\u30eb\u306e\u91cf\u5b50\u5316\";\r\n}\r\n<\/script>","protected":false},"excerpt":{"rendered":"<p>Background In recent years, deep learning-based Artificial Intelligence (AI) and Machine Learning (ML) models are moving from cloud to the edge devices for various factors such as bandwidth as in Figure-1. Power consumption, latency, hardware size are important aspects for inference at the edge. Moreover, The Models developed in the cloud[\u2026]<\/p>\n","protected":false},"author":3,"featured_media":601,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[6],"tags":[61,53,57,56,54,55,59,60],"class_list":["post-438","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technology","tag-asymmetric-quantization","tag-deep-learning","tag-neural-ai-models","tag-neural-network-algorithm","tag-neural-network-in-artificial-intelligence","tag-neural-network-models","tag-quantization","tag-symmetric-quantization"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Quantization of Neural Network Model for AI Hardware - Gyrus AI | Blog | Insights on AI &amp; Intelligent Media Search, In-scene Ad Placement, Automated Video Anonymization Technologies<\/title>\n<meta name=\"description\" content=\"Quantization of Neural Network models for AI hardware can reduce latency, hardware size &amp; power consumption enabling high-speed inference.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Quantization of Neural Network Model for AI Hardware - Gyrus AI | Blog | Insights on AI &amp; Intelligent Media Search, In-scene Ad Placement, Automated Video Anonymization Technologies\" \/>\n<meta property=\"og:description\" content=\"Quantization of Neural Network models for AI hardware can reduce latency, hardware size &amp; power consumption enabling high-speed inference.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/\" \/>\n<meta property=\"og:site_name\" content=\"Gyrus AI | Blog | Insights on AI &amp; Intelligent Media Search, In-scene Ad Placement, Automated Video Anonymization Technologies\" \/>\n<meta property=\"article:published_time\" content=\"2019-11-04T05:39:51+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-01-28T04:01:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/12\/quantization.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"771\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Chakra Parvathaneni\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@GyrusAI\" \/>\n<meta name=\"twitter:site\" content=\"@GyrusAI\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Chakra Parvathaneni\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/\"},\"author\":{\"name\":\"Chakra Parvathaneni\",\"@id\":\"https:\/\/gyrus.ai\/blog\/#\/schema\/person\/ef9660a4074508218cfd688bf9095c02\"},\"headline\":\"Quantization of Neural Network Model for AI Hardware\",\"datePublished\":\"2019-11-04T05:39:51+00:00\",\"dateModified\":\"2021-01-28T04:01:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/\"},\"wordCount\":1589,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/gyrus.ai\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/12\/quantization.jpg\",\"keywords\":[\"Asymmetric Quantization\",\"Deep learning\",\"Neural AI models\",\"Neural Network Algorithm\",\"neural network in artificial intelligence\",\"Neural Network Models\",\"Quantization\",\"symmetric Quantization\"],\"articleSection\":[\"Technology\"],\"inLanguage\":\"en\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/\",\"url\":\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/\",\"name\":\"Quantization of Neural Network Model for AI Hardware - Gyrus AI | Blog | Insights on AI &amp; Intelligent Media Search, In-scene Ad Placement, Automated Video Anonymization Technologies\",\"isPartOf\":{\"@id\":\"https:\/\/gyrus.ai\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/12\/quantization.jpg\",\"datePublished\":\"2019-11-04T05:39:51+00:00\",\"dateModified\":\"2021-01-28T04:01:10+00:00\",\"description\":\"Quantization of Neural Network models for AI hardware can reduce latency, hardware size & power consumption enabling high-speed inference.\",\"breadcrumb\":{\"@id\":\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#breadcrumb\"},\"inLanguage\":\"en\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#primaryimage\",\"url\":\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/12\/quantization.jpg\",\"contentUrl\":\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/12\/quantization.jpg\",\"width\":1024,\"height\":771,\"caption\":\"Quantization of Neural Network Model for AI Hardware\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/gyrus.ai\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Quantization of Neural Network Model for AI Hardware\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/gyrus.ai\/blog\/#website\",\"url\":\"https:\/\/gyrus.ai\/blog\/\",\"name\":\"Gyrus AI\",\"description\":\"Gyrus AI | Blog | Insights on AI &amp; Intelligent Media Search, In-scene Ad Placement, Automated Video Anonymization Technologies\",\"publisher\":{\"@id\":\"https:\/\/gyrus.ai\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/gyrus.ai\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/gyrus.ai\/blog\/#organization\",\"name\":\"Gyrus AI\",\"url\":\"https:\/\/gyrus.ai\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\/\/gyrus.ai\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2025\/02\/gyrus-1.png\",\"contentUrl\":\"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2025\/02\/gyrus-1.png\",\"width\":11400,\"height\":4500,\"caption\":\"Gyrus AI\"},\"image\":{\"@id\":\"https:\/\/gyrus.ai\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/GyrusAI\",\"https:\/\/www.linkedin.com\/company\/gyrusai\/\",\"https:\/\/www.youtube.com\/channel\/UCk2GzLj6xp0A6Wqix1GWSkw\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/gyrus.ai\/blog\/#\/schema\/person\/ef9660a4074508218cfd688bf9095c02\",\"name\":\"Chakra Parvathaneni\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/cc0ddb7970b9bb38750d032d4827759280f344cea48df98f350ca6086059f462?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/cc0ddb7970b9bb38750d032d4827759280f344cea48df98f350ca6086059f462?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/cc0ddb7970b9bb38750d032d4827759280f344cea48df98f350ca6086059f462?s=96&d=mm&r=g\",\"caption\":\"Chakra Parvathaneni\"},\"url\":\"https:\/\/gyrus.ai\/blog\/author\/chakra-parvathaneni\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Quantization of Neural Network Model for AI Hardware - Gyrus AI | Blog | Insights on AI &amp; Intelligent Media Search, In-scene Ad Placement, Automated Video Anonymization Technologies","description":"Quantization of Neural Network models for AI hardware can reduce latency, hardware size & power consumption enabling high-speed inference.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/","og_locale":"en_US","og_type":"article","og_title":"Quantization of Neural Network Model for AI Hardware - Gyrus AI | Blog | Insights on AI &amp; Intelligent Media Search, In-scene Ad Placement, Automated Video Anonymization Technologies","og_description":"Quantization of Neural Network models for AI hardware can reduce latency, hardware size & power consumption enabling high-speed inference.","og_url":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/","og_site_name":"Gyrus AI | Blog | Insights on AI &amp; Intelligent Media Search, In-scene Ad Placement, Automated Video Anonymization Technologies","article_published_time":"2019-11-04T05:39:51+00:00","article_modified_time":"2021-01-28T04:01:10+00:00","og_image":[{"width":1024,"height":771,"url":"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/12\/quantization.jpg","type":"image\/jpeg"}],"author":"Chakra Parvathaneni","twitter_card":"summary_large_image","twitter_creator":"@GyrusAI","twitter_site":"@GyrusAI","twitter_misc":{"Written by":"Chakra Parvathaneni","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#article","isPartOf":{"@id":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/"},"author":{"name":"Chakra Parvathaneni","@id":"https:\/\/gyrus.ai\/blog\/#\/schema\/person\/ef9660a4074508218cfd688bf9095c02"},"headline":"Quantization of Neural Network Model for AI Hardware","datePublished":"2019-11-04T05:39:51+00:00","dateModified":"2021-01-28T04:01:10+00:00","mainEntityOfPage":{"@id":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/"},"wordCount":1589,"commentCount":0,"publisher":{"@id":"https:\/\/gyrus.ai\/blog\/#organization"},"image":{"@id":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#primaryimage"},"thumbnailUrl":"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/12\/quantization.jpg","keywords":["Asymmetric Quantization","Deep learning","Neural AI models","Neural Network Algorithm","neural network in artificial intelligence","Neural Network Models","Quantization","symmetric Quantization"],"articleSection":["Technology"],"inLanguage":"en","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/","url":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/","name":"Quantization of Neural Network Model for AI Hardware - Gyrus AI | Blog | Insights on AI &amp; Intelligent Media Search, In-scene Ad Placement, Automated Video Anonymization Technologies","isPartOf":{"@id":"https:\/\/gyrus.ai\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#primaryimage"},"image":{"@id":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#primaryimage"},"thumbnailUrl":"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/12\/quantization.jpg","datePublished":"2019-11-04T05:39:51+00:00","dateModified":"2021-01-28T04:01:10+00:00","description":"Quantization of Neural Network models for AI hardware can reduce latency, hardware size & power consumption enabling high-speed inference.","breadcrumb":{"@id":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#breadcrumb"},"inLanguage":"en","potentialAction":[{"@type":"ReadAction","target":["https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/"]}]},{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#primaryimage","url":"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/12\/quantization.jpg","contentUrl":"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2019\/12\/quantization.jpg","width":1024,"height":771,"caption":"Quantization of Neural Network Model for AI Hardware"},{"@type":"BreadcrumbList","@id":"https:\/\/gyrus.ai\/blog\/quantization-of-neural-network-model-for-ai-hardware\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/gyrus.ai\/blog\/"},{"@type":"ListItem","position":2,"name":"Quantization of Neural Network Model for AI Hardware"}]},{"@type":"WebSite","@id":"https:\/\/gyrus.ai\/blog\/#website","url":"https:\/\/gyrus.ai\/blog\/","name":"Gyrus AI","description":"Gyrus AI | Blog | Insights on AI &amp; Intelligent Media Search, In-scene Ad Placement, Automated Video Anonymization Technologies","publisher":{"@id":"https:\/\/gyrus.ai\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/gyrus.ai\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en"},{"@type":"Organization","@id":"https:\/\/gyrus.ai\/blog\/#organization","name":"Gyrus AI","url":"https:\/\/gyrus.ai\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/gyrus.ai\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2025\/02\/gyrus-1.png","contentUrl":"https:\/\/gyrus.ai\/blog\/wp-content\/uploads\/2025\/02\/gyrus-1.png","width":11400,"height":4500,"caption":"Gyrus AI"},"image":{"@id":"https:\/\/gyrus.ai\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/GyrusAI","https:\/\/www.linkedin.com\/company\/gyrusai\/","https:\/\/www.youtube.com\/channel\/UCk2GzLj6xp0A6Wqix1GWSkw"]},{"@type":"Person","@id":"https:\/\/gyrus.ai\/blog\/#\/schema\/person\/ef9660a4074508218cfd688bf9095c02","name":"Chakra Parvathaneni","image":{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/secure.gravatar.com\/avatar\/cc0ddb7970b9bb38750d032d4827759280f344cea48df98f350ca6086059f462?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/cc0ddb7970b9bb38750d032d4827759280f344cea48df98f350ca6086059f462?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/cc0ddb7970b9bb38750d032d4827759280f344cea48df98f350ca6086059f462?s=96&d=mm&r=g","caption":"Chakra Parvathaneni"},"url":"https:\/\/gyrus.ai\/blog\/author\/chakra-parvathaneni\/"}]}},"_links":{"self":[{"href":"https:\/\/gyrus.ai\/blog\/wp-json\/wp\/v2\/posts\/438","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gyrus.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gyrus.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gyrus.ai\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/gyrus.ai\/blog\/wp-json\/wp\/v2\/comments?post=438"}],"version-history":[{"count":0,"href":"https:\/\/gyrus.ai\/blog\/wp-json\/wp\/v2\/posts\/438\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/gyrus.ai\/blog\/wp-json\/wp\/v2\/media\/601"}],"wp:attachment":[{"href":"https:\/\/gyrus.ai\/blog\/wp-json\/wp\/v2\/media?parent=438"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gyrus.ai\/blog\/wp-json\/wp\/v2\/categories?post=438"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gyrus.ai\/blog\/wp-json\/wp\/v2\/tags?post=438"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}