Вопрос математикам

User avatar
Privet
Администратор
Posts: 17204
Joined: 03 Jan 1999 10:01
Location: Redmond, WA

Re: Вопрос математикам

Post by Privet »

DropAndDrag wrote: 26 Dec 2020 19:37 по простому и по правильному нужно взять 3 самых высоких точки, написать квадратное уравнение и найти максимум.
peak detector in LabVIEW использует этот принцип и насчитал 218.243 и нахождение (32 + 4 * 3.408).
в экселе такое должно быть по идеи.
можно притащить за уши и 4-ую, и даже 5-ую точки, то бишь апроксимировать 3х степенным или 4-х степенным полиномом, но тогда однозначного решения обычно нет, а играться с ошибками - бог его знает

использовать какие-то фильтры на 8 точках - это ерунда. если бы были сотни точек, то можно было бы попытся убрать систематическую ошибку, например низкие или высокие частоты, ну или сетевую 60 Hz, но в данном случае на результат не должно сильно повлияет. вот если бы искать мелкие пики в шумах, то да, там что-то и можно выловить.

апроксимировать нормальным распределением - это полный бред. если бы находить какие-нибудь критерии достоверности события, то тогда можно загнать в нормальное распределение, а потом утверждать, что при сигма = 1 или 2 или 3, вероятность, того что точка принадлежит событию бла-бла-бла ...

все ИМХО, так математику уже давно забыл и остались ощущения ...
С памятью у Вас явно проблем нет, в отличие от меня. :)
С фильтрами действительно работать с несолькими точками проблематично, однако, в некоторой части мы используем выравнивание через сумму соседних отсчётов с коэффициентами. Решение примитивное, но оно неплохо в некоторых случаях подавляет шумы.
Привет.
User avatar
Privet
Администратор
Posts: 17204
Joined: 03 Jan 1999 10:01
Location: Redmond, WA

Re: Вопрос математикам

Post by Privet »

Я чуть позднее уберу глобальную видимость топика. Извиняюсь, но должен же я иметь хоть какой-то бенефит от содержания форума :). Обещаю не наглеть.
Оригинально он в viewforum.php?f=46
Привет.
DropAndDrag
Уже с Приветом
Posts: 6024
Joined: 11 Mar 2011 05:36

Re: Вопрос математикам

Post by DropAndDrag »

Privet wrote: 26 Dec 2020 20:05
DropAndDrag wrote: 26 Dec 2020 19:37 по простому и по правильному нужно взять 3 самых высоких точки, написать квадратное уравнение и найти максимум.
peak detector in LabVIEW использует этот принцип и насчитал 218.243 и нахождение (32 + 4 * 3.408).
в экселе такое должно быть по идеи.
можно притащить за уши и 4-ую, и даже 5-ую точки, то бишь апроксимировать 3х степенным или 4-х степенным полиномом, но тогда однозначного решения обычно нет, а играться с ошибками - бог его знает

использовать какие-то фильтры на 8 точках - это ерунда. если бы были сотни точек, то можно было бы попытся убрать систематическую ошибку, например низкие или высокие частоты, ну или сетевую 60 Hz, но в данном случае на результат не должно сильно повлияет. вот если бы искать мелкие пики в шумах, то да, там что-то и можно выловить.

апроксимировать нормальным распределением - это полный бред. если бы находить какие-нибудь критерии достоверности события, то тогда можно загнать в нормальное распределение, а потом утверждать, что при сигма = 1 или 2 или 3, вероятность, того что точка принадлежит событию бла-бла-бла ...

все ИМХО, так математику уже давно забыл и остались ощущения ...
С памятью у Вас явно проблем нет, в отличие от меня. :)
С фильтрами действительно работать с несолькими точками проблематично, всё равно в некоторой части мы используем выравнивание через сумму соседних отсчётом с коэффициентами, конечно. Решение примитивное, но оно неплохо в некоторых случаях подавляет шумы.
да, Вы правы. если утрировать, то меньше точек находят лучше амплитуду, а больше точек частоту.
проблема в том, что в пике всего 4 точки, так как левый край загнут вверх относительно правого и минимальная левая точка выше правого края. поэтому можно предположить, что слева что-то влияет на вторую точку, и возможно на третью точку. также это максимальный пик.
вот если бы в пике было был 20-30 точек, то тогда да можно было бы поусреднять, или еще используют вариант - частота на полувысоте пика, но нужен хорошо выраженный пик.
Palych
Уже с Приветом
Posts: 13723
Joined: 16 Jan 2001 10:01

Re: Вопрос математикам

Post by Palych »

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

Если значений совсем мало - средневзвешивать не получится в принципе.
User avatar
ReactoR
Уже с Приветом
Posts: 11255
Joined: 25 Mar 2004 02:31
Location: 🌫⛆☔♕☔⛆🌫
Been thanked: 1 time

Re: Вопрос математикам

Post by ReactoR »

Фурье преобразование, если сигнал наложение гармоник?
Last edited by ReactoR on 26 Dec 2020 20:44, edited 1 time in total.
Мир это Выхухоль.
DropAndDrag
Уже с Приветом
Posts: 6024
Joined: 11 Mar 2011 05:36

Re: Вопрос математикам

Post by DropAndDrag »

это много где применятся. например, вот тут https://bmcbioinformatics.biomedcentral ... -2105-10-4 неплохо описано для масс-спектрометров.
User avatar
Privet
Администратор
Posts: 17204
Joined: 03 Jan 1999 10:01
Location: Redmond, WA

Re: Вопрос математикам

Post by Privet »

Palych wrote: 26 Dec 2020 20:26 Предлагаю тупое, не математическое решение:
Найти пиковые точки, где предыдущее и последующее значения меньше.
И выбрать ту, что ближе к центру диапазона. Или ту что выше.

Если значений совсем мало - средневзвешивать не получится в принципе.
К сожалению, так не работает. У нас 256 точек БПФ. Используя разные методы, находим пик, а потом уточняем.
Ловушек много. Диапазон ОСШ, в котором всё должно работать, велик и высокое ОСШ, как это не парадоксально, не всегда обеспечивает лучший результат. Странно? Тем не менее. Вот и боремся.

Я сейчат спать. Работаю с Новосибирском. По тому времени и живу. Моим утром буду изучать по ссылкам. Пишите, пожалуйста, если будут ещё идеи.
Привет.
DropAndDrag
Уже с Приветом
Posts: 6024
Joined: 11 Mar 2011 05:36

Re: Вопрос математикам

Post by DropAndDrag »

Мысли в слух. Из последнего сообщение можно сделать вывод, что АЦП измеряет 256 точек, делается быстрое фурье преобразование и ищутся частоты из которых смодулирован приходящий сигнал. Частота ...- 32-...-60-..., тогда частота АЦП 60+ гц, кгц или мгц. Выше 2.5 мгц уже специфические штучки и будет неожиданно, что мощное ацп с дохлым процессором.
Если бы пару полных сигналов после fft посмотреть, то может быть чтото и придет в голову.
Еще можно покопаться в сторону природы сигнала. У масс-спектрометров такое нетривиальное преобразование после fft, а нахождение коэффициентов эмпирическое.
Palych
Уже с Приветом
Posts: 13723
Joined: 16 Jan 2001 10:01

Re: Вопрос математикам

Post by Palych »

Набрать экспериментальных данных побольше, скормить их нейронной сети, как-нибудь вынуть результат обучения и записать его на ПЛМ...
В любом случае данные собирать надо.
aml5691
Уже с Приветом
Posts: 832
Joined: 15 Jan 2004 18:42

Re: Вопрос математикам

Post by aml5691 »

Privet wrote: 26 Dec 2020 14:43 [...]

Надо определить самым точным образом (с точностью выше шага дискрет) определить центр этого "колокольчика". Какой математический аппарат может это сделать.

[...]
Чтобы какой-либо "математический аппарат" мог бы это сделать, нужно, как минимум, знать, что подразумевается под "центром этого "колокольчика"".

Один возможный способ дать корректное определение искомому "центру колокольчика" - рассмотреть гипотетический случай, когда (1) шумов нет совсем, и (2) функция измерена в каждой точке достаточно широкого интервала значений ее аргумента (т.е. с бесконечно маленьким шагом дискретизации). Что Вам нужно тогда считать "центром этого "колокольчика"" для Ваших целей? К примеру (a) значение аргумента функции в единственном максимуме этой функции на интервале измерений; или (b) первый момент функции, вычисленный по интервалу (т.е. центр тяжести графика, или среднее значение аргумента функции с весом равным значению функции); (c) положение локального центра симметрии графика функции; или что-либо другое?

При отсутствии шумов (но дискретных измерениях сигнала) и при дополнительном условии ограниченности спектра Вашей функции, одно эффектное решение для любого из определений (а), (b), (c) и некоторых других, можно получить использовав теорему Котельникова (Sampling Theorem):

Ру.Википедия: Теорема Котельникова

En.Wikipedia: Nyquist–Shannon sampling theorem

Поскольку Вы уже называете функцию спектром, упомянутое условие ограниченности спектра нужно понимать, как ограниченность во времени сигнала, для которого Ваша функция является спектром.

Подозреваю, что в предположениях теоремы Котельникова, но при наличии шумов, тоже есть интересные и полезные решения, но скорее всего для них нужно знать больше при природу шумов и их характеристики.
Last edited by aml5691 on 27 Dec 2020 01:04, edited 1 time in total.
User avatar
apex
Уже с Приветом
Posts: 2240
Joined: 24 May 2008 13:28
Location: Chicago

Re: Вопрос математикам

Post by apex »

А вот normal distribution с одним дополнительным параметром для корректировки bias. Выглядит вполне прилично.
You do not have the required permissions to view the files attached to this post.
DropAndDrag
Уже с Приветом
Posts: 6024
Joined: 11 Mar 2011 05:36

