who is watson?

54
www.unknowns.fr Who is Watson? Une plongée dans l’intelligence cognitive 1

Upload: unknowns

Post on 21-Mar-2017

505 views

Category:

Technology


0 download

TRANSCRIPT

www.unknowns.fr

Who is Watson?Une plongée dans l’intelligence cognitive

1

www.unknowns.fr

Pourquoi s’y intéresser ?

● Watson est un programme d’intelligence cognitive capable ○ de reconnaître et d’identifier des objets ou des gens (connus) dans des images, ○ de comprendre la grammaire des langues supportées,○ de comprendre le langage naturel pour analyser ce que le texte véhicule (le ton,

l'émotion, les principaux sujets abordés), ○ d’apprendre pour optimiser la performance des algorithmes (Machine Learning)

2

www.unknowns.fr

Pourquoi s’y intéresser ?

● En 2011, Watson s’est fait connaître en remportant le jeu américain Jeopardy! ● Le but du jeu est de trouver la question à la réponse donnée. Watson a été capable :

○ de capter et comprendre la réponse donnée par l’animateur,

○ d’aller chercher dans sa “mémoire” ce qui se réfère à la réponse (i.e. dans les articles/textes analysées et stockées),

○ de trouver et formuler la question pour la restituer vocalement,○ de suivre le jeu (et les règles) pour savoir s’il a gagné et donc, s’il peut relancer ou non.

Vidéo de Watson à Jeopardy! : https://www.youtube.com/watch?v=WFR3lOm_xhE

3

www.unknowns.fr

Concrètement, c’est quoi ?

● Une API* applicative composée de 28 services unitaires → 1 service = 1 but / 1 action,● Il est possible de créer une infinité de combinaisons de ces services unitaires.

* Une API est une “façade” (ou interface) accessible en ligne permettant à d’autres applications de se brancher dessus pour consommer des ressources ou échanger des informations

4

Votre application Internet WatsonInternet

www.unknowns.fr

Ces services permettent d’intégrer de nouvelles manières d’interagir avec les systèmes, principalement la voix.

Entrées / Sorties Analyse Structurelle UtilitairesAnalyse d’imagesAnalyse Sémantique

5

Les services unitaires : entrées / sorties

DialogFace DetectionPersonality InsightRelationship ExtractionText to Speech

Retrieve & Rank

Document Conversion

Date Extraction

Publication Date

Microformat Parsing

News API

Natural Language Classifier

Speech to Text

Language Detection

Relation Extraction

Entity Extraction

Keyword Extraction

Text Extraction

Authors Extraction

Tone Analyser

Concept Insight

Sentiment Analysis

Emotion Analysis

Taxonomy

Concept Tagging

Language Detection

Image Tagging

www.unknowns.fr

Ces services permettent d’extraire une série d’informations structurées à partir d’un texte brut tout en comprenant la grammaire et la syntaxe de la langue. Ces services font une analyse structurelle du texte.

Entrées / Sorties Analyse Structurelle UtilitairesAnalyse d’imagesAnalyse Sémantique

6

Les services unitaires : analyse structurelle

DialogFace DetectionPersonality InsightRelationship ExtractionText to Speech

Retrieve & Rank

Document Conversion

Date Extraction

Publication Date

Microformat Parsing

News API

Natural Language Classifier

Speech to Text

Language Detection

Relation Extraction

Entity Extraction

Keyword Extraction

Text Extraction

Authors Extraction

Tone Analyser

Concept Insight

Sentiment Analysis

Emotion Analysis

Taxonomy

Concept Tagging

Language Detection

Image Tagging

www.unknowns.fr

Ces services permettent d’effectuer des analyses de textes plus profondes. Elles sont toujours faites de manière à approcher la manière dont un humain le ferait.Ces analyses peuvent être de plusieurs natures, tels que les émotions véhiculées, le ton, ou les éléments clés abordés dans le texte.

Entrées / Sorties Analyse Structurelle UtilitairesAnalyse d’imagesAnalyse Sémantique

7

Les services unitaires : analyse sémantique

DialogFace DetectionPersonality InsightRelationship ExtractionText to Speech

Retrieve & Rank

Document Conversion

Date Extraction

Publication Date

Microformat Parsing

News API

Natural Language Classifier

Speech to Text

Language Detection

Relation Extraction

Entity Extraction

Keyword Extraction

Text Extraction

Authors Extraction

Tone Analyser

Concept Insight

Sentiment Analysis

Emotion Analysis

Taxonomy

Concept Tagging

Language Detection

Image Tagging

www.unknowns.fr

Ces services permettent l’extraction d’informations à partir d’une image.

Entrées / Sorties Analyse Structurelle UtilitairesAnalyse d’imagesAnalyse Sémantique

8

Les services unitaires : analyse structurelle

DialogFace DetectionPersonality InsightRelationship ExtractionText to Speech

Retrieve & Rank

Document Conversion

Date Extraction

Publication Date

Microformat Parsing

News API

Natural Language Classifier

Speech to Text

Language Detection

Relation Extraction

Entity Extraction

Keyword Extraction

Text Extraction

Authors Extraction

Tone Analyser

Concept Insight

Sentiment Analysis

Emotion Analysis

Taxonomy

Concept Tagging

Language Detection

Image Tagging

www.unknowns.fr

Ces services sont un ensemble de petits utilitaires, destinés à un but fonctionnel précis.

Entrées / Sorties Analyse Structurelle UtilitairesAnalyse d’imagesAnalyse Sémantique

9

Les services unitaires : utilitaires

DialogFace DetectionPersonality InsightRelationship ExtractionText to Speech

Retrieve & Rank

Document Conversion

Date Extraction

Publication Date

Microformat Parsing

News API

Natural Language Classifier

Speech to Text

Language Detection

Relation Extraction

Entity Extraction

Keyword Extraction

Text Extraction

Authors Extraction

Tone Analyser

Concept Insight

Sentiment Analysis

Emotion Analysis

Taxonomy

Concept Tagging

Language Detection

Image Tagging

www.unknowns.fr 10

Concrètement, quels bénéfices ?

● 1/ Un ensemble de fonctionnalités Ready-to-use ○ il permet de bénéficier “rapidement” de fonctionnalités puissantes, qui auraient été complexes et

coûteuses à mettre en place soi-même.

● 2/ Un modèle économique progressif : vous ne payez que ce que vous consommez

⇒ Permet de se concentrer sur ce qui apporte réellement de la valeur :l’implémentation au sein de votre métier

La technique n’ayant plus une valeur différenciante, ces plates-formes permettent d’alleger les coûts de conception et de développement des services qui ne sont pas du coeur de métier de votre entreprise

(Machine Learning, IA).

www.unknowns.fr

Pour quoi faire ? Comment ?

● La puissance de Watson réside dans la combinaison des services,● Déroulons les fonctionnalités qui nous ont semblé intéressantes au travers de 4 cas

combinant plusieurs services de l’API. ➢ Cas 1 : Automation du support client➢ Cas 2 : Redirection du support client➢ Cas 3 : Recherche en mémoire➢ Cas 4 : Détecteur de goûts

11

www.unknowns.fr

Cas 1 : Automation du Support Client

12

www.unknowns.fr

Cas 1 : Automation du Support Client

Principe :

Je souhaite proposer à mes clients un service de support totalement automatisé, s’utilisant avec la voix et répondant aux problématiques les plus courantes.

13

www.unknowns.fr

Entrées / Sorties Analyse Structurelle Analyse Sémantique

14

Cas 1 : Automation du Support Client

Personality InsightRelationship ExtractionText to Speech

Speech to Text

Language Detection

Relation Extraction

Entity Extraction

Keyword Extraction

Text Extraction

Authors Extraction

Tone Analyser

Concept Insight

Sentiment Analysis

Emotion Analysis

Taxonomy

Concept Tagging

Language Detection

UtilitairesAnalyse d’images

DialogFace Detection

Retrieve & Rank

Document Conversion

Date Extraction

Publication Date

Microformat Parsing

News API

Natural Language Classifier

Image Tagging

www.unknowns.fr

Cas 1 : Automation du Support Client

15

L’utilisateur pose sa question à l’oral, et sa demande sera convertie en un texte par le service “Speech to Text”

1/5

Client

Speech to Text

Text to Speech

Dialog

www.unknowns.fr

Cas 1 : Automation du Support Client

16

Le texte transcrit est envoyé au service “Dialog”, qui va tenter de matcher la demande dans l’arbre de décision prédéfini. C’est cet arbre de décision qui définit l’intelligence et la qualité de la conversation.

Dans notre exemple, imaginons que nous sommes un fabriquant de téléphone.L’utilisateur demande : “J’ai un problème avec mon téléphone”. Dans l’arbre de décision, nous identifions la combinaison des mots “problème” et “téléphone”, mais pas le modèle. Nous demandons donc à l’utilisateur de le préciser.

Au deuxième tour, l’utilisateur nous donnera probablement le modèle de son téléphone, que nous pourrons comparer à la liste de nos modèles. En revanche, si le modèle du téléphone ne peut-être identifié, nous recommençons le second tour (jusqu’à matcher la condition dans l’arbre de décision).

Client

Speech to Text

Text to Speech

Dialog

2/5

www.unknowns.fr

Cas 1 : Automation du Support Client

17

Au tour suivant, nous souhaitons en savoir plus sur le problème du téléphone donc nous lui demandons : “Décrivez nous votre problème”. Dans sa réponse, nous voulons donc identifier des mots-clés tels que “écran”, “batterie” + “durée”, “code pin”, “casse”, etc… pour identifier parmi notre liste de solutions celle qui correspond le mieux à son cas. Ici la qualification du problème peut se faire (et sera probablement faite) en plusieurs tours.Une fois que le problème est qualifié et correspond à l’une de nos solutions, nous lui envoyons.

En cas de non compréhension de sa demande, nous lui proposons d’entrer son numero de téléphone afin d’être rappelé par un technicien. Au tour suivant, nous identifierons un numéro de téléphone dans son message, et nous pouvons le mettre en attente d’appel.

Client

Speech to Text

Text to Speech

Dialog

3/5

www.unknowns.fr

Cas 1 : Automation du Support Client

18

Le retour du service est alors envoyé au service “Text to Speech” permettant la lecture de la réponse (ou nouvelle question).

Client

Speech to Text

Text to Speech

Dialog

4/5

www.unknowns.fr

Cas 1 : Automation du Support Client

19

L’utilisateur entend la réponse du “robot” et peut relancer avec une autre demande, ou une réponse à la précision demandée par le “robot”.

Client

Speech to Text

Text to Speech

Dialog

5/5

www.unknowns.fr

Cas 1 : Pour aller plus loin 1/2

● Speech to Text○ Transcription audio, avec support du streaming,○ 7 langues disponibles, mais pas le français (ar, en-gb, en-us, jp, es, br, cn),○ Supprime ou censure les mots offensants (par des étoiles), ○ Retourne les mots alternatifs et acoustiquement similaires, avec un score de confiance.

● Text to Speech○ Lire un contenu texte,○ 13 voix en 7 langues (en, fr, de, it, jp, es, pt),○ L’API permet d’appliquer des paramètres en encadrant des phrases ou des mots de XML,

➢ Modifier la manière d’exprimer certaines phrases : ■ 3 expressions disponibles : l’incertitude, la bonne nouvelle, l’excuse■ seulement disponible avec la voix américaine masculine

➢ Modifier les règles phonétiques par défaut (e.g : noms propres, acronymes, etc...).

20

www.unknowns.fr

● Dialog○ Permet de créer des arbres de décisions,○ Configuration XML des étapes de l’arbre

➢ Je liste mes questions / interactions avec l’utilisateur,

➢ Pour chaque questions, nous définissons la règle de validation de la réponse (e.g : un de mes téléphones est mentionné, le texte contient, ...),

➢ Je décide vers quoi je renvoie en cas de bonne réponse et de mauvaise réponse (loop back, ou autre question/interaction).

○ Pas si facile à mettre en place mais peut être très puissant,○ Pas d’intelligence ou de reconnaissance du langage naturel (c’est un service de ping-pong).

Cas 1 : Pour aller plus loin 2/2

21

www.unknowns.fr

Cas 2 : Redirection du Support Client

22

www.unknowns.fr

Cas 2 : Redirection Support Client

Principe :

Je souhaite que les demandes de support faites en ligne soient automatiquement redirigées vers le bon département, et qu’une priorisation des demandes soit faite en fonction du ton des ces dernières.

23

www.unknowns.fr

Entrées / Sorties Analyse Structurelle Analyse Sémantique

24

Cas 2 : Redirection Support Client

Personality InsightRelationship ExtractionText to Speech

Speech to Text

Language Detection

Relation Extraction

Entity Extraction

Keyword Extraction

Text Extraction

Authors Extraction

Tone Analyser

Concept Insight

Sentiment Analysis

Emotion Analysis

Taxonomy

Concept Tagging

Language Detection

UtilitairesAnalyse d’images

DialogFace Detection

Retrieve & Rank

Document Conversion

Date Extraction

Publication Date

Microformat Parsing

News API

Natural Language Classifier

Image Tagging

www.unknowns.fr

Cas 2 : Redirection Support Client

25

Le service “Natural Language Classifier” permet d’apprendre, à partir des données d’apprentissage, à classer des textes dans l’une des catégories prédéfinies.

Il est “entraîné” à partir des données de l’entreprise, transmises sous la forme d’un fichier Excel à 2 colonnes : le texte et la catégorie de ce texte.

Plus le nombre de données d’apprentissage est important, plus le service classera correctement les nouveaux textes.

Dans notre exemple, les catégories correspondent aux différents départements du Support Client (vente, légal, technique), et les données d’apprentissage sont les demandes déjà traitées + le département les ayant traitées.

1/5

Client Natural Language Classifier

Emotion AnalysisSentiment Analysis

Données de l’entreprise

Opérateurs

www.unknowns.fr

Cas 2 : Redirection Support Client

26

Une fois le service entraîné, il est capable de prédire la catégorie pour un nouveau texte.

Concrètement, il renverra pour chacune des catégories prédéfinies (les mêmes que pour l’apprentissage), la probabilité que le texte appartienne à cette catégorie. Donc la probabilité la plus élevée correspond à la catégorie la plus susceptible d'être la bonne.

Dans notre exemple, chaque nouvelle demande de support est envoyée au service pour prédire quelle département est le plus susceptible d'être concerné.

2/5

Client Natural Language Classifier

Emotion AnalysisSentiment Analysis

Données de l’entreprise

Opérateurs

www.unknowns.fr

Cas 2 : Redirection Support Client

27

Une fois le département prédit, il est possible de prioriser la demande selon le ton et le sentiment utilisé par le client qui a émit la demande.

Deux services sont utilisables :1/ Le service “Sentiment Analysis” indiquera pour chaque phrase le ton de la demande. Est-ce une phrase positive, neutre ou négative ? 2/ Le service “Emotion Analysis” indiquera l’émotion principale des propos, parmi les 5 suivantes : Colère, Joie, Dégoût, Peur, Tristesse.

Dans notre exemple, chaque nouvelle demande sera analysée dans le but de prioriser celles dont le contexte est négatif, et/ou qui seront identifiées comme véhiculant la colère ou la peur.

3/5

Client Natural Language Classifier

Emotion AnalysisSentiment Analysis

Données de l’entreprise

Opérateurs

www.unknowns.fr

Cas 2 : Redirection Support Client

28

Les demandes sont alors transmises de manière qualifiées et priorisées aux opérateurs qui seront en mesure de répondre aux clients.

4/5

Client Natural Language Classifier

Emotion AnalysisSentiment Analysis

Données de l’entreprise

Opérateurs

www.unknowns.fr

Cas 2 : Redirection Support Client

29

Enfin, on peut imaginer que le système apprenne de ses erreurs en réinjectant les demandes mal qualifiées dans le service “Natural Langage Classifier”, avec la bonne catégories (donc ici le bon département).

5/5

Client Natural Language Classifier

Emotion AnalysisSentiment Analysis

Données de l’entreprise

Opérateurs

www.unknowns.fr

● Natural Language Classifier○ Machine Learning en SaaS gérant le training et la prédiction, basés sur du texte, ○ Pour le training :

➢ se fait pour un problème précis : ■ les symptômes d’une tumeur la rendent bénigne (1), sérieuse (2) ou grave (3) ?

➢ attend des exemples pour chaque catégories■ j’envoie des diagnostics en précisant pour chacun si la tumeur était bénigne, sérieuse ou mortelle

○ Pour la prédiction :➢ Il renverra pour un nouveau diagnostic la probabilité de chacune des categories :

■ probabilité de ce diagnostic pour une tumeur bénigne (1), serieuse (2) et grave (3)■ la plus élevée des 3 étant évidemment la plus probable

Cas 2 : Pour aller plus loin 1/2

30

www.unknowns.fr

● Sentiment Analysis○ Analyse le sentiment dans les phrases d’un texte, d’une URL ou d’un bloc HTML,○ L’analyse est faite et retournée phrase par phrase,○ Le sentiment est un score variant de -1 à +1 (-1 négatif, 0 neutre et +1 positif),○ e.g : Mike attacked Molly (score proche de -1 donc la phrase est négative).

● Emotion Analysis○ Analyse les émotions dans les phrases d’un texte, d’une URL ou d’un bloc HTML,○ L’analyse est faite et retournée phrase par phrase,

○ 5 émotions sont retournées sous la forme d’un score (la colère, la joie, le dégout, la peur et la tristesse).

Cas 2 : Pour aller plus loin 2/2

31

www.unknowns.fr

Cas 3 : Recherche en mémoire

32

www.unknowns.fr

Cas 3 : Recherche en mémoire

Principe :

Je suis un constructeur automobile et je souhaite mettre en place un système de recherche dans mes manuels de véhicules. L'idée est que l’utilisateur fasse sa demande en langage naturel, et que le système puisse retrouver la portion du manuel qui correspondant a sa question. Il n’a donc pas à rechercher ou à lire tout le manuel.

Cela évite la rédaction d’une FAQ, qui ne ciblerait pas forcement toutes les questions.

33

www.unknowns.fr

Entrées / Sorties Analyse Structurelle Analyse Sémantique

34

Cas 3 : Recherche en mémoire

Personality InsightRelationship ExtractionText to Speech

Speech to Text

Language Detection

Relation Extraction

Entity Extraction

Keyword Extraction

Text Extraction

Authors Extraction

Tone Analyser

Concept Insight

Sentiment Analysis

Emotion Analysis

Taxonomy

Concept Tagging

Language Detection

UtilitairesAnalyse d’images

DialogFace Detection

Retrieve & Rank

Document Conversion

Date Extraction

Publication Date

Microformat Parsing

News API

Natural Language Classifier

Image Tagging

www.unknowns.fr

Cas 3 : Recherche en mémoire

35

Pour créer une recherche en mémoire, il faut d’abord créer la “mémoire”. Pour cela nous allons utiliser le service “Retrieve & Rank”. Ce service est complètement basé sur le moteur d’indexation SolR.

Un moteur d’indexation permet de “référencer” un ensemble de documents selon des “index”. On peut comparer cela au référencement des mots dans un dictionnaire. Chaque lettre de l’alphabet est donc un index, ce qui facilite grandement la recherche (et évite de lire tous les contenus). Un document peut bien sûr être rattaché à plusieurs index.

Dans notre exemple, l'idée est de référencer toutes les pages des manuels, chapitre par chapitre. Les index sont multiples donc les type de problème, les éléments du véhicule, etc….

1/6

Client

Entity Extraction Retrieve & Rank

Taxonomy

Données de l’entreprise

Relation ExtractionEntity Extraction

www.unknowns.fr

Cas 3 : Recherche en mémoire

36

Le client pose alors sa question ou sa demande en langage naturel. Il est alors possible d’utiliser le service “Entity Extraction” et “Relation Extraction” pour analyser la question/demande de l’utilisateur.

Ces 2 services permettent de structurer un texte selon, respectivement, ses entités (personnes, objets, lieux) et leurs relations sujet-verbe-complément. Il est donc plus facile de comprendre le sens du texte par la programmation.

Dans notre exemple, le client va donc effectuer sa recherche en langage naturel, dont nous allons extraire les entités dont il parle (roue, panne, essence, etc...). Nous essaierons ensuite de retrouver ces entités au sein des contenus du manuel.

2/6

Client

Entity Extraction Retrieve & Rank

Taxonomy

Données de l’entreprise

Relation ExtractionEntity Extraction

www.unknowns.fr

Cas 3 : Recherche en mémoire

37

Le service Retrieve & Rank permet d’effectuer une recherche par mots-clés parmi tous les documents précédemment référencés. Ce qui va nous permettre d’extraire les documents pertinents correspondants à la demande du client.

Dans notre exemple, nous obtiendrons l’ensemble des chapitres correspondants à la recherche du client. Il faut maintenant “lire” et “comprendre” ces chapitres pour trouver la ou les réponses les plus pertinentes.

3/6

Client

Entity Extraction Retrieve & Rank

Taxonomy

Données de l’entreprise

Relation ExtractionEntity Extraction

www.unknowns.fr

Cas 3 : Recherche en mémoire

38

Ensuite, pour mieux identifier les documents correspondant à la recherche, nous pouvons utiliser le service “Taxonomy”. Ce service permet d’analyser le texte afin d’en extraire les grandes catégories abordées dans le texte (il existe environ 1000 catégories sur plusieurs niveaux de précision).

Dans notre exemple, nous pourrons identifier les articles parlant réellement de ce que nous cherchons, comme par exemple, un élément de la voiture, un type de panne.

4/6

Client

Entity Extraction Retrieve & Rank

Taxonomy

Données de l’entreprise

Relation ExtractionEntity Extraction

www.unknowns.fr

Cas 3 : Recherche en mémoire

39

Enfin, pour chaque document identifié, nous pouvons en extraire les entités et relations entre ces entités.

L’idée est ensuite de trouver (ou non) une correspondance entre ce qui a été détecté dans la question et dans les contenus extraits, afin de trouver les phrases qui permettraient de répondre à la question.

Ces 2 services font référence au contexte d’origine de l’entité et/ou la relation, ce qui permet de renvoyer les portions de contenus qui répondent à la demande.

Dans notre exemple, nous avons donc un série de chapitre correspondant précisément a la demande du client, mais nous souhaitons aller plus loin en identifiant les portions du texte qui en parle.

5/6

Client

Entity Extraction Retrieve & Rank

Taxonomy

Données de l’entreprise

Relation ExtractionEntity Extraction

www.unknowns.fr

Cas 3 : Recherche en mémoire

40

Le service renvoie les phrases extraites des contenus identifiés comme répondant à la question.

Le client n’aura donc à lire que les paragraphes qui correspondent exactement a sa demande.

Bien sûr dans notre exemple, la qualité et la pertinence des réponses va entièrement dépendre de la qualité/précision dans la recherche des correspondances au sein du texte.

6/6

Client

Entity Extraction Retrieve & Rank

Taxonomy

Données de l’entreprise

Relation ExtractionEntity Extraction

www.unknowns.fr

● Retrieve and Rank○ Moteur d’indexation en SaaS, basé sur Apache SolR. Plus d’information sur SolR ici.

● Taxonomy○ Identification de catégories de sujets d’un texte, d’une URL ou d’un bloc HTML,○ Il existe environ 1000 catégories sur plusieurs niveaux (liste des catégories ici)

➢ e.g : Food and drink → non alcoholic beverages➢ e.g : Food and drink → alcoholic beverages➢ Disease → (toutes les maladies sont listées)

○ Chaque catégorie est associée à un score de pertinence➢ e.g : un article sur les smarphones mentionnant la caméra aura 3 catégories détectées :

■ /technology and computing/consumer electronics/telephones/mobile phones/smart phones → 83%■ /technology and computing → 65%■ /technology and computing/consumer electronics/camera and photo equipment/cameras and camcorders/cameras →

28%

○ Uniquement en anglais pour le moment.

Cas 3 : Pour aller plus loin 1/3

41

www.unknowns.fr

● Entity Extraction○ Repère et map les entités d’un texte brute, URL ou bloc HTML, dans 8 langues dont le français,

○ Les entités sont typées (e.g : personne, entreprise, ville, drogue, maladie, etc…) et il existe environ 50 types et 1000 sous-types,

○ Les entités répétées et les pronoms sont rattachés à leur entité principale (on peut donc connaître la fréquence des mentions),

○ Données additionnelles provenant d’APIs externes (US Census, DBpedia, CIA Factbook, etc…),

○ Gestion des ambiguïtés automatique si possible (e.g : il dissocie le chanteur Michael Jackson du joueur de basket),

○ Intégration de l’analyse des sentiments pour savoir si l’entité est mentionnée dans un contexte positif, négatif ou neutre (uniquement en anglais),

○ e.g : “Ugly Bob attacked beautiful Susan” → renvoie Bob et Susan comme étant des personnes et dans un contexte négatif (contexte de la phrase complète),

○ MAIS ATTENTION, il ne fait pas d’analyse du texte dans son ensemble.

Cas 3 : Pour aller plus loin 2/3

42

www.unknowns.fr

● Relation Extraction○ Extrait une relation sujet-verbe-complément à partir d’un texte, d’une URL ou d’un bloc HTML,○ Le sujet n’est pas forcément l’entité, ○ e.g : “Ugly Bob attacked beautiful Susan”

➢ Ugly Bob → Negatif➢ Beautiful Susan → Positif➢ Beautiful Susan pour le sujet (ugly bob) → Négatif (l’attaque)

○ “Ugly bob didn’t attack beautiful Susan” → Relation qualifiée en tant que négative, ○ Qualification du verbe de la relation : infinitif, temps, négation, ○ Possibilité d’obtenir en plus les types d’entités (avec le service d’entity extraction), ○ Uniquement disponible en anglais et espagnol.

Cas 3 : Pour aller plus loin 3/3

43

www.unknowns.fr

Cas 4 : Détecteur de goûts

44

www.unknowns.fr

Cas 4 : Détecteur de goûts

Principe :

Je souhaite proposer un service personnalisé à mes utilisateurs en leur demandant leurs goûts de manière amusante, en choisissant des photos et des citations.

Exemple d’un sélecteur de voyage : https://instatrip.mybluemix.net

45

www.unknowns.fr

Entrées / Sorties Analyse Structurelle Analyse Sémantique

46

Cas 4 : Détecteur de goûts

Personality InsightRelationship ExtractionText to Speech

Speech to Text

Language Detection

Relation Extraction

Entity Extraction

Keyword Extraction

Text Extraction

Authors Extraction

Tone Analyser

Concept Insight

Sentiment Analysis

Emotion Analysis

Taxonomy

Concept Tagging

Language Detection

UtilitairesAnalyse d’images

DialogFace Detection

Retrieve & Rank

Document Conversion

Date Extraction

Publication Date

Microformat Parsing

News API

Natural Language Classifier

Image Tagging

www.unknowns.fr

Cas 4 : Détecteur de goûts

47

L’utilisateur sélectionne des séries d’images et/ou de citations, choisies au hasard dans une banque d’images (Flickr, pinterest, etc...).

1/3

Concept Tagging

Client

Retrieve & Rank

Image Tagging

www.unknowns.fr

Cas 4 : Détecteur de goûts

48

Chaque image est envoyée au service “Image Tagging”. Chaque citation est envoyée au service “Concept Tagging”.Ces deux services renvoient la liste des concepts détectés dans ces contenus.

Un concept est un mot-clé qui permet de décrire ce que contient l’image ou le texte de la manière dont le ferait un humain.Par exemple, une photo de skieurs renverra les concepts : ski, neige, montagne, sport.

Les concepts qui ressortent correspondent donc aux goûts de l’utilisateur.

Note : Le service “Image Tagging” ne tombe pas dans les fails de reconnaissance de Google. http://diply.com/diply-news/google-image-recognition-algorithm-identifies-black-person-people-gorillas-fail/147344

2/3

Concept Tagging

Client

Retrieve & Rank

Image Tagging

www.unknowns.fr

Cas 4 : Détecteur de goûts

49

Une fois ces goûts extraits sous forme de concept, il suffit d’utiliser le service “Retrieve & Rank” pour effectuer une recherche parmi nos contenus.

L’utilisateur aura alors une sélection des contenus basés sur ses goûts.

Dans notre exemple, les contenus seront les destinations de voyage.

3/3

Concept Tagging

Client

Retrieve & Rank

Image Tagging

www.unknowns.fr

● Retrieve and Rank○ Moteur d’indexation en SaaS, basé sur Apache SolR. Plus d’information sur SolR ici.

● Concept Tagging○ Permet d’identifier les concepts qui tournent autour d’un texte, d’une url ou d’un bloc HTML,○ Un concept est un sujet abordé dans la source (e.g : téléphone, iPhone, technology),

○ Analyse le texte et extrait les concepts de la même manière qu’un humain, en faisant abstraction des mots-clés non pertinents,

○ Chaque concept est associé à un score pertinence pour le texte en question,

○ Pour chaque concept, il retourne des données additionnelles provenant d’APIs externes (US Census, DBpedia, CIA Factbook, etc…),

○ Uniquement disponible en anglais et espagnol.

Cas 4 : Pour aller plus loin 1/2

50

www.unknowns.fr

● Image Tagging *○ Retourne une liste de mots-clé associés aux contenus de l’image, ou à l’image dans son ensemble,○ Transcrit les textes présents dans l’image,

○ Il est probable qu’un objet ait plusieurs mots-clés associés (e.g : le colisé de Rome sera a la fois un “building” et “colosseum”),

○ Pour chaque contenu, il est mentionné :➢ le mot-clé détecté ➢ sa position dans l’image➢ le score de confiance ➢ le nombre d’occurences

○ Bonne nouvelle ! Il ne tombe pas dans les fails de reconnaissance de Google !○ http://vision.alchemy.ai/

Cas 4 : Pour aller plus loin 2/2

51

www.unknowns.fr 52

Quelles limites ?

● Complexité du paiement à la consommation ○ le mode de calcul diffère selon les services de l’API,○ l’évaluation des coûts est complexe, surtout lorsque l’on commence à combiner les services, ○ les coûts peuvent vite devenir significatifs si l’utilisation est intense.

● L’envoi de ses données sur les plate-formes d’IBM.

www.unknowns.fr 53

Et pour vous ?

Et vous, y a-t-il des process/tâches dans votre métier qui pourraient être automatisés en utilisant des services de Watson ?

Existe-t-il une autre manière de repenser votre métier en utilisant des services de Watson ?

www.unknowns.fr 54

Maintenant que vous avez les questions, venez nous demander les réponses !

unknowns - conseil en innovation17 rue André del Sarte, 75018 Paris

[email protected]