IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

Compréhension de utlm_match edit_distance_similary


Sujet :

SQL Oracle

  1. #1
    Modérateur

    Homme Profil pro
    Inscrit en
    janvier 2007
    Messages
    1 718
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : janvier 2007
    Messages : 1 718
    Points : 5 459
    Points
    5 459
    Par défaut Compréhension de utlm_match edit_distance_similary
    Bonjour,

    Je cherche à cerner la logique de fonctionnement de la méthode utlm_match.edit_distance_similary.

    Autant pour
    tiré de la doc oracle "docs.oracle.com/..."
    EDIT_DISTANCE Function

    This function calculates the number of insertions, deletions or substitutions required to transform string-1 into string-2.
    cela est très clair,

    autant
    EDIT_DISTANCE_SIMILARITY Function

    This function calculates the number of insertions, deletions or substations required to transform string-1 into string-2, and returns the Normalized value of the Edit Distance between two Strings. The value is typically between 0 (no match) and 100 (perfect match)
    reste très flou, surtout qu'avec une variation de la longueur des chaînes de caractères, le % résultant est différent. Alors qu'il est stable avec edit_distance.

    J'ai vu que cela est basé sur un système de rang, mais la logique est difficile à percevoir.

    Waldar avait écrit un article dont le lien est indiqué dans un de ses messages oracle et utl_match, mais le lien est mort

    Avez-vous des pistes, des liens permettant de cerner le fonctionnement de cette méthode ?

    Le but est présenter une probabilité de doublons entre des chaînes de caractères, et cela est plus clair pour un utilisateur avec des % que des variations de valeurs.

    merci
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    mai 2002
    Messages
    20 952
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 20 952
    Points : 49 777
    Points
    49 777
    Billets dans le blog
    1
    Par défaut
    Sur un petit littéral, mettons de 3 caractères ayant un seul caractère différent de la chaine de référence l'édit distance sera de 1 mais le pourcentage de correctif de 33,33. Pour une chaine contenant 100 caractères, l'édit distance sera toujours de 1, mais le pourcentage sera de 99...

    Plus un littéral est petit et plus l'incertitude est grande pour un nombre d'erreur identique (loi de SHANNON).

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    janvier 2007
    Messages
    1 718
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : janvier 2007
    Messages : 1 718
    Points : 5 459
    Points
    5 459
    Par défaut
    J'avais bien vu cette proportionnalité, mais il reste difficile de pondérer ce pourcentage en fonction de la longueur de la chaine de caractère pour un risque probable d'erreur de saisie.
    Un utilisateur qui verra un risque de doublon à 30% ne se posera pas trop de question et jugera qu'il ne s'agit pas d'un doublon.
    Je vais donc partir sur la distance. (plusieurs chaine de caractères sont prise en compte pour cette recherche - nom - prénom - date de naissance - cela limite les incertitudes)

    Merci.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  4. #4
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    décembre 2013
    Messages
    3 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : décembre 2013
    Messages : 3 369
    Points : 7 725
    Points
    7 725
    Par défaut
    Le pourcentage qui est calculé par cette fonction n'est pas un risque de doublon, c'est un pourcentage de caractères différents (ou un pourcentage de caractères identiques, selon les fonctions) Ca n'a rien à voir.

    Si j'ai 2 caractères d'écart entre 2 chaines, l'info est insuffisante pour conclure quoi que ce soit. 2 caractères d'écart sur une chaine de longueur 3, c'est une différence énorme. Alors que 2 caractères d'écart sur une chaine de longueur 50, c'est peu.
    En raisonnant en pourcentage, l'analyse est plus simple (ou moins compliquée, comme tu veux).
    2 caractères d'écart sur une chaine de longueur 3, ça veut dire 66% de caractères différents... donc aucune ambiguité, les chaines sont différentes.
    2 caractères d'écart sur une chaine de longueur 50, ça veut dire 4% de caractères différents... et là, on doit se poser la question de la faute de frappe...
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  5. #5
    Modérateur

    Homme Profil pro
    Inscrit en
    janvier 2007
    Messages
    1 718
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : janvier 2007
    Messages : 1 718
    Points : 5 459
    Points
    5 459
    Par défaut
    Citation Envoyé par tbc92 Voir le message
    Le pourcentage qui est calculé par cette fonction n'est pas un risque de doublon, c'est un pourcentage de caractères différents (ou un pourcentage de caractères identiques, selon les fonctions)
    J'avais bien suivi, le problème n'est pas la, il est du point de vue de l'utilisateur et de l'interprétation qu'il peut en faire.
    Pour info, pour cette méthode, si les chaînes sont identiques le résultat est de 100%.

    Je n'ai jamais dit que cette méthode donnait un risque de doublon, j'ai dit "Un utilisateur qui verra un risque de doublon à 30%", c'est donc l'interprétation qu'il risque d'en faire.
    Elle ne peut donc pas être présentée telle quelle à l'utilisateur.

    C'est plus simple que je travaille sur les distances avec les différents cas de figures possibles, pour ensuite préparer la présentation faite aux utilisateurs.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Compréhension de fseek
    Par Argonz dans le forum C
    Réponses: 9
    Dernier message: 12/01/2004, 16h01
  2. compréhension du profil d'une fonction
    Par lor dans le forum MFC
    Réponses: 7
    Dernier message: 08/01/2004, 13h59
  3. [FLASH MX] Prob de compréhension des bouttons
    Par WriteLN dans le forum Flash
    Réponses: 13
    Dernier message: 16/10/2003, 18h01
  4. onclipevent (problème de compréhension)
    Par stephane eyskens dans le forum Flash
    Réponses: 8
    Dernier message: 24/09/2003, 16h09
  5. Problème de compréhension des ensembles
    Par Cornell dans le forum Langage
    Réponses: 6
    Dernier message: 07/02/2003, 23h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo