Как рассчитать относительную ошибку, когда истинное значение равно нулю?

32

Как рассчитать относительную ошибку, когда истинное значение равно нулю?

Скажем, у меня есть и . Если я определю относительную ошибку как:х Руководство T E сек тИксTрUезнак равно0ИксTеsT

относительная ошибказнак равноИксTрUе-ИксTеsTИксTрUе

Тогда относительная ошибка всегда не определена. Если вместо этого я использую определение:

относительная ошибказнак равноИксTрUе-ИксTеsTИксTеsT

Тогда относительная погрешность всегда равна 100%. Оба метода кажутся бесполезными. Есть ли другая альтернатива?

OKJ
источник
У меня был точно такой же вопрос относительно смещения параметров в симуляциях Монте-Карло, используя ваше первое определение. Одно из моих значений параметра было 0, поэтому я не рассчитывал смещение параметра для этого конкретного параметра ...
Патрик Куломб,
2
Решение состоит в том, чтобы не использовать относительную ошибку в этом случае.
Марк Клазен
2
Один вариант, который отвечает на намерение, если не на букву вашего вопроса, состоит в использовании немного другой меры, которая близко согласуется с относительной ошибкой, когда относительная ошибка мала, например, . (Используйте когда ) Это конкретное решение универсально в том смысле, что оно инвариантно при изменении единицы измерения (поскольку оно не содержит произвольных констант). 0 x true = x test = 02(xtruextest)/(|xtrue|+|xtest|)0xtrue=xtest=0
whuber
@whuber Я думаю, вы должны рассмотреть возможность размещения этого комментария в качестве ответа, так как он кажется выше существующих.
Серебряная рыбка
@ Серебро Вы правы - я прошу прощения за размещение ответа в качестве комментария. Поэтому я немного расширил этот комментарий в ответ.
whuber

Ответы:

39

Есть много альтернатив, в зависимости от цели.


Распространенной является «Относительная процентная разница», или RPD, используемая в лабораторных процедурах контроля качества. Хотя вы можете найти много, казалось бы, разных формул, все они сводятся к сравнению разности двух значений со средней величиной:

d1(x,y)=x-Y(|Икс|+|Y|)/2знак равно2Икс-Y|Икс|+|Y|,

Это подписанное выражение, положительно , когда превышает , так и отрицательные , когда превышает . Его значение всегда лежит между и . Используя абсолютные значения в знаменателе, он обрабатывает отрицательные числа разумным способом. В большинстве ссылок, которые я могу найти, таких как Техническое руководство по оценке качества данных и оценке юзабилити программы данных Программы восстановления участка DEP Нью-Джерси , используется абсолютное значение поскольку они заинтересованы только в величине относительной ошибки.у у х - 2 2 д 1ИксYYИкс-22d1


Статья в Википедии об относительных изменениях и различиях отмечает, что

d(x,y)=|xy|max(|x|,|y|)

часто используется в качестве теста относительной терпимости в численных алгоритмах с плавающей запятой. В той же статье также указывается, что формулы типа и могут быть обобщены наd d1d

df(x,y)=xyf(x,y)

где функция напрямую зависит от величин и (обычно предполагая, что и положительны). В качестве примеров он предлагает их максимальные, минимальные и средние арифметические значения (с учетом и без учета абсолютных значений и самих себя), но можно рассмотреть другие виды средних значений, такие как среднее геометрическое значение , гармоника означают а означает . ( соответствует а соответствует пределу какx y x y x y fxyxyxy2/(1/|x|+1/|y|)Lp((|x|p+|y|p)/2)1 / pd1p=1dpfxyf|xy|2/(1/|x|+1/|y|)Lp((|x|p+|y|p)/2)1/pd1p=1dp .) Можно выбрать на основе ожидаемого статистического поведения и . Например, при приблизительно логнормальных распределениях среднее геометрическое было бы привлекательным выбором для потому что это значимое среднее в этих обстоятельствах.fxyf


Большинство этих формул сталкиваются с трудностями, когда знаменатель равен нулю. Во многих приложениях это либо невозможно, либо безвредно устанавливать разницу равной нулю, когда .x=y=0

Обратите внимание, что все эти определения имеют фундаментальное свойство инвариантности: какой бы ни была относительная разностная функция , она не изменяется, когда аргументы равномерно масштабируются с помощью :λ > 0dλ>0

d(x,y)=d(λx,λy).

Именно это свойство , которое позволяет рассматривать быть относительное различие. Так, в частности, неинвариантная функция типаd

d(x,y)=? |xy|1+|y|

просто не подходит. Какими бы добродетелями он ни обладал, он не выражает относительной разницы.


На этом история не заканчивается. Мы могли бы даже посчитать полезным продвинуть последствия инвариантности немного дальше.

Множество всех упорядоченных пар вещественных чисел где считается таким же, как - вещественная проективная прямая . И в топологическом, и в алгебраическом смысле является окружностью. Любой определяет уникальную линию через начало координат . Когда его наклон равен( x , y ) ( λ x , λ y ) R P 1 R P 1 ( x , y ) ( 0 , 0 ) ( 0 , 0 ) x 0 y / х θ = арктан ( у / х ) - π(x,y)(0,0)(x,y)(λx,λy) RP1RP1(x,y)(0,0)(0,0)x0y/x; в противном случае мы можем считать его наклон «бесконечным» (и отрицательным, или положительным). Соседство этой вертикальной линии состоит из линий с очень большими положительными или очень большими отрицательными наклонами. Мы можем параметризовать все такие линии в терминах их угла , используя . С каждой такой точка на окружности,θ=arctan(y/x)θπ/2<θπ/2θ

(ξ,η)=(cos(2θ),sin(2θ))=(x2y2x2+y2,2xyx2+y2).

Поэтому любое расстояние, определенное на окружности, можно использовать для определения относительной разности.

В качестве примера того, к чему это может привести, рассмотрим обычное (евклидово) расстояние на окружности, причем расстояние между двумя точками равно размеру угла между ними. Относительная разница наименьшая, когда , что соответствует (или когда и имеют противоположные знаки). С этой точки зрения естественная относительная разница для положительных чисел и будет расстоянием до этого угла:x=y2θ=π/22θ=3π/2xyxy

dS(x,y)=|2arctan(yx)π/2|.

Для первого порядка это относительное расстояние- но это работает, даже когда . Более того, он не взрывается, а вместо этого (как расстояние со знаком) ограничен между и , как показывает этот график:|xy|/|y|y=0π/2π/2

фигура

Это указывает на то, насколько гибок выбор при выборе способа измерения относительных различий.

Whuber
источник
Спасибо за исчерпывающий ответ, что, по вашему мнению, является лучшим справочником для этой строки: «часто используется в качестве теста относительной терпимости в численных алгоритмах с плавающей запятой. В той же статье также указывается, что формулы типа d1d1 и d∞d∞ могут быть обобщено до "
Хаммад Халим
1
Между прочим, я нашел академическую ссылку для этого :) tandfonline.com/doi/abs/10.1080/00031305.1985.10479385
Хаммад Халим
4
Почему это не было выбрано в качестве ответа? (извините, если это неправильный комментарий, но это лучший ответ)
Brash Equilibrium
2
@Brash Я ценю настроение. Принятие является уникальной областью первоначального автора: никто не может переопределить это (кроме как путем удаления принятого сообщения). В некоторых случаях, когда я чувствую то же, что и вы, я публикую комментарии, в которых четко указывается, как и почему я считаю, что некоторые ответы лучше или заслуживают внимания, чем другие. Даже если это ничего не изменит, такие комментарии могут сделать материал немного более полезным или понятным для будущих читателей, и в этом, в конечном итоге, и заключается смысл нашей работы на этом сайте.
whuber
1
@KutalmisB Спасибо, что заметили: «мин» там вообще не принадлежит. Похоже, это могло быть следом более сложной формулы, которая обрабатывает все возможные знаки и y, которые я позже упростил. Я удалил это. xy
whuber
11

Во-первых, обратите внимание, что вы обычно берете абсолютное значение при вычислении относительной ошибки.

Распространенным решением проблемы является вычисление

relative error=|xtruextest|1+|xtrue|.
Брайан Борхерс
источник
3
Это проблематично тем, что оно варьируется в зависимости от единиц измерения, выбранных для значений.
whuber
1
x
00.000001
1
Ваш пример - тот, где переменная плохо масштабируется. Под «хорошо масштабируемым» я подразумеваю, что эта переменная масштабируется таким образом, чтобы она принимала значения в небольшом диапазоне (например, на пару порядков), близком к 1. Если ваша переменная принимает значения на много порядков больше, чем вы У нас есть более серьезные проблемы с масштабированием, и этот простой подход не будет адекватным.
Брайан Борчерс
2
Любая ссылка для этого подхода? Название этого метода? Спасибо.
CroCo
0

Я был немного смущен этим некоторое время. В конце концов, это потому, что если вы пытаетесь измерить относительную ошибку по отношению к нулю, то вы пытаетесь заставить что-то, чего просто не существует.

Если вы думаете об этом, вы сравниваете яблоки с апельсинами, когда сравниваете относительную ошибку с ошибкой, измеренной с нуля, потому что ошибка, измеренная с нуля, эквивалентна измеренному значению (поэтому вы получаете 100% -ную ошибку при делении на номер теста).

relative error=Pgauge,truePgauge,testPgauge,truе
пgaUге,TрUезнак равно0Pgauge,test=0
relative error=Pabsolute,truePabsolute,testPabsolute,true
Pabsolute,true=1atmPabsolute,test=1atми вы получите ошибку 0%. Это правильное применение относительной ошибки. Исходное приложение, в котором использовалось манометрическое давление, было больше похоже на «относительную ошибку относительного значения», которая отличается от «относительной ошибки». Перед измерением относительной погрешности необходимо преобразовать манометрическое давление в абсолютное.

Решение вашего вопроса состоит в том, чтобы убедиться, что вы имеете дело с абсолютными значениями при измерении относительной погрешности, чтобы ноль был невозможен. Тогда вы фактически получаете относительную ошибку и можете использовать ее в качестве неопределенности или показателя вашей реальной процентной ошибки. Если вы должны придерживаться относительных значений, то вы должны использовать абсолютную ошибку, потому что относительная (процентная) ошибка будет меняться в зависимости от вашей контрольной точки.

Трудно дать конкретное определение 0 ... «Ноль - это целое число, обозначенное 0, которое при использовании в качестве счетного числа означает, что никаких объектов нет». - Wolfram MathWorld http://mathworld.wolfram.com/Zero.html

Не стесняйтесь выбирать, но ноль по сути ничего не значит, его там нет. Вот почему не имеет смысла использовать манометрическое давление при расчете относительной погрешности. Манометрическое давление, хотя и полезно, предполагает, что при атмосферном давлении ничего нет. Мы знаем, что это не так, потому что он имеет абсолютное давление 1 атм. Таким образом, относительная ошибка по отношению ни к чему, просто не существует, она не определена.

Не стесняйтесь спорить с этим, проще говоря: любые быстрые исправления, такие как добавление одного к нижнему значению, являются ошибочными и не точными. Они все еще могут быть полезны, если вы просто пытаетесь свести к минимуму ошибки. Если вы пытаетесь сделать точные измерения неопределенности, не так много ...

Тим Джонсен
источник
0

MAPE Формула

В поисках MAPE,

Это очень спорная тема, и многие участники с открытым исходным кодом обсуждали эту тему. Наиболее эффективный подход до сих пор используют разработчики. Пожалуйста, обратитесь к этому PR, чтобы узнать больше.

layman_brother
источник