# US 12,008,003 B2 · Method for identifying questions with same semantics and electronic device

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,008,003 B2
- Document ID: US12008003B2
- Status: Granted
- Kind: B2
- Application number: 17/764,002
- Filed: 2020-09-10
- Published: 2022-12-08
- Granted: 2024-06-11
- Earliest claimed: 2019-09-27
- Assignees: Huawei Technologies Co., Ltd.
- Applicants: Huawei Technologies Co., Ltd.
- Inventors: Zhengyuan Peng; Chuanfei Xu; Chao Yu
- Web page: https://patentgrep.com/patent/US12008003B2

## CPC

- G06F 16/24578: {using ranking}
- G06F 40/30: Semantic analysis
- G06F 16/26: Visual data mining; Browsing structured data
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method for identifying questions with same semantics includes creating a user behavior graph based on at least two user logs; determining a first associated question node set based on the user behavior graph and a seed question; calculating, based on the first associated question node set, association scores of questions corresponding to all question nodes in the user behavior graph; using a question corresponding to each associated question node in the first associated question node set as a new seed node, to determine M second associated question node sets; updating, based on the M second associated question node sets, the association scores of the questions corresponding to all the question nodes in the user behavior graph; and determining K questions with top K association scores based on updated association scores of the questions corresponding to all the question nodes in the user behavior graph.

## Claims

### Claim 1

A method, comprising:
creating, based on at least two user logs, a user behavior graph, wherein each user log comprises at least one user identifier, at least one question, and at least one answer corresponding to each question, wherein in the user behavior graph, an ith user node corresponds to a user identifier in an ith user log, wherein the ith user node is separately connected to at least one question node, wherein the at least one question node corresponds to at least one question in the ith user log, wherein a jth question node in the at least one question node is separately connected to at least one answer node, wherein the at least one answer node corresponds to at least one answer that is in the ith user log and that corresponds to the jth question node, wherein i and j are positive integers, wherein the ith user log is any one of the at least two user logs, and wherein the jth question node is any one of the at least one question node;
obtaining, based on the user behavior graph and a seed question, a first associated question node set, wherein the first associated question node set comprises a question node corresponding to the seed question and M associated question nodes, wherein M is a positive integer, and wherein the seed question is a question in the at least two user logs;
calculating, based on the first associated question node set, association scores of questions corresponding to all question nodes in the user behavior graph;
using a question corresponding to each associated question node in the first associated question node set as a new seed node to obtain M second associated question node sets;
updating, based on the M second associated question node sets, the association scores to produce updated association scores; and
obtaining, based on the updated association scores, K questions with top K association scores,
wherein K is an integer greater than 1.

### Claim 2 (depends on 1)

The method of claim 1, wherein the user behavior graph further comprises a value marked on a first edge connecting each question node and a corresponding answer node, wherein a value marked on a second edge connecting the jth question node and an nth answer node represents a quantity of times of using an answer corresponding to the nth answer node to answer a question corresponding to the jth question node, wherein n is a positive integer, and wherein the nth answer node is any one of the at least one answer node.

### Claim 3 (depends on 1)

The method of claim 1, wherein obtaining the first associated question node set further comprises:
obtaining, based on the user behavior graph, a first associated answer node set, wherein the first associated answer node set comprises at least one answer node connected to the question node corresponding to the seed question; and
using, as an associated question node, a second question node other than the question node corresponding to the seed question to obtain the M associated question nodes.

### Claim 4 (depends on 3)

The method of claim 3, wherein an association score of a question corresponding to a first question node is calculated based on a value marked on a first edge connecting the question node corresponding to the seed question and each answer node in the first associated answer node set and a value marked on a second edge connecting the first question node and a first associated answer node, wherein in the first associated question node set, the first question node is any associated question node in the first associated question node set, and wherein the first associated answer node is connected to the question node corresponding to the seed question and is connected to the first question node.

### Claim 5 (depends on 1)

The method of claim 1, wherein updating the association scores to produce the updated association scores further comprises updating, based on the association scores, the association scores to produce the updated association scores.

### Claim 6 (depends on 1)

The method of claim 1, wherein before obtaining the K questions, the method further comprises identifying that a difference between an updated association score of each question and an association score that is of each question and that exists before the update is less than a preset threshold.

### Claim 7

An apparatus, comprising:
one or more processors; and
a memory coupled to the one or more processors, wherein the memory is configured to store code, wherein when the code is executed by the one or more processors, the apparatus is configured to:
create, based on at least two user logs, a user behavior graph, wherein each user log comprises at least one user identifier, at least one question, and at least one answer corresponding to each question, wherein in the user behavior graph, an ith user node corresponds to a user identifier in an ith user log, wherein the ith user node is separately connected to at least one question node, wherein the at least one question node corresponds to at least one question in the ith user log, wherein a jth question node in the at least one question node is separately connected to at least one answer node, wherein the at least one answer node corresponds to at least one answer that is in the ith user log and that corresponds to the jth question node, wherein i and j are positive integers, wherein the ith user log is any one of the at least two user logs, and wherein the jth question node is any one of the at least one question node;
obtain, based on the user behavior graph and a seed question, a first associated question node set, wherein the first associated question node set comprises a question node corresponding to the seed question and M associated question nodes, wherein M is a positive integer; and wherein the seed question is a question in the at least two user logs;
calculate, based on the first associated question node set, association scores of questions corresponding to all question nodes in the user behavior graph;
use a question corresponding to each associated question node in the first associated question node set as a new seed node to obtain M second associated question node sets;
update, based on the M second associated question node sets, the association scores to produce updated association scores; and
obtain, based on the updated association scores, K questions with top K association scores,
wherein K is an integer greater than 1.

