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
#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."
#hpo #hpt #autoweka

Недавно в дискуссиях поднимался вопрос, а какого вообще прироста ML метрик можно ждать от "умной" оптимизации гиперпараметров. Вот табличка из статьи про AutoWeka, Ex-Def это лучшая модель с дефолтными HP, поиску по сетке давали очень большой бюджет CPU, а случайному и умному гораздо меньший. Метрика- какой-то лосс (или error rate). Видно, что зачастую умный поиск улучшает метрику на десятки процентов, притом за хорошее время.
1
#ensembling #hpo #hpt #autosklearn

Вот какой интересный метод ансамблирования опробовали авторы оптимизатора auto-sklearn:

"Two important problems in AutoML are that (1) no single machine learning method performs best on all datasets and (2) some machine learning methods (e.g., non-linear SVMs) crucially rely on hyperparameter optimization.

While Bayesian hyperparameter optimization is data-efficient in finding the bestperforming hyperparameter setting, we note that it is a very wasteful procedure when the goal is simply to make good predictions: all the models it trains during the course of the search are lost, usually including some that perform almost as well as the best.

Rather than discarding these models, we propose to store them and to use an efficient post-processing method (which can be run in a second process on-the-fly) to construct an ensemble out of them. This automatic ensemble
construction avoids to commit itself to a single hyperparameter setting and is thus more robust (and less prone to overfitting) than using the point estimate that standard hyperparameter optimization yields. To our best knowledge, we are the first to make this simple observation, which can be applied to improve any Bayesian hyperparameter optimization method.

It is well known that ensembles often outperform individual models [24, 31], and that effective ensembles can be created from a library of models [9, 10]. Ensembles perform particularly well if the models they are based on (1) are individually strong and (2) make uncorrelated errors [6]. Since this is much more likely when the individual models are different in nature, ensemble building is particularly well suited for combining strong instantiations of a flexible ML framework.

However, simply building a uniformly weighted ensemble of the models found by Bayesian optimization does not work well. Rather, we found it crucial to adjust these weights using the predictions of all individual models on a hold-out set. We experimented with different approaches to optimize these weights: stacking [44], gradient-free numerical optimization, and the method ensemble selection [10].

While we found both numerical optimization and stacking to overfit to the validation set and to be computationally costly, ensemble selection was fast and robust . In a nutshell, ensemble selection (introduced by Caruana et al. [10]) is a greedy procedure that starts from an empty ensemble and then iteratively adds the model that minimizes ensemble validation loss (with uniform weight, but allowing for repetitions). We used this technique in all our experiments—building an ensemble of size 50 using selection with replacement [10]. We calculated the ensemble loss using the same validation set that we use for Bayesian optimization."
#autosklearn #hpo #hpt #automl

"Fig. 6.3 Average rank of all four Auto-sklearn variants (ranked by balanced test error rate (BER)) across 140 datasets.

Note that ranks are a relative measure of performance (here, the rank of all methods has to add up to 10), and hence an improvement in BER of one method can worsen the rank of another.

Due to the small additional overhead that meta-learning and ensemble selection cause, vanilla Auto-sklearn is able to achieve the best rank within the first 10s as it produces predictions before the other Auto-sklearn variants finish training their first model. After this, meta-learning quickly takes off."

Получается, лучше всего "докидывает" как раз мета обучение, а потом ещё и ансамблирование.
Matthias_Feurer_ROBUST_AND_EFFICIENT_AUTOMATED_MACHINE_LEARNING.pdf
8.2 MB
#papers #automl #hpo #hpt

Читаю сейчас кандидатскую диссертацию Matthias Feurer - ROBUST AND EFFICIENT AUTOMATED MACHINE LEARNING - Systems, Infrastructure and Advances in Hyperparameter Optimization.

Вот это чувак поработал над диссертацией, моё почтение! Не просто наплодил никому не нужных формул.

"Next, I would like to thank the academic and open source communities. Throughout the thesis I developed and maintained several open source packages (OpenML-Python and liac-arff; ConfigSpace, SMAC3 and Auto-sklearn). I am grateful for the opportunity to do so, and would like to thank everyone who contributed back to them to further improve the projects."
🔥1
#games #go

The exact number of legal Go positions was computed only in 2016 (Tromp, 2016); it is 208168199381979984699478633344862770286522453884530548425639456820927419612738015378525648451698519643907259916015628128546089888314427129715319317557736620397247064840935, and can be approximated by 2.081681994e170.
👍2
#categoricals

