IP Library Granted Patent US 8,560,567
Granted Patent B2
US 8,560,567 · App. 13/170,879 · Granted Oct 15, 2013

Automatic question and answer detection

Inventors: Saliha Azzam (Redmond, WA); Nicholas Caldwell (Bellevue, WA); Diego Perez Del Carpio (Redmond, WA)
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 8,560,567
App. No.
13/170,879
Granted
Oct 15, 2013
Kind
B2
Abstract

Automatic detection of question and answer pairs contained in electronic communications channels is provided. Communications channels for a given enterprise, for example, emails, text message strings, and discussion forum strings are analyzed according to one or more features or patterns that are indicative of questions for detecting whether one or more questions are posed in a given communication. Next, answers that are relevant to identified questions are similarly identified by analyzing one or more communications for features and patterns that are indicative of answers to a question, and more particularly, to an identified question. Once an identified question is linked to an identified answer, the linked question and answer pair is stored in a publicly available repository for future reference by users having access to the repository.

Claims (68)

1. A method of automatically detecting and designating question and answer pairs from electronic communications, comprising:

receiving an electronic communication;

initiating a question detection application for,

analyzing one or more features extracted from the electronic communication associated with one or more text components separated from the electronic communication to determine whether the one or more extracted features indicate that the one or more text components are associated with a question based on a communication author, a communication recipient, a time duration between communications, and existence of a punctuation indicative of a question;

querying one or more data sources with the extracted one or more features to obtain information that may be used for determining whether the one or more text components is associated with a question;

if the one or more text components is associated with a question, designating a portion of the received electronic communication as a question; and

querying a question-and-answer repository to identify whether the one or more text components is a previous question in a question and answer pair;

if the one or more text components is a previous question, retrieving the answer designated in the question and answer pair; and

if the one or more text components is not a previous question, initiating an answer detection application for,

extracting one or more additional features associated with one or more additional text components extracted from the received electronic communication for use in determining whether the one or more additional text components may be identified as an answer;

querying one or more data sources with the extracted one or more additional features to obtain information that may be used for determining whether the one or more additional text components is associated with an answer;

if the one or more additional text components is associated with an answer, designating a portion of the received electronic communication as an answer;

if the designated answer is designated as an answer to the designated question, initiating a confirmation interface to present the designated question and the designated answer to a user for verification that the designated answer is an answer to the designated question; and

if the user verifies that the designated answer is an answer to the designated question, storing the designated question and the designated answer as a question and answer pair in the question-and-answer repository for subsequent use.

2. The method of claim 1 , prior to analyzing the one or more extracted features associated with the one or more text components,

separating the received electronic communication into one or more text components for use of the one or more text components for question and answer detection;

wherein separating the received communication into one or more text components for use of the one or more text components for question and answer detection includes passing the received first communication to a text processing module for separating the received first communication into one or more text components.

3. The method of claim 2 wherein separating the received first communication into one or more text components includes separating the received first communication into one or more text sentences.

4. The method of claim 2 wherein separating the received first communication into one or more text components includes separating the received first communication into one or more text tokens.

5. The method of claim 4 , prior to analyzing the one or more extracted features associated with the one or more text components, passing the one or more text components to a question detection application for determining whether the one or more text components is associated with a question and extracting one or more features associated with the one or more text components, the one or more features for use in determining whether the one or more text components may be identified as a question.

6. The method of claim 1 , further comprising formatting the first electronic communication to allow the first electronic communication to be separated into one or more text components for use of the one or more text components for question and answer detection.

7. The method of claim 6 , prior to formatting the first electronic communication to allow the first electronic communication to be separated into one or more text components, passing the received first electronic communication to a conversation thread analyzer for formatting the first electronic communication to allow the first electronic communication to be separated into text components.

8. The method of claim 1 , further comprising, if the one or more text components is designated as a question, and if the one or more additional text components is designated as an answer, applying a ranking to each of the designated question and the designated answer for determining whether the designated question and the designated answer should be designated and stored as a question and answer pair.

9. The method of claim 1 wherein receiving the first electronic communication includes receiving a text-based communication and receiving metadata associated with the text-based communication.

10. The method of claim 9 , wherein receiving the first electronic communication includes receiving a first electronic mail communication.

11. The method of claim 9 , wherein receiving the first electronic communication includes receiving a first electronic text message.

12. The method of claim 9 , wherein receiving a first communication includes receiving a first text-based communication from an electronic discussion list.

13. A computer-readable medium, excluding communications media, containing computer readable instructions which when executed by a computer perform a method of automatically detecting and designating question and answer pairs from electronic communications, comprising:

receiving an electronic communication;

