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

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

Спасибо, прочитал.

Думаю, что автор слишком оптимистично настроен.

Проблема переобучения не решаема в принципе.

...

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

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


...

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

Это по Вашему убеждению, а также на базе подтверждения моими опытами с jPrediction, вроде бы так именно и должно быть?

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

Например, Виктор Царегородцев проводил исследования нейросетей с BackPropagation и по результатам пришёл к совершенно противоположным выводам в своей статье "Редукция размеров нейросети не приводит к повышению обобщающих способностей", цитирую:

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

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

 
Yury Reshetov:

Под усложнением моделей в jPrediction подразумевается постепенное увеличение количества предикторов. Ведь в jPrediction количество нейронов в скрытом слое равно 2^(2*n+1), где n - количество предикторов. Соответственно, с ростом количества предикторов сложность модели (количество нейронов в скрытом слое) увеличивается.


Если предикторов 100, то по вашей формуле число нейронов в скрытом слое будет где-то приближаться к числу атомов во вселенной (про 200 предикторов я и думать боюсь). Вы по видимому располагаете божественными ресурсами - вычислительными и времени.



 
Andrey Dik:

СС просто привел весьма неудачный пример, при этом продолжает упорствовать в своём невежестве...

 Что значит "другие силы"? На шарик и пушинку действуют одни и те же силы - сила тяжести (вес) и распределённая по половине площади тела сила ветрового потока.

...

Андрей, напоминаю, что эта ветка посвящена машинном обучению, а не проблемам физики.

Будьте ласковы, не флудить здесь на отвлечённые темы, которые в данном топике не приветствуются.

Если Вам так неймётся побахвалиться в познаниях физики, то заведите отдельную ветку посвящённую ей.

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

 
Yury Reshetov:

Андрей, напоминаю, что эта ветка посвящена машинном обучению, а не проблемам физики.

Будьте ласковы, не флудить здесь на отвлечённые темы, которые в данном топике не приветствуются.

Если Вам так неймётся побахвалиться в познаниях физики, то заведите отдельную ветку посвящённую ей.

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

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

Извините. И Вы СС извините меня. 

 
sibirqk:

Если предикторов 100, то по вашей формуле число нейронов в скрытом слое будет где-то приближаться к числу атомов во вселенной (про 200 предикторов я и думать боюсь). Вы по видимому располагаете божественными ресурсами - вычислительными и времени.

Да хоть 10 000 предикторов. Не факт, что все они информативны. Т.е. jPrediction найдёт среди них несколько наиболее информативных, постепенно усложняя модели. И остановится, как только обобщающая способность начнёт снижаться.

До божественных ресурсов дело не доходит. Вполне достаточно и обычной персоналки.

 
Andrey Dik:

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

Извините. И Вы СС извините меня. 

Метафоры не имеют никакой ценности, кроме риторической, независимо от их удачности в риторике. И придираться к ним - моветон.

Извинения конечно же приняты.

 
Yury Reshetov:
Метафоры не имеют никакой ценности, кроме риторической, независимо от их удачности в риторике. И придираться к ним - моветон.

Если что то сказанное не имеет никакой ценности, то это болабольство. Не думаю, что СС хотел болаболить, просто так получилось у него. 

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

Ну да ладно, проехали уже.

 
Andrey Dik:

Если что то сказанное не имеет никакой ценности, то это болабольство. Не думаю, что СС хотел болаболить, просто так получилось у него.

Он всего лишь привёл не очень удачную метафору. Ну и что? К стенке его поставить за это?

Все мы люди и все мы иногда ошибаемся.

Другой компот, что столько флуда из-за этого, что чрезмерно снижает информативность топика. А это уже - не комильфо.

 
Yury Reshetov:

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

Это по Вашему убеждению, а также на базе подтверждения моими опытами с jPrediction, вроде бы так именно и должно быть?

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

Например, Виктор Царегородцев проводил исследования нейросетей с BackPropagation и по результатам пришёл к совершенно противоположным выводам в своей статье "Редукция размеров нейросети не приводит к повышению обобщающих способностей", цитирую:

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

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

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

Вместе с тем самый переобучаемый алгоритм - это randomforest. Лично обжегся.

 

Верю только цифрам, которые получены по следующей методике.

Берем два файла, которые по времени следуют один за другим.

 

Первый файл делим случайным образом на три части: обучения, тестирования и валидации.

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

 

Переходим ко второму файлу, который по времени расположен за первым.  

Применяем обученную модель на этом втором файле. Полученная ошибка НЕ должна сильно отличаться от от имеющихся 3 ошибок. 

В РЕЗУЛЬТАТЕ ИМЕЕМ ЧЕТЫРЕИ ВЕЛИЧИНЫ ОШИБКИ, КОТОРЫЕ НЕ СИЛЬНО ОТЛИЧАЮТСЯ ДРУГ ОТ ДРУГА.

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

 

Вот верю только в это.   

 

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

 

По поводу моих метафор и аналогий.

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

 

Весь этот троллинг в мой адрес... 

Возражать троллю, только кормить его.

Конечно, почистить бы ветку, была просто шикарная ветка  

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