Скорее всего, автор допустил множественные утечки данных, но сам подход интересен. По схожей схеме работает и optbinning.

https://medium.com/@ordavidovitch/advanced-feature-engineering-and-regression-techniques-with-python-5239621731ac
#ensembling #featureselection #papers #todo

Ensemble Selection from Libraries of Models
Rich Caruana, Alexandru Niculescu-Mizil, Geoff Crew, Alex Ksikes

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

"We present a method for constructing ensembles from libraries of thousands of models. Model libraries are generated using different learning algorithms and parameter settings.

Forward stepwise selection is used to add to the ensemble the models that maximize its performance.

Ensemble selection allows ensembles to be optimized to performance metric such as accuracy, cross entropy, mean precision, or ROC Area. Experiments with seven test problems and ten metrics demonstrate the benefit of ensemble selection."

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

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

Находкой авторов, видимо, стоит считать выбор кандидатов с возвращением, когда вхождение модели в ансамбль может рассматриваться неоднократно, причём на разных этапах (эквивалент веса):

"Selection with replacement flattens the curve so much that a test set is not needed to determine when to stop adding models to the ensemble. The hillclimbing set can be used to stop hillclimbing. This means ensemble selection does not need more test sets than the base-level models would have used to select model parameters. Ensemble selection uses the validation set to do both parameter and model selection."

Что ещё очень интересно, для борьбы с оверфитом валидационного множества они вводят 50%-ный бэггинг моделей, но повторяют всю процедуру построения ансамбля 20 раз, так что итоговое решение - это среднее 20 ансамблей 🤪

Глядя на таблицу результатов, кажется, что стэкинг они реализовали неправильно, ну не может он быть таким плохим. Вот как они это объясняют:
"Stacking (Wolpert, 1992) with logistic regression performs poorly because regression overfits dramatically when there are 2000 highly correlated input models and only 1k points in the validation set."
Видимо, отсюда и проблемы, ведь стэкинг лучше делать на CV, а не на одном множестве.

Ко всей методологии сравнения у меня есть 1 большая претензия: похоже, что все тестовые множества были сгенерированы 1 раз. Ну не серьёзно. Я понимаю, что и так объём вычислений был большой, но... (

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

Я постараюсь повторить это исследование в рамках создания своего тюнера Diogenes, с бОльшим количеством HP-шек на модель, более современными моделями, метриками включающими и "резкость" и калибрацию, бОльшим количеством альтернативных методов ансамблирования.

Интересно, а если полностью затюнить ансамбль сначала на одну, потом на другую метрику, получится ли улучшить обе, как обсуждалось ранее?

Попросил "размышляющие" версии AI проанализировать интересные аспекты и слабости статьи. Deepseek R1 справилась куда лучше OpenAI O3-mini. Gemini 2.0 жёстко галлюцинировала.

https://www.cs.cornell.edu/~alexn/papers/shotgun.icml04.revised.rev2.pdf
#ensembling #papers

Getting the Most Out of Ensemble Selection
Rich Caruana, Art Munson, Alexandru Niculescu-Mizil

Вторая часть исследования ансамблирования прямым отбором. Реализовали CV, проверили эффект пре-калибрации участников ансамбля, рапортуют о двукратном увеличении преимуществ метода.

Из интересных открытий:

"Ensemble selection’s ability to optimize to any performance metric is an attractive capability of the method that is particularly useful in domains which use non-traditional performance measures such as natural language processing [14]. Because of this, the third aspect we investigate is what benefit, if any, comes from being able to optimize to any metric. Our experiments reinforce the intuition that it is best to optimize to the target performance metric;however, they also show that minimizing squared error or cross-entropy frequently yields ensembles with competitive performance—seemingly regardless of the metric."

"Interestingly, ensemble selection is hurt less by a small hillclimbing set than model selection, suggesting that it is less prone to overfitting than model selection. Because of this, the benefit of ensemble selection over the best models appears to be strongest when training data is scarce."

Ещё более интересно, оказывается, выгодно смешивать в ансамбле "сырые" и калиброванные модели:

"Having both calibrated and uncalibrated models in the library (ES-BOTH and MODSEL-BOTH) gives the best of both worlds: it alleviates the problem with FSC while retaining the RMS and MXE improvements."

Есть и достаточно неожиданные выводы:

"We test ensemble selection’s performance when only the best X% models are available for selection. These experiments confirm our intuition that the potential for overfitting increases with more models. Using only the top 10-20% of the models yields performance better than or equivalent to ensemble selection without this model pruning."

"Unlike with ensemble selection, using calibrated models for Bayesian model averaging improves performance on all metrics, not just RMS and MXE (significant at .05). With calibrated models, Bayesian averaging outperforms model selection but is still not as good as ensemble selection."

Мухаха, кажется, я понял, почему они полезли в такие дебри проверять миксы калиброванных/некалиброванных моделей: байесовское усреднение обогнало авторский метод, и они went an extra mile выясняя, при каких же настройках их метод всё-таки лучше ))

