| United States Patent Application |
20060242139
|
| Kind Code
|
A1
|
|
Butterfield; Daniel S.
; et al.
|
October 26, 2006
|
Interestingness ranking of media objects
Abstract
Media objects, such as images or soundtracks, may be ranked according to a
new class of metrics known as "interestingness." These rankings may be
based at least in part on the quantity of user-entered metadata
concerning the media object, the number of users who have assigned
metadata to the media object, access patterns related to the media
object, and/or a lapse of time related to the media object.
| Inventors: |
Butterfield; Daniel S.; (San Francisco, CA)
; Fake; Caterina; (San Francisco, CA)
; Henderson-Begg; Callum James; (San Francisco, CA)
; Mourachov; Serguei; (Sunnyvale, CA)
|
| Correspondence Name and Address:
|
MORRISON & FOERSTER LLP
425 MARKET STREET
SAN FRANCISCO
CA
94105-2482
US
|
| Assignee Name and Adress: |
Yahoo! Inc.
Sunnyvale
CA
|
| Serial No.:
|
350981 |
| Series Code:
|
11
|
| Filed:
|
February 8, 2006 |
| U.S. Current Class: |
707/5 |
| U.S. Class at Publication: |
707/005 |
| Intern'l Class: |
G06F 17/30 20060101 G06F017/30 |
Claims
1. An apparatus for determining an interestingness rank for at least one
media object, comprising: logic for accepting at least one metadatum
concerning the at least one media object from at least one user; and
logic for ranking the at least one media object based at least in part on
the quantity of user-entered metadata concerning the at least one media
object.
2. The apparatus of claim 1, wherein the user-entered metadata comprises a
member of the group consisting of: tags, comments and annotations.
3. The apparatus of claim 2, further comprising logic for determining
relevance of at least one tag to the at least one media object based at
least in part upon relevance input from at least one user, wherein the
rank is based at least in part on the relevance of the at least one tag
to the at least one media object.
4. The apparatus of claim 1, wherein the logic for ranking is further
operable to rank a media object based at least in part on an access
pattern related to the at least one media object.
5. The apparatus of claim 4, wherein the access pattern is based at least
in part upon the number of click throughs of the at least one media
object.
6. The apparatus of claim 4, wherein the access pattern is based at least
in part upon the number of views of the at least one media object.
7. An apparatus for determining an interestingness rank for at least one
media object, comprising: logic for accepting at least one metadatum
concerning the at least one media object from at least one user; and
logic for ranking the at least one media object based at least in part on
the number of users who have assigned metadata to the at least one media
object.
8. The apparatus of claim 7, wherein the user-entered metadata is based at
least in part upon the number of users who have designated the at least
one media object as a favorite.
9. The apparatus of claim 7, wherein the logic for ranking is further
operable to rank a media object based at least in part on an access
pattern related to the at least one media object.
10. The apparatus of claim 9, wherein the access pattern is based at least
in part upon the number of click throughs of the at least one media
object.
11. The apparatus of claim 9, wherein the access pattern is based at least
in part upon the number of views of the at least one media object.
12. An apparatus for determining an interestingness rank for at least one
media object, comprising: logic for accepting at least one metadatum
concerning the at least one media object from at least one user; and
logic for ranking the at least one media object based at least in part on
a lapse of time related to the at least one media object.
13. The apparatus of claim 12, wherein the lapse of time related to the
media object is the lapse of time since the at least one media object was
uploaded.
14. An apparatus for determining an interestingness rank for at least one
media object, comprising: logic for accepting metadata concerning the at
least one media object from at least one user; and logic for ranking the
at least one media object based at least in part on the identity of a
requester of the rank of the at least one media object.
15. The apparatus of claim 14, wherein the logic for ranking is operable
to rank the at least one media object based at least in part upon the
relationship between a poster of the at least one media object and the
requester of the rank.
16. The apparatus of claim 14, wherein the apparatus is located at a
server and each user is associated with a corresponding client.
17. The apparatus of claim 14, wherein the logic for ranking is operable
to rank a first media object associated with a first user based at least
in part on the number of media objects commonly assigned the same type of
metadata by the first user and the requester of the rank.
18. The apparatus of claim 14, wherein the logic for ranking is operable
to rank a first media object associated with a first user based at least
in part on the number of media objects commonly designated as favorites
by the first user and the requester of the rank.
19. The apparatus of claim 18, wherein the first media object is
associated with metadata assigned by the first user.
20. The apparatus of claim 18, further comprising logic for enabling the
first user to post the first media object.
21. The apparatus of claim 18, wherein the rank is based at least in part
on the first user and the requester of the rank having a predefined
relationship.
22. The apparatus of claim 14, wherein the logic for ranking is operable
to rank a first media object associated with a first user based at least
in part on the number of media objects commonly tagged by both the first
user and a second user.
23. The apparatus of claim 22, wherein the first media object is
associated with metadata assigned by the first user.
24. The apparatus of claim 22, further comprising logic for enabling the
first user to post the first media object.
25. The apparatus of claim 22, wherein rank is based at least in part on
the first user and the requester of the rank having a predefined
relationship.
26. An apparatus for determining an interestingness rank for a media
object, comprising: logic for accepting metadata concerning the media
object from at least one user; and logic for ranking the media object
based at least in part on a location associated with the media object.
27. The apparatus of claim 26, wherein the logic for ranking is operable
to accept a request for ranking of the media object by a first user, and
the ranking is based at least in part on the location being associated
with a residence of the first user.
28. The apparatus of claim 26, wherein the logic for ranking is operable
to accept a request for ranking of the media object by a first user, the
ranking is based at least in part on the location being associated with a
residence of a user having a predefined relationship with the first user.
29. The apparatus of claim 26, wherein the logic for ranking is operable
to rank the media object based at least in part on the number of media
objects associated with the location that have been designated favorites
by a requester of a ranking of the first media object.
30. A method for determining an interestingness rank for at least one
media object, the method comprising: accepting metadata concerning the at
least one media object from at least one user; and ranking the at least
one media object based at least in part on the quantity of user-entered
metadata concerning the at least one media object.
31. The method of claim 30, wherein the user-entered metadata comprises a
member of the group consisting of: tags, comments and annotations.
32. The method of claim 30, wherein ranking comprises ranking the at least
one media object based at least in part on an access pattern related to
the at least one media object.
33. A method for determining an interestingness rank for at least one
media object, the method comprising: accepting metadata concerning the at
least one media object from at least one user; and ranking the at least
one media object based at least in part on the number of users who have
assigned metadata to the at least one media object.
34. The method of claim 33, wherein the user-entered metadata is based at
least in part upon the number of users who have designated the at least
one media object as a favorite.
35. The method of claim 33, wherein the logic for ranking is further
operable to rank a media object based at least in part on an access
pattern related to the at least one media object.
36. A method for determining an interestingness rank for at least one
media object, comprising: accepting metadata concerning the at least one
media object from at least one user; and ranking the at least one media
object based at least in part on a lapse of time related to the at least
one media object.
37. A method for determining an interestingness rank for at least one
media object, the method comprising: accepting metadata concerning the at
least one media object from at least one user; and ranking the at least
one media object based at least in part on the identity of a second user
who requests the rank of the at least one media object.
38. The method of claim 37, wherein ranking comprises ranking the at least
one media object based at least in part upon the relationship between a
poster of the at least one media object and the requester of the rank.
39. The method of claim 37, wherein ranking comprises ranking the at least
one media object based at least in part on the identity of a user
requesting the ranking.
40. The method of claim 37, wherein accepting and ranking occur at a
server and each user is associated with a corresponding client.
41. The method of claim 37, wherein ranking comprises ranking a first
media object associated with a first user based at least in part on the
number of media objects commonly assigned the same type of metadata by
the first user and a second user.
42. The method of claim 37, wherein ranking comprises ranking a first
media object associated with a first user based at least in part on the
number of media objects commonly designated as favorites by the first
user and the second user.
43. The method of claim 42, wherein the first media object is associated
with metadata assigned by the first user.
44. The method of claim 42, further comprising enabling the first user to
post the first media object.
45. The method of claim 42, wherein the ranking is based at least in part
on the first user and the second user having a predefined relationship.
46. The method of claim 37, wherein ranking comprises ranking a first
media object associated with a first user based at least in part on the
number of media objects commonly tagged by both the first user and a
second user.
47. The method of claim 46, wherein the first media object is associated
with metadata assigned by the first user.
48. The method of claim 46, further comprising enabling the first user to
post the first media object.
49. The method of claim 46, wherein the ranking is based at least in part
on the first user and the second user having a predefined relationship.
50. A method for determining an interestingness rank for a media object,
the method comprising: accepting metadata concerning the media object
from at least one user; and ranking the media object based at least in
part on a location associated with the media object.
51. The method of claim 50, wherein ranking comprises accepting a request
for ranking of the media object by a first user, and ranking is based at
least in part on the location being associated with a residence of the
first user.
52. The method of claim 50, wherein ranking comprises accepting a request
for ranking of the media object by a first user, and the ranking is based
at least in part on the location being associated with a residence of a
user having a predefined relationship with the first user.
53. The method of claim 50, wherein the ranking is based at least in part
on the number of media objects associated with the location that have
been designated favorites by a requester of a ranking of the first media
object.
54. A computer program product including computer-executable program code
for determining an interestingness rank for at least one media object,
the product comprising program code for: accepting at least one metadatum
concerning the at least one media object from at least one user; and
ranking the at least one media object based at least in part on the
quantity of user-entered metadata concerning the at least one media
object.
55. The computer program product of claim 54, wherein the user-entered
metadata comprises a member of the group consisting of: tags, comments
and annotations.
56. The computer program product of claim 54, wherein ranking comprises
ranking the at least one media object based at least in part on an access
pattern related to the at least one media object.
57. A computer program product including computer-executable program code
for determining an interestingness rank for at least one media object,
the product comprising program code for: accepting at least one metadatum
concerning the at least one media object from at least one user; and
ranking the at least one media object based at least in part on the
number of users who have assigned metadata to the at least one media
object.
58. The computer program product of claim 57, wherein the user-entered
metadata is based at least in part upon the number of users who have
designated the at least one media object as a favorite.
59. The computer program product of claim 57, wherein ranking further
comprises ranking a media object based at least in part on an access
pattern related to the at least one media object.
60. A computer program product including computer-executable program code
for determining an interestingness rank for at least one media object,
the product comprising program code for: accepting at least one metadatum
concerning the at least one media object from at least one user; and
ranking the at least one media object based at least in part on a lapse
of time related to the at least one media object.
61. A computer program product including computer-executable program code
for determining an interestingness rank for at least one media object,
the product comprising program code for: accepting metadata concerning
the at least one media object from at least one user; and ranking the at
least one media object based at least in part on the identity of a second
user who requests the rank of the at least one media object.
62. The computer program product of claim 61, wherein ranking comprises
ranking the at least one media object based at least in part upon the
relationship between a poster of the at least one media object and the
requester of the rank.
63. The computer program product of claim 61, wherein ranking comprises
ranking the at least one media object based at least in part on the
identity of a user requesting the ranking.
64. The computer program product of claim 61, wherein accepting and
ranking occur at a server and each user is associated with a
corresponding client.
65. The computer program product of claim 61, wherein ranking comprises
ranking a first media object associated with a first user based at least
in part on the number of media objects commonly assigned the same type of
metadata by the first user and a second user.
66. The computer program product of claim 61, wherein ranking comprises
ranking a first media object associated with a first user based at least
in part on the number of media objects commonly designated as favorites
by the first user and the second user.
67. The computer program product of claim 66, wherein the first media
object is associated with metadata assigned by the first user.
68. The computer program product of claim 66, further comprising enabling
the first user to post the first media object.
69. The computer program product of claim 66, wherein the ranking is based
at least in part on the first user and the second user having a
predefined relationship.
70. The computer program product of claim 61, wherein ranking comprises
ranking a first media object associated with a first user based at least
in part on the number of media objects commonly tagged by both the first
user and a second user.
71. The computer program product of claim 70, wherein the first media
object is associated with metadata assigned by the first user.
72. The computer program product of claim 70, further comprising enabling
the first user to post the first media object.
73. The computer program product of claim 70, wherein the ranking is based
at least in part on the first user and the second user having a
predefined relationship.
74. A computer program product including computer-executable program code
for determining an interestingness rank for at least one media object,
the product comprising program code for: accepting metadata concerning
the media object from at least one user; and ranking the media object
based at least in part on a location associated with the media object.
75. The computer program product of claim 74, wherein ranking comprises
accepting a request for ranking of the media object by a first user, and
ranking is based at least in part on the location being associated with a
residence of the first user.
76. The computer program product of claim 74, wherein ranking comprises
accepting a request for ranking of the media object by a first user, and
the ranking is based at least in part on the location being associated
with a residence of a user having a predefined relationship with the
first user.
77. The computer program product of claim 74, wherein the ranking is based
at least in part on the number of media objects associated with the
location that have been designated favorites by a requester of a ranking
of the first media object.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of priority to U.S. Application
No. 60/674,109, filed Apr. 21, 2005, and entitled "GENERATION AND USE OF
METADATA FOR MEDIA OBJECTS," which is incorporated by reference in its
entirety herein.
[0002] This application is related to U.S. application Ser. No. ______,
filed concurrently herewith, and entitled "MEDIA OBJECT METADATA
ASSOCIATION AND RANKING," which is incorporated by reference in its
entirety herein.
BACKGROUND OF THE INVENTION
[0003] 1. Field of the Invention
[0004] The present invention generally relates to the organization and
display of media objects, and, more particularly, to a new class of
metrics for ranking media objects, such as images.
[0005] 2. Description of the Related Art
[0006] Existing web sites allow users to comment upon or review media such
as books or movies. However, conventional web sites are limited in the
type of information concerning media objects that can be provided either
directly by a user or indirectly through the user's actions, and the use
of that information to generate search results.
[0007] Search results rely upon rankings of items to determine the most
relevant items to be presented to the searcher. These rankings may be
based upon criteria such as the number of times a particular item was
"clicked on" or viewed by a user. It is desired to make available a wider
variety of user-derived information concerning media objects, and to
develop more relevant rankings for media objects based upon that
information.
SUMMARY OF THE INVENTION
[0008] Embodiments of the invention may determine an interestingness rank
for a media object based at least in part on the quantity of user-entered
metadata concerning the media object, the number of users who have
assigned metadata to the media object, an access pattern related to the
media object, and/or a lapse of time related to the media object. The
rank may also be based at least in part on the relevance of metadata to
the media object.
[0009] The interestingness rank may also be "personalized" to a user. For
example, the rank may be based at least in part on the identity of a
requester of the rank of a media object. The "requester" may expressly
request the rank, or take an action, through any access pattern, such as
entering a search query, that results in presentation of the media object
and computation of the interestingness rank, whether or not the rank
itself is provided to the requester. In particular, the rank may be based
at least in part upon the relationship between a poster of the media
object and the requester of the rank. The apparatus for determining the
interestingness rank may be located at a server, and each user may be
associated with a corresponding client. Note that the requester of the
rank of a media object need not necessarily be a user who enters metadata
concerning the media object.
[0010] The personalized interestingness rank for a media object associated
with a user may be based at least in part on the number of media objects
commonly assigned the same type of metadata by the user and the requester
of the rank. For example, the rank may be based at least in part on the
number of media objects commonly tagged or designated as favorites by the
user and the requester of the rank. The user may be associated with the
media object by virtue of assigning metadata to the media object, or
posting the media object, for example.
[0011] The interestingness rank may also be based at least in part on a
location associated with the media object. Logic for ranking the media
object may accept a request for ranking of the media object by a first
user. The rank may be based at least in part on a location associated
with a residence of the user associated with the media object, or a
residence of a user having a predefined relationship with the first user.
Note that for all the embodiments herein, unless otherwise apparent the
user who requests (either explicitly or implicitly, as explained above) a
ranking for a media object, or who posts the media object, need not
necessarily be a user who enters metadata concerning the media object.
BRIEF DESCRIPTION OF THE DRAWINGS
[0012] FIG. 1 illustrates a client-server system according to an
embodiment of the present invention.
[0013] FIG. 2 is a screenshot illustrating the entry of tag metadata to a
media object according to an embodiment of the present invention.
[0014] FIG. 3 illustrates adding annotation metadata according to an
embodiment of the invention.
[0015] FIG. 4 illustrates setting permissions according to an embodiment
of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0016] The following description is presented to enable a person of
ordinary skill in the art to make and use the invention. Descriptions of
specific devices, techniques, and applications are provided only as
examples. Various modifications to the examples described herein will be
readily apparent to those of ordinary skill in the art, and the general
principles defined herein may be applied to other examples and
applications without departing from the spirit and scope of the
invention. Thus, the present invention is not intended to be limited to
the examples described herein and shown, but is to be accorded the scope
consistent with the claims.
[0017] FIG. 1 illustrates a client-server system according to an
embodiment of the present invention. A media server according to an
embodiment of the invention may include http web server logic, a
scripting engine (such as a PHP scripting engine), a database, and an
aggregation engine. The media server may communicate with multiple
clients over a network, such as the Internet.
[0018] The scripting engine may include authentication logic, upload
logic, metadata processing logic, and permissions handling logic. The
authentication logic authenticates a user signing on to the media server
web site. The upload logic may be used to upload from the client to the
server data conforming to any media format, e.g., still photograph (e.g.,
JPEG, TIFF), video (e.g., MPEG, AVI), or audio (e.g., MP3, OGG). The
aggregation engine may include a statistics engine and a search engine. A
client for use with the server of the invention may include a typical web
browser application. Much of the functionality of the invention may be
observed at www.flickr.com, which is incorporated by reference herein in
its entirety.
[0019] According to an embodiment of the invention, a user at a client
uses a browser to access the media server, and requests an upload of
media objects. In response, the upload logic stores the media objects
from the client into the database. For the sake of convenience, we will
frequently use images as examples of media objects manipulated by the
system, but those skilled in the art will recognize that the invention
applies to other media objects, subject to appropriate modifications and
use of other functions where appropriate (e.g., viewing a media object
may apply to viewing a still or moving image or listening to an audio
media object, such as a soundtrack).
[0020] The metadata processing logic permits the user to enter metadata to
describe each image. (As used herein, "metadata" may refer to one
metadatum or plural metadata.) Referring to FIG. 2, the metadata may take
the form of one or more tags for each image, such as four distinct tags
entered as one space-delimited list "clouds seagull birds sky" for an
image of a flying seagull. Other types of metadata include a title (e.g.,
"Last gull (for now)"), a description of the image, annotations, and
comments. An annotation is a descriptive note displayed directly over a
section of the image being annotated. The annotation may be hidden from
view until the user passes a cursor over the annotated section. Referring
to FIG. 3, for example, the user may add an annotation near the seagull's
wing such as "Note the sunlight coming through the wings." A comment may
be entered in a text input box similar to that used for entering comments
on a message board. Multiple comments from any permitted user may be made
and displayed for a media object.
[0021] Referring to FIG. 4, the permissions logic enables the user to set
permissions concerning who is allowed to view each image. For example,
the user may set the permissions to allow access only to the user
herself, to a limited group of people, e.g., family and/or friends, or to
the public (e.g., the entire user base). In addition, the permissions
logic allows the user to permit others to provide metadata regarding each
image. For example, the user may allow friends and/or family, any other
user, someone from the user's contact list, or no one else, to add tags,
comments (e.g., "I like the way the seagull is hovering"), or
annotations.
[0022] The database enables organization of the media objects in a variety
of ways. For example, a user's media objects may be organized
chronologically, allowing the user to search media objects by date. This
organization allows presentation of the media objects (e.g., photographic
images, still images used to represent video files, or icons representing
audio files) on the user's display along a timeline or in a calendar
format (e.g., with a selected image from each day displayed at the
corresponding date entry). The media objects may be displayed according
to the date of upload, or the date that the media object was created,
pursuant to the user's display format choice. Moreover, the scripting
engine allows the display of the media objects in a slide show format.
[0023] For photographs, the date of creation may be based upon
device-supplied metadata, such as metadata from the camera that took the
picture, including metadata regarding aperture, shutter speed and other
settings. Such metadata may be extracted, for example, from the EXIF
(Exchangeable Image File) header stored inside the uploaded file by many
digital cameras, or the IPTC (International Press Telecommunications
Council) header stored inside the uploaded file by many photo management
and organization software packages. The chronological organization of
photographic images may be referred to as a "photostream."
[0024] The database also permits the user to organize media objects
uploaded by the user into sets identified and described by user-provided
set identifiers and descriptions. Each set of images, for example, is
analogous to a photo album. Each media object may belong to multiple
sets. The set identifier and description themselves are also metadata.
[0025] In contrast to a set, which includes media objects from just one
user, media objects from multiple users may be pooled into a "group"
using the database. Each group is identified by a group identifier
provided by the user who establishes the group. The grouping of all
groups together represents all the media objects of a particular type
(e.g., images) accessible on the media server hosting the media objects.
The group creator may set various permission levels for accessing and
adding media objects to the group. The permission levels may include, for
example, public for the entire user base, or private for friends/family
or a user-defined social network. Users permitted access to a group may
also be permitted to add tags, comments and/or annotations. Similar to
the display and organization of an individual user's media objects, the
database enables the organization and display of group media objects in a
time line or calendar format arranged by date, as well as in slide show.
[0026] The media server may include an RSS feed generator to allow a user
to subscribe to a "feed" of media objects, such as media objects
belonging to a particular grouping, or identified by a particular tag,
that are, for example, ordered by the date they were posted. (A
"grouping" may refer to any collection, such as all groups of media
objects, a single group of multiple users' media objects, all of an
individual user's media objects, or a set (i.e., subset) of the
individual's media objects.) An RSS reader at the user's client computer
may be configured so that only new media objects posted since the user
last accessed the media objects (e.g., updates) will be presented to the
user. Similarly, the reader may be configured so that only the most
recent of a string of comments relating to a particular media object may
be displayed using this feature.
[0027] The statistics engine generates statistics and other metrics based
upon aggregated metadata. In one embodiment, the statistics engine
determines the popularity of metadata (e.g., tags) within a grouping of
media objects over a predetermined time period. For example, the
statistics engine may determine the number of different users that have
assigned a particular tag to one or more media objects within all groups
on the system, within a single group, or within a set of media objects,
over the last 24 hours. The aggregation engine may determine (and
display) a histogram of the tags, and may determine the most frequently
assigned tags (at any point in time or over a predetermined time period)
by determining those tags either having a frequency exceeding a minimum
threshold frequency or belonging to a predetermined number of the most
popular tags.
[0028] In one embodiment of the invention, a predetermined number of
metadata (e.g., tags) or terms within metadata (e.g., terms within
comments) may have their frequency indicated by the size of the font used
to display them. For example, the 100 most popular tags within all groups
may be arranged on a user's display alphabetically, with increasing
popularity indicated by increasing font size.
[0029] In another embodiment, the statistics engine may determine the
"relatedness" of metadata, i.e., a co-occurrence measure of the frequency
with which a particular metadatum (e.g., tag) (or term within a metadatum
(e.g., within a comment)) is assigned to a media object along with at
least one other particular metadatum (or term within a metadatum). In one
embodiment, the co-occurrence measure may determine the frequency of
co-occurrence of metadata of the same type. For example, out of all 100
images tagged with the word "Italy," 50 of those images may also be
tagged with "Rome," 25 tagged with "Venice," 10 with "Florence," and 2
with "Sienna." The co-occurrence index would respectively be 50 for
"Italy-Rome," 25 for "Italy-Venice," 10 for "Italy-Florence," and 2 for
"Italy-Sienna." In summary, include location as subset of tags, Tag MD
can include location.
[0030] In another embodiment, the relatedness metric may be made
user-specific, so that it is a co-occurrence measure of the frequency of
the number of users who have (e.g., have uploaded, or have in their user
account) at least one media object assigned a particular metadatum (e.g.,
tag) (or term within a metadatum (e.g., a comment)) along with at least
one other particular metadatum (or term within a metadatum). For example,
out of all 100 users that have at least one image tagged with the word
"Italy," 50 of those users may have images tagged with "Italy" also
tagged with "Rome," 25 also tagged with "Venice," 10 with "Florence," and
2 with "Sienna." The co-occurrence index would respectively be 50 for
"Italy-Rome," 25 for "Italy-Venice," 10 for "Italy-Florence," and 2 for
"Italy-Sienna."
[0031] A predefined number of the metadata (e.g., tags) having the highest
co-occurrence indices, or those having co-occurrence indices exceeding a
predefined threshold, may be displayed to the user as "related" metadata
(e.g., tags), with at least one metadatum (e.g., tag) not satisfying the
predefined condition being displayed under "See also." The predefined
threshold may be computed as a percentage of the maximum possible value
of the index. All such displayed metadata may act as hyperlinks to all
media objects assigned the designated metadata. The relatedness measure
may be applied to all "public" media objects (i.e., those available to
anyone on the system), or to smaller groupings (such as those within a
group or set).
[0032] As part of the relatedness computation, the statistics engine may
employ a statistical clustering analysis known in the art to determine
the statistical proximity between metadata (e.g., tags), and to group the
metadata and associated media objects according to corresponding cluster.
For example, out of 10,000 images tagged with the word "Vancouver," one
statistical cluster within a threshold proximity level may include images
also tagged with "Canada" and "British Columbia." Another statistical
cluster within the threshold proximity may instead be tagged with
"Washington" and "space needle" along with "Vancouver." Clustering
analysis allows the statistics engine to associate "Vancouver" with both
the "Vancouver-Canada" cluster and the "Vancouver-Washington" cluster.
The media server may provide for display to the user the two sets of
related tags to indicate they belong to different clusters corresponding
to different subject matter areas, for example.
[0033] An embodiment of the invention permits a user to determine the
relevance of a tag to a media object, in particular to media objects
posted by other users. Relevance-setting icons or other input graphics
may be displayed next to each tag. For example, the icons may include "+"
and "-" buttons to indicate whether the user believes that the tag is
relevant or not relevant, respectively, to the displayed media object.
The statistics engine may collect the relevance entries for each media
object to determine a relevance metric for the object. For example, the
metric may simply be the number of entered "+"s divided by the total
number of relevance entries for each media object. The statistics engine
associates each vote with the voting user to prevent "stuffing the ballot
box," i.e., the statistics engine avoids counting multiple votes by a
single user concerning the relevance of a tag to a media object.
[0034] The statistics engine may factor the relevance value into the
clustering analysis to affect the relatedness metric. For example, a tag
that has a low relevance value would be treated as less related to other
tags associated with the same media objects (i.e., weighted to have a
longer statistical distance).
[0035] The metadata processing logic 118 may compute an "interestingness"
metric for each media object, according to an embodiment of the
invention. Interestingness may be a function of user actions related to a
media object, including, for example, the quantity of user-entered and/or
user-edited metadata and/or access patterns for the media objects.
Alternatively or in addition to those factors, interestingness may be a
function of time, system settings, and/or the relationship of the user to
the poster of the media object.
[0036] Each of the above factors may be clipped by a maximum value set by
the system designer, which is one way of weighting each factor.
Alternatively, or in addition, before any clipping, each factor may be
more directly weighted by a weighting coefficient that multiplies the
factor. In either case, the factors (whether weighted or not) may be
summed together to create an interestingness score (i.e., rank). The
weighting and clipping may, of course, be applied at a finer level to
each parameter (described below) contributing to any of these factors.
[0037] The interestingness score may be computed for any media object for
any grouping, e.g., from all groups containing the media object, from one
group containing the media object, from the area of the web site
associated with the poster of the media object, or from within a set of
that user's media objects containing the media object being scored, for
example.
[0038] The quantity of user-entered metadata may include, for example,
parameters such as the number of tags, comments and/or annotations
assigned to the media object, and/or the number of users who have added
the media object to their favorites/bookmarks. (Adding an audio media
object to a user's favorites may include adding the media object to a
user's playlist.) Alternatively or in addition to those parameters, the
quantity of user-entered metadata may be user-related and include, for
example, the number of users who have added tags, comments and/or
annotations to the media object, and/or added the media object to their
favorites/bookmarks.
[0039] Alternatively or in addition to those parameters, the metadata
processing logic 118 may factor into the interestingness score access
patterns for the media object, such as the number of viewings (or
playbacks) and/or click throughs of the media object, and/or the number
of users who have viewed (or played back), and/or clicked through the
media object or tags related to the media object. Whether the
interestingness algorithm treats a user's action as a "click through,"
or, conversely, a "view" or "viewing" of a media object may depend upon
the route the user took to access the media object, i.e., the access
pattern. For example, a search for images assigned a particular tag may
return multiple thumbnail images. The algorithm may treat a user's
clicking on a particular one of those thumbnails as a "click through."
[0040] In contrast, for example, an image emailed to a user from another
user may be considered to be "viewed" by the user. In another example,
when a user accesses a group pool of images, the user's browser may
present the images as thumbnails. The user may click on a thumbnail to
"view" it. Thus, it can be seen that the identical action of clicking on
a thumbnail image may be treated as a "view" or a "click through"
depending upon the path the user took to reach the image, i.e., the
access pattern. Based upon psychological insights, marketing research or
other factors, the system designer may want to treat certain access
patterns as indicating a higher degree of user interest than others, and
assign such access patterns a higher weight in computing the
interestingness score. As perhaps a more illustrative example, if a user
reaches and clicks upon a thumbnail image based upon paying $10.00 to
access the image, then the system designer is likely to assign such an
access path a higher weighting coefficient than a free access of an
image. Conversely, certain sources of traffic, search terms, tag queries
or other precursors to the display of thumbnail images may be determined
to correlate with a motivation that is inconsistent with a high
interestingness, and thus the system designer is likely to assign such
access paths relatively low weighting coefficients.
[0041] In addition, the metadata processing logic 118 may factor into the
score the relationship of the poster of the media object to the user
(e.g., a user entering a search query). A user may be a member of a
private group (e.g., friends and family, an interest group, or a social
network) allowed access to the poster's media objects, or a user listed
in the poster's contact list, for example. Given the potentially higher
likelihood of a similarity of interests between such a user and the
poster relative to other users, this relationship may be weighted and
summed into the interestingness score to increase it.
[0042] The above functionality is an example of "personalization" of the
interestingness score. In general, the score may be based upon the
identity of the requester of the interestingness score for the media
object. (As used herein, reference to the "requester" or to one who
requests an interestingness score or rank of a media object refers to one
who explicitly requests the score, or who takes an action through any
access pattern, such as entering a search query, that results in
presentation of the media object along with computation of the
interestingness score by the metadata processing logic 118, whether or
not the score itself is provided to the requester.) In particular, the
score may be based upon the relationship between the poster of the media
object and a user requesting the score.
[0043] In another embodiment, the personalized score for a media object
associated with a user may be based upon the number of media objects
assigned the same type of metadata (e.g., tags or favorites) by that user
and the score requester. The media object may be associated with the user
by, for example, being assigned metadata by a user or posted by the user.
For example, assume that a first user and a second user store in their
on-line albums 100 and 200 photo images, respectively. The second user
may search for images associated with a particular tag. The search engine
111 may return an image stored in the first user's album. The metadata
processing logic 118 may assign to that image a score as an increasing
function of the number of other images in the first and second users'
albums that have been commonly designated as favorites or commonly tagged
by the first and second users, under the theory that such shared behavior
serves as a predictor that the second user may be especially interested
in images in the first user's album that the second user has not yet
"favorited" or tagged.
[0044] In another embodiment, the metadata processing logic 118 may
compute the interestingness score based upon a location associated with
the media object and with a user requesting a score for the media object.
For example, the metadata processing logic 118 may indicate that a media
object is more interesting to a particular user if the location
associated with the media object is associated with a residence of the
user (e.g., near or in the same geographic region as the user's
residence), associated with a residence of another user having a
predefined relationship with the user, such as a friend or family member,
or associated with a location that is itself associated with a threshold
number of media objects that have been assigned metadata (e.g., tagged or
favorited) by the user.
[0045] In the latter case, for example, the metadata processing logic 118
may, for a particular user, positively factor into the interestingness
score of an image of the Washington Monument the fact that the user has
designated as favorites a large number of images associated with the
Washington, D.C. area. This assumes that location metadata indicating the
Washington area has been associated with the image of the Monument, e.g.,
by the poster of the image or another user entering the location through
a tag field or separate "location" field when assigning metadata to the
image.
[0046] Other interestingness score components may be set by the system
designer. For example, some media objects may be treated as undesirable
because they contain objectionable content such as obscene imagery or
promotions of a competitor's product. The system designer may, for
example, set up the score computation to decrement the thus-far
accumulated score by a predetermined score offset percentage assigned to
a media object having a tag or other metadata on a "blacklist." Because a
media object may be associated with more than one blacklisted tag, the
score offset value may be chosen to be the greatest score offset
associated with those tags.
[0047] Another score component may take time into account. For example,
the system designer may set up the score computation to decrement the
thus-far accumulated score by a predetermined percentage over time
starting at the time the media object was posted. For example, this time
decay may cause the score to decrement by 2% per day from the day of
posting. This and other means may be employed to prevent the occurrence
of "positive feedback loops" where the sorting of media objects by
interestingness itself skews the results, causing those same media
objects to be more frequently accessed, thereby unnaturally increasing
their interestingness scores.
[0048] The ultimate interestingness score may be normalized, so that, for
example, the interestingness score always falls between 0 and 100, or 0
and 1. One way of achieving normalization is to divide the actual score
value by the maximum possible score value.
[0049] The search engine 111 allows the user to search media objects in
the database according to various metadata. For example, a user may
conduct a boolean search of tags among all media objects accessible to
the user. Alternatively, the user may perform a full-text boolean search
of terms in comments, annotations, titles or descriptions. The media
objects accessible to a user include, for example, public media objects,
media objects within a group, media objects for which the user is a
friend/family member or member of another private group, all media
objects posted by the user, or the user's media objects within a
user-defined set.
[0050] The media objects returned from a search may be ranked according to
interestingness. For example, the media server may, in one embodiment,
provide for display to the searching user only the media objects having
an interestingness score above a predetermined threshold, or a
predetermined number of the highest scoring media objects.
[0051] In response to a search by tag, for example, the statistics engine
109 may determine the tags (or other metadata) that are most highly
related to the one or more tags (or other metadata) in the search query
(according to the relatedness metric). The media server 100 may return to
the user at a client the most highly related tags (or other metadata)
along with the retrieved media objects. If the relatedness computation
results in two clusters of related tags (or other metadata), then media
objects associated with the two clusters may be ranked (and displayed) in
order of interestingness.
[0052] In an advertising context, advertisements may be associated with
their own metadata/keywords, such as "Rome Italy hotels tourism travel"
for an Italian hotel advertisement. Based upon those related keywords, an
ad server 122 may use the relatedness metric and set of related tags or
other metadata provided by the media server via the web server 102 to
determine which advertisements sponsoring the web site are associated
with predefined metadata/keywords that most closely match the set of
related tags. (The ad server may be a third-party server on the network
112.) The ad server may provide to the user for display the most closely
matching advertisements. For example, the ad server may provide for
display at the user's client computer the ad for Italian hotels in
conjunction with the display of pictures from the media server having a
set of highly related tags "Rome Italy honeymoon." In this manner, the ad
server uses the relatedness metric and set of highly related tags to
provide the advertisements most highly related to the displayed media
objects.
[0053] In another embodiment, in response to a search by tag (or other
metadatum), the statistics engine may also prevent a media object
assigned a tag (or other metadatum) that has a relevance score falling
below a relevance threshold from being returned as a search result.
[0054] It will be appreciated that the above description for clarity has
described embodiments of the invention with reference to different
functional units. However, it will be apparent that any suitable
distribution of functionality between different functional units may be
used without detracting from the invention. Hence, references to specific
functional units are only to be seen as references to suitable means for
providing the described functionality rather than indicative of a strict
logical or physical structure or organization.
[0055] The invention can be implemented in any suitable form including
hardware, software, firmware or any combination thereof. Different
aspects of the invention may be implemented at least partly as computer
software or firmware running on one or more data processors and/or
digital signal processors. The elements and components of an embodiment
of the invention may be physically, functionally and logically
implemented in any suitable way. Indeed the functionality may be
implemented in a single unit, in a plurality of units or as part of other
functional units. As such, the invention may be implemented in a single
unit or may be physically and functionally distributed between different
units and processors.
[0056] Although the present invention has been described in connection
with some embodiments, it is not intended to be limited to the specific
form set forth herein. Rather, the scope of the present invention is
limited only by the claims. Additionally, although a feature may appear
to be described in connection with a particular embodiment, one skilled
in the art would recognize that various features of the described
embodiments may be combined in accordance with the invention. Moreover,
aspects of the invention describe in connection with an embodiment may
stand alone as an invention.
[0057] Moreover, it will be appreciated that various modifications and
alterations may be made by those skilled in the art without departing
from the spirit and scope of the invention. The invention is not to be
limited by the foregoing illustrative details, but is to be defined
according to the claims.
* * * * *