Latest Posts

  • Python development behind corporate proxies - Tips for the scientific Python community

    I have been working as a machine learning researcher in the industry for almost 10 years and essentially two big companies. I had to deal with proxy issues as part of my daily work, including installing Python packages with conda and pip, cloning git repositories, and accessing other web-based resources. Proxy issues can be frustrating and challenging, especially as they often involve code and concepts outside your usual expertise. In this post, I will share some insights that may help you understand how proxies work and reduce your apprehension about dealing with proxies issues.

  • Fair model-based reinforcement learning comparisons with explicit and consistent update frequency

    Joint work with Abdelhakim Benechehab, Giuseppe Paolo and Balázs Kégl.

    Implicit update frequencies can introduce ambiguity in the interpretation of model-based reinforcement learning benchmarks, obscuring the real objective of the evaluation. While the update frequency can sometimes be optimized to improve performance, real-world applications often impose constraints, allowing updates only between deployments on the actual system. This blog post emphasizes the need for evaluations using consistent update frequencies across different algorithms to provide researchers and practitioners with clearer comparisons under realistic constraints.

    Published at the Third Blogpost Track at ICLR 2024. Check the blog post here.

  • Good practices with numpy random number generators

    EDIT January 26, 2024: I wrote an updated version of this blog post for the Scientific Python Blog. I recommend reading the updated version available here.

    Unless you are working on a problem where you can afford a true Random Number Generator (RNG), which is basically never for most of us, implementing something random means relying on a pseudo Random Number Generator. I want to share here what I have learnt about good practices with pseudo RNGs and especially the ones available in numpy.