"Not only does cross-validation greatly improve ensemble selection performance, it also provides the same benefit to model selection. Five-fold cross-validated model selection actually outperforms non-cross-validated ensemble selection by a small but noticeable amount. However, ensemble selection with embedded cross-validation continues to outperform model selection."

"Although performance starts to decline at different pruning levels for the different problems, it is clear that larger
model libraries increase the risk of overfitting the hillclimb set. Using 100% of the models is never worthwhile. At best, using the full library can match the performance of using only a small subset. In the worst case, ensemble selection overfits. This is particularly evident for the COD data set where model selection outperforms ensemble selection unless pruning is employed. While further work is needed to develop good heuristics for automatically choosing an appropriate pruning level for a data set, simply using the top 10–20% models seems to be a good rule of thumb. An open problem is finding a better pruning method. For example, taking into account model diversity (see for example [11, 17]) might find better pruned sets."

https://www.researchgate.net/publication/220766367_Getting_the_Most_Out_of_Ensemble_Selection
#automl #papers

An Empirical Study on the Usage of Automated Machine Learning Tools

Forough Majidi, Moses Openja, Foutse Khomh , Heng Li

Интересное исследование, как automl используется в гитхабовских проектах.

https://arxiv.org/pdf/2208.13116
#automl #hpo #hpt #openml

Наконец-то дочитал вторую книжку, Frank Hutter - automatic machine learning methods systems challenges, и кандидатскую диссертацию его менти Маттиаса Фойрера, по сов-му создателя auto-sklearn.

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

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

Но хотя бы их платформу и собранные данные можно попробовать использовать для

1) быстрой оценки, а можно ли вообще с помощью мета-признаков ранжировать алгоритмы и гиперпараметры на конкретной задаче
2) разведки самых важных метапризнаков (и в будущем создания подобных)
3) изучения их АПИ, чтобы взять хорошие идеи и пофиксить плохие
4) использования хотя бы части их датасетов.

Для затравочки - визуализация метрик SVM в зависимости от 2-х HP.
Forwarded from LightAutoML framework
📔 Мы внимательно следим за последними статьями в области ML, и сегодня хотим обратить ваше внимание на модель TabPFN v2 из статьи “Accurate predictions on small data with a tabular foundation model”, опубликованную в январе 2025 года в Nature. Модель работает на табличных данных, первая версия TabPFN была опубликована в октябре 2022, во второй версии помимо классификации появилась регрессия.

💡 Идея TabPFN v2:
В классических алгоритмах для решения suprevised задач на табличных данных модель обучается с нуля, в статье используется подход с предобучением:
1. Генерируются 130 миллионов синтетических датасетов с помощью каузальных графов, которые имитируют сложные зависимости в данных, пропуски, выбросы.
2. На сгенерированных данных предобучается трансформер, предсказывая таргет test выборки, получая на вход train как контекст. Для каждой ячейки таблицы используется отдельная репрезентация. Используется механизм внимания как по строкам, так и по столбцам таблицы.
3. Вместо привычных отдельных "fit" и "predict", трансформер за один проход получая и train, и test новой задачи одновременно, делает инференс на test, используя in-context learning. Простыми словами, модель обучена однажды, но подхватывает зависимости в данных из подаваемого в контекст датасета и сразу делает предсказания.

🥇 Результаты авторов:
1. Скорость и качество: в задачах классификации и регрессии на данных до 10к строк и 500 признаков за несколько секунд получает качество лучше, чем ансамбль из базовых алгоритмов (бустинги, лес, линейные), которые тюнились в течение нескольких часов.
2. Минимум работы: алгоритм не нужно тюнить, имеет отбор признаков, нативно работает с числовыми и категориальными признаками, а также с пропусками.
3. Плюсы foundation моделей: возможность получить распределение таргета, генерировать данные итд.
4. Неплохо показывает себя на временных рядах.

