CH711033A2 - Moteur de recherche relationnelle. - Google Patents

Moteur de recherche relationnelle. Download PDF

Info

Publication number
CH711033A2
CH711033A2 CH00606/15A CH6062015A CH711033A2 CH 711033 A2 CH711033 A2 CH 711033A2 CH 00606/15 A CH00606/15 A CH 00606/15A CH 6062015 A CH6062015 A CH 6062015A CH 711033 A2 CH711033 A2 CH 711033A2
Authority
CH
Switzerland
Prior art keywords
documents
search
tuples
user
relationship
Prior art date
Application number
CH00606/15A
Other languages
English (en)
Other versions
CH711033B1 (fr
Inventor
Van Kommer Robert
Original Assignee
Kiodia Sàrl
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kiodia Sàrl filed Critical Kiodia Sàrl
Priority to CH00606/15A priority Critical patent/CH711033B1/fr
Publication of CH711033A2 publication Critical patent/CH711033A2/fr
Publication of CH711033B1 publication Critical patent/CH711033B1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2428Query predicate definition using graphical user interfaces, including menus and forms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

L’invention concerne un procédé itératif d’apprentissage d’un moteur de recherche relationnelle où les résultats cherchés (c) sont des n-uplets de documents extraits d’un espace de recherche (a) liés par au moins une relation. La relation recherchée est exprimée par l’utilisateur en langage naturel (b). A l’aide d’une interface homme-machine et d’un algorithme itératif d’apprentissage (e), le système apprend à mieux modéliser la ou les relations recherchées (c) et ainsi améliore la pertinence des résultats affichés (d).

Description

DOMAINE TECHNIQUE
[0001] L’invention concerne un moteur de recherche relationnelle avec une interface homme-machine intelligente qui permet à un utilisateur de chercher des n-uplets composés de n documents liés par une ou plusieurs relations désirées.
ETAT DE LA TECHNIQUE
[0002] Les systèmes d’information et en particulier les moteurs de recherche offrent la possibilité de chercher des concepts avec une séquence de mots-clés, avec des formulations en langage naturel (p.ex. une question) et parfois avec des exemples de documents (p.ex. une image). Ils permettent aussi de personnaliser la recherche en fonction de l’intérêt des utilisateurs. Ces moteurs de recherche indexent les données dans un premier temps et constituent un espace de recherche optimisé pour retrouver les documents avec p.ex. la méthode d’un index inversé. Les moteurs de recherche permettent de rechercher toutes les pages web ou d’autres types de documents qui contiennent les mots-clés ou qui possèdent une similarité avec les concepts de recherche définis par l’utilisateur.
[0003] Les documents cherchés peuvent être de type texte, image ou d’un autre type. Certains moteurs offrent la possibilité de chercher une correspondance de similarité avec un exemple de document existant, il suffit alors d’indiquer le document comme étant la référence et le moteur recherchera d’autres documents qui possèdent une correspondance de similarité avec cette référence.
[0004] Les moteurs de recherche offrent typiquement la possibilité d’effectuer une recherche par correspondance caractérisée par une métrique de similarité. Les caractéristiques de cette métrique interne sont définies par le moteur de recherche et l’utilisateur ne peut pas la redéfinir librement. Les résultats de la recherche sont ensuite listés et présentés par ordre de pertinence en fonction d’un ensemble d’autres métriques et d’options de filtrage.
[0005] De nombreuses solutions existent déjà dans l’état de la technique pour effectuer une recherche qui implique plusieurs documents à la fois.
[0006] US 2011 040 749 décrit un moteur de recherche capable d’effectuer une recherche d’un document dans plusieurs domaines à la fois. Une liste de résultats est retournée avec des n-uplets de documents qui possèdent les meilleurs scores combinés.
[0007] US 2014 214 711 décrit un moteur de recherche entre deux sets de documents: des offres d’emploi et des profils de candidature, dans lesquels une correspondance de similarité est cherchée et améliorée en modifiant la pondération et le set des mots-clés et, ceci, en fonction des données trouvées.
[0008] US 2013 024 445 décrit un moteur de recherche universel capable de rechercher différents types de document, des textes, des images, etc. qui sont appelés des catégories, les documents trouvés correspondent à la recherche de l’utilisateur et possèdent donc une similarité de correspondance entre eux.
[0009] US 2008 0 147 633 décrit un moteur de recherche qui associe un profil d’utilisateur avec les résultats de la recherche. Si l’on considère le profil d’un utilisateur comme un document et les résultats de la recherche comme une liste de documents, le système cherche une correspondance de similarité entre les deux sets de documents.
[0010] La plupart de ces solutions connues se basent donc avant tout sur une recherche de correspondance de similarité prédéfinie ou adaptée par le système en fonction des données existantes. Un défaut de ces solutions connues est qu’elles n’offrent pas la possibilité de chercher une ou plusieurs relations désirées par l’utilisateur entre un n-uplet de documents avec une interface homme-machine intelligente.
[0011] Un autre défaut des solutions connues est qu’il n’existe pas de moyen pratique pour trouver les n-uplets de documents liés par la ou les relations désirées lorsque les documents sont de types différents (p.ex.: un document de type texte et un document de type image).
[0012] Il serait donc avantageux que l’utilisateur soit à même de définir en langage naturel la ou les relations qu’il désire avoir entre les n documents d’un n-uplet, ou entre les concepts sous-jacents de ceux-ci. Il serait avantageux également que l’utilisateur ait la possibilité de définir les différents types de documents qui composent les n-uplets.
[0013] Pour remédier aux inconvénients susmentionnés de l’art antérieur, tout en conservant le champ d’application le plus large possible, un certain nombre d’autres problèmes doivent également être résolus. En effet, il arrive fréquemment que les relations désirées ne soient pas faciles à exprimer avec des mots; p.ex., comment exprimer l’expressivité émotionnelle d’une relation entre une musique et une image? De plus, comme il s’agit d’une relation perçue par un utilisateur particulier, cette relation subjective n’est à priori pas pertinente pour un autre utilisateur.
[0014] Dans d’autres cas d’usage, les paramètres et les concepts qui caractérisent une relation sont présents dans des métadonnées additionnelles ou dans celles qui doivent être extraites des documents. Sans avoir accès à ces informations supplémentaires, le moteur de recherche ne peut pas produire de résultats pertinents.
[0015] Dans d’autres cas, les concepts pertinents qui caractérisent une relation perçue ou de nature sémantique ne sont pas disponibles à priori dans l’espace de recherche, ceux-ci sont alors à découvrir par le moteur de recherche grâce aux interactions avec l’utilisateur. C’est typiquement le cas lorsqu’une relation est de nature subjective.
[0016] Dans d’autres cas, une relation comporte des métriques relationnelles, p.ex. la spécification d’une date.
[0017] Dans d’autres cas d’usage, la relation désirée peut porter sur un sous-ensemble de concepts ou sur des sous-espaces structurels d’un document, comme par exemple, un ou plusieurs topics particuliers d’un texte, un ou plusieurs objets graphiques spécifiques d’une image, un ou plusieurs passages d’un morceau de musique. Dans l’état de la technologie actuel, les utilisateurs n’ont pas les moyens d’exprimer une recherche basée sur une relation désirée de ce type. De plus, l’expression des caractéristiques de cette relation doit nécessairement être exprimée par l’utilisateur pour pouvoir effectuer une telle recherche relationnelle, en effet, le moteur de recherche ne peut pas connaître cette information à priori.
[0018] Dans l’état de la technologie, il n’existe pas de moteur de recherche relationnelle avec une interface homme-machine intelligente capable de chercher des n-uplets qui sont composés de n documents liés par une relation désirée par l’utilisateur.
[0019] Sans avoir la possibilité de chercher des n-uplets relationnels pertinents ou d’être automatiquement informé de leur existence, les utilisateurs finissent par être submergés par un flux continu d’information et, faute d’avoir les moyens adéquats à disposition, ils renoncent à toutes formes de recherches relationnelles.
BREF RESUME DE L’INVENTION
[0020] Un but de la présente invention est de remédier aux inconvénients de l’art antérieur qui viennent d’être mentionnés en fournissant un moteur de recherche relationnelle qui permet à un utilisateur de trouver ou d’être notifié de l’existence de n-uplets composés de n documents liés par au moins une relation désirée par l’utilisateur. La présente invention atteint ce but en fournissant d’une part un procédé itératif d’apprentissage supervisé ou semi-supervisé conforme à la revendication 1 annexée, et d’autre part, un moteur de recherche agencé pour implémenter le procédé de l’invention.
[0021] Définition: Le terme de document est utilisé ici de manière générique, l’expression «document» désigne toute représentation numérique qu’un ordinateur peut stocker sous la forme de données. L’expression «document» désigne notamment aussi un dossier composé d’un ensemble de fichiers ou une agrégation d’un ensemble quelconque d’autres documents.
[0022] Définition: Un concept est une régularité mesurable ou perçue qui caractérise un ensemble d’entités ou d’abstractions. Un document est typiquement composé d’un ensemble de concepts et de concepts sous-jacents.
[0023] Définition: Une relation entre un couple de documents et sa perception par un utilisateur particulier est caractérisée par un ensemble de correspondances de nature objective et subjective entre des concepts implicites ou explicites. Une relation peut parfaitement s’exprimer par rapport à la présence d’un concept mais aussi par rapport à son absence. Une relation peut aussi représenter une métrique quelconque entre des entités mesurables.
[0024] Définition: Un n-uplet est un set ordre de n documents avec n plus grand ou égal à 2. Lorsque n = 2, on parle d’un couple de documents. Les n documents sont liés par une ou plusieurs relations et le n-uplet est associé à au moins autant d’étiquettes qu’il y a de relations.
[0025] Définition: une étiquette permet d’exprimer une appréciation de la pertinence d’un n-uplet, telle que perçue par l’utilisateur ou estimée par le système, du point de vue de la relation entre un couple de documents, ou d’une des relations, qui lie les documents du n-uplet. Dans certains cas d’utilisation, une relation peut être caractérisée par une pluralité d’étiquettes.
[0026] Définition: Une interface homme-machine intelligente (ou autoapprenante) est une interface homme-machine à l’aide de laquelle un utilisateur ou un ensemble d’utilisateurs peuvent faire apprendre à un système informatique (la machine) à mieux interagir, à mieux comprendre leurs intentions, voire même, à anticiper leurs requêtes tout en interagissant avec elle. Dans le contexte de l’invention, l’interface homme-machine intelligente regroupe typiquement, le traitement automatique du langage naturel de l’étape (b), les procédés itératifs d’apprentissage de l’étape (e), et des étapes (c, d, e) et l’apprentissage par rétro-pertinence de la sous-étape (d1). Le résultat des apprentissages est caractérisé par l’adaptation d’un modèle informatique composé d’entrées et de sorties, d’un graphe de fonctions, de données, d’opérateurs et de variables associées.
[0027] L’invention permet à l’utilisateur de faire apprendre au moteur de recherche les relations désirées au moyen d’une interface homme-machine intelligente. Lorsqu’une relation est bien apprise par le système, celui-ci peut alors efficacement chercher d’autres n-uplets correspondants et pertinents.
[0028] L’apprentissage d’une relation est réalisé par un ensemble d’algorithmes de traitement et d’apprentissage automatique. Durant une session d’utilisation, un procédé itératif d’apprentissage supervisé ou semi-supervisé est mis en œuvre en fonction des résultats trouvés et des interactions de l’utilisateur.
[0029] Conformément à un mode de mise en œuvre avantageux du procédé de l’invention, certains modèles d’apprentissage automatique, la structure du dialogue et les stratégies de composition d’algorithmes sont optimisées par le système en exploitant les données statistiques des interactions sur un ensemble d’utilisateurs.
[0030] En outre, conformément à un autre mode de mise en œuvre avantageux du procédé de l’invention, une fois qu’une relation est comprise et sauvegardée par le système, l’utilisateur pourra, s’il le désire, être spontanément informé de toutes nouvelles apparitions de documents qui sont liés par cette ou ces relations. Dans ce cas, le système prend de lui-même l’initiative d’informer l’utilisateur. Typiquement, si les documents d’un n-uplet sont liés par la ou les relations désirées, l’utilisateur est instantanément informé par un changement dans la visualisation durant une session d’interaction en cours ou simplement par la notification d’un message.
BREVE DESCRIPTION DES FIGURES
[0031] L’invention va être exposée de manière plus détaillée à l’aide de plusieurs exemples de réalisation présentés avec l’aide des dessins suivants: <tb>La fig. 1<SEP>représente un diagramme de flux illustrant un exemple du procédé de l’invention. <tb>La fig. 2<SEP>illustre l’exemple d’un couple de documents avec une relation entre les deux documents. <tb>La fig. 3<SEP>illustre un exemple d’un moteur de recherche relationnelle à apprentissage itératif.
DESCRIPTION DETAILLEE DE L’INVENTION
[0032] Les caractéristiques décrites dans la revendication 1 permettent à un moteur de recherche relationnelle de trouver des n-uplets de n documents qui possèdent entre eux une ou plusieurs relations désirées par l’utilisateur. Une fois que la ou les relations sont exprimées et modélisées, des n-uplets correspondants peuvent être cherchés dans l’espace de recherche.
[0033] L’invention comporte une première étape (a) de création de l’espace de recherche. Cette espace permet au moteur de recherche relationnelle d’effectuer le traitement, le stockage et la recherche des n-uplets.
[0034] Le moteur de recherche relationnelle a également un mode de réalisation où il traite l’espace de recherche des documents sous la forme d’un flux continu, en mode streaming.
[0035] Dans certains cas d’usage, les documents sont stockés dans des systèmes informatiques qui nécessitent des droits d’accès particuliers, l’utilisateur peut fournir ces droits d’accès au système pour que celui-ci puisse accéder aux documents. Par exemple, certains des documents cherchés peuvent faire partie d’un site de partage de documents ou faire partie des données personnelles d’un utilisateur, dans ce cas, celui-ci peut, s’il le désire, accorder les droits d’accès au système de recherche. Ces connexions sont traitées par des connecteurs et ceux-ci existent pour les principaux systèmes existants.
[0036] En fonction des besoins, l’espace de recherche peut être partitionné en sets de documents. Lorsque les documents sont partitionnés en des sets différents, ceux-ci ne contiennent pas nécessairement un nombre identique de documents. Par exemple, Il est possible que dans un des sets de documents, il n’y ait qu’un document.
[0037] Les documents ne définissent pas forcément des contenus informatiques ou des médias, ils représentent aussi des personnes ou la modélisation numérique d’une personne, comme par exemple: les types de musique qu’elle préfère.
[0038] Dans certains cas d’usage, les sets de documents ne sont pas disponibles d’office dans l’espace de recherche, pour faciliter leur acquisition, [’Application programming interface (API) d’un moteur de recherche classique est utilisé. L’utilisateur doit alors définir les critères de recherche qui permettent de collecter les documents et, par la suite, le moteur de recherche classique fournit les Uniform Resource Locators (URL) des documents, ceux-ci et leur contenu sont alors ingérés automatiquement dans l’espace de recherche du système par l’usage de connecteurs logiciels spécifiques.
[0039] L’espace de recherche stocke ou traite les documents avec un format interne spécifique et optimisé pour la recherche.
[0040] Les documents sont traités par l’ensemble des algorithmes ad hoc de prétraitement de l’information. Parfois, les documents sont produits dans une autre langue et doivent être traduits.
[0041] Les documents qui composent un n-uplet peuvent avoir des types différents, comme dans les exemples de couples de documents suivants: une image – du texte; une personne – un morceau de musique. Le système convertit tous les types de documents externes dans un format et des structures internes pour réaliser, entre autre, l’enrichissement sémantique du contenu, l’extraction de métadonnées et l’addition de métadonnées, la modélisation interne, et pour offrir plusieurs méthodes d’accès vectorisés et intra-media, etc.
[0042] Les accès intra-media permettent au moteur de recherche d’avoir un accès par introspection. Cette méthode est typiquement utilisée par le moteur de recherche pour accéder aux contenus internes des documents par leurs éléments ou par leurs structures internes. Dans certains cas, une description spécifique est utilisée, comme par exemple, le langage Synchronized Multimedia Intégration Language (SMIL).
[0043] La représentation interne des documents est typiquement extraite suivant les médias avec différents algorithmes, comme par exemple avec un algorithme de reconnaissance automatique de la parole, un algorithme de reconnaissance d’image, un algorithme de reconnaissance optique de caractères, ou avec une extraction automatique de graphes lorsque, par exemple, le document est une composition d’objets ou de topics. Pour l’extraction des métriques particulières, des algorithmes ad hoc sont utilisés.
[0044] De manière générale, les graphes permettent l’établissement de liens pour augmenter les connaissances de la représentation interne des documents. Des graphes de connaissances et des bases de connaissances sont typiquement utilisés pour enrichir les représentations internes des documents. Un exemple d’extraction et de représentation sous la forme de Resource Description Framework (RDF) est décrit dans l’article suivant: Knowledge Vault: A Web-Scale Approach to Probabilistic Knowledge Fusion, by Kevin Murphy et al. In KDD 2014).
[0045] La structure interne et les méthodes d’accès des documents sont déterminées, en partie, par les paramètres suivants: le type des documents recherchés, la taille de l’espace recherche résultant, la vitesse avec laquelle les documents évoluent, et le temps de réponse imposé par l’interface utilisateur.
[0046] Lorsque la taille de l’espace de recherche est grande (> million de documents), une première approche, bien connue dans l’état de la technique, utilise des Bag-of-Words (BoW) comme représentation vectorielle enrichie avec un marquage sémantique extrait d’une source externe de connaissances. Finalement, les termes des BoW sont pondérés pour améliorer les performances.
[0047] Dans un espace de documents vectorisés de type BoW, une recherche relationnelle s’effectue typiquement en deux phases. Pour chacun des documents de la relation cherchée, le moteur trouve d’abord les documents pertinents puis filtre les n-uplets en fonction de la pertinence de la relation ou des relations entre les documents.
[0048] Suivant les contextes, d’autres approches sont utilisées de préférence: Une approche utilise des graphes, comme par exemple, l’algorithme Graph-based Semi-Supervised Learning. Cette approche s’applique bien à de grandes tailles d’espace de recherche. L’approche suivante est utilisée de préférence lorsque la taille de l’espace de recherche est plus modeste ou est à construire à la volée. Elle consiste à créer un espace sémantique continu des documents par apprentissage automatique, cette technique est connue sous le nom de Paragraph Vector, (cf. Distributed Représentations of Sentences and Documents. Quoc Le and Tomas Mikolov, ICML Beijing 2014)
[0049] Lorsque les documents représentent des médias ou sont de types différents, un apprentissage en profondeur est utilisé de préférence. Cette approche permet d’extraire une représentation interne de plusieurs types de documents différents, comme par exemple: du texte, un signal audio, des images, ou des signaux vidéo.
[0050] Une fois que l’espace de recherche est disponible, l’étape (a) est réalisée, l’invention permet alors à l’utilisateur d’exprimer une relation désirée dans l’étape (b), et de faire comprendre cette relation au moteur de recherche avec l’aide d’un apprentissage itératif réalisé par la suite des étapes (c, d, e).
[0051] Une relation est représentée par le moteur de recherche relationnelle comme des métriques qui imposent des contraintes sur des valeurs mesurables et par des modélisations sémantiques entre les concepts.
[0052] Les contraintes sont extraites par des algorithmes ad hoc et la représentation sémantique est typiquement extraite par un traitement automatique du langage naturel, Natural Language Processing (NLP).
[0053] Dans l’étape (b) du procédé, l’interface homme-machine permet à l’utilisateur d’exprimer en langage naturel une ou plusieurs relations entre des documents avec des types identiques ou différents. Comme par exemple «Cherche une image et un texte qui illustrent la deuxième guerre mondiale!»
[0054] Dans certains cas, l’utilisateur possède déjà un document ou un ensemble de documents qu’il désigne comme étant le premier document du n-uplet. Ensuite, par rapport à ce premier document, il décrit la relation désirée en langage naturel avec le deuxième document du n-uplet. Un exemple de scénario d’usage pourrait être le suivant: dans la sous-étape (b1), l’utilisateur désigne une image d’une maison de campagne, l’utilisateur exprime alors la relation désirée en langage naturel: «Cherche une maison identique mais avec un garage !». L’objectif du moteur de recherche relationnelle est alors d’analyser, de comprendre la requête et ensuite de chercher des images de maison qui correspondent à l’exemple de la maison avec, en plus, un garage.
[0055] Les requêtes en langage naturel et les documents exemples sont traités par les mêmes algorithmes que ceux de l’espace de recherche, ceci pour avoir une structure et un format identique.
[0056] Dans d’autres cas d’usage, il est parfois fastidieux, voire impossible, de décrire en langage naturel une relation subjective perçue qui existe entre un couple de documents et l’utilisateur. Il est peut-être plus simple de donner un ou plusieurs exemples de n-uplets. La sous-étape (b1) permet précisément de donner un ou plusieurs exemples en les désignant ou en les glissant par drag & drop dans l’interface homme-machine du système. Celui-ci utilisera l’apprentissage itératif des étapes (c, d, e) pour comprendre de lui-même quelle est la relation qui lie le couple de documents tout en cherchant de nouveaux n-uplets pertinents.
[0057] La flexibilité de l’interface langage naturel permet à l’utilisateur d’exprimer les relations de type métrique qui nécessitent des algorithmes ad hoc de prétraitement pour l’extraction des contraintes. Les métriques peuvent être d’une nature très différente, elles peuvent être par exemple de nature qualitative, quantitative, temporelle, géographique, financière, etc. Pour traiter une majorité de ces métriques, plus d’une centaine d’algorithmes ad hoc sont nécessaires.
[0058] L’interface homme-machine comporte un ensemble de contrôles qui permettent à l’utilisateur de réinitialiser une relation, d’associer deux ou plusieurs relations, de renommer une relation, de sauvegarder, de retrouver, ou de supprimer une relation. L’utilisateur peut également modifier l’étendue de la compréhension d’une relation, p.ex. en inversant la signification d’une relation, et dans ce cas, les n-uplets trouvés sont ceux qui correspondent le moins possible à la relation exprimée.
[0059] L’utilisateur peut être automatiquement informé, s’il le désire, par une notification du système si une nouvelle relation pertinente est apparue dans l’espace de recherche, par exemple, lors de l’apparition d’un nouveau n-uplet de documents.
[0060] Par la suite, lorsqu’une première recherche est effectuée dans l’étape (c), le système affiche les n-uplets trouvés dans l’étape (d). Chaque n-uplet (10) est visualisé avec une première évaluation algorithmique de la pertinence de ses relations. Celles-ci sont typiquement visualisées d’une manière graphique avec les étiquettes suivantes p.ex.: «pertinent» (14), «indéfini» (15) et «non pertinent» (16).
[0061] Durant cette même étape (d) d’affichage, une sous-étape (d1) d’un algorithmique de rétro-pertinence ajoute, si nécessaire, au moins un n-uplet aux n-uplets trouvés ou remplace un certain nombre de n-uplets trouvés avec des n-uplets choisis par lui-même. L’objectif étant que l’utilisateur attribue de préférence une étiquette d’évaluation à ce ou ces n-uplets. Cette approche d’apprentissage par rétro-pertinence est connue dans la littérature, voir p.ex: la référence (cf. On text-based mining with active leaming and background knowledge using SVM, Catarina Silva and Bernardete Ribeiro, Published online, Springer-Verlag 2006). Elle permet d’augmenter la qualité de l’apprentissage supervisé ou semi-supervisé tout en réduisant le nombre d’itérations et d’interactions nécessaires.
[0062] A la suite de l’étape (d), lorsque les premiers n-uplets sont affichés, l’utilisateur peut avec la boucle d’itération de l’étape (e) aider le système à perfectionner sa compréhension de la ou des relations en indiquant au système les relations les plus pertinents et celles qui ne le sont pas. Avec cette interaction, l’utilisateur adapte les étiquettes des relations des n-uplets. Par exemple, les relations étiquetées comme «pertinent» (14) sont celles qui correspondent à une relation désirée et les relations étiquetées comme «non pertinent» (16) ne correspondent pas à une relation cherchée et ceci du point de vue de l’utilisateur.
[0063] Pour chaque n-uplet, les étiquettes sont typiquement visualisées par des symboles: une étoile pleine (étiquette = pertinent) (14), une étoile hachurée (étiquette = indéfini) (15) et une étoile vide (étiquette = non-pertinent) (16).
[0064] Pour certaines applications, d’autres types d’étiquettes sont utilisées et parfois en plus grand nombre; comme par exemple, un set de mots-clés, où l’appréciation de l’utilisateur s’effectue en sélectionnant un certain nombre de mots-clés pertinents et en désélectionnant d’autres mots-clés non-pertinents. Ces sélections ou désélections sont alors visualisées par une simple mise en évidence graphique de ces mots-clés.
[0065] Les étiquettes peuvent être regroupées au niveau de chaque relation, comme dans la fig. 2 , elles peuvent également être intégrées dans la visualisation du contenu des documents. Suivant le type de document, les étiquettes peuvent être représentées par des phrases et par des mots qui sont mis en évidence dans un texte, avec des zones et des objets graphiques dans le cas d’une image, par des passages musicaux pour un morceau de musique, ou par des séquences vidéo pour un film. Pour identifier les n-uplets les plus pertinents, l’utilisateur sélectionne et désélectionne les étiquettes en interagissant directement avec le contenu des documents.
[0066] L’utilisateur n’a pas l’obligation d’étiqueter tous les n-uplets, s’il ne le fait pas, il existe alors deux sets de relations, celles qui sont étiquetées par l’utilisateur et celles qui sont étiquetées par le système. A chaque interaction avec une étiquette, une boucle d’itération de l’étape (e) est réalisée: le système analyse les n-uplets modifiés dans l’étape (e1), il améliore la modélisation de la relation recherchée dans l’étape (e2) et il visualise les résultats dans l’étape (e3). Plus précisément, durant l’étape (e3) et avec le nouveau modèle enrichi, le système réévalue l’assignation de ses propres étiquettes sur l’ensemble des relations des n-uplets visualisés. Cette évaluation algorithmique des relations étiquetées permet à l’utilisateur d’apprécier et d’ajuster, si nécessaire, les étiquettes sur l’ensemble des relations des n-uplets visualisés.
[0067] Conformément à un mode de mise en œuvre avantageux du procédé de l’invention, lorsque l’utilisateur le désire, il peut relancer une recherche qui tient compte du progrès de la modélisation des relations désirées.
[0068] Différents types d’algorithmes d’apprentissage supervisé ou semi-supervisé peuvent être utilisés. Les algorithmes supervisés permettent d’exploiter la connaissance des n-uplets étiquetés par l’utilisateur et les algorithmes semi-supervisé peuvent aussi exploiter les n-uplets non-étiquetés issus des recherches précédentes et même des n-uplets non-étiquetés présents dans l’espace de recherche.
[0069] Lorsque la quantité des données est suffisante, les algorithmes d’apprentissage semi-supervisé cf. Semi-Supervised Learning (SSL) sont utilisés de préférence.
[0070] Suivant le type de document et le contexte applicatif, certains algorithmes semi-supervisés donnent de meilleurs résultats, par exemple, dans le cas où les documents sont du texte, les Séparateurs à Vaste Marge à apprentissage Transductif (TSVM) sont utilisés et de préférence (cf. Transductive inference for text classification using support vector machines by Joachims T. ICML1999). Dans ce cas, les vecteurs nécessaires à l’apprentissage sont composés de la concaténation des représentations internes des documents du n-uplet avec une cible +1 lorsque le n-uplet est «pertinent» de –1 si le n-uplet est «non pertinent» ou 0 si l’étiquette du vecteur n’est pas connue.
[0071] Lorsque l’algorithme a modélisé une relation pour l’utiliser dans une recherche de n-uplets, les vecteurs évalués par l’algorithme produisent le résultat +1 pour une relation avec une étiquette «pertinent» et –1 pour une relation avec une étiquette «non-pertinent». Dans le cas particulier de l’algorithme TSVM, aucune étiquette «indéfini» n’est produite.
[0072] Une réponse binaire n’est pas toujours souhaitable, comme par exemple dans le cas où il faut déterminer un ordre de pertinence des n-uplets. D’autres algorithmes existent qui fournissent aussi une mesure de confiance comme p.ex. l’algorithme d’apprentissage supervisé de type: Relevanœ Vector Machine (RVM). Celui-ci est à utiliser de préférence dans le cas où une évaluation plus riche est désirée pour une meilleure visualisation des résultats.
[0073] Dans d’autres cas, les données peuvent être analysées sous la forme de graphes, idéalement lorsqu’un graphe peut être automatiquement extrait sur la base des entités présentes dans d’autres contextes informatifs; alors l’algorithme Graph-Based Semi-Supervised Learning sera utilisé de préférence (cf. voir la référence: Graph-based Semi-Supervised Learning, Amarnag Subramanya and Partha Pratim Talukdar, Morgan & Claypool Publishers).
[0074] Suivant le nombre de résultats trouvés par le moteur de recherche relationnelle, ceux-ci seront représentés de manière à mieux communiquer visuellement leur pertinence par rapport à la relation cherchée. Le choix du mode de visualisation est toujours motivé par la qualité de l’interaction proposée pour minimiser le nombre d’interactions nécessaires et par l’efficacité de l’apprentissage automatique de la relation cherchée.
[0075] L’interface homme-machine permet aussi à l’utilisateur de fouiller à loisir les n-uplets trouvés et, individuellement, chaque set de documents qui entre dans la composition d’un n-uplet trouvé.
[0076] La pertinence des n-uplets est typiquement visualisée par un ordre dans une liste, par une mise en évidence graphique dans une espace 2D, par une proximité dans un espace 3D. Dans certains cas, le système va offrir de préférence une interface immersive où l’utilisateur est immergé à l’intérieur de l’espace de visualisation des n-uplets correspondants à sa recherche. Dans ce mode de représentation, des accessoires additionnels sont nécessaires pour permettre cette navigation, comme par exemple un casque de réalité virtuelle ou une salle immersive.
[0077] Le procédé de visualisation comporte typiquement une étape algorithmique dans laquelle les n-uplets sont projetés dans un espace de dimension réduite pour améliorer l’expressivité de la visualisation.
[0078] La visualisation des n-uplets est avantageusement adaptée pour représenter au mieux leur pertinence. Par exemple, lorsqu’un document est commun à plusieurs n-uplets de résultats, ils peuvent être regroupés pour alléger la visualisation. Pour certains modes de réalisation, comme ceux qui traitent des données multimédias, une interface homme-machine adaptée est utilisée.
[0079] La performance des cycles d’apprentissage itératif de la ou des relations est grandement augmentée par la qualité et la richesse de la visualisation, elle permet d’augmenter la qualité de l’interaction et donc d’accélérer la rapidité avec laquelle le moteur de recherche relationnelle comprend les intentions de l’utilisateur et lui délivre les résultats pertinents attendus.
[0080] L’Homme du Métier comprendra que la portée de l’invention n’est pas limitée par à un type particulier d’espace de recherche ou par des structures internes des données particulières, ni par le choix d’un ensemble de métriques, ou par le choix d’un algorithme d’apprentissage particulier.
EXEMPLES DE MODE DE REALISATION DE L’INVENTION
[0081] Des développements profitables découlent de la revendication indépendante dans tous les cas d’applications où les utilisateurs recherchent une relation désirée entre les documents d’un n-uplet.
[0082] Le service informatique d’un moteur de recherche relationnelle est de préférence mis à disposition des utilisateurs en même temps qu’un moteur de recherche classique ou d’un service de questions réponses de type générique. Avec l’aide d’une interface homme-machine de type langage naturel, l’utilisateur peut invoquer tout un ensemble de services d’information d’une manière transparente. Par exemple, une recherche classique d’un moteur de recherche avec une séquence de mots-clés «Restaurants italiens Lausanne», une question factuelle, p.ex.: «Quelle est la deuxième plus grande ville des Pays-Bas ?» ou un des modes de réalisation de l’invention p.ex.: «Trouve-moi une offre d’emploi qui correspond à mes compétences avec un salaire plus élevé !». Le système d’information classifie alors les différentes demandes de l’utilisateur et active l’un des systèmes d’information correspondants au domaine applicatif.
[0083] Lorsque le service de recherche relationnelle est identifié et activé, la requête de l’utilisateur est d’abord classifiée dans un sous-ensemble de catégories de services qui sont spécifiques à un domaine particulier. Ces domaines peuvent être de type: recherche d’une offre d’emploi, recherche immobilière, recherche d’un partenaire, etc.
[0084] Dans le cas, où l’utilisateur formule une demande de type: «Cherche une image et un morceau de musique de Neil Young des années 70 !». C’est le service de recherche relationnelle du domaine des médias qui est activé. L’analyse de la demande est poursuivie en cherchant un couple de documents composé d’une image et d’un morceau de musique. Le couple de documents possède une relation composée de deux liens celui du nom propre (Neil Young) et celui de la métrique temporelle (des années 70).
[0085] Certains modes de réalisation de l’invention exploitent les algorithmes d’apprentissage en profondeur pour pouvoir analyser des types de documents différents et pour extraire une description interne enrichie de ces documents. Des relations entre ces descriptions peuvent ensuite être cherchées efficacement, ce qui permet à l’invention d’être relativement indépendante par rapport aux types de documents à traiter.
[0086] Un premier exemple de mode de réalisation permet de chercher une relation particulière entre un couple de documents de même type. Le contexte applicatif est celui d’une recherche d’emploi où un utilisateur désire être informé automatiquement par de nouvelles opportunités. Il peut alors exprimer sa recherche avec un document exemple: son curriculum vitae et exprimer la relation en langage naturel par rapport à ce premier document, p.ex. «Cherche un travail plus qualifié !». Dans l’exemple de la fig. 1 , le système analyse la relation cherchée dans l’étape (b) et choisit une stratégie de traitement et d’apprentissage adaptée, au fil des cycles d’itérations de recherche et d’apprentissage (c, d, e), l’utilisateur apprend au système à mieux comprendre la relation cherchée. Avec l’aide des algorithmes d’apprentissage, le système modélise progressivement et de manière pondérée l’ensemble des critères de correspondances, le modèle est ensuite stocké par le système. Si par la suite, l’utilisateur veut être notifié automatiquement d’une nouvelle opportunité sur le marché de l’emploi, il peut alors activer les notifications sur la base de la relation apprise précédemment.
[0087] D’autres applications sont rendues possibles avec un mode de réalisation qui implique des recherches de relations subjectives et perceptives, typiquement: «j’aime» ou «je n’aime pas» un document, que ce soit pour exprimer des relations entre deux personnes dans un réseau social ou dans les domaines d’expressions et de créations artistiques. Dans ce mode de réalisation, le moteur de recherche relationnelle pourra avantageusement avoir accès et exploiter l’ensemble des données personnelles d’un utilisateur et l’historique de l’utilisation des fichiers (system log-files) pour mieux modéliser la personnalité et les préférences de la personne.
[0088] Un autre mode de réalisation est illustré avec l’aide de la fig. 2 , l’objectif est de trouver une relation émotionnelle entre des séquences musicales et des images qui l’accompagnent. Dans ce cas, la relation (13) cherchée est de nature subjective et entre un couple de documents (12) et l’utilisateur lui-même. Une interface adaptée permet à l’utilisateur d’étiqueter les couples «passage musical - image» avec l’étiquette «j’aime» (14) et ceux qui ne lui plaisent pas avec l’étiquette «je n’aime pas» (16).
[0089] La stratégie d’apprentissage est typiquement basée sur un apprentissage en profondeur pour décrire au mieux le contenu des images. Pour la musique, des métadonnées sont extraites des bases de données disponibles et une extraction des paramètres musicaux est effectuée pour mieux adapter les images au rythme et aux caractéristiques de la musique. Pour identifier les structures internes de la musique une approche par apprentissage en profondeur est utilisée de préférence. Ensuite, par la concaténation de l’ensemble des informations extraites des deux types de document et des étiquettes, la relation est alors apprise par un algorithme d’apprentissage supervisé ou de préférence semi-supervisé. Il est à noter que l’utilisateur doit étiqueter un certain nombre de couples: passage musical - image, pour que l’algorithme puisse apprendre correctement la relation désirée.
[0090] Une approche avec un grand nombre d’utilisateurs est intéressante pour préfiltrer les correspondances les plus populaires (cf. par crowdsourcing), dans ce cas, les relations et apprentissages doivent être partagés avec la communauté d’utilisateurs.
[0091] Avec l’aide des fig. 1 , 2 et 3 , un autre mode de réalisation illustre la recherche d’une relation objective. Le système a été spécialement préparé et entraîné sur un grand nombre d’exemples d’utilisations spécifiques à ce domaine applicatif. Les représentations des données et l’analyse des requêtes sont également spécialement traitées et entraînées pour permettre de mieux répondre aux demandes. La relation et le domaine applicatif sont sélectionnés suite à l’analyse de la requête de l’utilisateur: «Cherche un couple étudiants qui aimeraient partir en vacances aux Maldives!». Dans ce mode de réalisation, les documents liés par la relation cherchée sont d’une part des étudiants et d’autre part des étudiantes. Dans l’espace de recherche, les deux sets de documents sont déjà spécifiés par la liste de leur URL Facebook. Par l’analyse de la requête ci-dessus, le domaine applicatif est automatiquement reconnu et activé par le système.
[0092] Dans l’exemple de la fig. 2 , le moteur de recherche relationnelle permet de trouver des n-uplets (10) avec la relation cherchée par l’utilisateur (13) dans l’espace de recherche des documents (12) qui représentent les données publiées sur le web.
[0093] L’exemple de la fig. 3 montre les différents modules logiciels et le matériel informatique nécessaire pour initialiser l’espace de recherche (213) et pour analyser les requêtes des utilisateurs (209). Plus précisément, dans le mode de réalisation décrit, l’ensemble des données spécifiques sont ingérées depuis le Web (300) par le module logiciel (211) pour constituer l’espace de recherche (213). Avec la liste des URL, deux sets de documents sont créés. Néanmoins, les données brutes ne sont pas directement exploitables sans le module logiciel d’enrichissement sémantique (212). Les modules logiciels (211) et (212) alimentent continuellement le contenu de l’espace de recherche (213) avec des données externes qui sont nouvelles ou récemment modifiées. Le module logiciel (211) typiquement consulte les pages web et le module logiciel (212) utilise typiquement les données et les ontologies dérivées des sources d’information disponibles.
[0094] Dans l’exemple de fig. 3 , l’utilisateur d’une agence de voyages se connecte au système d’information (204) au travers d’une connexion Internet (300) et ceci avec une interface homme-machine (100) sur un ordinateur portable (101), un smartphone (102), une smartwatch ou tout autre appareil capable de dialoguer avec celui-ci, par exemple, en visualisant un contenu HTML ou en exécutant une application chargée localement en mémoire. Dans certains cas d’utilisation, le système peut être piloté par la voix ou par une interface multimodale (103) qui combine plusieurs modalités d’interactions comme par exemple: la voix, les gestes, etc.
[0095] Pour permettre la personnalisation et la sauvegarde des relations cherchées, l’utilisateur de l’agence de voyages doit être identifié dans la base de données des clients (205). Il doit donc s’être enregistré au préalable. Cette base de données détient aussi les droits d’accès aux données avec un accès protégé, comme par exemple, pour accéder aux données personnelles de l’agence de voyages ou à des sites d’offres de voyages en ligne.
[0096] L’utilisateur possède plusieurs façons d’exprimer une relation avec l’interface homme-machine (100). Il peut exprimer ladite relation en langage naturel dans le champ qui définit une des relations cherchées. Une deuxième façon est de sélectionner ou de glisser par drag & drop un ou plusieurs exemples de clients existants qui représentent au mieux la ou les relations cherchées. Une troisième façon est de définir plus précisément les documents du n-uplet par une expression qui permet à un moteur de recherche classique de trouver les différents étudiants des n-uplets cherchés. Une quatrième possibilité est de simplement reprendre une relation déjà cherchée et apprise par le système depuis la base de données (205). Cette base de données (205) sauve l’ensemble de l’historique des recherches et des relations cherchées par l’utilisateur en question. Finalement, l’utilisateur peut combiner plusieurs de ces approches précédemment décrites, s’il le désire.
[0097] Le module logiciel (206) met en forme la requête, analyse la ou les relations cherchées, sélectionne la stratégie de composition d’algorithmes. Finalement, il passe les informations au module logiciel (208) qui a pour objet d’exécuter la stratégie sélectionnée pour mieux comprendre le concept de la relation exprimée par l’utilisateur. Un exemple plus détaillé de ce processus est décrit avec le diagramme de flux de la fig. 1 .
[0098] Dans l’exemple de la fig. 3 , dès qu’une requête est modélisée par les algorithmes du module logiciel (208), elle est prête à être exécutée par le module logiciel de recherche (210) des correspondances. La visualisation des résultats est effectuée dans le module (204).
[0099] Pour la suite et en fonction des résultats, l’utilisateur de l’agence de voyages est engagé dans un processus d’apprentissage itératif avec le système pour améliorer la pertinence des résultats.
[0100] Pour informer l’utilisateur de l’agence de voyages, s’il le désire, le système va notifier ce dernier de toutes nouvelles réalisations d’une relation sauvegardée lorsque certains documents présents dans l’espace de recherche sont liés par la relation désirée. Dans l’exemple de la fig. 3 , c’est le module logiciel (207) qui émet les notifications en fonction des paramètres définis et de la pertinence calculée par le module logiciel de recherche des correspondances (210). Il est à noter que les stratégies de traitement et d’apprentissage dédiées aux notifications sont différentes de la recherche relationnelle. En effet, pour les notifications, les contraintes algorithmiques sont différentes et les attentes des utilisateurs aussi.
[0101] Dans l’exemple de la fig. 1 , un diagramme de flux illustre les différentes étapes qui permettent la réalisation de l’invention dans le cas d’usage décrit dans la fig. 3 .
[0102] Pour toutes nouvelles requêtes, l’utilisateur d’une agence de voyages définit les critères d’une recherche et, plus particulièrement, il définit quel est la relation qu’il veut trouver dans les n-uplets. Dans l’exemple de la fig. 1 , le contexte applicatif est celui d’une agence de voyages qui recherche deux étudiants pour une offre de vacances aux Maldives. Dans l’exemple de la fig. 1 , les options de recherches sont présentées par l’interface dans l’étape (b), à l’aide de cette interface, l’utilisateur définit ses paramètres de recherche et donne la commande pour lancer une première recherche, l’étape (c). Dans l’étape (b), la ou les relations sont analysées, catégorisées et les métriques sont identifiées et un premier modèle initial de la relation est créé. En fonction des résultats de l’analyse et pour les étapes suivantes, une stratégie de composition d’algorithmes est activée. Plus concrètement, avec la requête définie par l’utilisateur de l’agence de voyages, l’analyse extrait plusieurs concepts: dont deux entités (deux étudiants) qui définissent le couple de document, une destination géographique (aux Maldives). Une métrique est implicitement associée aux étudiants (un tarif préférentiels pour jeunes adultes), cette métrique induit une contrainte de recherche. Avec ce résultat d’analyse, une stratégie est sélectionnée qui détermine le choix d’un algorithme d’apprentissage semi-supervisé et un algorithme ad hoc pour le traitement de la contrainte sur les offres.
[0103] L’objectif de cette première recherche de l’étape (c) est d’avoir un «rappel» suffisant pour permettre l’interaction avec l’utilisateur de l’agence de voyages. Le «rappel» étant le rapport entre le nombre de n-uplets retournés par le système divisé par le nombre de n-uplets pertinents. Les n-uplets sont alors visualisés en mettant en évidence leur pertinence respective et avec leurs étiquettes qui sont évaluées par le système.
[0104] En décrivant la relation désirée «Cherche un couple étudiants qui aimeraient partir en vacances aux Maldives /», l’utilisateur n’a que très partiellement défini la relation et l’intention qui motive sa recherche, avec l’interface homme-machine intelligente, il va pouvoir améliorer la modélisation que le système possède de cette relation.
[0105] L’utilisateur de l’agence de voyages peut interagir dans l’étape (e) avec les n-uplets en étiquetant les relations qui lui semblent pertinentes par rapport à la relation cherchée et celles qui ne le sont pas. En utilisant cette information et après l’analyse de l’étape (e1), l’algorithme itératif d’apprentissage semi-supervisé progresse dans la modélisation de la relation cherchée dans l’étape (e2), et adaptera l’évaluation et la visualisation des étiquettes dans l’étape (e3). Avec cette visualisation des étiquettes, l’utilisateur peut instantanément corriger des étiquettes erronées. Plus concrètement, un n-uplet est visualisé avec une étoile vide (étiquette = non pertinent) (16), mais si l’utilisateur estime que le n-uplet est pertinent, il lui suffit alors de sélectionner l’étoile pleine (étiquette = pertinent) (14) pour améliorer la modélisation. L’utilisateur peut répéter l’étape (e) et les sous-étapes (e1, e2, e3), jusqu’à ce que les étiquettes d’évaluation représentent au mieux la relation désirée entre les couples. Par exemple, ils partagent tous deux un intérêt marqué pour la plongée sous-marine.
[0106] Pour améliorer la pertinence des n-uplets trouvés, l’utilisateur peut relancer une nouvelle étape (c) de recherche qui exploitera cette fois-ci la modélisation enrichie de la relation cherchée. Par la suite, l’utilisateur pourra répéter à loisir les itérations d’apprentissage et de recherche (c, d, e).
[0107] La qualité du moteur de recherche relationnelle de la fig. 1 dépend de la rapidité avec laquelle le système apprend à modéliser les relations désirées. Pour accélérer cet apprentissage, le système calcule les statistiques pour faire évoluer le choix des stratégies d’apprentissage en fonction d’un ensemble d’utilisateurs et d’utilisations.
[0108] Dans l’étape (d) d’affichage des couples d’étudiants, et plus particulièrement dans la sous-étape (d1), un algorithme de rétro-pertinence peut soumettre à l’utilisateur sous la forme d’une demande d’étiquetage, un n-uplet que le système détermine de manière optimale pour accélérer l’apprentissage.
[0109] L’architecture logicielle du moteur de recherche relationnelle est celle d’un système capable de traiter de grande quantité de données, elle est typiquement construite autour de l’écosystème des logiciels libres Apache™ et en particulier celui de Hadoop<®>.
[0110] Les modes de réalisation de l’invention nécessitent le traitement automatique du langage naturel. Une partie des traitements peut être typiquement réalisée avec les outils et librairies logicielles GATE https://qate.ac.uk/. (cf. Integrating NLP Using Linked Data, by Sébastian Hellmann et al. In ISWC 2013, Lecture Notes in Computer Science Volume 8219, 2013, pp 98–113)

Claims (12)

1. Procédé itératif d’apprentissage supervisé ou semi-supervisé d’une ou plusieurs relations désirées, et de recherche de n-uplets de documents liés entre eux par au moins une des dites une ou plusieurs relations désirées, le procédé étant mis en œuvre à l’aide d’un système informatique comportant une interface homme-machine, et comprenant dans l’ordre les étapes de: a) doter le système informatique d’un accès à un espace de recherche contenant une représentation interne des documents; b) exprimer en langage naturel à l’aide de l’interface homme-machine une formulation au moins approximative des dites une ou plusieurs relations désirées, pour fournir au système informatique un modèle initial des dites une ou plusieurs relations désirées; c) faire rechercher dans l’espace de recherche des n-uplets de documents liés entre eux par une ou plusieurs relations correspondant au dit modèle initial des dites une ou plusieurs relations désirées; d) faire afficher par l’interface homme-machine un ensemble de n-uplets correspondants à la recherche de l’étape (c), les n-uplets du dit ensemble de n-uplets étant accompagnés de leurs étiquettes, et les étiquettes étant, évaluées par un algorithme; e) faire apprendre lesdites une ou plusieurs relations désirées au système informatique à l’aide d’un algorithme itératif d’apprentissage supervisé ou semi-supervisé en adaptant la valeur d’au moins une des étiquettes de l’étape (d) à l’aide de l’interface homme-machine, et en enchaînant les itérations aussi longtemps que cela semble utile; chaque itération comprenant, après l’adaptation de la valeur des dites au moins une étiquette, les trois sous-étapes de: e1) faire analyser le contenu des documents faisant partie du/des n-uplets dont la valeur d’au moins une étiquette a été adaptée; e2) sur la base de l’analyse effectuée à l’étape (e1 ), enrichir le modèle de la relation désirée; e3) faire afficher par l’interface homme-machine des évaluations d’étiquetage d’une pluralité de relations de n-uplets de l’ensemble de n-uplets affiché le plus récemment par l’interface homme-machine, les évaluations d’étiquetage étant basées au moins partiellement sur le modèle enrichi à l’étape (e2).
2. Procédé itératif d’apprentissage conforme à la revendication 1, dans lequel une nouvelle exécution de l’étape (c), suivie d’une nouvelle exécution de l’étape (d) sont substituées à l’exécution des sous-étapes de l’étape (e) après au moins une itération des sous-étapes de l’étape (e), lors d’une telle nouvelle exécution de l’étape (c) de recherche des n-uplets, l’étape (c) est exécutée sur la base du modèle enrichi le plus récent au lieu du modèle initial.
3. Procédé itératif d’apprentissage conforme à la revendication 1 ou 2, dans lequel l’étape (b) de fournir au système informatique un modèle initial des dites une ou plusieurs relations désirées comprend la sous-étape de: b1) désigner à l’aide de l’interface homme-machine au moins un premier document susceptible d’être lié à au moins un second document par lesdites une ou plusieurs relations désirées.
4. Procédé itératif d’apprentissage conforme à la revendication 1 ou 2, dans lequel l’étape (b) de fournir au système informatique un modèle initial des dites une ou plusieurs relations désirées comprend la sous-étape de: b1) entrer dans le système au moins un n-uplets de documents liés entre eux par lesdites une ou plusieurs relations désirées, de manière à fournir au moins un exemple au système.
5. Procédé conforme à l’une des revendications précédentes, dans lequel l’étape (d) comprend la sous-étape de: d1) déterminer au moins partiellement les n-uplets affichés en fonction d’un algorithme de rétro-pertinence.
6. Procédé conforme à l’une des revendications précédentes, dans lequel l’étape (a) comprend la sous-étape de: a1) utiliser l’API d’un moteur de recherche classique pour collecter des documents du type désiré et pour faire ingérer automatiquement les URL des documents ainsi que leur contenu dans l’espace de recherche.
7. Procédé conforme à l’une des revendications précédentes, dans lequel l’étape (a) comprend la sous-étape de: a2) prétraiter l’information contenue dans les documents ingérés dans l’espace de recherche de manière à ce que les différents documents ingérés aient un même format et une même structure.
8. Procédé conforme à la revendication 7, dans lequel l’étape (a2) de prétraitement de l’information contenue dans les documents comprend l’enrichissement sémantique du contenu des documents.
9. Procédé conforme à la revendication 7 ou 8, dans lequel l’étape (a2) de prétraitement de l’information contenue dans les documents comprend l’extraction et l’addition de métadonnées.
10. Procédé conforme à l’un quelconque des revendications 7, 8 et 9, dans lequel l’étape (a2) de prétraitement de l’information contenue dans les documents comprend la modélisation interne des documents.
11. Procédé conforme à l’un quelconque des revendications 7 à 10, dans lequel l’étape (a2) de prétraitement de l’information est agencée pour offrir une méthode d’accès vectorisé.
12. Procédé conforme à l’un quelconque des revendications 7 à 11, dans lequel l’étape (a2) de prétraitement de l’information est agencée pour offrir une méthode d’accès intra-media de manière à permettre au système informatique d’accéder aux contenus internes des documents durant les étapes de recherche de n-uplets de l’étape (c).
CH00606/15A 2015-05-04 2015-05-04 Moteur de recherche relationnelle. CH711033B1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CH00606/15A CH711033B1 (fr) 2015-05-04 2015-05-04 Moteur de recherche relationnelle.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CH00606/15A CH711033B1 (fr) 2015-05-04 2015-05-04 Moteur de recherche relationnelle.

