Answers.Body: <p>I think it would be a hard task for identifying spell errors in first and last names but you can fine-tune a BERT and use Damerau–Levenshtein distance in your final prediction. for further information you can read the paper below.</p>
  <p><a href="https://arxiv.org/pdf/2101.03204.pdf" rel="nofollow noreferrer">Misspelling Correction with Pre-trained Contextual
  Language Model</a></p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-12-06T12:40:47.703Z
Answers.LastActivityDate: 2021-12-06T12:40:47.703Z
Answers.UserDisplayName: Seyed Moein Ayyoubzadeh
Body: <p>I have a bunch of unique full names of users. I made pseudo-physical model to emulate misprints of desktop and mobile users (hence, fatfingering, jumpy fingers, accidentals touches of touch bar etc.)</p>
  <p>So, I have pairs like John Snow - joh Snown</p>
  <p>I tried first Recurrent networks, LSTM, like some kind of vocabulary to &quot;translate&quot; from bad words to good ones, but it return only known predicted result, and when I try to put unknown last names, it returns wrong results.</p>
  <p>I wish to find some patterns in misspelled words, and to predict correct spelling.</p>
  <p>Can you please advice some kind of NN to cope with the task, or maybe some contributions in that domain?</p>
  <p>P.S. Yes, I know that there exist other AI methods to get things done</p>
  <p>P.P.S. This vocabulary is not in English, just in case</p>
  <p><strong>UPDATE</strong></p>
  <p>LSTM nn works nice with known names and last names endings for new last names. Right now I use 2 different nn, first to correct mistypes, second to determine first, last and middle name.</p>
  <p><strong>UPDATE2</strong></p>
  <p>Sequence to sequence solution also can normalize name (put them in order), find sex of person, find probability of error, etc.</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-12-06T01:22:54.747Z
Comments.Text: Are you sure there is a pattern in misspelled words? Also, even if there is a pattern, how can a model distinguish between a misspelled word and a correctly spelled word when it confronts an unknown last name?
  
  For example like in John Snow - Joh Snown, how do we know for sure that the user's name is not actually Joh Snown?
Comments.UserDisplayName: DKDK
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2021-12-06T06:13:17.863Z
Comments.Text: @DKDK there are some patterns that can not exist in real language. As for russian, for example, it is very rare to find some combinations of consonants, sequences of letters, sequences of letters in first word if second has some specific words ending, when second is feminine and first have masculine ending etc. because of a grammar of the language. There will happen some faults, but it is a recommendation system. I know some systems that distinguish mistypes with big rule sets, and they work (not perfectly, but even if I reach +5% more correct names that will save time and money)
Comments.UserDisplayName: Ivan  Ivanov
Tags: <neural-networks><natural-language-processing><recurrent-neural-networks><long-short-term-memory>
Title: What kind of NN to use to find misprints in test
UserDisplayName: Ivan  Ivanov
ThreadText: # What kind of NN to use to find misprints in test
  
  (Asked by: username_0 on 2021-12-05)
  
  I have a bunch of unique full names of users. I made pseudo-physical model to emulate misprints of desktop and mobile users (hence, fatfingering, jumpy fingers, accidentals touches of touch bar etc.)
  
  So, I have pairs like John Snow - joh Snown
  
  I tried first Recurrent networks, LSTM, like some kind of vocabulary to "translate" from bad words to good ones, but it return only known predicted result, and when I try to put unknown last names, it returns wrong results.
  
  I wish to find some patterns in misspelled words, and to predict correct spelling.
  
  Can you please advice some kind of NN to cope with the task, or maybe some contributions in that domain?
  
  P.S. Yes, I know that there exist other AI methods to get things done
  
  P.P.S. This vocabulary is not in English, just in case
  
  **UPDATE**
  
  LSTM nn works nice with known names and last names endings for new last names. Right now I use 2 different nn, first to correct mistypes, second to determine first, last and middle name.
  
  **UPDATE2**
  
  Sequence to sequence solution also can normalize name (put them in order), find sex of person, find probability of error, etc.
  
  **Tags:** neural-networks, natural-language-processing, recurrent-neural-networks, long-short-term-memory
  
  > **Comments:**
  > **username_1**: Are you sure there is a pattern in misspelled words? Also, even if there is a pattern, how can a model distinguish between a misspelled word and a correctly spelled word when it confronts an unknown last name?  For example like in John Snow - Joh Snown, how do we know for sure that the user's name is not actually Joh Snown?  
  > **username_0**: @username_1 there are some patterns that can not exist in real language. As for russian, for example, it is very rare to find some combinations of consonants, sequences of letters, sequences of letters in first word if second has some specific words ending, when second is feminine and first have masculine ending etc. because of a grammar of the language. There will happen some faults, but it is a recommendation system. I know some systems that distinguish mistypes with big rule sets, and they work (not perfectly, but even if I reach +5% more correct names that will save time and money)  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2021-12-06. Score: 1
  
  I think it would be a hard task for identifying spell errors in first and last names but you can fine-tune a BERT and use Damerau–Levenshtein distance in your final prediction. for further information you can read the paper below.
  
  [Misspelling Correction with Pre-trained Contextual
  Language Model](https://arxiv.org/pdf/2101.03204.pdf)
  
  
  ---
  
  