Browse Prior Art Database

Command Correction using an Associative Memory Spelling Checker

IP.com Disclosure Number: IPCOM000106444D
Original Publication Date: 1993-Nov-01
Included in the Prior Art Database: 2005-Mar-21
Document File: 4 page(s) / 109K

Publishing Venue

IBM

Related People

Kevern, B: AUTHOR

Abstract

An associative memory or neural network is disclosed to provide correction of misspelled commands entered by a user at the command entry display.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Command Correction using an Associative Memory Spelling Checker

      An associative memory or neural network is disclosed to provide
correction of misspelled commands entered by a user at the command
entry display.

      Rather than informing a user that the entered command was not
found, the system should be able to predict what the user meant to
type by examining what was typed on the command line.  The system can
then use this prediction to help the user correct the misspelled
command.

      An associative memory is trained to provide correction given a
dictionary of system commands.  The associative memory can then be
used to provide spelling correction given an erroneously entered
(misspelled) command.  The system uses the information from the
associative memory to return a list of commands which it predicts are
most closely a match for the command the user meant to type.

      The prototype of this system presents the predictions to the
user in the form of a list.  The user is allowed to retrieve a
command from this list as the next command to execute.

      Where other methods of implementing spelling checkers could
have been chosen, the use of an associative memory spelling checker
produces a very high correction rate (85-to-98 percent) and is more
resource efficient.

      In this implementation, the words the network learns about are
actually system commands.  As a new command is added to the system,
the associative memory is updated to include the information about
this command.  Likewise, when a command is removed from the system,
the memory is updated to 'forget' the information it had learned
about the command.

      As an example of a command being stored in the associative
memory, the following is presented.  In this instance, the CALL
command has been added to the associative memory that contains
monogram encoded commands.

      Since monogram encoding is being used, the monograms C,A,L and
L are added to the associative memory along with an indication of
which command contained the monogram (note that this picture shows
the string CALL as being stored to identify which monogram had which
command.  Obviously another more storage efficient method can be used
rather than encoding the character string name of the command, but
for example purposes, string names were used).  After this addition,
the associative memory looks like the following:

      As more commands are added to the memory, more 'nodes' are
added into the associative memory reflecting the number of
occurrences of that particular n-gram within the list of words stored
in the memory.  The number of occurrences of an n-gram in the set of
stored words...