🤔 Выводы:
1. Статья показала эффективность foundation моделей в домене табличных данных, теперь у бустингов сильные конкуренты.
2. Пока есть вопросы с точки зрения эффективности инференса, ограниченности контекста, но дальше будут улучшения.
3. Интересно, что TabPFN v2 можно назвать AutoML решением, ведь для решения задачи он не требует ни настройки гиперпараметров, ни предобработки данных.

Тема интересная, у нас имеются наработки по этой теме, и мы работаем над их применением в LightAutoML🦙, stay tuned!

#обзор
Please open Telegram to view this post
VIEW IN TELEGRAM
#automl #tabpfn

Читаю авторскую статью про TabPFN. Если они не накосячили нигде, похоже, это одна их самых сильных работ по ML за последние года. А то и десятилетия.

Ну извините, ТАКОГО преимущества от мета-обучения (хотя там доля и от транформерной архитектуры, знать бы, какая), я не ожидал даже в самых смелых мечтах: "TabPFN (default) outperforms AutoGluon for classification tasks, even if AutoGluon is allowed up to 4 h, a 5.140× speedup".

"Apart from its strong predictive performance, TabPFN exhibits key foundation model abilities, such as data generation, density estimation, learning reusable embeddings and fine-tuning. We showcase these abilities through proof-of-concept experiments on the German Credit Dataset44, which contains credit risk information and the mfeat-factors45 dataset classifying handwritten digits based on a tabular representation.

TabPFN can estimate the probability density function of numerical features, as shown in Fig. 6a, and the probability mass function of categorical features. Computing the sample densities enables anomaly detection to identify issues such as fraud, equipment failures, medical emergencies or low-quality data.

TabPFN also allows synthesizing new tabular data samples that mimic real-world dataset characteristics as shown in Fig. 6b. This enables applications such as data augmentation or privacy-preserving data sharing.

The architecture of TabPFN yields meaningful feature representations that can be reused for downstream tasks such as data imputation and clustering. We extract and visualize learned embeddings from the mfeat-factors dataset in Fig. 6c, showing improved class separation compared with the raw data on the first two principal components."

А есть вообще то, чего она не может?

Limitations of TabPFN. The limitations of TabPFN are as follows:

(1) the inference speed of TabPFN may be slower than highly optimized approaches such as CatBoost;
(2) the memory usage of TabPFN scales linearly with dataset size, which can be prohibitive for very large datasets;
(3) our evaluation focused on datasets with up to 10,000 samples and 500 features; scalability to larger datasets requires further study.
4
#automl #tabpfn

Могу подтвердить, что, похоже, их либа (и подход) реально работает. На нескольких датасетах типа breast cancer, и синтетики типа make_classification(n_samples=40_000, n_classes=2,n_features=40,n_informative=10) TabPFN в моих запусках всегда опережала катбуст по ROC AUC и точности. пусть ненамного, но всегда. гиперпараметры катбуста я 4 часа не тюнил, просто проверил кол-во деревьев 1_000, 10_000, с и без ранней остановки.


На моей старенькой RTX 2070:

train, test sets shape= (30000, 40)

ROC AUC: 0.9945391499218594
Accuracy 0.9890666666666666

train+inference time: 4min 7s


для сравнения результаты катбуста CatBoostClassifier(verbose=0,task_type='CPU',eval_fraction=0.1,early_stopping_rounds=200, num_trees=10000)

ROC AUC: 0.9939392120134284
Accuracy 0.9802


Для train, test sets shape= (20000, 40) время 1min 56s.

С хорошим GPU она возьмёт и датасет 100k-200k строк, наверное.
С другой стороны, мне кажется, если тюнить, можно TabPFN и догнать.

Для PHE-версии надо явно передавать device: AutoTabPFNClassifier(max_time=60*9,ignore_pretraining_limits=True,device="cuda")

Что интересно, он грузит веса типа Attempting HuggingFace download: tabpfn-v2-classifier-od3j1g5m.ckpt, Attempting HuggingFace download: tabpfn-v2-classifier-llderlii.ckpt.

В общем, теперь метод .fit выполняется долго (согласно max_time), да ещё и .predict_proba занял 5 минут на том же датасете. ROC AUC немного улучшилась по сравнению с не-PHE версией, Accuracy чуть просела.

ROC AUC: 0.9948400465955762
Accuracy 0.9888666666666667
3