AI Research Scientist

Exploring the intersection of machine learning, statistical physics, and computational neuroscience.

I focus on AI mechanistic interpretability, agentic AI, LLM systems reliability, and probabilistic language programming. Also a maintainer of skfolio.

Carlo Nicolini portrait

About Me

I am Carlo Nicolini, a senior AI research scientist working at the intersection of artificial intelligence, statistical physics, computational neuroscience, and information theory. For over 15 years, my work has focused on problems that require both theoretical clarity and reliable execution: building models, abstractions, and scientific software that help researchers and engineers reason about complex systems with more rigor. Over time, this has evolved into a form of technical leadership grounded in framing hard problems well, creating reusable foundations, and helping collaborative work move with more clarity.

A recurring theme in my work is taking a fragmented technical space, identifying the right abstractions, and turning them into tools, APIs, and explanations that make an entire line of work more usable.

Scientifically I am interested in modern artificial intelligence from the point of view of a statistical physicist (I started with the great McKay book). I have been working on LLM systems, vector symbolic architectures, mechanistic interpretability, AI reliability, probabilistic language programming, and the design of compound systems that make inference-time behavior more auditable, controllable, and semantically grounded.

In parallel, I have developed quantitative finance models, implemented in the libraries scikit-portfolio first, then becoming a maintainer of skfolio, a large collaborative project to improve the scientific foundations of portfolio allocation with modern optimization methods.

In my recent writing, I explore how branching, verification, and decomposition shape the reliability of AI systems, how inference-time scaffolds can be understood as structured probabilistic procedures, and how better interfaces between theory and engineering can make advanced systems more legible and robust.

My research portfolio extends to online convex optimization, information theory and large scale machine learning models. Across these projects, I tend to work at the boundary between research, engineering, and real-world constraints: framing the problem clearly, choosing the right level of abstraction, aligning technical choices with practical goals, and turning ideas into systems that are mathematically grounded, computationally efficient, and genuinely useful in practice.

My contributions

I have been working across research, engineering, and open-source software, with publications spanning modern AI, machine learning for finance, and complex systems. My work appears at venues such as COLM, ICAIF, TMLR, EPJ Data Science, Physical Review E, and NeuroImage, and is collected on Google Scholar.

  • Senior AI Research Scientist, Ipazia SpA (2022–present)
  • Maintainer of skfolio (portfolio optimization in Python)
  • Research: reliable AI systems, interpretability, compound AI, NLP, optimization, complex systems
  • Focus: connecting deep theory, reusable software, and collaborative research execution
  • Strengths: technical direction, cross-functional collaboration, and building research infrastructure others can rely on

Selected publications

Recent work on LLM interpretability, NLP, and statistical physics. Full list →

Latest blog posts

I maintain a research blog where I develop ideas in public, document ongoing work, and refine the conceptual foundations behind the systems and tools I build.

Contact

If you are working on reliable AI systems, mechanistic interpretability, inference-time methods, or machine learning for finance, feel free to write me at c.nicolini@ipazia.com. I am also available on LinkedIn for professional contact.

Connect on LinkedIn.