2014 dxdy logo

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

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


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Вероятность по таблице
Сообщение17.11.2021, 21:50 


04/08/20
19
Добрый день, подскажите куда копать...

Есть таблица из 100-200 значений. ("время исполнения определенной задачи", примерно от 50 до 100 минут)

Хочу получить по ней "примерный диапазон значений" в которое вкладывается 60-70% всех событий (точность я должен сам задавать) и вычислить "наиболее вероятное значения" (="центр/пик диапазона").

От высшей математики далек - программист много лет не открывавший учебники. А тут нужна помощь именно математиков!

Подскажите чем подобное можно получить??? Какие разделы математики надо изучить?

Помню по ВУЗу что подобным вроде занималось распределение по Гаусу... Но могу и ошибаться.
...или это другой раздел статистики...

Конечная задача - написать формулу/алгоритм, где имея статистику из 100-200 значений времени исполнения задачи, мог сказать что-то вроде:
1) На это уйдет примерно... 82 минуты.. (обычное "среднее" между 50 и 100 будет 75 обычными "программерскими" методами, но "вероятность" может быть "сдвинута" вбок)
2) В среднем это занимает от 64 до 89 минут. (в дипазоне от 50 до 100 возможно и 51 и 99, но крайне редко, а в этом диапазоне довольно часто попадается)

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение17.11.2021, 22:24 
Заслуженный участник


09/05/12
25179
Пожалуй, распределение действительно должно быть похоже на гауссиану, но я бы начал как раз с вполне программистской (точнее, IT-шной) задачи: построил бы картинку с этим распределением с помощью любого доступного инструмента (Excel/Calc, R и т.д.). А дальше будет понятнее:
1) гауссиана это хоть в каком-то приближении или нет;
2) надо ли искать моду распределения или матожидание специально или точность такая, что достаточно посмотреть на картинку (для пары сотен значений второй сценарий более вероятен);
3) нужны ли сколько-нибудь математические методы или достаточно численно найти симметричный относительно моды диапазон, в который помещается нужная часть результатов.

В общем, перед убийством воробья атомной бомбой стоит проверить, есть ли там вообще цель. :-)

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение17.11.2021, 23:15 
Заслуженный участник
Аватара пользователя


05/12/09
1813
Москва
Вообще не обязательно заморачиваться распределением. Просто упорядочьте все значения по возрастанию. В качестве "центра" возьмите середину в этом ряду (по научному, медиану), для получения диапазона с надежностью, например, 60%, выбросьте первые 20% ряда и последние 20% ряда и т.п.

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 00:12 


04/08/20
19
Цитата:
гауссиана это хоть в каком-то приближении или нет;

Далеко не обязательно. Просто случайные цифры, зависящие от тысячи мелких факторов. Разброс от 50 до 100 (грубый min/max).
В таблице последние 100-200 событий (логи).
Надо хоть-как-нибудь проанализировать и сказать - "в среднем от от 64 до 89 минут" или "около 82 минут".

Человек такие прогнозы "на раз" выдает...
Например: Через сколько будет следующий автобус? Когда-то было пару случаев что следом шли ( = 0 минут), а когда-то аж 2 часа ждал, но... обычно от 5 до 10 минут, в среднем рассчитывай на 8 минут ожидания... Никакой "гауссианы"! Но "усредненное по "недавней" статистике можно дать... Вот и я такое хочу по своей таблице получить!

Цитата:
2) надо ли искать моду распределения или матожидание специально или точность такая, что достаточно посмотреть на картинку (для пары сотен значений второй сценарий более вероятен);
На "картинку" смотреть "некому". Нужно накопить таблицу, загнать в алгоритм, а потом "выдать ПРИМЕРНЫЙ прогноз" ожидающему "оператору"(устройства, станка или кнопки на компьютере), который первый раз выполняет задачу и не знает "сколько ему ждать даже примерно". Хватит погрешности и в 20-30%, но хоть какая-то цифра будет...