separating the received electronic communication into one or more text components for use of the one or more text components for question and answer detection;

initiating a question detection application for,

extracting one or more features associated with the one or more text components, the one or more features for use in determining whether the one or more text components may be identified as a question;

analyzing the one or more extracted features associated with the one or more text components to determine whether the one or more extracted features indicate that the one or more text components are associated with a question based on a communication author, a communication recipient, a time duration between communications, and existence of a punctuation indicative of a question;

querying one or more data sources with the extracted one or more features to obtain information that may be used for determining whether the one or more text components is associated with a question;

if the one or more text components is associated with a question, designating a portion of the received electronic communication as a question; and

querying a question-and-answer repository to identify whether the one or more text components is a previous question in a question and answer pair;

if the one or more text components is a previous question, retrieving the answer designated in the question and answer pair; and

if the one or more text components is not a previous question, initiating an answer detection application for,

extracting one or more additional features associated with one or more additional text components extracted from the received electronic communication for use in determining whether the one or more additional text components may be identified as an answer;

if the one or more additional text components is associated with an answer, designating a portion of the received electronic communication as an answer;

presenting the designated question and the designated answer to a user for verification that the designated answer is an answer to the designated question;

if the designated answer is designated as an answer to the designated question, initiating a confirmation interface to present the designated question and the designated answer to a user for verification that the designated answer is an answer to the designated question; and

if the user verifies that the designated answer is an answer to the designated question, storing the designated question and the designated answer as a question and answer pair in the question-and-answer repository for subsequent use.

14. The computer readable medium of claim 13 , further comprising querying one or more data sources with the extracted one or more additional features to obtain information that may be used for determining whether the one or more additional text components is associated with an answer.

15. The computer readable medium of claim 13 , wherein separating the received communication into one or more text components for use of the one or more text components for question and answer detection includes passing the received first communication to a text processing module for separating the received first communication into one or more text components.

16. The computer readable medium of claim 15 , wherein separating the received first communication into one or more text components includes separating the received first communication into one or more text tokens.

17. The computer readable medium of claim 13 , prior to extracting one or more features associated with the one or more text components, passing the one or more text components to a question detection application for determining whether the one or more text components is associated with a question.

18. A system for automatically detecting and designating question and answer pairs from electronic communications, comprising:

a processing unit; and

a memory including computer readable instructions that, when executed by the processor, cause the system to provide:

an electronic communication system operative to provide an electronic communication;

a text processing module operative

to separate the received electronic communication into one or more text components for use of the one or more text components for question and answer detection;

a question detector module operative

to extract one or more features associated with the one or more text components, the one or more features for use in determining whether the one or more text components may be identified as a question;

to analyze the one or more extracted features associated with the one or more text components to determine whether the one or more extracted features indicate that the one or more text components are associated with a question based on a communication author, a communication recipient, a time duration between communications, and existence of a punctuation indicative of a question;

to query one or more data sources with the extracted one or more features to obtain information that may be used for determining whether the one or more text components is associated with a question;

to compare the extracted one or more features with features contained in previously questions for previous question and answer pairs in the question-and-answer repository;

to designate a portion of the received electronic communication as a question if the one or more text components is associated with a question;

an answer detector module operative

to extract one or more additional features associated with one or more additional text components extracted from the received electronic communication for use in determining whether the one or more additional text components may be identified as an answer;

to query one or more data sources with the extracted one or more additional features to obtain information that may be used for determining whether the one or more additional text components is associated with an answer;

to search the question-and-answer repository for a previous answer designated in a previous question and answer pair;

to designate a portion of the received electronic communication as an answer if the one or more additional text components is associated with an answer;

to initiate a confirmation interface to present the designated question and the designated answer to a user for verification that the designated answer is an answer to the designated question if the designated answer is designated as an answer to the designated question; and

to store the designated question and the designated answer as a question and answer pair in the question-and-answer repository for subsequent use if the user verifies that the designated answer is an answer to the designated question.

19. The system of claim 18 , further comprising, if the one or more text components is designated as a question, and if the one or more additional text components is designated as an answer, to apply a ranking to each of the designated question and the designated answer for determining whether the designated question and the designated answer should be designated and stored as a question and answer pair.

20. The method of claim 18 , wherein to separate the received electronic communication into one or more text components for use of the one or more text components for question and answer detection includes to pass the received first communication to a text processing module for separating the received first communication into one or more text components.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034544/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2011
From: AZZAM, SALIHA; CALDWELL, NICHOLAS; PEREZ DEL CARPIO, DIEGO
To: MICROSOFT CORPORATION
Reel/Frame 026515/0490 →
Continuity (1)
Related Publication 20130007037A1 · Jan 3, 2013