Aspiring Data Science – Telegram
Aspiring Data Science
386 subscribers
465 photos
12 videos
12 files
2.15K links
Заметки экономиста о программировании, прогнозировании и принятии решений, научном методе познания.
Контакт: @fingoldo

I call myself a data scientist because I know just enough math, economics & programming to be dangerous.
Download Telegram
#calibration #regression

Ну хорошо, двигаемся дальше, нельзя ли эту логику обобщить на регрессию? Электронный болван согласен.

Yes! The same logic that makes post-calibration beneficial for binary classification can also be applied to regression tasks—though it is rarely discussed. Here’s why post-calibration can be valuable for regression and how it can be implemented effectively.


Why Would Regression Benefit from Post-Calibration?
Regression models output continuous values, but just like classification models, they can suffer from systematic miscalibration in their predictions. The key idea is that a model’s predicted values might be biased or have the wrong spread compared to the actual target distribution.

There are two main ways a regression model can be miscalibrated:

Mean Shift (Bias)

The model’s predictions systematically overestimate or underestimate the true values.
Example: A house price prediction model always underestimates expensive houses.

Spread Distortion (Misestimated Variance)

The model’s predictions have the wrong level of dispersion:
Too narrow → Underestimated uncertainty (overconfident)
Too wide → Overestimated uncertainty (underconfident)
Example: A temperature prediction model might always predict values within ±2°C, even when actual deviations are much larger.

How to Perform Post-Calibration in Regression?

Instead of calibrating probabilities like in classification, you adjust the magnitude and distribution of the predicted values in regression. This can be done in a few ways:

1. Post-hoc Mean Correction (Bias Calibration)

Take a held-out calibration set (separate from validation).
Compute the difference between the predicted and actual values.
Fit a simple correction model (e.g., linear regression) to adjust the predictions.

This works like Platt scaling in classification but for correcting systematic bias.

2. Quantile Regression Calibration (Fixing Spread)

Instead of just predicting the mean, we fit a secondary model to predict quantiles (e.g., 10th, 50th, 90th percentile).
This helps in cases where the model’s uncertainty is wrong.
#books #trading #chan

У Чана вышла новая книжка в соавторстве аж с 4мя людьми, "Hands-On AI Trading with Python, QuantConnect, and AWS".
Посмотрел несколько пошаренных страничек, удивился низкому качеству ML-кода. С точки зрения ML рекомендовать не могу, а с точки зрения "понять, какие задачи можно решать с помощью ML в трейдинге" - наверное, можно. Я удивляюсь, как могут люди много лет зарабатывать трейдингом и моделями деньги, и иметь ML знания на уровне ученика средней школы? Скейлеры применяют вне конвейера, используют GridSearch. Я понимаю, что это всё примеры, но зачем использовать в своих примерах плохие практики?
Aspiring Data Science
#hpo #hpt #metalearning #books Пересмотрев доклад, стал искать упомянутую книжку "Automated Machine Learning - Methods, Systems, Challenges". Она оказалась в свободном доступе, по виду хорошая, изучаю. Наугад полистал этот сайт на предмет интересной литературы…
#ensembling #cascading #delegating #arbitrating

Читаю "Metalearning - Applications to Automated Machine Learning and Data Mining". В главе про ансамбли с удивлением обнаружил весьма интересные алгоритмы.


1. Cascade Generalization

Cascade generalization is a type of stacked ensembling where models are arranged in a sequential, layered fashion. Predictions from earlier layers become additional features for models in later layers. Unlike traditional stacking, cascade generalization emphasizes using higher-level models to refine or augment lower-level predictions.

Key idea: Each layer’s models pass their predictions as additional inputs to models in the next layer.
Advantage: Can iteratively refine weak models, allowing later models to correct errors made earlier.
Example: A first-layer model predicts probabilities, and a second-layer model uses those probabilities along with the original features to make the final decision.

2. Cascading

Cascading refers to a progressive model selection strategy where simpler (cheaper) models are used first, and only ambiguous cases are passed to more complex (expensive) models.

Key idea: Reduce computational cost by filtering easy cases early.
Example: A decision tree quickly filters obvious negative cases, and only uncertain cases are sent to a more sophisticated deep learning model.

