IP Library Granted Patent US 10,838,746
Granted Patent B2
US 10,838,746 · App. 16/521,504 · Granted Nov 17, 2020

Identifying parameter values and determining features for boosting rankings of relevant distributable digital assistant operations

Inventors: Conal Loughrey (Portstewart, GB); Hudson Leonardo Mendes (Belfast, GB)
Assignee: AIQUDO, INC.
G06F9/453G06F16/90332
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 10,838,746
App. No.
16/521,504
Granted
Nov 17, 2020
Kind
B2
Abstract

Embodiments described herein are generally directed towards systems and methods relating to a crowd-sourced digital assistant system and related methods. In particular, embodiments describe techniques for effectively searching, modifying, identifying parameter values, and determining features for selecting action datasets for distribution to digital assistant devices based on commands received therefrom. Action datasets include computing events or tasks that can be reproduced when a command is received by a digital assistant device and communicated to the server device. The digital assistant server described herein can receive action datasets, maintain action datasets, receive commands from digital assistant devices, and effectively select most relevant action datasets for distribution to the digital assistant devices based on the received commands.

Claims (57)

1. A computer-implemented method for providing relevant digital assistant operations to a digital assistant device based on a command received from the digital assistant device, the method comprising:

receiving, at a server device, a set of action datasets, wherein each action dataset of the set of action datasets corresponds to at least a portion of the command and is associated with a command template that includes a set of parameter fields for the associated action dataset;

determining one or more parameter values, based on the command, for each parameter field of the set of parameter fields for the command template associated with each action dataset of the set of action datasets;

generating one or more action features for each action dataset of the set of action datasets based on the command and the one or more determined parameters values for each parameter field of set of parameter fields for the command template associated with each action dataset of the set of action datasets, wherein at least one of the one or more generated action features indicates whether an application corresponding to the action dataset is installed on the digital assistant device;

determining a ranking of the set of action datasets based on the one or more generated action features for each action dataset of the set of action datasets;

determining a classification for each action dataset of the set of action datasets based on the one or more generated action features for each action dataset of the set of action datasets; and

providing, to the digital assistant device, one or more action datasets of the set of action datasets based on at least one of the ranking of the set of action datasets or the classification for each action dataset of the set of action datasets, wherein each action dataset of the provided one or more action datasets includes the determined one or more parameter values for the command template associated with the provided action dataset.

2. The computer-implemented method of claim 1 , wherein each of action dataset of the set of action datasets is relevant to the command and is a candidate action dataset that matches the command.

3. The computer-implemented method of claim 1 , further comprising:

determining one or more keywords included in the received command;

slotting the one or more determined keywords into at least a portion of the set of parameter fields for the command templates associated with at least one action dataset, based on one or more rules; and

determining the one or more parameter values for each parameter field of the set of parameter fields for the command template based on a likelihood score associated with the slotted one or more keywords.

4. The computer-implemented method of claim 1 , wherein at least one of the one or more generated action features indicates whether a parameter value has been determined for each parameter field of the set of parameter fields for the command template.

5. The computer-implemented method of claim 1 , wherein each action dataset of the received set of action datasets includes a preliminary score and the method further comprises:

determining a secondary score for each action dataset of the set of action datasets based on the one or more action features generated for the action dataset;

determining a final score for each action dataset of the set of action datasets based on a combination of the preliminary score and the secondary score for the action dataset; and

determining the ranking of the set of action datasets based on the final score for each action dataset of the set of action datasets.

6. The computer-implemented method of claim 1 , further comprising:

identifying the one or more action datasets to provide to the digital assistant based on each of the identified one or more action datasets having a parameter value determined for each parameter field of the set of parameter fields of the associated command template.

7. A non-transitory computer storage medium storing computer-useable instructions that, when used by one or more processors, cause the one or more processors to perform operations or providing relevant digital assistant operations to a digital assistant device based on a command received from the digital assistant device, the operations comprising:

receiving, at a server device, a set of action datasets, wherein each action dataset of the set of action datasets corresponds to at least a portion of the command and is associated with a command template that includes a set of parameter fields for the associated action dataset;

determining one or more parameter values, based on the command, for each parameter field of the set of parameter fields for the command template associated with each action dataset of the set of action datasets;

generating one or more action features for each action dataset of the set of action datasets based on the command and the one or more determined parameters values for each parameter field of set of parameter fields for the command template associated with each action dataset of the set of action datasets, wherein at least one of the one or more generated action features indicates whether an application corresponding to the action dataset is installed on the digital assistant device;

determining a ranking of the set of action datasets based on the one or more generated action features for each action dataset of the set of action datasets;

determining a classification for each action dataset of the set of action datasets based on the one or more generated action features for each action dataset of the set of action datasets; and

providing, to the digital assistant device, one or more action datasets of the set of action datasets based on at least one of the ranking of the set of action datasets or the classification for each action dataset of the set of action datasets, wherein each action dataset of the provided one or more action datasets includes the determined one or more parameter values for the command template associated with the provided action dataset.

