Toutes les informations critiques de Google - qu'il s'agisse de déterminer quels résultats de recherche sont les plus importants, de lire et de garder un œil sur votre courrier électronique - renferment des calculs mathématiques intéressants. Et récemment, Javier Tordable, un ingénieur en logiciel, a fait une présentation, ouvrant une fenêtre sur le monde geek de Google.
Commençons par Gmail. Vous recevez parfois des spams, mais Gmail sait très bien que lorsqu'un correspondant essaie de vous amener à investir dans un prince nigérian, vous ne voulez probablement pas ce courrier dans votre boîte de réception. Comment sait-il? Première étape: former la machine. Deuxième étape: mettez-le au travail.
C'est ce qu'on appelle l'apprentissage automatique, et Google en fait une tonne. Dans la première étape, vous devez faire ce que les informaticiens appellent «caractériser une instance». En mathématique, cela signifie:
En général, les caractéristiques d'une instance peuvent être considérées comme des éléments d'un vecteur d'un espace euclidien non dimensionnel pour un grand n (100-1000 dimensions sont normales, 1M-10M n'est pas inouï)
Mais voici comment y penser si vous vous arrêtez de compter après Calc 1. Gmail peut extraire quelques informations essentielles de tout courrier électronique. C'est combien de temps? Combien de lettres majuscules y a-t-il? Est-ce de quelqu'un que vous avez reçu un email avant? Vous ne voulez pas que les informations requises pour prendre la décision soient trop difficiles à obtenir ou à traiter, car cela ralentirait et diminuerait la précision de votre machine. Donc, Google trace une ligne, basée sur ce qu'il sait sur le spam. Les e-mails qui parviennent se retrouvent d'un côté de la ligne et ceux qui sont spammés de l'autre.
Plus de maths parlent:
Un modèle de classification simple est un hyperplan dans l'espace des caractéristiques. Les instances de données d'un côté de l'hyperplan sont classées en tant qu'e-mails valides et les instances de l'autre côté en tant que spams.
Qu'en est-il de la recherche vocale, également appelée reconnaissance vocale automatisée ou ASR? Tout comme l'apprentissage automatique, l'ASR se déroule en deux parties: le traitement du son entrant et la compréhension de ce que vous dites. La première partie implique des transformations de Fourier, qui isolent les bits importants que l’ordinateur peut traduire. La deuxième partie consiste à modéliser le discours à l'aide de ce que l'on appelle un «modèle de Markov caché». Tordable explique:
Dans ce modèle, les états sont les lettres du message et la séquence d'événements est le signal sonore. L'algorithme de Viterbi peut être utilisé pour obtenir la séquence d'états du maximum de vraisemblance.
Google aimerait rendre la reconnaissance vocale meilleure et plus facile. Dans cette étude de cas, un groupe de Google whizzes écrit:
Un objectif de Google est de rendre l'accès parlé omniprésent. Nous aimerions laisser l’utilisateur choisir. Il devrait pouvoir prendre pour acquis que l’interaction parlée est toujours une option. Atteindre l'omniprésence requiert deux choses: la disponibilité (c'est-à-dire intégrée à toutes les interactions possibles dans lesquelles l'entrée ou la sortie de la parole peut avoir un sens), et la performance (c'est-à-dire que fonctionne si bien que la modalité n'entraîne aucun frottement dans l'interaction).
Un autre domaine dans lequel Google utilise les mathématiques se trouve dans leurs cartes: récemment sous les projecteurs d'Apple, le système de cartographie a été très critiqué. Google Maps repose sur la théorie des graphes de base, qui permet de se rendre d'un endroit à un autre en parcourant la distance la plus courte. Mais, bien sûr, c'est plus complexe que cela. Tordable écrit: «Un problème unique réside dans le fait que les graphiques utilisés dans Google Maps contiennent des millions de nœuds, mais que les algorithmes doivent s'exécuter en quelques millisecondes.»
Google ne nous dira pas comment ils font ça. Sinon, Apple n’aurait pas rencontré le problème, mais les bases impliquent l’abandon de l’algorithme de Dijsktra (probablement l’algorithme de recherche de graphes le plus couramment utilisé). Il y a quelques années, des informaticiens de l'Université de Karlsruhe ont décrit un nouveau moyen de hiérarchiser les requêtes de chemin pour obtenir des résultats beaucoup plus rapides. Ils ont écrit:
Notre algorithme pré-traite le nombre de nœuds à huit chiffres nécessaire pour les cartes des États-Unis ou d'Europe occidentale en quelques heures à l'aide d'un espace linéaire. Les requêtes de chemin les plus courtes (c'est-à-dire les plus rapides) prennent ensuite environ huit millisecondes pour produire les chemins les plus courts exacts. C'est environ 2 000 fois plus rapide que l'algorithme de Dijkstra.
Tordable utilise plusieurs autres outils mathématiques utilisés par Google, notamment Google Livres, les recherches d'images, Google Analytics, YouTube, Google Traduction, Google Earth et Picasa. Vous pouvez voir l'ensemble des diapositives ici.
Plus de Smithsonian.com:
Smithsonian obtient Google Mapped
Suivre les tendances alimentaires avec Google Livres