US20090119284A1 - Method and system for classifying display pages using summaries - Google Patents

Method and system for classifying display pages using summaries Download PDF

Info

Publication number
US20090119284A1
US20090119284A1 US12/145,222 US14522208A US2009119284A1 US 20090119284 A1 US20090119284 A1 US 20090119284A1 US 14522208 A US14522208 A US 14522208A US 2009119284 A1 US2009119284 A1 US 2009119284A1
Authority
US
United States
Prior art keywords
web page
similarity
identified objects
component
objects
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/145,222
Inventor
Zheng Chen
Dou Shen
Benyu Zhang
Hua-Jun Zeng
Wei-Ying Ma
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Priority to US12/145,222 priority Critical patent/US20090119284A1/en
Publication of US20090119284A1 publication Critical patent/US20090119284A1/en
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC reassignment MICROSOFT TECHNOLOGY LICENSING, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MICROSOFT CORPORATION
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/34Browsing; Visualisation therefor
    • G06F16/345Summarisation for human users
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Definitions

  • the described technology relates generally to automatically classifying information.
  • search engine services such as Google and Overture, provide for searching for information that is accessible via the Internet. These search engine services allow users to search for display pages, such as web pages, that may be of interest to users. After a user submits a search request that includes search terms, the search engine service identifies web pages that may be related to those search terms. To quickly identify related web pages, the search engine services may maintain a mapping of keywords to web pages. This mapping may be generated by “crawling” the web (i.e., the World Wide Web) to identify the keywords of each web page. To crawl the web, a search engine service may use a list of root web pages to identify all web pages that are accessible through those root web pages.
  • the keywords of any particular web page can be identified using various well-known information retrieval techniques, such as identifying the words of a headline, the words supplied in the metadata of the web page, the words that are highlighted, and so on.
  • the search engine service may generate a relevance score to indicate how relevant the information of the web page may be to the search request based on the closeness of each match, web page popularity (e.g., Google's PageRank), and so on.
  • the search engine service displays to the user links to those web pages in an order that is based on their rankings.
  • search engine services may return many web pages as a search result, the presenting of the web pages in rank order may make it difficult for a user to actually find those web pages of particular interest to the user. Since the web pages that are presented first may be directed to popular topics, a user who is interested in an obscure topic may need to scan many pages of the search result to find a web page of interest. To make it easier for a user to find web pages of interest, the web pages of a search result could be presented in a hierarchical organization based on some classification or categorization of the web pages. For example, if a user submits a search request of “court battles,” the search result may contain web pages that can be classified as sports-related or legal-related.
  • the user may prefer to be presented initially with a list of classifications of the web pages so that the user can select the classification of web pages that is of interest. For example, the user might be first presented with an indication that the web pages of the search result have been classified as sports-related and legal-related. The user can then select the legal-related classification to view web pages that are legal-related. In contrast, since sports web pages are more popular than legal web pages, a user might have to scan many pages to find legal-related web pages if the most popular web pages are presented first.
  • FIG. 1 is block diagram that illustrates components of a classification system and a summarization system in one embodiment.
  • FIG. 2 is a flow diagram that illustrates the processing of the classify web page component in one embodiment.
  • FIG. 3 is a flow diagram that illustrates the processing of the summarize web page component in one embodiment.
  • FIG. 5 is a flow diagram that illustrates the processing of the calculate Luhn score component in one embodiment.
  • FIG. 6 is a flow diagram that illustrates the processing of the calculate latent semantic analysis score component in one embodiment.
  • FIG. 7 is a flow diagram that illustrates the processing of the calculate content body score component in one embodiment.
  • FIG. 9 is a flow diagram that illustrates the processing of the combine scores component in one embodiment.
  • a web page classification system uses a web page summarization system to generate summaries of web pages.
  • the summary of a web page may include the sentences of the web page that are most closely related to the primary topic of the web page.
  • the classification system may apply conventional classification techniques to the summary to classify the web page.
  • the summarization system may combine the benefits of multiple summarization techniques to identify the sentences of a web page that represent the primary topic of the web page.
  • the summarization system uses a Luhn summarization technique, a latent semantic analysis summarization technique, a content body summarization technique, and a supervised summarization technique either individually or in combination to generate a summary.
  • the summarization system uses each of the summarization techniques to generate a summarization technique-specific score for each sentence of a web page.
  • the summarization system then combines the summarization technique-specific scores for a sentence to generate an overall score for that sentence.
  • the summarization system selects the sentences of the web page with the highest overall scores to form the summary of the web page.
  • the classification system may use conventional classification techniques such as a Na ⁇ ve Bayesian classifier or a support vector machine to identify the classifications of a web page based on the summary generated by the summarization system. In this way, web pages can be automatically classified based on automatically generated summaries of the web pages.
  • the summarization system uses a modified version of the Luhn summarization technique to generate a Luhn score for each sentence of a web page.
  • the Luhn summarization technique generates a score for a sentence that is based on the “significant words” that are in the sentence.
  • the Luhn summarization technique identifies a portion of the sentence that is bracketed by significant words that are not more than a certain number of non-significant words apart.
  • the Luhn summarization technique calculates the score of the sentence as the ratio of the square of the number of significant words contained in the bracketed portion divided by the number of words within the bracketed portion.
  • the summarization system modifies the Luhn summarization technique by defining a collection of significant words for each classification. For example, a sports-related classification may have a collection of significant words that includes “court,” “basketball,” and “sport,” whereas a legal-related classification may have a collection of significant words that includes “court,” “attorney,” and “criminal.”
  • the summarization system may identify the collections of significant words based on a training set of web pages that have been pre-classified.
  • the summarization system uses a latent semantic analysis summarization technique to generate a latent semantic analysis score for each sentence of a web page.
  • the latent semantic analysis summarization technique uses singular value decomposition to generate a score for each sentence.
  • the summarization system generates a word-sentence matrix for the web page that contains a weighted term-frequency value for each word-sentence combination.
  • the matrix may be represented by the following:
  • A represents the word-sentence matrix
  • U is a column-orthonormal matrix whose columns are left singular vectors
  • is a diagonal matrix whose diagonal elements are non-negative singular values sorted in descending order
  • V is an orthonormal matrix whose columns are right singular vectors.
  • the summarization system may select the first right singular vector and select the sentence that has the highest index value within that vector. The summarization system then gives that sentence the highest score. The summarization system then selects the second right singular vector and gives the sentence that has the highest index value within that vector the second highest score. The summarization system then continues in a similar manner to generate the scores for the other sentences. The summarization system may select the sentences with the highest scores to form the summary of the web page.
  • the summarization system uses a content body summarization technique to generate a content body score for each sentence of a web page.
  • the content body summarization technique identifies the content body of a web page and gives a high score to the sentences within the content body.
  • the content body summarization technique identifies basic objects and composite objects of the web page.
  • a basic object is the smallest information area that cannot be further divided. For example, in HTML, a basic object is a non-breakable element within two tags or an embedded object.
  • a composite object is a set of basic objects or other composite objects that combine to perform a function.
  • the summarization system categorizes the objects into categories such as information, navigation, interaction, decoration, or special function.
  • the information category is for objects that present content information
  • the navigation category is for objects that present a navigation guide
  • the interaction category is for objects that present user interactions (e.g., input field)
  • the decoration category is for objects that present decorations
  • a special function category is for objects that present information such as legal information, contact information, logo information, and so on.
  • the summarization system builds a term frequency by inverted document frequency index (i.e., TF*IDF) for each object.
  • the summarization system calculates the similarity between pairs of objects using a similarity computation such as cosine similarity. If the similarity between the objects of the pair is greater than a threshold level, the summarization system links the objects of the pair.
  • the summarization system identifies the object that has the most links to it as the core object that represents the primary topic of the web page.
  • the content body of the web page is the core object along with each object that has a link to the core object.
  • the summarization system gives a high score to each sentence of the content body and a low score to every other sentence of the web page.
  • the summarization system may select the sentences with a high score to form the summary of the web page.
  • the summarization system uses a supervised summarization technique to generate a supervised score for each sentence of a web page.
  • the supervised summarization technique uses training data to learn a summarize function that identifies whether a sentence should be selected as part of a summary.
  • the supervised summarization technique represents each sentence by a feature vector.
  • the supervised summarization technique uses the features defined in Table 1 where f ij represents the value of the ith feature of sentence i.
  • f i1 the position of a sentence S i in its containing paragraph.
  • f i2 the length of a sentence S i which is the number of words in S i .
  • f i3 ⁇ TF w *SF w , which takes into account not only the number of words w into consideration, but also its distribution among sentences where TF w is the number of occurrences of word w in a target web page and where SF w is the number of sentences including the word w in the target web page.
  • f i4 the similarity between S i and the title, which may be calculated as the dot product between the sentence and the title.
  • f i5 the cosine similarity between S i and all text in the web page.
  • f i6 the cosine similarity between S i and metadata of the web page.
  • f i7 the number of occurrences of a word from a special word set that are in S i .
  • the special word set may be built by collecting the words in the web page that are highlighted (e.g., italicized, bold faced, or under- lined).
  • f i8 the average font size of the words in S i . In general, larger font size in a web page is given higher importance.
  • the summarization system may use a Na ⁇ ve Bayesian classifier to learn the summarize function.
  • the summarize function can be represented by the following:
  • p(s ⁇ S) stands for the compression rate of the summarizer (which can be predefined for different applications)
  • p(f j ) is the probability of each feature j
  • s ⁇ S) is the conditional probability of each feature j. The latter two factors can be estimated from the training set.
  • the summarization system combines the scores of the Luhn summarization technique, the latent semantic analysis summarization technique, the content body summarization technique, and the supervised summarization technique to generate an overall score.
  • the scores may be combined as follows:
  • the summarization system may apply a weighting factor to each summarization technique score so that not all the summarization technique scores are weighted equally. For example, if the Luhn score is thought to be a more accurate reflection of the relatedness of a sentence to the primary topic of the web page, then the weighting factor for the Luhn score might be 0.7 and the weighting factor for the other scores might be 0.1 each. If a weighting factor for a summarization technique is set to zero, then the summarization system does not use that summarization technique.
  • any number of the summarization techniques can have their weights set to zero. For example, if a weighting factor of 1 is used for the Luhn score and for zero for the other scores, then the “combined” score would be simply the Luhn score.
  • the summarization system may normalize each of the summarization technique scores.
  • the summarization system may also use a non-linear combination of the summarization technique scores. The summarization system may select the sentences with the highest combined scores to form the summary of the web page.
  • the classification system uses a Na ⁇ ve Bayesian classifier to classify a web page based on its summary.
  • the Na ⁇ ve Bayesian classifier uses Bayes' rule, which may be defined as follows:
  • d i ; ⁇ circumflex over ( ⁇ ) ⁇ ) can be calculated by counting the frequency with each category c j occurring in the training data
  • is the number of categories
  • c j ) is a probability that word w i occurs in class c j
  • N(w k ,d i ) is the number of occurrences of a word w k in d i
  • n is the number of words in the training data.
  • the classification system uses a support vector machine to classify a web page based on its summary.
  • a support vector machine operates by finding a hyper-surface in the space of possible inputs. The hyper-surface attempts to split the positive examples from the negative examples by maximizing the distance between the nearest of the positive and negative examples to the hyper-surface. This allows for correct classification of data that is similar to but not identical to the training data.
  • Various techniques can be used to train a support vector machine.
  • One technique uses a sequential minimal optimization algorithm that breaks the large quadratic programming problem down into a series of small quadratic programming problems that can be solved analytically. (See Sequential Minimal Optimization, at http://research.micro-soft.com/ ⁇ jplatt/smo.html.)
  • FIG. 1 is block diagram that illustrates components of a classification system and a summarization system in one embodiment.
  • the classification system 110 includes a classify web page component 111 and a classifier component 112 .
  • the summarization system 120 includes a summarize web page component 121 , a sort sentences component 122 , a calculate scores component 123 , and a select top sentences component 124 .
  • the classify web page component uses the summarize web page component to generate a summary for a web page and then uses the classifier component to classify the web page based on the summary.
  • the summarize web page component uses the calculate scores component to calculate a score for each sentence of the web page.
  • the summarize web page component then uses the sort sentences component to sort the sentences of the web page based on their scores and the select top sentences component to select the sentences with the highest scores to form the summary of the web page.
  • the calculate scores component uses a calculate Luhn score component 125 , a calculate latent semantic analysis score component 126 , a calculate content body score component 127 , and a calculate supervised score component 128 to generate scores for various summarization techniques.
  • the calculate scores component then combines the scores for the summarization techniques to provide an overall score for each sentence.
  • the computing device on which the summarization system is implemented may include a central processing unit, memory, input devices (e.g., keyboard and pointing devices), output devices (e.g., display devices), and storage devices (e.g., disk drives).
  • the memory and storage devices are computer-readable media that may contain instructions that implement the summarization system.
  • the data structures and message structures may be stored or transmitted via a data transmission medium, such as a signal on a communications link.
  • Various communications links may be used, such as the Internet, a local area network, a wide area network, or a point-to-point dial-up connection.
  • the summarization system may be implemented in various operating environments.
  • the operating environment described herein is only one example of a suitable operating environment and is not intended to suggest any limitation as to the scope of use or functionality of the summarization system.
  • Other well-known computing systems, environments, and configurations that may be suitable for use include personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.
  • the summarization system may be described in the general context of computer-executable instructions, such as program modules, executed by one or more computers or other devices.
  • program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types.
  • functionality of the program modules may be combined or distributed as desired in various embodiments.
  • FIG. 2 is a flow diagram that illustrates the processing of the classify web page component in one embodiment.
  • the component is passed a web page and returns its classifications.
  • the component invokes the summarize web page component to generate a summary for the web page.
  • the component classifies the web page based on the summary of the web page using a classifier such as a Na ⁇ ve Bayesian classifier or a support vector machine. The component then completes.
  • FIG. 3 is a flow diagram that illustrates the processing of the summarize web page component in one embodiment.
  • the component is passed a web page, calculates a score for each sentence of the web page, and selects the sentences with the highest scores to form the summary of the web page.
  • the component invokes the calculate scores component to calculate a score for each sentence.
  • the component sorts the sentences based on the calculated scores.
  • the component selects the sentences with the top scores to form the summary for the web page. The component then returns the summary.
  • FIG. 4 is a flow diagram that illustrates the processing of the calculate scores component in one embodiment.
  • the component is passed a web page, calculates various summarization technique scores for the sentences of the web page, and calculates a combined score for each sentence based on those summarization technique scores.
  • the component may alternatively calculate a score using only one summarization technique or various combinations of the summarization techniques.
  • the component invokes the calculate Luhn score component to calculate a Luhn score for each sentence of the web page.
  • the component invokes the calculate latent semantic analysis score component to calculate a latent semantic analysis score for each sentence of the web page.
  • the component invokes the calculate content body score component to calculate a content body score for each sentence of the web page.
  • the component invokes the calculate supervised score component to calculate a supervised score for each sentence of the web page.
  • the component invokes a combine scores component to calculate a combined score for each sentence of the web page. The component then returns the combined scores.
  • FIG. 5 is a flow diagram that illustrates the processing of the calculate Luhn score component in one embodiment.
  • the component is passed a web page and calculates a Luhn score for each sentence of the passed web page.
  • the component selects the next sentence of the web page.
  • decision block 502 if all the sentences of the web page have already been selected, then the component returns the Luhn scores, else the component continues at block 503 .
  • blocks 503 - 509 the component loops generating a class score for the selected sentence for each classification.
  • the component selects the next classification.
  • decision block 504 if all the classifications have already been selected, then the component continues at block 510 , else the component continues at block 505 .
  • the component identifies words of the selected sentence that are bracketed by significant words of the selected classification.
  • decision block 506 if bracketed words are identified, then the component continues at block 507 , else the component loops to block 503 to select the next classification.
  • the component counts the significant words within the bracketed portion of the selected sentence.
  • the component counts the words within the bracketed portion of the selected sentence.
  • the component calculates a score for the classification as the square of the count of significant words divided by the count of words. The component then loops to block 503 to select the next classification.
  • the component calculates the Luhn score for the selected sentence as a sum of the class scores divided by the number of classifications for which a bracketed portion of the selected sentence was identified (i.e., the average of the class scores that were calculated). The component then loops to block 501 to select the next sentence.
  • FIG. 6 is a flow diagram that illustrates the processing of the calculate latent semantic analysis score component in one embodiment.
  • the component is passed a web page and calculates a latent semantic analysis score for each sentence of the passed web page.
  • the component loops constructing a term-by-weight vector for each sentence of the web page.
  • the component selects the next sentence of the web page.
  • decision block 602 if all the sentences of the web page have already been selected, then the component continues at block 604 , else the component continues at block 603 .
  • the component constructs a term-by-weight vector for the selected sentence and then loops to block 601 to select the next sentence.
  • the term-by-weight vectors for the sentences form a matrix that is decomposed to give a matrix of right singular vectors.
  • the component performs singular value decomposition of that matrix to generate the right singular vectors.
  • the component loops setting a score for each sentence based on the right singular vectors.
  • the component selects the next right singular vector.
  • decision block 606 if all the right singular vectors have already been selected, then the component returns the scores as the latent semantic analysis scores, else the component continues at block 607 .
  • the component sets the score of the sentence with the highest index value of the selected right singular vector and then loops to block 605 to select the next right singular vector.
  • FIG. 7 is a flow diagram that illustrates the processing of the calculate content body score component in one embodiment.
  • the component is passed a web page and calculates a content body score for each sentence of the passed web page.
  • the component identifies the basic objects of the web page.
  • the component identifies the composite objects of the web page.
  • the component loops generating a term frequency/inverted document frequency vector for each object.
  • the component selects the next object.
  • decision block 704 if all the objects have already been selected, then the component continues at block 706 , else the component continues at block 705 .
  • the component In block 705 , the component generates the term frequency/inverted document frequency vector for the selected object and then loops to block 703 to select the next object. In blocks 706 - 710 , the component loops calculating the similarity between pairs of objects. In block 706 , the component selects the next pair of objects. In decision block 707 , if all the pairs of objects have already been selected, then the component continues at block 711 , else the component continues at block 708 . In block 708 , the component calculates the similarity between the selected pair of objects. In decision block 709 , if the similarity is higher than a threshold level of similarity, then the component continues at block 710 , else the component loops to block 706 to select the next pair of objects.
  • the component adds a link between the selected pair of objects and then loops to block 706 to select the next pair of objects.
  • the component identifies the content body of the web page by identifying a core object and all objects with links to that core object.
  • the component identifies the core object as the object with the greatest number of links to it.
  • the component selects the next sentence of the web page.
  • decision block 713 if all the sentences have already been selected, then the component returns the content body scores, else the component continues at block 714 .
  • decision block 714 if the sentence is within an object that is linked to the core object, then the sentence is within the content body and the component continues at block 715 , else the component sets the score of the selected sentence to zero and loops to block 712 to select the next sentence. In block 715 , the component sets the score of the selected sentence to a high score and then loops to block 712 to select the next sentence.
  • FIG. 8 is a flow diagram that illustrates the processing of the calculate supervised score component in one embodiment.
  • the component is passed a web page and calculates a supervised score for each sentence of the web page.
  • the component selects the next sentence of the web page.
  • decision block 802 if all the sentences of the web page have already been selected, then the component returns the supervised scores, else the component continues at block 803 .
  • the component generates the feature vector for the selected sentence.
  • the component calculates the score for the selected sentence using the generated feature vector and the learned summarize function. The component then loops to block 801 to select the next sentence.
  • FIG. 9 is a flow diagram that illustrates the processing of the combine scores component in one embodiment.
  • the component generates a combined score for each sentence of a web page based on the Luhn score, the latent semantic analysis score, the content body score, and the supervised score.
  • the component selects the next sentence of the web page.
  • decision block 902 if all the sentences have already been selected, then the component returns the combined scores, else the component continues at block 903 .
  • the component combines the scores for the selected sentence and then loops to block 901 to select the next sentence.
  • classification refers to the process of identifying the class or category associated with a display page.
  • the classes may be predefined.
  • the attributes of a display page to be classified may be compared to attributes derived from other display pages that have been classified (e.g., a training set). Based on the comparison, the display page is classified into the class whose display page attributes are similar to those of the display page being classified.
  • Clustering in contrast, refers to the process of identifying from a set of display pages groups of display pages that are similar to each other. Accordingly, the invention is not limited except by the appended claims.

Abstract

A method and system for classifying display pages based on automatically generated summaries of display pages. A web page classification system uses a web page summarization system to generate summaries of web pages. The summary of a web page may include the sentences of the web page that are most closely related to the primary topic of the web page. The summarization system may combine the benefits of multiple summarization techniques to identify the sentences of a web page that represent the primary topic of the web page. Once the summary is generated, the classification system may apply conventional classification techniques to the summary to classify the web page. The classification system may use conventional classification techniques such as a Naïve Bayesian classifier or a support vector machine to identify the classifications of a web page based on the summary generated by the summarization system.

Description

    TECHNICAL FIELD
  • The described technology relates generally to automatically classifying information.
  • BACKGROUND
  • Many search engine services, such as Google and Overture, provide for searching for information that is accessible via the Internet. These search engine services allow users to search for display pages, such as web pages, that may be of interest to users. After a user submits a search request that includes search terms, the search engine service identifies web pages that may be related to those search terms. To quickly identify related web pages, the search engine services may maintain a mapping of keywords to web pages. This mapping may be generated by “crawling” the web (i.e., the World Wide Web) to identify the keywords of each web page. To crawl the web, a search engine service may use a list of root web pages to identify all web pages that are accessible through those root web pages. The keywords of any particular web page can be identified using various well-known information retrieval techniques, such as identifying the words of a headline, the words supplied in the metadata of the web page, the words that are highlighted, and so on. The search engine service may generate a relevance score to indicate how relevant the information of the web page may be to the search request based on the closeness of each match, web page popularity (e.g., Google's PageRank), and so on. The search engine service then displays to the user links to those web pages in an order that is based on their rankings.
  • Although search engine services may return many web pages as a search result, the presenting of the web pages in rank order may make it difficult for a user to actually find those web pages of particular interest to the user. Since the web pages that are presented first may be directed to popular topics, a user who is interested in an obscure topic may need to scan many pages of the search result to find a web page of interest. To make it easier for a user to find web pages of interest, the web pages of a search result could be presented in a hierarchical organization based on some classification or categorization of the web pages. For example, if a user submits a search request of “court battles,” the search result may contain web pages that can be classified as sports-related or legal-related. The user may prefer to be presented initially with a list of classifications of the web pages so that the user can select the classification of web pages that is of interest. For example, the user might be first presented with an indication that the web pages of the search result have been classified as sports-related and legal-related. The user can then select the legal-related classification to view web pages that are legal-related. In contrast, since sports web pages are more popular than legal web pages, a user might have to scan many pages to find legal-related web pages if the most popular web pages are presented first.
  • It would be impractical to manually classify the millions of web pages that are currently available. Although automated classification techniques have been used to classify text-based content, those techniques are not generally applicable to the classification of web pages. Web pages have an organization that includes noisy content, such as an advertisement or a navigation bar, that is not directly related to the primary topic of the web page. Because conventional text-based classification techniques would use such noisy content when classifying a web page, these techniques would tend to produce incorrect classifications of web pages.
  • It would be desirable to have a classification technique for web pages that would base the classification of a web page on the primary topic of the web page and give little weight to noisy content of the web page.
  • SUMMARY
  • A classification and summarization system classifies display pages such as web pages based on automatically generated summaries of the display pages. In one embodiment, a web page classification system uses a web page summarization system to generate summaries of web pages. The summary of a web page may include the sentences of the web page that are most closely related to the primary topic of the web page. The summarization system may combine the benefits of multiple summarization techniques to identify the sentences of a web page that represent the primary topic of the web page. Once a summary is generated, the classification system may apply conventional classification techniques to the summary to classify the web page.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is block diagram that illustrates components of a classification system and a summarization system in one embodiment.
  • FIG. 2 is a flow diagram that illustrates the processing of the classify web page component in one embodiment.
  • FIG. 3 is a flow diagram that illustrates the processing of the summarize web page component in one embodiment.
  • FIG. 4 is a flow diagram that illustrates the processing of the calculate scores component in one embodiment.
  • FIG. 5 is a flow diagram that illustrates the processing of the calculate Luhn score component in one embodiment.
  • FIG. 6 is a flow diagram that illustrates the processing of the calculate latent semantic analysis score component in one embodiment.
  • FIG. 7 is a flow diagram that illustrates the processing of the calculate content body score component in one embodiment.
  • FIG. 8 is a flow diagram that illustrates the processing of the calculate supervised score component in one embodiment.
  • FIG. 9 is a flow diagram that illustrates the processing of the combine scores component in one embodiment.
  • DETAILED DESCRIPTION
  • A method and system for classifying display pages based on automatically generated summaries of display pages is provided. In one embodiment, a web page classification system uses a web page summarization system to generate summaries of web pages. The summary of a web page may include the sentences of the web page that are most closely related to the primary topic of the web page. Once the summary is generated, the classification system may apply conventional classification techniques to the summary to classify the web page. The summarization system may combine the benefits of multiple summarization techniques to identify the sentences of a web page that represent the primary topic of the web page. In one embodiment, the summarization system uses a Luhn summarization technique, a latent semantic analysis summarization technique, a content body summarization technique, and a supervised summarization technique either individually or in combination to generate a summary. The summarization system uses each of the summarization techniques to generate a summarization technique-specific score for each sentence of a web page. The summarization system then combines the summarization technique-specific scores for a sentence to generate an overall score for that sentence. The summarization system selects the sentences of the web page with the highest overall scores to form the summary of the web page. The classification system may use conventional classification techniques such as a Naïve Bayesian classifier or a support vector machine to identify the classifications of a web page based on the summary generated by the summarization system. In this way, web pages can be automatically classified based on automatically generated summaries of the web pages.
  • In one embodiment, the summarization system uses a modified version of the Luhn summarization technique to generate a Luhn score for each sentence of a web page. The Luhn summarization technique generates a score for a sentence that is based on the “significant words” that are in the sentence. To generate a score for a sentence, the Luhn summarization technique identifies a portion of the sentence that is bracketed by significant words that are not more than a certain number of non-significant words apart. The Luhn summarization technique calculates the score of the sentence as the ratio of the square of the number of significant words contained in the bracketed portion divided by the number of words within the bracketed portion. (See H. P. Luhn, The Automatic Creation of Literature Abstracts, 2 IBM J. OF RES. & DEV. No. 2, 159-65 (April 1958).) The summarization system modifies the Luhn summarization technique by defining a collection of significant words for each classification. For example, a sports-related classification may have a collection of significant words that includes “court,” “basketball,” and “sport,” whereas a legal-related classification may have a collection of significant words that includes “court,” “attorney,” and “criminal.” The summarization system may identify the collections of significant words based on a training set of web pages that have been pre-classified. The summarization system may select the most frequently used words on the web pages with a certain classification as the collection of significant words for that classification. The summarization system may also remove certain stop words from the collection that may represent noisy content. When scoring a sentence of a web page, the modified Luhn summarization technique calculates a score for each classification. The summarization technique then averages the scores for each classification that are above a threshold level to give a combined Luhn score for the sentence. The summarization system may select the sentences with the highest Luhn scores to form the summary.
  • In one embodiment, the summarization system uses a latent semantic analysis summarization technique to generate a latent semantic analysis score for each sentence of a web page. The latent semantic analysis summarization technique uses singular value decomposition to generate a score for each sentence. The summarization system generates a word-sentence matrix for the web page that contains a weighted term-frequency value for each word-sentence combination. The matrix may be represented by the following:

  • A=UΣVT  (1)
  • where A represents the word-sentence matrix, U is a column-orthonormal matrix whose columns are left singular vectors, Σ is a diagonal matrix whose diagonal elements are non-negative singular values sorted in descending order, and V is an orthonormal matrix whose columns are right singular vectors. After decomposing the matrix into U, Σ, and V, the summarization system uses the right singular vectors to generate the scores for the sentences. (See Y. H. Gong & X. Liu, Generic Text Summarization Using Relevance Measure and Latent Semantic Analysis, in PROC. OF THE 24TH ANNUAL INTERNATIONAL ACM SIGIR, New Orleans, La., 19-25 (2001).) The summarization system may select the first right singular vector and select the sentence that has the highest index value within that vector. The summarization system then gives that sentence the highest score. The summarization system then selects the second right singular vector and gives the sentence that has the highest index value within that vector the second highest score. The summarization system then continues in a similar manner to generate the scores for the other sentences. The summarization system may select the sentences with the highest scores to form the summary of the web page.
  • In one embodiment, the summarization system uses a content body summarization technique to generate a content body score for each sentence of a web page. The content body summarization technique identifies the content body of a web page and gives a high score to the sentences within the content body. To identify the content body of a web page, the content body summarization technique identifies basic objects and composite objects of the web page. A basic object is the smallest information area that cannot be further divided. For example, in HTML, a basic object is a non-breakable element within two tags or an embedded object. A composite object is a set of basic objects or other composite objects that combine to perform a function. After identifying the objects, the summarization system categorizes the objects into categories such as information, navigation, interaction, decoration, or special function. The information category is for objects that present content information, the navigation category is for objects that present a navigation guide, the interaction category is for objects that present user interactions (e.g., input field), the decoration category is for objects that present decorations, and a special function category is for objects that present information such as legal information, contact information, logo information, and so on. (See J. L. Chen, et al., Function-based Object Model Towards Website Adaptation, PROC. OF WWW10, Hong Kong, China (2001).) In one embodiment, the summarization system builds a term frequency by inverted document frequency index (i.e., TF*IDF) for each object. The summarization system then calculates the similarity between pairs of objects using a similarity computation such as cosine similarity. If the similarity between the objects of the pair is greater than a threshold level, the summarization system links the objects of the pair. The summarization system then identifies the object that has the most links to it as the core object that represents the primary topic of the web page. The content body of the web page is the core object along with each object that has a link to the core object. The summarization system gives a high score to each sentence of the content body and a low score to every other sentence of the web page. The summarization system may select the sentences with a high score to form the summary of the web page.
  • In one embodiment, the summarization system uses a supervised summarization technique to generate a supervised score for each sentence of a web page. The supervised summarization technique uses training data to learn a summarize function that identifies whether a sentence should be selected as part of a summary. The supervised summarization technique represents each sentence by a feature vector. In one embodiment, the supervised summarization technique uses the features defined in Table 1 where fij represents the value of the ith feature of sentence i.
  • TABLE 1
    Feature Description
    fi1 the position of a sentence Si in its containing
    paragraph.
    fi2 the length of a sentence Si which is the number of
    words in Si.
    fi3 Σ TFw*SFw, which takes into account not only the
    number of words w into consideration, but also its
    distribution among sentences where TFw is the
    number of occurrences of word w in a target web
    page and where SFw is the number of sentences
    including the word w in the target web page.
    fi4 the similarity between Si and the title, which may be
    calculated as the dot product between the sentence
    and the title.
    fi5 the cosine similarity between Si and all text in the
    web page.
    fi6 the cosine similarity between Si and metadata of the
    web page.
    fi7 the number of occurrences of a word from a special
    word set that are in Si. The special word set may be
    built by collecting the words in the web page that
    are highlighted (e.g., italicized, bold faced, or under-
    lined).
    fi8 the average font size of the words in Si. In general,
    larger font size in a web page is given higher
    importance.
  • The summarization system may use a Naïve Bayesian classifier to learn the summarize function. The summarize function can be represented by the following:
  • p ( s S f 1 , f 2 f 8 ) = j = 1 8 p ( f j s S ) p ( s S ) j = 1 8 p ( f j ) ( 2 )
  • where p(sεS) stands for the compression rate of the summarizer (which can be predefined for different applications), p(fj) is the probability of each feature j, and p(fj|sεS) is the conditional probability of each feature j. The latter two factors can be estimated from the training set.
  • In one embodiment, the summarization system combines the scores of the Luhn summarization technique, the latent semantic analysis summarization technique, the content body summarization technique, and the supervised summarization technique to generate an overall score. The scores may be combined as follows:

  • S=S luhn +S lsa +S cb +S sup  (3)
  • where S represents the combined score, Sluhn represents the Luhn score, Slsa represents the latent semantic analysis score, Scb represents the content body score, and Ssup represents the supervised score. Alternatively, the summarization system may apply a weighting factor to each summarization technique score so that not all the summarization technique scores are weighted equally. For example, if the Luhn score is thought to be a more accurate reflection of the relatedness of a sentence to the primary topic of the web page, then the weighting factor for the Luhn score might be 0.7 and the weighting factor for the other scores might be 0.1 each. If a weighting factor for a summarization technique is set to zero, then the summarization system does not use that summarization technique. One skilled in the art will appreciate that any number of the summarization techniques can have their weights set to zero. For example, if a weighting factor of 1 is used for the Luhn score and for zero for the other scores, then the “combined” score would be simply the Luhn score. In addition, the summarization system may normalize each of the summarization technique scores. The summarization system may also use a non-linear combination of the summarization technique scores. The summarization system may select the sentences with the highest combined scores to form the summary of the web page.
  • In one embodiment, the classification system uses a Naïve Bayesian classifier to classify a web page based on its summary. The Naïve Bayesian classifier uses Bayes' rule, which may be defined as follows:
  • P ( c j d i ; θ ^ ) = P ( c j θ ^ ) k = 1 n P ( w k c j ; θ ^ ) N ( w k , d i ) r = 1 C P ( c r θ ^ ) k = 1 n P ( w k c r ; θ ^ ) N ( w k , d i ) ( 4 )
  • where P(cj|di;{circumflex over (θ)}) can be calculated by counting the frequency with each category cj occurring in the training data, |C| is the number of categories, p(wi|cj) is a probability that word wi occurs in class cj, N(wk,di) is the number of occurrences of a word wk in di, and n is the number of words in the training data. (See A. McCallum & K. Nigam, A Comparison of Event Models for Naïve Bayes Text Classification, in AAAI-98 WORKSHOP ON LEARNING FOR TEXT CATEGORIZATION (1998).) Since wi may be small in the training data, a Laplace smoothing may be used to estimate its value.
  • In an alternate embodiment the classification system uses a support vector machine to classify a web page based on its summary. A support vector machine operates by finding a hyper-surface in the space of possible inputs. The hyper-surface attempts to split the positive examples from the negative examples by maximizing the distance between the nearest of the positive and negative examples to the hyper-surface. This allows for correct classification of data that is similar to but not identical to the training data. Various techniques can be used to train a support vector machine. One technique uses a sequential minimal optimization algorithm that breaks the large quadratic programming problem down into a series of small quadratic programming problems that can be solved analytically. (See Sequential Minimal Optimization, at http://research.micro-soft.com/˜jplatt/smo.html.)
  • FIG. 1 is block diagram that illustrates components of a classification system and a summarization system in one embodiment. The classification system 110 includes a classify web page component 111 and a classifier component 112. The summarization system 120 includes a summarize web page component 121, a sort sentences component 122, a calculate scores component 123, and a select top sentences component 124. The classify web page component uses the summarize web page component to generate a summary for a web page and then uses the classifier component to classify the web page based on the summary. The summarize web page component uses the calculate scores component to calculate a score for each sentence of the web page. The summarize web page component then uses the sort sentences component to sort the sentences of the web page based on their scores and the select top sentences component to select the sentences with the highest scores to form the summary of the web page. The calculate scores component uses a calculate Luhn score component 125, a calculate latent semantic analysis score component 126, a calculate content body score component 127, and a calculate supervised score component 128 to generate scores for various summarization techniques. The calculate scores component then combines the scores for the summarization techniques to provide an overall score for each sentence.
  • The computing device on which the summarization system is implemented may include a central processing unit, memory, input devices (e.g., keyboard and pointing devices), output devices (e.g., display devices), and storage devices (e.g., disk drives). The memory and storage devices are computer-readable media that may contain instructions that implement the summarization system. In addition, the data structures and message structures may be stored or transmitted via a data transmission medium, such as a signal on a communications link. Various communications links may be used, such as the Internet, a local area network, a wide area network, or a point-to-point dial-up connection.
  • The summarization system may be implemented in various operating environments. The operating environment described herein is only one example of a suitable operating environment and is not intended to suggest any limitation as to the scope of use or functionality of the summarization system. Other well-known computing systems, environments, and configurations that may be suitable for use include personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.
  • The summarization system may be described in the general context of computer-executable instructions, such as program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Typically, the functionality of the program modules may be combined or distributed as desired in various embodiments.
  • FIG. 2 is a flow diagram that illustrates the processing of the classify web page component in one embodiment. The component is passed a web page and returns its classifications. In block 201, the component invokes the summarize web page component to generate a summary for the web page. In block 202, the component classifies the web page based on the summary of the web page using a classifier such as a Naïve Bayesian classifier or a support vector machine. The component then completes.
  • FIG. 3 is a flow diagram that illustrates the processing of the summarize web page component in one embodiment. The component is passed a web page, calculates a score for each sentence of the web page, and selects the sentences with the highest scores to form the summary of the web page. In block 301, the component invokes the calculate scores component to calculate a score for each sentence. In block 302, the component sorts the sentences based on the calculated scores. In block 303, the component selects the sentences with the top scores to form the summary for the web page. The component then returns the summary.
  • FIG. 4 is a flow diagram that illustrates the processing of the calculate scores component in one embodiment. The component is passed a web page, calculates various summarization technique scores for the sentences of the web page, and calculates a combined score for each sentence based on those summarization technique scores. The component may alternatively calculate a score using only one summarization technique or various combinations of the summarization techniques. In block 401, the component invokes the calculate Luhn score component to calculate a Luhn score for each sentence of the web page. In block 402, the component invokes the calculate latent semantic analysis score component to calculate a latent semantic analysis score for each sentence of the web page. In block 403, the component invokes the calculate content body score component to calculate a content body score for each sentence of the web page. In block 404, the component invokes the calculate supervised score component to calculate a supervised score for each sentence of the web page. In block 405, the component invokes a combine scores component to calculate a combined score for each sentence of the web page. The component then returns the combined scores.
  • FIG. 5 is a flow diagram that illustrates the processing of the calculate Luhn score component in one embodiment. The component is passed a web page and calculates a Luhn score for each sentence of the passed web page. In block 501, the component selects the next sentence of the web page. In decision block 502, if all the sentences of the web page have already been selected, then the component returns the Luhn scores, else the component continues at block 503. In blocks 503-509, the component loops generating a class score for the selected sentence for each classification. In block 503, the component selects the next classification. In decision block 504, if all the classifications have already been selected, then the component continues at block 510, else the component continues at block 505. In block 505, the component identifies words of the selected sentence that are bracketed by significant words of the selected classification. In decision block 506, if bracketed words are identified, then the component continues at block 507, else the component loops to block 503 to select the next classification. In block 507, the component counts the significant words within the bracketed portion of the selected sentence. In block 508, the component counts the words within the bracketed portion of the selected sentence. In block 509, the component calculates a score for the classification as the square of the count of significant words divided by the count of words. The component then loops to block 503 to select the next classification. In block 510, the component calculates the Luhn score for the selected sentence as a sum of the class scores divided by the number of classifications for which a bracketed portion of the selected sentence was identified (i.e., the average of the class scores that were calculated). The component then loops to block 501 to select the next sentence.
  • FIG. 6 is a flow diagram that illustrates the processing of the calculate latent semantic analysis score component in one embodiment. The component is passed a web page and calculates a latent semantic analysis score for each sentence of the passed web page. In blocks 601-603, the component loops constructing a term-by-weight vector for each sentence of the web page. In block 601, the component selects the next sentence of the web page. In decision block 602, if all the sentences of the web page have already been selected, then the component continues at block 604, else the component continues at block 603. In block 603, the component constructs a term-by-weight vector for the selected sentence and then loops to block 601 to select the next sentence. The term-by-weight vectors for the sentences form a matrix that is decomposed to give a matrix of right singular vectors. In block 604, the component performs singular value decomposition of that matrix to generate the right singular vectors. In blocks 605-607, the component loops setting a score for each sentence based on the right singular vectors. In block 605, the component selects the next right singular vector. In decision block 606, if all the right singular vectors have already been selected, then the component returns the scores as the latent semantic analysis scores, else the component continues at block 607. In block 607, the component sets the score of the sentence with the highest index value of the selected right singular vector and then loops to block 605 to select the next right singular vector.
  • FIG. 7 is a flow diagram that illustrates the processing of the calculate content body score component in one embodiment. The component is passed a web page and calculates a content body score for each sentence of the passed web page. In block 701, the component identifies the basic objects of the web page. In block 702, the component identifies the composite objects of the web page. In blocks 703-705, the component loops generating a term frequency/inverted document frequency vector for each object. In block 703, the component selects the next object. In decision block 704, if all the objects have already been selected, then the component continues at block 706, else the component continues at block 705. In block 705, the component generates the term frequency/inverted document frequency vector for the selected object and then loops to block 703 to select the next object. In blocks 706-710, the component loops calculating the similarity between pairs of objects. In block 706, the component selects the next pair of objects. In decision block 707, if all the pairs of objects have already been selected, then the component continues at block 711, else the component continues at block 708. In block 708, the component calculates the similarity between the selected pair of objects. In decision block 709, if the similarity is higher than a threshold level of similarity, then the component continues at block 710, else the component loops to block 706 to select the next pair of objects. In block 710, the component adds a link between the selected pair of objects and then loops to block 706 to select the next pair of objects. In blocks 711-715, the component identifies the content body of the web page by identifying a core object and all objects with links to that core object. In block 711, the component identifies the core object as the object with the greatest number of links to it. In block 712, the component selects the next sentence of the web page. In decision block 713, if all the sentences have already been selected, then the component returns the content body scores, else the component continues at block 714. In decision block 714, if the sentence is within an object that is linked to the core object, then the sentence is within the content body and the component continues at block 715, else the component sets the score of the selected sentence to zero and loops to block 712 to select the next sentence. In block 715, the component sets the score of the selected sentence to a high score and then loops to block 712 to select the next sentence.
  • FIG. 8 is a flow diagram that illustrates the processing of the calculate supervised score component in one embodiment. The component is passed a web page and calculates a supervised score for each sentence of the web page. In block 801, the component selects the next sentence of the web page. In decision block 802, if all the sentences of the web page have already been selected, then the component returns the supervised scores, else the component continues at block 803. In block 803, the component generates the feature vector for the selected sentence. In block 804, the component calculates the score for the selected sentence using the generated feature vector and the learned summarize function. The component then loops to block 801 to select the next sentence.
  • FIG. 9 is a flow diagram that illustrates the processing of the combine scores component in one embodiment. The component generates a combined score for each sentence of a web page based on the Luhn score, the latent semantic analysis score, the content body score, and the supervised score. In block 901, the component selects the next sentence of the web page. In decision block 902, if all the sentences have already been selected, then the component returns the combined scores, else the component continues at block 903. In block 903, the component combines the scores for the selected sentence and then loops to block 901 to select the next sentence.
  • One skilled in the art will appreciate that although specific embodiments of the summarization system have been described herein for purposes of illustration, various modifications may be made without deviating from the spirit and scope of the invention. One skilled in the art will appreciate that classification refers to the process of identifying the class or category associated with a display page. The classes may be predefined. The attributes of a display page to be classified may be compared to attributes derived from other display pages that have been classified (e.g., a training set). Based on the comparison, the display page is classified into the class whose display page attributes are similar to those of the display page being classified. Clustering, in contrast, refers to the process of identifying from a set of display pages groups of display pages that are similar to each other. Accordingly, the invention is not limited except by the appended claims.

Claims (21)

1-42. (canceled)
43. A method in a computer system for identifying a core object of a web page, the method comprising:
identifying objects of the web page, an object representing an information area of the web page and having content comprising words;
for each pair of identified objects,
calculating similarity between the pair of identified objects based on similarity between words of the identified objects;
determining whether the calculated similarity between the pair of identified objects satisfied a threshold of similarity; and
when it is determined that the calculated similarity between the pair of identified objects satisfies a threshold of similarity, indicating that the pair of identified objects are similar; and
selecting as the core object of the web page the identified object that has been indicated as being similar to the most other identified objects
wherein the content of the core object represents a primary topic of the web page.
44. The method of claim 43 wherein the calculating of similarity is based on a term frequency by inverted document frequency and a cosine similarity.
45. The method of claim 44 wherein the calculating of similarity includes generating a term frequency by inverted document frequency vector for each identified object and determining a cosine similarity between the term frequency by inverted document frequency vectors of the identified objects of a pair.
46. The method of claim 43 including outputting an indication that the selected core object represents the primary topic of the web page.
47. The method of claim 46 wherein the indication includes content of the selected core object.
48. The method of claim 46 wherein the indication includes content of the selected core object and content of identified objects that are determined to be similar to the selected core object.
49. The method of claim 43 including generating a summary of the web page based on content of the selected core object.
50. The method of claim 43 including classifying the web page based on content of the selected core object.
51. A computer-readable storage medium storing computer-executable instructions for controlling a computing device to identify a core object of a document, by a method comprising:
identifying objects of the document, an object representing an information area of the document, having content comprising words, and being a basic object or a composite object, a basic object representing an information area that cannot be further divided, a composite object representing basic objects or other composite objects that combined perform a function;
for each pair of identified objects,
calculating similarity between the pair of identified objects based on similarity between words of the identified objects;
determining whether the calculated similarity between the pair of identified objects satisfied a threshold of similarity; and
when it is determined that the calculated similarity between the pair of identified objects satisfies a threshold of similarity, indicating that the pair of identified objects are similar; and
selecting as the core object of the document the identified object that has been indicated as being similar to the most other identified objects.
52. The computer-readable storage medium of claim 51 wherein the calculating of similarity is based on term frequency by inverted document frequency and cosine similarity.
53. The computer-readable storage medium of claim 52 wherein the calculating of similarity includes generating a term frequency by inverted document frequency vector for each identified object and determining a cosine similarity between the term frequency by inverted document frequency vectors of the identified objects of a pair.
54. The computer-readable storage medium of claim 51 including outputting an indication that the selected core object represents a primary topic of the document.
55. The computer-readable storage medium of claim 54 wherein the indication includes content of the selected core object.
56. The computer-readable storage medium of claim 54 wherein the indication includes content of the selected core object and content of identified objects that are determined to be similar to the selected core object.
57. The computer-readable storage medium of claim 51 including generating a summary of the document based on content of the selected core object.
58. The computer-readable storage medium of claim 51 including classifying the document based on content of the selected core object.
59. A computing device with a processor and memory for identifying a core object of a web page, comprising:
a component that identifies objects of the web page, an object representing an information area of the web page, having content comprising words, and being a basic object or a composite object, a basic object representing an information area of the web page that cannot be further divided, a composite object representing basic objects or other composite objects that combined perform a function;
a component that, for each pair of identified objects,
calculates similarity between the pair of identified objects based on similarity between words of the identified objects determined using based on term frequency by inverse document frequency and cosine similarity;
determines whether the calculated similarity between the pair of identified objects satisfied a threshold of similarity; and
when it is determined that the calculated similarity between the pair of identified objects satisfies a threshold of similarity, establishes a link between the identified objects indicating that identified objects of the pair are similar; and
a component that selects as the core object of the web page the identified object that has the most links to other identified objects.
60. The computing device of claim 59 including a component that outputs content of the selected core object as a primary topic of the web page.
61. The computing device of claim 59 including a component that outputs content of the selected core object and content of identified objects that are linked to the selected core object as a primary topic of the web page.
62. The computing device of claim 59 including a component that generates a summary of the web page based on content of the selected core object and content of the identified objects that are linked to the selected core object.
US12/145,222 2004-04-30 2008-06-24 Method and system for classifying display pages using summaries Abandoned US20090119284A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/145,222 US20090119284A1 (en) 2004-04-30 2008-06-24 Method and system for classifying display pages using summaries

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/836,319 US7392474B2 (en) 2004-04-30 2004-04-30 Method and system for classifying display pages using summaries
US12/145,222 US20090119284A1 (en) 2004-04-30 2008-06-24 Method and system for classifying display pages using summaries

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US10/836,319 Continuation US7392474B2 (en) 2004-04-30 2004-04-30 Method and system for classifying display pages using summaries

Publications (1)

Publication Number Publication Date
US20090119284A1 true US20090119284A1 (en) 2009-05-07

Family

ID=34939612

Family Applications (2)

Application Number Title Priority Date Filing Date
US10/836,319 Expired - Fee Related US7392474B2 (en) 2004-04-30 2004-04-30 Method and system for classifying display pages using summaries
US12/145,222 Abandoned US20090119284A1 (en) 2004-04-30 2008-06-24 Method and system for classifying display pages using summaries

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US10/836,319 Expired - Fee Related US7392474B2 (en) 2004-04-30 2004-04-30 Method and system for classifying display pages using summaries

Country Status (12)

Country Link
US (2) US7392474B2 (en)
EP (1) EP1591924B1 (en)
JP (1) JP2005322245A (en)
KR (1) KR101203345B1 (en)
CN (1) CN1758245B (en)
AT (1) ATE470192T1 (en)
AU (1) AU2005201766A1 (en)
BR (1) BRPI0502155A (en)
CA (1) CA2505957C (en)
DE (1) DE602005021581D1 (en)
MX (1) MXPA05004682A (en)
RU (1) RU2377645C2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090265315A1 (en) * 2008-04-18 2009-10-22 Yahoo! Inc. System and method for classifying tags of content using a hyperlinked corpus of classified web pages
US20110099003A1 (en) * 2009-10-28 2011-04-28 Masaaki Isozu Information processing apparatus, information processing method, and program
WO2013066497A1 (en) * 2011-10-14 2013-05-10 Summly Ltd. Method and apparatus for automatically summarizing the contents of electronic documents
WO2013070645A1 (en) * 2011-11-10 2013-05-16 Evernote Corporation Extracting principal content from web pages
US20130304741A1 (en) * 2012-05-10 2013-11-14 Yahoo! Inc. Method and system for automatic assignment of identifiers to a graph of entities
CN104933055A (en) * 2014-03-18 2015-09-23 腾讯科技(深圳)有限公司 Webpage identification method and webpage identification device
US10579698B2 (en) 2017-08-31 2020-03-03 International Business Machines Corporation Optimizing web pages by minimizing the amount of redundant information

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8868670B2 (en) * 2004-04-27 2014-10-21 Avaya Inc. Method and apparatus for summarizing one or more text messages using indicative summaries
US7392474B2 (en) * 2004-04-30 2008-06-24 Microsoft Corporation Method and system for classifying display pages using summaries
US7707265B2 (en) * 2004-05-15 2010-04-27 International Business Machines Corporation System, method, and service for interactively presenting a summary of a web site
US7475067B2 (en) * 2004-07-09 2009-01-06 Aol Llc Web page performance scoring
US7747618B2 (en) 2005-09-08 2010-06-29 Microsoft Corporation Augmenting user, query, and document triplets using singular value decomposition
US7739254B1 (en) * 2005-09-30 2010-06-15 Google Inc. Labeling events in historic news
KR100775852B1 (en) 2006-01-18 2007-11-13 포스데이타 주식회사 System and method for searching resource of application program
US20080077576A1 (en) * 2006-09-22 2008-03-27 Cuneyt Ozveren Peer-To-Peer Collaboration
US7672912B2 (en) * 2006-10-26 2010-03-02 Microsoft Corporation Classifying knowledge aging in emails using Naïve Bayes Classifier
US20080103849A1 (en) * 2006-10-31 2008-05-01 Forman George H Calculating an aggregate of attribute values associated with plural cases
EP2080127A2 (en) * 2006-11-01 2009-07-22 Bloxx Limited Methods and systems for web site categorisation training, categorisation and access control
US7617182B2 (en) * 2007-01-08 2009-11-10 Microsoft Corporation Document clustering based on entity association rules
US8161369B2 (en) 2007-03-16 2012-04-17 Branchfire, Llc System and method of providing a two-part graphic design and interactive document application
CN101296155B (en) * 2007-04-23 2011-02-16 华为技术有限公司 Contents classification method and system
CN101452470B (en) * 2007-10-18 2012-06-06 广州索答信息科技有限公司 Summary-style network search engine system and search method and uses
CN101184259B (en) * 2007-11-01 2010-06-23 浙江大学 Keyword automatically learning and updating method in rubbish short message
US9292601B2 (en) * 2008-01-09 2016-03-22 International Business Machines Corporation Determining a purpose of a document
CN101505295B (en) * 2008-02-04 2013-01-30 华为技术有限公司 Method and equipment for correlating content with type
US20110047006A1 (en) * 2009-08-21 2011-02-24 Attenberg Joshua M Systems, methods, and media for rating websites for safe advertising
JP4965623B2 (en) * 2009-09-30 2012-07-04 インターナショナル・ビジネス・マシーンズ・コーポレーション Method, system, and program for supporting input of execution parameters of predetermined software to input field
EP2482247A4 (en) * 2009-10-30 2014-11-19 Rakuten Inc Characteristic content determination program, characteristic content determination device, characteristic content determination method, recording medium, content generation device, and related content insertion device
US8732017B2 (en) * 2010-06-01 2014-05-20 Integral Ad Science, Inc. Methods, systems, and media for applying scores and ratings to web pages, web sites, and content for safe and effective online advertising
US9436764B2 (en) * 2010-06-29 2016-09-06 Microsoft Technology Licensing, Llc Navigation to popular search results
US8635061B2 (en) 2010-10-14 2014-01-21 Microsoft Corporation Language identification in multilingual text
JP5492047B2 (en) * 2010-10-21 2014-05-14 日本電信電話株式会社 Purchasing behavior analysis apparatus, purchasing behavior analysis method, purchasing behavior analysis program, purchasing behavior analysis system, and control method
US10534931B2 (en) 2011-03-17 2020-01-14 Attachmate Corporation Systems, devices and methods for automatic detection and masking of private data
CN102737017B (en) * 2011-03-31 2015-03-11 北京百度网讯科技有限公司 Method and apparatus for extracting page theme
US20130066814A1 (en) * 2011-09-12 2013-03-14 Volker Bosch System and Method for Automated Classification of Web pages and Domains
US9613135B2 (en) 2011-09-23 2017-04-04 Aol Advertising Inc. Systems and methods for contextual analysis and segmentation of information objects
US8793252B2 (en) * 2011-09-23 2014-07-29 Aol Advertising Inc. Systems and methods for contextual analysis and segmentation using dynamically-derived topics
RU2491622C1 (en) * 2012-01-25 2013-08-27 Общество С Ограниченной Ответственностью "Центр Инноваций Натальи Касперской" Method of classifying documents by categories
CN103324622A (en) * 2012-03-21 2013-09-25 北京百度网讯科技有限公司 Method and device for automatic generating of front page abstract
US10387911B1 (en) 2012-06-01 2019-08-20 Integral Ad Science, Inc. Systems, methods, and media for detecting suspicious activity
JP5700007B2 (en) * 2012-09-13 2015-04-15 キヤノンマーケティングジャパン株式会社 Information processing apparatus, method, and program
US20150046562A1 (en) * 2013-08-07 2015-02-12 Convergent Development Limited Web browser orchestration
US10021102B2 (en) 2014-10-31 2018-07-10 Aruba Networks, Inc. Leak-proof classification for an application session
CN105786853A (en) * 2014-12-22 2016-07-20 北京奇虎科技有限公司 Display method and system for smart abstract of forum post
WO2016171709A1 (en) * 2015-04-24 2016-10-27 Hewlett-Packard Development Company, L.P. Text restructuring
EP3230892A4 (en) * 2015-04-29 2018-05-23 Hewlett-Packard Development Company, L.P. Topic identification based on functional summarization
RU2638015C2 (en) 2015-06-30 2017-12-08 Общество С Ограниченной Ответственностью "Яндекс" Method for identification of target object on web page
US10074042B2 (en) 2015-10-06 2018-09-11 Adobe Systems Incorporated Font recognition using text localization
US9875429B2 (en) 2015-10-06 2018-01-23 Adobe Systems Incorporated Font attributes for font recognition and similarity
US10042880B1 (en) * 2016-01-06 2018-08-07 Amazon Technologies, Inc. Automated identification of start-of-reading location for ebooks
RU2642413C2 (en) * 2016-02-09 2018-01-24 Общество С Ограниченной Ответственностью "Яндекс" Method (versions) and server for text processing
US10007868B2 (en) 2016-09-19 2018-06-26 Adobe Systems Incorporated Font replacement based on visual similarity
RU2635213C1 (en) * 2016-09-26 2017-11-09 Самсунг Электроникс Ко., Лтд. Text summarizing method and device and machine-readable media used for its implementation
US10699062B2 (en) * 2017-08-01 2020-06-30 Samsung Electronics Co., Ltd. Apparatus and method for providing summarized information using an artificial intelligence model
US10248628B2 (en) * 2017-08-15 2019-04-02 Hybris Ag Statistical approach for testing multiple versions of websites
EP3966999A4 (en) * 2018-10-10 2023-07-05 Scaramanga Technologies Pvt. Ltd. Method, system and apparatus for providing a contextual keyword collective for communication events in a multi-communication platform environment
US11397776B2 (en) 2019-01-31 2022-07-26 At&T Intellectual Property I, L.P. Systems and methods for automated information retrieval
US10950017B2 (en) 2019-07-08 2021-03-16 Adobe Inc. Glyph weight modification
US11295181B2 (en) 2019-10-17 2022-04-05 Adobe Inc. Preserving document design using font synthesis
CN111797945B (en) * 2020-08-21 2020-12-15 成都数联铭品科技有限公司 Text classification method
US20230222149A1 (en) * 2022-01-11 2023-07-13 Intuit Inc. Embedding performance optimization through use of a summary model

Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5317507A (en) * 1990-11-07 1994-05-31 Gallant Stephen I Method for document retrieval and for word sense disambiguation using neural networks
US5864855A (en) * 1996-02-26 1999-01-26 The United States Of America As Represented By The Secretary Of The Army Parallel document clustering process
US5918240A (en) * 1995-06-28 1999-06-29 Xerox Corporation Automatic method of extracting summarization using feature probabilities
US6359633B1 (en) * 1999-01-15 2002-03-19 Yahoo! Inc. Apparatus and method for abstracting markup language documents
US20020062302A1 (en) * 2000-08-09 2002-05-23 Oosta Gary Martin Methods for document indexing and analysis
US20020087326A1 (en) * 2000-12-29 2002-07-04 Lee Victor Wai Leung Computer-implemented web page summarization method and system
US20020138528A1 (en) * 2000-12-12 2002-09-26 Yihong Gong Text summarization using relevance measures and latent semantic analysis
US20020138529A1 (en) * 1999-05-05 2002-09-26 Bokyung Yang-Stephens Document-classification system, method and software
US20020169770A1 (en) * 2001-04-27 2002-11-14 Kim Brian Seong-Gon Apparatus and method that categorize a collection of documents into a hierarchy of categories that are defined by the collection of documents
US20030033274A1 (en) * 2001-08-13 2003-02-13 International Business Machines Corporation Hub for strategic intelligence
US6606644B1 (en) * 2000-02-24 2003-08-12 International Business Machines Corporation System and technique for dynamic information gathering and targeted advertising in a web based model using a live information selection and analysis tool
US20030221163A1 (en) * 2002-02-22 2003-11-27 Nec Laboratories America, Inc. Using web structure for classifying and describing web pages
US20040153309A1 (en) * 2003-01-30 2004-08-05 Xiaofan Lin System and method for combining text summarizations
US6775677B1 (en) * 2000-03-02 2004-08-10 International Business Machines Corporation System, method, and program product for identifying and describing topics in a collection of electronic documents
US20040205457A1 (en) * 2001-10-31 2004-10-14 International Business Machines Corporation Automatically summarising topics in a collection of electronic documents
US6910037B2 (en) * 2002-03-07 2005-06-21 Koninklijke Philips Electronics N.V. Method and apparatus for providing search results in response to an information search request
US20050246410A1 (en) * 2004-04-30 2005-11-03 Microsoft Corporation Method and system for classifying display pages using summaries
US7065707B2 (en) * 2002-06-24 2006-06-20 Microsoft Corporation Segmenting and indexing web pages using function-based object models
US7120861B1 (en) * 1999-11-18 2006-10-10 Sony Corporation Document processing system
US7130837B2 (en) * 2002-03-22 2006-10-31 Xerox Corporation Systems and methods for determining the topic structure of a portion of text
US7137065B1 (en) * 2000-02-24 2006-11-14 International Business Machines Corporation System and method for classifying electronically posted documents

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02254566A (en) * 1989-03-29 1990-10-15 Nippon Telegr & Teleph Corp <Ntt> Automatic excerpt generating device
JP2944346B2 (en) * 1993-01-20 1999-09-06 シャープ株式会社 Document summarization device
JPH09319768A (en) * 1996-05-29 1997-12-12 Oki Electric Ind Co Ltd Main point extracting method

Patent Citations (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5317507A (en) * 1990-11-07 1994-05-31 Gallant Stephen I Method for document retrieval and for word sense disambiguation using neural networks
US5918240A (en) * 1995-06-28 1999-06-29 Xerox Corporation Automatic method of extracting summarization using feature probabilities
US5864855A (en) * 1996-02-26 1999-01-26 The United States Of America As Represented By The Secretary Of The Army Parallel document clustering process
US6359633B1 (en) * 1999-01-15 2002-03-19 Yahoo! Inc. Apparatus and method for abstracting markup language documents
US20020138529A1 (en) * 1999-05-05 2002-09-26 Bokyung Yang-Stephens Document-classification system, method and software
US7120861B1 (en) * 1999-11-18 2006-10-10 Sony Corporation Document processing system
US7137065B1 (en) * 2000-02-24 2006-11-14 International Business Machines Corporation System and method for classifying electronically posted documents
US6606644B1 (en) * 2000-02-24 2003-08-12 International Business Machines Corporation System and technique for dynamic information gathering and targeted advertising in a web based model using a live information selection and analysis tool
US6775677B1 (en) * 2000-03-02 2004-08-10 International Business Machines Corporation System, method, and program product for identifying and describing topics in a collection of electronic documents
US20020062302A1 (en) * 2000-08-09 2002-05-23 Oosta Gary Martin Methods for document indexing and analysis
US20020138528A1 (en) * 2000-12-12 2002-09-26 Yihong Gong Text summarization using relevance measures and latent semantic analysis
US7607083B2 (en) * 2000-12-12 2009-10-20 Nec Corporation Test summarization using relevance measures and latent semantic analysis
US20020087326A1 (en) * 2000-12-29 2002-07-04 Lee Victor Wai Leung Computer-implemented web page summarization method and system
US20020169770A1 (en) * 2001-04-27 2002-11-14 Kim Brian Seong-Gon Apparatus and method that categorize a collection of documents into a hierarchy of categories that are defined by the collection of documents
US6609124B2 (en) * 2001-08-13 2003-08-19 International Business Machines Corporation Hub for strategic intelligence
US20030033274A1 (en) * 2001-08-13 2003-02-13 International Business Machines Corporation Hub for strategic intelligence
US20040205457A1 (en) * 2001-10-31 2004-10-14 International Business Machines Corporation Automatically summarising topics in a collection of electronic documents
US20030221163A1 (en) * 2002-02-22 2003-11-27 Nec Laboratories America, Inc. Using web structure for classifying and describing web pages
US6910037B2 (en) * 2002-03-07 2005-06-21 Koninklijke Philips Electronics N.V. Method and apparatus for providing search results in response to an information search request
US7130837B2 (en) * 2002-03-22 2006-10-31 Xerox Corporation Systems and methods for determining the topic structure of a portion of text
US7065707B2 (en) * 2002-06-24 2006-06-20 Microsoft Corporation Segmenting and indexing web pages using function-based object models
US20040153309A1 (en) * 2003-01-30 2004-08-05 Xiaofan Lin System and method for combining text summarizations
US20050246410A1 (en) * 2004-04-30 2005-11-03 Microsoft Corporation Method and system for classifying display pages using summaries

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
G. Salton et al.,"Automatic Analysis, Theme generation, and Summarization of Machine-readable Texts," in Science, Vol. 264, 3 June 1994, pages 1421-1426. *
G. Salton et al.,"Automatic Structuring of Text Files," in Electronic Publishing, Vol. 5(1), March 1992, pages 1-17. *
G. Salton et al.,"Automatic Text Structuring and Summarization," in Information Processing & Management, Vol. 33, No. 2, © 1997, pages 193-207. *
G. Salton et al.,"On the Automatic Generation of Content Links in Hypertext," TR 89-993, April 1989, pages 1-14. *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090265315A1 (en) * 2008-04-18 2009-10-22 Yahoo! Inc. System and method for classifying tags of content using a hyperlinked corpus of classified web pages
US8046361B2 (en) * 2008-04-18 2011-10-25 Yahoo! Inc. System and method for classifying tags of content using a hyperlinked corpus of classified web pages
US20110099003A1 (en) * 2009-10-28 2011-04-28 Masaaki Isozu Information processing apparatus, information processing method, and program
US9122680B2 (en) * 2009-10-28 2015-09-01 Sony Corporation Information processing apparatus, information processing method, and program
US20150095770A1 (en) * 2011-10-14 2015-04-02 Yahoo! Inc. Method and apparatus for automatically summarizing the contents of electronic documents
WO2013066497A1 (en) * 2011-10-14 2013-05-10 Summly Ltd. Method and apparatus for automatically summarizing the contents of electronic documents
US9916309B2 (en) * 2011-10-14 2018-03-13 Yahoo Holdings, Inc. Method and apparatus for automatically summarizing the contents of electronic documents
US10599721B2 (en) * 2011-10-14 2020-03-24 Oath Inc. Method and apparatus for automatically summarizing the contents of electronic documents
WO2013070645A1 (en) * 2011-11-10 2013-05-16 Evernote Corporation Extracting principal content from web pages
US9152730B2 (en) 2011-11-10 2015-10-06 Evernote Corporation Extracting principal content from web pages
US20130304741A1 (en) * 2012-05-10 2013-11-14 Yahoo! Inc. Method and system for automatic assignment of identifiers to a graph of entities
US9223861B2 (en) * 2012-05-10 2015-12-29 Yahoo! Inc. Method and system for automatic assignment of identifiers to a graph of entities
CN104933055A (en) * 2014-03-18 2015-09-23 腾讯科技(深圳)有限公司 Webpage identification method and webpage identification device
US10579698B2 (en) 2017-08-31 2020-03-03 International Business Machines Corporation Optimizing web pages by minimizing the amount of redundant information
US11182454B2 (en) 2017-08-31 2021-11-23 International Business Machines Corporation Optimizing web pages by minimizing the amount of redundant information

Also Published As

Publication number Publication date
CN1758245B (en) 2010-09-08
US7392474B2 (en) 2008-06-24
AU2005201766A1 (en) 2005-11-17
CN1758245A (en) 2006-04-12
KR101203345B1 (en) 2012-11-20
MXPA05004682A (en) 2005-11-17
RU2005113190A (en) 2006-11-10
KR20060047636A (en) 2006-05-18
EP1591924B1 (en) 2010-06-02
ATE470192T1 (en) 2010-06-15
JP2005322245A (en) 2005-11-17
US20050246410A1 (en) 2005-11-03
CA2505957C (en) 2014-10-21
BRPI0502155A (en) 2006-01-10
RU2377645C2 (en) 2009-12-27
EP1591924A1 (en) 2005-11-02
CA2505957A1 (en) 2005-10-30
DE602005021581D1 (en) 2010-07-15

Similar Documents

Publication Publication Date Title
US7392474B2 (en) Method and system for classifying display pages using summaries
US8645370B2 (en) Scoring relevance of a document based on image text
US7809723B2 (en) Distributed hierarchical text classification framework
US7363279B2 (en) Method and system for calculating importance of a block within a display page
US8019763B2 (en) Propagating relevance from labeled documents to unlabeled documents
US9256667B2 (en) Method and system for information discovery and text analysis
US7457801B2 (en) Augmenting a training set for document categorization
US7895148B2 (en) Classifying functions of web blocks based on linguistic features
US8965865B2 (en) Method and system for adaptive discovery of content on a network
US20070203908A1 (en) Training a ranking function using propagated document relevance
US9367633B2 (en) Method or system for ranking related news predictions
Timonen Term weighting in short documents for document categorization, keyword extraction and query expansion
Gliozzo et al. Improving text categorization bootstrapping via unsupervised learning
Qumsiyeh et al. Web Search Using Summarization on Clustered Web Documents Retrieved by User Queries
Dmitriev et al. Machine Learning for Web Related Problems
Fung et al. Intelligent Informatics
Trajkovski Computer Generated News Site–TIME. mk
Alvarez et al. A machine learning approach for one-stop learning
Cui Name of Author: Hang Cui
Xu et al. A unified model of literal mining and link analysis for ranking web resources
Wenyin et al. User Feedback for Improving Question Categorization in Web-Based Question Answering Systems
Denoyer et al. Machine Learning for Semi-Structured Multimedia Documents: Application to pornographic filtering and thematic categorization
Ammari Transforming user data into user value by novel mining techniques for extraction of web content, structure and usage patterns. The Development and Evaluation of New Web Mining Methods that enhance Information Retrieval and improve the Understanding of User¿ s Web Behavior in Websites and Social Blogs.
Joorabchi et al. Automatic subject classification of textual documents using limited or no training data
Bennett et al. Tutorial Goals

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: EXPRESSLY ABANDONED -- DURING EXAMINATION

AS Assignment

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034766/0001

Effective date: 20141014