<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Projects on João Fonseca</title><link>https://jfonseca.eu/projects/</link><description>Recent content in Projects on João Fonseca</description><generator>Hugo -- 0.147.2</generator><language>en</language><lastBuildDate>Wed, 18 Jun 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://jfonseca.eu/projects/index.xml" rel="self" type="application/rss+xml"/><item><title>Auditing and Safeguarding Large Language Models</title><link>https://jfonseca.eu/projects/auditing-safeguarding-llms/</link><pubDate>Wed, 18 Jun 2025 00:00:00 +0000</pubDate><guid>https://jfonseca.eu/projects/auditing-safeguarding-llms/</guid><description>&lt;p>This project focuses on developing comprehensive methods for auditing and
safeguarding Large Language Models (LLMs) to ensure their safe and responsible
deployment in real-world applications.&lt;/p>
&lt;h2 id="key-components">Key Components&lt;/h2>
&lt;h3 id="safenudge">SafeNudge&lt;/h3>
&lt;p>A real-time safeguarding method designed to protect Large Language Models
against red teaming attacks and harmful prompt injections. SafeNudge provides
tunable safety-performance trade-offs, allowing organizations to customize
protection levels based on their specific use cases and risk tolerance.&lt;/p>
&lt;p>This paper is currently under submission, an &lt;a href="https://arxiv.org/abs/2501.02018" target="_blank">early preprint is available on ArXiv&lt;/a> and here:
&lt;a href="https://jfonseca.eu/publication/2025-safenudge">SafeNudge: Real-Time Safeguarding for Large Language Models&lt;/a>.&lt;/p></description></item><item><title>Machine Learning Explainability Frameworks</title><link>https://jfonseca.eu/projects/explainability-frameworks/</link><pubDate>Thu, 03 Oct 2024 00:00:00 +0000</pubDate><guid>https://jfonseca.eu/projects/explainability-frameworks/</guid><description>&lt;p>This project focuses on developing frameworks for explaining and interpreting
machine learning model predictions.&lt;/p>
&lt;h2 id="key-components">Key Components&lt;/h2>
&lt;h3 id="sharp-shapley-for-rankings-and-preferences">ShaRP (Shapley for Rankings and Preferences)&lt;/h3>
&lt;p>A framework that explains the contributions of features to different aspects of
ranked outcomes, based on Shapley values. This approach is particularly useful
for understanding how different features influence ranking decisions in
recommendation systems, search results, and other ranked outputs.&lt;/p>
&lt;p>See the paper for more details:
&lt;a href="https://jfonseca.eu/publication/2024-sharp">ShaRP: Explaining Rankings with Shapley Values&lt;/a>.&lt;/p></description></item><item><title>Multi-agent Algorithmic Recourse Over Time</title><link>https://jfonseca.eu/projects/algorithmic-recourse-over-time/</link><pubDate>Sat, 01 Jul 2023 00:00:00 +0000</pubDate><guid>https://jfonseca.eu/projects/algorithmic-recourse-over-time/</guid><description>&lt;p>This project studies the importance of time in the reliability of algorithmic
recourse. We highlight the lack of reliability in recourse recommendations
over several competitive settings, potentially setting misguided expectations
that could result in detrimental outcomes. These findings emphasize the
importance of meticulous consideration when AI systems offer guidance in
dynamic environments. &lt;strong>&lt;a href="https://jfonseca.eu/files/certificates/EAAMO-23-AI-Track-Award.pdf">Our paper, &amp;quot;Setting the Right Expectations:
Algorithmic Recourse Over Time&amp;quot;, won the Best AI Track Paper award at
EAAMO'23!&lt;/a>&lt;/strong> &lt;br/>&lt;br/>&lt;img
src='recourse-eaamo.png' width='500' class='align-center'>&lt;/p></description></item><item><title>ML-Research - An Open Source Library for Machine Learning Research</title><link>https://jfonseca.eu/projects/ml-research/</link><pubDate>Sun, 06 Mar 2022 00:00:00 +0000</pubDate><guid>https://jfonseca.eu/projects/ml-research/</guid><description>&lt;div align="center">
&lt;img src="https://raw.githubusercontent.com/joaopfonseca/ml-research/master/docs/_static/logo.png" width="400px">
&lt;/div>
&lt;hr>
&lt;p align="center">
&lt;a href="https://github.com/joaopfonseca/ml-research/actions/workflows/ci.yml">&lt;img alt="Github Actions" src="https://github.com/joaopfonseca/ml-research/actions/workflows/ci.yml/badge.svg">&lt;/a>
&lt;a href="https://codecov.io/gh/joaopfonseca/ml-research">&lt;img alt="Codecov" src="https://codecov.io/gh/joaopfonseca/ml-research/branch/master/graph/badge.svg?token=J2EBA4YTMN">&lt;/a>
&lt;a href="https://mlresearch.readthedocs.io/en/latest/?badge=latest">&lt;img alt="Documentation Status" src="https://readthedocs.org/projects/mlresearch/badge/?version=latest">&lt;/a>
&lt;a href="https://github.com/psf/black">&lt;img alt="Black" src="https://img.shields.io/badge/code%20style-black-000000.svg">&lt;/a>
&lt;a href="https://img.shields.io/badge/python-3.8%20|%203.9-blue">&lt;img alt="Python Versions" src="https://img.shields.io/badge/python-3.8%20|%203.9%20|%203.10-blue">&lt;/a>
&lt;a href="https://doi.org/10.3390/RS13132619">&lt;img alt="DOI" src="https://zenodo.org/badge/DOI/10.3390/RS13132619.svg">&lt;/a>
&lt;/p>
&lt;table align="center">
&lt;tr>
&lt;td>
&lt;b>PyPI&lt;/b>
&lt;/td>
&lt;td>
&lt;a href="https://badge.fury.io/py/ml-research">&lt;img alt="Pypi Version" src="https://badge.fury.io/py/ml-research.svg">&lt;/a>
&lt;a href="https://pepy.tech/project/ml-research">&lt;img alt="Downloads" src="https://static.pepy.tech/personalized-badge/ml-research?period=total&amp;units=international_system&amp;left_color=grey&amp;right_color=brightgreen&amp;left_text=downloads">&lt;/a>
&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>
&lt;b>Anaconda&lt;/b>
&lt;/td>
&lt;td>
&lt;a href="https://anaconda.org/conda-forge/ml-research">&lt;img alt="Conda Version" src="https://img.shields.io/conda/vn/conda-forge/ml-research.svg">&lt;/a>
&lt;a href="https://anaconda.org/conda-forge/ml-research">&lt;img alt="Conda Downloads" src="https://img.shields.io/conda/dn/conda-forge/ml-research.svg">&lt;/a>
&lt;/td>
&lt;/tr>
&lt;/table>
&lt;p>&lt;code>ML-Research&lt;/code> is an open source library for machine learning research. It
contains the software implementation of most algorithms used or developed in
my research. Specifically, it contains &lt;code>scikit-learn&lt;/code> compatible
implementations for Active Learning, Oversampling, Datasets and various
utilities to assist in experiment design and results reporting. Other
techniques, such as self-supervised learning and semi-supervised learning are
currently under development and are being implemented in &lt;code>pytorch&lt;/code> and
intended to be &lt;code>scikit-learn&lt;/code> compatible.&lt;/p></description></item><item><title>MapIntel - Interactive Visual Analytics Platform for Competitive Intelligence</title><link>https://jfonseca.eu/projects/mapintel/</link><pubDate>Tue, 30 Mar 2021 00:00:00 +0000</pubDate><guid>https://jfonseca.eu/projects/mapintel/</guid><description>&lt;p>This research project aims to develop a Competitive Intelligence platform
through Natural Language Processing and different visualization techniques. We
employ text preprocessing and embedding techniques to encode a large corpus of
text as well as Self-Organizing Maps, an unsupervised neural network that
facilitates the development of multiple machine learning tasks and
visualize high dimensional data. This project is funded by &amp;ldquo;Fundação para a
Ciência e Tecnologia&amp;rdquo; (Portugal) and is being developed at NOVA IMS.&lt;/p></description></item><item><title>Winning Project - DSSG Summit 2020 Challenge - Keyboard Layout Optimization for ALS Patients Competition</title><link>https://jfonseca.eu/projects/dssg-summit-competition/</link><pubDate>Wed, 21 Oct 2020 00:00:00 +0000</pubDate><guid>https://jfonseca.eu/projects/dssg-summit-competition/</guid><description>&lt;p>This competition was organized by &lt;a href="nilg.ai">NILG.AI&lt;/a>, together with the &lt;a href="https://www.summit.dssg.pt/" target="_blank">DSSG Summit
2020&lt;/a>. The competition&amp;rsquo;s aim was to optimize a keyboard layout to
minimize the workload for usage by an ALS patient. &lt;a href="https://www.anthonycarbajal.com/" target="_blank">Anthony Carbajal inspired this
challenge&lt;/a>, a full-time daily life hacker that aims to find
innovative ways to improve his and other ALS-patient lives, with whom NILG.AI worked together for
developing a first version of this solution.&lt;/p>
&lt;iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/DQk3Op_U6w8" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen>&lt;/iframe>
&lt;h2 id="team-members">Team members&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://jfonseca.eu/about">João Fonseca&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://www.linkedin.com/in/david-silva-analytics/" target="_blank">David Silva&lt;/a>&lt;/li>
&lt;/ul>
&lt;h2 id="relevant-links">Relevant links&lt;/h2>
&lt;ul>
&lt;li>&lt;strong>&lt;a href="https://www.summit.dssg.pt/competition" target="_blank">Competition&amp;rsquo;s homepage&lt;/a>&lt;/strong>&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://github.com/nilg-ai/dssgsummit2020-challenge" target="_blank">Competition&amp;rsquo;s GitHub Repository&lt;/a>&lt;/strong>&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://github.com/joaopfonseca/dssgsummit2020-challenge" target="_blank">Project&amp;rsquo;s GitHub Repository&lt;/a>&lt;/strong>&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://jfonseca.eu/files/certificates/dssg-summit_als_certificate_joao_fonseca.pdf">Competition Winner
Certificate&lt;/a>&lt;/strong>&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://jfonseca.eu/talks/2020-10-21-dssg-summit">DSSG Summit 2020 - Winning Community Challenge Submission&lt;/a>&lt;/strong>&lt;/li>
&lt;/ul></description></item><item><title>Amphan - Analyzing Experiences of Extreme Weather Events using Online Data</title><link>https://jfonseca.eu/projects/solve-iwmi/</link><pubDate>Wed, 23 Sep 2020 00:00:00 +0000</pubDate><guid>https://jfonseca.eu/projects/solve-iwmi/</guid><description>&lt;p>Cyclone Amphan made landfall in South Asia on May 20, 2020. It was the most
damaging storm in the history of the Indian Ocean, rendering hundreds of
thousands of people homeless, ravaging agricultural lands and causing billions
of dollars in damage. How were people affected by the storm? What were the
responses of individuals, governments, corporates and NGOs? How was it covered
by local, national and international media, as opposed to individuals&amp;rsquo;
accounts? Who has created the dominant narratives of Cyclone Amphan; and whose
voices go unheard? We aim to use online data &amp;ndash; such as Twitter posts, news
headlines and research publications &amp;ndash; to analyze people&amp;rsquo;s experiences of Cyclone
Amphan.&lt;/p></description></item><item><title>IPSTERS - IPSentinel Terrestrial Enhanced Recognition System</title><link>https://jfonseca.eu/projects/ipsters/</link><pubDate>Sun, 31 May 2020 00:00:00 +0000</pubDate><guid>https://jfonseca.eu/projects/ipsters/</guid><description>&lt;p>This project focused on the exploration of several machine learning (ML) techniques, covering different stages of a Land Use/Land Cover Classification (LULC) pipeline. These techniques aimed to minimise problems typically found in this kind of data, namely data ingestion, feature selection, data filtering and classification. The results shown here are the result of a joint effort. Manvel Khudinyan developed all active learning experiments, which I converted into a Command-line Interface, in order to facilitate its use by the remote sensing specialists at Direção Geral do Território.&lt;/p></description></item><item><title>Harnessing Big Data to Inform Tourism Destination Management Organizations</title><link>https://jfonseca.eu/projects/tourism-management/</link><pubDate>Fri, 25 Jan 2019 00:00:00 +0000</pubDate><guid>https://jfonseca.eu/projects/tourism-management/</guid><description>&lt;h2 id="reports">Reports&lt;/h2>
&lt;ul>
&lt;li>&lt;strong>&lt;a href="https://jfonseca.eu/tourism-management/">Online report&lt;/a>&lt;/strong>&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://jfonseca.eu/tourism-management/flows/index.html">Tourist flows in Portugal (August 2017)&lt;/a>&lt;/strong>&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://jfonseca.eu/files/thesis_v5_final.pdf">Master thesis&lt;/a>&lt;/strong>&lt;/li>
&lt;/ul>
&lt;h2 id="github-repositories">Github repositories&lt;/h2>
&lt;ul>
&lt;li>&lt;strong>&lt;a href="https://github.com/joaopfonseca/tourism_telecom" target="_blank">Telecom data analysis&lt;/a>&lt;/strong>&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://github.com/joaopfonseca/airbnb_analysis" target="_blank">Airbnb data analysis&lt;/a>&lt;/strong>&lt;/li>
&lt;li>&lt;strong>&lt;a href="https://github.com/joaopfonseca/social_media_crawler" target="_blank">Social Media Crawler&lt;/a>&lt;/strong>&lt;/li>
&lt;/ul>
&lt;h2 id="abstract">Abstract&lt;/h2>
&lt;p>In the last few years, Portugal has been witnessing a rapid growth of tourism, which reflects positively in many aspects, especially in what regards economic factors. Although, it also leads to a number of challenges, all of them difficult to quantify: tourist congestions, loss of city identity, degradation of patrimony, etc. It is important to ensure that the required foundations and tools to understand and efficiently manage tourism flows exist, both in the city-level and country-level.&lt;/p></description></item></channel></rss>