Fast and effective spellchecker for Russian medical texts
Project description
MedSpellChecker
Fast and effective tool for correcting spelling errors in Russian medical texts. The tool takes the raw medical text and returns the corrected text in lemmatized form.
This project is under active development and is gradually improving.
Demo
Tool demo is not yet ready and will be added later.
Supported errors
MedSpellChecker supports fixing the following types of errors.
For now, skip and extra space handling is in the prototype stage and may not work or may significantly affect performance. Other types of errors are handled stably well.
Internals
MedSpellChecker uses the SymDel algorithm to speed up the generation of correction candidates, and a fine-tuned BERT-based machine learning model to rank candidates and select the best fit.
The architecture of the MedSpellChecker tool is shown below.
This architecture allows each component to be developed almost independently and the correction process to be implemented flexibly.
- Spellchecker Manager - responsible for coordinating other components and implementing high-level logic.
- Preprocessor and PostProcessor - responsible for splitting the incoming text and assembling the result.
- Dictionary - contains a dictionary of correct words, which allows to check the correct word or not.
- Edit Distance Index - allows to optimize and speed up the calculation of the editing distance required to generate candicates for fixing an incorrect word.
- Error Model - responsible for generating candidates for fixing incorrect words.
- Language Model - based on the fine-tuned RuRoberta model, ranks candidates for fixing and selects the most suitable word for correction.
More information
This project is part of master's thesis. The current state is the result of the first year of work. More details about MedSpellCHecker you can find in the text of the term report .
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for medspellchecker-0.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 48fe9c716bb99a74b4fc12f62cfb45088fbb3dc3b1933968f1eeff36f60b9bf9 |
|
MD5 | 034167b731c33b59c23177e1965e7228 |
|
BLAKE2b-256 | dcf91895645022879248c44ecd635bfe2236686ac142a07d03371386394469c8 |