Цитата:
3) нужны ли сколько-нибудь математические методы или достаточно численно найти симметричный относительно моды диапазон, в который помещается нужная часть результатов.
Задача для компа! Мне ее еще предстоит в код перевести. И там "интегралы" или "бесконечные числовые ряды" будут не в тему! ))
Нужны максимально простые формулы (типа тех что прячутся за абривиатурами в командах "статистики" в Екселе)

Цитата:
Просто упорядочьте все значения по возрастанию. В качестве "центра" возьмите середину в этом ряду (по научному, медиану), для получения диапазона с надежностью, например, 60%, выбросьте первые 20% ряда и последние 20% ряда и т.п.

Можешь поподробнее??? Чую что алгоритм не сложный, но не знаю с чего начать...

Медиана между 50 и 100 = 75!
Но (допустим) из 200 значений в таблице: в диапазоне 0..20 всего 2 попадания, в 80-100 всего 80 попаданий, а большинство "собрались" вокруг 85... и между 70 и 90...
Как найти эти 70/85/90?
Допустим средняя арифметическая будет 85, но как поймать 70 и 90?

Нагло отрезать 20% около 50 отрежет 3%, а около 100 отрежет все 40% - и где тогда "средняя?

Допустим получил таблицу из 50 цифр (100-50 = [50..100]) (предположим пока что все значения целые - на самом деле дробные) с "попаданиями" - из "значений".
А дальше что? На отрезки разбивать? И как их сравнивать? Особенно если "мелких пиков" несколько вокруг средне-арифметического?

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 00:19 
Заслуженный участник


18/09/21
1756
AndyJ в сообщении #1539631 писал(а):
Чую что алгоритм не сложный, но не знаю с чего начать...
AndyJ в сообщении #1539631 писал(а):
Мне ее еще предстоит в код перевести. И там "интегралы" или "бесконечные числовые ряды" будут не в тему! ))
Кто-то сделал большую ошибку, что доверил эту задачу Вам...

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 01:23 


04/08/20
19
Цитата:
Кто-то сделал большую ошибку, что доверил эту задачу Вам...

Не переходите на личности!!!

Я сам эту задачу перед собой поставил!

Вожусь со сложной системой алгоритмов, которые со временем должны стать "рутиной".
Что-то вроде резервного копирования больших данных.
Жутко нудная работа. Нажал, и через 5-10-20-40 минут получаю результат... (или не получаю и исправляю/дорабатываю алгоритм)
Засекаю время выполнения каждой работы... Получаю текстовый лог из кучки цифр.
Хочу чтобы конечный пользователь программы (когда я ее закончу) мог бы хоть немного прогнозировать свое время, а не скучать перед монитором ожидая что "во-вот закончит" (как сейчас мучаюсь я)... Да и мне для разработки других проектов подобное пригодится.

Просто "среднеарифметической" мне МАЛО!
Хочу ДИАПАЗОН "наиболее частых" получить! ("среднеарифметическая" далеко не всегда в центре этого диапазона)
База/лог будет со временем заполняться, вытесняя/удаляя старые и диапазон будет сдвигаться (например с "ростом размеров того что архивирую").

Сейчас нарисовал RND таблицу в екселе, рядом ее-же отсортировал, по обеим нарисовал график, вычислил среднее арифметическое, показал ABS() от разницы (зачение - среднее).

Вывел все это на графики. Получилось действительно нечто вроде Гауса (перевернутого). И даже видно "смещение вбок" от среднеарифметической.
Теперь думаю как вычислить где 70% заканчивается.
Подумываю на "столбики" нарезать по 5-10%. И прикинуть сколько в каждый столбик помещается...

