#trading #scalping #erema #mlops #experimenting #mlflow
Потратил много времени на кодинг платформы, позволяющей экспериментировать с группами фичей, блоками ML-конвейеров, таргетами, моделями, ансамблями.
Иногда при работе над очередным проектом думаешь: а что лучше, отдать работу с категорийкой на откуп бустингу, или попробовать что-то из category_encoders? И вообще, что считать категориальными факторами, то, что имеет тип данных categorical/object, или что имеет мало уникальных значений? А "мало" - это мало вообще, или по отношению к конкретному типу данных и диапазону? А может, вообще все непрерывные побить на с помощью KBinsDiscretizer, что тогда будет, лучше или хуже, и насколько? Или может, вообще удалить категорийку, вдруг будет не сильно хуже, но быстрее?
А пропуски как обрабатывать? А всё это вместе взятое сколько комбинаций составит?
Раннюю остановку использовать или нет, и когда?
Какая модель в итоге лучше сработает, бустинг или нейронка? Блин, а нейронке-то напрямую нельзя подать категориальные фичи, надо выкручиваться.
А если гиперпараметры тюнить? А фичи отбирать? А что, если вообще поработать с группами фичей по отдельности (например, рыночные, новостные, фундаментальные), какого результата каждая достигнет??
А если потом модельки от разных в групп в ансамбль объединить, лучше станет, и насколько?
А вообще, какие таргеты мы можем лучше предсказывать, что, если мы можем немного варьировать их, к примеру, предсказываем продажи на неделю или 2 или 3 вперёд. Где выше прогннозируемость и при каких условия, на чём сконцентрировать усилия? Если сравнивать в лоб, на препроцессинг уйдёт тонна времени, тут нужно умное кэширование.
А всё это же ещё надо на CV считать... А так как число комбинаций, которые хочется проверить, огромно, лучше считать на кластере или хотя бы на нескольких нодах, с централизованным хранением результатов (предсказаний, метрик, графиков).
А как всё это грамотно отобразить, чтобы не потеряться в тысячах комбинаций? А как при этом работать в команде?
Наверняка к подобным вопросам со временем, или при работе над особо сложным проектом, приходит любой дата сайентист/кэгглер, который хорошо делает свою работу. Настало и моё время )
Трейдинговый проект #erema меня просто ошеломлял количеством факторов, возможных таргетов и ML опций, которые хотелось проверить. Так что после 2 месяцев работы я получил процедуры, которые на базе mlflow как раз позволяют разбить всё многообразие опций на блоки и проверить их по отдельности.
Потратил много времени на кодинг платформы, позволяющей экспериментировать с группами фичей, блоками ML-конвейеров, таргетами, моделями, ансамблями.
Иногда при работе над очередным проектом думаешь: а что лучше, отдать работу с категорийкой на откуп бустингу, или попробовать что-то из category_encoders? И вообще, что считать категориальными факторами, то, что имеет тип данных categorical/object, или что имеет мало уникальных значений? А "мало" - это мало вообще, или по отношению к конкретному типу данных и диапазону? А может, вообще все непрерывные побить на с помощью KBinsDiscretizer, что тогда будет, лучше или хуже, и насколько? Или может, вообще удалить категорийку, вдруг будет не сильно хуже, но быстрее?
А пропуски как обрабатывать? А всё это вместе взятое сколько комбинаций составит?
Раннюю остановку использовать или нет, и когда?
Какая модель в итоге лучше сработает, бустинг или нейронка? Блин, а нейронке-то напрямую нельзя подать категориальные фичи, надо выкручиваться.
А если гиперпараметры тюнить? А фичи отбирать? А что, если вообще поработать с группами фичей по отдельности (например, рыночные, новостные, фундаментальные), какого результата каждая достигнет??
А если потом модельки от разных в групп в ансамбль объединить, лучше станет, и насколько?
А вообще, какие таргеты мы можем лучше предсказывать, что, если мы можем немного варьировать их, к примеру, предсказываем продажи на неделю или 2 или 3 вперёд. Где выше прогннозируемость и при каких условия, на чём сконцентрировать усилия? Если сравнивать в лоб, на препроцессинг уйдёт тонна времени, тут нужно умное кэширование.
А всё это же ещё надо на CV считать... А так как число комбинаций, которые хочется проверить, огромно, лучше считать на кластере или хотя бы на нескольких нодах, с централизованным хранением результатов (предсказаний, метрик, графиков).
А как всё это грамотно отобразить, чтобы не потеряться в тысячах комбинаций? А как при этом работать в команде?
Наверняка к подобным вопросам со временем, или при работе над особо сложным проектом, приходит любой дата сайентист/кэгглер, который хорошо делает свою работу. Настало и моё время )
Трейдинговый проект #erema меня просто ошеломлял количеством факторов, возможных таргетов и ML опций, которые хотелось проверить. Так что после 2 месяцев работы я получил процедуры, которые на базе mlflow как раз позволяют разбить всё многообразие опций на блоки и проверить их по отдельности.
Forwarded from Artem Ryblov’s Data Science Weekly
MLOps Guide by Arthur Olga, Gabriel Monteiro, Guilherme Leite and Vinicius Lima
This site is intended to be a MLOps Guide to help projects and companies to build more reliable MLOps environment. This guide should contemplate the theory behind MLOps and an implementation that should fit for most use cases.
What is MLOps?
MLOps is a methodology of operation that aims to facilitate the process of bringing an experimental Machine Learning model into production and maintaining it efficiently. MLOps focus on bringing the methodology of DevOps used in the software industry to the Machine Learning model lifecycle.
In that way we can define some of the main features of a MLOPs project:
- Data and Model Versioning
- Feature Management and Storing
- Automation of Pipelines and Processes
- CI/CD for Machine Learning
- Continuous Monitoring of Models
What does this guide cover?
- Introduction to MLOps Concepts
- Tutorial for Building a MLOps Environment
Link: Direct
Navigational hashtags: #armknowledgesharing #armguides
General hashtags: #mlops #ml #operations
@data_science_weekly
This site is intended to be a MLOps Guide to help projects and companies to build more reliable MLOps environment. This guide should contemplate the theory behind MLOps and an implementation that should fit for most use cases.
What is MLOps?
MLOps is a methodology of operation that aims to facilitate the process of bringing an experimental Machine Learning model into production and maintaining it efficiently. MLOps focus on bringing the methodology of DevOps used in the software industry to the Machine Learning model lifecycle.
In that way we can define some of the main features of a MLOPs project:
- Data and Model Versioning
- Feature Management and Storing
- Automation of Pipelines and Processes
- CI/CD for Machine Learning
- Continuous Monitoring of Models
What does this guide cover?
- Introduction to MLOps Concepts
- Tutorial for Building a MLOps Environment
Link: Direct
Navigational hashtags: #armknowledgesharing #armguides
General hashtags: #mlops #ml #operations
@data_science_weekly
#mlops #monitoring #drift #evidently #greatexpectations
Мониторить нужно:
1) распределение входных признаков
2) распределение предсказаний
3) невязку моделей
4) неуверенность моделей (trust score; conformal?)
5) прокси-метрики, если метки созревают медленно
Держать теневые (shadow) модели.
Записывать боевые предикты.
Interleaving deploy of ML models instead of full A/B.
Устаревание модели можно тоже моделировать.
https://www.youtube.com/watch?v=rD2Ydyr3Sdc
Мониторить нужно:
1) распределение входных признаков
2) распределение предсказаний
3) невязку моделей
4) неуверенность моделей (trust score; conformal?)
5) прокси-метрики, если метки созревают медленно
Держать теневые (shadow) модели.
Записывать боевые предикты.
Interleaving deploy of ML models instead of full A/B.
Устаревание модели можно тоже моделировать.
https://www.youtube.com/watch?v=rD2Ydyr3Sdc
YouTube
Устойчивость ML-моделей. Датазавтрак в Екатеринбурге
Устойчивость ML-моделей Как часто дообучать модель и как делать это правильно. О том, что модели нужно не только делать, но и поддерживать + пара советов на этом пути. Слайды тут https://kolodezev.ru/ekaterinburg2023.html
Forwarded from Artem Ryblov’s Data Science Weekly
Practitioners guide to MLOps: A framework for continuous delivery and automation of machine learning by Google Cloud
Across industries, DevOps and DataOps have been widely adopted as methodologies to improve quality and reduce the time to market of software engineering and data engineering initiatives. With the rapid growth in machine learning (ML) systems, similar approaches need to be developed in the context of ML engineering, which handle the unique complexities of the practical applications of ML. This is the domain of MLOps. MLOps is a set of standardized processes and technology capabilities for building, deploying, and operationalizing ML systems rapidly and reliably.
The document is in two parts. The first part, an overview of the MLOps lifecycle, is for all readers. It introduces MLOps processes and capabilities and why they’re important for successful adoption of ML-based systems.
The second part is a deep dive on the MLOps processes and capabilities. This part is for readers who want to understand the concrete details of tasks like running a continuous training pipeline, deploying a model, and monitoring predictive performance of an ML model.
Link: Book
Navigational hashtags: #armknowledgesharing #armbooks
General hashtags: #mlops
Across industries, DevOps and DataOps have been widely adopted as methodologies to improve quality and reduce the time to market of software engineering and data engineering initiatives. With the rapid growth in machine learning (ML) systems, similar approaches need to be developed in the context of ML engineering, which handle the unique complexities of the practical applications of ML. This is the domain of MLOps. MLOps is a set of standardized processes and technology capabilities for building, deploying, and operationalizing ML systems rapidly and reliably.
The document is in two parts. The first part, an overview of the MLOps lifecycle, is for all readers. It introduces MLOps processes and capabilities and why they’re important for successful adoption of ML-based systems.
The second part is a deep dive on the MLOps processes and capabilities. This part is for readers who want to understand the concrete details of tasks like running a continuous training pipeline, deploying a model, and monitoring predictive performance of an ML model.
Link: Book
Navigational hashtags: #armknowledgesharing #armbooks
General hashtags: #mlops
#drift #jsd #monitoring #mlops
https://towardsdatascience.com/how-to-understand-and-use-jensen-shannon-divergence-b10e11b03fd6
https://towardsdatascience.com/how-to-understand-and-use-jensen-shannon-divergence-b10e11b03fd6
Medium
How to Understand and Use the Jensen-Shannon Divergence
A primer on the math, logic, and pragmatic application of JS Divergence — including how it is best used in drift monitoring
#mlops
Простой пример, как развернуть модельку по АПИ в докере.
https://ai.plainenglish.io/from-jupyter-to-production-deploying-machine-learning-models-like-a-pro-592106792676
Простой пример, как развернуть модельку по АПИ в докере.
https://ai.plainenglish.io/from-jupyter-to-production-deploying-machine-learning-models-like-a-pro-592106792676
Medium
From Jupyter to Production: Deploying Machine Learning Models Like a Pro
Turn your Jupyter Notebook experiments into production-ready applications with this comprehensive guide.
#mlops #monitoring
Putting fears into the metrics, add metrics to the dashboard & alerts, интересно.
https://www.youtube.com/watch?v=wWxqnZb-LSk
Putting fears into the metrics, add metrics to the dashboard & alerts, интересно.
https://www.youtube.com/watch?v=wWxqnZb-LSk
YouTube
Lina Weichbrodt: What I learned from monitoring more than 30 Machine Learning Use Cases
Speaker:: Lina Weichbrodt
Track: General: Production
This talk summarizes the most important insights I gained from running more than 30 machine learning use cases in production. We will take a loan prediction model as an example use case and cover questions…
Track: General: Production
This talk summarizes the most important insights I gained from running more than 30 machine learning use cases in production. We will take a loan prediction model as an example use case and cover questions…