Cum calculez eroarea relativă atunci când valoarea adevărată este zero?

Spuneți că am $ x_ {true} = 0 $ și $ x_ {test} $. Dacă definesc eroarea relativă ca:

$ \ text {relative error} = \ frac {x_ {true} -x_ {test}} {x_ {true}} $

Atunci eroarea relativă este întotdeauna nedefinită. Dacă în schimb folosesc definiția:

$ \ text {relative error} = \ frac {x_ {true} -x_ {test}} {x_ {test}} $

Atunci eroarea relativă este întotdeauna de 100%. Ambele metode par inutile. Există o altă alternativă?

Comentarii

  • Am avut exact aceeași întrebare cu privire la polarizarea parametrilor în simulările Monte Carlo, folosind prima dvs. definiție. Una dintre valorile parametrilor mei a fost 0, așa că nu am ‘ calculat polarizarea parametrilor pentru acest parametru particular …
  • Soluția este să nu folosesc erori relative în acest caz.

Răspuns

Există multe alternative , în funcție de scop.


Unul obișnuit este „Diferența procentuală relativă” sau RPD, utilizat în procedurile de control al calității de laborator. Deși puteți găsi multe formule aparent diferite, toate se reduc la compararea diferenței dintre două valori cu magnitudinea lor medie:

$$ d_1 (x, y) = \ frac {x – y} {( | x | + | y |) / 2} = 2 \ frac {x – y} {| x | + | y |}. $$

Aceasta este o expresie semnată , pozitivă când $ x $ depășește $ y $ și negativă când $ y $ depășește $ x $. Valoarea sa se situează întotdeauna între -2 $ și 2 $. Prin utilizarea valorilor absolute în numitor, tratează numerele negative într-un mod rezonabil. Majoritatea referințelor pe care le găsesc, cum ar fi New Jersey DEP Site Remediation Program Evaluarea calității datelor și evaluarea utilizării datelor Ghidul tehnic , utilizează valoarea absolută de $ d_1 $ deoarece sunt interesați doar de amploarea erorii relative.


Un Articol Wikipedia despre Modificare și diferență relativă observă că

$$ d_ \ infty (x, y) = \ frac {| x – y |} {\ max (| x |, | y |)} $$

este frecvent utilizat ca test de toleranță relativă în algoritmi numerici cu virgulă mobilă. Același articol subliniază, de asemenea, că formule precum $ d_1 $ și $ d_ \ infty $ pot fi generalizate la

$$ d_f (x, y) = \ frac {x – y} {f (x, y)} $$

unde funcția $ f $ depinde direct de magnitudinile $ x $ și $ y $ (presupunând de obicei $ x $ și $ y $ sunt pozitive). Ca exemple, oferă media lor maximă, minimă și aritmetică (cu și fără a lua ele însele valorile absolute de $ x $ și $ y $), dar s-ar putea lua în considerare alte tipuri de medii, cum ar fi media geometrică $ \ sqrt {| xy |} $, media armonică $ 2 / (1 / | x | + 1 / | y |) $ și $ L ^ p $ înseamnă $ ((| x | ^ p + | y | ^ p) / 2) ^ { 1 / p} $. ($ d_1 $ corespunde $ p = 1 $ și $ d_ \ infty $ corespunde limitei ca $ p \ to \ infty $.) S-ar putea alege un $ f $ pe baza comportamentului statistic așteptat de $ x $ și $ y $. De exemplu, cu distribuții aproximativ lognormale, media geometrică ar fi o alegere atractivă pentru $ f $ deoarece este o medie semnificativă în acea circumstanță.


Majoritatea acestor formule întâmpină dificultăți atunci când numitorul este egal zero. În multe aplicații, fie nu este posibil, fie este inofensiv să setați diferența la zero atunci când $ x = y = 0 $.

Rețineți că toate aceste definiții au o invarianță fundamentală proprietate: oricare ar fi funcția de diferență relativă $ d $, nu se modifică atunci când argumentele sunt redimensionate uniform cu $ \ lambda \ gt 0 $:

$$ d (x, y) = d ( \ lambda x, \ lambda y). $$

Această proprietate ne permite să considerăm $ d $ drept o diferență relativă . Astfel, în special, o funcție non-invariantă ca

$$ d (x, y) =? \ \ Frac {| xy |} {1 + | y |} $$

pur și simplu nu se califică. Oricare ar fi virtutile pe care le-ar avea, nu exprimă o relativă diferență.


Povestea nu se termină aici. S-ar putea chiar să ne fie de folos să împingem implicațiile invarianței puțin mai departe.