Re: Вопрос математикам

Post by DropAndDrag »

apex wrote: 27 Dec 2020 00:54 А вот normal distribution с одним дополнительным параметром для корректировки bias. Выглядит вполне прилично.
накидыванием нормальных распределений на 512-1024-2048 точки занимаются в Mossbauer детекторах. сам Mossbauer эффект один из самых точных, если не самый точный, но вот оборудование основано на механическом (!) перемещении с постоянной (!!) скоростью для получения доплеровского эффекта. Это сделать точным сложно, поэтому и точек мало. Измерения проходят неделями, чтобы получить приемлимый сигнал к шуму. кстати, если увеличить кол-во точек в 2 раза, то и время измерения надо увеличить типа 2 раза.
для того чтобы улучшить результат обработки, перед и после каждого измерения делают калибровочное измерение с известным образцом. калибровочные измерения должны сходится и одно из них используют для перекалибровки реального измерения. потом уже фиттируют нормальными распределениями, но при этом примерно представляют сколько и чего там должно быть. если же образец неизвестен, то используют другие приборы, чтобы хоть что-то и как-то узнать.
https://en.wikipedia.org/wiki/M%C3%B6ss ... ectroscopy
User avatar
Privet
Администратор
Posts: 17204
Joined: 03 Jan 1999 10:01
Location: Redmond, WA

Re: Вопрос математикам

Post by Privet »

Palych wrote: 27 Dec 2020 00:29 Набрать экспериментальных данных побольше, скормить их нейронной сети, как-нибудь вынуть результат обучения и записать его на ПЛМ...
В любом случае данные собирать надо.
Вопрос только где взять нейронную сеть и сколько времени это займёт. Я игрался с ними, но это было лет ... дцать назад Вся задача она не такая однозначная. Результат сильно зависит от предобработки. Полный пакет экспериментов и данных создать будет не просто. Наверное, месяцы работы. Мы уже почти год с этим работаем. Не только с этим, но и над этим в том числе. Это ключевой компонент.
Привет.
Физик-Лирик
Уже с Приветом
Posts: 5106
Joined: 19 Oct 2004 01:46

Re: Вопрос математикам

Post by Физик-Лирик »

aml5691 wrote: 27 Dec 2020 00:45 Чтобы какой-либо "математический аппарат" мог бы это сделать, нужно, как минимум, знать, что подразумевается под "центром этого "колокольчика"".
Присоединяюсь к вопросу.
apex wrote: 27 Dec 2020 00:54 А вот normal distribution с одним дополнительным параметром для корректировки bias. Выглядит вполне прилично.
Есть ли какая предварительная инфа о характере распределения? Если основываться на графике и информации о "колокольчике", можно постулировать нормальный характер распределения (случайной величины) и прогнать серию тестов Колмогорова-Смирнова для сравнения распределений, подыскивая подходящие параметры нормального распределения. В приципе можно прогнать тест Шапиро для подтверждения нормальности (хотя уверен, на такой выборке нормльность подтверждена не будет). Последний тест займет пару минут прогнать, используя имеющиеся пакеты (что-то я совсем обленился). Тест Колмогорова-Смирнова основан на сравнении эмпирических распределений, а также дает оценки сходимости эмпирического распределения к реальному (сама сходимость гарантирована теоремой Гливенко-Кантелли).
Palych wrote: 26 Dec 2020 18:06 Я не математик, но в принципе по искаженным данным нельзя получить точное число.
Ответ должен выглядеть как величина плюс/минус ошибка. Мне кажется, что проблема здесь не только в шуме. Так как имеется статистическая выборка, любая величина (статистика) не может в принципе быть определена точно, поэтому должен быть оценен интервал точности (confidence interval).
Физик-Лирик
Уже с Приветом
Posts: 5106
Joined: 19 Oct 2004 01:46

Re: Вопрос математикам

Post by Физик-Лирик »

Privet wrote: 27 Dec 2020 03:59
Palych wrote: 27 Dec 2020 00:29 Набрать экспериментальных данных побольше, скормить их нейронной сети, как-нибудь вынуть результат обучения и записать его на ПЛМ...
В любом случае данные собирать надо.
Вопрос только где взять нейронную сеть и сколько времени это займёт. Я игрался с ними, но это было лет ... дцать назад Вся задача она не такая однозначная. Результат сильно зависит от предобработки. Полный пакет экспериментов и данных создать будет не просто. Наверное, месяцы работы. Мы уже почти год с этим работаем. Не только с этим, но и над этим в том числе. Это ключевой компонент.
Насколько я понимаю, предполагается применить методику машобуча. Что предлагается использовать в качестве входных параметров (переменных) и какова целевая функция (зависимая переменная)? Почему именно нейронный сети? В принципе для анализа шума можно попробовать авто-энкодер (денойзинг автоэнкодер). Вы это имели в виду?
Все таки цель определить максимум спектра (частоту и величину мощности) или же, как писали выше, один из моментов распределения?

Return to “Вопросы и новости IT”