3. Delegating (or Selective Routing)

Delegating is a framework where multiple models exist, and an intelligent mechanism decides which model should handle each instance. This is also known as an expert selection approach.

Key idea: Different models specialize in different regions of the feature space, and a routing function determines which model should process a given input.
Example: In fraud detection, a rule-based system handles typical transactions, while an anomaly detection model analyzes suspicious ones.

4. Arbitrating

Arbitrating is a meta-learning approach where an additional model (arbitrator) decides which base model’s prediction to trust more. Unlike delegation, where models specialize in different regions, arbitration combines predictions but gives more weight to the most confident model.

Key idea: Instead of picking a single expert, the arbitrator dynamically adjusts confidence in different models.
Example: A reinforcement learning agent (arbitrator) learns which base model performs best in specific scenarios.

5. Meta-Decision Trees (MDTs)

Meta-decision trees (MDTs) are decision trees that learn when to trust each base model in an ensemble, instead of directly predicting the target.

Key idea: The decision tree’s leaves represent which model should be used for a given input, rather than the final prediction itself.
Advantage: Unlike traditional stacking, it explicitly learns a strategy for model selection.
Example: An MDT may learn that Model A performs best for low-income customers, while Model B works better for high-income customers.

Ещё Мастерс писал о чём-то, подобном Arbitrating, когда модели могут специализироваться в разных регионах области определения. Открытых реализаций в Питоне найти не смог навскидку.
🤔1
#russia #law

Похоже, рецепт высокого благосостояния для россиян наконец-то найден.

"К настоящему моменту сумма требований российских телеканалов к Google по поводу блокировки аккаунтов на YouTube достигла 1,8 дуодециллиона рублей. Подобная сумма превышает весь мировой ВВП."

https://3dnews.ru/1117573/arbitragniy-sud-moskvi-zapretil-kompanii-google-prodolgat-sudebnie-razbiratelstva-v-kalifornii
👍1😁1
#fun

Забавный этот Отар ) и зачастую правильные вещи говорит

https://youtube.com/shorts/W2BX0XBgqJs?si=uCkpNZjJg-61woF4
👍1
#competition #watersupply

Я сам начинал участвовать в этой сореве после поста Криса. Только я быстро бросил, после того как выяснилось, что организаторы налагают на решение искусственные дебильные ограничения. Аргументированно поспорил с организаторами, меня поддержал другой участник, но нам ответили, что дебильные ограничения остаются. Я решил не тратить время, через месяц получил уведомление, что ограничения решили всё-таки снять, но мне уже некогда было снова этим заниматься. А Крис молодцом, занял 4-е место, взял 1й приз по explainability, и узнал много нового )

https://mindfulmodeler.substack.com/p/how-to-win-an-ml-competition-beyond
#fun

Нечего искусственно радоваться жизни! )

https://youtube.com/shorts/OSQCVPrne6o?si=IUw-CpVyGrVkt5kl
#openml #hpo #hpt #metalearning

Очень близко к тому, что я хочу сделать, подошли Joaquin Vanschoren и Jan van Rijn с их открытой платформой по трекингу ML экспериментов openml. У них красивый сайт с визуализациями, рекомендую посетить.

На платформу можно загружать датасеты (там уже 6 тысяч), по ним платформа считает приличный набор 107 мета-признаков (qualities) и определяет кросс-валидацию. Далее, на нужном датасете для одной из заданных задач (классификация, регрессия, кластеризация), можно запустить конвейер (flow, уже представлено 22k разных), содержащий опциональный препроцессинг и модель, решающую поставленную задачу. Такой запуск конвейера называется run (их обсчитано уже 10M), его прогнозы модели на CV загружаются на платформу, она считает и хранит метрики. Всё вроде доступно по API и SDK. Есть версионирование всех компонент.

Вот так можно прогнать свою модель и "законтрибьютить" результаты:

from sklearn import ensemble
from openml import tasks, runs

# Build any model you like
clf = ensemble.RandomForestClassifier()

# Download any OpenML task
task = tasks.get_task(3954)

# Run and evaluate your model on the task
run = runs.run_model_on_task(clf, task)

