- title slide: - topic: "Ovulation Prediction with Machine Learning" - subtitle: "Comparing Deepl Learning Approaches for Real-World Ovulation Prediction" - introduction and motivation: - eye and ear catching introduction? - more than 50% of people are directly influenced by the menstrual cycle and its effects - understanding its patterns is essential, especially for those trying to conceive, PCOS patients, menopause, etc. - prediction of ovulation can help in family planning, fertility treatments, and understanding hormonal health - show what prediction means in the first place -> maybe in a different section? - predict before it happened, at best at least 5 days before ovulation - women's health is often uncharted territory in medical research - OV Basics: - more visuals, less text - little detour -> collection knowledge about the menstrual cycle is limited - explain phases and fertility over cycle, show diagram and actual curves - monophasic vs biphasic cycles - The Power of Data: - I work for company "VivoSens Medical" -> product "Ovularing" - product is biosensor for intravaginal body core temperature measurement, collect measurements every 5 minutes - extensive database of 60,000+ menstrual cycles with up to 150 days of data -> ~ 100 million data points - extensive context data such as age, weight, height, cycle length, and markers for cycle related events - long histories for many users -> up to 8 years of data - data that is not available to anyone else - makes ML approaches feasible - The Challenge: - ovulation is a complex biological process influenced by various factors - different goals, depending on use case: getting pregnant vs natural contraception - explain types of cycles, show what an ovulation looks like, fever, stress, etc. -> max 3 plots - traditional methods of prediction often rely on simple statistical algorithms or heuristics - existing machine learning models lack sufficient training data, either in number of cycles or data resolution - Huawei Band, Yu et al. 2022 -> 382 Cycles, - labeling is hard: -> ovulation, even with ultrasound, is not always clear - open research question: is temperature a sufficient predictor for ovulation, or only retrospective? - Cycle variability: cycles can vary significantly in length and pattern, making it difficult to create a one-size-fits-all model - some users have very regular cycles, while others have highly irregular ones (one is 30 days, the next is 70 days) - Approach: - inputs: show features - static user specific features: age, weight, height, average cycle length, std, num cycles, etc. - time dependent features: day of week, hour of day, month of year -> all sine / cosine encoded - time series data: raw temperature, rolling average, min and max ofer last 24 hours, etc. - targets: time until / since ovulation (linear regression), prob for biphasic cycle (binary classification) - train set of model: lstm, conv lstm, transformer decoder and conv with transformer decoder - use multiple input configurations -> different input window sizes, different sampling rates - no cross user training -> splits by user - evaluation on domain specific metrics: -> some are more important than others, depending on the use case - overall error in days - error before and after ovulation - error at ovulation - error 5 days before ovulation -> start of fertile window, most important for conception - how do errors change over the course of one users cycles? - only take previous cycles for all cycles of a user - visually show "training pipeline" - show how data was labeled - Current Status and Findings: - transformers perform best, especially with larger input windows - Lessons learned: - Multi GPU training is a deep rabbit hole, distributed systems ftw - HPC has its own challenges, slow I/O, misused resources, etc. - trend to overengineer, but usually that pays off in the end, especially configurability - Conclusion: - - Future Work: - more complex / better suited models for the task - better data preprocessing and feature engineering / frequency analysis - additional context data / biomarkers, i.e., hr, stress, sleep, etc - interpretable models -> Temporal Fusion Transformer derivative, etc.