Reposted by Olivier GriselCompute! Paris @computeparis.bsky.social · 12/08/2026As AI agents start writing ML code, Gaëtan de Castellane looks at how you catch the mistakes with automated checks. Diagnostics in skore (an open source library for evaluating scikit-learn models) run on any sklearn-compatible estimator and flag issues such as over/underfitting, class imbalance... 131
Olivier Grisel @ogrisel.bsky.social · 16/09/2026Furthermore if you install numpy from pypi or from conda-forge on different OSes or versions you might get different BLAS implementations (openblas, mkl, accelerate) and/or different threading layers (pthreads, openmp...) and different openmp runtimes (libgomp, libomp, vcomp, libiomp). 000
Olivier Grisel @ogrisel.bsky.social · 16/09/2026This is never the case in practice (eg interactive data science in a notebook). Also a single program often has several sections with different nested parallelism patterns: blas called by numpy in the main python thread, then a blas call under cython openmp loop in sklearn, then several python... 100
Olivier Grisel @ogrisel.bsky.social · 16/09/2026That's only possible if you know the structure of the nested parallelism of the program ahead of time. 100
Olivier Grisel @ogrisel.bsky.social · 16/09/2026I mistyped @itamarst.hachyderm.io.ap.brid.gy's bsky handle... 000
Olivier Grisel @ogrisel.bsky.social · 16/09/2026Support for this work was provided by NASA through the ROSES grant 80NSSC25K7215 - Ensuring a fast and secure core for scientific Python. 000
Olivier Grisel @ogrisel.bsky.social · 16/09/2026More details about those changes and other fixes in the changelog: github.com/joblib/threa...github.comthreadpoolctl/CHANGES.md at master · joblib/threadpoolctlPython helpers to limit the number of threads used in native libraries that handle their own internal threadpool (BLAS and OpenMP implementations) - joblib/threadpoolctl 101
Olivier Grisel @ogrisel.bsky.social · 16/09/2026The README now also includes a section about how to empirically assess the subtle semantic variations of various BLAS and OpenMP runtimes: github.com/joblib/threa...github.comthreadpoolctl/README.md at master · joblib/threadpoolctlPython helpers to limit the number of threads used in native libraries that handle their own internal threadpool (BLAS and OpenMP implementations) - joblib/threadpoolctl 101
Olivier Grisel @ogrisel.bsky.social · 16/09/2026The documentation in the README of the project has been updated to explain how to achieve this. github.com/joblib/threa...github.comthreadpoolctl/README.md at master · joblib/threadpoolctlPython helpers to limit the number of threads used in native libraries that handle their own internal threadpool (BLAS and OpenMP implementations) - joblib/threadpoolctl 101
Olivier Grisel @ogrisel.bsky.social · 16/09/2026Mitigating this problem is needed to unlock the full value of free-threading Python, especially for @scikit-learn.org workloads that often nest BLAS calls (via NumPy, SciPy or PyTorch) and OpenMP calls (via Cython) under Python level threads (typically via joblib). 101
Olivier Grisel @ogrisel.bsky.social · 16/09/2026Oversubscription problems typically happen when nesting BLAS or OpenMP calls under Python threads: naively spawning 10 Python threads that themselves spawn 10 BLAS threads each results in 100 starving threads on a 10 cores CPU. 101
Olivier Grisel @ogrisel.bsky.social · 16/09/2026This release includes several contributions by itamarst.hachyderm.io.ap.brid.gy from @quansight.com. in collaboration with myself & others at @probabl.ai. It provides tools to inspect the semantics of native threadpools in various environments so as to be able to mitigate oversubscription problems.itamarst.hachyderm.io.ap.brid.gy 212
Olivier Grisel @ogrisel.bsky.social · 16/09/2026threadpoolctl 3.7.0 is out. This library is a utility used by @scikit-learn.org and others to coordinate the levels of thread-based parallelism in native libraries such as BLAS implementations and OpenMP runtimes used by Python libraries such as NumPy, SciPy, PyTorch and scikit-learn. 2146
Reposted by Olivier GriselCompute! Paris @computeparis.bsky.social · 16/09/2026TabICL, a Tabular Foundation Model, pretrained once on millions of synthetic data-generating processes, automatically recognizes what shaped your data, and predicts accordingly. Out-of-the-box, well-calibrated predictions, classification & regression, that's the promise. 112
Reposted by Olivier GriselCompute! Paris @computeparis.bsky.social · 13/08/2026🚀 Join the Mission: Volunteer or Apply for a Scholarship at Compute! Paris 2026! 🚀 We’re thrilled to announce that applications are now open for volunteers and scholarships for Compute! Paris 2026! Whether you want to contribute behind the scenes or need support to attend, this is your chance !compute.eventsJoin the Mission: Compute! Paris 2026Volunteering and diversity scholarships at Compute! Paris 2026: ways to join the conference beyond a standard ticket. 132
Reposted by Olivier Griselscikit-learn @scikit-learn.org · 12/06/2026🎉 Scikit-learn 1.9 released: ■Solid improvements to many existing estimators: faster, more stable, handling missing values, adding GPU support… ■Also, enhanced estimator displays in notebooks, ■And callbacks that enable progress bars or monitoring of convergence blog.scikit-learn.org/updates/rele...blog.scikit-learn.orgscikit-learn release 1.9: better numerics, new core functionalityAuthor: Gael Varoquaux 03013
Olivier Grisel @ogrisel.bsky.social · 04/06/2026The CfP deadline for Compute! Paris 2026 was extended to Sunday, June 7! Just a few days left to submit a proposal on Open Source scientific compute, data science, ML & AI topics. Conference dates and venue: November 25–26, 2026, Sorbonne Université · Paris compute.events/paris2026/cf...compute.eventsCall for Proposals — Compute! Paris 2026Submit your talk proposal for Compute! Paris 2026. The Call for Proposals is open from April 15th to June 7th, 2026. 075
Reposted by Olivier GriselCompute! Paris @computeparis.bsky.social · 22/05/2026Wolf Vollprecht, founder of Prefix.dev, creator of mamba & pixi, and conda-forge core maintainer, is keynoting Compute! Paris 2026! Hear his vision for the future of open-source tooling, performance, and data science infrastructure. 0126
Reposted by Olivier GriselCompute! Paris @computeparis.bsky.social · 14/05/2026Researchers, educators, and PhD students: Compute! Paris 2026 (Nov 25-26) is your platform. Share your work on reproducible science and connect with peers who are pushing the same boundaries. compute.events/paris2026/ #ComputePariscompute.eventsCompute! Paris 2026Understanding your tools and algorithms is what gives you agency in a digital world. Paris, November 25–26, 2026. 012
Reposted by Olivier GriselCompute! Paris @computeparis.bsky.social · 20/05/2026Mackenzie Mathis (EPFL neuroscientist, DeepLabCut & CEBRA co-creator and open science pioneer) is keynoting at Compute! Paris 2026! Her tools (used by 1000s of labs) decode behavior & neural activity. She explores adaptive intelligence, how brains and machines learn in a changing world. 033
Olivier Grisel @ogrisel.bsky.social · 23/04/2026The bsky account for the conference was renamed / migrated. You might want to check if you actually follow @computeparis.bsky.social again. 000
Olivier Grisel @ogrisel.bsky.social · 23/04/2026I forgot to mention @computeparis.bsky.social in the first post of the thread. 110
Olivier Grisel @ogrisel.bsky.social · 21/04/2026The scope of Compute! Paris is a bit less centered around Python, but we still expect many Python related presentations given the popularity of the language. Note that we will neither organize a JupyterCon nor PyData conferences in Paris in 2026, so join us at Compute! Paris. 120
Olivier Grisel @ogrisel.bsky.social · 21/04/2026The team of JupyterCon 2023, PyData Paris 2024 & 2025 organizes a new conference named Compute! Paris 2026 on open source computation and data. The event will take place on November 25–26, 2026 at Sorbonne Université in Paris. CfP deadline: May 24, 2026: compute.events/paris2026/cf...compute.eventsCall for Proposals — Compute! Paris 2026Submit your talk proposal for Compute! Paris 2026. The Call for Proposals is open from April 15th to May 24th, 2026. 11312
Olivier Grisel @ogrisel.bsky.social · 01/04/2026And here is the link to the colab notebook: colab.research.google.com/drive/1-FiOQ...colab.research.google.comGoogle Colab 020
Olivier Grisel @ogrisel.bsky.social · 01/04/2026Here is the recording of the webinar I gave last week on GPU support in @scikit-learn.org and comparison of a scikit-learn pipeline vs the TabICLv2 foundational model on a non-linear heteroscedastic quantile regression task. app.livestorm.co/probabl/webi...app.livestorm.co[Webinar] Python array API support in scikit-learn for GPU acceleration and TabICLv2 | Probabl 142
Olivier Grisel @ogrisel.bsky.social · 25/03/2026We will contrast pros and cons of both approaches. Spoiler alert: Manual pipelines are more scalable (faster to train and predict) on larger datasets but require more work (e.g. hparam tuning) while TabICL works better on smaller datasets and yields good predictive performance of the box. 010
Olivier Grisel @ogrisel.bsky.social · 25/03/2026Tomorrow I will give an online demo of the use of the Python array API to develop a non-linear regression pipeline with GPU acceleration and uncertainty quantification. We will also introduce TabICLv2 and demo it on the same predictive tasks. Register here: www.linkedin.com/events/webin...linkedin.comLinkedIn Login, Sign in | LinkedIn 141
Olivier Grisel @ogrisel.bsky.social · 09/03/2026Thanks to Dea María Léon for the PR and to the Chan Zuckerberg Initiative for the support. blog.scikit-learn.org/funding/czi-...blog.scikit-learn.orgChan Zuckerberg Initiative considers scikit-learn an Essential Open Source SoftwareAuthor: Guillaume Lemaitre , Lucy Liu 020
Olivier Grisel @ogrisel.bsky.social · 09/03/2026The next scikit-learn release will allow inspecting the type and values of attributes of fitted estimators in Jupyter notebooks & example code rendered as HTML in sphinx-gallery powered project websites. scikit-learn.org/dev/auto_exa... 2136
Reposted by Olivier GriselDavid Holzmüller @dholzmueller.bsky.social · 12/02/2026Super hyped that it's finally out! 2151
Olivier Grisel @ogrisel.bsky.social · 24/12/2025Thanks for sharing the blog post. However it's a bit hard to read the text on a mobile device and one has to zoom and pan around to read it. It would be nice to adopt a reflowing layout that adapts to small screen sizes instead. 130
Reposted by Olivier GriselTim Head @betatim.bsky.social · 11/12/2025A new version of scikit-learn has been released 🥳 check out the highlights: scikit-learn.org/stable/auto_... Thanks everyone who contributed to this release! Let me know what you think of the experimental GPU supportscikit-learn.orgRelease Highlights for scikit-learn 1.8We are pleased to announce the release of scikit-learn 1.8! Many bug fixes and improvements were added, as well as some key new features. Below we detail the highlights of this release. For an exha... 096
Reposted by Olivier GriselJeremy Tuloup @jtp.io · 24/11/2025JupyterLab 4.5 and Jupyter Notebook 7.5 are here! 🎉 Highlights 🎁 - Enhanced notebook scrolling behavior - Native audio and video support - New Terminal search - Debugger, Notebook and File Browser improvements Check out the blog post to learn more! blog.jupyter.org/jupyterlab-4...blog.jupyter.orgJupyterLab 4.5 and Notebook 7.5 are available!JupyterLab 4.5 has been released! This new minor release of JupyterLab includes 51 new features and enhancements, 81 bug fixes, 44… 1239
Olivier Grisel @ogrisel.bsky.social · 14/11/2025Thanks for sharing. I would be very curious to see if LeJEPA can successfully pretrain good encoders for other input modalities with different kinds of spatial structures and signal smoothness assumptions (audio, time series, signal from robotic sensors, natural language...). 000
Reposted by Olivier GriselSung Kim @sungkim.bsky.social · 13/11/2025LeJEPA: a novel pretraining paradigm free of the (many) heuristics we relied on (stop-grad, teacher, ...) - 60+ arch., up to 2B params - 10+ datasets - in-domain training (>DINOv3) - corr(train loss, test perf)=95% 281
Reposted by Olivier GriselTrevon Logan @trevondlogan.bsky.social · 27/10/2025The Python Software Foundation was recommended for a $1.5M grant from the National Science Foundation. The terms of the award said PSF could not work on DEI, whether or not the grant funding was used for it. PSF therefore declined the funding. Science suffers, but commitment to core values remains 3426139
Reposted by Olivier GriselSkrub @skrub-data.bsky.social · 26/09/2025⚡ Release 0.6.2 is out ⚡ github.com/skrub-data/s...github.comRelease 0.6.2 · skrub-data/skrubNew features The DataOp.skb.full_report() now displays the time each node took to evaluate. #1596 by Jérôme Dockès. The User guide has been reworked and expanded. Changes and deprecations Ken em... 174
Olivier Grisel @ogrisel.bsky.social · 26/09/2025I will speak about probabilistic regressions, @skrub-data.bsky.social and skore contributors will also present their libraries. Come join us! 0113
Olivier Grisel @ogrisel.bsky.social · 02/09/2025More info about free-threading here: py-free-threading.github.iopy-free-threading.github.ioPython Free-Threading GuideThe free-threading guide is a centralized collection of documentation and trackers around compatibility with free-threaded CPython for the Python open source ecosystem 010
Olivier Grisel @ogrisel.bsky.social · 02/09/2025We set up some dedicated automated tests and discovered a bunch of thread-safety bugs, but they are now tracked by dedicated issues, and we have plans to fix them all, hopefully in time for 1.8. 100
Olivier Grisel @ogrisel.bsky.social · 02/09/2025scikit-learn 1.8 will be the first scikit-learn release with native extensions that are officially marked as free-threading compatible. github.com/scikit-learn...github.comMNT Mark cython extensions as free-threaded compatible by lesteve · Pull Request #31342 · scikit-learn/scikit-learnPart of #30007 Cython 3.1 has been released on May 8 2025. Following scipy PR scipy/scipy#22658 to use -Xfreethreading_compatible=True cython argument if cython >= 3.1 This cleans up the lock-fi... 1103
Reposted by Olivier GriselCompute! Paris @computeparis.bsky.social · 28/08/2025We’re happy to announce our Social Event, taking place on Tuesday 30th September at 6pm at the Cité des sciences. A perfect opportunity to unwind and connect with fellow attendees after a day of interesting talks! pydata.org/paris2025/so... pydata.org/paris2025/ti... 044
Olivier Grisel @ogrisel.bsky.social · 28/08/2025Looking forward to attending PyData Paris 2025! I will give a talk about probabilistic predictions for regression problems (I need to start working on my slides ;) 071
Reposted by Olivier GriselJeremy Tuloup @jtp.io · 19/08/2025👋 JupyterLab and Jupyter Notebook users: What's one thing you'd love to see improved in JupyterLab, Jupyter Notebook, or JupyterLite? The team is prepping the upcoming 4.5/7.5 releases and wants to tackle some usability issues. Drop your feedback below, this will help prioritize what gets fixed!👇 41710
Olivier Grisel @ogrisel.bsky.social · 19/08/2025The video recording is already live! www.youtube.com/live/jvyWTa1...youtube.com19.08.2025 Predictive modeling for imbalanced classification using scikit-learnYouTube video by EuroSciPy 020
Olivier Grisel @ogrisel.bsky.social · 19/08/2025However, the Elkan 2001 post-hoc prevalence correction can be used for any (well-specified) probabilistic classifier, including gradient boosting classifiers, assuming the training set is a uniform sample of the population conditionally on the class. 100
Olivier Grisel @ogrisel.bsky.social · 19/08/2025Interestingly, for logistic regression, this is equivalent to shifting the intercept by the difference of the logits of the prevalence of the positive class in the population and in the training set distributions, respectively. 100