# Share the results on OpenML. Your API key can be found in your account.
# openml.config.apikey = 'YOUR_KEY'
run.publish()


Это кажется идеальной стартовой точкой для разработки своего оптимизатора HPT, основанного на мета-обучении (по меньшей мере, для feasibility study). И вроде как auto-sklearn как раз использует (по кр. мере, частично) мета-обучение на базе openml.

Что настораживает:

насколько помню по последним бенчмаркам, опубликованным LaMa, auto-sklearn там не лидирует. Плоха идея или реализация?
представленные модельки не содержат, к примеру, катбуста. вообще.
кажется, что платформу не используют в промышленных целях, только в академических.
для задач классификации я не нашёл, как получить сырые вероятности. run.predictions возвращают метки, возможно, что и никак. хотя в метриках видны посчитанные roc auc.

После чтения их миссии и структуры сайта кажется, что команда не заинтересована в создании своего HPO/HPT решения, как бы это ни выглядело странным. Есть ли смысл пытаться с ними поработать вместе и улучшить их платформу, или лучше сразу пилить своё колесо?
👍3
#deepmind #alphageometry #llms #ai #gpt

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

Принятый подход объединяет два основных компонента: лингвистическую модель, способную генерировать предложения на основе подробного геометрического описания, и символический механизм DDAR (Deductive Database Arithmetic Reasoning), который проверяет логическую связность предлагаемых решений, создавая дедуктивное замыкание на основе доступной информации.

Проще говоря, модель Gemini AlphaGeometry2 предлагает символическому механизму шаги и конструкции на формальном математическом языке, и механизм, следуя определённым правилам, проверяет эти шаги на логическую согласованность.

Ключевым элементом, который позволил AlphaGeometry2 превзойти по скорости предшественника AlphaGeometry, является алгоритм SKEST (Shared Knowledge Ensemble of Search Trees), который реализует итеративную стратегию поиска, основанную на обмене знаниями между несколькими параллельными деревьями поиска. Это позволяет одновременно исследовать несколько путей решения, увеличивая скорость обработки и улучшая качество сгенерированных доказательств.

Эффективность системы удалось значительно повысить с новой реализацией DDAR на C++, что в 300 раз увеличило её скорость по сравнению с версией, написанной на Python.

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

Как сообщается, AlphaGeometry2 технически не является первой ИИ-системой, достигшей уровня золотого медалиста по геометрии, но она первая, достигшая этого с набором задач такого размера.

При этом AlphaGeometry2 использует гибридный подход, поскольку модель Gemini имеет архитектуру нейронной сети, в то время как её символический механизм основан на правилах.

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

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

https://3dnews.ru/1117969/iimodel-ot-deepmind-reshaet-zadachi-na-urovne-zolotih-medalistov-megdunarodnoy-matematicheskoy-olimpiadi
👍1
#books #metalearning #hpo #hpt #openml

Закончил чтение книги Metalearning. Applications to Automated Machine Learning and Data Mining.

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

Очень полезной оказалась глава про openML. Всмотрелся в список авторов книги, там оказались 2 основателя openml ))

Pavel Brazdil
Jan N. van Rijn
Carlos Soares
Joaquin Vanschoren

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

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

Очень крутая работа с их стороны, и большое им спасибо. Я спросил, сами они HP тюнер свой не пишут, хотя "заветная мечта" такая, как я понял, на ранних этапах была.
#metalearning

"Meta-learning opportunities present themselves in many different ways, and can be embraced using a wide spectrum of learning techniques. Every time we try to learn a certain task, whether successful or not, we gain useful experience that we can leverage to learn new tasks.

We should never have to start entirely from scratch. Instead, we should systematically collect our ‘learning experiences’ and learn from them to build AutoML systems that continuously improve over time, helping us tackle new learning problems ever more efficiently.

The more new tasks we encounter, and the more similar those new tasks are, the more we can tap into prior experience, to the point that most of the required learning has already been done beforehand.

The ability of computer systems to store virtually infinite amounts of prior learning experiences (in the form of meta-data) opens up a wide range of opportunities to use that experience in completely new ways, and we are only starting to learn how to learn from prior experience effectively.

Yet, this is a worthy goal: learning how to learn any task empowers us far beyond knowing how to learn any specific task."