Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > Построение нейронной сети


Автор: Step 11.7.2003, 09:21
если есть люди которых это интересует,, прошу писать в этот топик

интересует статистика, методика вычисления результатов и все что с этим связанно,


для построения нейронной сети необходим входной вектор, элементами которого являются показатели команд,

необходимо определить какие показатели влияют на результат и в какой степени

Автор: Step 11.7.2003, 09:23
чуть не забыл - вы в доле......



также интересуют удаленные базы данных со статистикой....

Автор: podval 11.7.2003, 12:25
К сожалению, в таком деле, как предсказание результатов соревнований, очень велика стохастика. Это почти как угадывать в лотерею. Если покажешь устойчивую статистику, то буду думать smile.gif

Автор: Step 11.7.2003, 12:53
podval статистику можешь найти по адресу www.marathonbet.com раздел статистика выбрать чемпионат, бери англиию футбол премьер лига, они этот сезон отыграли у них максимальная статистика....

Автор: Step 11.7.2003, 14:52
можно писать свои рассуждения

Автор: DIMA.NET 11.7.2003, 16:37
Такую вещь, как игра, предсказать трудно!
Тут ИМХО даже статистика не поможет. Ну вот например, выигрывала команда каждаю игру 5:0, а тут бац, и проиграла 3:6, и вся статистика накрылась. Как они проведут следующий матч не знают даже сами игроки!
Мне кажется такое реализовать невозможно! Тут нужно полагаться только на удачу!

Автор: Step 11.7.2003, 17:04
DIMA.NET в любом правеле есть исключения, не забывай про это

Автор: podval 11.7.2003, 22:57
Step
Я думаю, разумнее было бы прогнозировать курс валют или акций.

Автор: DIMA.NET 11.7.2003, 23:23
ИМХО лучше придумать что-нибудь другое smile.gif

Автор: stab 12.7.2003, 12:46
Тут каким-то образом надо учитывать силы игроков команды. Т.е. команда это набор игроков у каждого свои показатели результативности, в совокупности получаем некую величину, которая характеризует силу команды. Только вот сети зачем? smile.gif

