AI Meetup Paris: Transformers, Architecture & Models

Are you confused between Ponicode and CircleCI? It’s not you, it’s us. Ponicode was acquired by CircleCI as of March 2022. The content and material published prior to this date remains under Ponicode’s name. When in doubt: Ponicode = CircleCI.

Antoine holds a PhD in Machine Learning for Health, specialises in medical informatics. His challenge? Collecting hospital data for research purposes: diagnoses, biological results, imaging and clinical reports. The challenge is also to try to reuse them to create information and answer research or management questions. It is in this context that natural language processing is generally used.

Maximilien, co-founder and scientific director of Unifai, a platform that adapts raw data into reliable assets for online retailers. Those stakeholders have very important data quality issues. Transformers are therefore used on specific product data that includes images, free text, etc. 

In what contexts and use cases do you use Transformers?   

This type of model is mainly used by Antoine in the context of information extraction and classification for clinical texts. The reports are written by doctors and other people involved in the care process at the hospital. These texts contain a large amount of information related to the patient's condition and care. 80% of the relevant medical information found comes from these reports, which can be explained by several factors, including the fact that only internal hospital data is available. Everything that happens outside of the hospital, whether regarding the patient's history or the care provided in the city on discharge, does not appear in the databases. These data is collected by hand by the doctors and are found in the type of reports previously mentioned. 

The data collected is for example, the type and number of drugs, the prescription duration, etc. These data are then classified and analysed in the database. They are then given a standardised terminology for analysis. This type of exercise has recently been carried out on the APHP hospital data in Paris, which has enabled a certain amount of information to be communicated on the covid outbreak for instance.

Compared to traditional models that were used previously, the models based on Transformers allowed a gain of almost 10 points in performance on this type of task. 

On the retail side, the use case is quite similar for Maximilien: Transformers are used to extract entities named NER on products. Online retailers receive a large volume of catalogues from different suppliers which aggregate a lot of heterogeneous data. This data needs to be added to the product sheet in order to enhance it and consequently promote better referencing and a smoother user experience on the marketplace. 

The essential information is found in the titles of the files and the description of the supplier products, and this is where the NER comes into play in order to extract the volume of the fridge for instance, its voltage, dimensions, weight, and several attributes in order to be standardised in a file that will be integrated by the client software. 

There are a number of difficulties associated with this task, which is why Unifai is working on it and doing a lot of research. 

What are the impacts of these models on your use cases? 

These models have not completely changed Antoine's way of working, he was already doing working with contextual embedding. Nevertheless, he has observed an undeniable gain in performance because these approaches allow training on large volumes of unstructured data, thus integrating latent knowledge on the models. 

Moreover, one can anticipate a facilitation of knowledge transfer due to the size of these models and the latent knowledge that can be integrated. Transferring a new task to a new domain should be much easier in the future. 

For Maximilien, this is a big structural change and a major breakthrough in terms of research because you can finally get away from the recurrent nature of networks which were quite heavy - even if BERT models are not exactly light. 

The significant advantage is in terms of transferability, because when a new, previously undetected feature appears, the underlying mechanism allows the new elements to be mapped contextually. This means that we are now able to extract this new feature without having to re-train the model which is game changing in the NER. 

What are the difficulties and challenges encountered in using these models and how do you manage them? 

Maximilien acknowledges that these models are very heavy but the work of players such as Hugging Face are making them easier to work with. 

The main difficulty arises mainly when you need to go to production because these models are computationally intensive and complicated infrastructures. Production is done in the cloud and the infrastructure is outsourced to the company. If one is not meticulous about the instances timing that takes up a lot of computing sources to re-train the models, this would lead to a financial fiasco. As far as ML Ops is concerned, there are fairly economical servers that make it possible to get the best out of the machines with the right resources in order to train the models correctly, so we should be aiming at this solution. 

If we take the DevOps process: the R&D teams identify the interesting elements in the state of the art and are responsible for implementing these new technologies within the organisation, which is mainly done on the notebook. If the impact is positive, it is put into production and then made available to customers. Afterwards, it is packaged in an in-house library, which represents a lot of engineering work because a lot of data has to be organised. 

This package is taken over by the application's backend and the technical product teams, who are responsible for integrating it into the platform so that they have a record of what is in production in the event of a problem. It is necessary to have an intermediate step before the production release to ensure that nothing is likely to break and compromise the product at the customer's end. In the event that the models are re-trained on average quality data, this avoids regressions at the customer's. 

Finally, Maximilien explains that the models are re-trained every evening and that the machines process and save everything. 

For Antoine, this is a rather different approach because within the APHP, it is impossible to work on cloud for historical reasons and data confidentiality as it concerns sensitive medical data. 

Everything is therefore done on premise within the hospital and they are lucky enough to be part of a group of 39 establishments which solves the data problems linked to the training of models because they have access to large volumes. However, a lot of work has been done on this data warehouse to equip it with a CPU and GPU computing platform. This cost is covered by the institution, but it does impose certain constraints, in particular the need to share machines across all institutions. 

Is data privacy still an issue, particularly in the medical field? 

