Prise en main de l’analyse de texte

Effectué

Azure AI Language, qui fait partie des offres Azure AI services, est capable d’effectuer un traitement avancé du langage naturel sur du texte non structuré. Les fonctionnalités d’analyse de texte d’Azure AI Language sont les suivantes :

  • La reconnaissance d’entité nommée identifie les personnes, les lieux, les événements, etc. Cette fonctionnalité peut également être personnalisée pour extraire des catégories personnalisées.
  • La liaison d’entités identifie les entités connues avec un lien vers Wikipédia.
  • La détection des informations personnelles d’identification (PII) identifie les informations personnelles sensibles, y compris les informations personnelles sur la santé (PHI).
  • La détection de langue identifie la langue du texte et retourne un code de langue tel que « en » pour l’anglais.
  • L’analyse des sentiments et l’exploration des opinions déterminent si le texte est positif ou négatif.
  • Le résumé résume le texte en identifiant les informations les plus importantes.
  • L’extraction d’expressions clés répertorie les principaux concepts du texte non structuré.

Reconnaissance et liaison d’entités

Vous pouvez soumettre à Azure AI Language du texte non structuré ; il retournera alors une liste des entités qu’il a reconnues dans le texte. Une entité est un élément d’un type ou d’une catégorie particuliers, et potentiellement d’un sous-type, comme les exemples du tableau suivant.

Type Sous-type Exemple
Personne « Bill Gates », « John »
Lieu « Paris », « New York »
Organisation « Microsoft »
Quantité Nombre « 6 » ou « six »
Quantité Pourcentage « 25 % » ou « cinquante pour cent »
Quantité Ordinal « 1er » ou « premier »
Quantité Age « 90 jours » ou « 30 ans »
Quantité Devise « 10,99 »
Quantité Dimension « 10 km », « 40 cm »
Quantité Température « 45 degrés »
DateHeure « 4 février 2012 à 18h30 »
DateTime Date « 2 mai 2017 » ou « 02/05/2017 »
DateTime Temps « 8h » ou « 8:00 »
DateTime DateRange « Du 2 mai au 5 mai »
DateTime TimeRange « De 18h à 19h »
DateTime Duration « 1 minute et 45 secondes »
DateTime Définissez « tous les mardis »
URL « https://www.bing.com »
E-mail « support@microsoft.com »
Numéro de téléphone aux États-Unis « (312) 555-0176 »
Adresse IP « 10.0.1.125 »

Azure AI Language prend également en charge la liaison d’entités pour mieux lever les ambiguïtés sur les entités en établissant un lien vers une référence spécifique. Pour les entités reconnues, le service retourne l’URL d’un article Wikipédia correspondant.

Par exemple, supposez que vous utilisez Azure AI Language pour détecter les entités dans un extrait de commentaire sur un restaurant, que voici :

« J’ai mangé au restaurant à Seattle la semaine dernière. »

Entité Type Sous-type URL Wikipédia
Seattle Lieu https://en.wikipedia.org/wiki/Seattle
semaine dernière DateTime DateRange

Détection de la langue

Utilisez la capacité de détection de langue d’Azure AI Language pour identifier la langue dans laquelle le texte est écrit. Vous pouvez faire analyser plusieurs documents à la fois. Pour chaque document envoyé, le service détecte :

  • Le nom de la langue (par exemple « anglais »).
  • Le code de langue ISO 639-1 (par exemple, « en »).
  • Un score indiquant un niveau de confiance dans la détection de la langue.

Prenons ce scénario à titre d’exemple : vous avez et gérez un restaurant pour lequel les clients peuvent répondre à des enquêtes de satisfaction et envoyer des commentaires sur les plats, le service, le personnel, etc. Supposons que vous ayez reçu les avis suivants de la part de clients :

Avis 1 : « A fantastic place for lunch. The soup was delicious. »

Avis 2 : « Comida maravillosa y gran servicio. »

Avis 3 : « The croque monsieur avec frites was terrific. Bon appetit! »

Vous pouvez utiliser les capacités d’analyse de texte d’Azure AI Language pour détecter la langue de chacun de ces avis. Vous obtiendrez les résultats suivants :

Document Nom de la langue Code ISO 6391 Score
Avis 1 Anglais en 1,0
Avis 2 Espagnol es 1,0
Avis 3 Anglais en 0,9

