{"id":1354,"date":"2026-02-26T15:39:24","date_gmt":"2026-02-26T18:39:24","guid":{"rendered":"https:\/\/www.galirows.com.br\/meublog\/?p=1354"},"modified":"2026-02-27T10:19:59","modified_gmt":"2026-02-27T13:19:59","slug":"tudo-sobre-mape-smape","status":"publish","type":"post","link":"http:\/\/www.galirows.com.br\/meublog\/blog\/tudo-sobre-mape-smape\/","title":{"rendered":"O importante a saber sobre MAPE e SMAPE"},"content":{"rendered":"\n<p>Diferente das m\u00e9tricas MSE e RMSE (veja sobre em <a href=\"https:\/\/www.galirows.com.br\/meublog\/blog\/tudo-sobre-mse-rmse\/\" title=\"O importante a saber sobre MSE e RMSE\">O importante a saber sobre MSE e RMSE<\/a>), <strong>MAPE<\/strong> e <strong>SMAPE<\/strong> mudam a natureza da an\u00e1lise, sando do erro absoluto para o <strong>erro relativo percentual<\/strong>.<\/p>\n\n\n\n<p>M\u00e9tricas como MSE, RMSE e MAE dependem da unidade (metros, kWh, reais), j\u00e1 MAPE e SMAPE s\u00e3o adimensionais e expressas em porcentagem. <\/p>\n\n\n\n<p>Um erro de 80 cm pode ser enorme se estiver relacionado com a altura de pessoas. Se a altura fora 160 cm, o erro \u00e9 de 50%. Mas o erro de 80 cm \u00e9 irrelevante no tamanho de uma rodovia de 1 km (seria um erro abaixo de 0,1%).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Defini\u00e7\u00e3o do MAPE e SMAPE<\/h2>\n\n\n\n<p>O <strong>Mean Absolute Percentage Error (MAPE)<\/strong> mede o erro absoluto em termos percentuais. Ele \u00e9 calculado a partir da equa\u00e7\u00e3o a seguir.<\/p>\n\n\n\n<div class=\"wp-block-math\"><math display=\"block\"><semantics><mrow><mi>M<\/mi><mi>A<\/mi><mi>P<\/mi><mi>E<\/mi><mo>=<\/mo><mfrac><mn>100<\/mn><mi>n<\/mi><\/mfrac><mrow><munderover><mo movablelimits=\"false\">\u2211<\/mo><mrow><mi>i<\/mi><mo>=<\/mo><mn>1<\/mn><\/mrow><mi>n<\/mi><\/munderover><\/mrow><mrow><mo fence=\"true\" form=\"prefix\">|<\/mo><mfrac><mrow><msub><mi>y<\/mi><mi>i<\/mi><\/msub><mo>\u2212<\/mo><msub><mover><mi>y<\/mi><mo stretchy=\"false\" class=\"tml-xshift\" style=\"math-style:normal;math-depth:0;\">^<\/mo><\/mover><mi>i<\/mi><\/msub><\/mrow><msub><mi>y<\/mi><mi>i<\/mi><\/msub><\/mfrac><mo fence=\"true\" form=\"postfix\">|<\/mo><\/mrow><\/mrow><annotation encoding=\"application\/x-tex\">MAPE = \\frac{100}{n}\\sum_{i=1}^{n} \\left| \\frac{y_i &#8211; \\hat{y}_i}{y_i} \\right|<\/annotation><\/semantics><\/math><\/div>\n\n\n\n<p>Onde:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><semantics><mrow><msub><mi>y<\/mi><mi>i<\/mi><\/msub><\/mrow><annotation encoding=\"application\/x-tex\">y_i<\/annotation><\/semantics><\/math>\u200b = valor real<\/li>\n\n\n\n<li><math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><semantics><mrow><msub><mover accent=\"true\"><mi>y<\/mi><mo>^<\/mo><\/mover><mi>i<\/mi><\/msub><\/mrow><annotation encoding=\"application\/x-tex\">\\hat{y}_i<\/annotation><\/semantics><\/math> = valor previsto pelo modelo<\/li>\n\n\n\n<li><math xmlns=\"http:\/\/www.w3.org\/1998\/Math\/MathML\"><semantics><mrow><mi>n<\/mi><\/mrow><annotation encoding=\"application\/x-tex\">n<\/annotation><\/semantics><\/math> = n\u00famero de amostras<\/li>\n<\/ul>\n\n\n\n<p>Um MAPE = 8 significa que o modelo erra, em m\u00e9dia, <strong>8% do valor real<\/strong>.<\/p>\n\n\n\n<p>O <strong>Symmetric Mean Absolute Percentage Error (SMAPE)<\/strong> usa a m\u00e9dia entre valor real e previsto no denominador.<\/p>\n\n\n\n<div class=\"wp-block-math\"><math display=\"block\"><semantics><mrow><mi>S<\/mi><mi>M<\/mi><mi>A<\/mi><mi>P<\/mi><mi>E<\/mi><mo>=<\/mo><mfrac><mn>100<\/mn><mi>n<\/mi><\/mfrac><mrow><munderover><mo movablelimits=\"false\">\u2211<\/mo><mrow><mi>i<\/mi><mo>=<\/mo><mn>1<\/mn><\/mrow><mi>n<\/mi><\/munderover><\/mrow><mfrac><mrow><mi>|<\/mi><msub><mi>y<\/mi><mi>i<\/mi><\/msub><mo>\u2212<\/mo><msub><mover><mi>y<\/mi><mo stretchy=\"false\" class=\"tml-xshift\" style=\"math-style:normal;math-depth:0;\">^<\/mo><\/mover><mi>i<\/mi><\/msub><mi>|<\/mi><\/mrow><mfrac><mrow><mi>|<\/mi><msub><mi>y<\/mi><mi>i<\/mi><\/msub><mi>|<\/mi><mo>+<\/mo><mi>|<\/mi><msub><mover><mi>y<\/mi><mo stretchy=\"false\" class=\"tml-xshift\" style=\"math-style:normal;math-depth:0;\">^<\/mo><\/mover><mi>i<\/mi><\/msub><mi>|<\/mi><\/mrow><mn>2<\/mn><\/mfrac><\/mfrac><\/mrow><annotation encoding=\"application\/x-tex\">SMAPE = \\frac{100}{n}\\sum_{i=1}^{n}\n\\frac{|y_i &#8211; \\hat{y}_i|}\n{\\frac{|y_i| + |\\hat{y}_i|}{2}}<\/annotation><\/semantics><\/math><\/div>\n\n\n\n<p>A diferen\u00e7a entre MAPE e SMAPE est\u00e1 exclusivamente no denominador da fra\u00e7\u00e3o percentual, mas essa altera\u00e7\u00e3o muda o comportamento da m\u00e9trica de forma significativa, sendo que o MAPE tem problema com valores pr\u00f3ximos de zero (ou o zero propriamente):<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>O MAPE n\u00e3o pode ser utilizado quando existem valores reais iguais a zero porque sua defini\u00e7\u00e3o envolve divis\u00e3o pelo valor real.<\/li>\n\n\n\n<li>Para valores pr\u00f3ximo a zero, considere o valor real de 0.1 e o previsto de 1. O erro seria de 1 &#8211; 0.1 = 0.9, o seja, um erro de 900%. Isso distorceria muito o resultado.<\/li>\n<\/ul>\n\n\n\n<p>Em s\u00edntese:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>MAPE mede o &#8220;Erro relativo ao valor real&#8221;, sendo orientado ao dado observado.<\/li>\n\n\n\n<li>SMAPE mede o &#8220;Erro relativo ao tamanho m\u00e9dio entre real e previsto&#8221;, sendo uma m\u00e9trica mais equilibrada entre previs\u00e3o e realidade.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Exemplos<\/h2>\n\n\n\n<p>Considere um modelo que realiza as previs\u00f5es conforme mostrado no gr\u00e1fico abaixo.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"846\" src=\"https:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo1_mape_smape-1024x846.png\" alt=\"\" class=\"wp-image-1360\" srcset=\"http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo1_mape_smape-1024x846.png 1024w, http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo1_mape_smape-300x248.png 300w, http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo1_mape_smape-150x124.png 150w, http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo1_mape_smape-768x635.png 768w, http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo1_mape_smape-1536x1269.png 1536w, http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo1_mape_smape.png 1715w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Os valores previstos s\u00e3o pr\u00f3ximos aos reais, obtendo tamb\u00e9m um valor das m\u00e9tricas similar: MAPE = 5,52% e SMAPE = 5,43%. Ou seja, o erro percentual \u00e9 est\u00e1vel e indica que o modelo erra cerca de 5,5% os valores em m\u00e9dia.<\/p>\n\n\n\n<p>Inserimos agora na amostra um valor pr\u00f3ximo de zero. O modelo continua prevendo os valores pr\u00f3ximo aos reais, mas o desempenho nas m\u00e9tricas cai, embora caia muito mais em rela\u00e7\u00e3o ao MAPE do que ao SMAPE.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"846\" src=\"https:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo2_mape_smape-1024x846.png\" alt=\"\" class=\"wp-image-1361\" srcset=\"http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo2_mape_smape-1024x846.png 1024w, http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo2_mape_smape-300x248.png 300w, http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo2_mape_smape-150x124.png 150w, http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo2_mape_smape-768x635.png 768w, http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo2_mape_smape-1536x1269.png 1536w, http:\/\/www.galirows.com.br\/meublog\/wp-content\/uploads\/2026\/02\/exemplo2_mape_smape.png 1715w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Com valor de MAPE = 184,75% e de SMAPE = 37,37%, o valor pr\u00f3ximo do zero piorou significativamente o resultado (afinal, s\u00e3o poucos os dados). O impacto ainda \u00e9 alto, mas bem menos distorcido com o SMAPE.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Preciso mostrar MAPE e SMAPE na avalia\u00e7\u00e3o do meu modelo?<\/h2>\n\n\n\n<p>MAPE e SMAPE medem essencialmente a mesma coisa por\u00e9m com <strong>comportamentos distintos em cen\u00e1rios espec\u00edficos<\/strong>. Mostrar ambos n\u00e3o adiciona informa\u00e7\u00e3o independente no sentido estat\u00edstico, mas pode adicionar <strong>robustez anal\u00edtica<\/strong>. Ou seja matematicamente necess\u00e1rio mostrar os dois, mas pode ser metodologicamente justific\u00e1vel dependendo do contexto do problema.<\/p>\n\n\n\n<p>Mostrar apenas MAPE pode ser questionado se houver valores pequenos. Mostrar apenas SMAPE pode dificultar compara\u00e7\u00e3o com trabalhos cl\u00e1ssicos\/antigos (MAPE foi proposto na d\u00e9cada de 1960, enquanto do SMAPE foi proposto na d\u00e9cada de 1980). Se mostrar os dois e os valores forem pr\u00f3ximos,  isso indica estabilidade do modelo. Em contexto cient\u00edfico ou de avalia\u00e7\u00e3o formal de modelos, apresentar ambos \u00e9 uma pr\u00e1tica prudente (mas se baseie no valor do SMAPE se tiver valores pr\u00f3ximo de zero).<\/p>\n\n\n\n<p> <br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Diferente das m\u00e9tricas MSE e RMSE (veja sobre em O importante a saber sobre MSE e RMSE), MAPE e SMAPE mudam a natureza da an\u00e1lise, sando do erro absoluto para o erro relativo percentual. M\u00e9tricas como MSE, RMSE e MAE dependem da unidade (metros, kWh, reais), j\u00e1 MAPE e SMAPE s\u00e3o adimensionais e expressas em [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"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":[381],"class_list":["post-1354","post","type-post","status-publish","format-standard","hentry","category-ia","tag-metricas"],"aioseo_notices":[],"amp_enabled":true,"_links":{"self":[{"href":"http:\/\/www.galirows.com.br\/meublog\/wp-json\/wp\/v2\/posts\/1354","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.galirows.com.br\/meublog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.galirows.com.br\/meublog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.galirows.com.br\/meublog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.galirows.com.br\/meublog\/wp-json\/wp\/v2\/comments?post=1354"}],"version-history":[{"count":4,"href":"http:\/\/www.galirows.com.br\/meublog\/wp-json\/wp\/v2\/posts\/1354\/revisions"}],"predecessor-version":[{"id":1362,"href":"http:\/\/www.galirows.com.br\/meublog\/wp-json\/wp\/v2\/posts\/1354\/revisions\/1362"}],"wp:attachment":[{"href":"http:\/\/www.galirows.com.br\/meublog\/wp-json\/wp\/v2\/media?parent=1354"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.galirows.com.br\/meublog\/wp-json\/wp\/v2\/categories?post=1354"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.galirows.com.br\/meublog\/wp-json\/wp\/v2\/tags?post=1354"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}