U.S. patent application number 16/181277 was filed with the patent office on 2019-03-07 for automatic disambiguation assistance for similar items in a set.
The applicant listed for this patent is ALLSCRIPTS SOFTWARE, LLC. Invention is credited to Todd Michael Eischeid, Mary S. Johnson.
Application Number | 20190073368 16/181277 |
Document ID | / |
Family ID | 56881320 |
Filed Date | 2019-03-07 |
![](/patent/app/20190073368/US20190073368A1-20190307-D00000.png)
![](/patent/app/20190073368/US20190073368A1-20190307-D00001.png)
![](/patent/app/20190073368/US20190073368A1-20190307-D00002.png)
![](/patent/app/20190073368/US20190073368A1-20190307-D00003.png)
![](/patent/app/20190073368/US20190073368A1-20190307-D00004.png)
![](/patent/app/20190073368/US20190073368A1-20190307-D00005.png)
![](/patent/app/20190073368/US20190073368A1-20190307-D00006.png)
![](/patent/app/20190073368/US20190073368A1-20190307-D00007.png)
![](/patent/app/20190073368/US20190073368A1-20190307-D00008.png)
![](/patent/app/20190073368/US20190073368A1-20190307-D00009.png)
![](/patent/app/20190073368/US20190073368A1-20190307-D00010.png)
View All Diagrams
United States Patent
Application |
20190073368 |
Kind Code |
A1 |
Eischeid; Todd Michael ; et
al. |
March 7, 2019 |
AUTOMATIC DISAMBIGUATION ASSISTANCE FOR SIMILAR ITEMS IN A SET
Abstract
A method includes calculating, for each unique pair of search
results of a plurality of search results, a first similarity value;
automatically determining that the determined first similarity
value for one or more of the unique pairs exceeds a similarity
value threshold; iterating through similarity value calculations,
until a similarity value is recalculated for each of the one or
more unique pairs for which the first similarity value exceeded the
similarity value threshold; and displaying the plurality of search
results, each search result including display of data corresponding
to default fields, and data corresponding to any looked up field
that was necessary to cause a recalculated similarity value to fall
below a threshold similarity value for any unique pair that search
result belongs to.
Inventors: |
Eischeid; Todd Michael;
(Cary, NC) ; Johnson; Mary S.; (Raleigh,
NC) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
ALLSCRIPTS SOFTWARE, LLC |
Chicago |
IL |
US |
|
|
Family ID: |
56881320 |
Appl. No.: |
16/181277 |
Filed: |
November 5, 2018 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
15396451 |
Dec 31, 2016 |
10120958 |
|
|
16181277 |
|
|
|
|
15261991 |
Sep 11, 2016 |
10127308 |
|
|
15396451 |
|
|
|
|
14069334 |
Oct 31, 2013 |
9443015 |
|
|
15261991 |
|
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
G06F 16/3322 20190101;
G06F 16/90344 20190101; G06F 16/951 20190101; G06F 16/338 20190101;
G06F 16/9535 20190101; G06Q 30/02 20130101; G06F 16/9038 20190101;
G06F 16/334 20190101 |
International
Class: |
G06F 17/30 20060101
G06F017/30; G06Q 30/02 20120101 G06Q030/02 |
Claims
1. A method for processing data in an electronic device,
comprising: (a) determining a respective set of data fields of one
or more default data fields to display for each of a plurality
search results responsive to a search string for a search query,
such determining including (i) automatically calculating, utilizing
a first search result of the plurality of search results and a
second search result of the plurality of search results, a first
similarity value representing a likelihood of user confusion
between the first search result and the second search result based
on the display of the default data fields, (ii) automatically
calculating, utilizing the first search result of the plurality of
search results and a third search result of the plurality of search
results, a second similarity value representing a likelihood of
user confusion between the first search result and the third search
result based on the display of the default data fields, (iii)
automatically calculating, utilizing the second search result of
the plurality of search results and the third search result of the
plurality of search results, a third similarity value representing
a likelihood of user confusion between the second search result and
the third search result based on the display of the default data
fields, (iv) automatically determining that the determined first
similarity value exceeds a similarity value threshold, (v) in
response to determining that the determined first similarity value
exceeds a similarity value threshold, determining one or more
additional data fields to display for the first and second results
to avoid user confusion by (A) looking up, based on configuration
settings, a first next field to utilize in similarity value
calculations, (B) automatically recalculating, utilizing the first
search result of the plurality of search results and the second
search result of the plurality of search results, a fourth
similarity value representing a likelihood of user confusion
between the first search result and the second search result based
on the display of the default data fields and the first next field,
and (C) automatically determining that the determined fourth
similarity value exceeds the similarity value threshold; (D)
looking up, based on configuration settings, a second next field to
utilize in similarity value calculations, (E) automatically
recalculating, utilizing the first search result of the plurality
of search results and the second search result of the plurality of
search results, a fifth similarity value representing a likelihood
of user confusion between the first search result and the second
search result based on the display of the default data fields and
the second next field, and (F) automatically determining that the
determined fifth similarity value does not exceed the similarity
value threshold; (b) displaying, via a display associated with the
electronic device, the plurality of search results, each displayed
search result displaying data for one or more data fields based on
the determined respective set of data fields to display for that
search result; (c) wherein, with the exception of the default
fields, each displayed search result does not include display of
extraneous data corresponding to fields that were not necessary to
cause a recalculated similarity value to fall below a threshold
similarity value.
2. The method of claim 1, wherein the electronic device comprises a
tablet.
3. The method of claim 1, wherein the electronic device comprises a
phone.
4. The method of claim 1, wherein the electronic device comprises a
laptop.
5. The method of claim 1, wherein the electronic device comprises a
desktop computer.
6. One or more non-transitory computer readable media containing
computer executable instructions for performing a method on an
electronic device, comprising: (a) determining a respective set of
data fields of one or more default data fields to display for each
of a plurality search results responsive to a search string for a
search query, such determining including (i) automatically
calculating, utilizing a first search result of the plurality of
search results and a second search result of the plurality of
search results, a first similarity value representing a likelihood
of user confusion between the first search result and the second
search result based on the display of the default data fields, (ii)
automatically calculating, utilizing the first search result of the
plurality of search results and a third search result of the
plurality of search results, a second similarity value representing
a likelihood of user confusion between the first search result and
the third search result based on the display of the default data
fields, (iii) automatically calculating, utilizing the second
search result of the plurality of search results and the third
search result of the plurality of search results, a third
similarity value representing a likelihood of user confusion
between the second search result and the third search result based
on the display of the default data fields, (iv) automatically
determining that the determined first similarity value exceeds a
similarity value threshold, (v) in response to determining that the
determined first similarity value exceeds a similarity value
threshold, determining one or more additional data fields to
display for the first and second results to avoid user confusion by
(A) looking up, based on configuration settings, a first next field
to utilize in similarity value calculations, (B) automatically
recalculating, utilizing the first search result of the plurality
of search results and the second search result of the plurality of
search results, a fourth similarity value representing a likelihood
of user confusion between the first search result and the second
search result based on the display of the default data fields and
the first next field, and (C) automatically determining that the
determined fourth similarity value exceeds the similarity value
threshold; (D) looking up, based on configuration settings, a
second next field to utilize in similarity value calculations, (E)
automatically recalculating, utilizing the first search result of
the plurality of search results and the second search result of the
plurality of search results, a fifth similarity value representing
a likelihood of user confusion between the first search result and
the second search result based on the display of the default data
fields and the second next field, and (F) automatically determining
that the determined fifth similarity value does not exceed the
similarity value threshold; (e) displaying, via a display
associated with the electronic device, the plurality of search
results, each displayed search result displaying data for one or
more data fields based on the determined respective set of data
fields to display for that search result; (f) wherein, with the
exception of the default fields, each displayed search result does
not include display of extraneous data corresponding to fields that
were not necessary to cause a recalculated similarity value to fall
below a threshold similarity value.
7. The one or more non-transitory computer readable media of claim
6, wherein the electronic device comprises a tablet.
8. The one or more non-transitory computer readable media of claim
6, wherein the electronic device comprises a phone.
9. The one or more non-transitory computer readable media of claim
6, wherein the electronic device comprises a laptop.
10. The one or more non-transitory computer readable media of claim
6, wherein the electronic device comprises a desktop computer.
11. A system including an electronic device and software loaded
thereon configured to (a) determining a respective set of data
fields of one or more default data fields to display for each of a
plurality search results responsive to a search string for a search
query, such determining including (i) automatically calculating,
utilizing a first search result of the plurality of search results
and a second search result of the plurality of search results, a
first similarity value representing a likelihood of user confusion
between the first search result and the second search result based
on the display of the default data fields, (ii) automatically
calculating, utilizing the first search result of the plurality of
search results and a third search result of the plurality of search
results, a second similarity value representing a likelihood of
user confusion between the first search result and the third search
result based on the display of the default data fields, (iii)
automatically calculating, utilizing the second search result of
the plurality of search results and the third search result of the
plurality of search results, a third similarity value representing
a likelihood of user confusion between the second search result and
the third search result based on the display of the default data
fields, (iv) automatically determining that the determined first
similarity value exceeds a similarity value threshold, (v) in
response to determining that the determined first similarity value
exceeds a similarity value threshold, determining one or more
additional data fields to display for the first and second results
to avoid user confusion by (A) looking up, based on configuration
settings, a first next field to utilize in similarity value
calculations, (B) automatically recalculating, utilizing the first
search result of the plurality of search results and the second
search result of the plurality of search results, a fourth
similarity value representing a likelihood of user confusion
between the first search result and the second search result based
on the display of the default data fields and the first next field,
and (C) automatically determining that the determined fourth
similarity value exceeds the similarity value threshold; (D)
looking up, based on configuration settings, a second next field to
utilize in similarity value calculations, (E) automatically
recalculating, utilizing the first search result of the plurality
of search results and the second search result of the plurality of
search results, a fifth similarity value representing a likelihood
of user confusion between the first search result and the second
search result based on the display of the default data fields and
the second next field, and (F) automatically determining that the
determined fifth similarity value does not exceed the similarity
value threshold; (e) displaying, via a display associated with the
electronic device, the plurality of search results, each displayed
search result displaying data for one or more data fields based on
the determined respective set of data fields to display for that
search result; (f) wherein, with the exception of the default
fields, each displayed search result does not include display of
extraneous data corresponding to fields that were not necessary to
cause a recalculated similarity value to fall below a threshold
similarity value.
12. The system of claim 11, wherein the electronic device comprises
a tablet.
13. The system of claim 11, wherein the electronic device comprises
a phone.
14. The system of claim 11, wherein the electronic device comprises
a laptop.
15. The system of claim 11, wherein the electronic device comprises
a desktop computer.
Description
CROSS-REFERENCE TO RELATED APPLICATION
[0001] The present application is a U.S. continuation patent
application of, and claims priority under 35 U.S.C. .sctn.120 to,
U.S. nonprovisional patent application Ser. No. 15/396,451, which
'451 is a U.S. continuation patent application of, and claims
priority under 35 U.S.C. .sctn.120 to U.S. nonprovisional patent
application Ser. No. 15/261,991, which '991 application is a U.S.
continuation patent application of, and claims priority under 35
U.S.C. .sctn.120 to, U.S. nonprovisional patent application Ser.
No. 14/069,334, filed Oct. 31, 2013, now U.S. Pat. No. 9,443,015,
incorporated herein by reference.
BACKGROUND OF THE INVENTION
[0002] The present invention generally relates to methodologies for
displaying search results.
[0003] When searching a large domain of information such as a
medical patient database, often a user is searching for a
particular patient. This represents a different scenario than a web
search, where a user is often not searching for a particular web
page.
[0004] For example, in a traditional search flow in the health care
space, a user might initiate a patient search by inputting a name,
a birthdate, or a patient identifier. In response, a system might
display search results comprising a list of patients. FIG. 1
illustrates an exemplary display of such search results in response
to a user, looking to search for "Sally Smith", inputting a search
string of "Smith, Sa". Sometimes, displayed search results will
include display of additional information about each patient, but
will generally not show all patient information for each patient in
order to keep the result list readable by the user.
[0005] If the user enters a first and last name, and the search
domain is very large, then a large number of search results could
be returned with many appearing very similar to one another in
terms of the displayed information. For example, if the user is
looking for Sally Smith, and the system contains 34 Sally Smiths,
then many of those search results could be visually very similar
and the user may not see enough distinguishing information across
the search results in order to pick out the Sally Smith that they
are interested in, as illustrated in FIG. 1. A need exists for
improvement in methodologies for displaying search results. This
need and other needs are addressed by one or more aspects of the
present invention.
SUMMARY OF THE INVENTION
[0006] The present invention includes many aspects and features.
Moreover, while many aspects and features relate to, and are
described in, the context of electronic medical records, the
present invention is not limited to use only in this context, as
will become apparent from the following summaries and detailed
descriptions of aspects, features, and one or more embodiments of
the present invention.
[0007] Accordingly, one aspect of the present invention relates to
a method compromising receiving, via one or more input devices
associated with an electronic device, input corresponding to a
search string for a search query; retrieving, based on the search
string for the search query, a plurality of search results;
automatically determining, based on configuration settings, one or
more default fields for the search results to be displayed in
connection with the search query; automatically calculating, for
each unique pair of search results of the plurality of search
results, a first similarity value; automatically determining that
the determined first similarity value for one or more of the unique
pairs exceeds a similarity value threshold; iterating through
similarity value calculations, until a similarity value is
recalculated for each of the one or more unique pairs for which the
first similarity value exceeded the similarity value threshold, by
repeatedly looking up, in configuration settings, a next field to
utilize in similarity calculations, automatically recalculating,
based in part on the looked up next field, for the one or more of
the unique pairs for which the last calculated similarity value was
determined to exceed the similarity value threshold, a new
similarity value, determining whether the most recently
recalculated similarity value, for each of the one or more of the
unique pairs for which the last calculated similarity value was
determined to exceed the similarity value threshold, exceeds the
similarity value threshold; upon determining that a similarity
value has been recalculated for each of the one or more unique
pairs for which the first similarity value exceeded the similarity
value threshold; and displaying, via a display associated with the
electronic device, the plurality of search results, each search
result including display of data corresponding to the default
fields, and data corresponding to any looked up field that was
necessary to cause a recalculated similarity value to fall below a
threshold similarity value for any unique pair that search result
belongs to, wherein, with the exception of the default fields, each
displayed search result does not include display of extraneous data
corresponding to fields that were not necessary to cause a
recalculated similarity value to fall below a threshold similarity
value for a unique pair that search result belongs to.
[0008] In a feature of this aspect, the electronic device comprises
a tablet.
[0009] In a feature of this aspect, the electronic device comprises
a phone.
[0010] In a feature of this aspect, the electronic device comprises
a laptop.
[0011] In a feature of this aspect, the electronic device comprises
a desktop computer.
[0012] In a feature of this aspect, the one or more input devices
comprise a mouse.
[0013] In a feature of this aspect, the one or more input devices
comprise a touchpad.
[0014] In a feature of this aspect, the one or more input devices
comprise a keyboard.
[0015] In a feature of this aspect, the one or more input devices
comprise a trackball.
[0016] In a feature of this aspect, the one or more input devices
comprise a camera.
[0017] In a feature of this aspect, the one or more input devices
comprise a touchscreen.
[0018] In a feature of this aspect, the display comprises a
touchscreen.
[0019] In a feature of this aspect, the display comprises a
monitor.
[0020] In a feature of this aspect, the display comprises a
keyboard.
[0021] Another aspect relates to a method comprising receiving, via
one or more input devices associated with an electronic device,
input corresponding to a search string for a search query;
retrieving, based on the search string for the search query, a
plurality of search results; automatically determining, based on
configuration settings, one or more default fields for the search
results to be displayed in connection with the search query;
automatically calculating, for each unique pair of search results
of the plurality of search results, a first similarity value;
automatically determining that the determined first similarity
value for one or more of the unique pairs exceeds a similarity
value threshold; iterating through similarity value calculations,
until a similarity value is recalculated for each of the one or
more unique pairs for which the first similarity value exceeded the
similarity value threshold, by repeatedly looking up, in
configuration settings, a next field to utilize in similarity
calculations, automatically recalculating, based in part on the
looked up next field, for the one or more of the unique pairs for
which the last calculated similarity value was determined to exceed
the similarity value threshold, a new similarity value, determining
whether the most recently recalculated similarity value, for each
of the one or more of the unique pairs for which the last
calculated similarity value was determined to exceed the similarity
value threshold, exceeds the similarity value threshold; upon
determining that a similarity value has been recalculated for each
of the one or more unique pairs for which the first similarity
value exceeded the similarity value threshold; and displaying, via
a display associated with the electronic device, the plurality of
search results, each search result including display of data
corresponding to the default fields, and data corresponding to any
looked up field that was utilized to cause a recalculated
similarity value to fall below a threshold similarity value for any
unique pair that search result belongs to, wherein, with the
exception of the default fields, each displayed search result does
not include display of extraneous data corresponding to fields that
were not utilized to cause a recalculated similarity value to fall
below a threshold similarity value for a unique pair that search
result belongs to.
[0022] Another aspect relates to a method comprising receiving, via
one or more input devices associated with an electronic device,
input corresponding to a search string for a search query;
retrieving, based on the search string for the search query, a
plurality of search results; automatically determining, based on
configuration settings, one or more default fields for the search
results to be displayed in connection with the search query;
automatically calculating, for each unique pair of search results
of the plurality of search results, a first similarity value;
automatically determining that the determined first similarity
value for one or more of the unique pairs exceeds a similarity
value threshold; iterating through similarity value calculations,
until a similarity value is recalculated for each of the one or
more unique pairs for which the first similarity value exceeded the
similarity value threshold, by repeatedly looking up, in
configuration settings, a next field to utilize in similarity
calculations, automatically recalculating, based in part on the
looked up next field, for the one or more of the unique pairs for
which the last calculated similarity value was determined to exceed
the similarity value threshold, a new similarity value, determining
whether the most recently recalculated similarity value, for each
of the one or more of the unique pairs for which the last
calculated similarity value was determined to exceed the similarity
value threshold, exceeds the similarity value threshold; upon
determining that a similarity value has been recalculated for each
of the one or more unique pairs for which the first similarity
value exceeded the similarity value threshold; and displaying, via
a display associated with the electronic device, the plurality of
search results, each search result including display of a value for
that search result corresponding to the default fields, and a value
for that search result corresponding to any looked up field that
was required to cause a recalculated similarity value to fall below
a threshold similarity value for any unique pair, wherein, with the
exception of the default fields, each displayed search result does
not include display of extraneous data corresponding to fields that
were not required to cause a recalculated similarity value to fall
below a threshold similarity value for any unique pair.
[0023] Another aspect relates to receiving, via one or more input
devices associated with an electronic device, input corresponding
to a search string for a search query; retrieving, based on the
search string for the search query, a plurality of search results;
automatically determining, based on configuration settings, one or
more default fields for the search results to be displayed in
connection with the search query; automatically calculating, for
each unique pair of search results of the plurality of search
results, a first similarity value; automatically determining that
the determined first similarity value for one or more of the unique
pairs exceeds a similarity value threshold; iterating through
similarity value calculations, until a similarity value is
recalculated for each of the one or more unique pairs for which the
first similarity value exceeded the similarity value threshold, by
repeatedly looking up, in configuration settings, a next field to
utilize in similarity calculations, automatically recalculating,
based in part on the looked up next field, for the one or more of
the unique pairs for which the last calculated similarity value was
determined to exceed the similarity value threshold, a new
similarity value, determining whether the most recently
recalculated similarity value, for each of the one or more of the
unique pairs for which the last calculated similarity value was
determined to exceed the similarity value threshold, exceeds the
similarity value threshold; upon determining that a similarity
value has been recalculated for each of the one or more unique
pairs for which the first similarity value exceeded the similarity
value threshold; and displaying, via a display associated with the
electronic device, the plurality of search results, each search
result including display of a value for that search result
corresponding to the default fields, and a value for that search
result corresponding to any looked up field that was utilized to
cause a recalculated similarity value to fall below a threshold
similarity value for any unique pair, wherein, with the exception
of the default fields, each displayed search result does not
include display of extraneous data corresponding to fields that
were not utilized to cause a recalculated similarity value to fall
below a threshold similarity value for any unique pair.
[0024] In addition to the aforementioned aspects and features of
the present invention, it should be noted that the present
invention further encompasses the various possible combinations and
subcombinations of such aspects and features. Thus, for example,
any aspect may be combined with an aforementioned feature in
accordance with the present invention without requiring any other
aspect or feature.
BRIEF DESCRIPTION OF THE DRAWINGS
[0025] One or more preferred embodiments of the present invention
now will be described in detail with reference to the accompanying
drawings, wherein the same elements are referred to with the same
reference numerals, and wherein:
[0026] FIG. 1 illustrates an exemplary display of search results in
response to a user, looking to search for "Sally Smith", inputting
a search string of "Smith, Sa";
[0027] FIG. 2 illustrates the display of data corresponding to
additional data fields as compared to the interface of FIG. 1;
[0028] FIG. 3A illustrates the display of search results in
accordance with one or more preferred implementations, where a
system has determined that there is a degree of similarity between
two patients named "Sally A. Smith", and so displays additional
data corresponding to these patients;
[0029] FIG. 3B illustrates the display of search results similar to
that of FIG. 3A, except that data corresponding to the same data
fields are displayed for all results;
[0030] FIG. 4 illustrates an exemplary methodology for calculating
a similarity value;
[0031] FIG. 5 illustrates calculation of a similarity value
corresponding to similarity between first and second search
results;
[0032] FIG. 6 illustrates calculation of a similarity value
corresponding to similarity between first and third search
results;
[0033] FIG. 7 illustrates calculation of a similarity value
corresponding to similarity between fourth and fifth search
results;
[0034] FIG. 8A illustrates a similarity matrix;
[0035] FIG. 8B illustrates the similarity matrix of FIG. 8A, with
highlighting (via underlining) for each of the similarity values in
the similarity matrix which exceeds a threshold similarity value of
"0.650";
[0036] FIG. 9 illustrates an exemplary user interface for allowing
a user to modify an order for fields to potentially utilize for
display;
[0037] FIG. 10 illustrates calculation of a similarity value
utilizing an age field in addition to first name, last name, and
middle initial fields;
[0038] FIG. 11 illustrates specific calculation of a similarity
value of "0.750" for first and second results which were previously
determined to be similar;
[0039] FIG. 12 illustrates specific calculation of a similarity
value for fourth and fifth results which were previously determined
to be similar;
[0040] FIG. 13A illustrates a similarity matrix populated based on
calculations in accordance with FIG. 10;
[0041] FIG. 13B illustrates the similarity matrix of FIG. 13A with
similarity values exceeding a threshold value of "0.650"
highlighted;
[0042] FIG. 14 illustrates calculation of a similarity value
utilizing a title field in addition to first name, last name,
middle initial, and age fields;
[0043] FIG. 15 illustrates specific calculation of a similarity
value of "0.600" for first and second results which were previously
determined to be similar;
[0044] FIG. 16 illustrates a similarity matrix populated based on
calculations in accordance with FIG. 14;
[0045] FIG. 17 illustrates a change in an order offield priority
that places a gender field ahead of an age field;
[0046] FIG. 18 illustrates calculation of a similarity value
utilizing a gender field in addition to first name, last name, and
middle initial fields;
[0047] FIG. 19 illustrates specific calculation of a similarity
value of "1.000" for first and second results which were previously
determined to be similar;
[0048] FIG. 20 illustrates specific calculation of a similarity
value of "0.750" for fourth and fifth results which were previously
determined to be similar;
[0049] FIG. 21 illustrates a similarity matrix populated based on
calculations in accordance with FIG. 18;
[0050] FIG. 22 illustrates calculation of a similarity value
utilizing an age field in addition to first name, last name, middle
initial, and gender fields;
[0051] FIG. 23 illustrates calculation of a similarity value
utilizing an age field in addition to first name, last name, middle
initial fields, following discarding of a gender field;
[0052] FIG. 24 illustrates an interface with display of a gender
value omitted in accordance with discarding of a gender field;
[0053] FIG. 25 illustrates changes in the order offield priority
that place a title field ahead of an age field;
[0054] FIGS. 26-27 illustrate calculation of similarity values
utilizing a title field in addition to first name, last name, and
middle initial fields;
[0055] FIG. 28 illustrates a similarity matrix populated based on
calculations in accordance
[0056] FIG. 29 illustrates specific calculation of a similarity
value of "0.600" utilizing an age field in addition to first name,
last name, middle initial, and title fields;
[0057] FIG. 30 illustrates, for implementations in which a title
field was not discarded for fourth and fifth results, specific
calculation of a similarity value of "0.600";
[0058] FIG. 31 illustrates a display in accordance with FIG.
30;
[0059] FIG. 32 illustrates, for implementations in which a title
field was discarded, specific calculation of a similarity value of
"0.500";
[0060] FIG. 33 illustrates an exemplary formula for calculating a
value indicating a difference between values of the same field of
different results;
[0061] FIG. 34 illustrates how the exemplary formula of FIG. 33 can
be utilized to determine a similarity value for an age field for
different results;
[0062] FIGS. 35 and 36 illustrate specific calculation of
similarity values utilizing an age field in addition to first name,
last name, and middle initial fields;
[0063] FIG. 37 illustrates a similarity matrix populated based on
calculations in accordance with FIGS. 35-36;
[0064] FIG. 38 illustrates an implementation in which default
fields have been configured to include an age field, and in which
each field that might be utilized in a similarity value
determination is weighted; field in addition to first name, last
name, and middle initial fields.
[0065] FIG. 39 illustrates an exemplary formula for calculating a
weighted similarity value; with FIGS. 26-27; and
[0066] FIG. 40 illustrates specific calculation of a weighted
similarity value utilizing a title.
DETAILED DESCRIPTION
[0067] As a preliminary matter, it will readily be understood by
one having ordinary skill in the relevant art ("Ordinary Artisan")
that the present invention has broad utility and application. As
should be understood, any embodiment may incorporate only one or a
plurality of the above-disclosed aspects of the invention and may
further incorporate only one or a plurality of the above-disclosed
features. Furthermore, any embodiment discussed and identified as
being "preferred" is considered to be part of a best mode
contemplated for carrying out the present invention. Other
embodiments also may be discussed for additional illustrative
purposes in providing a full and enabling disclosure of the present
invention. As should be understood, any embodiment may incorporate
only one or a plurality of the above disclosed aspects of the
invention and may further incorporate only one or a plurality of
the above-disclosed features. Moreover, many embodiments, such as
adaptations, variations, modifications, and equivalent
arrangements, will be implicitly disclosed by the embodiments
described herein and fall within the scope of the present
invention.
[0068] Accordingly, while the present invention is described herein
in detail in relation to one or more embodiments, it is to be
understood that this disclosure is illustrative and exemplary of
the present invention, and is made merely for the purposes of
providing a full and enabling disclosure of the present invention.
The detailed disclosure herein of one or more embodiments is not
intended, nor is to be construed, to limit the scope of patent
protection afforded the present invention, which scope is to be
defined by the claims and the equivalents thereof. It is not
intended that the scope of patent protection afforded the present
invention be defined by reading into any claim a limitation found
herein that does not explicitly appear in the claim itself.
[0069] Thus, for example, any sequence(s) and/or temporal order of
steps of various processes or methods that are described herein are
illustrative and not restrictive. Accordingly, it should be
understood that, although steps of various processes or methods may
be shown and described as being in a sequence or temporal order,
the steps of any such processes or methods are not limited to being
carried out in any particular sequence or order, absent an
indication otherwise. Indeed, the steps in such processes or
methods generally may be carried out in various different sequences
and orders while still falling within the scope of the present
invention. Accordingly, it is intended that the scope of patent
protection afforded the present invention is to be defined by the
appended claims rather than the description set forth herein.
[0070] Additionally, it is important to note that each term used
herein refers to that which the Ordinary Artisan would understand
such term to mean based on the contextual use of such term herein.
To the extent that the meaning of a term used herein-as understood
by the Ordinary Artisan based on the contextual use of such
term-differs in any way from any particular dictionary definition
of such term, it is intended that the meaning of the term as
understood by the Ordinary Artisan should prevail.
[0071] Regarding applicability of 35 U.S.C. .sctn. 112, .about.6,
no claim element is intended to be read in accordance with this
statutory provision unless the explicit phrase "means for" or "step
for" is actually used in such claim element, whereupon this
statutory provision is intended to apply in the interpretation of
such claim element.
[0072] Furthermore, it is important to note that, as used herein,
"a" and "an" each generally denotes "at least one," but does not
exclude a plurality unless the contextual use dictates otherwise.
Thus, reference to "a picnic basket having an apple" describes "a
picnic basket having at least one apple" as well as "a picnic
basket having apples." In contrast, reference to "a picnic basket
having a single apple" describes "a picnic basket having only one
apple."
[0073] When used herein to join a list of items, "or" denotes "at
least one of the items," but does not exclude a plurality of items
of the list. Thus, reference to "a picnic basket having cheese or
crackers" describes "a picnic basket having cheese without
crackers", "a picnic basket having crackers without cheese", and "a
picnic basket having both cheese and crackers." Finally, when used
herein to join a list of items, "and" denotes "all of the items of
the list." Thus, reference to "a picnic basket having cheese and
crackers" describes "a picnic basket having cheese, wherein the
picnic basket further has crackers," as well as describes "a picnic
basket having crackers, wherein the picnic basket further has
cheese."
[0074] Referring now to the drawings, one or more preferred
embodiments of the present invention are next described. The
following description of one or more preferred embodiments is
merely exemplary in nature and is in no way intended to limit the
invention, its implementations, or uses.
[0075] As noted above, in accordance with some conventional search
methodologies, if a user is looking for data, such as data about a
particular patient named Sally Smith, and a system contains data on
multiple Sally Smiths, then displayed search results could be
visually very similar and a user may not see enough distinguishing
information across the search results in order to pick out the
Sally Smith that they are interested in, as illustrated in FIG. 1.
Although the system could be configured to display data
corresponding to a large number of fields to guard against this, as
illustrated in FIG. 2, this can in some instances create an
unnecessarily cluttered interface, and make it harder for a user to
quickly review search results.
[0076] In one or more preferred methodologies in accordance with
one or more embodiments, a system dynamically adapts the data
displayed for search results to facilitate review by a user. In one
or more preferred implementations, such adaptation involves the
display of more or fewer distinct data fields for each search
result. In one or more preferred implementations, the system
determines data fields to display to help a user distinguish search
results, and displays data corresponding to those fields for all
search results, while in other preferred implementations the data
displayed for every search result is not necessarily the same. That
is, in one or more preferred implementations, the system may
display data corresponding to a first number of data fields for
most entries, but display data corresponding to one or more
additional data fields for entries that the system has determined
might be confused by a user.
[0077] For example, FIG. 3A illustrates the display of search
results in accordance with one or more preferred implementations,
where the system has determined that there is a degree of
similarity between the two patients named "Sally A. Smith", and so
displays additional data corresponding to these patients.
Similarly, the system has determined that there is similarity
between the two patients named "Sandra Smith", and so displays
additional data corresponding to these patients as well.
[0078] Notably, in this implementation, additional data is not
displayed with respect to other patients displayed in the search
results, although in at least some implementations, the same data
fields may be displayed for all search results, as illustrated in
FIG. 3B.
[0079] In an exemplary preferred methodology, a result set for a
search is analyzed for similarity among items in the set to
determine search results that a user might find confusing. In one
or more preferred implementations, one or more similarity matrices
are computed and utilized to dynamically adapt or modify the
display of search results.
[0080] For example, with respect to strings, a simple string
comparison algorithm might be utilized to determine similarity
between two strings.
[0081] Returning to the example of FIG. 1, in an exemplary
methodology, a system would calculate similarity values between
search results based on the data to be displayed by default.
[0082] For example, if the default is to only display data
corresponding to a "First Name" field, a "Last Name" field, and a
"Middle Initial" field, then a similarity value for two results
might be computed by determining a similarity value for each field
of the two results (e.g., comparing the "Last Name" value of the
first result to the "Last Name" value of the second result), adding
these similarity values together, and then dividing by the total of
number of fields to be displayed by default (in this case, three).
This exemplary methodology is illustrated in FIG. 4.
[0083] In accordance with this exemplary methodology, a similarity
value would be calculated between first and second search results
as illustrated in FIG. 5. In this manner, a similarity value would
be calculated between each result of the results set. For example,
FIG. 6 illustrates calculation of a similarity value corresponding
to similarity between first and third search results, and FIG. 7
illustrates calculation of a similarity value corresponding to
similarity between fourth and fifth search results.
[0084] The calculated similarity values can be utilized to populate
a similarity matrix, as illustrated in FIG. 8A. In one or more
preferred implementations, such a similarity matrix is first
calculated for the display of default fields, and a determination
is made as to whether additional fields over and above the default
fields need to be displayed based on whether a similarity value
between two search results (as represented in the similarity
matrix) exceeds a certain threshold.
[0085] Returning to the example of FIG. 7, if the system had a
threshold similarity value of "0.650", the system would determine,
based on the similarity values in the similarity matrix, that
additional fields need to be displayed for at least results one and
two (based on the similarity value "1.000" corresponding to the
first and second results exceeding the threshold value of "0.650"),
and results four and five (based on the similarity value "0.666"
corresponding to the fourth and fifth results exceeding the
threshold similarity value of "0.650"). FIG. 8B highlights (via
underlining) each of the similarity values in the similarity matrix
of FIG. 8A which exceeds the threshold similarity value of
"0.650".
[0086] The system will preferably adapt based on a model of what a
human user might find more or less distinctive about certain
results. For example, in one or more preferred implementations, one
or more additional data fields, such as an age field, would be
evaluated for possible display, and one or more new similarity
values calculated based on possible inclusion of such fields. In
some preferred implementations, all similarity values might be
recalculated, while in other preferred implementations, only those
similarity values for results determined to need further
distinction might be calculated.
[0087] In one or more preferred implementations, the one or more
additional fields to be evaluated for possible display are selected
from a list in a predetermined, or user selected, order. FIG. 9
illustrates an exemplary user interface for allowing a user to
modify such an order. In one or more preferred implementations,
such a user interface may only be available as part of separate
configuration application, or may only be available to
administrative users.
[0088] In accordance with the order illustrated in FIG. 9, if the
system determines that display of the default last name, first
name, and middle initial fields is not sufficient to distinguish
the results (e.g. the calculated similarity values do not exceed a
threshold similarity value, which may also be predetermined or user
configurable), then one or more new similarity values are
calculated based on potential inclusion of one or more next fields
in the order.
[0089] Based on the order illustrated in FIG. 9, the next field to
be utilized is an age field. FIG. 10 illustrates calculation of a
similarity value utilizing an age field in addition to first name,
last name, and middle initial fields. FIG. 11 illustrates specific
calculation of a similarity value of "0.750" using this methodology
for the first and second results which were previously determined
to be similar, and FIG. 12 illustrates specific calculation of a
similarity value using this methodology for the fourth and fifth
results which were previously determined to be similar.
[0090] FIG. 13A illustrates the resulting similarity matrix
populated based on these calculations, and FIG. 13B illustrates the
same similarity matrix with similarity values exceeding the
threshold value of "0.650" highlighted (in this implementation, the
same threshold similarity value is utilized for analysis of this
second similarity matrix, but in at least some preferred
implementations, a higher or lower threshold similarity value may
be utilized).
[0091] The system would then once again make a determination as to
whether additional fields over and above the contemplated display
fields (in this example, updated as compared to the initial default
display fields to include an age field) need to be displayed based
on whether a similarity value between two search results (as
represented in the similarity matrix) exceeds a certain threshold.
As illustrated in FIG. 13B, the similarity value of "0.750"
corresponding to the first and second results exceeds the threshold
similarity value of "0.650", so one or more additional fields will
need to be displayed, and the system will continue to iterate
through the list of fields.
[0092] Based on the order illustrated in FIG. 9, the next field to
be utilized is a title field. FIG. 14 illustrates calculation of a
similarity value utilizing a title field in addition to first name,
last name, middle initial, and age fields. FIG. 15 illustrates
specific calculation of a similarity value of "0.600" using this
methodology for the first and second results which were previously
determined to be similar.
[0093] FIG. 16 illustrates the resulting similarity matrix
populated based on these calculations. The system would then once
again make a determination as to whether additional fields over and
above the contemplated display fields (in this example, updated as
compared to the previous calculation to include a title field) need
to be displayed based on whether a similarity value between two
search results (as represented in the similarity matrix) exceeds a
certain threshold. As illustrated in FIG. 16, the similarity value
of "0.600" corresponding to the first and second results falls
below the threshold similarity value of "0.650", so no more
additional fields will need to be displayed. Consequently, the
search results are displayed as illustrated in FIG. 9.
[0094] Notably, a user could alter the order of field priority for
purposes of determining similarity. FIG. 17 illustrates a change in
the order of field priority that places a gender field ahead of an
age field. Returning to the similarity matrix of FIG. 8B, where the
default fields are determined to be insufficient to distinguish
between the first and second results and the fourth and fifth
results, the next field in the order, now a gender field, would be
evaluated for possible display, and one or more new similarity
values calculated based on possible inclusion of such field.
[0095] FIG. 18 illustrates calculation of a similarity value
utilizing a gender field in addition to first name, last name, and
middle initial fields. FIG. 19 illustrates specific calculation of
a similarity value of "1.000" using this methodology for the first
and second results which were previously determined to be similar,
and FIG. 20 illustrates specific calculation of a similarity value
of "0.750" using this methodology for the fourth and fifth results
which were previously determined to be similar.
[0096] FIG. 21 illustrates the resulting similarity matrix
populated based on these calculations, with similarity values
exceeding the threshold value of "0.650" highlighted.
[0097] The system would then once again make a determination as to
whether additional fields over and above the contemplated display
fields (in this example, updated as compared to the initial default
display fields to include a gender field) need to be displayed
based on whether a similarity value between two search results (as
represented in the similarity matrix) exceeds a certain threshold.
As illustrated in FIG. 21, both the similarity value of "1.000"
corresponding to the first and second results and the similarity
value of "0.750" corresponding to the fourth and fifth results
exceeds the threshold similarity value of "0.650", so one or more
additional fields will need to be displayed.
[0098] In one or more preferred implementations, the next field in
the order, now an age field, would be evaluated for possible
display, and one or more new similarity values calculated based on
possible inclusion of such field. FIG. 22 illustrates calculation
of a similarity value utilizing an age field in addition to first
name, last name, middle initial, and gender fields.
[0099] Notably, however, use of the gender field in such
calculations, rather than decreasing the similarity value between
each of these pairs, increased the similarity value between each of
these pairs. In one or more preferred implementations, this would
cause the gender field to be discarded, both for use in future
calculations and for eventual display, and the system would move to
the next field in the order, now an age field, evaluated that field
for possible display, and calculate one or more new similarity
values based on possible inclusion of such field. FIG. 23
illustrates calculation of a similarity value utilizing an age
field in addition to first name, last name, middle initial fields,
following discarding of a gender field. In such an implementation,
rather than displaying a gender value as illustrated in FIG. 17,
display of a gender value would be omitted as illustrated in FIG.
24.
[0100] FIG. 25 illustrates additional changes in the order of field
priority that place a title field ahead of an age field. Returning
to the similarity matrix of FIG. 8B, where the default fields are
determined to be insufficient to distinguish between the first and
second results and the fourth and fifth results, the next field in
the order, now a title field, would be evaluated for possible
display, and one or more new similarity values calculated based on
possible inclusion of such field.
[0101] FIGS. 26-27 illustrate calculation of similarity values
utilizing a title field in addition to first name, last name, and
middle initial fields. FIG. 26 illustrates specific calculation of
a similarity value of "0.750" using this methodology for the first
and second results which were previously determined to be similar,
and FIG. 27 illustrates specific calculation of a similarity value
of "0.750" using this methodology for the fourth and fifth results
which were previously determined to be similar.
[0102] FIG. 28 illustrates the resulting similarity matrix
populated based on these calculations, with similarity values
exceeding the threshold value of "0.650" highlighted.
[0103] The system would then once again make a determination as to
whether additional fields over and above the contemplated display
fields (in this example, updated as compared to the initial default
display fields to include a title field) need to be displayed based
on whether a similarity value between two search results (as
represented in the similarity matrix) exceeds a certain threshold.
As illustrated in FIG. 28, both the similarity value of "0.750"
corresponding to the first and second results and the similarity
value of "0.750" corresponding to the fourth and fifth results
exceeds the threshold similarity value of "0.650", so one or more
additional fields will need to be displayed.
[0104] Although the inclusion of the title field decreased the
similarity value for the first and second results, it increased the
similarity value for the fourth and fifth results. In one or more
preferred implementations, the title field would be discarded for
the fourth and fifth results, as previously described with respect
to the gender field, while in one or more other preferred
implementations, the title field would nevertheless continue to be
utilized for the fourth and fifth results.
[0105] In either event, the next field in the order, now an age
field, would be evaluated for possible display, and one or more new
similarity values calculated based on possible inclusion of such
field.
[0106] FIG. 29 illustrates specific calculation of a similarity
value of "0.600" utilizing an age field in addition to first name,
last name, middle initial, and title fields. FIG. 30 illustrates,
for implementations in which the title field was not discarded for
the fourth and fifth results, specific calculation of a similarity
value of "0.600", resulting in display as seen in FIG. 31, while
FIG. 32 illustrates, for implementations in which the title field
was discarded, specific calculation of a similarity value of
"0.500", resulting in a display as seen in FIG. 25.
[0107] Although similarity comparisons between the same field of
different results have been illustrated thus far as being binary
comparisons resulting in a "1" value indicating identical values,
or a "0" value representing different values, in one or more
preferred implementations, a calculated value at least partially
indicates an extent of difference between values of the same field
of different results.
[0108] For example, FIG. 33 illustrates an exemplary formula for
calculating such a value indicating a difference between values of
the same field of different results. FIG. 34 illustrates how this
formula can be utilized to determine a similarity value for an age
field for different results.
[0109] Returning to the example of FIGS. 11 and 12, FIGS. 35 and 36
illustrate specific calculation of a similarity value utilizing an
age field in addition to first name, last name, and middle initial
fields.
[0110] FIG. 37 illustrates the resulting similarity matrix
populated based on these calculations, with similarity values
exceeding the threshold similarity value of "0.650" highlighted.
Notably, whereas the similarity value for results four and five
based on inclusion of the age field was deemed sufficiently
dissimilar to not need display of additional information based on
the value calculated when a binary age comparison was utilized, the
similarity value calculated using a more gradient comparison value
is not sufficiently dissimilar based on a threshold similarity
value of "0.650".
[0111] Notably, although the default fields for initial evaluation
have been fixed as the first name, last name, and middle initial in
the examples thus far provided, in one more preferred
implementations different default fields may be configured, and in
at least some preferred implementations, the default fields may be
user configurable. FIG. 38 illustrates an implementation in which
the default fields have been configured to include an age
field.
[0112] Further, although similarity values have thus far been
calculated assuming that all fields utilized in such comparison are
weighted equally, in one or more preferred implementations, one or
more fields are weighted comparatively. For example, FIG. 38
illustrates an implementation in which each field that might be
utilized in a similarity value determination is weighted. With
respect to the default fields, the last name and first name fields
each have a weight of two, while the middle initial field has a
weight of one, perhaps based on the fact that a user may not know a
patient's middle initial, and so the information may not be as
useful in distinguishing between two patients.
[0113] FIG. 39 illustrates an exemplary formula for calculating a
weighted similarity value, and FIG. 40 illustrates specific
calculation of a weighted similarity value utilizing a title field
in addition to first name, last name, and middle initial
fields.
[0114] In one or more preferred implementations, a system is
configured to adapt displayed results based on a model of what the
human interpreter would find more or less distinctive about certain
results. When a result set is determined based on a user's search
criteria, the system analyzes the set of results for similarity
among items, e.g. utilizing a comparison matrix with similarity
values that might be normalized to range from 0 to 1 for each
possible pair of results. In one or more preferred implementations,
if a similarity value is high enough, e.g. higher than a given
threshold value, then the amount of data displayed for each of
those two results is adjusted such that the two results are more
distinguishable.
[0115] In one or more preferred implementations, a system would be
configured to only adjust the amount of information displayed in
response to a search result upward from the default display, while
in at least some preferred implementations the system would also be
configured to potentially reduce the amount of information
displayed downward based on determined similarity values, e.g. to
remove fields from display, which could reduce visual noise on
displayed search results.
[0116] For example, in one more preferred implementations, a
minimum similarity value threshold might be set whereby if a
similarity value for two results falls below that minimum
similarity value threshold, one or more fields may be removed from
display for those two results.
[0117] Returning to the example of FIG. 3A where first name, last
name, and middle initial fields are utilized by default, in one or
more preferred implementations a default field, such as the middle
initial field, might not be displayed for a particular result if
the similarity value for that particular result and every other
result falls below a minimum threshold similarity value and/or that
default field is not needed to distinguish any other result.
[0118] In one or more preferred implementations, a system is
configured to iteratively increase the number of fields displayed,
for one or more results that are similar, or for all results, or
for groupings that are similar, until a recalculated similarity for
each result is sufficiently low, e.g. below a maximum threshold
value. Additionally or alternatively, in one or more preferred
implementations, a system is configured to iteratively decrease the
number of fields displayed, for one or more results or for all
results, until a recalculated similarity for such results is above
a minimum threshold value. In one or more preferred implementations
the order of fields to be considered, and the minimum and maximum
threshold values, are user configurable.
[0119] Further, in one or more preferred implementations, a system
is configured to intelligently select fields to consider next based
on which fields are found similar or dissimilar. For example, if
consideration of a title field has already been found to be similar
between two results, a system might not spend time calculating
whether a gender field would increase or decrease similarity.
[0120] In one or more preferred implementations, calculation of
similarity between two field values for two different results is
based on simple string comparison, or simple arithmetic comparison,
or formulaic arithmetic comparison. In one or more preferred
implementations, however, semantic comparison and/or natural
language processing is utilized to determine similarity.
[0121] In one or more preferred implementations, one or more
comparisons or related processing occurs at a local device, e.g.
the device at which input is received from a user and/or the device
at which results are displayed to a user, while in one or more
preferred implementations some or all processing is carried out at
one or more remote servers.
[0122] Although described herein in the context of implementations
in which a similarity value lies on a scale between zero and one,
it will be appreciated that other scales may be utilized. Further,
although described herein where a one indicates high similarity,
and a zero indicates low similarity, it will be appreciated that in
some implementations a one may indicate low similarity, and a zero
may indicate high similarity. It will be appreciated that, in such
implementations, a similarity value may need to rise above a
threshold value to indicate sufficiently low similarity. Further,
in one or more preferred implementations, a scale may incorporate
negative numbers.
[0123] Based on the foregoing description, it will be readily
understood by those persons skilled in the art that the present
invention is susceptible of broad utility and application. Many
embodiments and adaptations of the present invention other than
those specifically described herein, as well as many variations,
modifications, and equivalent arrangements, will be apparent from
or reasonably suggested by the present invention and the foregoing
descriptions thereof, without departing from the substance or scope
of the present invention. Accordingly, while the present invention
has been described herein in detail in relation to one or more
preferred embodiments, it is to be understood that this disclosure
is only illustrative and exemplary of the present invention and is
made merely for the purpose of providing a full and enabling
disclosure of the invention. The foregoing disclosure is not
intended to be construed to limit the present invention or
otherwise exclude any such other embodiments, adaptations,
variations, modifications or equivalent arrangements, the present
invention being limited only by the claims appended hereto and the
equivalents thereof.
* * * * *