Дальше пока не придумал... ((

Насколько помню из ВУЗа, подобные формулы мы проходили на стат-аннализе и на вычислении ошибок на приборах. И там не было слишком заумных формул на 2-3 доски.
Но.. давно это было...

Поэтому мне и нужен математик, чтобы подсказал хотя-бы РАЗДЕЛ где это надо искать!

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 01:38 
Заслуженный участник


09/05/12
25179
AndyJ в сообщении #1539631 писал(а):
Далеко не обязательно.
Вот именно. Поэтому первое, что нужно сделать - проверить это предположение, да и просто посмотреть на то, как оно выглядит. Возможно, это вообще белый шум, в котором бессмысленно искать какие-то статистические закономерности.
AndyJ в сообщении #1539631 писал(а):
На "картинку" смотреть "некому".
Вы не можете посмотреть на картинку и не можете построить ее и заслать сюда?
AndyJ в сообщении #1539631 писал(а):
Нужны максимально простые формулы (типа тех что прячутся за абривиатурами в командах "статистики" в Екселе)
Вот будут данные - будут и простые формулы. Пока вам дают советы наугад, а вы требуете от всех программу из старого фидошного анекдота - с формой и одной кнопкой, на которой написано "сделать зашибись!" :-) Ну, не программу, а рецепт ее написания, но сильной разницы нет.
 !  Заодно уже в режиме модератора замечу, что:
1) не надо обращаться к собеседникам на "ты";
2) при цитировании надо выделить нужный участок текста и нажать кнопку "вставка" в правом нижнем углу соответствующего сообщения.

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 01:40 
Заслуженный участник


18/09/21
1756
Вот уже есть метод от alisa-lebovski.
Алгоритм препростейший.
  1. Взять вектор длины 200.
  2. Отсортировать это вектор.
  3. Взять элементы с индексами 40 и 160 (или в общем случае взять $n$ и $200-n$).

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 02:21 
Аватара пользователя


21/01/09
3925
Дивногорск
AndyJ в сообщении #1539634 писал(а):
Вывел все это на графики. Получилось действительно нечто вроде Гауса (перевернутого). И даже видно "смещение вбок" от среднеарифметической.
Покажите что получилось. Может быть удастся подобрать подходящую функцию.

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 02:21 


04/08/20
19
Pphantom в сообщении #1539635 писал(а):
AndyJ в сообщении #1539631 писал(а):
Далеко не обязательно.
Вот именно. Поэтому первое, что нужно сделать - проверить это предположение, да и просто посмотреть на то, как оно выглядит. Возможно, это вообще белый шум, в котором бессмысленно искать какие-то статистические закономерности.

И в белом шуме есть закономерность которая мне нужна!
Есть средне-арифметическое время работы задачи ("белый шум"). Допустим 85 в диапазоне 50..100. В 85..100 половина и в 50..100 половина. Это "не честно" если я нагло отрежу по 20% с каждой стороны "вектора".

Теоретически... Если бы мне нужно было 50% отсеять, я бы в дипазоне 50-85 и в 85-100 получил бы свои средне-арифметические (например 80 и 93) и отсеял те что ниже 80 и выше 93х... Но если я хочу не 50%, а 70% или 30%?

Pphantom в сообщении #1539635 писал(а):
Вот будут данные - будут и простые формулы. Пока вам дают советы наугад, а вы требуете от всех программу из старого фидошного анекдота - с формой и одной кнопкой, на которой написано "сделать зашибись!" :-) Ну, не программу, а рецепт ее написания, но сильной разницы нет.

И как я могу вам "дать данные"? В моем случае это по сути 200 почти случайных чисел в нужном диапазоне(в идеале еще и дробных). В идеале есть некая внутренняя закономерность, которая "сведет" их "поближе к средне-арифметическому", но гарантий я дать не могу, поэтому моя формула не должна от этого отталкиваться.

Это скриншот екселя в котором я пытаюсь вывести формулу:
https://prnt.sc/1zy8bmf

Слева (и верхний график) - сырые данные (номер/время), Справа (и нижний график) - отсортированные. Вверху среднее арифметическое. внизу "наклоная" - это "отличие от средней". Теперь надо как-то вычислить сколько справа и слева от средней мы может "выкинуть".

