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

 
Yury Reshetov:

Поэтому Dr.Trader не смог запустить полноценную libVMR переписанную на R - очень много вычислений и сильно жрёт память.

У меня ошибка в коде была в функции большого ядерного преобразования. В атаче та же старая версия 3.01, но с фиксом. С памятью теперь всё ок, с большой ядерной машиной тоже. Но скорость помедленне джавы будет.

Файлы:
libVMR.txt  12 kb
 
Dr.Trader:

У меня ошибка в коде была в функции большого ядерного преобразования. В атаче та же старая версия 3.01, но с фиксом. С памятью теперь всё ок, с большой ядерной машиной тоже. Но скорость помедленне джавы будет.

Это самое отвратительное, что скорость ниже плинтуса.

К тому же libVMR - это бинарный классификатор, что не есть хорошо. Тернарный может из дерьма конфетку сделать:

Mihail Marchukajtes:
В самом предикторе уровень обобщения данных 90%, а в выгруженной модели всего лишь 47% Непонятно.... Ну и запустить в MQL пока что не получилось....
Т.е. бинарный классификатор обобщает только 47% примеров, что гораздо хуже, чем рандом - 50%. А тернарный отфильтровывает мусор, получая на оставшихся примерах уже 90% обобщающую способность.
 
Потихоньку поднял урвоень обобщения для модели до 100%, посмотрим как отработает в будущем :-)
 
Mihail Marchukajtes:
Потихоньку поднял урвоень обобщения для модели до 100%, посмотрим как отработает в будущем :-)

100% обобщающей способности - это не предел. Можно дальше совершенствовать, подбирая предикторы по bias. Если у двух тернарных классификаторов 100% обобщающая способность, но bias разные, то лучшим будет классификатор с наименьшим bias - у него более значимые предикторы.

Чем меньше bias, тем меньше примеров в тестовой выборке помечаются тире (неопределённость).

 
Yury Reshetov:

100% обобщающей способности - это не предел. Можно дальше совершенствовать, подбирая предикторы по bias. Если у двух тернарных классификаторов 100% обобщающая способность, но bias разные, то лучшим будет классификатор с наименьшим bias - у него более значимые предикторы.

Чем меньше bias, тем меньше примеров в тестовой выборке помечаются тире (неопределённость).

LДАвно интересует и можно сказать мучает вопрос. Что означает параметр Indicator by Reshetov и значение. Что оно обозначает? А Биас у меня равен нулю при обучении в 100% обобщения...
 
Mihail Marchukajtes:
ДАвно интересует и можно сказать мучает вопрос. Что означает параметр Indicator by Reshetov и значение. Что оно обозначает?

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

 
Yury Reshetov:

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

Юрий, вопрос. Предиктор может выдавать вероятности вместо классов? 
 
Интересно это нам как нибудь поможет https://news.mail.ru/society/26600207/?frommail=10
 
Alexey Burnakov:
Юрий, вопрос. Предиктор может выдавать вероятности вместо классов? 
Если под вероятностью вы подразумеваете степень выраженности признака, то это да можно. Только не в комитете, поскольку он выдаёт либо 0 либо 1 либо -1, а в бинарном. Постройте модель тна всём рынке и вы увидите как модель выскакивает выше нуля, и чем выше нуля значение модели тем более вероятен класс. соотвественно и ниже. НО в процентной соотношении....ммм... ну разве что от максимальное значение принять за 100% и от него расчитывать. Предположим у меня сигнал бай, и модель выше нуля со значением, скажем 0.1, а максимальное значение было 1, знамо этот сигнал бай имеет состояние истина на 10%, как то так.... если это то о чём я подумал....
 
Alexey Burnakov:
Юрий, вопрос. Предиктор может выдавать вероятности вместо классов? 

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

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

Причина обращения: