Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 190

 
Andrey Dik:

То есть, это полезно делать. Значит вместо 4-х разбиений, очевидно что это мало, нужно делать 40 разбиений. Для 4-х ядер будет в 10 раз дольше считаться, но полагаю, что временем можно пожертвовать в пользу робастности.

Не очевидно.

Например, ждать вычислений 10 часов вместо 1 часа для дейтрейдинга неприемлемо. Даже если оставить компьютер на ночь, то получим модель на заведомо устаревших данных.

Поэтому необходим здравый компромисс между временем вычислений и качеством моделирования. И самый оптимальный вариант: всё, что можно вычислять параллельно, необходимо распараллелить, что нельзя - вычислять последовательно.

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

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

Также не исключено, что некоторую часть многозадачности можно перенести из CPU в GPU.

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

Распределенные вычисления в сети MQL5 Cloud Network
Распределенные вычисления в сети MQL5 Cloud Network
  • cloud.mql5.com
Заработать деньги, продавая мощности своего компьютера для сети распределенных вычислений MQL5 Cloud Network
 
Yury Reshetov:

Не очевидно.

Например, ждать вычислений 10 часов вместо 1 часа для дейтрейдинга неприемлемо. Даже если оставить компьютер на ночь, то получим модель на заведомо устаревших данных.

Поэтому необходим здравый компромисс между временем вычислений и качеством моделирования. И самый оптимальный вариант: всё, что можно вычислять параллельно, необходимо распараллелить, что нельзя - вычислять последовательно.

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

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

Также не исключено, что некоторую часть многозадачности можно перенести из CPU в GPU.

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

Я не настаиваю на "горбатом варианте", лишь вопрошаю: чем на большее количество вариантов будет разбиты данные, тем можно получить качественнее обучение сделав анализ полученных результатов. Скажем, что в 90% случаев мы видим, что модель показывает адекватные результаты на тестовых данных, и только в 10% получается переобучение, значит сама по себе модель чего то да стоит. А если наоборот - на переработку. А если делить данные только на 4 разных варианта, то вероятность что получим переобученную модель чрезвычайно велика.

Опять же, я не затрагиваю "железные" аспекты, только уточняю "софтверные". 

 
Vizard_:
...
Не обладающий  преимуществованиями перед извесными..... но никто не поверит)))

Приведите конкретный пример известных ..., которые "имеют преимущества".

А то от вас ничего кроме голословного критиканства, которое всегда завершается на том, что выборку не дадите, софтину не покажете (всё строго засекречено, свидетели убраны). Зато, рисуете какие-то нереальные цифири, которые никто кроме Вас ни подтвердить, ни опровергнуть не может.

Банальный вопрос на засыпку: если,  у Вас по котировкам "имеется возможность получать" 92% с копейками обобщающей способности, то почему Вы до сих пор занимаетесь пустопорожним критиканством какого-то не "имеющего преимущества с известными ...", а не занимаетесь скупкой: заводов, газет, пароходов, островов, яхт и проч.? И когда можно будет полюбоваться Вашей рожицей на обложке Forbes?

 
Alexey Burnakov:


Есть ясные правила трактовки взаимодействий в линейных моделях. Они немного посложнее трактовки линейной комбинации: https://www.r-bloggers.com/interpreting-interaction-coefficient-in-r-part1-lm/

 

Но чтобы найти значимые взаимодействия надо перекопать много комбинаций. Вот это засада. 

Посмотрел, спасибо.

От прочтения мое недоумение только усилилось, хотя и на новом понимании слова "взаимодействие".

Мое недоумение основано на том, что любая цифра в статистике должна обладать неким содержанием.

Берем такое уравнение lm

zz ~ rsi*stoch

по отдельности каждый из индикаторов обладает некоторым смыслом, а какой смысл у их произведение? Какой смысл этого "взаимодействия"? Или мы просто получили новый предиктор неизвестного содержания и смотрим как он влияет на целевую переменную?  

 
СанСаныч Фоменко:

Посмотрел, спасибо.

От прочтения мое недоумение только усилилось, хотя и на новом понимании слова "взаимодействие".

Мое недоумение основано на том, что любая цифра в статистике должна обладать неким содержанием.

Берем такое уравнение lm

zz ~ rsi*stoch

по отдельности каждый из индикаторов обладает некоторым смыслом, а какой смысл у их произведение? Какой смысл этого "взаимодействия"? Или мы просто получили новый предиктор неизвестного содержания и смотрим как он влияет на целевую переменную?  

Забавно вас слушать иногда )

Никакой новой сущности из перемножения физически не получается, хотя взаимодействие считается именно как перемножение в классич.регрессии.

Угол наклона для первого предиктора будет зависесть от уровня второго предиктора. В этом суть взаимодействия. Это упрощенно. Там есть нюансы. Но зная все коэффициенты такого уровнения можно говорить, что например, повышение уровня х1 на 1 приведет к повышению уровня целевки на 0.1 при уровне х2 = 3. Как-то так.

 
Andrey Dik:

Я не настаиваю на "горбатом варианте", лишь вопрошаю: чем на большее количество вариантов будет разбиты данные, тем можно получить качественнее обучение сделав анализ полученных результатов.

...

Опять же, я не затрагиваю "железные" аспекты, только уточняю "софтверные". 

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

Мне гораздо интереснее потратить своё время и усилия на достижение  целей более перспективным путём: создание алгоритма менее требовательного до вычислительных и временных ресурсов компьютера для обучения моделей с более высокой обобщающей способностью.

 
Yury Reshetov:

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

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

Юрий, я не прошу Вас что то переделывать или доделывать в Вашем софте, да и в Java я не в зуб ногой, поэтому, хотя я давно желал посмотреть Ваш код, всё равно не пойму там ничего.

Просто спрашиваю, теоретический вопрос, как Вы считаете, будет толк, если есть возможность разбить данные на как можно большее число вариантов? Да, или нет. 

 
Andrey Dik:

...

Просто спрашиваю, теоретический вопрос, как Вы считаете, будет толк, если есть возможность разбить данные на как можно большее число вариантов? Да, или нет. 

Нет смысла обсуждать задачи, тривиально решаемые по принципу "числом, а не умением". Например, если один землекоп за день может вырыть траншею на расстояние n метров, то m  землекопов могут вырыть эту же траншею за такое же время на расстояние m*n метров. И что тут обсуждать? Если критично время рытья траншеи, то нужно разделить время оставшееся до дедлайна в днях на расстояние которое может вырыть один землекоп за день и предусмотреть ещё несколько дополнительных землекопов для непредвиденных обстоятельств. Решение задачи тривиально и обсуждать тут нечего.

Обсуждать можно задачи, у которых решение не столь тривиально, например, как увеличить производительность рытья такой же траншеи меньшим количеством землекопов за то же самое время? Уже появляются варианты, например: заменить землекопов экскаватором или усовершенствовать их лопаты и т.д. и т.п..

 
Yury Reshetov:

Нет смысла обсуждать задачи, тривиально решаемые по принципу "числом, а не умением". Например, если один землекоп за день может вырыть траншею на расстояние n метров, то m  землекопов могут вырыть эту же траншею за такое же время на расстояние m*n метров. И что тут обсуждать? Если критично время рытья траншеи, то нужно разделить время оставшееся до дедлайна на количество землекопов и предусмотреть ещё несколько дополнительных землекопов для непредвиденных обстоятельств. Решение задачи тривиально и обсуждать тут нечего.

Обсуждать можно задачи, у которых решение не столь тривиально, например, как увеличить производительность рытья такой же траншеи меньшим количеством землекопов за то же самое время? Уже появляются варианты, например: заменить землекопов экскаватором или усовершенствовать их лопаты и т.д. и т.п..

Ответ витиеватый, расцениваю как "Да".

Предположим, у меня дома стоит стойка из 64х кластеров в каждом из которых 4-е 8-ми ядерных процессора, почему бы мне его не использовать для таких целей? Тем более, если от этого будет толк. 

 

Зря мы тут лясы точили на 191 страницах. Пора уже всем расходиться по домам несолоно хлебавши.

См. https://www.mql5.com/ru/forum/3457/page3396#comment_2939962

Цитирую:

Vladimir Karputov:

Всё. Машинное обучение больше не нужно. Всех победил обычный офисный пакет

 

Интересное и Юмор
Интересное и Юмор
  • www.mql5.com
Форум трейдеров MQL5.community
Причина обращения: