Ejemplo n.º 1
0
                        required=True)
    parser.add_argument("--editmodel",
                        "-e",
                        type=argparse.FileType('rb'),
                        required=True)
    args = parser.parse_args()

    s = SpellChecker(max_distance=2)
    s.load_language_model(args.languagemodel)
    s.load_channel_model(args.editmodel)

    print(s.channel_model.prob("hello", "hello"))
    print(s.channel_model.prob("hellp", "hello"))
    print(s.channel_model.prob("hllp", "hello"))

    print(s.check_text("they did not yb any menas"))
    """
    >>> [['they'], ['did'], ['not'], ['by', 'b', 'ye', 'y', 'yo', 'ob', 'ya', 'ab'], ['any'], 
    >>>  ['means', 'mens', 'mena', 'zenas', 'menan', 'mends']]
    """

    print(s.autocorrect_line("they did not yb any menas"))
    """
    >>> ['they', 'did', 'not', 'by', 'any', 'means']
    """

    print(s.suggest_line("they did not yb any menas", max_suggestions=2))
    """
    >>> ['they', 'did', 'not', ['by', 'b'], 'any', ['means', 'mens']]
    """
Ejemplo n.º 2
0
if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("--languagemodel",
                        "-l",
                        type=argparse.FileType('rb'),
                        required=True)
    parser.add_argument("--editmodel",
                        "-e",
                        type=argparse.FileType('rb'),
                        required=True)
    parser.add_argument("--corpus",
                        "-c",
                        type=argparse.FileType('r'),
                        default=sys.stdin)
    parser.add_argument("--icorpus", type=argparse.FileType('r'))
    args = parser.parse_args()

    s = SpellChecker(max_distance=2)
    s.load_language_model(args.languagemodel)
    s.load_channel_model(args.editmodel)
    corpus = args.corpus.readlines()
    icorpus = args.icorpus.readlines()

    for i in range(len(corpus)):
        if icorpus[i] != corpus[i]:
            print("LINE: ", corpus[i])
            corrected = s.autocorrect_line(corpus[i])
            print("CORRECTED: ", corrected)
            print("ISPELL: ", icorpus[i])
Ejemplo n.º 3
0
import argparse
import sys
from SpellCheck import SpellChecker
from LanguageModel import LanguageModel
from EditDistance import EditDistanceFinder

if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("--languagemodel",
                        "-l",
                        type=argparse.FileType('rb'),
                        required=True)
    parser.add_argument("--editmodel",
                        "-e",
                        type=argparse.FileType('rb'),
                        required=True)
    parser.add_argument("--corpus",
                        "-c",
                        type=argparse.FileType('r'),
                        default=sys.stdin)
    args = parser.parse_args()

    s = SpellChecker(max_distance=2)
    s.load_language_model(args.languagemodel)
    s.load_channel_model(args.editmodel)

    for line in args.corpus:
        print("LINE: ", line)
        corrected = s.autocorrect_line(line)
        print("CORRECTED: ", corrected)
    s.load_language_model(args.languagemodel)
    s.load_channel_model(args.editmodel)

    #print(s.channel_model.prob("hello", "hello"))
    #print(s.channel_model.prob("hellp", "hello"))
    #print(s.channel_model.prob("hllp", "hello"))

    #print(s.check_text("they did not yb any menas"))
    """
    >>> [['they'], ['did'], ['not'], ['by', 'b', 'ye', 'y', 'yo', 'ob', 'ya', 'ab'], ['any'], 
    >>>  ['means', 'mens', 'mena', 'zenas', 'menan', 'mends']]
    """

    sting = "they did not yb any menas"
    print(sting)
    print(s.autocorrect_line(sting))
    """
    >>> ['they', 'did', 'not', 'by', 'any', 'means']
    """
    sting = "I merely underlienes"
    print(sting)
    print(s.suggest_text(sting, 2))

    sting = "pronounce the foreing names"
    print(sting)
    print(s.suggest_text(sting, 2))

    sting = "One in hawiyei"
    print(sting)
    print(s.suggest_text(sting, 2))