How the [Q]Server™ WorksConsider what the system must do every time a user asks a
question and you will be better able to build a knowledge base that will be
efficient and accurate. When a user asks a question, the system goes through
a nine step process to display an answer. Understanding each of these steps can
help you to better take advantage of the capabilities of the [Q]Server and limit how much work you need to do to achieve
excellent results.. Step 1 – Select the Knowledge Bases to ScanNOTE: If [Q]Base
binding is not being used, then this step is skipped. If you are not
currently using [Q]Base binding, skip reading this
step until you become more familiar with the system. Every My[Q]Box must point to a
[Q]Base before it can answer questions. When [Q]Base
binding is used, a single [Q]Base can point to any number of [Q]Bases for
additional questions to consider. When a My[Q]Box points to a [Q]Base that
uses binding, it must first select which of the bound [Q]Bases to even
consider scanning. Scanning them all would take too long and would result in
many wrong answers. By eliminating entire sets of questions as the first
step, the need to scan potentially huge sets of data is eliminated. NOTE: You can set a [Q]Base to bind to other [Q]Bases using the "[Q]Base
Bindings" tool that is found in the "Administration" section
of the [Q]Server Tools. Every bound [Q]Base automatically
keeps a list of words that appear in the lexicons and within the [Q]Fields of
every question in that [Q]Base. You can specify additional words to flag that
a [Q]Base should be included using the "Additional Keywords for this
[Q]Base feature that is part of the "[Q]Base Bindings" tool found
in the "Administration" section of the [Q]Server Tools. Using this
tool, you can enter the names of the bound [Q]Bases.
Every word in the users question will be compared to the list, and only if
one or more of the words are found will the [Q]Base
be considered. Step 2 – Cleaning Up the InputEvery question that enters the system is first passed through a filter with a number of rules that clean the question and help achieve more uniformity. The following are the rules that are applied:
The system sees the converted question just as if the user had applied all the above rules and typed the question correctly in the first place. None of the original errors are seen by later stages in the system. Step 3 – Apply the LexiconFirst the Exact lexicon is applied, and then the Near Lexicon is applied. This changes the words entered by the user based on the Lexicon to appear to the system just as if the user had typed the question as converted. The Lexicon allows the user to use words and abbreviations that are common to an industry. An Exact Lexicon entry matches in a case-sensitive manner while the Near Lexicon matches using a case-insensitive comparison. When a user types in a question, it is scanned for any
lexicon matches, and if any match is found, the question is updated by
replacing the lexicon with the definition. A good Exact Lexicon example might be "US= A Near Lexicon example might be "cd=compact
disk" or "cd=certificate of deposit"
depending on the industry that is covered by the knowledge base. It is very
important to realize that different industries use similar words, acronyms
and abbreviations each with different meanings. Step 4 – Convert the Sentence from One Dimension to TwoThis is a very key stage in the processing of a question. Normally a question can be thought of as being one dimensional, having a beginning and moving to the right until it reaches the end. Expanding each word in a second dimension, down, helps to expand the definition of meaning in the question. Several filters are used to expand the sentence in the second dimension. The result is what is called "The Situation". NOTE: We won't show it here, but the
time of day, the season of the year, the user asking the question, the mood
and feelings of the system, combined with the context of the conversion and
other subtle variables are also parts of the situation and as such can affect
the outcome. "The Situation" defines everything the system knows
and can assume about what the user just asked. For more information about
situations as they relate to this system, read the "A.I. Overview"
document. The final section of that document covers the Situation/Response
technology that is the heart of the [Q]Server. The best way to describe converting a question from one dimension to two dimensions is by example. Let's assume the user is asking questions about real-estate, and types the question "How bieg is lot 45?". We use this question as the example because it contains words that have multiple meanings, misspellings and numbers, all which cause expansions in the second dimension. The sentence is expanded using the following filters:
The resulting two dimensional situation might look like this:
The additional information contained in the expanded two
dimensional question gives the system more to work with as it tries to find a
matching question in the Knowledge Base. The system will weigh the original
words typed by the user with more weight than words it constructed as part of
expanding the sentence in the second dimension. The addition
of these words make finding a match with the same meaning as the users
question, but with different words, much more likely. Step 5 – Select a Matching [Q]FormThe situation is then compared to all of the [Q]Forms created in the Knowledge Base. If a matching [Q]Form is found, then the words in the users question that match the [Q]Fields in the [Q]Form are flagged as highly important. Then, based on the "Answer Selection" settings found in the "Matching Options" section of the "Answer Page Look & Feel" tools found in the "Administration" section of the [Q]Server Tools. There are four possible settings as shown below:
Each of the above settings may result in different answers being given to any specific question asked by a user. At this point, it is highly recommended that you watch the "How [Q]Forms Are Used" video found in the "User Manual" tool in the "Miscellaneous" section of the [Q]Server Tools. If by chance a matching question is not found in the following steps, the default answer associated with the best matching [Q]Form will be used to respond to the user. If no matching [Q]Form is found, then the Master Default Answer will be used to respond to the user. NOTE: The Following step is skipped
if the "[Q]Fields are
ignored when matching users question" Answer Selection option is
selected. Step 6 – Select a List of Possible MatchesBy the time the system has reached this step, the situation is well defined and the meaning of the users question is likely to be well understood by the system. Even with all this information, the likelihood of finding a match in a large Knowledge Base is still not perfect. Reviewing every question in a Knowledge Base would be slow and would make finding a match difficult. To avoid fully scanning every question in the Knowledge Base, a filter is put in place at this stage that selects only those questions that have some likelihood of being a match to the users' question. The important words in the users question are used to quickly scan the Knowledge Base to find only questions that have the possibility of matching the users' question. The creation of a short list of questions to consider
greatly increases the efficiencies of the following stage. The short list
will still contain questions that are not related to the users' question, but
in most cases the ability to select the best question has been greatly
increased. It is so that this step can occur that we highly recommend using
[Q]Forms when you teach. Step 7 – Select Matching QuestionsThis step uses the proprietary "Relationship Engine™" to compare the meaning of every
question in the "list of questions to consider" to the meaning of
the users question. When it is done, it will have generated a very short list
of possible matches and applied a confidence rating to each match. Step 8 – EliminationEach question in the list is scanned and removed if any of the following rules are true:
NOTE:
You can
set the confidence threshold in the "Matching Options" section of
the "Answer Page Look & Feel" tool found in the
"Administration" section of the [Q]Server
Tools. Step 9 - Presentation
Once the best matching question is found, the answer for that question is retrieved and the settings from the "Answer Page Look & Feel" tool are applied to create the final output. |