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

 
Aleksey Vyazmikin #:

Кто хочет понять - спрашивает, что не понимает.

Ну вот, спросил почему считаете ваш алгоритм нежадным (в общепринятом смысле) - ответа не увидел.
 
Aleksey Nikolayev #:
Ну вот, спросил почему считаете ваш алгоритм нежадным (в общепринятом смысле) - ответа не увидел.
Вы не первый) 
 

забил последние несколько ваших постов в чатгпт 4:

И снова, старая песня о главном. Продолжил тестировать метод квантования через ZZ, воспользовался уже отработанной схемой:

1. Разложение предикторов на квантовые отрезки по выборке train.

2. Оценка каждого квантового отрезка на выборке train для отбора в пул.

3. Удаление/фильтрация части выборки, описывающейся квантовым отрезком со смещением целевой "0" по заданному критерию. В этот раз смотрел, есть ли эффект от квантового отрезка на выборке test для подтверждения.

Сделал 100 итераций.

Такой результат для выборок train, test, exam. Показатель - вероятность появление целевой единицы (процент единиц в выборке).

Стало интересно, а вообще какие шансы у модели выбрать правильные квантовые отрезки, что бы показывали они устойчивый результат на трёх выборках.

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

Форма графика говорит об отсутствии линейной зависимости от номера итерации, но похоже есть корреляция между числом целевых накаждой итерации. Если график для целевой "1" находится в условном диапазоне, то вот для целевой "0" видим какой то взрывной рост на 2/3 графика с дальнейшей наметившейся динамикой на снижение.

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

Похоже на обратную корреляцию - не ясна причина. Так же обращает внимание на себя сильное падение шансов выбрать хороший квантовый отрезок для целевой "0" до примерно 40 итерации - на донышке шанс в пределах 5%, что очень мало, на 2/3 происходит возврат к изначальной вероятности. Такой разброс удивляет, как и выраженная динамика на протяжении многих итераций.

Продолжаю эксперименты, последнее прошлое сообщение было тут.

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

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

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

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

Зоопарк получился весьма разнообразным, вот некоторые образцы.

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

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

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

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

сравни мой подход с иерархической кластеризацией!
Ваш подход к квантованию через ZZ и последующему анализу квантовых отрезков представляет собой интересный и инновационный метод анализа данных, особенно в контексте выбора и оценки предикторов. Этот метод имеет некоторые сходства, но и значительные отличия от иерархической кластеризации. Давайте рассмотрим основные аспекты обоих подходов для сравнения:

### Квантование через ZZ:

1. **Цель**: Выделение и оценка квантовых отрезков предикторов для определения их влияния на целевую переменную.
2. **Метод**: Разбиение предикторов на квантовые отрезки, оценка их влияния на обучающей выборке, и последующая фильтрация выборки на основе этих отрезков.
3. **Применение**: Особенно полезен для выявления устойчивых отношений между предикторами и целевой переменной, а также для уменьшения размерности данных путем исключения менее значимых предикторов.
4. **Особенности**: Возможность анализа динамики изменения вероятности выбора эффективных квантовых отрезков в зависимости от итераций.

### Иерархическая кластеризация:

1. **Цель**: Группировка объектов на основе их сходства, формирование иерархии кластеров от наиболее похожих объектов к группам, содержащим эти объекты.
2. **Метод**: Рекурсивное объединение или разделение объектов или кластеров на основе меры их сходства или расстояния.
3. **Применение**: Широко используется для анализа данных, где необходимо выявить структуру в данных или группы похожих объектов без предварительного знания количества кластеров.
4. **Особенности**: Визуализация в виде дендрограммы, позволяющей оценить как объединение кластеров, так и расстояние между ними.

### Сравнение:

- **Цели и применение**: Ваш метод фокусируется на анализе влияния предикторов на целевую переменную, в то время как иерархическая кластеризация направлена на выявление структуры в данных через группировку похожих объектов.
- **Методология**: Квантование через ZZ работает с предикторами и их влиянием на целевую переменную, тогда как иерархическая кластеризация основана на мерах сходства между объектами или кластерами.
- **Результаты и интерпретация**: Ваш подход позволяет прямо анализировать и оптимизировать влияние предикторов, в то время как иерархическая кластеризация предоставляет общую структуру данных и группы похожих объектов.

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

Продолжение:

Если вы уберете целевые переменные из вашего метода, то он может стать похожим на иерархическую кластеризацию в том смысле, что оба подхода могут быть использованы для группировки данных без учета заранее известных меток классов. Иерархическая кластеризация — это метод анализа данных, который стремится построить иерархию кластеров. Основное отличие иерархической кластеризации от других типов кластеризации заключается в том, что она не требует предварительного указания количества кластеров. Вместо этого результат представляет собой дендрограмму, позволяющую понять взаимосвязи между отдельными объектами и группами.


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

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

Отсебятина:

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

Потому надо определиться, у вас model based или model agnostic подход. Можно делать и так и так, но второй предпочтительнее, потому что опирается только на данные, а не на структуру модели.
 
Aleksey Nikolayev #:
Ну вот, спросил почему считаете ваш алгоритм нежадным (в общепринятом смысле) - ответа не увидел.

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

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

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

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

 
mytarmailS #:
Вы не первый) 

У него есть желание обсуждать термины, и он постарался понять суть. А Вам где и что не понятно - вот написали бы конкретно - дал бы и ответ.

 
Maxim Dmitrievsky #:

забил последние несколько ваших постов в чатгпт 4:

Ну, хоть ChatGPT оценил мой подход добрым словом.

Вот даже не знаю - получается, что контекст улавливает лучше, чем человеки здешние....

Maxim Dmitrievsky #:

Отсебятина:

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

Потому надо определиться, у вас model based или model agnostic подход. Можно делать и так и так, но второй предпочтительнее, потому что опирается только на данные, а не на структуру модели.

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

Я не понимаю Ваш посыл - Вы хотите, что бы я отказался от своего метода и стал использовать только кластеризацию? В чём суть то?

 
Aleksey Vyazmikin #:

Ну, хоть ChatGPT оценил мой подход добрым словом.

Вот даже не знаю - получается, что контекст улавливает лучше, чем человеки здешние....

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

Я не понимаю Ваш посыл - Вы хотите, что бы я отказался от своего метода и стал использовать только кластеризацию? В чём суть то?

нет, он всегда поддакивает, поэтому часто используется на форуме в кач-ве доказательства их слов

суть чтобы свести вашу работу к научной, с нормальными определениями, которые понимают другие
 
Maxim Dmitrievsky #:

нет, он всегда поддакивает

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

Вам там нормально написали в чём отличия от кластеризации. На научную степень не претендую.

Лучше напишите, в чём Вы видите смысл применять иерархическую кластеризацию, чем она лучше K-Means и моего дерева на базе K-Means.