2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1, 2
 
 Re: Борьба с выбросами при работе с малой выборкой
Сообщение23.11.2016, 05:45 
Аватара пользователя


21/09/12

1871
Задача ТС обозначена Википедией нерешённой проблемой статистики. И главное здесь проблема: полученное значение "выброс" или нет? И что с ним делать? Просто отбросить? Заменить на другое значение - какое?
Вопросы не "философские" и даже не формальной статистики. Только практические соображения - исходя из конкретной задачи.

 Профиль  
                  
 
 Re: Борьба с выбросами при работе с малой выборкой
Сообщение23.11.2016, 09:28 
Заслуженный участник


20/08/14
11067
Россия, Москва
Xey в сообщении #1170983 писал(а):
Если это констатация состояния системы на данный момент, то зачем скрывать эту информацию.. Проще расширить область допустимых значений сигналов
atlakatl в сообщении #1171032 писал(а):
Вопросы не "философские" и даже не формальной статистики. Только практические соображения - исходя из конкретной задачи.

Мне показалось zcorvid в первом же сообщении указал сильную "частность" его задачи: и что это лишь измерение некоторого значения, и что истинное значение вообще не меняется со временем, и что измерения подвержены шуму с редкими сильными выбросами. Пользоваться при этом общими методами конечно можно, но малоэффективно. Гораздо проще и эффективнее использовать данную априори информацию (о стабильности измеряемого параметра и малости шумов) и отбрасывать всё что значительно вылезает за уровень шумов (т.е. выбросы) усредняя остаток (медиана тут не нужна, средняяя сумма будет точнее). Порог отбрасывания выбросов подобрать априори - существенной пользы от адаптивности на заявленной ТС задаче не просматривается - по реальным данным измерений с 2-х-3-х-кратным запасом. За центр распределения шума брать максимально точное значение измерений - результат усреднения предыдущих измерений (предыдущий "ответ"). Для начального значения выбрать максимально надёжное значение - медиану первой выборки.

(Мой вариант)

Хотя я бы сделал ещё проще, раз уж измеряемое значение мало (вообще не) меняется со временем, а выбросы никакой полезной информации не несут, то усреднял бы модифицированным скользящим средним с формулой $S_{n+1}=S_n + \dfrac{x_n-S_n}{n}$ ($n$ - длина усреднения), отбрасывая перед этим все измерения удаляющиеся от $S_n$ больше чем на величину априорно заданного порога (в %). А при больших $n$ фильтрация выбросов не особо и нужна. Единственная сложность - выбрать начальные условия, тут вариантов много, для простоты до накопления $n$ измерений (или только для первой выборки) считал бы обычную среднюю сумму без фильтрации выбросов. При выборе $n=2^k$ или $n=256^k$ вычисления совсем упрощаются. $n$ выбрал бы достаточно большим для получения желаемой точности, вплоть до десятков тысяч.
Если же измеряемый параметр всё же может плавно меняться несмотря за отрицание этого ТС, то или выбрать $n$ меньше времени дрейфа измеряемого параметра на величину желаемой ошибки усреднения, или вычислять среднее ошибки нескольких (десятков/сотен) последних измерений, как только она удалилась от нуля - уменьшать $n$ для более быстрой реакции усреднения.
Вообще, непонятно зачем ТС ограничивается независимостью выборок - и из-за её малого объёма получает кучу проблем.
PS. Прошу прощения за нематематичность решений, мне с точки зрения программирования легче.

 Профиль  
                  
 
 Re: Борьба с выбросами при работе с малой выборкой
Сообщение23.11.2016, 12:29 
Аватара пользователя


21/01/09
3923
Дивногорск
Лучше медианной оценки для этой задачи не найти. Для выборки в 9 значений защита до 4-х выбросов с каждой стороны. Если железно знать частоту их появления, то возможна и меньшая выборка.

 Профиль  
                  
 
 Re: Борьба с выбросами при работе с малой выборкой
Сообщение23.11.2016, 15:22 
Заслуженный участник


20/08/14
11067
Россия, Москва
Александрович в сообщении #1171089 писал(а):
Лучше медианной оценки для этой задачи не найти.
Не согласен, для отсортированной выборки $\{101,102,103,104,105,115,16,117,118\}$ медиана будет $105$, а среднее $109$ и оно ближе к истинному значению.

-- 23.11.2016, 15:25 --

Медиана хороша при огромных выбросах для исключения влияния таких выбросов. При фильтрации выбросов и малых выборках медиана будет "дрожать" сильнее средней суммы.

 Профиль  
                  
 
 Re: Борьба с выбросами при работе с малой выборкой
Сообщение24.11.2016, 09:51 
Аватара пользователя


28/05/15
71
Yuri Gendelman в сообщении #1170840 писал(а):
zcorvid в сообщении #1170518 писал(а):
В такой ситуации логично за окончательный ответ принять среднее арифметическое.
Более устойчивая (робастная, robust) оценка - использовать медиану.


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

Xey в сообщении #1170983 писал(а):
Непонятно , что представляют собой "ответы" (на сигналы)?
Если это реакция на сигналы , то надо совершенствовать систему регулирования.
Если это констатация состояния системы на данный момент, то зачем скрывать эту информацию.. Проще расширить область допустимых значений сигналов


Информация не секретная, происходит примерно следующее (под спойлером, там много писанины, зачастую нестрогой и плохо понятной).

(Спойлер)

Есть видеопоток, в нём производится выделение движущихся объектов, затем эти объекты участвуют как параметры в вычислении некоторой функции. Что это за функция. В системе есть набор параметров, их количество может быть от трёх, до нескольких миллионов, эти параметры являются параметрами среды, из которой взят видеопоток (например, видеопоток был снят с камеры наружного наблюдения, высота и углы подвеса камеры являются параметрами, могут быть более сложные параметры, отражающие, к примеру, данные о рельефе местности). Мы хотим найти эти параметры, используя видеопоток.

Функция качества на верных параметрых в идеальной ситуации равна нулю, на неверных больше нуля. Однако для её вычисления используется дополнительное устройство, которое даёт погрешности (причина на самом деле в том, что объекты не являются материальным точками, а часто могут иметь протяжённую форму). Это устройство вносит серьёзные ошибки вычисления, в итоге функция качества принимает очень гадостный вид, что-то типа:

$$
F(p_0, p_1, \dots , p_n) = F_{d} (p_0, p_1, \dots , p_n) + \varepsilon (p_0, p_1, \dots , p_n)
$$

детерминированная часть плюс случайная величина. Кроме того, случайность $F$ усиливается тем, что цель может быть выделена не очень хорошо, например чуть в стороне от реальной цели. Это ещё не все проблемы. Нам нужно найти нуль функции, на самом деле даже можно искать минимум. Минимум ищется генетическим алгоритмом, что усиливает влияние случайности, генетическим алгоритмом мы находим "оптимальные" значение $p_0, \dots , p_n$, и таких процедур для уточнения результата проводим несколько подряд. В итоге имеем выборку векторов $\{v_0, v_1 \dots , v_k\}$, и нужно как-то принять решение, какое значение отправить в систему в качестве окончательного.

Удалось уменьшить степень влияния случайных величин $\varepsilon$ (их можно на этапе вычисления функции качества частично обнаружать, и с помощью усечённой весовой функции немного гасить), также ещё было шаманство с детерминированной частью $F$ и с генетическим алгоритмом, в итоге сейчас минимум выделяется довольно резко, однако плавание есть, плюс на некоторых выборках иногда минимум находится какой-то совсем левый, это и даёт в итоге выбросы.


Прошу прощения, если плохо объяснил, объяснение сложное, поэтому и не включил его в первый пост.

atlakatl в сообщении #1171032 писал(а):
Задача ТС обозначена Википедией нерешённой проблемой статистики. И главное здесь проблема: полученное значение "выброс" или нет? И что с ним делать? Просто отбросить? Заменить на другое значение - какое?
Вопросы не "философские" и даже не формальной статистики. Только практические соображения - исходя из конкретной задачи.


Согласен, общего ответа тут быть не может. Если пытаться дать общий ответ, то частично его даёт одно из решений в первом посте - кластеризоваться. Если это удастся (что на самом деле тоже вопрос - кластеризацию тоже не всегда можно логичным образом провести), то кластерную структуру можно пытаться использовать для определения выбросов, например если два кластеры, в одном 2 точки, в другом 100, то маленький можно принять за выброс. Но это опять же, частные случаи, в конкретной задаче можно лишь попытаться понять специфику происходящего (например, увидеть, что вышеописанный пример с двумя кластерами является типичным), и принять уже организационное решение, как тут поступать.

Цитата:
И что с ним делать?


Отбросить, в нашем случае от выброса информации ноль, он мог быть получен из-за плохо отработавшей генетики, из-за чего алгоритм просто сел на границу интервала поиска.

--

Ответ на некоторые посты выше.

Винзоризованное среднее я нашёл, просто изначально писал слово с ошибкой, и гугл его не находил:

https://en.wikipedia.org/wiki/Winsorized_mean

Нашёл также ещё один интересный вариант:

Среднее Тьюки, Взвешенное среднее Тьюки

Сейчас в программу внёс 12 различных методов вычисления, от простого среднего арифметического и медианы, до винзоризованного среднего и среднего по Тьюки, пусть оператор имеет возможность выбрать. Среднее по Тьюки показывает себя очень успешно, из всех вариантов мне оно пока больше всего нравится.

Dmitry40, все ваши решения тоже вошли в качестве вариантов. Решить, что из 12ти лучше не могу, поэтому внёс всё, пусть уже на практике решают, что им будет лучше.

 Профиль  
                  
 
 Re: Борьба с выбросами при работе с малой выборкой
Сообщение26.11.2016, 22:05 
Аватара пользователя


21/01/09
3923
Дивногорск
У П.В.Новицкого и И.А.Зографа в "Оценка погрешностей результатов измерения" приводится оценка характеристики центра распределения через медиану 5-ти центров. Может подойдёт?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу Пред.  1, 2

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group