SlideShare ist ein Scribd-Unternehmen logo
1 von 19
On Client and Transaction
Identification and Matching
                  Problems

                    Veljko Pejović
                           veljkoveljko@gmail.com


    Coauthors: Emil Varga, Marko Stanković
Presentation Outline
 Introduction
 Data Input and Identification Problems
 Known Solutions
 Damerau Edit Distance Algorithm Modifications
 Algorithm Application, Weight Factors
 Determination
 Algorithm Regionalization
 Evaluation
 Conclusion and Future Work Guidelines
Introduction

 Problems
   Data Input Problems
     Unnecessary Repetition of a Character (Jaack)
     Character Permutation (Jakc)
     Character Omission (Jck)
     Initials, Abbreviations etc. (J.W.)
   Identification Problems
     Attribute Comparison
     Weight Factor Determination for each Attribute Pair
     Mind the Correlations
Identification Problems

 Identification Criteria
   Similarity of corresponding fields brings us
   closer to entity identification
 Identification Threshold
   Similarity probability above which we have
   identified the client – higher threshold
 Similarity Threshold
   Similarity probability above which we can claim
   similarity of two entities – lower threshold
Known Solutions

 LCS Approach
   Finds the longest common subsequence of two
   strings
   Example: 'GCTAT' i 'CGATTA' the longest
   common subsequence is 'GTT'
 Ratcliff Obershelp Algorithm
   Returns similarity percentage of two strings
Known Solutions

 Edit Distance Approach
   Edit Distance – Difference between two
   strings observed through operations
   necessary for bringing them into the same
   state
   Every operation has its cost
 Algorithms
   Levenshtein – 3 basic operations
   Damerau Edit Distance algorithm
     Additional operation – character transposition
Damerau Edit Distance Algorithm
           Modifications
Changes will be made in order to adjust the
algorithm to the given problem

Solving the Following Key Problems
  Unnecessary Repetition of a Character
     Lower cost of insertion operation
  Initials usage
     Comparison of starting letters only
  Separator omission
     Separators will be ignored
  Abbreviation usage
     Abbreviation Dictionary (data mining)
Algorithm Application, Weight Factors
           Determination
Table Clients:                    Table Transactions:
   Name                              Name
   Surname                           Surname
   Personal ID Number                Personal ID Number
   City                              City
   Street                            Street
   Apt. No.                          Apt. No.
   Zip Code                          Zip Code
   Date of Birth                     Date of Birth
   Client ID (as a primary key)      Transaction ID (as a primary
                                     key)
                                     Internal Transaction Number
                                     Type of Transaction
                                     Amount
                                     Account No.
Algorithm Application, Weight Factors
           Determination
Table Result:
  Client ID
  Transaction ID
  Probability for Name
  Probability for Surname
  Probability for Personal ID Number
  Probability for City
  Probability for Street
  Probability for Apt. No.
  Probability for Zip Code
  Probability for Date of Birth
  Total Probability
  Result
Algorithm Application, Weight Factors
           Determination


Comparison of corresponding attributes in
two tables (Clients and Transactions)
Each calculated similarity probability is
stored in table Result

Iteratively for every pair of attributes
Algorithm Application, Weight Factors
           Determination
Weight factors should
be well determined

The leaves represent
probability for
similarity of two
attributes
[-100%, 100%]

The branches
represent weight
factors [0, 1]
Algorithm Application, Weight Factors
               Determination
   Certain attributes
   correlate

   Data redundancy
         Dictionary Table

   Total probability
   calculation:
   ⎧ pid > I, pid
   ⎪nad > I, nad
   ⎪
r =⎨
   ⎪ pid > 0 ∧ nad > 0, pid * q + nad * (1 − q)
   ⎪0
   ⎩
  ⎧            pid
    pid > nad,
  ⎪
  ⎪            nad
q=⎨
  ⎪nad > pid , nad
  ⎪
  ⎩             pid
Algorithm Application, Weight Factors
           Determination
Thresholds:

   Identification
   threshold ~ 94 %

   Similarity threshold
   ~ 54 %

Results above the
Similarity threshold
will be stored in table
Result
Algorithm Regionalization

Common names/surnames
  The more common name pair – the less influence it has
  on total similarity. Adjustable weight factors
Characteristic suffixes, infixes i prefixes ( -ić, -
Van-, Mc- )
  These will be ignored during the matching phase
Different alphabets
  Alphabet “Leveling” –
  ћирилица, ćirilica, cirilica…
Evaluation

 Competitive solution
   Based on simple LCS algorithm
 Test vectors, Example
   “Z. Mihajlović, Sremska 33, Bgf, 11000”
   “Zoran Mihailović, Sremska 33, Beograd 11000”
 Result evaluation
Conclusion And Future Work Guidelines

Main strong points of the proposed
solution:
  Based on well developed and examined
  algorithm
  Adjusted to one particular problem
  Dynamic reliability improvement
  Flexibility
  Regionalization
Conclusion And Future Work Guidelines

Possible Improvements
  Automatic database update after the identification
  process
  Coding an address to “Address code”
  Mapping the standard key settings on different keyboard
  layouts
  Dynamic value change of identification and similarity
  threshold – adjust to the users’ expectations
  System should be verified in “real world” surrounding
