NlpToolkit-SpellChecker
1.0.0
See the version list below for details.
dotnet add package NlpToolkit-SpellChecker --version 1.0.0
NuGet\Install-Package NlpToolkit-SpellChecker -Version 1.0.0
<PackageReference Include="NlpToolkit-SpellChecker" Version="1.0.0" />
paket add NlpToolkit-SpellChecker --version 1.0.0
#r "nuget: NlpToolkit-SpellChecker, 1.0.0"
// Install NlpToolkit-SpellChecker as a Cake Addin
#addin nuget:?package=NlpToolkit-SpellChecker&version=1.0.0
// Install NlpToolkit-SpellChecker as a Cake Tool
#tool nuget:?package=NlpToolkit-SpellChecker&version=1.0.0
This tool is a spelling checker for Modern Turkish. It detects spelling errors and corrects them appropriately, through its list of misspellings and matching to the Turkish dictionary.
Detailed Description
Creating SpellChecker
SpellChecker finds spelling errors and corrects them in Turkish. There are two types of spell checker available:
SimpleSpellChecker
To instantiate this, a
FsmMorphologicalAnalyzer
is needed.FsmMorphologicalAnalyzer fsm = FsmMorphologicalAnalyzer(); SpellChecker spellChecker = SimpleSpellChecker(fsm);
NGramSpellChecker
,To create an instance of this, both a
FsmMorphologicalAnalyzer
and aNGram
is required.FsmMorphologicalAnalyzer
can be instantiated as follows:FsmMorphologicalAnalyzer fsm = FsmMorphologicalAnalyzer();
NGram
can be either trained from scratch or loaded from an existing model.Training from scratch:
Corpus corpus = Corpus("corpus.txt"); NGram ngram = NGram(corpus.GetAllWordsAsArrayList(), 1); ngram.CalculateNGramProbabilities(LaplaceSmoothing());
There are many smoothing methods available. For other smoothing methods, check here.
Loading from an existing model:
NGram ngram = NGram("ngram.txt");
For further details, please check here.
Afterwards,
NGramSpellChecker
can be created as below:SpellChecker spellChecker = NGramSpellChecker(fsm, ngram);
Spell Correction
Spell correction can be done as follows:
Sentence sentence = new Sentence("Dıktor olaç yazdı");
Sentence corrected = spellChecker.SpellCheck(sentence);
Console.WriteLine(corrected);
Output:
Doktor ilaç yazdı
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.2 is compatible. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
-
.NETCoreApp 2.2
- NlpToolkit-MorphologicalAnalysis (>= 1.0.1)
- NlpToolkit-NGram (>= 1.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.