Похоже надо нижний красный график надо как-то проанализировать.

Задача - примерно получить значения красных вертикальных линий. (немного кривые - вручную добавил). Они за счет частоты одиаковых немного ближе с правой стороны.

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 02:37 
Заслуженный участник


09/05/12
25179
AndyJ в сообщении #1539638 писал(а):
И как я могу вам "дать данные"? В моем случае это по сути 200 почти случайных чисел в нужном диапазоне(в идеале еще и дробных).
Да хотя бы сюда отправить в текстовом виде. От килобайта текста (особенно если его скрыть как "оффтопик") ничего страшного не произойдет.
AndyJ в сообщении #1539638 писал(а):
Это скриншот екселя в котором я пытаюсь вывести формулу:
Как бы еще там что-нибудь увидеть... Это только у меня никакой картинки нет?

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 02:52 


04/08/20
19
Pphantom в сообщении #1539639 писал(а):
Это только у меня никакой картинки нет?

Странно! У меня видно... Переложил на другой хостинг изображений
https://postimg.cc/KKHNB4qW

(картиннка большая - вставить на прямую не вышло)
https://i.postimg.cc/nzHP8Dvn/20.png

У меня это в опенофисе (екселе). Могу его выложить. Но там пока нет ничего "ценного". Просто РАНДОМАЯ таблица (случайными числами запомлил. Сейчас немного "сместил" случайность в один бок усложнив формулу генерации случайных чтобы смещение на графике нагляднее было.

Сейчас учусть получать "среднее от того выше и ниже среднего" - пока не знаю зачем. Но в идеале это получится "жесткое" 50% (а хотелось бы "гибко менять" - от 30 - поближе к среднему, до 70 - пошире охват)

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 03:13 
Заслуженный участник


09/05/12
25179
AndyJ в сообщении #1539640 писал(а):
Странно! У меня видно... Переложил на другой хостинг изображений
Да, теперь видно, но это никоим образом не распределение. Действительно давайте данные, что ли, быстрее будет. Только не случайные, само собой, а реальные, иначе смысла в этом никакого не будет.

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 03:48 


04/08/20
19
Pphantom в сообщении #1539641 писал(а):
Действительно давайте данные, что ли, быстрее будет.

Я данные логов еще не парсил. Да и нет в них пока даже 100 записей для начала анализа. Поэтому учусь на чистом рандоме.

На картинке есть на нижнем графике красная кривая уходящая вниз-вправо.
Нужен алгоритм или формула, которая сможет по нему вычислить сколько точек на этом графике (в одой точке может быть несколько значений) составляют 70% от всех тех что слева.

Вроде "двумя проходами" ради 3х средних арифметических получил "входит в 50%".
В екселе даже на "белом шуме" цифры никогда точно не попадают на 25%, 50% и 75% от диапазона. (уже не плохо)

Но не могу придумать как сделать 70% или 30% от общей "суммы".
...пока что единственный подход что придумал - это "столбиками" считать количество попаданий, "расходящихся" от средне-арифметического.
Как только превышу нужные 70%, можно начать "уточнять столбик", разделив его на более узкие. Но как не хочется... Чуйка вопит что есть вариант попроще на чистых формулах в "одном проходе по таблице".

 Профиль  
                  
 
 Re: Вероятность по таблице
Сообщение18.11.2021, 03:55 
Заслуженный участник


09/05/12
25179
AndyJ в сообщении #1539642 писал(а):
Я данные логов еще не парсил. Да и нет в них пока даже 100 записей для начала анализа. Поэтому учусь на чистом рандоме.
А это совершенно бесполезно. То, что нужно делать, зависит от распределения, которое получается в реальности, так что его получение - первая задача.

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

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



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

Сейчас этот форум просматривают: YandexBot [bot]


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

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