Que sont les TPU ? Pourquoi les utiliser ?

29/3/2022

Le développement de Cedille a été rendu possible grâce au soutien généreux du programme TRC de Google, avec lequel nous avons pu accéder à un cluster de 1 000 unités de TPU en cloud (Tensor Processing Units), dont une grande instance et quelques dizaines de petites instances. Les chercheurs acceptés dans le programme TRC y ont accès gratuitement et peuvent exploiter une variété de frameworks et de langages comme TensorFlow, PyTorch, Julia et JAX, pour accélérer les découvertes scientifiques dans la recherche dite ouverte. Fournir un accès à des TPU en tant que service sur le cloud permet à des utilisateurs de commencer à construire des modèles sans avoir besoin d'un investissement initial en capital. En d'autres termes, les chercheurs, les ingénieurs, les petites entreprises et même les étudiants peuvent démarrer des projets de Machine Learning("apprentissage automatique") en toute simplicité. Nous tenons d'ailleurs à remercier une fois de plus Google pour le soutien apporté dans nos recherches et le lancement de Cedille. Grâce à eux, nous avons pu également partager notre modèle en Open Source et partager une publication afin que d'autres chercheurs et étudiants puissent en bénéficier.

Un peu de contexte

Pour ceux qui se demandent ce que sont les TPU et qui ne sont pas experts en la matière : les TPU sont des circuits intégrés spécifiques à une application (ASIC) et permettent d’accélérer les calculs et les algorithmes d’une IA. Les TPU ont été conçus de A à Z par Google, qui a commencé à les utiliser en 2015 puis les a rendus publics en 2018. Google développe des TPU spécifiquement pour le Machine Learning par réseau neuronal pour TensorFlow, la plateforme de ML open-source. TensorFlow donne accès à des outils, des bibliothèques et une communauté afin de rapidement pouvoir construire et déployer des applications de Machine Learning.


Nous avons opté pour l’utilisation de TPU car ils sont plus performants avec des itérations de grande taille. Les CPU (Central Processing Units) et les GPU (Graphics Processing Units) permettent de calculer la plupart des problèmes de Machine Learning, mais prennent également beaucoup de temps pour le faire. Avec les TPU, les modèles de “deep learning” qui prenaient auparavant des semaines à entraîner avec les GPU ne prennent plus que quelques heures. Les TPU offrent également des performances 15 à 30 fois supérieures et un rendement par watt 30 à 80 fois supérieur à celui des CPU et GPU actuels. Pour Cedille, nous avons donc pu entraîner le modèle beaucoup plus rapidement avec les TPU: 2 semaines auront suffi pour un modèle de 6 milliards de paramètres au lieu d'un mois, voire plus!

Des possibilités illimitées pour l'avenir de Cedille


Comme nous utilisons des TPU pour entraîner nos modèles, nous pouvons effectuer des multiplications matricielles rapidement et en grand volumes. La combinaison de Jax (une alternative récente de Google à TensorFlow) et des TPU peut faire des merveilles dans le domaine de la médecine, du traitement d'images et du Machine Learning. Pour Cedille, cela signifie essentiellement que nous pourrons entraîner le modèle sur une nouvelle langue en deux semaines, de sorte que toutes les compétences et fonctionnalités que vous pouvez utiliser avec Cedille seront ensuite disponibles dans d’autres langues. À noter que pour utiliser les modèles après les avoir entraînés, par exemple sur notre plateforme, nous utilisons des GPU.

Nous travaillons actuellement sur l’ajout de nouvelles langues sur notre plateforme, alors restez à l'affût des prochaines mises à jour !

Essayez-le vous-même

La première version du modèle est accessible sur une plateforme de test dédiée, générez vos propres textes!
Essayez Cedille