Thank You!




      - Comments And Questions, Please!
On Client and Transaction
Identification and Matching
                  Problems

                    Veljko Pejović
                            veljkoveljko@gmail.com


    Coauthors: Emil Varga, Marko Stanković


                   - Comments And Questions, Please!

Weitere ähnliche Inhalte

Ähnlich wie On Client and Transaction Identification and Matching Problems

A Critical Look at Fixtures
A Critical Look at FixturesA Critical Look at Fixtures
A Critical Look at Fixtures
ActsAsCon
 
Vpriv Ready
Vpriv ReadyVpriv Ready
Vpriv Ready
LangLin
 
Automated Correlation Discovery for Semi-Structured Business Processes
Automated Correlation Discovery for Semi-Structured Business ProcessesAutomated Correlation Discovery for Semi-Structured Business Processes
Automated Correlation Discovery for Semi-Structured Business Processes
Szabolcs Rozsnyai
 
Developer power tools
Developer power toolsDeveloper power tools
Developer power tools
Nick Harrison
 
NIPS2007: structured prediction
NIPS2007: structured predictionNIPS2007: structured prediction
NIPS2007: structured prediction
zukun
 
How We Use Functional Programming to Find the Bad Guys
How We Use Functional Programming to Find the Bad GuysHow We Use Functional Programming to Find the Bad Guys
How We Use Functional Programming to Find the Bad Guys
New York City College of Technology Computer Systems Technology Colloquium
 
C sharp fundamentals Part I
C sharp fundamentals Part IC sharp fundamentals Part I
C sharp fundamentals Part I
DevMix
 

Ähnlich wie On Client and Transaction Identification and Matching Problems (20)

Data Means MeMatch algorithm
Data Means MeMatch algorithmData Means MeMatch algorithm
Data Means MeMatch algorithm
 
A Critical Look at Fixtures
A Critical Look at FixturesA Critical Look at Fixtures
A Critical Look at Fixtures
 
Vpriv Ready
Vpriv ReadyVpriv Ready
Vpriv Ready
 
Automated Correlation Discovery for Semi-Structured Business Processes
Automated Correlation Discovery for Semi-Structured Business ProcessesAutomated Correlation Discovery for Semi-Structured Business Processes
Automated Correlation Discovery for Semi-Structured Business Processes
 
Introduction to javascript.ppt
Introduction to javascript.pptIntroduction to javascript.ppt
Introduction to javascript.ppt
 
Keynote: Machine Learning for Design Automation at DAC 2018
Keynote:  Machine Learning for Design Automation at DAC 2018Keynote:  Machine Learning for Design Automation at DAC 2018
Keynote: Machine Learning for Design Automation at DAC 2018
 
Alexandria ACM Student Chapter | Specification & Verification of Data-Centric...
Alexandria ACM Student Chapter | Specification & Verification of Data-Centric...Alexandria ACM Student Chapter | Specification & Verification of Data-Centric...
Alexandria ACM Student Chapter | Specification & Verification of Data-Centric...
 
Developer power tools
Developer power toolsDeveloper power tools
Developer power tools
 
Alpine ML Talk: Vtreat: A Package for Automating Variable Treatment in R By ...
Alpine ML Talk:  Vtreat: A Package for Automating Variable Treatment in R By ...Alpine ML Talk:  Vtreat: A Package for Automating Variable Treatment in R By ...
Alpine ML Talk: Vtreat: A Package for Automating Variable Treatment in R By ...
 
Blackbox
BlackboxBlackbox
Blackbox
 
Quality Assurance
Quality AssuranceQuality Assurance
Quality Assurance
 
How we use functional programming to find the bad guys @ Build Stuff LT and U...
How we use functional programming to find the bad guys @ Build Stuff LT and U...How we use functional programming to find the bad guys @ Build Stuff LT and U...
How we use functional programming to find the bad guys @ Build Stuff LT and U...
 
NIPS2007: structured prediction
NIPS2007: structured predictionNIPS2007: structured prediction
NIPS2007: structured prediction
 
Delightful steps to becoming a functioning user of Step Functions
Delightful steps to becoming a functioning user of Step FunctionsDelightful steps to becoming a functioning user of Step Functions
Delightful steps to becoming a functioning user of Step Functions
 
Dqs mds-matching 15042015
Dqs mds-matching 15042015Dqs mds-matching 15042015
Dqs mds-matching 15042015
 
How We Use Functional Programming to Find the Bad Guys
How We Use Functional Programming to Find the Bad GuysHow We Use Functional Programming to Find the Bad Guys
How We Use Functional Programming to Find the Bad Guys
 
Prototyping Business Processes
Prototyping Business ProcessesPrototyping Business Processes
Prototyping Business Processes
 
Lecture7 pattern
Lecture7 patternLecture7 pattern
Lecture7 pattern
 
Comparative study of various approaches for transaction Fraud Detection using...
Comparative study of various approaches for transaction Fraud Detection using...Comparative study of various approaches for transaction Fraud Detection using...
Comparative study of various approaches for transaction Fraud Detection using...
 
C sharp fundamentals Part I
C sharp fundamentals Part IC sharp fundamentals Part I
C sharp fundamentals Part I
 

Kürzlich hochgeladen

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Kürzlich hochgeladen (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 

On Client and Transaction Identification and Matching Problems

  • 1. On Client and Transaction Identification and Matching Problems Veljko Pejović veljkoveljko@gmail.com Coauthors: Emil Varga, Marko Stanković
  • 2. Presentation Outline Introduction Data Input and Identification Problems Known Solutions Damerau Edit Distance Algorithm Modifications Algorithm Application, Weight Factors Determination Algorithm Regionalization Evaluation Conclusion and Future Work Guidelines
  • 3. Introduction Problems Data Input Problems Unnecessary Repetition of a Character (Jaack) Character Permutation (Jakc) Character Omission (Jck) Initials, Abbreviations etc. (J.W.) Identification Problems Attribute Comparison Weight Factor Determination for each Attribute Pair Mind the Correlations
  • 4. Identification Problems Identification Criteria Similarity of corresponding fields brings us closer to entity identification Identification Threshold Similarity probability above which we have identified the client – higher threshold Similarity Threshold Similarity probability above which we can claim similarity of two entities – lower threshold
  • 5. Known Solutions LCS Approach Finds the longest common subsequence of two strings Example: 'GCTAT' i 'CGATTA' the longest common subsequence is 'GTT' Ratcliff Obershelp Algorithm Returns similarity percentage of two strings
  • 6. Known Solutions Edit Distance Approach Edit Distance – Difference between two strings observed through operations necessary for bringing them into the same state Every operation has its cost Algorithms Levenshtein – 3 basic operations Damerau Edit Distance algorithm Additional operation – character transposition
  • 7. Damerau Edit Distance Algorithm Modifications Changes will be made in order to adjust the algorithm to the given problem Solving the Following Key Problems Unnecessary Repetition of a Character Lower cost of insertion operation Initials usage Comparison of starting letters only Separator omission Separators will be ignored Abbreviation usage Abbreviation Dictionary (data mining)
  • 8. Algorithm Application, Weight Factors Determination Table Clients: Table Transactions: Name Name Surname Surname Personal ID Number Personal ID Number City City Street Street Apt. No. Apt. No. Zip Code Zip Code Date of Birth Date of Birth Client ID (as a primary key) Transaction ID (as a primary key) Internal Transaction Number Type of Transaction Amount Account No.
  • 9. Algorithm Application, Weight Factors Determination Table Result: Client ID Transaction ID Probability for Name Probability for Surname Probability for Personal ID Number Probability for City Probability for Street Probability for Apt. No. Probability for Zip Code Probability for Date of Birth Total Probability Result
  • 10. Algorithm Application, Weight Factors Determination Comparison of corresponding attributes in two tables (Clients and Transactions) Each calculated similarity probability is stored in table Result Iteratively for every pair of attributes
  • 11. Algorithm Application, Weight Factors Determination Weight factors should be well determined The leaves represent probability for similarity of two attributes [-100%, 100%] The branches represent weight factors [0, 1]
  • 12. Algorithm Application, Weight Factors Determination Certain attributes correlate Data redundancy Dictionary Table Total probability calculation: ⎧ pid > I, pid ⎪nad > I, nad ⎪ r =⎨ ⎪ pid > 0 ∧ nad > 0, pid * q + nad * (1 − q) ⎪0 ⎩ ⎧ pid pid > nad, ⎪ ⎪ nad q=⎨ ⎪nad > pid , nad ⎪ ⎩ pid
  • 13. Algorithm Application, Weight Factors Determination Thresholds: Identification threshold ~ 94 % Similarity threshold ~ 54 % Results above the Similarity threshold will be stored in table Result
  • 14. Algorithm Regionalization Common names/surnames The more common name pair – the less influence it has on total similarity. Adjustable weight factors Characteristic suffixes, infixes i prefixes ( -ić, - Van-, Mc- ) These will be ignored during the matching phase Different alphabets Alphabet “Leveling” – ћирилица, ćirilica, cirilica…
  • 15. Evaluation Competitive solution Based on simple LCS algorithm Test vectors, Example “Z. Mihajlović, Sremska 33, Bgf, 11000” “Zoran Mihailović, Sremska 33, Beograd 11000” Result evaluation
  • 16. Conclusion And Future Work Guidelines Main strong points of the proposed solution: Based on well developed and examined algorithm Adjusted to one particular problem Dynamic reliability improvement Flexibility Regionalization
  • 17. Conclusion And Future Work Guidelines Possible Improvements Automatic database update after the identification process Coding an address to “Address code” Mapping the standard key settings on different keyboard layouts Dynamic value change of identification and similarity threshold – adjust to the users’ expectations System should be verified in “real world” surrounding
  • 18. Thank You! - Comments And Questions, Please!
  • 19. On Client and Transaction Identification and Matching Problems Veljko Pejović veljkoveljko@gmail.com Coauthors: Emil Varga, Marko Stanković - Comments And Questions, Please!