Setul de toate perechile ordonate de numere reale $ (x, y) \ ne (0,0) $ unde $ (x, y) $ este considerat a fi același cu $ (\ lambda x, \ lambda y) $ este Linie proiectivă reală $ \ mathbb {RP} ^ 1 $. Atât în sens topologic, cât și în sens algebric, $ \ mathbb {RP} ^ 1 $ este un cerc. Orice $ (x, y) \ ne (0,0) $ determină o linie unică prin originea $ (0,0) $. Când $ x \ ne 0 $ panta sa este $ y / x $; în caz contrar, putem considera că panta lui este „infinită” (și fie negativă, fie pozitivă). O vecinătate a acestei linii verticale constă din linii cu pante extrem de mari pozitive sau extrem de mari negative. Putem parametra toate aceste linii în funcție de unghiul lor $ \ theta = \ arctan (y / x) $, cu $ – \ pi / 2 \ lt \ theta \ le \ pi / 2 $.Asociat cu fiecare astfel de $ \ theta $ este un punct al cercului,

$$ (\ xi, \ eta) = (\ cos (2 \ theta), \ sin (2 \ theta)) = \ left (\ frac {x ^ 2-y ^ 2} {x ^ 2 + y ^ 2}, \ frac {2xy} {x ^ 2 + y ^ 2} \ right). $$

Orice distanță definită pe cerc poate fi folosită pentru a defini o diferență relativă.

Ca exemplu de unde poate duce acest lucru, luați în considerare distanța obișnuită (euclidiană) pe cerc, prin care distanța dintre două puncte este mărimea unghiului dintre ele. Diferența relativă este cea mai mică când $ x = y $, corespunzător $ 2 \ theta = \ pi / 2 $ (sau $ 2 \ theta = -3 \ pi / 2 $ când $ x $ și $ y $ au semne opuse). Din acest punct de vedere, o diferență relativă naturală pentru numerele pozitive $ x $ și $ y $ ar fi distanța până la acest unghi:

$$ d_S (x, y) = \ left | 2 \ arctan \ left (\ frac {y} {x} \ right) – \ pi / 2 \ right |. $$

La prima comandă, aceasta este distanța relativă $ | xy | / | y | $ – -dar funcționează chiar și când $ y = 0 $. Mai mult decât atât, nu explodează, dar în schimb (ca distanță semnată) este limitată între $ – \ pi / 2 $ și $ \ pi / 2 $, așa cum indică acest grafic:

Figura

Aceasta sugerează cât de flexibile sunt alegerile atunci când selectați o modalitate de măsurare a diferențelor relative.

Comentarii

  • Vă mulțumim pentru răspunsul cuprinzător, care credeți că este cea mai bună referință pentru această linie: ” este frecvent utilizat ca test de toleranță relativă în algoritmi numerici cu virgulă mobilă. Același articol subliniază, de asemenea, că formule precum d1d1 și d∞d∞ pot fi generalizate la ”
  • @Hammad Ați urmat linkul către articolul Wikipedia?
  • Da! Am aruncat o privire pe Wikipedia; cred că ‘ s nu o referință reală (de asemenea, acea linie este fără nicio referință pe wiki)
  • btw, nevermind Am găsit o referință academică pentru asta 🙂 tandfonline.com/doi/abs/10.1080/00031305.1985.10479385
  • @KutalmisB Vă mulțumim că ați observat că: ” min ” nu ‘ nu aparține deloc acolo. Se pare că ar fi putut fi un vestigiu al unei formule mai complexe care se ocupa de toate semnele posibile de $ x $ și $ y $ pe care le-am simplificat ulterior. L-am eliminat.

Răspuns

Mai întâi, rețineți că de obicei luați valoarea absolută în calcularea relativei eroare.

O soluție obișnuită la problemă este calcularea

$$ \ text {relative error} = \ frac {\ left | x _ {\ text {true}} – x _ {\ text {test}} \ right |} {1+ \ left | x _ {\ text {true}} \ right |}. $$

Comentarii

  • Acest lucru este problematic, deoarece variază în funcție de unitățile de măsură alese pentru valori.
  • Că ‘ este absolut adevărat. Aceasta nu este ‘ o soluție perfectă la problemă, dar este o abordare obișnuită care funcționează în mod rezonabil atunci când $ x $ este bine scalat.
  • Ați putea detalia în răspunsul dvs. la ceea ce înțelegeți prin ” bine scalat „? De exemplu, să presupunem că datele provin din calibrarea unui sistem de măsurare chimică apoasă conceput pentru concentrații cuprinse între 0 $ și 0,000001 $ moli / litru, care poate atinge o precizie de, să zicem, trei cifre semnificative. Prin urmare, ” eroarea relativă ” ar fi în mod constant zero, cu excepția măsurătorilor evident eronate. Având în vedere acest lucru, cum ați schimba cu exactitate astfel de date?
  • Exemplul dvs. este unul în care variabila nu este bine dimensionată. ‘ Prin ” bine scalat „, vreau să spun că acea variabilă este scalată astfel încât să ia valori într-un interval mic (de exemplu, un cuplu de ordine de mărime) aproape de 1. Dacă variabila dvs. preia valori peste mai multe ordine de mărime decât ‘ ați avut probleme de scalare mai grave și această abordare simplă nu este ‘ nu va fi adecvat.
  • Orice referință pentru această abordare? Numele acestei metode? Vă mulțumim.

Răspuns

Formula MAPE

Găsirea MAPE,

Este un subiect foarte discutabil și mulți colaboratori open source au discutat pe tema de mai sus. Cea mai eficientă abordare de până acum este urmată de dezvoltatori. Consultați acest PR pentru a afla mai multe.

Răspuns

Am fost un pic confuz cu privire la asta pentru o vreme. În cele din urmă, este pentru că dacă încercați să măsurați eroarea relativă față de zero, atunci încercați să forțați ceva care pur și simplu nu există.

Dacă vă gândiți la asta, comparați merele cu portocalele atunci când comparați eroarea relativă cu eroarea măsurată de la zero, deoarece eroarea măsurată de la zero este echivalentă cu valoarea măsurată (de aceea obțineți o eroare de 100% atunci când împărțiți la numărul de test).

De exemplu, luați în considerare eroarea de măsurare a presiunii manometrului (presiunea relativă din atmosferă) față de presiunea absolută. Spuneți că utilizați un instrument pentru a măsura presiunea manometrului în condiții atmosferice perfecte, iar dispozitivul dvs. a măsurat presiunea atmosferică la față, astfel încât să înregistreze o eroare de 0%. Folosind ecuația pe care ați furnizat-o și presupunând mai întâi că am folosit presiunea manometrului măsurat, pentru a calcula eroarea relativă: $$ \ text {relative error} = \ frac {P_ {gauge, true} – P_ {gauge, test}} {P_ {gauge, true}} $$ Apoi $ P_ {gauge, true} = 0 $ și $ P_ {gauge, test} = 0 $ și nu primiți 0% eroare, în schimb este nedefinită. Acest lucru se datorează faptului că eroarea procentuală reală ar trebui să utilizeze valorile de presiune absolute astfel: $$ \ text {relative error} = \ frac {P_ {absolute, true} -P_ {absolute, test}} {P_ {absolute, true}} $$ Acum $ P_ {absolute, true} = 1atm $ și $ P_ {absolute, test} = 1atm $ și primiți 0% eroare. Aceasta este aplicarea corectă a erorii relative. Aplicația inițială care a folosit presiunea manometrului seamănă mai mult cu „eroare relativă a valorii relative”, care este un lucru diferit de „eroare relativă”. Trebuie să convertiți presiunea manometrului în absolut înainte de a măsura eroarea relativă.

Soluția la întrebarea dvs. este să vă asigurați că aveți de-a face cu valori absolute atunci când măsurați eroarea relativă, astfel încât zero să nu fie o posibilitate. Apoi, primiți de fapt o eroare relativă și o puteți folosi ca o incertitudine sau ca valoare a erorii procentuale reale. Dacă trebuie să rămâneți cu valori relative, ar trebui să utilizați erori absolute, deoarece eroarea relativă (procentuală) se va schimba în funcție de punctul de referință.

Este greu să puneți o definiție concretă la 0. .. „Zero este întregul notat 0 care, atunci când este utilizat ca număr de numărare, înseamnă că nu există obiecte.” – Wolfram MathWorld http://mathworld.wolfram.com/Zero.html

Simțiți-vă liber să alegeți nit, dar zero înseamnă, în esență, nimic, nu este acolo. De aceea nu are sens să folosiți presiunea manometrului atunci când calculați eroarea relativă. , deși util, presupune că nu există nimic la presiunea atmosferică. Știm că acest lucru nu este cazul, deși are o presiune absolută de 1 atm. Astfel, eroarea relativă față de nimic, pur și simplu nu există, este nedefinită .

Simțiți-vă liber să argumentați împotriva acestui lucru, pur și simplu: orice remedieri rapide, cum ar fi adăugarea uneia la valoarea inferioară, sunt defecte și nu sunt exacte. Ele pot fi în continuare utile dacă încercați pur și simplu să minimizați erorile. Dacă totuși încercați să faceți măsurători exacte ale incertitudinii, nu atât de mult …

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *