IP Library › Granted Patent US 7,383,254
Granted Patent B2
US 7,383,254 · App. 11/106,383 · Granted Jun 3, 2008

Method and system for identifying object information

Assignee: Microsoft Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,383,254
App. No.
11/106,383
Granted
Jun 3, 2008
Kind
B2
Abstract

A method and system for identifying object information of an information page is provided. An information extraction system identifies the object blocks of an information page. The extraction system classifies the object blocks into object types. Each object type has associated attributes that define a schema for the information of the object type. The extraction system identifies object elements within an object block that may represent an attribute value for the object. After the object elements are identified, the extraction system attempts to identify which object elements correspond to which attributes of the object type in a process referred to as “labeling.” The extraction system uses an algorithm to determine the confidence that a certain object element corresponds to a certain attribute. The extraction system then selects the set of labels with the highest confidence as being the labels for the object elements.

Claims (36)

1. A method in a computer system for identifying an object of an information page, the method comprising:

identifying an object block of the information page representing the object;

identifying object elements of the identified object block;

classifying the object block as an object type, the object type having attributes;

labeling the identified object elements as attributes of the object type;

providing an object data store having objects of the object type;

determining whether the object matches an object of the object data store based on the labeling of the object elements;

when the determining indicates a match, updating the matching object of the object data store based on the labeling of the object elements; and

when the determining does not indicate a match, adding an object to the object data store based on the labeling of the object elements.

2. The method of claim 1 wherein the object elements are identified based on visual aspects of the information page.

3. The method of claim 1 including providing an object data store having objects of the object type and wherein the labeling includes comparing the object elements to attribute values of the objects of the object data store.

4. The method of claim 3 wherein the comparing includes generating constraints based on likelihood that an object element should be labeled as an attribute.

5. The method of claim 1 wherein the labeling is based on a conditional random fields model.

6. The method of claim 5 wherein the conditional random fields model has feature functions that indicate confidence that an object element should be labeled with a certain attribute.

7. The method of claim 6 wherein a feature function is enhanced to factor in comparison of an object element to attribute values of an object of an object data store.

8. The method of claim 6 including learning weights for the feature functions.

9. The method of claim 5 wherein the labeling applies a Viterbi algorithm.

10. The method of claim 9 wherein the Viterbi algorithm is modified to factor in confidence that an object element should be labeled with a certain attribute.

11. A computer-readable medium containing computer-executable instructions for controlling a computer system to identify an object of an object block, by a method comprising:

identifying object elements of the object block, the object block having an object type with attributes;

labeling the identified object elements as attributes of the object type, the labeling including comparing the identified object elements to attribute values of objects of an object store;

determining whether the object matches an object of the object data store based on the labeling of the object elements;

when the determining indicates a match, updating the matching object of the object data store based on the labeling of the object elements; and

when the determining does not indicate a match, adding an object to the object data store based on the labeling of the object elements.

12. The computer-readable medium of claim 11 wherein the object elements are identified based on visual aspects of the object block.

13. The computer-readable medium of claim 11 wherein the labeling includes generating constraints based on confidence that an object element should be labeled as an attribute.

14. The computer-readable medium of claim 11 wherein the labeling is based on a conditional random fields model with feature functions that indicate confidence that an object element should be labeled with a certain attribute, wherein a feature function factors in a comparison of an object element to attribute values of an object of an object data store.

15. The computer-readable medium of claim 14 wherein the labeling applies a Viterbi algorithm that factors in confidence that an object element should be labeled with a certain attribute.

16. A computer-readable medium containing computer-executable instructions for controlling a computer system to label object elements of an object block, by a method comprising:

providing an object data store of objects having attributes;

determining labels for the object elements by comparing the object elements to attribute values of objects of the object store and generating constraints based on confidence that an object element should be labeled as an attribute;

determining whether the object of the object block matches an object of the object data store based on the determined labels of the object elements;

when the determining indicates a match, updating the matching object of the object data store based on the determined labels of the object elements; and

when the determining does not indicate a match, adding an object to the object data store based on the determined labels of the object elements.

17. The computer-readable medium of claim 16 wherein the labeling is based on a conditional random fields model with feature functions that indicate confidence that an object element should be labeled with a certain attribute, wherein a feature function factors in a comparison of an object element to attribute values of an object of the object data store.

18. The computer-readable medium of claim 17 wherein the labeling applies a Viterbi algorithm that factors in confidence that an object element should be labeled with a certain attribute.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034543/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2005
From: CAI, ZHENGHONG R.; CHEN, XIAOWU; FARDIS, MARIA; JABRI, SALMAN Y.; JIN, HAOLUN; KIM, CHOUNG U.; METOBO, SAMUEL E.; MISH, MICHAEL R.; PASTOR, RICHARD M.
To: GILEAD SCIENCE, INC.
Reel/Frame 017044/0050 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 18, 2005
From: WEN, JI-RONG; MA, WEI-YING; NIE, ZAIQING
To: MICROSOFT CORPORATION
Reel/Frame 016276/0370 →
Continuity (1)
Related Publication 20060235875A1 · Oct 19, 2006