Security scoring for typographical errors
AssigneeMicrosoft Technology Licensing, LLC
InventorsLaurent Boué, Kiran Rama
Life of this patent
Estimating the term…
Abstract
A computing system generates transformation error probabilities by analyzing a training data set containing training strings, each transformation error probability indicating a probability that a per-character transformation applied to a character of a training string results in a typographical error in a resulting transformation string, wherein the training data set includes strings from a historical dataset of strings including typographical errors. The computing system populates a probabilistic graphical model with the transformation error probabilities corresponding to each resulting transformation string and predicts a likelihood that an input string contains a typographical error based on the probabilistic graphical model.
Claims14
A method of detecting typographical errors, the method comprising:
- generating transformation error probabilities by analyzing a training data set containing training strings, wherein generating the transformation error probabilities includes determining a probability that a transformation string of a training string is a typographical error based on a position of a per-character transformation within the transformation string and a type of per-character transformation, wherein the per-character transformation represents a character change between the training string and the transformation string, and determining a probability that a transformation string resulting from replacing a character of a training string with a homoglyph of the character of each training string is a typographical error based on a similarity measure between an embedding of the character and an embedding of a homoglyph that replaces the character in the transformation string, each transformation error probability indicating a probability that a per-character transformation applied to a character of a training string results in a typographical error in a resulting transformation string, wherein the training data set includes strings from a historical dataset of strings including typographical errors and each training string in the training data set is annotated as a typographical error string or a typographically accurate string;
- populating a probabilistic graphical model with the transformation error probabilities corresponding to each resulting transformation string;
- and
- predicting a likelihood that an input string contains a typographical error based on the probabilistic graphical model.
A computing system for detecting typographical errors, the computing system comprising:
- one or more hardware processors;
- a transformation error analyzer executable by the one or more hardware processors and configured to generate transformation error probabilities by analyzing a training data set containing training strings, wherein generating the transformation error probabilities includes determining a probability that a transformation string of a training string is a typographical error based on a position of a per-character transformation within the transformation string and a type of per-character transformation, wherein the per-character transformation represents a character change between the training string and the transformation string, and determining a probability that a transformation string resulting from replacing a character of a training string with a homoglyph of the character of each training string is a typographical error based on a similarity measure between an embedding of the character and an embedding of a homoglyph that replaces the character in the transformation string, each transformation error probability indicating a probability that a per-character transformation applied to a character of a training string results in a typographical error in a resulting transformation string, wherein the training data set includes strings from a historical dataset of strings including typographical errors and each training string in the training data set is annotated as a typographical error string or a typographically accurate string;
- a graph model builder executable by the one or more hardware processors and configured to populate a probabilistic graphical model with the transformation error probabilities corresponding to each resulting transformation string;
- and
- an error detector executable by the one or more hardware processors and configured to predict a likelihood that an input string contains a typographical error based on the probabilistic graphical model.
One or more tangible processor-readable storage media embodied with instructions for executing on one or more processors and circuits of a computing device a process for detecting typographical errors, the process comprising:
- generating transformation error probabilities by analyzing a training data set containing training strings, wherein generating the transformation error probabilities includes determining a probability that a transformation string of a training string is a typographical error based on a position of a per-character transformation within the transformation string and a type of per-character transformation, wherein the per-character transformation represents a character change between the training string and the transformation string, and determining a probability that a transformation string resulting from replacing a character of a training string with a homoglyph of the character of each training string is a typographical error based on a similarity measure between an embedding of the character and an embedding of a homoglyph that replaces the character in the transformation string, each transformation error probability indicating a probability that a per-character transformation applied to a character of a training string results in a typographical error in a resulting transformation string, wherein the training data set includes strings from a historical dataset of strings including typographical errors and each training string in the training data set is annotated as a typographical error string or a typographically accurate string;
- populating a probabilistic graphical model with the transformation error probabilities corresponding to each resulting transformation string;
- and
- predicting a likelihood that an input string contains a typographical error based on the probabilistic graphical model.
Dependencies are inferred from the claim text.