8. The non-transitory computer storage medium of claim 7 , wherein each of action dataset of the set of action datasets is relevant to the command and is a candidate action dataset that matches the command.

9. The non-transitory computer storage medium of claim 7 , wherein the actions further comprise:

determining one or more keywords included in the received command;

slotting the one or more determined keywords into at least a portion of the set of parameter fields for the command templates associated with at least one action dataset, based on one or more rules; and

determining the one or more parameter values for each parameter field of the set of parameter fields for the command template based on a likelihood score associated with the slotted one or more keywords.

10. The non-transitory computer storage medium of claim 7 , wherein at least one of the one or more generated action features indicates whether a parameter value has been determined for each parameter field of the set of parameter fields for the command template.

11. The non-transitory computer storage medium of claim 7 , wherein each action dataset of the received set of action datasets includes a preliminary score and the operations further comprise:

determining a secondary score for each action dataset of the set of action datasets based on the one or more action features generated for the action dataset;

determining a final score for each action dataset of the set of action datasets based on a combination of the preliminary score and the secondary score for the action dataset; and

determining the ranking of the set of action datasets based on the final score for each action dataset of the set of action datasets.

12. The non-transitory computer storage medium of claim 7 , wherein the operations further comprise:

identifying the one or more action datasets to provide to the digital assistant based on each of the identified one or more action datasets having a parameter value determined for each parameter field of the set of parameter fields of the associated command template.

13. A system or providing relevant digital assistant operations to a digital assistant device based on a command received from the digital assistant device, comprising:

a processor device; and

a computer-readable storage medium, coupled with the processor device, having instructions stored thereon, which, when executed by the processor device, perform actions comprising:

receiving, at a server device, a set of action datasets, wherein each action dataset of the set of action datasets corresponds to at least a portion of the command and is associated with a command template that includes a set of parameter fields for the associated action dataset;

determining one or more parameter values, based on the command, for each parameter field of the set of parameter fields for the command template associated with each action dataset of the set of action datasets;

generating one or more action features for each action dataset of the set of action datasets based on the command and the one or more determined parameters values for each parameter field of set of parameter fields for the command template associated with each action dataset of the set of action datasets, wherein at least one of the one or more generated action features indicates whether an application corresponding to the action dataset is installed on the digital assistant device;

determining a ranking of the set of action datasets based on the one or more generated action features for each action dataset of the set of action datasets;

determining a classification for each action dataset of the set of action datasets based on the one or more generated action features for each action dataset of the set of action datasets; and

providing, to the digital assistant device, one or more action datasets of the set of action datasets based on at least one of the ranking of the set of action datasets or the classification for each action dataset of the set of action datasets, wherein each action dataset of the provided one or more action datasets includes the determined one or more parameter values for the command template associated with the provided action dataset.

14. The system of claim 13 , wherein each of action dataset of the set of action datasets is relevant to the command and is a candidate action dataset that matches the command.

15. The system of claim 13 , the actions further comprising:

determining one or more keywords included in the received command;

slotting the one or more determined keywords into at least a portion of the set of parameter fields for the command templates associated with at least one action dataset, based on one or more rules; and

determining the one or more parameter values for each parameter field of the set of parameter fields for the command template based on a likelihood score associated with the slotted one or more keywords.

16. The system of claim 13 , wherein at least one of the one or more generated action features indicates whether a parameter value has been determined for each parameter field of the set of parameter fields for the command template.

17. The system of claim 13 , wherein each action dataset of the received set of action datasets includes a preliminary score and the action further comprises:

determining a secondary score for each action dataset of the set of action datasets based on the one or more action features generated for the action dataset;

determining a final score for each action dataset of the set of action datasets based on a combination of the preliminary score and the secondary score for the action dataset; and

determining the ranking of the set of action datasets based on the final score for each action dataset of the set of action datasets.

Assignments (4)
PATENT SECURITY AGREEMENT Recorded Jun 1, 2022
From: PELOTON INTERACTIVE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 060247/0453 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2021
From: AIQUDO, INC.
To: PELOTON INTERACTIVE INC.
Reel/Frame 058284/0392 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY'S NAMES BY ADDING NEW CONVEYING PARTY NAMES PREVIOUSLY RECORDED AT REEL: 053227 FRAME: 0412. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Jan 19, 2021
From: LOUGHREY, CONAL; MENDES, HUDSON LEONARDO
To: AIQUDO, INC.
Reel/Frame 055025/0101 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2020
From: MUKHERJEE, RAJAT; HEMARAJ, KIRAN BINDHU; LEVI, MATAN
To: AIQUDO, INC.
Reel/Frame 053227/0412 →
Continuity (4)
Continuation In Part 16047782 · Jul 27, 2018
Provisional Application 62576800 · Oct 25, 2017
Provisional Application 62580444 · Nov 1, 2017
Related Publication 20190347118A1 · Nov 14, 2019