/profile.jpeg

Wassim Seifeddine

My thoughts on NeurIPS 2025

Coming back from NeurIPS 2025, I thought I’d write some of my thoughts about the conference and the current state of AI research.

Given that this was my first time attending the conference (huge mistake for someone who’s working in AI research), I was astonished by the amount of people there, I overheard someone saying that there are around 35,000 people this year, a 60% increase from last year alone. That’s insane (didn’t fact check that)

On Apple intelligence, LLM limitations and the next AI winter

Apple intelligence is a project that has been in the works for a while now, and it has been rumored to be a major feature in iOS 18 and the new iPhone 16. However, the project has faced several delays, and it seems that Apple is struggling to get it right. In this post, I will share my thoughts on the reasons behind these delays and what they mean for the future of Apple intelligence and AI.

Torchtitan: A PyTorch Library for Parallelism Techniques explained

Torchtitan is an excellent project to learn how to implement distributed training techniques for training massive language models on hundreds of GPUs. I’ve been using it for a few months, and now that the paper is out, I thought it’d be a good idea to share a few posts about how to use it, what works and what doesn’t, what I learned while implementing these ideas in my own project.

How to install BLAST on mac and download the database

BLAST (Basic Local Alignment Search Tool) is a widely used tool for comparing nucleotide or protein sequences against databases. If you’re working on macOS and need to use any of its tools, this guide will help you install BLAST, download necessary databases, and run BLAST searches efficiently.

Installing

Manually

Installing BLAST manually gives you control over the installation process and allows you to install the latest version directly from NCBI.

Intro

In this blog I will share my thoughts on machine learning, although some other topics might pop up. I will try to be as concise as possible and avoid all the unnecessary jargon *cough* academia *cough*. I hope you not only enjoy the content but also learn something new.

Disclaimers:

  1. I am not an expert on all of the topics I will be discussing. I am just a person trying to learn and share my thoughts.
  2. Posts are always WIP, I will try to keep them up to date but I might miss some things.
  3. There will be mistakes in the posts. I will fix them as soon as I notice them, If you notice any mistakes please let me know by email.
  4. If you have ideas of topics, please share them with me. I’m always keen to learn new things :)

Neural network acceleration

Why accelerate

Well, we have neural networks, they are awesome, they work but there’s a problem. THEY ARE HUGE. We scaled from a hundred of millions of parameters to hundred of BILLIONS. This problem makes using neural networks in real life quite hard as you normally don’t have this huge computational capabilities to run them anywhere.

Neural networks have proven to be a very valuable tool in scenarios where the transformation from inputs to outputs is unknown. Suppose you are asked to write an algorithm to classify an image if it’s a cat or a dog, how would you do that ? Well first you might ask yourself, “what makes an image a cat?”. Answering this question is incredibly hard because a vast amount of cases to cover in order to have your algorithm generalizable. This is where neural networks shine; Given an input $ x_{i} $ with its respective label $ y_{i}$ you can use a neural network model with a set of parameters $\theta$ denoted by $ M(\theta) $ to approximate $y_{i} = f(x_{i})$. Normally with enough data you can get a very good estimate of $f$. However, this comes at a huge cost, training and running these large networks is expensive in terms of time and memory because of the huge amount of parameters that you need to learn to get the best approximation, this makes these models hard to use in real life scenarios. Also, the recent trend of models getting bigger and bigger in order to get better performance is making this problem even harder.