Constance Ferragu

I am a Computer Science M.S.E. Student at Princeton University, advised by Professor Adji Bousso Dieng.

I graduated from École Polytechnique with a Bachelor of Science in Mathematics and Computer Science.

While in France, I was a Research Intern at InstaDeep, where I had the chance to work on a Contrastive Learning Model in the context of Few-Shot Learning and Meta-Learning for Image Classification.

Email  /  CV  /  Linkedin  /  Github

profile photo
Research

I am interested in the generalization of probabilistic machine learning models. I have recently joined Vertaix where I will be working on developing scalable energy-based models.

Projects
Contrastive Few-shot Learning with OpenAI's CLIP Algorithm

OpenAI tested CLIP on a few-shot learning baseline which trains, with only a few examples per class, a linear regression from CLIP's image embeddings. Their results indicate that this linear regression would need to be trained on a number of examples before matching the zero-shot performances of CLIP. We suppose that this behavior is due to the image encoder being used independently, and thus losing some information from the text encoder. To address this, we built a few-shot image classification model (Alg. 1) that uses both encoders. We find that this approach yields an equivalent or higher performance than in the zero-shot setting, even for one-shot learning. This indicates that CLIP holds a sustainable amount of prior knowledge.

Contrastive Few-shot Meta-Learning for Image Classification

CLIP's unique embedding space holds information from two modalities: visual and semantic. We test CLIP in the meta-learning for few-shot learning environment with a contrastive training loop. In the same environment, we implemented two algorithms that test the CLIP visual and semantic prior information. Based on prototypical networks, which learns a text encoder and image encoder independently and a mixing network to combine the encoder outputs, we implemented our own mixing network to combine the CLIP encoder outputs. Our results surpass the current benchmarks of models trained for this particular environment.

MathsSolver

The MathsSolver program will allow a user to upload a picture of a handwritten maths problem or type the problem which will then be solved by the program. I was the Team Leader for the Differential Calculator. My teams task consisted of creating a practical way to handle functions given as string inputs which would be used for the entirety of the project (not only the differential solver) and also to come up with an algorithm that finds the derivative of a function along with its step-by-step solution.

Concurrent N-Body Simulation

In this project, we aim to do a working simulation of N bodies, first by implementing it sequentially and then we parallelise it. Lastly we implemented a more advanced simulation algorithm, the Barnes-Hut algorithm and discussed ways of parallelizing it.

Awards
Excellence Scholarship, École Polytechnique.

Teaching Assistantship, Princeton University.

Summa Cum Laude, École Polytechnique.

Outstanding Student Distinction, École Polytechnique.

Teaching
COS 240: Reasoning About Computation Princeton University, Fall Semester 2022.


Design and source code from Jon Barron's website