Автор: p0s0l 13.7.2003, 12:49
По-моему надо каждому игроку присвоить свой численный ID, тогда входными параметрами будут ID игроков обеих команд. Тогда можно будет обучить сеть, результат которой будет зависеть от набора ID игроков. Т.е. так примерно будет выглядеть входные поля:
ID1_1, ID1_2, ID1_3 .... ID1_n, ID2_1, ID2_2, ..., ID2_n
Где n - кол-во игроков в команде (к сожалению я даже этого не знаю... - я не увлекаюсь футболом smile.gif
ID1_x - игроки 1 команды
ID2_x - игроки 2 команды

Но тут есть зависимость исхода матча от того, на каком месте стоит игрок - я не знаю, надо ли это ?

Автор: &-ray 13.7.2003, 19:18
Вся сложность в том, что эти ID должны быть глобальными, а не локальными (т.е. нельзя определить Id игрока опираясь на то, как он играет относительно других игроков своей команды, т.к. если команда играет с более слабой, то скорее всего все игроки покажут хорошие результаты, но в то же время, при игре с сильным противником игроков могут "порвать" всухую.)
Т.е. вся задача сводится к тому, что надо создать массив в котрый будут включены ID всех игроков, а не отдельно взятой команды.
Задача сложная notify.gif
Наверно надо последовательно обрабатывать все игры за последние несколько лет и сравнивать в каждой встрече игру каждого игрока относительно других, постепенно формируя массив.
Безусловно, одна команда не раз выходила на поле и поэтому при каждом последующем анализе необходимо делать корректировку ID игроков, заданных на основе предыдущей игры.

Автор: Step 14.7.2003, 09:28
товарищи работать по игрокам, не получиться, практически невозможно достать полную информацию по всем игрокам

Автор: Step 14.7.2003, 09:29
предсказание курса валют не подходит, если даже построим, то вкладывать надо будет много чтобы получить чучуть

Автор: Step 14.7.2003, 09:31
наметки уже есть - проверю раскажу

Автор: &-ray 15.7.2003, 19:30
Цитата
товарищи работать по игрокам, не получиться, практически невозможно достать полную информацию по всем игрокам

ну тогда по командам вцелом
т.е. если команды А и В в свое время играли с командой С, при этом А проиграла, а В выиграла, то при игре команд А и В велика вероятность того, что А проиграет.
Примитивно, но все же стартовая точка есть smile.gif
Можно даже "поиграть" с результатами предыдущих игр:
А:С - 1:5
В:С - 5:3
А:В - типа 0:6

Автор: kor 16.7.2003, 07:39
Как мне кажется анализировать нужно игру команды против других команд и входной вектор
ID команды1, ID команды2, ID поля..., ID внешних условий

опускаться ниже смерть... сначала обучи такую сетку... посмотри и попробуй что нибудь сложнее
но лучше идти по пути последовательного усложнения

Автор: Step 16.7.2003, 09:27
&-ray это как вариант решения, только не твой пример, твой пример - не даст правильно прогноза так как ты не учитываеш кто играет дома, а кто в гостях....

но если даже все учитывать вероятность ошибки велика.... проверялось

Автор: Step 16.7.2003, 09:51
kor в чемто ты прав

Автор: &-ray 16.7.2003, 19:31
Цитата
&-ray это как вариант решения, только не твой пример, твой пример - не даст правильно прогноза так как ты не учитываеш кто играет дома, а кто в гостях....

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

Автор: B2_Russia 17.7.2003, 09:44
Мне кажется &-ray отчасти прав. Нейронная сеть, в которой не учтены некоторые факторы, влияющие на результат игры, будет иметь больше прав на ошибку. Если мы их не учитываем, то о какой сети идет речь. Не спорю, учесть такие показатели сложно заводя на каждого игрока свой ID, но любую задачу можно упростить, дело времени и мысли...

Автор: Step 17.7.2003, 10:09
&-ray влияет, а ты недумал, сколько факторов влияет на курсы валют, а ведь прогнозирующие системы работают...

Автор: Step 17.7.2003, 10:16
по поводу ид игрока, вспомним теорию вероятности: игроков много, факторов много, но в совокупности они определяют показатели всей команды, в качестве упрощения можно отталкиваться от показателей команд. к томуже я расширил входной вектор (не внося новых данных), кто знает теорию НС поймет...


По поводу влияющих факторов: этот топик был создан, что бы наши форумчане и предлагали факторы:
вы предложили факторы игроков - но я не в состоянии их обрабатывать


жду новых

Автор: Step 17.7.2003, 14:47
все начинаю обучения, посмотрим, что получиться

Автор: Step 18.7.2003, 10:52
правильно предсказует кажый 5 результат, остальные не правильно, как оказалось алгоритм обучения НС на таких малых данных не действителен, вывод, сеть надо чуть подучить самому.

Автор: &-ray 19.7.2003, 12:39
Цитата
&-ray влияет, а ты недумал, сколько факторов влияет на курсы валют, а ведь прогнозирующие системы работают...

А я и не говорю, что построить такую систему невозможно, надо просто по возможности учитывать все влияющие факторы или в крайнем случае наиболее важные из них.
Цитата
правильно предсказует кажый 5 результат, остальные не правильно, как оказалось алгоритм обучения НС на таких малых данных не действителен, вывод, сеть надо чуть подучить самому.

А какой алгоритм ты сейчас используешь?
Поделись, если не секрет smile.gif

Автор: podval 19.7.2003, 16:59
Ребята, по поводу факторов. Дело в том, что системы, прогнозирующие временные ряды, к которым относятся и ряды курсов валют, строили не так вот с бухты-барахты, а проведя предварительный анализ имеющихся данных и после строгой формализованной постановки задачи.
Step, ты такой анализ проводил? Боюсь, тебе надоест заниматься всем этим прогнозом и ты в конце заявишь "эта теория здесь не работает" только потому что ты, как мне кажется, действуешь методом научного тыка. Вполне может быть, что НС ты строишь по всем правилам и обучаешь тоже, как надо. Я хочу подвести к тому, не упустил ли ты этот очень важный этап - формализованной постановки задачи. Если ты прошел мимо такой вещи, как факторный анализ (строгий, количественный, а не словесный типа вот это надо учесть или то), то результат заведомо получишь отрицательный.
Что я хотел бы подсказать. Не погружаясь сразу в нейронные сети, поинтересуйся как-нибудь на досуге моделями боя. Звучит, может быть, непривычно для уха, но эти модели хорошо могут лечь и на спортивные состязания. Можешь встретить и более заумное название того же, например, моделирование антагонистических конфликтных ситуаций. Постарайся въехать, как формализуют понятие превосходства одной группировки над другой.

Автор: Step 21.7.2003, 10:14
Всем спасибо за помощь.На данный момент построенно две сети которые предсказуют результат. одна в 50 процентах, а другая в 63 процентах.
B2_Russia к сожелению твое замечание по поводу того, что я разделил некоторые входы на разные нейроны оказалось не значительным...

вообще получается - следующее, я обучал систему на одном чемпионате (Англии), обучаемых данных было очень не достаточно, что бы система имела большую КПД.

кстати система предсказывала 10 подряд правильных результатов, пока не встречался из ряда вон выходящий матч (типа самая сильная команда играет в нечью с самой слабой...., данную проблему я сейчас пытаюсь решить.....).....

Автор: Step 21.7.2003, 10:44
podval модель боя насколько я понимаю это "Теория игр" так по крайней мере она в научной литературе описанна... или ты про другое....

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

Автор: Step 21.7.2003, 10:50
&-ray использую обратное распространения ошибки.



еще один интересный результат который я получил,

у меня две разных сети
на вход первой подаються характеристики двух команд ...... 50 % правильных результатов.
на вход второй подается 20 последних результатов игр команды..... 63% правильных результатов и более равномерное распределения ошибки....


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

более того мне заядлые букмекеры подсказали, что если мою программу приминить на НБА результатах то правильно предсказанных будет гораздо больше..

Автор: Step 21.7.2003, 10:55
и кто знает подскажите как решить проблему с 0 на входном слое т.к. при 0 не проичходит модификация синапса (коэффициента)

Автор: podval 21.7.2003, 11:50
Цитата
не хочу углубляться в размышления, но цели разные...

А что это меняет? В другой теории цели станут одинаковыми?

Автор: Step 21.7.2003, 12:52
podval то что именно теория игр операется на то что у сторон одинаковые цели........
и в ней нет возможности учитывание цели, теорию игр хорошо применять для шахмот где задача - побидить, в крайнем случае не проиграть, в футболе у команд цель не победить, а набрать конкретное количество очков, не максимальное, а конкретное (из-за финансовой политике и долгосрочных планов.....) и цель у команды может поменяться со временем......
т.к. цель каждой команды не ясна, то надо применять теорию не ориентированную на цель, а работающую по принципу аппроксимации данных...

Автор: podval 21.7.2003, 15:26
Цитата
именно теория игр операется на то что у сторон одинаковые цели........

А вот и фигушки smile.gif

Автор: podval 21.7.2003, 15:27
Цитата
т.к. цель каждой команды не ясна, то надо применять теорию не ориентированную на цель, а работающую по принципу аппроксимации данных...

Кстати, вот это уже не очень понятно.

Автор: Step 21.7.2003, 15:40
podval про теорию игр спорить не буду, так как точно не помню.... посмотрю

в любом случае спасибо за совет........
Цитата
Кстати, вот это уже не очень понятно.

мне это тоже не особо понятно, но это так, и это не мои размышления....

Автор: podval 21.7.2003, 19:19
Step
И все-таки поясни, что именно ты имел в виду.

Автор: Step 22.7.2003, 17:18
podval то что все команды разделяються на две группы(по непонятному принципу), и позиции в группе определены

Автор: podval 22.7.2003, 18:47
т.е. эти команды могут образовать два кластера?

Автор: Step 23.7.2003, 09:02
podval да...

Автор: Andrey1 27.3.2006, 10:38
А, интересно... сети, которые обучились результатам матчей учитывали, что им на вход подаются случайные данные smile ??
То есть, как мне кажется, обычная сеть обучается обычной фунции:
f(x_1,...,x_n)=y1
И если два раза ей задать тот же набор данных:
f(x_1,...,x_n)=y1, или немного другой: f(x_1,...,x_n)=y2
то она либо проигнорирует эти данные, либо даст сбой.

Или все же можно давать обычной Байсовской сети на вход случайный вектор (и она будет восстанавливать функцию распределения вероятностей)?

Автор: B2_Russia 27.3.2006, 20:28
Оффтоп: эх... какую тему вскрыл, аж ностальгия нахлынула smile

Автор: Andrey1 28.3.2006, 16:22
Цитата(B2_Russia @ 27.3.2006, 20:28 Найти цитируемый пост)
Оффтоп: эх... какую тему вскрыл, аж ностальгия нахлынула 

Оффтоп: а что, поезд уже ушел smile...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)