Content recommendation system using a neural network language model

US9934515B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9934515-B1
Application numberUS-201615370247-A
CountryUS
Kind codeB1
Filing dateDec 6, 2016
Priority dateDec 20, 2013
Publication dateApr 3, 2018
Grant dateApr 3, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The present disclosure relates to applying techniques similar to those used in neural network language modeling systems to a content recommendation system. For example, by associating consumed media content to words of a language model, the system may provide content predictions based on an ordering. Thus, the systems and techniques described herein may produce enhanced prediction results for recommending content (e.g. word) in a given sequence of consumed content. In addition, the system may account for additional user actions by representing particular actions as punctuation in the language model.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method comprising: obtaining a sequence of tokens that represent a user history for a user, the sequence of tokens including one or more first tokens and one or more second tokens, each of the one or more first tokens being associated with a respective media item presented to the user and each of the one or more second tokens being associated with a respective action performed by the user; obtaining a target output for the sequence of tokens, the target output identifying a next token subsequent to the last token in the sequence of tokens; processing the sequence of tokens using a neural network having a plurality of weighting values, the neural network being configured to: process each token in the sequence of tokens in accordance with the weighting values to predict, after processing a last token in the sequence of tokens, an output token that is the next token subsequent to the last token in the sequence of tokens; determining an error value between the target output and the output token generated by the neural network; and training the neural network by modifying the weighting values to lower the error value. 2. The method of claim 1 , wherein the respective actions performed by the user include: selecting an advertisement, performing a search, visiting a webpage, navigating a webpage, rating a media item, sharing a media item, or interrupting a played media item. 3. The method of claim 1 , wherein the respective actions performed by the user include ending a session. 4. The method of claim 1 , wherein the respective media items presented to the user include: videos, music, documents, or data of applications. 5. The method of claim 1 , wherein the neural network is a recurrent neural network. 6. The method of claim 5 , wherein the neural network is configured to sequentially process each token in the sequence of tokens. 7. The method of claim 1 , further comprising: obtaining a sequence of new tokens that represent a new user history for a new user, the sequence of new tokens including one or more new first tokens and one or more new second tokens, each of the one or more new first tokens being associated with a respective media item presented to the new user and each of the one or more new second tokens being associated with a respective action performed by the new user; processing each new token in the sequence of new tokens in accordance with the modified weighting values to predict, after processing a last new token in the sequence of new tokens, a first output token that should be the next token subsequent to the last new token in the sequence of new tokens; and providing a recommendation to the user based on a media item or an action associated with the predicted first output token. 8. The method of claim 7 , wherein the neural network is configured to: associate each of a plurality of candidate tokens with a respective probability, and determine the first output token from the plurality of candidate tokens based on the respective probabilities for the plurality of candidate tokens. 9. The method of claim 8 , wherein the recommendation to the user is provided as a list identifying media items or actions associated with the plurality of candidate tokens for the first output token. 10. The method of claim 9 , wherein the media items or the actions associated with the plurality of candidate tokens for the first output token are ordered in the list based on probabilities associated with the plurality of candidate tokens. 11. A system comprising one or more computers and one or more storage devices storing instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising: obtaining a sequence of tokens that represent a user history for a user, the sequence of tokens including one or more first tokens and one or more second tokens, each of the one or more first tokens being associated with a respective media item presented to the user and each of the one or more second tokens being associated with a respective action performed by the user; obtaining a target output for the sequence of tokens, the target output identifying a next token subsequent to the last token in the sequence of tokens; processing the sequence of tokens using a neural network having a plurality of weighting values, the neural network being configured to: process each token in the sequence of tokens in accordance with the weighting values to predict, after processing a last token in the sequence of tokens, an output token that is the next token subsequent to the last token in the sequence of tokens; determining an error value between the target output and the output token generated by the neural network; and training the neural network by modifying the weighting values to lower the error value. 12. The system of claim 11 , wherein the respective actions performed by the user include: selecting an advertisement, performing a search, visiting a webpage, navigating a webpage, rating a media item, sharing a media item, or interrupting a played media item. 13. The system of claim 11 , wherein the respective actions performed by the user include ending a session. 14. The system of claim 11 , wherein the respective media items presented to the user include: videos, music, documents, or data of applications. 15. The system of claim 11 , wherein the neural network is a recurrent neural network. 16. The system of claim 15 , wherein the neural network is configured to sequentially process each token in the sequence of tokens. 17. The system of claim 11 , wherein the operations further comprise: obtaining a sequence of new tokens that represent a new user history for a new user, the sequence of new tokens including one or more new first tokens and one or more new second tokens, each of the one or more new first tokens being associated with a respective media item presented to the new user and each of the one or more new second tokens being associated with a respective action performed by the new user; processing each new token in the sequence of new tokens in accordance with the modified weighting values to predict, after processing a last new token in the sequence of new tokens, a first output token that should be the next token subsequent to the last new token in the sequence of new tokens; and providing a recommendation to the user based on a media item or an action associated with the predicted first output token. 18. A computer-readable storage device encoded with a computer program, the computer program comprising instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising: obtaining a sequence of tokens that represent a user history for a user, the sequence of tokens including one or more first tokens and one or more second tokens, each of the one or more first tokens being associated with a respective media item presented to the user and each of the one or more second tokens being associated with a respective action performed by the user; obtaining a target output for the sequence of tokens, the target output identifying a next token subsequent to the last token in the sequence of tokens; processing the sequence of tokens using a neural network having a plurality of weighting values, the neural network being configured to: process each token in the sequence of tokens in accordance with the weighting values to predict, after processing a last token in the sequence of tokens, an output token that is the ne

Assignees

Inventors

Classifications

  • using system suggestions (G06F16/3325 takes precedence) · CPC title

  • Recommending goods or services · CPC title

  • Navigation, e.g. using categorised browsing · CPC title

  • based on user history · CPC title

  • Converting codes to words; Guess-ahead of partial word inputs · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9934515B1 cover?
The present disclosure relates to applying techniques similar to those used in neural network language modeling systems to a content recommendation system. For example, by associating consumed media content to words of a language model, the system may provide content predictions based on an ordering. Thus, the systems and techniques described herein may produce enhanced prediction results for r…
Who is the assignee on this patent?
Google Inc, Google Llc
What technology area does this patent fall under?
Primary CPC classification G06Q30/0255. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 03 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).