### Claim 8 (depends on 7)

The apparatus of claim 7, wherein the user behavior graph further comprises a value marked on a first edge connecting each question node and a corresponding answer node, wherein a value marked on a second edge connecting the jth question node and an nth answer node represents a quantity of times of using an answer corresponding to the nth answer node to answer a question corresponding to the jth question node, wherein n is a positive integer, and wherein the nth answer node is any one of the at least one answer node.

### Claim 9 (depends on 7)

The apparatus of claim 7, wherein the apparatus is configured to obtain the first associate question node set by:
obtaining, based on the user behavior graph, a first associated answer node set, wherein the first associated answer node set comprises at least one answer node connected to the question node corresponding to the seed question; and
using, as an associated question node, a second question node other than the question node corresponding to the seed question to obtain the M associated question nodes.

### Claim 10 (depends on 9)

The apparatus of claim 9, wherein an association score of a question corresponding to a first question node is calculated based on a value marked on a first edge connecting the question node corresponding to the seed question and each answer node in the first associated answer node set and a value marked on a second edge connecting the first question node and a first associated answer node, wherein in the first associated question node set, the first question node is any associated question node in the first associated question node set, and wherein the first associated answer node is connected to the question node corresponding to the seed question and is connected to the first question node.

### Claim 11 (depends on 7)

The apparatus of claim 7, wherein the apparatus is further configured to update the association scores to produce the updated association scores by updating, based on the association scores, the association scores to produce the updated association scores.

### Claim 12 (depends on 7)

The apparatus of claim 7, wherein before the apparatus is configured to obtain the K questions, the apparatus is configured to identify that a difference between an updated association score of each question and an association score that is of each question and that exists before the update is less than a preset threshold.

### Claim 13

A computer program product comprising computer-executable instructions stored on a non-transitory computer-readable medium that, when executed by one or more processors, cause an apparatus to:
create, based on at least two user logs, a user behavior graph, wherein each user log comprises at least one user identifier, at least one question, and at least one answer corresponding to each question, wherein in the user behavior graph, an ith user node corresponds to a user identifier in an ith fuser log, wherein the ith user node is separately connected to at least one question node, wherein the at least one question node corresponds to at least one question in the ith user log, wherein a jth question node in the at least one question node is separately connected to at least one answer node, wherein the at least one answer node corresponds to at least one answer that is in the ith user log and that corresponds to the jth question node, wherein i and j are positive integers, wherein the ith user log is any one of the at least two user logs, and wherein the jth question node is any one of the at least one question node;
obtain, based on the user behavior graph and a seed question, a first associated question node set, wherein the first associated question node set comprises a question node corresponding to the seed question and M associated question nodes, wherein M is a positive integer; and wherein the seed question is a question in the at least two user logs;
calculate, based on the first associated question node set, association scores of questions corresponding to all question nodes in the user behavior graph;
use a question corresponding to each associated question node in the first associated question node set as a new seed node to obtain M second associated question node sets;
update, based on the M second associated question node sets, the association scores to produce updated association scores; and
obtain, based on the updated association scores, K questions with top K association scores,
wherein K is an integer greater than 1.

### Claim 14 (depends on 13)

The computer program product of claim 13, wherein the user behavior graph further comprises a value marked on a first edge connecting each question node and a corresponding answer node, wherein a value marked on a second edge connecting the jth question node and an nth answer node represents a quantity of times of using an answer corresponding to the nth answer node to answer a question corresponding to the jth question node, wherein n is a positive integer, and wherein the nth answer node is any one of the at least one answer node.

### Claim 15 (depends on 13)

The computer program product of claim 13, wherein the one or more processors are further configured to execute the instructions to cause the apparatus to obtain the first associate question node set by:
obtaining, based on the user behavior graph, a first associated answer node set, wherein the first associated answer node set comprises at least one answer node connected to the question node corresponding to the seed question; and
using, as an associated question node, a second question node other than the question node corresponding to the seed question to obtain the M associated question nodes.

### Claim 16 (depends on 15)

The computer program product of claim 15, wherein an association score of a question corresponding to a first question node is calculated based on a value marked on a first edge connecting the question node corresponding to the seed question and each answer node in the first associated answer node set and a value marked on a second edge connecting the first question node and a first associated answer node, wherein in the first associated question node set, the first question node is any associated question node in the first associated question node set, and wherein the first associated answer node is connected to the question node corresponding to the seed question and is connected to the first question node.

### Claim 17 (depends on 13)

The computer program product of claim 13, wherein the one or more processors are further configured to execute the instructions to cause the apparatus to update the association scores to produce the updated association scores by updating, based on the association scores, the association scores to produce the updated association scores.

### Claim 18 (depends on 13)

The computer program product of claim 13, wherein before obtaining the K questions, the one or more processors are further configured to execute the instructions to identify that a difference between an updated association score of each question and an association score that is of each question and that exists before the update is less than a preset threshold.

### Claim 19 (depends on 13)

The computer program product of claim 13, wherein the at least two user logs are from users accessing the Internet.

### Claim 20 (depends on 19)

The computer program product of claim 19, wherein the at least two user logs comprise accessing, browsing, searching, and tapping data.
