# spaCy Symspell ## Spelling correction implementation in spaCy via Symspell
This package is a [spaCy 2.0 extension](https://spacy.io/usage/processing-pipelines#section-extensions) that adds sentnece/spelling corrections via Symspell to spaCy’s text processing pipeline.
## Installation
pip install spacy_symspell
## Notes This package is still in Alpha and there may be unforeseen errors. Dictionary loading time is also significant, can take up to 30 seconds on slow machines.
## Usage
Adding the component to the processing pipeline is relatively simple:
import spacy from spacy_symspell import SpellingCorrector
nlp = spacy.load(‘en_core_web_sm’) corrector = SpellingCorrector() nlp.add_pipe(corrector) doc = nlp(‘What doyuoknowabout antyhing’)
- for s in doc._.suggestions:#iterable
print(s) #What doyon about anything
doc._.segmentation #::segmented_string - What doyouk now about antyhing ::corrected_string - that dook now about anything
spaCy_symspell operates on Doc and Span spaCy objects. When called on a Doc or Span, the object is given two attributes: suggestions (a list of all found spelling suggestions) and segmentation (a corrected sentence in the case of ommitted spaces).
## Todo Symspell accuracy can be improved with the help of spaCy by extracting and analyzing resulting n-grams and cross-referencing with possible n-grams deductible from the character groups in the symspell result. For example the correction ‘that dook now’ leaves us with a verbless sentence, and on closer analysis will reveal that the character group ‘now’ is related with the verb ‘know’, and the verb know is associated with the n-gram ‘you know’.
## Under the hood [spacy_symspell](https://github.com/xwiz/spacy_symspell) is currently a wrapper of the [python port](https://github.com/mammothb/symspellpy) for [Symspell](https://github.com/wolfgarbe/SymSpell). For additional details, see the linked project pages.
Metadata
Release files for spacy-symspell 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| spacy_symspell-0.1.1.tar.gz | 3.7 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| spacy_symspell-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 7.3 MB
Release files / spacy_symspell-0.1.1.tar.gz
| Download URL | spacy_symspell-0.1.1.tar.gz |
|---|---|
| Size | 3.7 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9118ee569c1d90b7df37301d5dbba3a253da85846c850a5a35276a750bab4d40
|
|
BLAKE2b-256 checksum How to use checksums |
e8652799cde0b58f04d75d0c2d1b711b0d0142864d3666d23039a0afb3b4c415
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.5.3
|
Release files / spacy_symspell-0.1.1-py3-none-any.whl
| Download URL | spacy_symspell-0.1.1-py3-none-any.whl |
|---|---|
| Size | 3.7 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
86f2d220eb4532593836e5ae548d76eea613fca4b83044515ef53396f99976bb
|
|
BLAKE2b-256 checksum How to use checksums |
1f00b6c46a89b46c461c8818bf57adaa5f99cf53e5ae8d3271a67b2b413dfa06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.5.3
|