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

 
Maxim Dmitrievsky:

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

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

 
Aleksey Vyazmikin:

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

Нет. Попробуйте сначала декомпозицию и у Вас получится. 

Просто, разделение идёт по одному принципу, а соединение - по другому. Анализ и синтез. Нейроны - и там и тут, работают одинаково, но в первом случае событие разбирается по полкам, а во-втором - собирается вокруг факторов, влияющих на событие. 

[Удален]  
Aleksey Vyazmikin:

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

нет смысла

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

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

Хотя Алексея можно понять, зачем он ищет способ уменьшить размерность, он леса и бустинг использует. В одном дереве большинство из 3000 входов могут быть вообще ни разу не использованы. В лесу и бустинге получше с этим, но боюсь, что толка от этого мало.
 
Maxim Dmitrievsky:

нет смысла

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

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

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

Есть ряд идей, почему это может быть полезно:

1. Можно выявить взаимозависимые предикторы:

1.1. Построить с их помощью отдельную модель и оценить их предсказательную способность

1.2. Исключить их из выборки и оценить их влияние на результат, если они улучшают результат то подумать о создании подобных предикторов

2. Использовать один предиктор вместо группы предикторов:

1. Это уравняет шансы случайного его взятия при построении модели

2. Уменьшит время обучения за счет снижения размерности

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


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

[Удален]  
Aleksey Vyazmikin:

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

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

Есть ряд идей, почему это может быть полезно:

1. Можно выявить взаимозависимые предикторы:

1.1. Построить с их помощью отдельную модель и оценить их предсказательную способность

1.2. Исключить их из выборки и оценить их влияние на результат, если они улучшают результат то подумать о создании подобных предикторов

2. Использовать один предиктор вместо группы предикторов:

1. Это уравняет шансы случайного его взятия при построении модели

2. Уменьшит время обучения за счет снижения размерности

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


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

Если предикторы - это цены, то по 3-5 баров слева и справа очень коррелированы с центральным баром, исключения редки во время резких скачков цены. Берите каждый пятый-седьмой бар и получите примерно то что вы хотите. Или переходите на старший таймфрейм. Или отсейте предикторы проверив их по взаимной корреляции. Основатель этой ветки тоже прореживал бары, посчитайте его блог.

 
Aleksey Vyazmikin:

Я бы для начала рекомендовал очистить данные от мусорных признаков ...

Представь - есть у тебя 10 признаков, 9 из них мусорные, сжал ты это все  в один признак  И ЧЕ ???

 
Maxim Dmitrievsky:

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

вознаграждение криво считается в трейдере, видать.. после серии апдейтов начинает торговать не в ту сторону

заодно рекуррентные сети в торче ковыряю между делом

желтые - начала недель, первые 1-3 дня


Интересно...

 

А кто то пробовал использовать "круглые уровни" как признаки?

Или как способ обработки цены ?

можно заметь цены круглыми значениями например...

Можно удалить значения которые одинаковые подряд идут...

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