Publications (2)

Publication Number Publication Date
CH711033A2 true CH711033A2 (fr) 2016-11-15
CH711033B1 CH711033B1 (fr) 2022-07-15

Family

ID=57249994

Family Applications (1)

Application Number Title Priority Date Filing Date
CH00606/15A CH711033B1 (fr) 2015-05-04 2015-05-04 Moteur de recherche relationnelle.

Country Status (1)

Country Link
CH (1) CH711033B1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110019751A (zh) * 2018-01-10 2019-07-16 国际商业机器公司 机器学习模型修改和自然语言处理

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110019751A (zh) * 2018-01-10 2019-07-16 国际商业机器公司 机器学习模型修改和自然语言处理

Also Published As

Publication number Publication date
CH711033B1 (fr) 2022-07-15

Similar Documents

Publication Publication Date Title
US10459995B2 (en) Search engine for processing image search queries in multiple languages
Cappallo et al. New modality: Emoji challenges in prediction, anticipation, and retrieval
US11164026B2 (en) Graphical user interface generation based on image analysis
US20200372421A1 (en) User-centric browser location
CA2867547C (fr) Procede et systeme mis en oeuvre par un ordinateur et systeme pour la creation de contenu
JP6930041B1 (ja) 検索/作成されたデジタルメディアファイルに基づく潜在的関連のあるトピックの予測
US8156060B2 (en) Systems and methods for generating and implementing an interactive man-machine web interface based on natural language processing and avatar virtual agent based character
US10459975B1 (en) Method and system for creating an automatic video summary
US10909111B2 (en) Natural language embellishment generation and summarization for question-answering systems
WO2010149427A1 (fr) Un assistant-conseiller utilisant l&#39;analyse semantique des echanges communautaires
FR3043816B1 (fr) Procede de suggestion de contenus extraits d’un ensemble de sources d’information
US20240062749A1 (en) Multi-modal interface in a voice-activated network
JP7171911B2 (ja) ビジュアルコンテンツからのインタラクティブなオーディオトラックの生成
FR3030846A1 (fr) Representation semantique du contenu d&#39;une image
Chatterjee et al. Python social media analytics
WO2001035269A2 (fr) Systeme de partage d&#39;informations entre au moins deux utilisateurs sur un reseau informatique
US20230237093A1 (en) Video recommender system by knowledge based multi-modal graph neural networks
EP3144825A1 (fr) Indexation et recherche améliorées de contenus multimédia numériques
CH711033A2 (fr) Moteur de recherche relationnelle.
FR2973133A1 (fr) Procedes d’actualisation et de creation de profils d&#39;utilisateur, de recommandation de contenu et de construction d&#39;une liste de contenus
US20240185847A1 (en) Bit Vector-Based Content Matching for Third-Party Digital Assistant Actions
US20240020336A1 (en) Search using generative model synthesized images
US20160140239A1 (en) Influence Business Benefit from User Reviews and Cognitive Dissonance
Amanto et al. Recommender Systems and Social Networks: An application in Cultural Heritage. 8
Yuan et al. Exploring Artistic Embeddings in Service Design: A Keyword-Driven Approach for Artwork Search and Recommendations

Legal Events

Date Code Title Description
PK Correction

Free format text: CHANGEMENT DE REGISTRE EXAMEN QUANT AU FOND