The present invention relates generally to clustering content and, more particularly, to clustering content based on relevance.
There are many sources throughout the world that generate documents that contain content. These documents may include breaking news, human interest stories, sports news, scientific news, business news, and the like.
The Internet provides users all over the world with virtually unlimited amounts of information in the form of articles or documents. With the growing popularity of the Internet, sources such as newspapers and magazines which have historically published documents on paper media are publishing documents electronically through the Internet. There are numerous documents made available through the Internet. Often times, there is more information on a given topic than a typical reader can process.
For a given topic, there are typically numerous documents written by a variety of sources. To get a well-rounded view on a given topic, users often find it desirable to read documents from a variety of sources. By reading documents from different sources, the user may obtain multiple perspectives about the topic.
However, with the avalanche of documents written and available on a specific topic, the user may be overwhelmed by the shear volume of documents. Further, a variety of factors can help determine the value of a specific document to the user. Some documents on the same topic may be duplicates, outdated, or very cursory. Without help, the user may not find a well-balanced cross section of documents for the desired topic.
A user who is interested in documents related to a specific topic typically has a finite amount of time locate such documents. The amount of time available spent locating documents may depend on scheduling constraints, loss of interest, and the like. Many documents on a specific topic which may be very valuable to the user may be overlooked or lost because of the numerous documents that the user must search through and the time limitations for locating these documents.
It would be useful, therefore, to have methods and apparatus for clustering content.
Methods and apparatus are described for scoring documents in response, in part, to parameters related to the document, source, and/or cluster score. Methods and apparatus are also described for scoring a cluster in response, in part, to parameters related to documents within the cluster and/or sources corresponding to the documents within the cluster. In one embodiment, the invention may identify the source; detect a plurality of documents published by the source; analyze the plurality of documents with respect to at least one parameter; and determine a source score for the source in response, in part, to the parameter. In another embodiment, the invention may identify a topic; identify a plurality of clusters in response to the topic; analyze at least one parameter corresponding to each of the plurality of clusters; and calculate a cluster score for each of the plurality of clusters in response, in part, to the parameter.
Additional aspects of the present invention are directed to computer systems and to computer-readable media having features relating to the foregoing aspects.
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate one embodiment of the invention and, together with the description, explain one embodiment of the invention. In the drawings,
The following detailed description of the invention refers to the accompanying drawings. The detailed description does not limit the invention. Instead, the scope of the invention is defined by the appended claims and equivalents.
The present invention includes methods and apparatus for creating clusters. The present invention also includes methods and apparatus for ranking clusters. Those skilled in the art will recognize that many other implementations are possible, consistent with the present invention.
The term “document” may include any machine-readable or machine-storable work product. A document may be a file, a combination of files, one or more files with embedded links to other files. These files may be of any type, such as text, audio, image, video, and the like. Further, these files may be formatted in a variety of configurations such as text, HTML, Adobe's portable document format (PDF), email, XML, and the like.
In the context of traditional publications, a common document is an article such as a news article, a human-interest article, and the like. In the context of the Internet, a common document is a Web page. Web pages often include content and may include embedded information such as meta information, hyperlinks, and the like. Web pages also may include embedded instructions such as Javascript. In many cases, a document has a unique, addressable, storage location and can therefore be uniquely identified by this addressable location. A universal resource locator (URL) is a unique address used to access information on the Internet.
For the sake of simplicity and clarity, the term “source” refers to an entity that has published a corresponding document.
The client 110 may be utilized by a user that submits a query to the server 130 and a user that retrieves information in response to the query. In one embodiment, the information includes documents which may be viewable by the user through the client 110. In one embodiment, the information is organized within clusters which are ranked, sorted, and optimized to provide useful information to the user. The factors that are utilized to analyze each cluster may include the recency of the document, the source of the document, the importance of the content within the document, and the like.
In one embodiment, the client 110 may be a web browser, and the server 130 includes a clustering system.
The network 120 may function as a conduit for transmissions between the client 110 and the server 130. In one embodiment, the network 120 is the Internet. In another embodiment, the network 120 may be any type of transmission means.
The server 130 interfaces with the client 110 through the network 120. The clustering system may be within the server 130. The clustering system may include additional elements. In one embodiment, the clustering system performs a variety of functions such as analyzing clusters and documents within clusters which are explained in more detail below and shown in reference to
Similar to the plurality of web browsers 202, the server device 210 may include a processor 211 coupled to a computer-readable medium 212. The server device 210 may also include a number of additional external or internal devices, such as, without limitation, a secondary storage element, such as database 240.
The plurality of target processors 208 and the server processor 211 can be any of a number of well known computer processors, such as processors from Intel Corporation, of Santa Clara, Calif. In general, the plurality of web browsers 202 may be any type of computing platform connected to a network and that interacts with application programs, such as a personal computer, a mobile lap top, a personal digital assistant, a “smart” cellular telephone, or a pager. The server 210, although depicted as a single computer system, may be implemented as a network of computer processors.
The plurality of web browsers 202 and the server 210 may include the clustering system as embodied within the server 130 (
The flow diagrams as depicted in
The blocks within the flow diagram may be performed in a different sequence without departing from the spirit of the invention. Further, blocks may be deleted, added, or combined without departing from the spirit of the invention.
A large number of documents may be electronically available for any particular topic through the Internet. The quality of these documents can range from top quality journalism to unreliable reporting. The source of a document may predict the quality of the particular document. For example, a highly regarded source may, on average, publish higher quality documents compared to documents published by a less highly regarded source.
The flow diagram in
In Block 320, documents which are published by the specific source are detected. In one embodiment, the detection of these documents published by a specific source may be limited to documents published within the last month. In other embodiment, these documents may include all documents published by the specific source.
In Block 330, the originality of the documents are analyzed. In one embodiment, duplicate documents which are published by the same source are removed. For example, duplicate documents which are published more than once by the same source are removed so that only the original document remains. Duplicate documents may be found by comparing the text of the documents published by the source. If the text of both documents are a close match, then one of the documents may be considered a duplicate.
In another example, non-original documents which are re-published by different sources are removed. For example, many news wire services such as Associated Press and Reuters carry original documents which are re-published by other sources. These non-original documents that are re-published may be found by comparing the text of the document re-published by one source and the text of the original document published by a different source. If both documents are a close match, the original document may be determined by finding the document with the earliest publication date. For example, the first source to publish identical documents may be considered the original author, and the corresponding document is considered the canonical version with the remaining subsequent versions considered duplicates.
To facilitate an efficient textual analysis of comparing the documents published by the source with documents from other sources, the documents from other sources may be limited to those which have been published within a given length of time such as within the last month.
In Block 340, the documents are analyzed for freshness. In one embodiment, freshness may be measured by a combination of the frequency in which the source generates new content and the speed in which a document is published after the corresponding event has occurred. For example, freshness of a source can be measured by the number of canonical documents generated by the source over the course of X number of days. The freshness of a source can also be measured by an average lapse in time between an event and the publication of a document regarding the event.
Several schemes may be utilized to identify which documents are examined for freshness in the Block 340. For example, the canonical documents from the Block 330 are analyzed for freshness. In another example, all the documents including both canonical and duplicates as identified in the Block 320 are analyzed for freshness.
In Block 350, the documents are analyzed for overall quality. There are multiple ways to analyze the document for overall quality. For example, the overall quality of the documents by the source may be judged directly by humans. In another example, the overall quality of the documents may be indirectly assessed by utilizing circulation statistics of the source.
In another example, the overall quality of the documents may also be assessed by utilizing the number hit or views the documents received within an arbitrary time frame. In yet another example, the overall quality of the documents may also be assessed by measuring the number of links pointing to the documents published by the source.
In Block 360, the source is scored based on multiple factors such as the number of documents published, the originality of the documents, the freshness of the documents, and the quality of the documents. In one embodiment, the factors such as number of documents, originality, freshness, and quality may be weighted according the desired importance of these factors.
For example, the score of the source is stored as part of a database. The database may be located within the server 210 or accessible to the server 210 over the network 201.
In Block 370, the source is categorized in response, at least in part, to the score from the Block 360. In one embodiment, the source may be placed into any number categories. For example,
The categorization of the source in the Block 370 may be stored as part of a database. The database may be located within the server 210 or accessible to the server 210 over the network 201.
The flow diagram in
In Block 510, a plurality of sources are identified. For example, the clustering system 130 may detect the plurality of sources from one or more categories illustrated within
In Block 520, documents published by the plurality of sources, as defined in the Block 510, are identified. For illustrative purposes, documents 610, 620, 630, 640, and 650 (
In Block 530, the documents identified in the Block 520 are analyzed for their content. For example, a topic or subject matter may be extrapolated from the analysis of the content from each of these documents.
Each document may contain a document vector which describes the topic or subject matter of the document. For example, the document vector may also contain a key term which characterizes the topic or subject matter of the document.
In Block 540, the documents identified in the Block 520 are grouped into one or more clusters. In one example, the documents may be clustered using a text clustering technique such as hierarchical agglomerative cluster. In another example, various other clustering techniques may be utilized.
The documents may be clustered by measuring the distance between the documents. For example, the document vector for each document maybe utilized to measure the similarity between the respective documents. A common information retrieval (IR) technique such as term frequency and inverse document frequency (TFIDF) may be utilized to match document vectors.
Various properties of the document vectors and key terms may aid in measuring the distance between each document. For example, the document vectors and key terms which are identified as titles, initial sentences, and words that are “named entities” may have increased importance and may be given increased weighting for measuring the similarities between documents. Named entities typically denote a name of a person, place, event, and/or organization. Named entities may provide additional value, because they are typically mentioned in a consistent manner for a particular event regardless of the style, opinion, and locality of the source.
For illustrative purposes, the documents 610, 620, and 630 are shown grouped together in a cluster 660 in
In Block 550, the documents within the clusters which were formed in Block 540 may be further refined into sub-clusters. The documents within a cluster may be further analyzed and compared such that sub-clusters originating from the cluster may contain documents which are even more closely related to each other. For example, depending on the particular cluster, each cluster may be refined into sub-clusters. Additionally, the sub-cluster may contain a sub-set of documents which are included in the corresponding cluster, and the documents within the sub-cluster may have greater similarities than the documents within the corresponding cluster.
For example, the cluster 660 includes documents 610, 620, and 630 as shown in
The comparison of document vectors and key terms and other techniques as discussed in association with the Block 540 may be utilized to determine sub-clusters.
In Block 560, the documents within a sub-cluster are checked for their level of similarity. If there are multiple documents within the sub-cluster, and the documents are not identical enough, then the documents within the sub-cluster may be further refined and may be formed into lower level sub-clusters in Block 550. When sub-clusters are formed into lower level sub-clusters, a stricter threshold is utilized to group sets of identical or near identical documents into these lower level sub-clusters.
For the sake of clarity, lower level sub-clusters are not shown in
If there are multiple documents within the sub-cluster, and the documents are identical enough, then the canonical document is identified by the earliest publication time and the remaining documents may be considered duplicates in Block 570.
The flow diagram in
In Block 710, clusters that are matched to the topic are identified. For example, clusters which are similar to the topic may be identified.
The identified clusters may be scored on various factors within the Blocks 715, 720, 725, 730, and 735. In Block 715, these clusters are scored based on the recency of canonical documents within each cluster. For example, a cluster with the most recent canonical documents may be scored higher than other clusters.
The recency of canonical documents may be computed for the cluster by using a weighted sum over the original documents within the cluster. In one example, a weighting scheme is utilized where a higher weight is given for fresher and more recent document.
In one embodiment, each document within a cluster may be sorted and assigned a bin that corresponds with the age of the document. Each bin is configured to accept documents within a time range and corresponds with a specific weighting factor. The specific weighting factor corresponds with the time range of the documents within the bin. In one embodiment, the weighting factor increases as the time range corresponds with more recent documents.
For example, the bin 760 may have a time range which includes documents that have aged less than 60 minutes. In this example, the documents within the bin 760 are assigned a weighting factor of 24. The bin 765 may have a time range which includes documents that have aged more than 60 minutes and less than 2 hours. In this example, the documents within the bin 765 are assigned a weighting factor of 20. The bin 770 may have a time range which includes documents that have aged more than 2 hours and less than 4 hours. In this example, the documents within the bin 770 are assigned a weighting factor of 15. The bin 775 may have a time range which includes documents that have aged more than 4 hours and less than 24 hours. In this example, the documents within the bin 775 are assigned a weighting factor of 3. The bin 780 may have a time range which includes documents that have aged more than 24 hours. In this example, the documents within the bin 780 are assigned a weighting factor of −1.
Different weighting factors and time ranges may be utilized without departing from the scope of the invention.
In use, the cluster score may be calculated, in part, by multiplying the number of documents within each bin with the corresponding weighting factor and summing the results from each of these multiplications. For example, a cluster contains documents with the following distribution of documents: bin 760 contains 2 documents, bin 765 contains 0 documents, bin 770 contains 1 document, bin 775 contains 5 documents, and bin 780 contains 10 documents. A sample calculation for a cluster score, based on the sample weighting factors and document distribution as described above, is shown in Equation 1.
sample cluster score=3×24+0*20+1*15+5*3+10*−1 Equation 1
In Block 720, the clusters may be scored based on the quality of the sources that contribute documents within each cluster. For example, the sources may be ranked on an absolute grade. According to this example, a well-known source such as the Wall Street Journal may be ranked higher than a local source such as the San Jose Mercury News regardless of the topic.
The importance of a source may also be computed based on the notoriety of the source. For example, the source may be computed based on the number of views or hits received by the source. In another example, the importance of a source may be computed based on the circulation statistics of the source. In yet another embodiment, the importance of the source may be based on the number of links for each of the documents published by the source and within the cluster.
In addition, the quality of the source may be based on the importance of the source relative to the particular topic. For example, with an document relating to a news story, sources such as CNN, New York Times, Los Angeles Times, and Reuters may be included with a top tier source category; sources such as XYZ News and Any City Times may be included in a second tier source category; and sources such as local news organizations may be included in a third tier source category.
The importance of the source may depend, at least in part, on the subject matter of the particular document and may change with each unique topic. For example, with a query and associated documents relating to a local news story, the local news organizations where the event which is identified in the query is located may be included within the top tier source category. These local news organizations may typically be included within the third tier source category for a national event/story, however due to the local nature of the event related to the query, these local news organizations may be elevated to the top tier source category for this particular query based on geography.
The importance of the source may be proportional to the percentage of documents from the source which match the subject matter of the topic. For example, if the topic relates to the subject of “music”, then a source which may be considered important is MTV, because the majority of MTV's prior documents are related to music. The importance of the sources may also change over a period of time for the same topic depending on the subject matter of the documents.
In Block 725, the clusters are scored based on the number of canonical documents contained within each cluster. For example, the cluster may be scored higher when there are more canonical documents within the cluster.
In Block 730, the clusters may be scored based on the number of sub-clusters within each cluster. For example, the number of sub-clusters within a cluster may be utilized to measure the amount of diversity of documents within the cluster.
In Block 735, the clusters may be scored based on a match between the subject of the cluster and a set of predetermined topics. For example, the set of predetermined topics are deemed as important topics such as world news, national news, and the like. A cluster may be scored higher when there is a match between the subject of the cluster and one of the set of predetermined topics.
In Block 740, each of the clusters may be scored according to parameters such as recency of documents, quality of sources, number of documents, number of sub-clusters, and important topics. In one embodiment, the score for each clusters may be calculated by adding up the scores attributed by the parameter analyzed in the Blocks 715, 720, 725, 730, and 735. In one embodiment, these scores may be stored within the database 140. In addition, the clusters are sorted by score.
The flow diagram in
In Block 820, clusters that are already sorted by the Block 780 are identified.
In Block 830, centroids may be computed for each cluster. Typically, the centroid uniquely describes the topic or subject matter of the cluster. In one example, the centroid is computed by averaging individual term vectors from the documents contained within the cluster. The term vectors may include a weighted set of terms.
In Block 840, the centroids of the sorted clusters may be compared with the centroids of previously viewed clusters. If the centroid of a particular cluster is similar to the centroids of the previously viewed clusters, this particular cluster may be rated lower than other sorted clusters which are not similar to the centroids of previously viewed clusters. The similar particular cluster may be rated lower than dissimilar sorted clusters, because the user has already viewed documents which are related to the similar particular cluster.
In Block 850, the clusters identified in the Block 820 may be sorted based on the comparison between the centroids of these clusters and the centroids of previously viewed clusters.
The flow diagram in
In Block 930, the documents within the cluster may be rated for recency and/or content. With regards to recency for example, if a document is ten (10) hours old, the document is assigned a recency score of ten (10) hours. In assigning a recency score, the measurement of recency may be defined as the difference in time between the present time and the time of publication. In another embodiment, the measurement of recency may be defined as the difference in time between publication of the document and the time of a corresponding event. In yet another embodiment, the measurement of recency may be defined as the difference in time between the present time and the time of an event corresponding to the document.
In addition to recency, the documents may also be scored according to the length of a document, the title of a document, and genre of a document. For example, in one embodiment, the longer the document is, the higher the particular document may be scored.
The title of the document may be analyzed in a variety of ways to aide in scoring the document. For example, the length of the title may be utilized to score the document with a longer title scoring a higher score.
In another example, the title may be searched for generic terms such as “News Highlights”, “News Summary”, and the like. In one embodiment, the higher percentage of generic terms used with the title, the lower the document may be scored. By the same token, use of proper nouns in the title may increase the score of the document. In yet another example, the words within the title may be compared with the centroid of the cluster which contains the document. In one embodiment, the score of the document is higher if the title contains words that overlap or match the centroid of the cluster.
Based on the content of the document, the document may belong to a specific genre such as “op/ed”, “investigative report”, “letter to the editor”, “news brief”, “breaking news”, “audio news”, “video news”, and the like. The score of the document may increase if the genre of the document matches the genre of a query. In one embodiment, the query specifies a particular genre. In another embodiment, the query includes the genre which passively specified by the user as a preference.
In Block 940, the documents within the cluster may be rated for quality of the corresponding source. Rating the quality of the corresponding source is demonstrated in the Block 350 (
The measurement of recency for a document (as described in the Block 930) may be taken into account with the quality of the corresponding source.
For example, if a document is assigned a recency score of ten (10) hours and the corresponding source is considered a golden source, then a modified recency score is ten subtracted by X (10−X) hours where X is a selected value based on the quality of the source. In this example, the modified recency score is less than the original recency score, because the corresponding source is considered a golden source.
In another example, if a document is assigned a recency score of ten (10) hours and the corresponding source is considered a lowest category, then a modified recency score is ten added by Y (10+Y) hours where Y is a selected value based on the quality of the source. In this example, the modified recency score is greater than the original recency score, because the corresponding source is considered a lowest category.
In Block 950, the documents may be sorted by recency of the document and quality of the source. The documents may be sorted by the modified recency score as shown in the Block 940. In one embodiment, the documents are sorted with the most recent documents listed first.
In Block 960, the most recent document within each sub-cluster of the cluster is identified and included as part of a displayed list of documents. The displayed list of documents utilizes an order with the most recent document listed first according to the modified recency score.
In Block 970, the documents within the displayed list of documents as described in the Block 960 are weighted by the number of documents within the corresponding sub-cluster. In one embodiment, the modified recency score is further modified. For example, the more documents within a particular sub-cluster may increase the importance of the documents within the sub-cluster. In other words, the individual documents within the displayed list of documents are weighted based on the number of documents within the sub-cluster.
In one example, a first and second document may each have a modified recency score of ten (10) hours. However, the first document is within a sub-cluster which includes twenty (20) documents, and the second document is within a sub-cluster which includes ten (10) documents. According to one embodiment, the first document has a new modified recency score of eight (8) hours based on the weighting of the number of documents within the sub-cluster. The second document has a new modified recency score of twelve (12) hours based on the weighting of the number or documents within the sub-cluster. Accordingly, the first document has a lower modified recency score than the second document and may be in a higher priority position to be viewed or displayed.
In Block 980, the displayed list of documents is shown to the user. The documents within the displayed list of documents may be shown to the user based on the modified recency score as formed in the Block 960. The documents within the displayed list of documents may be shown to the user based on the modified recency score as modified in the Block 970.
The foregoing descriptions of specific embodiments of the invention have been presented for purposes of illustration and description. For example, the invention is described within the context of documents as merely one embodiment of the invention. The invention may be applied to a variety of other electronic data such as pictures, audio representations, graphic images, and the like.
For the sake of clarity, the foregoing references to “browser” are a figurative aid to illustrate a particular device which is utilized by a specific user.
They are not intended to be exhaustive or to limit the invention to the precise embodiments disclosed, and naturally many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to explain the principles of the invention and its practical application, to thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the Claims appended hereto and their equivalents.
The present application claims benefit of U.S. Provisional Patent Application No. 60/412,287 filed on Sep. 20, 2002, entitled “METHODS AND APPARATUS FOR CLUSTERED AGGREGATION OF NEWS CONTENT” listing the same inventors, the disclosure of which is hereby incorporated by reference.
Number | Name | Date | Kind |
---|---|---|---|
5293552 | Aalbersberg | Mar 1994 | A |
5724567 | Rose et al. | Mar 1998 | A |
5787420 | Tukey et al. | Jul 1998 | A |
5907836 | Sumita et al. | May 1999 | A |
6026388 | Liddy et al. | Feb 2000 | A |
6275820 | Navin-Chandra et al. | Aug 2001 | B1 |
6453315 | Weissman et al. | Sep 2002 | B1 |
6463265 | Cohen et al. | Oct 2002 | B1 |
6558431 | Lynch et al. | May 2003 | B1 |
6594654 | Salam et al. | Jul 2003 | B1 |
6601075 | Huang et al. | Jul 2003 | B1 |
6647383 | August et al. | Nov 2003 | B1 |
6654742 | Kobayashi et al. | Nov 2003 | B1 |
6785671 | Bailey et al. | Aug 2004 | B1 |
6804688 | Kobayashi et al. | Oct 2004 | B2 |
6859800 | Roche et al. | Feb 2005 | B1 |
6952806 | Card et al. | Oct 2005 | B1 |
6978419 | Kantrowitz | Dec 2005 | B1 |
7080079 | Yu | Jul 2006 | B2 |
20020038430 | Edwards et al. | Mar 2002 | A1 |
20020073161 | Yamazaki et al. | Jun 2002 | A1 |
20020103775 | Quass et al. | Aug 2002 | A1 |
20030009496 | McBrearty et al. | Jan 2003 | A1 |
20030014383 | Cho et al. | Jan 2003 | A1 |
20030120654 | Edlund et al. | Jun 2003 | A1 |
20030182270 | Kuno et al. | Sep 2003 | A1 |
20030220913 | Doganata et al. | Nov 2003 | A1 |
20050102130 | Quirk et al. | May 2005 | A1 |
20050203970 | McKeown et al. | Sep 2005 | A1 |
20050289140 | Ford et al. | Dec 2005 | A1 |
20060089947 | Gallivan et al. | Apr 2006 | A1 |
20060259476 | Kadayam et al. | Nov 2006 | A1 |
20060277175 | Jiang et al. | Dec 2006 | A1 |
20070022374 | Huang et al. | Jan 2007 | A1 |
Number | Date | Country | |
---|---|---|---|
60412287 | Sep 2002 | US |