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

 
Яндекс выложил в открытый доступ новую библиотеку машинного обучения
Яндекс выложил в открытый доступ новую библиотеку машинного обучения
  • 2017.07.18
  • Оксана Мамчуева
  • www.searchengines.ru
Яндекс разработал новый метод машинного обучения CatBoost. Он позволяет эффективно обучать модели на разнородных данных — таких как местонахождение пользователя, история операций и тип устройства. Библиотека машинного обучения CatBoost выложена в открытый доступ, ее могут использовать все желающие. Для работы с CatBoost достаточно установить...
 

Для R пакет есть, замечательно.


установка - https://tech.yandex.com/catboost/doc/dg/concepts/r-installation-docpage/

1) Предварительно нужно установить Visual C++ 2015 Build Tools - http://landinghub.visualstudio.com/visual-cpp-build-tools

2) 
install.packages('devtools')
devtools::install_github('catboost/catboost', subdir = 'catboost/R-package')

 

Да зачем R, не перевариваю его.. командная строка или dll :)

 

Замутил нейросетевой регрессионный предиктор, вывел в виде гистограммы текущая цена-предсказание модели на n баров вперед (15 в данном случае), обучается на 5000 баров, переобучается каждые 500 сам. Выглядит неплохо при первом рассмотрении, но работает конечно не так быстро как хотелось бы, потому что вообще-то я хочу несколько таких и по ним обучить еще одну НС :)


Ну и так если на минутках смотреть - довольно маленькая дисперсия, бывает конечно высокой на экстремальных выбросах, но в среднем в 100п (5-и знак) диапазоне ходит.

Стрелочками самое вкусное обвел

 
Maxim Dmitrievsky:

работает конечно не так быстро как хотелось бы,

На ALGLIB?

 
elibrarius:

На ALGLIB?


ага

можно конечно извратиться со внешней НС или лесами, анпример CatBoost на gpu, но пока лень и некогда

все упирается в скорость, чем выше точность делаешь тем нереальнее прогнать в тестере

 

ALGLIB - страшный тормоз в обучении.

Подавал на ALGLIB сеть 240-50-1, - 2 дня ждал, не дождался и выключил.

Сеть  70-5-1 обучил за полчаса. А nnet из R меньше минуты обучалась на тех же данных. Вот сижу теперь с R разбираюсь.

 
elibrarius:

ALGLIB - страшный тормоз в обучении.

Подавал на ALGLIB сеть 240-50-1, - 2 дня ждал, не дождался и выключил.

Сеть  70-5-1 обучил за полчаса. А nnet из R меньше минуты обучалась на тех же данных. Вот сижу теперь с R разбираюсь.


RF более-менее, 50 входов по 5000, 100 деревьев, 25 сек в среднем (на ноуте). Но для оптимизации это тоже очень долго. НС тормозная капец да, но это обычный MLP от него другого ждать и не приходится

нужно что бы училось все максимум секунду, где взять такую? )

 

Очередной раз убедился, что леса не могут экстраполировать, сколько бы тут восклицаний не было что это не так:

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

Леса НЕ УМЕЮТ ЭКСТРАПОЛИРОВАТЬ. Все умники остаются на второй год заново учить матчасть.


  • как и деревья решений, алгоритм абсолютно неспособен к экстраполяции
http://alglib.sources.ru/dataanalysis/decisionforest.php
 

Цены без какого-либо преобразования в модель не подают.

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