Notez que la langue détectée pour l’avis 3 est Anglais, malgré la présence d’anglais et de français dans le texte. Le service de détection de langue se concentre sur la langue prédominante dans le texte. Il se sert d’un algorithme pour déterminer la langue prédominante, par exemple la longueur des phrases ou la quantité totale de texte dans chaque langue détectée. La valeur et le code de langue retournés sont ceux de la langue prédominante. Le score de confiance pourrait être inférieur à 1 quand plusieurs langues sont présentes dans le texte.

Il pourrait y avoir du texte de nature ambiguë ou à contenu linguistique mixte. Ces cas peuvent être difficiles à traiter. Un exemple de contenu ambigu serait un document qui contient très peu de texte ou uniquement des signes de ponctuation. Par exemple, en utilisant Azure AI Language pour analyser le texte « :-) », vous obtiendrez la valeur inconnu pour le nom de la langue et l’identifiant de langue, et la valeur de score NaN (qui sert à indiquer que ce n’est pas un nombre).

Analyse des sentiments et exploration des opinions

Les capacités d’analyse de texte d’Azure AI Language peuvent évaluer le texte et retourner des scores de sentiment et des étiquettes pour chaque phrase. Cette fonctionnalité est utile pour détecter les sentiments positifs et négatifs sur les réseaux sociaux, les avis des clients, les forums de discussion, etc.

Azure AI Language utilise un modèle de classification Machine Learning prédéfini pour évaluer le texte. Le service retourne des scores de sentiments dans trois catégories : positif, neutre et négatif. Dans chacune des catégories, un score compris entre 0 et 1 est fourni. Les scores indiquent la probabilité que le texte fourni présente un sentiment particulier. Un sentiment de document est également fourni.

Par exemple, analysons le sentiment des deux avis suivants sur le restaurant :

Avis 1 : « Nous avons dîné dans ce restaurant hier soir et la première chose que j’ai remarquée, c’est la courtoisie du personnel. Nous avons été accueillis chaleureusement et immédiatement conduits à notre table. La table était propre, les chaises étaient confortables et nous avons très bien mangé. »

et

Avis 2 : « J’ai rarement été aussi déçu par un restaurant. Le service était lent et les plats horribles. Je ne mangerai plus jamais dans cet établissement. »

Le score de sentiment pour le premier commentaire pourrait être : Sentiment du document : positif Score positif :0,90 Score neutre : 0,10 Score négatif : 0,00

Le deuxième commentaire peut retourner une réponse : Sentiment du document : négatif Score positif :0,00 Score neutre : 0,00 Score négatif : 0,99

Extraction de phrases clés

L’extraction d’expressions clés identifie les points principaux du texte. Reprenons le scénario de restaurant abordé précédemment. Si vous avez un grand nombre d’enquêtes, la lecture des commentaires peut prendre beaucoup de temps. À la place, vous pouvez utiliser les fonctionnalités d’extraction des phrases clés du service Language pour faire la synthèse des principaux sujets.

Vous pourriez recevoir ce genre d’avis :

«Nous avons dîné ici pour une fête d’anniversaire et tout a été parfait. Nous avons été accueillis par une serveuse sympathique et emmenés directement à notre table. L’ambiance était détendue, nous avons très bien mangé et le service était formidable. Si vous aimez bien manger et avoir un service attentionné, vous devriez essayer cette adresse. »

L’extraction de phrases clés peut fournir du contexte à cet avis, par l’identification des phrases suivantes :

  • fête d’anniversaire
  • tout a été parfait
  • serveuse sympathique
  • bien manger
  • service attentionné
  • dîné
  • table
  • ambiance
  • adresse

En plus d’utiliser l’analyse des sentiments pour déterminer que ce commentaire est positif, vous pouvez également utiliser le service de phrases clés pour identifier les éléments importants du commentaire.

Créer une ressource pour Azure AI Language

Pour utiliser Azure AI Language dans une application, vous devez provisionner une ressource appropriée dans votre abonnement Azure. Vous pouvez choisir l’un des types de ressources suivants :

  • Une ressource Language : choisissez ce type de ressource si vous prévoyez d’utiliser uniquement des services Azure AI Language ou si vous souhaitez gérer l’accès à la ressource et sa facturation indépendamment des autres services.
  • Une ressource Azure AI service : choisissez ce type de ressource si vous prévoyez d’utiliser Azure AI Language en combinaison avec d’autres services Azure AI services et si vous souhaitez gérer conjointement l’accès et la facturation de ces services.