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

Aleksey Vyazmikin #:


СанСаныч Фоменко , стоит ли ожидать выборку?

О чем это?

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

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

Первый элемент цепочки - препроцессинг, который занимает от 50% до 70% трудозатрат. Здесь определяется будущий успех.

Второй элемент цепочки - обучение модели на наборе train.

Третий элемент цепочки - исполнение обученной модели на наборе test. Если результативность модели на этих наборах отличается хотя бы на треть, то модель переобучена. Получаешь такое через раз, если не чаще. Переобученная модель - это модель слишком точная модель. Извините, азы. 


как то у нас разные понятия об азах. извините. и говорим мы, похоже, на разных языках.
СанСаныч Фоменко #:

О чем это?

Ранее я писал

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

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

Aleksey Vyazmikin, 2022.12.08 08:44

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


Вы давали ответ, что идея хорошая, но стерли об этом сообщение.

Andrey Dik #:

как то у нас разные понятия об азах. извините. и говорим мы, похоже, на разных языках.

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

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


Успеха Вам в Ваших поисках глобального оптимума.

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

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

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


Успеха Вам в Ваших поисках глобального оптимума.


смотря какого глобального оптимума. тот, который ищете вы и терпите не удачу, получая переобученные модели - мне не нужен)) 
посмотрите на обучение немного с другой стороны. вот построили вы модель, предикторы шмудикторы и дригие классные вещи, обучили модель, хлоп - на оос не работат. вот те на, опять АО виноват! так чтоли?
заявляю ответственно, не АО виноват, а модель плохая.
рекомендую тогда случайный ао с сортировкой. ваши модели всегда будут чуть чуть пьяненькими, чуть чуть недоученными. гарантированно.
СанСаныч Фоменко #:

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

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

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

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

Не надо всё смешивать в одну кучу.

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

Когда я ищу приемлемый перечень предикторов - оптимизация в смысле штанов. Но смысл совершенно другой: попытка избежать "мусор на входе - мусор на выходе". Здесь качественное отличие от попыток поиска "правильного" алгоритмы, который находит глобальный оптимум. Никакой глобальный оптимум не даст прибыльную ТС на мусоре. 

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

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

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

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

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

итак, модель->критерий->оптимизация критерия

Aleksey Nikolayev #:

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

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

штаны -> критерий оценки штанов -> выбор (оптимизация критерия оценки штанов)

Aleksey Nikolayev #:

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

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

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

Не надо всё смешивать в одну кучу.

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

Приятно видеть пост человека в теме!

Andrey Dik #:

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

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

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

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

итак, модель->критерий->оптимизация критерия

различаю два вида критериев, интегральные и производные.

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

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

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

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

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