|
|
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
Представим, что у нас есть массив из 1000 int'ов, пока там нули. Далее заполняем его разными способами (для простоты - только единицами). Задача - оценить равномерность заполнения. Случай 1. Заполняем единицами с фиксированным шагом, например, 10 нулей - единица - 10 нулей - .... Очевидно, что это самый равномерный вариант. Если пройтись по массиву, считая длины "пустот" - они будут все одинаковы. Дисперсия этой выборки будет равна нулю. Случай 2: используя рэндом, записываем 20 единиц в массив (на случайные позиции). Считаем дисперсию аналогичным образом. Случай 3: все то же самое, только вставка 50 единиц. Так вот, дисперсия в п.3 будет БОЛЬШЕ, чем в п.2. Вопрос: какая статистическая мера, какой алгоритм позволяет оценивать равномерность заполнения без привязки к абсолютному количеству элементов? Ведь рэндом в п.2 и п.3 работает по одному и тому же вероятностному закону, степень "неравномерности" должна быть одинаковая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2012, 23:01 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
Вы дисперсию как считаете (и что вообще подразумеваете в приложении к данному множеству)? По значениям или по размеру промежутков? В любом случае, TopSpaceСлучай 1. ... Дисперсия этой выборки будет равна нулю.Неверно априори. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 01:56 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
AndreTM, смотрите, нужно оценить регулярность (равномерность) заполнения. Да, берем длины промежутков (количество нулей от одной единицы до следующей). В первом случае все промежутки одинаковые - дисперсия нулевая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 07:33 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceСлучай 2: используя рэндом, записываем 20 единиц в массив (на случайные позиции). Считаем дисперсию аналогичным образом. Случай 3: все то же самое, только вставка 50 единиц. Так вот, дисперсия в п.3 будет БОЛЬШЕ, чем в п.2. Это очень странно: Пусть у нас есть случ. величина X с дисперсией D, какова будет дисперсия случ. величины X/2? Как Вы считали дисперсию? Какова у Вас дисперсия, если в данном примере поставить 1000 единиц? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 18:18 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceберем длины промежутков (количество нулей от одной единицы до следующей). В первом случае все промежутки одинаковые - дисперсия нулевая.Тогда да, действительно, если вы оперируете множеством , состоящим из 91 значения, равных 10 (или 11). Но тогда неясно, к чему вообще нужен "...массив из 1000 int'ов, пока там нули..."? Вы просто путаете теплое с мягким, и путаете нас... Ведь в последующих случаях вы "разбиваете отрезок длиной в 1000 на множество из 21 (31) отрезка с длинами от 0 до 1000". Дисперсии получаемых выборок каким боком должны коррелировать между собой? Вот если бы вы разбивали исходный отрезок на k+1 отрезков длины от 0 до 1000/k (k=20,30,..) - то еще можно было бы говорить о корреляции диспесии... TopSpaceВопрос: какая статистическая мера, какой алгоритм позволяет оценивать равномерность заполнения без привязки к абсолютному количеству элементов?А вот отсюда - поподробнее. С физическим смыслом. Приведите пример того, с чем вы работаете - и на основании каких данных желаете оценить "равномерность заполнения". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 19:52 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
AndreTMTopSpaceВопрос: какая статистическая мера, какой алгоритм позволяет оценивать равномерность заполнения без привязки к абсолютному количеству элементов?А вот отсюда - поподробнее. С физическим смыслом. Приведите пример того, с чем вы работаете - и на основании каких данных желаете оценить "равномерность заполнения". Я думаю это клон Базиста пытается найти очередной оптимальный алгоритм сжатия для технологий наносекундного поиска в спакованных данных. Баз, я угадал ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 20:48 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
10930610 Предистория , если чЁ :) зы Если ТС не Базист то всервно полезно будет топик почитать +- 5 страниц вышеуказанного поста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 20:55 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
Думаю, будет проще, если посмотреть код. Набросал небольшой кусочек реализации (так-то я использую AForge): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 21:16 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
К обозначенному Базисту я отношения не имею) Алгоритм нужен в исследовательских целях, для анализа случайного сигнала с датчика, одна из задач - оценивать "степень упорядоченности". Ну скажем так, условно: когда сигнал представляет собой чередование значений с одинаковыми промежутками (т.е. он регулярен, имеет период) - это "упорядоченность", когда заполнение подчиняется закону равномерного распределения - он "случаен". Вот и возникла мысль использовать матстат, и дисперсию выборки промежутков в частности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 21:31 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
Про что я и говорил: TopSpace... const int SZ = 10000; ... data2[rand() % SZ ] = 1; ... Вы заполняете множество отрезками [0;SZ), а анализируете затем отсортированный массив разностей длин... Вы же используете два совершенно разных подхода при заполнении в первом случае - и в других. Было бы правильнее: Код: sql 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 21:45 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
AndreTM, ну как минимум [n + rand() % 50] здесь даст выход за границы массива. Но речь о другом. Я и не утверждаю, что 1-й и два прочих способа заполнения одинаковы. Они разные, причем случаи 2 и 3 отличаются только "плотностью данных", а вероятностный закон, по которому идет заполнение - одинаковый. И задача найти количественную меру, некий коэффициент равномерности. Т.е. в случае один он будет равен 0, а в случае 2 и 3 - какому-то числу, не важно какому, но ОДНОМУ И ТОМУ ЖЕ. Это позволит сказать (я утрирую, чтобы было проще): ага, в первом случае сигнал явно не случаен, у него есть период, он строго упорядочен. А вот второй и третий - случайные, и мера этой случайности одинакова. Ну и дальше, если мы создадим еще 4-й сигнал, где заполнение будет идти тоже не равновероятно по всему массиву (как в с.2 и с.3), а в окрестностях точек, следующих с фиксированным шагом, мы получим что-то среднее между с.1 и с.2-3 (коэффициент должен это показать). Могу для упрощения понимания привести следующую физическую иллюстрации, где бы это могло еще применяться. Анализ структуры вещества. В случае кристаллической решетки атомы стремятся занять определенные позиции, у решетки есть фиксированный шаг. У аморфных веществ положения атомов не имеет такой периодичности. Что мы делаем? Формируем выборку расстояний между атомами (условно), и анализируем ее. Все значения одинаковы - очевидна структура. Разные - смотрим разброс. Коэффициент этого разброса должен не зависеть от плотности вещества (т.е. мера должна быть относительной). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2012, 22:21 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceну как минимум [n + rand() % 50] здесь даст выход за границы массива.Покажите значение n, при котором такое произойдёт... Хотя речь действительно не об этом. Я просто пытаюсь вам сказать, что вы выбрали не совсем удачную модель реализации вашей задачи. Вы, по сути, рисуете в массиве "плотность" распределения исследуемой величины, но не учитываете количество самих значений. Например, если из 200 "значений" 198 придутся на индекс 500, одно - на индекс 400, и одно - на индекс 700 (всего индексов - 1000), то, по вашей логике, будут исследованы четыре промежутка - 400, 100, 200, 300... и какое отношение эти промежутки имеют к тому, что "значения" как раз вполне себе "равномерны", со средним значением около 500 и с достаточно малой дисперсией всей выборки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 00:50 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceAndreTM, ну как минимум [n + rand() % 50] здесь даст выход за границы массива. Но речь о другом. Я и не утверждаю, что 1-й и два прочих способа заполнения одинаковы. Они разные, причем случаи 2 и 3 отличаются только "плотностью данных", а вероятностный закон, по которому идет заполнение - одинаковый . И задача найти количественную меру, некий коэффициент равномерности. Т.е. в случае один он будет равен 0, а в случае 2 и 3 - какому-то числу, не важно какому, но ОДНОМУ И ТОМУ ЖЕ. Это позволит сказать (я утрирую, чтобы было проще): ага, в первом случае сигнал явно не случаен, у него есть период, он строго упорядочен . А вот второй и третий - случайные, и мера этой случайности одинакова. Ну и дальше, если мы создадим еще 4-й сигнал, где заполнение будет идти тоже не равновероятно по всему массиву (как в с.2 и с.3), а в окрестностях точек, следующих с фиксированным шагом, мы получим что-то среднее между с.1 и с.2-3 (коэффициент должен это показать). Могу для упрощения понимания привести следующую физическую иллюстрации, где бы это могло еще применяться. Анализ структуры вещества. В случае кристаллической решетки атомы стремятся занять определенные позиции, у решетки есть фиксированный шаг . У аморфных веществ положения атомов не имеет такой периодичности. Что мы делаем? Формируем выборку расстояний между атомами (условно), и анализируем ее. Все значения одинаковы - очевидна структура. Разные - смотрим разброс. Коэффициент этого разброса должен не зависеть от плотности вещества (т.е. мера должна быть относительной). Ты тут через слово о периоде говоришь, а как он у тебя вычисляется не совсем совсем не ясно . Диференцировать тебе нужно , если более точно искать изменения знака производной. Точки изменения знака - будет твой период. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 01:51 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
Попробуй загнать синусоиду 1 полный период и 100500 периодов , Твои формулы будутдавать тебе приблизительно одно и тоже значение ~ макс/ квадратный корень из двух. Знаешь что это ? Это площадь ограниченная твоей синусоидой , от периода зависеть не будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 02:13 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
AndreTMПокажите значение n, при котором такое произойдёт... Хотя речь действительно не об этом. Сорри, не выспался) Такое действительно не произойдет, только если не сделать SZ меньше 50. AndreTMНапример, если из 200 "значений" 198 придутся на индекс 500, Такого быть не может. Давайте нарисуем образ: перед Вами лежит 100 тарелок, у вас есть 10 пирожков, в одну тарелку положить 2 (и более) пирожка нельзя. Можем разложить пирожки с фиксированным шагом (кладем, пропускаем 9 тарелок, кладем,...). Делаем выборку промежутков - они одинаковы, дисперсия ноль. Распределение пирожков абсолютно регулярно (жестко заданный шаг). Другой вариант - раскладываем пирожки абсолютно случайно, где-то пирожки будут лежать на соседних тарелках, где-то будет пропуск в 15 тарелок... Размещение пирожков подчиняется какому-то вероятностному закону (скажем, равномерная вероятность). И вот самое интересное: используя тот же "генератор случайности" мы раскладываем не 10, а 15 пирожков. Задача найти такой алгоритм, который на втором и третьем распределении пирожков даст одно и то же число. Дисперсия тут не работает. Может нужно брать коэффициент вариации (дисперсия деленная на среднее значение). Может еще что-то. AndreTMВы, по сути, рисуете в массиве "плотность" распределения исследуемой величины, но не учитываете количество самих значений. В этом и состоит задача: уйти от зависимости коэффициента "равномерности заполнения" от количества значений. Смотрите: Код: plaintext 1. 2. 3. 4. 5. Эти сигналы имеют идентичную структуру заполнения! 4 промежутка, два из которых в 2 раза больше двух других. Изобразить условно это можно так: **x**x*x* за * может скрываться хоть 2, хоть 1000 значений - это не должно влиять. Дисперсия "промежутков" тут получается разная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 08:19 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
ДохтаР, синусоида это гармонический сигнал, а речь идет об анализе случайных. Да, может быть спектральный анализ - помог бы. Если построить спектр сигнала, где значения на фоне нулей идут с неким шагом - увидим sinc(x) (сигнал ведь по сути представляет собой меандр с некоторой скважностью). Если построить спектр шума - увидим прямую линию (гармоники на всех частотах в пределах половины частоты дискретизации). Но это спектр, а нужно одно число:) Коэффициент. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 08:28 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceДохтаР, синусоида это гармонический сигнал, а речь идет об анализе случайных. Да, может быть спектральный анализ - помог бы. Если построить спектр сигнала, где значения на фоне нулей идут с неким шагом - увидим sinc(x) (сигнал ведь по сути представляет собой меандр с некоторой скважностью). Если построить спектр шума - увидим прямую линию (гармоники на всех частотах в пределах половины частоты дискретизации). Но это спектр, а нужно одно число:) Коэффициент. Для гармоничного сигнала частота будет твоим числом. А для случайного ты получишь среднюю температуру по больнице, приблизительно одинаковую для всех больниц, и в основном зависящую от количества занятых мест в холодильнике в морга :). Оно ли тебе нужно ? Почему ты за него вцепился ? ( риторический вопрос) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 11:12 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
В целом, я так и не увидел внятного обоснования, зачем ТС нужно распределять и анализировать именно так, как он делает... Никакого прикладного смысла в задаче, а автор еще и сам себе противоречит: то " в одну тарелку положить 2 (и более) пирожка нельзя " , то data2[rand() % SZ] = 1 (а кто сказал, что одно и то же "случайное" число не выпадет несколько раз?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 14:01 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
а я бы все-таки использовал спектральное разложение. если нужно одно число, то это отношение амплитуды основной гармоники к сумме всех амплитуд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 14:43 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
AndreTM data2[rand() % SZ] = 1 (а кто сказал, что одно и то же "случайное" число не выпадет несколько раз?) Запросто) Если из 50 значений 10 попадут в те ячейки, которые уже заняты - мы получим случайное распределение 40, а не 50 значений. Особо это ничего не меняет, это ж наколеночный пример. AndreTM зачем ТС нужно распределять и анализировать именно так, как он делает... Да не обязательно именно так) Как угодно, главное - получить результат. Обозначу задачу еще более конкретно: представим датчик, выдающий случайный сигнал - мы его записываем. Потом мы влияем на датчик таким образом, что характер генерации случайного сигнала меняется. Понимаю, что математически так говорить не грамотно, но фактически сигнал становится "менее случайным". Как крайний вариант, он вообще перестает быть случайным, и становится строго периодичным. Задача сравнить 2 эти сигнала, и выявить, произошли ли изменения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 14:45 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
f2fесли нужно одно число, то это отношение амплитуды основной гармоники к сумме всех амплитуд. Интересно. А что стоит за этим отношением (физический, математический смысл) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 14:46 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceДа не обязательно именно так) Как угодно, главное - получить результат. Обозначу задачу еще более конкретно: представим датчик, выдающий случайный сигнал - мы его записываем. Потом мы влияем на датчик таким образом, что характер генерации случайного сигнала меняется. Понимаю, что математически так говорить не грамотно, но фактически сигнал становится "менее случайным". Как крайний вариант, он вообще перестает быть случайным, и становится строго периодичным. Задача сравнить 2 эти сигнала, и выявить, произошли ли изменения. Так в чем проблема , ловишь точку изменения знака производной ( переход последовательности из возрастающей в убывающую и наоборот) сравниваешь растояния между этими точками по оси времени. Чем меньше разница растояний , тем выше вероятность, что закон переодический. Мало первой производной , заворачиваем вышесказанное в рекурсию получаем производную N порядка на глубину рекурсии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 16:28 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpacef2fесли нужно одно число, то это отношение амплитуды основной гармоники к сумме всех амплитуд. Интересно. А что стоит за этим отношением (физический, математический смысл) ? Физический - КПД авторНесинусоидальность — вид нелинейных искажений напряжения в электрической сети, который связан с появлением в составе напряжения гармоник с частотами, многократно превышающими основную частоту сети. Высшие гармоники напряжения оказывают отрицательное влияние на работу системы электроснабжения, вызывая дополнительные активные потери в трансформаторах, электрических машинах и сетях; повышенную аварийность в кабельных сетях; уменьшение коэффициента мощности за счёт мощности искажения, вызванной протеканием токов высших гармоник; а также ограниченное применение батарей конденсаторов для компенсации реактивной мощности. Источниками высших гармоник тока и напряжения являются электроприёмники с нелинейными нагрузками. Например, мощные выпрямители переменного тока, применяемые в металлургической промышленности и на железнодорожном транспорте, газоразрядные лампы и др. Математический - разница площадей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 17:32 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceАлгоритм нужен в исследовательских целях, для анализа случайного сигнала с датчика, одна из задач - оценивать "степень упорядоченности". Ну скажем так, условно: когда сигнал представляет собой чередование значений с одинаковыми промежутками (т.е. он регулярен, имеет период) - это "упорядоченность", когда заполнение подчиняется закону равномерного распределения - он "случаен". Вот и возникла мысль использовать матстат, и дисперсию выборки промежутков в частности. А попробуйте построить график с накоплением и аппроксимировать его прямой. И наклон этой прямой, и нулевой отрезок, и среднее отклонение в принципе могут характеризовать и сам процесс, и его "равномерность"... если же процесс имеет некий физический смысл, то угол наклона или отрезок могут иметь некое предопределённое (фиксированное либо дискретизованное) значение (например отрезок должен быть нулевым)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 17:50 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceAndreTM data2[rand() % SZ] = 1 (а кто сказал, что одно и то же "случайное" число не выпадет несколько раз?) Запросто) Если из 50 значений 10 попадут в те ячейки, которые уже заняты - мы получим случайное распределение 40, а не 50 значений. Особо это ничего не меняет, это ж наколеночный пример. AndreTM зачем ТС нужно распределять и анализировать именно так, как он делает... Да не обязательно именно так) Как угодно, главное - получить результат. Обозначу задачу еще более конкретно: представим датчик, выдающий случайный сигнал - мы его записываем. Потом мы влияем на датчик таким образом, что характер генерации случайного сигнала меняется. Понимаю, что математически так говорить не грамотно, но фактически сигнал становится "менее случайным". Как крайний вариант, он вообще перестает быть случайным, и становится строго периодичным . Задача сравнить 2 эти сигнала, и выявить, произошли ли изменения.Если выделенное верно, то имеем комбинацию белого шума и чистого тона, и Вам нужно разложение сигнала по Фурье; учтите, что следует разделять случай "частота тона известна" и "частота тона неизвестна", во втором варианте следует как следует осознать, как именно выглядит разложение по Фурье "чистого" белого шума. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 18:21 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
Я ошибаюсь или для определения зависимости (необязательно периодической) считают автокорреляцию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 20:42 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceAndreTM data2[rand() % SZ] = 1 (а кто сказал, что одно и то же "случайное" число не выпадет несколько раз?)Запросто) Если из 50 значений 10 попадут в те ячейки, которые уже заняты - мы получим случайное распределение 40, а не 50 значений. Особо это ничего не меняет , это ж наколеночный пример.AndreTMЯ просто пытаюсь вам сказать, что ... не учитываете количество самих значений. Например, если из 200 "значений" 198 придутся на индекс 500, одно - на индекс 400, и одно - на индекс 700 (всего индексов - 1000), то, по вашей логике, будут исследованы четыре промежутка - 400, 100, 200, 300... и какое отношение эти промежутки имеют к тому, что "значения" как раз вполне себе "равномерны"..?Вам еще раз повторить? По вашей логике (без накопления информации о количестве значений) - вы в большинстве случаев получите для "исследования" цифры, никакого отношения к исходной последовательности не имеющие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 22:42 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceпредставим датчик, выдающий случайный сигнал - мы его записываем. Потом мы влияем на датчик таким образом, что характер генерации случайного сигнала меняется... Как крайний вариант, он вообще перестает быть случайным, и становится строго периодичным. Задача сравнить 2 эти сигнала , и выявить, произошли ли изменения.Уже ближе к постановке задачи. Но что вы подразумеваете под "сигналом"? Непрерывный аналоговый поток, который нужно дискретизировать и оцифровать? Тактированные импульсы (возможно, с изменяющейся амплитудой)? Еще что-то? Нельзя просто сказать "ну вот же я написал в программе, как, типа, выглядит сигнал1, сигнал2 ". Вы должны показать, что по одинаковой методике закодировали параметры исходных сигналов каждого процесса, которые будете исследовать/сравнивать. "Выявление изменений" какого плана необходимо? Обнаружить "неслучайность" (периодичность) определенного сигнала? Сравнить два сигнала на предмет "большей случайности/периодичности одного из них? Или просто обнаружить, что "сигналы различны" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2012, 23:09 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
AndreTMНо что вы подразумеваете под "сигналом"? Непрерывный аналоговый поток, который нужно дискретизировать и оцифровать? Он уже оцифрован, поступает с датчика через USB с фиксированной частотой. Ну скажем так, программа получает поток даннных, т.е. 10 раз в секунду прилетает массив байтов одной и той же размерности (скажем, 1000 элементов). Большинство элементов в этом сигнале - нули, есть ненулевые. AndreTM"Выявление изменений" какого плана необходимо? Обнаружить "неслучайность" (периодичность) определенного сигнала? Сравнить два сигнала на предмет "большей случайности/периодичности одного из них? Пока сложно сказать (тем более, математически грамотно) о каких изменениях идет речь. Если упрощенно, то "неслучайность", да. Записали 3 сигнала, то есть имеем 3 массива по миллиарду байт, и нужно показать (лучше в виде 3-х наложенных графиков) их "коэффициенты упорядоченности", где будет видно, что второй "менее случаен" чем первый, а третий "еще более структурирован" чем второй. Какова природа этой структурированности - неизвестно, да и пока не важно. Что вообще означает "структурированность"? Я это понимаю так: наличие регулярности в структуре. Поэтому, пока нет желания смотреть сами значения, лежащие в массиве, хочется смотреть их распределение по массиву. Пусть там лежат хоть единички, хоть десятки, хоть 255 - не важно, важно как они распределены "в пространстве". Мы включаем поле, от которого датчик начинает выдавать другой сигнал, и нужно алгоритмом зафиксировать, что да, сигнал стал другим, "менее случайным". Ситуация осложняется тем, что включение поля повышает плотность сигнала, т.е. количество ненулевых элементов массива. Если бы оно было бы всегда одинаковым, достаточно было бы того кода, что я привел в начале - считаем длины нулевых промежутков, строим их дисперсию. Чем ближе она к нулю - тем сигнал более упорядочен. Ну или строим спектр. У идеального шума он будет просто линией (горизонтальной), при появлении регулярности в структуре, появятся гармоники. Но для разной плотности сигнала это все не работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 07:21 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpace Что вообще означает "структурированность"? Я это понимаю так: наличие регулярности в структуре. Поэтому, пока нет желания смотреть сами значения, лежащие в массиве, хочется смотреть их распределение по массиву. Пусть там лежат хоть единички, хоть десятки, хоть 255 - не важно, важно как они распределены "в пространстве". Мы включаем поле, от которого датчик начинает выдавать другой сигнал, и нужно алгоритмом зафиксировать, что да, сигнал стал другим, "менее случайным". Ситуация осложняется тем, что включение поля повышает плотность сигнала, т.е. количество ненулевых элементов массива. Если бы оно было бы всегда одинаковым, достаточно было бы того кода, что я привел в начале - считаем длины нулевых промежутков, строим их дисперсию. Чем ближе она к нулю - тем сигнал более упорядочен. Ну или строим спектр. У идеального шума он будет просто линией (горизонтальной), при появлении регулярности в структуре, появятся гармоники. Но для разной плотности сигнала это все не работает.Осталось понять, что Вы понимаете под "регулярностью в структуре". Насколько я понимаю, исходная задача - есть два сигнала, шумовой и информационный, "наложенные" друг на друга. По-видимому, шумовой сигнал - белый шум, информационный - равномерные "ступеньки" (известной продолжительности? неизвестной?). Если наложение - простое суммирование, задача вообще хрестоматийная; если XOR - чуть похуже, но те же методы должны сработать. Если сказанное соответствует Вашей задаче, всё-таки попробуйте Фурье. "Ступеньки" должны быть достаточно хорошо видны: характерными лепестками на диаграмме, "выступающими" из равномерного шума. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 11:58 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
Abstractionесть два сигнала, шумовой и информационный, "наложенные" друг на друга. По-видимому, шумовой сигнал - белый шум, информационный - равномерные "ступеньки" (известной продолжительности? неизвестной?). Ну почти, есть два сигнала: шум, и "модифицированный шум", в котором произошли некие структурные изменения. Это словно взяли сигнал шума, и переставили в нем байты таким образом, чтобы они шли не со случайными промежутками, а с некоторым (неизвестным) шагом. Короче говоря, что-то в шуме изменилось) И нужно оценить (желательно, количественно) что это уже "не совсем шум". Т.е. сигнал уже выходит за рамки того вероятностного закона, которому подчиняется первый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 14:24 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceAbstractionесть два сигнала, шумовой и информационный, "наложенные" друг на друга. По-видимому, шумовой сигнал - белый шум, информационный - равномерные "ступеньки" (известной продолжительности? неизвестной?). Ну почти, есть два сигнала: шум, и "модифицированный шум", в котором произошли некие структурные изменения. Это словно взяли сигнал шума, и переставили в нем байты таким образом, чтобы они шли не со случайными промежутками, а с некоторым (неизвестным) шагом. Короче говоря, что-то в шуме изменилось) И нужно оценить (желательно, количественно) что это уже "не совсем шум". Т.е. сигнал уже выходит за рамки того вероятностного закона, которому подчиняется первый.Выделенное - очень странная формулировка. Я не представляю себе реальных процессов, способных породить такой эффект. Если имеем сложный случайный процесс, который нельзя (хотя бы приближённо) рассматривать как суперпозицию элементарных, это может быть очень неприятно. Важно понимать, что любые применимые оценки "случайности сигнала" в том или ином виде опираются на некоторые предположения о природе этого самого сигнала. "Чистый" белый шум, как вариант, можно определять как малый разброс по интенсивности различных гармоник (или любого иного разложения по "достаточно хорошему" базису, если на то пошло). Чем больше разброс - тем меньше вероятность получения картины с таким или большим разбросом при условии, что сигнал есть белый шум. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 14:40 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
Abstraction, пример можно привести простой. Есть сложная антенна, состоящая из 1000 небольших принимающих устройств, расположенных последовательно (в виде линии). Сигнал снимается сразу со всех, т.е. приходит в виде массива 1000 байт (если считать, что значение сигнала с одного датчика - 1 байт). Антенна настроена на прием потока энергии, от которого датчики шумят, т.е. выдают 1 (на самом деле 1..255, но это пока не важно) или 0 вне зависимости друг от друга. Следовательно, если нарисовать массив (это как один "кадр" сигнала) в виде 01011101010, то расположение единичек случайное, длины пробелов между ними случайны. Вот антенна уловила такой поток энергии, который заставляет шуметь датчики с фиксированным шагом. Это как крайняя степень влияние потока энергии, возможны и все промежуточные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 14:52 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceAbstraction, пример можно привести простой. Есть сложная антенна, состоящая из 1000 небольших принимающих устройств, расположенных последовательно (в виде линии). Сигнал снимается сразу со всех, т.е. приходит в виде массива 1000 байт (если считать, что значение сигнала с одного датчика - 1 байт). Антенна настроена на прием потока энергии, от которого датчики шумят, т.е. выдают 1 ( на самом деле 1..255, но это пока не важно ) или 0 вне зависимости друг от друга. Следовательно, если нарисовать массив (это как один "кадр" сигнала) в виде 01011101010, то расположение единичек случайное, длины пробелов между ними случайны. Вот антенна уловила такой поток энергии, который заставляет шуметь датчики с фиксированным шагом . Это как крайняя степень влияние потока энергии, возможны и все промежуточные.Во-первых, важно. Потому что это означает, что до достижения значения 255 интенсивности сигнала и шума будут складываться, что важно для некоторых методов. Во-вторых, "шуметь с фиксированным шагом" - странный оборот. В описанном эксперименте, если только датчики не какие-то сверхбыстрые, пришедший импульс будет прочитан ими всеми в один и тот же такт. Более того, задача у Вас тогда двумерная: есть 1000 датчиков, которые выдают результаты в моменты времени 0, 1, 2... И задач здесь может быть много разных. К примеру - искать всплески (считаем сумму по всем датчикам в каждый момент времени, рисуем график суммы от времени, видим пики). Или, действительно, приходит нечто хитро распределённое в пространстве и надо отловить это "нечто" на фоне шума - тогда, если "нечто" повторяется, может быть хорошей идеей считать среднее квадратов показаний конкретного датчика по времени. Ну, опять же, можно пробовать Фурье, но надо быть уже очень осторожными, чтобы не получить ошибки первого рода за счёт большого числа испытаний или нечёткой формулировки методики... кажется, кто-то когда-то уже об этом Вам говорил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 15:10 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceAbstraction, пример можно привести простой. Есть сложная антенна, состоящая из 1000 небольших принимающих устройств, расположенных последовательно (в виде линии). Сигнал снимается сразу со всех, т.е. приходит в виде массива 1000 байт (если считать, что значение сигнала с одного датчика - 1 байт). Антенна настроена на прием потока энергии, от которого датчики шумят, т.е. выдают 1 (на самом деле 1..255, но это пока не важно) или 0 вне зависимости друг от друга. Следовательно, если нарисовать массив (это как один "кадр" сигнала) в виде 01011101010, то расположение единичек случайное, длины пробелов между ними случайны. Вот антенна уловила такой поток энергии, который заставляет шуметь датчики с фиксированным шагом. Это как крайняя степень влияние потока энергии, возможны и все промежуточные. С этого нужно было начинать . Этот пример для фундаментальной науки особого интереса не представляет . Не случайны, а зависят от угла, на который отклонен источник сигнала относительно перпендикуляра линии датчиков. Для вычисления направления фиксированного местоположения источника 1 производная. Для движущегося вторая ( изменение фазы). Не забудьте учесть растояние между датчиками в пересчете на длину волны :) Имменно изза несогласованности длины волны и растояния между датчиками вы получаете при неизвестном угле якобы псевдослучайные показания. Потому как неизвестных в системе уравнений больше чем уравнений. И это все при условии , что у вас синхронизация измерений правильная. Ваши датчики будут шуметь с фиксированным шагом , если излучатель находится на на линии перпендикуляра в средине линии датчиков , растояния между датчиками согласованы с длинной волны и вы меряете действительно синхронно относительно длины волны. Приблизительно так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 16:39 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
фундаментальный закон описывающий физику процесса с датчиками и излучателями Изменение разности амплитуд на датчиках относительно перпендикуляра дает возможность достаточно просто посчитать угол падения волны на линию датчиков. зы Я сначала был физиком СВЧ , а потом уже админом стал ввиду отсутствия работы по профилю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 16:57 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
Я извиняюсь, что излагаю нечетко, и толком не могу обрисовать задачу) Просто, она сугубо исследовательская (фазированная решетка - близко, но немного не то), и многое пока непонятно даже в теории. Но я все-таки придерживаюсь изначальной формулировки: вычисление степени разброса промежутков. Спектр - это пока самое близкое, что нащупывается. Иными словами: как понять, что сигнал случайный? Спектр. Ну или еще "более другими" словами: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 19:15 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
ой, Код: c# 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 19:16 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceЯ извиняюсь, что излагаю нечетко, и толком не могу обрисовать задачу) Просто, она сугубо исследовательская (фазированная решетка - близко, но немного не то), и многое пока непонятно даже в теории. Но я все-таки придерживаюсь изначальной формулировки: вычисление степени разброса промежутков. Спектр - это пока самое близкое, что нащупывается. Иными словами: как понять, что сигнал случайный? Спектр. Ну или еще "более другими" словами: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. А вы ученный муж или кодер ( программист) ? У любой исследовательской задачи есть начальные и граничные условия, то что вы привели , в качестве исходных данных никак нельзя назвать условиями, это только факты полученные при непонятных условиях и обстоятельствах. Решение любой исследовательской задачи сводится к составлению системы уравнений. У вас хоть одно уравнение из этой системы есть ? Зы Без обид , но ваш подход мне напоминаяет действия менеджера чуть выше среднего уровня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 19:29 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceИными словами: как понять, что сигнал случайный?Считайте корреляцию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 20:40 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
в душе ученый, по образованию и роду деятельности - программист) Да, Вы правы, пока это все назвать полноценным исследованием нельзя. Делаю это в свободное от работы время, на коленке, в очень сжатые сроки, не всегда последовательно и обстоятельно. До уравнений еще не дошел, пока на стадии создания модели процесса. Т.е. чтобы просто получить первый результат на уровне "да, тут что-то происходит интересное". Ну точнее, что оно происходит, я вижу по косвенным признакам, нужно подвести минимальную формальную базу под это. Есть успешный опыт решения исследовательских задач через программирование. Не написание программы, реализующей заданный алгоритм, вышедший из уравнений и модели, а именно взгляд на теоретическую проблему чисто глазами программиста, пусть где-то наивно, но в области совершенно неизученной это даже плюс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 20:55 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovСчитайте корреляцию. Автокорреляция первого сигнала, или корреляция первого и второго сигнала? И что фактически мне даст коэффициент корреляции, как его использовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2012, 20:56 |
|
||
|
Оценить равномерность данных
|
|||
|---|---|---|---|
|
#18+
TopSpaceАвтокорреляция первого сигнала, или корреляция первого и второго сигнала?Зависит от того, что именно хотите получить. Если ваши пачки отсчётов снимаются с соответствующего числа физических датчиков, то автокорреляция, скорее всего, выделит "пространственную зависимость", корреляция между соседними отсчётами - "временнУю зависимость".И что фактически мне даст коэффициент корреляции, как его использовать?Если ноль - сигналы датчиков статистически независимы и мы наблюдаем (только) шум. Кроме того, корреляция позволяет считать не только коэффициенты, но и функции, для которых будет "выброшена" случайная составляющая. То, что получится можно будет анализировать дальше. P.S. А вообще - пробежался по википедии и понял, что подзабыл то немногое, что знал :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2012, 08:54 |
|
||
|
|

start [/forum/topic.php?all=1&fid=16&tid=1342057]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
158ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 205ms |
| total: | 464ms |

| 0 / 0 |