From Antoine's point of view, these are real issues that arise at each stage of Machine Learning (ML) projects. First of all, as this is confidential patient data, it is not available online, which means that the models trained on datasets from the web like BERT and others do not contain this type of data. This forces Antoine to re-train the models to fit. Moreover, the medical data is quite rare, which implies quite a lot of tedious annotation work. 

Once the models have been trained, it is impossible to share the results of their work because proving that there is no identifying data in the model is impossible and this could compromise the patient’s privacy. 

Finally, inference is a problem because they can't just use an api or a web app for this step. Antoine confirms that this is a systematic problem but not only in the medical & hospital sector. 

Antoine underlined that federated learning could be an interesting solution, although there are still not enough tools available. 

As for Unifai, Maximilien encounters fewer confidentiality problems, but more constraints in terms of data anonymisation. 

Most products are standardised and therefore easily accessible on public databases, but some players, particularly in the luxury industry, do not have the same relationship with their products and have constraints that must be taken into account. The only solution apart from the cloud and data outsourcing, which customers are not keen on, is on premise, but this holds some difficulties regarding promotion particularly. 

French Version

Antoine, détenteur d’un PhD en Machine Learning for Health est spécialisé en informatique médicale. Son challenge ? La collecte de données hospitalières à des fins de recherche : diagnostiques, résultats biologie, imagerie et compte-rendus clinique. L’enjeu est également d'essayer de les réutiliser pour créer de l’information, répondre à des questions de recherche ou de pilotage. C’est dans ce cadre que le traitement automatique du langage est généralement utilisé.

Maximilien, cofondateur de la startup et directeur scientifique d’Unifai, une plateforme qui fiabilise les données chez les retailers principalement en ligne. Ces derniers ont des enjeux de qualité de données très importants. L’utilisation des Transformers se fait donc sur des données produits spécifiques qui comportent à la fois images, texte libre etc. 

Dans quels contextes et use cases utilisez-vous les Transformers ?   

C’est essentiellement dans le cadre de tâches d’extraction d’informations et classification de textes cliniques qu’intervient ce type de modèle pour Antoine. Les compte-rendus sont rédigés par des médecins et autres intervenants du processus de soins à l’hôpital. On retrouve dans ces textes un grand nombre d’informations  relatives à l’état du patient et à sa prise en charge. 80 % des informations médicales pertinentes retrouvées proviennent de ces textes CR, ce qui s’explique par plusieurs facteurs notamment par le fait que l’on ne trouve que des données internes à l'hôpital. Tout ce qui se passe à l’extérieur du patient que ce soit l’historique du patient ou la prise en charge en ville à la sortie ne figure pas dans les bases. Ces données sont collectées à la main par les médecins et elles se retrouvent dans ces types de compte rendu. 

Les données collectées sont par exemple la typologie et le nombre de médicaments, le temps de prescription, la voie d’utilisation etc. Celles-ci sont ensuite classées et se voient attribuer une terminologie standardisée afin d’être analysée. Ce type d’exercice a récemment été réalisé sur l’entrepôt de données de l’APHP de Paris ce qui a permis de communiquer un certain nombre d’informations sur la covid par exemple.

Comparé à des modèles plus classiques qui étaient exploités auparavant, l’utilisation des modèles basés sur les Transformers ont permis un gain de quasiment 10 points de performance sur ce type de tâches. 

Côté retailers, le use case est assez similaire : les Transformers sont utilisés pour extraire des entités nommées NER sur des produits. Les acteurs de la vente en ligne reçoivent un volume important de catalogues de différents fournisseurs qui agrègent énormément de données hétérogènes. Celles-ci doivent être ajoutées à la fiche produit afin de l’étoffer et par conséquent favoriser un meilleur référencement et une expérience utilisateur plus fluide sur la marketplace. 

Les informations essentielles se trouvent dans les titres des fiches et la description des produits fournisseurs, c’est là qu’intervient le NER afin d’aller extraire par exemple le volume du frigo, la tension, ses dimensions, son poids, une multitude d’attributs afin d’être standardisés dans un fichier qui sera intégré par les logiciels clients. 

L’on rencontre un certain nombre de difficultés liées à cette tâche et c’est pourquoi Unifai travaille dessus et effectue notamment beaucoup de recherches. 

Quels sont les impacts de ces modèles sur vos use cases ? 

Ces modèles n’ont pas révolutionné la façon de travailler d’Antoine à l'hôpital qui pratiquait déjà cet exercice via des embedding de type contextuel. Néanmoins, il observe un gain de performance indéniable car ces approches permettent un entraînement sur de larges volumes de données non structurées, intégrant ainsi des connaissances latentes sur les modèles. 

De plus, on peut anticiper une facilitation des transferts de connaissances du fait de la taille de ces modèles et des connaissances latentes qui pourront être intégrées. Transférer une nouvelle tâche vers un nouveau domaine devrait être beaucoup plus facile à l’avenir. 
Pour Maximilien, il s’agit d’un gros changement structurel et une percée majeure en termes de recherches car l’on peut enfin s’affranchir du caractère récurrent des réseaux qui étaient assez lourds — même si les BERT ne sont pas exactement légers. 

L’avantage non négligeable se trouve au niveau de la transférabilité effectivement car lorsqu’une nouvelle caractéristique jusqu’alors non détectée apparaît, le mécanisme sous-jacent permet de mapper contextuellement les nouveaux éléments. Cela signifie que l’on est désormais capable d’extraire cette nouvelle caractéristique sans avoir à ré-entraîner le modèle ce qui est game changer dans le NER. 

Quels sont les difficultés et challenges rencontrés liés à l’utilisation de ces modèles et comment les gérez-vous ? 

Maximilien ne cache pas que ces modèles sont très lourds et confie que des acteurs tels qu’Hugging Face facilitent grandement leur exploitation. 

La principale difficulté se présente lors du passage en production car ce sont des modèles extrêmement gourmands en calculs et qui posent problème au niveau de l’infrastructure. De leur côté, la production se passe sur le cloud et l’infrastructure est externalisée à l’entreprise. Si l’on n’est pas méticuleux sur le timing des instances qui sont consommatrices en sources de calcul pour ré-entraîner les modèles, cela conduirait au fiasco financier. Concernant le ML Ops, il existe des serveurs assez économiques qui permettent de tirer le meilleur des machines avec les bonnes ressources afin d’entraîner les modèles correctement, il faudrait plutôt s’orienter vers ce choix. 

Si l’on reprend le process DevOps : les équipes R&D identifient les éléments intéressants dans l’état de l’art et sont responsables de l’implémentation de ces nouvelles technologies au sein de l’organisation, ce qui se fait donc majoritairement sur du notebook. Si l’impact est positif, c’est mis en production pour ensuite le mettre à disposition des clients. C’est ensuite packagé dans une librairie maison ce qui représente un gros travail d’engineering car beaucoup de données doivent être organisées. 

Ce package est repris par le backend de l’application et les équipes produit techniques qui se chargent de l’intégration sur la plateforme afin d’avoir une trace de ce qui est en production en cas de problème. Il est nécessaire d’avoir une étape intermédiaire avant la mise en production pour s’assurer que rien ne risque de casser et compromettre le produit chez les clients. Dans le cas où les modèles seraient ré-entraînés sur des données de qualité moyenne, cela évite les régressions chez les clients. 

Enfin, Maximilien nous précise que les modèles sont ré-entraînés tous les soirs et que les machines process et sauvegardent absolument tout. 

Pour Antoine il s’agit d’une approche assez différente car au sein des APHP, pas questions d’utiliser le cloud pour des raisons historiques et de confidentialité des données comme il s’agit de données médicales sensibles. 

Tout est donc réalisé on premise dans l’enceinte de l’hôpital et ils ont la chance d’appartenir à un groupement de 39 établissements ce qui résout les problèmes de données liés à l’entraînement des modèles car ils ont donc accès à de grands volumes. Cependant, un gros travail a été fait sur cet entrepôt de données afin de le doter d’une plateforme de calcul en CPU et GPU. Un coût pris en charge par l’institution mais qui oblige à certaines contraintes, notamment celles de partager les machines dans tous les établissements. 

L’enjeu data privacy notamment dans le domaine médical, est-ce toujours un sujet ? 

Du côté d’Antoine, il s’agit de véritables problématiques qui se posent à chaque étape des projets de Machine Learning (ML). Tout d’abord, comme il s’agit de données patients confidentielles, elles ne sont pas disponibles en ligne ce qui signifie que les modèles entraînés sur des dataset provenant du web comme BERT et autres ne contiennent pas ce type de données. Ce qui force Antoine à ré-entraîner les modèles pour les adapter. De plus, il s’agit de données médicales assez rares ce qui le contraint à effectuer tout un travail d’annotation fastidieux. 

Une fois les modèles entraînés, il est impossible de partager le fruit de leur travail car il est impossible de prouver que des données identifiantes ne figurent pas dans ces modèles et ne pourraient pas compromettre l’identité des patients. 

Enfin, l’inférence pose problème car ils ne peuvent pas simplement se servir d’une api ou d’une web app pour cette étape. Antoine confirme que c’est un problème systématique mais qui ne doit pas être propre au secteur médical et hospitalier. 

Antoine souligne qu’une des pistes intéressantes pourrait être celle du federated learning bien qu’il n’y ait encore que trop peu d’outils disponibles. 

Côté Unifai, Maximilien confirme qu’il rencontre moins de problèmes de confidentialité, en revanche davantage de contraintes au niveau de l'anonymisation des données. 

La plupart des produits sont normés donc facilement accessibles sur des bases publiques, néanmoins certains acteurs, notamment dans le luxe, n’ont pas le même rapport à leurs produits et ont des contraintes qu’il faut prendre en compte. La seule solution hormis le cloud et l’externalisation de données, dont les clients ne sont pas friands, réside dans le on premise, mais ce n’est pas souhaité en raison de la difficulté commerciale à le promouvoir.

Green blobred blob