WO2020007164A1 - 用户特征的生成方法、装置、设备及计算机可读存储介质 - Google Patents
用户特征的生成方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- WO2020007164A1 WO2020007164A1 PCT/CN2019/090559 CN2019090559W WO2020007164A1 WO 2020007164 A1 WO2020007164 A1 WO 2020007164A1 CN 2019090559 W CN2019090559 W CN 2019090559W WO 2020007164 A1 WO2020007164 A1 WO 2020007164A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- video
- user
- user account
- embedding matrix
- word embedding
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/251—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/252—Processing of multiple end-users' preferences to derive collaborative data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/75—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/042—Knowledge-based neural networks; Logical representations of neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0475—Generative networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/251—Learning process for intelligent management, e.g. learning user preferences for recommending movies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25866—Management of end-user data
- H04N21/25891—Management of end-user data being end-user preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44213—Monitoring of end-user related data
- H04N21/44222—Analytics of user selections, e.g. selection of programs or purchase activity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/4508—Management of client data or end-user data
- H04N21/4532—Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/482—End-user interface for program selection
- H04N21/4826—End-user interface for program selection using recommendation lists, e.g. of programs or channels sorted out according to their score
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6582—Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/835—Generation of protective data, e.g. certificates
- H04N21/8352—Generation of protective data, e.g. certificates involving content or source identification data, e.g. Unique Material Identifier [UMID]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/466—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/4662—Learning process for intelligent management, e.g. learning user preferences for recommending movies characterized by learning algorithms
- H04N21/4666—Learning process for intelligent management, e.g. learning user preferences for recommending movies characterized by learning algorithms using neural networks, e.g. processing the feedback provided by the user
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/466—Learning process for intelligent management, e.g. learning user preferences for recommending movies
- H04N21/4668—Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
Definitions
- the present application relates to the field of video recommendation, and in particular, to a method, an apparatus, a device, and a computer-readable storage medium for generating user characteristics.
- a video recommendation system is a system for recommending other videos that may be of interest to a user based on their viewing history and / or search history.
- Typical video recommendation systems include: candidate generation models and ranking models. After inputting a user ’s viewing history and / or search history into the candidate generation model, M recommended videos are obtained; then, the M recommended videos are input into the ranking model, and the ranking model will conduct the M recommended videos according to the degree to which the user may be interested. After sorting, output to the user.
- M is a positive integer.
- DNN Deep Neural Networks, Deep Neural Networks
- the input amount of the DNN includes: user characteristics of the user, the viewing history of the user, and / or the search history of the user, and the output amount includes M recommended videos recommended for the user.
- the user characteristics of the user may be obtained by vectorizing attribute information such as the user's age, gender, region, and hobby tags.
- the above method cannot generate user characteristics for many users. Although more attribute information can also be extracted from the social chat system used by the user, since the user will use the first user account in the video system and the second user account in the social chat system, the two account types It is very difficult to accurately associate user accounts in the system. If the association is incorrect, it will also lead to the error of the ultimately generated user characteristics. Therefore, the above generating method cannot generate effective user characteristics for users whose attribute information is empty or incomplete or incorrect.
- a method for generating user characteristics is executed by a server, and the method includes:
- the loss function being used to mine similar relationships between each of the user accounts according to the similarity of viewing history
- a device for generating user characteristics includes:
- a mapping module configured to map a word embedding matrix according to n groups of the time-series correspondences, and the word embedding matrix includes a word vector corresponding to each of the user accounts;
- a determining module configured to determine the word vector corresponding to the user account in the matrix embedded in the trained word as a user characteristic of the user account.
- a computer device includes a processor and a memory, and the memory stores at least one instruction, at least one piece of program, code set, or instruction set, the at least one instruction, the at least one program, or the instruction set.
- the code set or instruction set is loaded and executed by the processor to implement the steps of the above-mentioned generating method of user characteristics.
- a computer-readable storage medium stores at least one instruction, at least one program, code set, or instruction set, the at least one instruction, the at least one program, code, or instruction set Loaded and executed by the processor to implement the steps of the method for generating a user feature described above.
- FIG. 1 is a block diagram of a video recommendation system provided by an exemplary embodiment of the present application.
- FIG. 2 is a flowchart of a method for generating user characteristics provided by an exemplary embodiment of the present application
- FIG. 3 is a flowchart of a method for generating user characteristics provided by an exemplary embodiment of the present application
- FIG. 4 is a schematic diagram of a method for generating user features according to another exemplary embodiment of the present application.
- FIG. 5 is a flowchart of a method for generating a user feature according to another exemplary embodiment of the present application.
- FIG. 6 is a schematic interface diagram of a user feature generation method provided in another exemplary embodiment of the present application during implementation
- FIG. 7 is a comparison diagram of the effects of a user feature generation method and a UCF recommendation method provided by another exemplary embodiment of the present application.
- FIG. 9 is a block diagram of an apparatus for generating user characteristics according to another exemplary embodiment of the present application.
- FIG. 10 is a block diagram of a device for generating a user feature provided by an exemplary embodiment
- FIG. 11 is a block diagram of a server provided by an exemplary embodiment of the application.
- An embodiment of the present application provides a technical solution for extracting user characteristics based on a user's historical record, where the historical record may be at least one of a viewing history record and a search history record.
- This technical solution can be used in the training process and use process of the neural network model related to the video playback system.
- this user feature can be used for training and use of candidate generation models in video recommendation systems, or for training and use of ranking models in video recommendation systems.
- a video library is set in the video recommendation system, and the video library includes multiple videos, such as millions of videos.
- a candidate recommendation set needs to be selected from the video library based on the interests of the user account.
- the video recommendation system uses a candidate generation model to select a candidate recommendation set from a video library.
- the candidate generation model may be a model based on DNN (Deep Neural Networks).
- DNN Deep Neural Networks
- FIG. 1 shows a structural block diagram of a video recommendation system 100 provided by an exemplary embodiment of the present application.
- the video recommendation system 100 includes a terminal 120 and a server 140.
- the terminal 120 is an electronic device used by a user, and the electronic device has a capability of playing a video.
- the electronic device may be any one of a smart phone, a tablet computer, an MP3, an MP4, a palmtop computer, a notebook computer, and a desktop computer.
- An application program is installed or run on the electronic device, and the application program has a function of playing a video.
- the application is at least one of an online video client, a short video client, a video aggregation client, and a user sharing video client.
- a user account is registered in the application, and the user account is used to uniquely identify a user among multiple users.
- the terminal 120 is connected to the server 140 through a wired network or a wireless network.
- the candidate generation model 142 may be a DNN-based neural network model.
- the server 140 is configured to input the user characteristics and video characteristics corresponding to the user account into a candidate generation model 142, and the candidate generation model 142 outputs n target videos that may be of interest to the user account. , And the probability of watching each target video.
- the viewing probability is a predicted probability of the user account clicking and watching the target video.
- the user characteristic is used to represent the personal characteristic of the user.
- attributes such as age, gender, occupation, and hobby tags of a user are used for vectorization.
- the second is to collect user account and attribute information (from another social system) used to play the sequence.
- the user account may not be the same system. In this way, one user account needs to be linked to another user account. It is difficult to accurately associate user accounts in an account system.
- the attribute features that can be obtained in the video playback system are limited, which results in the collection and generation of user features taking a long time and cost.
- Some embodiments of the present application are based on at least one of the user's viewing history and search history. To generate user characteristics, in these embodiments, attribute characteristics such as age, gender, occupation, and hobby tags may not be used or less used.
- the video feature is used to represent an attribute feature of at least one video that the user has watched and searched.
- the specific extraction manner of the video features is not limited in the embodiments of the present application.
- each user is mapped to different word vectors by the method of word vectors, and these word vectors are used as user features.
- This process can generate user characteristics without using attribute characteristics such as age, gender, occupation, and hobby tags.
- FIG. 2 shows a flowchart of a user feature generation method provided by an exemplary embodiment of the present application. This embodiment is described by taking an example in which the method is executed by the server described in FIG. 1. The method includes:
- Step 201 Obtain a time-series correspondence between n groups of target videos and user accounts.
- Each group of time-series correspondence includes each user account that has viewed the target video, and the user accounts are sorted according to the viewing timestamp.
- Viewing the target video includes: watching at least one of the target video and searching for the target video.
- viewing the timestamp includes at least one of a viewing timestamp and a search timestamp.
- the database of the server stores the video playback pipeline records watched by each user account, and the video playback pipeline records store the video identifications of each historically viewed video and the viewing timestamp of each video identification.
- the database of the server also stores video search pipeline records searched by each user account.
- the video search pipeline records the video identification of each historical search video and the search timestamp of each video identification.
- the server extracts the time-series correspondence between item and user from the video playback log.
- Item is the video ID of the target video
- user is the user ID who has watched the target video.
- Each timing correspondence corresponds to a target video, and each user account that has watched the target video.
- each user account in the correspondence relationship is sorted according to the viewing timestamp when each user account watches the target video.
- the initial word embedding matrix does not necessarily accurately represent the degree of similarity of each user account in viewing the video. Therefore, the server uses a noise contrast estimation loss function to train the word embedding matrix, and the loss function is used to mine the similarity relationship between each user account according to the similarity of the viewing history.
- the server determines that the word embedding matrix has been trained. Then, the server embeds the trained words into the word vector corresponding to each user account in the matrix, and determines the user characteristics of the user account.
- the server uses the method of steps 301 to 305 to extract the user characteristics of the user account to be recommended. After inputting user characteristics into the candidate generation model, the user account's viewing probability of each video in the video library is obtained.
- the videos sorted on top are determined to be videos that may be of interest to the user account, that is, videos to be recommended to the user account.
- the methods in related technologies cannot generate effective user characteristics for users who have empty or incomplete or incorrect attribute information, and can Users using the video system can generate more accurate user characteristics, and the user characteristics can fully reflect the characteristics of each user account in the video viewing angle, which is suitable as an input parameter of the neural network model related to the video recommendation system.
- the user feature generation method provided in this embodiment obtains a word embedding matrix by mapping n sets of time-series correspondences using a word vector mapping method, and then trains the word embedding matrix through a noise contrast estimation loss function, which can be used to mine the same or
- the implicit relationship between user accounts of similar videos can fully explore the implicit similarity relationship of each user account in the video viewing angle, and improve the accuracy of the input amount as a candidate generation model.
- step 307b the user features and video features in the h-group training set are used as sample features to be input into the candidate generation model for training, and a trained candidate generation model is obtained.
- Step 307c Use the k-group evaluation set to evaluate the recall rate of the trained candidate generation model.
- the user and video features are generated in exactly the same way as the training process.
- the server inputs user characteristics to the trained candidate generation model, and the candidate generation model outputs the user's viewing probability (interest probability) of each video, and then the videos with the viewing probability ranked at the top are determined as candidate recommendation sets, where n is Positive integer.
- the server detects whether each video in the candidate recommendation set falls into the historical video set viewed by the user account (that is, the video in the video feature of the user account); if it falls into the historical video set, it is considered to be a successful recall; if If it does not fall into the historical video collection, it is not recalled successfully.
- the recall rate of all user accounts in the server statistical evaluation set is used as the evaluation parameter of the candidate generation model.
- the server detects whether the recall rate of the candidate generation model is higher than the third end threshold; if the recall rate is higher than the third end threshold, the trained candidate generation model is determined as a candidate generation model to be used; if the recall rate is lower than the third end threshold Three end thresholds, the trained candidate generation model is determined to be an unqualified candidate generation model, and the training set is reselected to continue training.
- the method provided in this embodiment evaluates the trained candidate generation model by using k sets of evaluation sets.
- the recall rate of the trained candidate generation model is higher than the third end threshold, the post-training The candidate generation model is determined as the candidate generation model to be used, thereby ensuring the performance of the trained candidate generation model when it is online to the production system.
- the candidate generation model may be implemented using a machine learning architecture TensorFlow.
- the timing module 52 is responsible for extracting the video viewing flow records of each user account from a database 51, and the database 51 may be a database for storing video viewing flow records, such as a Boss log system.
- the graph building module (Building Graph) 60 is responsible for reporting the intermediate results during the DNN training process to the Tensor Board (Tensor Board) 62, and the server completes the DNN training according to the intermediate results obtained by the Tensor Show panel 62.
- the model obtained after the DNN training is the candidate generation model.
- the model saving / loading module 61 is used to save the trained candidate generation model, and the candidate generation model is used for model evaluation into a user candidate set list.
- the data collection module 53 may also collect attribute features such as user base attributes 65 and user search history 66, and generate these attributes through other feature samples 67 and other embedding matrices 68.
- attribute features such as user base attributes 65 and user search history 66
- feature samples 67 and other embedding matrices 68 are also used as one of the parameters for training the candidate generation model to train the candidate generation model.
- a recall index is used to measure the recall capability of the candidate generation model.
- Several users are randomly extracted from the N + 1th partition, and the user characteristics of each user are input into the candidate generation model. After that, we Top results are taken from the output results of the output layer of the candidate generation model as a candidate set. If the video actually watched by the user falls within the range of top, it is considered to be successfully recalled, otherwise it is not recalled, and the prediction results of all users are summarized. Finally get the overall recall rate.
- k is a positive integer.
- the samples in the training set have corresponding user sets and video sets. If the user feature set in the evaluation set is not in the training set, the user set is regarded as "out-of-set words" (OOV); if the evaluation set Video feature set is not in the training set, the video feature set is regarded as an out-of-set word.
- OOV out-of-set words
- Video feature set is not in the training set, the video feature set is regarded as an out-of-set word.
- the inventors compared the effect of this technical solution and the UCF algorithm module in the same experimental bucket.
- the results are shown in Figure 7.
- the horizontal axis represents the number of days the experiment is online, and the vertical axis is the module's exposure per capita VV index. This technology can be seen.
- the effect of the scheme is better than the UCF algorithm module.
- Figures 2, 3, and 5 are schematic flowcharts of a method for generating user features in one embodiment. It can be understood that although the steps in the flowcharts of Figs. 2, 3, and 5 are sequentially displayed in accordance with the directions of the arrows, these steps are not necessarily performed in the order indicated by the arrows. Unless explicitly stated in this document, the execution of these steps is not strictly limited, and these steps can be performed in other orders. Moreover, at least some of the steps in Figures 2, 3, and 5 may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily performed at the same time, but may be performed at different times.
- An obtaining module 820 is configured to obtain a time series correspondence relationship between n groups of target videos and user accounts. Each group of time series correspondence includes each user account that has viewed the target video, and the user account is performed according to the viewing timestamp. Sorting, n is a positive integer;
- a mapping module 840 configured to map a word embedding matrix according to n groups of the time-series correspondences, where the word embedding matrix includes a word vector corresponding to each of the user accounts;
- a training module 860 configured to train the word embedding matrix by using a loss function, which is used to mine a similar relationship between the user accounts according to the similarity of the viewing history;
- a determining module 880 is configured to determine the word vector corresponding to the user account in the matrix embedded in the trained word as a user feature of the user account.
- a training module 860 is configured to train the word embedding matrix using a noise contrast estimation loss function.
- a determining module 880 is configured to embed the word vector corresponding to the user account in the matrix when the function value of the noise contrast estimation loss function is lower than a first end threshold. To determine the user characteristics of the user account.
- a mapping module 840 is configured to map n groups of the time-series correspondences in a word vector mapping manner to obtain the word embedding matrix.
- the record obtaining unit 822 is configured to obtain video viewing history records of m user accounts, and the video viewing history records include a video identifier and a viewing timestamp of a target video, where m is a positive integer; the target video is a video that a user has watched and searches At least one of the past videos;
- the sorting unit 824 is configured to, for each of the target videos in the video viewing history record, sort each user account that has viewed the target video according to a corresponding viewing timestamp, and generate the target video. And a time series correspondence between the user account.
- the video feature obtaining module 892 is configured to obtain a video identifier in a history record as a video feature; the history record is at least one of a viewing history record and a search history record of a user account;
- the apparatus further includes: an evaluation module 896;
- the evaluation module 896 is configured to use the k-group evaluation set to evaluate a recall rate of the trained candidate generation model; when the recall rate of the trained candidate generation model reaches a second end threshold, The trained candidate generation model is determined as a candidate generation model to be used.
- FIG. 11 shows a block diagram of a server provided in an exemplary embodiment of the present application, and the server is configured to implement the method for generating user characteristics on the server side provided in the foregoing embodiment. Specifically:
- the non-volatile memory may include a read-only memory, a programmable ROM (PROM), an electrically programmable ROM (EPROM), an electrically erasable programmable ROM (EEPROM), or a flash memory.
- Volatile memory may include random access memory or external cache memory.
- RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous chain (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
- the above-mentioned system memory 1104 and mass storage device 1107 may be collectively referred to as a memory.
- the server 1100 may also be operated by a remote computer connected to a network through a network such as the Internet. That is, the server 1100 can be connected to the network 1112 through the network interface unit 1111 connected to the system bus 1105, or the network interface unit 1111 can also be used to connect to other types of networks or remote computer systems (not shown). .
- the memory further includes one or more programs stored in the memory and configured to be executed by one or more processors.
- the one or more programs include instructions for executing the method for generating a user feature.
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Social Psychology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Library & Information Science (AREA)
- Human Computer Interaction (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Graphics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
一种用户特征的生成方法、装置、设备及计算机可读存储介质,涉及视频推荐领域。用户特征的生成方法包括:获取n组目标视频和用户帐号之间的时序对应关系,每组时序对应关系包括观看过目标视频的各个用户帐号,且用户帐号按照观看时间戳进行排序,n为正整数(201);根据n组时序对应关系映射得到词嵌入矩阵,词嵌入矩阵包括每个用户帐号对应的词向量(202);使用损失函数对词嵌入矩阵进行训练,损失函数用于根据观看历史的相似程度挖掘各个用户帐号之间的相似关系(203);将训练完毕的词嵌入矩阵中的用户帐号对应的词向量,确定为用户帐号的用户特征(204)。
Description
本申请要求于2018年07月04日提交中国专利局、申请号为2018107244433、申请名称为“用户特征的生成方法、装置、设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及视频推荐领域,特别涉及一种用户特征的生成方法、装置、设备及计算机可读存储介质。
视频推荐系统是用于根据用户的观看历史和/或搜索历史向该用户推荐其它可能感兴趣视频的系统。典型的视频推荐系统包括:候选生成模型和排序模型。将某一用户的观看历史和/或搜索历史输入候选生成模型后,得到M个推荐视频;然后将M个推荐视频输入排序模型,排序模型会将M个推荐视频按照用户可能感兴趣的程度进行排序后,输出给该用户。其中,M为正整数。
相关技术中的候选生成模型采用DNN(Deep Neural Networks,深度神经网络)来实现。该DNN的输入量包括:用户的用户特征、用户的观看历史和/或用户的搜索历史,输出量包括为该用户推荐的M个推荐视频。用户的用户特征可以是将用户的年龄、性别、地域、爱好标签等属性信息进行向量化得到的。
由于很多用户在视频系统中不填写属性信息或填写不完整的属性信息,所以上述方法对很多用户都无法生成用户特征。虽然也可以从用户使用的社交聊天系统中提取到较多的属性信息,但由于用户在视频系统中会使用第一用户帐号,而在社交聊天系统中会使用第二用户帐号,对两种帐号体系中的用户帐号进行准确关联是非常困难的,如果关联错误也会导致最终生成的用户特征的错误。因此上述生成方法对属性信息为空或不完整或错误的用户无法生成有效的用户特征。
发明内容
根据本申请的各种实施例,提供一种用户特征的生成方法、装置、设备及计算机可读存储介质。
一种用户特征的生成方法,由服务器执行,所述方法包括:
获取n组目标视频和用户帐号之间的时序对应关系,每组所述时序对应关系包括查看过所述目标视频的各个用户帐号,且所述用户帐号按照查看时间戳进行排序,n为正整数;
根据n组所述时序对应关系映射得到词嵌入矩阵,所述词嵌入矩阵包括每个所述用户帐号对应的词向量;
使用损失函数对所述词嵌入矩阵进行训练,所述损失函数用于根据观看历史的相似程度挖掘各个所述用户帐号之间的相似关系;
将训练完毕的所述词嵌入矩阵中的所述用户帐号对应的词向量,确定为所述用户帐号的用户特征。
一种用户特征的生成装置,所述装置包括:
获取模块,用于获取n组目标视频和用户帐号之间的时序对应关系,每组所述时序对应关系包括查看过所述目标视频的各个用户帐号,且所述用户帐号按照查看时间戳进行排序;
映射模块,用于根据n组所述时序对应关系映射得到词嵌入矩阵,所述词嵌入矩阵包括每个所述用户帐号对应的词向量;
训练模块,用于使用损失函数对所述词嵌入矩阵进行训练,所述损失函数用于根据观看历史的相似程度挖掘各个所述用户帐号之间的相似关系;
确定模块,用于将训练完毕的所述词嵌入矩阵中的所述用户帐号对应的词向量,确定为所述用户帐号的用户特征。
一种计算机设备,所述计算机设备包括:处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述用户 特征的生成方法的步骤。
一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述用户特征的生成方法的步骤。
本申请的一个或多个实施例的细节在下面的附图和描述中提出。本申请的其它特征、目的和优点将从说明书、附图以及权利要求书变得明显。
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本申请一个示例性实施例提供的视频推荐系统的框图。
图2是本申请一个示例性实施例提供的用户特征的生成方法的流程图;
图3是本申请一个示例性实施例提供的用户特征的生成方法的流程图;
图4是本申请另一个示例性实施例提供的用户特征的生成方法的原理示意图;
图5是本申请另一个示例性实施例提供的用户特征的生成方法的流程图;
图6是本申请另一个示例性实施例提供的用户特征的生成方法在实施过程中的界面示意图;
图7是本申请另一个示例性实施例提供的用户特征的生成方法与UCF推荐方法的效果对比图;
图8是本申请一个示例性实施例提供的用户特征的生成装置的框图;
图9是本申请另一个示例性实施例提供的用户特征的生成装置的框图;
图10是申请一个示例性实施例提供的用户特征的生成装置的框图;
图11是申请一个示例性实施例提供的服务器的框图。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
本申请实施例提供了一种基于用户的历史记录来提取用户特征的技术方案,其中历史记录可以是观看历史记录和搜索历史记录中的至少一种。该技术方案可以用于视频播放系统相关的神经网络模型的训练过程以及使用过程。典型的,该用户特征可以用于视频推荐系统中的候选生成模型的训练及使用,或者,用于视频推荐系统中的排序模型的训练及使用。
典型的应用场景包括如下场景中的任意一种:
一、视频推荐场景:
视频推荐系统中设置有视频库,该视频库包括多个视频,比如数以百万计的视频。对于某一个用户帐号,需要基于该用户帐号的兴趣爱好从视频库中挑选出候选推荐集。示意性的,视频推荐系统采用候选生成模型从视频库中挑选出候选推荐集。该候选生成模型可以是基于DNN(Deep Neural Networks,深度神经网络)的模型。本申请实施例提供的用户特征适合作为该候选生成模型的输入量进行训练和使用。
二、视频排序场景:
在向用户推荐候选推荐集中的多个视频时,视频推荐系统会按照用户可能感兴趣的概率由高到低的顺序,将多个视频依次推荐给用户。示意性的,视频推荐系统采用排序模型对候选推荐集中的多个视频进行排序。该排序模型可以是基于DNN的神经网络模型。本申请实施例提供的用户特征适合作为该排序模型的输入量进行训练和使用。
图1示出了本申请一个示例性实施例提供的视频推荐系统100的结构框图。该视频推荐系统100包括:终端120和服务器140。
终端120是用户所使用的电子设备,该电子设备具有播放视频的能力。该电子设备可以是智能手机、平板电脑、MP3、MP4、掌上电脑、笔记本电脑、台式电脑中的任意一种。该电子设备上安装或运行有应用程序,该应用程序具有播放视频的功能。可选地,该应用程序是在线视频客户端、短视频客户端、视频聚合客户端、用户分享视频客户端中的至少一种。该应用程序中登录有用户帐号,该用户帐号用于在多个用户中唯一识别某一个用户。
终端120通过有线网络或无线网络与服务器140相连。
服务器140是一台服务器、多台服务器组成的服务器集群、云计算中心或虚拟化计算中心。该服务器140可以是用于进行视频推荐的服务器。服务器140用于获取用户帐号的个性特征,根据用户帐号的个性特征分析用户的观看喜好,根据观看喜好向用户推荐可能感兴趣的目标视频。该服务器140中运行有候选生成模型142和排序模型144。该候选生成模型142用于从大量的视频集中筛选出数以百计的视频候选集,排序模型144用于对视频候选集进行个性化排序。
可选地,候选生成模型142可以是基于DNN的神经网络模型。当需要对某一个用户帐号进行视频推荐时,服务器140用于将该用户帐号对应的用户特征和视频特征输入候选生成模型142,该候选生成模型142输出该用户帐号可能感兴趣的n个目标视频,以及每个目标视频的观看概率。该观看概率是预测出的该用户帐号点击和观看该目标视频的可能性概率。
可选地,用户特征用于表示用户本身的个性特征。相关技术中采用用户的年龄、性别、职业、爱好标签等属性特征进行向量化得到。但在实际情况中,属性特征的收集存在两方面的问题:一是在日活跃用户很高的移动应用中,用户量是巨大的,收集成本较高,而且离线任务有较高的延迟风险;二是收集播放序列时用到的用户帐号和属性信息(来自另一个社交系统)中的用户帐号可能不是同一套体系,这样需要将一种用户帐号关联到另一种用户帐号,如果要实现两个帐号体系中的用户帐号进行准确关联是较为困难的。视频播放系统内能够获取到的 属性特征有限,导致用户特征的收集和生成需要耗费较多的时间和成本,本申请的一些实施例基于用户的观看历史记录和搜索历史记录中的至少一种,来生成用户特征,这些实施例中可以不使用或少使用类似年龄、性别、职业、爱好标签之类的属性特征。
可选地,视频特征用于表示用户观看和搜索过中的至少一种视频的属性特征。在一些实施例中,将用户帐号的历史观看过的视频标识进行第一向量化,得到第一向量;将用户帐号的历史搜索过的视频标识进行第二向量化,得到第二向量;将第一向量和第二向量进行叠加后,得到该用户帐号的视频特征。本申请实施例中对视频特征的具体提取方式不加以限定。
需要说明的是,本实施环境仅为示意性说明,下述方法实施例也可以由其它服务器来执行,并不限于上述服务器140。
在本申请实施例中基于用户历史观看/搜索的视频序列,通过词向量的方法把各个用户映射到不同的词向量上,进而将这些词向量作为用户特征。此过程可以不使用到年龄、性别、职业、爱好标签之类的属性特征即可生成用户特征。
图2示出了本申请一个示例性实施例提供的用户特征生成方法的流程图。本实施例以该方法由图1所述的服务器来执行为例进行说明。该方法包括:
步骤201,获取n组目标视频和用户帐号之间的时序对应关系,每组时序对应关系包括查看过目标视频的各个用户帐号,且用户帐号按照查看时间戳进行排序。
查看过目标视频包括:观看过目标视频和搜索过目标视频中的至少一种。对应地,查看时间戳包括:观看时间戳和搜索时间戳中的至少一种。
服务器的数据库中存储有各个用户帐号所观看过的视频播放流水记录,该视频播放流水记录中存储有各个历史观看视频的视频标识以及每个视频标识的观看时间戳。
服务器的数据库中还存储有各个用户帐号所搜索过的视频搜索流水记录,该视频搜索流水记录中存储有各个历史搜索视频的视频标识以及每个视频标识 的搜索时间戳。
以基于视频观看历史为例,服务器从视频播放流水记录中提取出item到user的时序对应关系,item是目标视频的视频标识,user是观看过该目标视频的用户标识。每个时序对应关系对应一个目标视频,以及观看过该目标视频的各个用户帐号。同时,该对应关系中的各个用户帐号按照各个用户帐号观看该目标视频时的观看时间戳进行排序。
服务器提取出多组item到user的时序对应关系。多组时序对应关系可视为一个“文档集”。
步骤202,根据n组时序对应关系映射得到词嵌入矩阵,词嵌入矩阵包括每个用户帐号对应的词向量。
词嵌入矩阵(Embedding)是将n组时序对应关系按照词向量的映射方式所映射到的矩阵。词向量中的每一行(或每一列)对应一个用户帐号,每一个矩阵行中的取值形成该用户帐号对应的词向量。
步骤203,使用损失函数对词嵌入矩阵进行训练,损失函数用于根据观看历史的相似程度挖掘各个用户帐号之间的相似关系。
对于任意两个用户帐号,当这两个用户帐号所观看过的相同(或相似)视频越多时,这两个用户帐号的相似程度越高。为了挖掘出各个用户帐号之间的隐含关系,服务器使用损失函数对词嵌入矩阵进行训练,该损失函数用于根据观看历史的相似程度挖掘出各个用户帐号之间的相似关系。或者说,该损失函数用于根据观看历史的相似程度挖掘出各个用户帐号之间的隐含相似关系。或者说,该损失函数用于根据观看历史的相似程度挖掘出各个用户帐号之间的隐含关系。
可选地,该损失函数是噪声对比估计损失函数(Noise-contrastive Estimation,NCE)。
步骤204,将训练完毕的词嵌入矩阵中的用户帐号对应的词向量,确定为用户帐号的用户特征。
当利用损失函数将词嵌入矩阵训练完毕后,任意两个用户帐号对应的词向量之间的余弦向量越接近,则代表这两个用户帐号之间越相似。
服务器将训练完毕后的词嵌入矩阵中的词向量进行提取,每个词向量确定为对应用户帐号的用户特征。
综上所述,本实施例提供的用户特征生成方法,通过获取n组目标视频和用户帐号之间的时序对应关系,根据n组时序对应关系映射得到词嵌入矩阵,使用损失函数对词嵌入矩阵进行训练后,将训练完毕的词嵌入矩阵中的用户帐号对应的词向量,确定为用户帐号的用户特征。本申请是基于用户的历史记录来提取用户特征的技术方案,其中历史记录可以是观看历史记录和搜索历史记录中的至少一种,而这些历史数据均为视频系统中自动产生的数据,只要用户正常使用视频系统就会不断产生和更新这些数据,不需要依赖其它数据源,因此能够解决相关技术中的方法对属性信息为空或不完整或错误的用户无法生成有效的用户特征的问题,能够对使用视频系统的用户均能生成较为准确的用户特征,且该用户特征能够充分体现出各个用户帐号在视频观看角度的特点,适合作为与视频推荐系统相关的神经网络模型的输入参数。
同时,由于这些历史数据均为视频系统中自动产生的数据,不需要依赖其它数据源,因此不需要对两个不同帐号体系中的相应帐号进行关联,也不存在如何将两个帐号体系中的相应帐号进行准确关联的问题,减少了数据处理步骤,节约了处理资源。
图3示出了本申请一个示例性实施例提供的用户特征生成方法的流程图。本实施例以该方法由图1所述的服务器执行来举例说明。该方法包括:
步骤301,获取m个用户帐号的视频查看历史记录,视频查看历史记录包括目标视频的视频标识以及查看时间戳,m为正整数;目标视频为用户观看过的视频和搜索过的视频中的至少一种。
服务器的数据库中存储有各个用户帐号的视频查看历史记录。该视频查看历史记录包括:视频观看流水记录和视频搜索流水记录中的至少一种。视频观看流水记录包括:每个用户帐号在历史时间段内观看过的各个目标视频的视频标识,以及观看时间戳;视频搜索流水记录包括:每个用户帐号在历史时间段内搜 索过的各个目标视频的视频标识,以及搜索时间戳。
可选地,该历史时间段是以最近一个时刻向前倒退预设时长所确定的时间段。比如,历史时间段是最近一周、最近一个月、最近三个月、最近半年、最近一年或最近三年中的至少一个。
结合图4,服务器从数据库41中获取m个用户帐号的视频观看流水记录42,该视频观看流水记录42包括:用户帐号1、用户帐号1观看过的视频1、用户帐号1观看视频1时的观看时间戳;用户帐号2、用户帐号2观看过的视频2、用户帐号2观看视频2时的观看时间戳;….,用户帐号m、用户帐号m观看过的视频m、用户帐号m观看视频m时的观看时间戳。其中,m为正整数。
步骤302,对于视频查看历史记录中的每个目标视频,将查看过目标视频的各个用户帐号按照对应的查看时间戳进行排序后,生成目标视频和用户帐号之间的时序对应关系。
服务器基于视频查看历史记录生成item和user之间的时序对应关系。item是目标视频的视频标识,user是查看过该目标视频的用户标识。每组时序对应关系包括:一个目标视频的视频标识,以及查看过该目标视频的各个用户标识。在一些实施例中,一组时序对应关系中的多个用户标识按照查看时间戳由早到晚的顺序进行排列;在另一些实施例中,一组时序对应关系中的多个用户标识按照查看时间戳由晚到早的顺序进行排列。
结合图4,对于同一个目标视频:视频i,将查看过视频i的各个用户帐号按照观看时间戳进行排序后,生成一组与视频i对应的时序对应关系43。同理,对于每个目标视频生成相应的时序对应关系,共生成n组时序对应关系。i为小于或等于n的整数。
在本申请实施例中,n组时序对应关系视为一个文档集,每组时序对应关系视为一个文档。对于每个文档中的上下文中,相邻不远的用户标识之间的关联度比相距很远的用户标识之间的关联度高。
步骤303,将n组时序对应关系按照词向量映射方式进行映射,得到词嵌入矩阵,词嵌入矩阵包括每个用户帐号对应的词向量。
对n组时序对应关系按照词向量映射方式进行映射,得到词嵌入矩阵。示意性的,词向量映射方式可以是word2vector映射方式。
可选地,word2vector采用神经网络语言模型来实现。该神经网络模型可以是CBOW(Continuous Bag-of-Words)模型或者Skip-Gram模型。本实施例以该word2vector采用CBOW模型来举例说明。可选地,该CBOW模型是一个至少三层的神经网络结构,包括:输入层、至少一个隐藏层和输出层(Softmax层)。可选地,该输出层采用噪声对比估计损失函数来作为损失函数。服务器将n组时序对应关系输入至该神经网络模型后,得到词嵌入矩阵。
该词嵌入矩阵包括每个用户帐号对应的词向量。每个词向量是x维向量,x维向量的维数小于目标视频的个数m。可选地,x远小于m。比如m为百万级,而x为百级。
步骤304,使用噪声对比估计损失函数对词嵌入矩阵进行训练。
初始的词嵌入矩阵并不一定能准确代表各个用户帐号在观看视频角度的相似程度。因此,服务器使用噪声对比估计损失函数对词嵌入矩阵进行训练,该损失函数用于根据观看历史的相似程度挖掘各个用户帐号之间的相似关系。
可选地,服务器中存储有第一结束阈值,该第一结束阈值是用于表示训练词嵌入矩阵时的结束临界值。在第i轮迭代训练后,服务器计算噪声对比估计损失函数函数的函数值是否低于第一结束阈值。当噪声对比估计损失函数函数的函数值不低于第一结束阈值时,计算该函数值与第一结束阈值之间的误差,然后根据误差反向传播算法进行第i+1轮迭代训练,依次类推,直至噪声对比估计损失函数函数的函数值低于结束阈值。
该噪声对比估计损失函数函数用于根据用户的观看历史的相似程度,来挖掘各个用户帐号在观看视频角度所隐含的相似程度。
步骤305,当噪声对比估计损失函数的函数值低于第一结束阈值时,将词嵌入矩阵中的用户帐号对应的词向量,确定为用户帐号的用户特征。
经过多次训练后,当噪声对比估计损失函数的函数低于结束阈值时,服务器确定该词嵌入矩阵训练完毕。然后,服务器将训练完毕的词嵌入矩阵中的每个用 户帐号对应的词向量,确定为用户帐号的用户特征。
至此,服务器为n个用户帐号中的每个用户帐号生成用户特征。该用户特征可以用于训练候选生成模型。
以下为候选生成模型的训练阶段:
步骤306,获取历史记录中的视频标识,根据视频标识生成视频特征;历史记录为所述用户帐号的观看历史记录和搜索历史记录中的至少一种。
在候选生成模型的训练阶段中,训练样本包括输入量包括:至少一组用户帐号的用户特征和视频特征。对于某个用户帐号,该用户帐号的用户特征采用步骤301至306的方式进行生成;该用户帐号的视频特征利用该用户帐号的历史记录中的视频标识进行生成,该历史记录为该用户帐号观看历史记录和搜索历史记录中的至少一种。
在一些实施例中,以根据用户帐号的观看历史记录生成视频特征为例,将用户帐号按照时间顺序所观看的各个视频标识排序后,形成一个由多个视频标识所拼接得到的向量,将该向量确定为该用户帐号的视频特征。
在另一些实施例中,服务器采用类似于用户特征的方式来生成视频特征。也即,服务器获取各个用户帐号的视频查看历史记录,将各个用户帐号的视频查看历史记录通过词向量映射方式映射得到词嵌入矩阵,该词嵌入矩阵包括各个目标视频的词向量;服务器通过噪声对比估计损失函数损失函数对词嵌入矩阵进行训练,得到训练后的词嵌入矩阵;将训练后的词嵌入矩阵中的各个词向量,确定为各个目标视频的视频特征。
需要说明的是,本实施例不限定视频特征的具体生成方式。
步骤307,将用户特征和视频特征作为样本特征输入候选生成模型中进行训练,得到训练后的候选生成模型。
服务器将多个用户帐号的用户特征和视频特征,作为样本特征输入候选生成模型进行训练,得到训练后的候选生成模型。
其中,训练后的候选生成模型用于根据输入的用户特征输出对视频库中各个视频的观看概率。
在视频推荐阶段中,也即候选生成模型的实际使用阶段,服务器利用步骤301至步骤305的方法提取待推荐的用户帐号的用户特征。将用户特征输入候选生成模型后,得到该用户帐号对视频库中各个视频的观看概率。可选地,将排序在top n的视频确定为该用户帐号可能感兴趣的视频,也即待推荐给该用户帐号的视频。
综上所述,本实施例提供的用户特征生成方法,通过获取n组目标视频和用户帐号之间的时序对应关系,根据n组时序对应关系映射得到词嵌入矩阵,使用损失函数对词嵌入矩阵进行训练后,将训练完毕的词嵌入矩阵中的用户帐号对应的词向量,确定为用户帐号的用户特征。本申请是用户的历史记录来提取用户特征的技术方案,其中历史记录可以是观看历史记录和搜索历史记录中的至少一种,而这些历史数据均为视频系统中自动产生的数据,只要用户正常使用视频系统就会不断产生和更新这些数据,不需要依赖其它数据源,因此能够解决相关技术中的方法对属性信息为空或不完整或错误的用户无法生成有效的用户特征的问题,能够对使用视频系统的用户均能生成较为准确的用户特征,且该用户特征能够充分体现出各个用户帐号在视频观看角度的特点,适合作为与视频推荐系统相关的神经网络模型的输入参数。
本实施例提供的用户特征生成方法,通过将n组时序对应关系利用词向量映射方式进行映射得到词嵌入矩阵,然后通过噪声对比估计损失函数对词嵌入矩阵进行训练,能够挖掘出喜欢观看相同或相似视频的用户帐号之间的隐含关系,从而充分挖掘出各个用户帐号在视频观看角度的隐含相似关系,提高作为候选生成模型的输入量的准确性。
在基于图3的可选实施例中,服务器还提供了对训练后的候选生成模型进行评估的评估机制。上述步骤307还替换实现成为如下步骤:
步骤307a,将用户特征和视频特征划分为h+k组数据集,h+k数据集包括h组训练集和k组评测集。
当服务器根据各个用户帐号的视频观看历史记录,生成多组用户特征和视 频特征后,将多组用户特征和视频特征划分为h+k组数据集。其中,h、k均为正整数。可选地,服务器选择出h+k组数据集中的h组数据集作为训练集,k组数据集作为评测集。
步骤307b,将h组训练集中的用户特征和视频特征作为样本特征输入候选生成模型中进行训练,得到训练后的候选生成模型。
服务器将h组训练集中的用户特征和视频特征进行样本特征输入候选生成模型,通过误差反向传播算法对该候选生成模型进行多轮迭代训练。当误差小于模型结束阈值后,服务器得到训练后的候选生成模型。模型结束阈值是用于表示训练候选生成模型时的结束临界值。
比如,输入用户特征后得到的预测视频结果与实际的视频特征之间的匹配程度达到98%以上(误差小于2%)时,确定得到训练后的候选生成模型。
步骤307c,使用k组评测集评估训练后的候选生成模型的召回率。
在使用k组评测集对训练后的候选生成模型进行评估时,用户特征和视频特征的生成方式与训练过程完全相同。服务器将用户特征输入至训练后的候选生成模型,由该候选生成模型输出用户对各个视频的观看概率(感兴趣概率),然后将观看概率排列在top n的视频确定为候选推荐集,n为正整数。
然后,服务器检测候选推荐集中的各个视频是否落入用户帐号所观看的历史视频集(也即该用户帐号的视频特征中的视频);若落入该历史视频集中,则认为是成功召回;若未落入该历史视频集中,则未成功召回。服务器统计评测集中所有用户帐号的召回率,作为该候选生成模型的评估参数。
步骤307d,当训练后的候选生成模型的召回率达到第三结束阈值时,将训练后的候选生成模型确定为待使用的候选生成模型。
服务器检测该候选生成模型的召回率是否高于第三结束阈值;若召回率高于第三结束阈值,则将训练后的候选生成模型确定为待使用的候选生成模型;若召回率低于第三结束阈值,则将训练后的候选生成模型确定为不合格的候选生成模型,重新选取训练集进行继续训练。
其中,第三结束阈值是用于表示评估候选生成模型是满足上线使用条件的 模型的临界结束值。
综上所述,本实施例提供的方法,通过利用k组评测集对训练后的候选生成模型进行评估,当训练后的候选生成模型的召回率高于第三结束阈值时,才将训练后的候选生成模型确定为待使用的候选生成模型,从而保证训练后的候选生成模型在上线至生产系统时的性能。
上述用户特征可以用于基于DNN的候选生成模型的训练。在一个示意性的如图6示的例子中,候选生成模型可采用机器学习架构TensorFlow来实现。时序模块52负责从数据库51中提取出各个用户帐号的视频观看流水记录,该数据库51可以是用于存储视频观看流水记录的数据库,比如Boss日志系统。数据收集模块53(Data Collect)从视频观看流水记录中提取各个用户帐号的视频观看记录;一方面,数据收集模块53将各个用户帐号的视频观看记录交给用户帐号样本(user sample)模块54和用户嵌入矩阵(user embedding)模块55去生成用户特征;另一方面,数据收集模块54将各个用户帐号的视频观看记录交给视频特征样本(item sample)模块56和视频嵌入矩阵(user embedding)模块57去生成视频特征,各个用户帐号的用户特征和视频特征进一步给到NN召回样本(Recall Sample)模块58。NN召回模块58用于将各个用户帐号的用户特征和视频特征进行拼接加工,比如,将同一个用户帐号的用户特征和视频特征拼接为一组样本特征。多组样本特征构成用于输入至NN召回模块(Recall Module)59提供的DNN中,训练得到候选生成模型。
可选地,图构建模块(Building Graph)60负责把DNN训练过程中的中间结果上报到张量展示面板(Tensor Board)62,服务器根据张量展示面板62所得到的中间结果将DNN训练完毕。DNN训练完毕后得到的模型即为候选生成模型,模型保存/加载模块61用于保存训练后的候选生成模型,该候选生成模型用于模型评估成用户候选集列表。
可选地,除了用户特征和视频特征之外,数据收集模块53还可以收集用户基础属性65和用户检索历史66等属性特征,将这些属性特征通过其它特征样 本67和其它嵌入矩阵68来生成该用户的其它维度的特征,这些其它维度的特征也作为用于训练候选生成模型的参数之一,对候选生成模型进行训练。
为了评估候选生成模型的准确性,本申请实施例针对候选生成模型设计了评估模块63。示意性的,将样本特征分为N+1个历史分区,用前N个历史分区数据训练出候选生成模型,保存到训练完毕的模型文件,用第N+1历史分区数据来评估候选生成模型的准确性。需要注意的是,训练和评测过程的用户特征生成过程以及视频特征生成过程需要完全一致。其中,N为正整数。
在一些实施例中,用召回率指标来衡量候选生成模型的召回能力,从第N+1个分区中随机抽取出若干个用户,将每个用户的用户特征输入到候选生成模型中,之后我们从候选生成模型的输出层的输出结果中取出top k个结果作为候选集合,如果用户实际观看的视频落在top k的范围中,则认为成功召回,否则未召回,汇总所有用户的预测结果,最后得到总体的召回率。其中,k为正整数。
如下表一所示,其中训练集的样本分别有相应的用户集和视频集,若评测集中的用户特征集不在训练集,则该用户集看作“集外词”(OOV);若评测集中的视频特征集不在训练集,则该视频特征集看作集外词。通过实验结果可以看出当减小k的大小时,召回率会有相应的降低,当增加训练样本数据时,召回率会有相应的升高。其中,绝对召回率是指全集上的召回率;相关召回率是指非“集外词”集上的召回率。
表一
在一个示意性的例子中,本申请提供的技术方案可以应用在视频播放的新热点频道中,该频道的推荐结果主要由算法推荐和人工干预两部分组成,算法推荐部分由若干个算法召回模块组成。本技术方案在原有的召回模块基础上,增加了一路用户到视频(user to item,u2i)召回模块,该召回模块通过DNN模型针对每个用户会生成一个视频推荐列表。这样在DNN召回模块和其它已有召回模型的推荐结果合并到一起,再经过个性化排序最终展示给用户。该u2i召回模块的主要功能是应用深度学习的方法从海量的视频中,找出数百个视频,作为第一阶段的候选推荐视频。
本技术方案在深度学习得到的候选生成模型中,通过视频播放流水记录生成用户特征,降低了用户特征的生成成本。在A/B实验中,发明人在实验分桶中增加了该技术方案生成的u2i候选召回模块,并和基准分桶进行效果对比,实验结果表明实验分桶整体效果要优于基准分桶,在曝光人均VV效果上有大约1.25%的提升。在实验分桶中,发明人对比了该实验模块的效果和UCF(User Collaborative Filter,基于用户的协同过滤)算法模块的效果,通过对比发现,该算法模块在曝光人均VV指标上要明显优于UCF算法模块。
发明人在同一个实验分桶中对比了本技术方案和UCF算法模块的效果,结果如图7所示,横轴表示实验上线天数,纵轴为模块的曝光人均VV指标,可看出本技术方案效果要好于UCF算法模块。
图2、3和5为一个实施例中用户特征的生成方法的流程示意图。可以理解的是,虽然图2、3和5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、3和5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。可以理解的是,图 2、3和5中的方法可以由服务器或终端等电子设备单独来执行,也可以由终端和服务器共同来执行。
以下为本申请的装置实施例,对于装置实施例中未详细描述的技术细节,可以参考上述一一对应的方法实施例。
图8示出了本申请一个示例性实施例提供的用户特征的生成装置的框图。该生成装置可以通过软件、硬件或者两者的结合实现成为服务器的全部或一部分。该装置包括:
获取模块820,用于获取n组目标视频和用户帐号之间的时序对应关系,每组所述时序对应关系包括查看过所述目标视频的各个用户帐号,且所述用户帐号按照查看时间戳进行排序,n为正整数;
映射模块840,用于根据n组所述时序对应关系映射得到词嵌入矩阵,所述词嵌入矩阵包括每个所述用户帐号对应的词向量;
训练模块860,用于使用损失函数对所述词嵌入矩阵进行训练,所述损失函数用于根据观看历史的相似程度挖掘各个所述用户帐号之间的相似关系;
确定模块880,用于将训练完毕的所述词嵌入矩阵中的所述用户帐号对应的词向量,确定为所述用户帐号的用户特征。
在一个可选的实施例中,训练模块860,用于使用噪声对比估计损失函数对所述词嵌入矩阵进行训练。
在一个可选的实施例中,确定模块880,用于当所述噪声对比估计损失函数的函数值低于第一结束阈值时,将所述词嵌入矩阵中的所述用户帐号对应的词向量,确定为所述用户帐号的用户特征。
在一个可选的实施例中,映射模块840,用于将n组所述时序对应关系按照词向量映射方式进行映射,得到所述词嵌入矩阵。
在一个可选的实施例中,如图9所示,所述获取模块820包括:记录获取单元822和排序单元824;
所述记录获取单元822,用于获取m个用户帐号的视频查看历史记录,视 频查看历史记录包括目标视频的视频标识以及查看时间戳,m为正整数;目标视频为用户观看过的视频和搜索过的视频中的至少一种;
所述排序单元824,用于对于所述视频查看历史记录中的每个所述目标视频,将查看过所述目标视频的各个用户帐号按照对应的查看时间戳进行排序后,生成所述目标视频和所述用户帐号之间的时序对应关系。
在一个可选的实施例中,所述装置还包括:视频特征获取模块892和候选生成模型训练模块894,如图10所示。
视频特征获取模块892,用于获取历史记录中的视频标识,作为视频特征;历史记录为用户帐号的观看历史记录和搜索历史记录中的至少一种;
候选生成模型训练模块894,用于将所述用户特征和所述视频特征作为样本特征输入候选生成模型中进行训练,得到训练后的候选生成模型;
其中,所述训练后的候选生成模型用于根据输入的用户特征输出对视频库中各个视频的观看概率。
在一个可选的实施例中,所述装置还包括:评估模块896;
所述候选生成模型训练模块894,用于将所述用户特征和所述视频特征划分为h+k组数据集,所述h+k数据集包括h组训练集和k组评测集;将所述h组训练集中的所述用户特征和所述视频特征作为样本特征输入候选生成模型中进行训练,得到所述训练后的候选生成模型,h和k均为正整数;
所述评估模块896,用于使用所述k组评测集评估所述训练后的候选生成模型的召回率;当所述训练后的候选生成模型的召回率达到第二结束阈值时,将所述训练后的候选生成模型确定为待使用的候选生成模型。
图11示出了本申请一个示例性实施例中提供的服务器的框图,该服务器用于实施上述实施例中提供的关于服务器侧的用户特征的生成方法。具体来讲:
所述服务器1100包括中央处理单元(CPU)1101、包括随机存取存储器(RAM)1102和只读存储器(ROM)1103的系统存储器1104,以及连接系统存储器1104和中央处理单元1101的系统总线1105。所述服务器1100还包括帮助计算机内 的各个器件之间传输信息的基本输入/输出系统(I/O系统)1106,和用于存储操作系统1113、应用程序1114和其他程序模块1115的大容量存储设备1107。
所述基本输入/输出系统1106包括有用于显示信息的显示器1108和用于用户输入信息的诸如鼠标、键盘之类的输入设备1109。其中所述显示器1108和输入设备1109都通过连接到系统总线1105的输入输出控制器1110连接到中央处理单元1101。所述基本输入/输出系统1106还可以包括输入输出控制器1110以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1110还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1107通过连接到系统总线1105的大容量存储控制器(未示出)连接到中央处理单元1101。所述大容量存储设备1107及其相关联的计算机可读介质为服务器1100提供非易失性存储。也就是说,所述大容量存储设备1107可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,计算机可读存储介质包括以用于存储诸如计算机可读指令、数据结果、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机可读指令可存储于一非易失性计算机可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,非易失性存储器可包括只读存储器、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
上述的系统存储器1104和大容量存储设备1107可以统称为存储器。
根据本申请的各种实施例,所述服务器1100还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器1100可以通过连接在所述系统总线1105上的网络接口单元1111连接到网络1112,或者说,也可以使用网络接口单元1111来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。上述一个或者一个以上程序包含用于执行上述用户特征的生成方法的指令。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (20)
- 一种用户特征的生成方法,由服务器执行,所述方法包括:获取n组目标视频和用户帐号之间的时序对应关系,每组所述时序对应关系包括查看过所述目标视频的各个用户帐号,且所述用户帐号按照查看时间戳进行排序,n为正整数;根据n组所述时序对应关系映射得到词嵌入矩阵,所述词嵌入矩阵包括每个所述用户帐号对应的词向量;使用损失函数对所述词嵌入矩阵进行训练,所述损失函数用于根据观看历史的相似程度挖掘各个所述用户帐号之间的相似关系;将训练完毕的所述词嵌入矩阵中的所述用户帐号对应的词向量,确定为所述用户帐号的用户特征。
- 根据权利要求1所述的方法,其特征在于,所述使用损失函数对所述词嵌入矩阵进行训练,包括:使用噪声对比估计损失函数对所述词嵌入矩阵进行训练。
- 根据权利要求2所述的方法,其特征在于,所述将训练完毕的所述词嵌入矩阵中的所述用户帐号对应的词向量,确定为所述用户帐号的用户特征,包括:当所述噪声对比估计损失函数的函数值低于第一结束阈值时,将所述词嵌入矩阵中的所述用户帐号对应的词向量,确定为所述用户帐号的用户特征。
- 根据权利要求1至3任一所述的方法,其特征在于,所述根据n组所述时序对应关系映射得到词嵌入矩阵,包括:将n组所述时序对应关系按照词向量映射方式进行映射,得到所述词嵌入矩阵。
- 根据权利要求1至3任一所述的方法,其特征在于,所述获取n组目标视频和用户帐号之间的时序对应关系,包括:获取m个用户帐号的视频查看历史记录,所述视频查看历史记录包括目标视频的视频标识以及查看时间戳,m为正整数;所述目标视频为所述用户观看过的视频和搜索过的视频中的至少一种;对于所述视频查看历史记录中的每个所述目标视频,将查看过所述目标视频的各个用户帐号按照对应的查看时间戳进行排序后,生成所述目标视频和所述用户帐号之间的时序对应关系。
- 根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:获取历史记录中的视频标识,根据所述视频标识生成视频特征;所述历史记录为所述用户帐号的观看历史记录和搜索历史记录中的至少一种;将所述用户特征和所述视频特征作为样本特征输入候选生成模型中进行训练,得到训练后的候选生成模型;其中,所述训练后的候选生成模型用于根据输入的用户特征输出对视频库中各个视频的观看概率。
- 根据权利要求6所述的方法,其特征在于,所述将所述用户特征和所述视频特征作为样本特征输入候选生成模型中进行训练,得到训练后的候选生成模型,包括:将所述用户特征和所述视频特征划分为h+k组数据集,所述h+k数据集包括h组训练集和k组评测集,h和k均为正整数;将所述h组训练集中的所述用户特征和所述视频特征作为样本特征输入候选生成模型中进行训练,得到所述训练后的候选生成模型;所述方法,还包括:使用所述k组评测集评估所述训练后的候选生成模型的召回率;当所述训练后的候选生成模型的召回率达到第二结束阈值时,将所述训练后的候选生成模型确定为待使用的候选生成模型。
- 一种用户特征的生成装置,其特征在于,所述装置包括:获取模块,用于获取n组目标视频和用户帐号之间的时序对应关系,每组所述时序对应关系包括查看过所述目标视频的各个用户帐号,且所述用户帐号按照查看时间戳进行排序,n为正整数;映射模块,用于根据n组所述时序对应关系映射得到词嵌入矩阵,所述词 嵌入矩阵包括每个所述用户帐号对应的词向量;训练模块,用于使用损失函数对所述词嵌入矩阵进行训练,所述损失函数用于根据观看历史的相似程度挖掘各个所述用户帐号之间的相似关系;确定模块,用于将训练完毕的所述词嵌入矩阵中的所述用户帐号对应的词向量,确定为所述用户帐号的用户特征。
- 根据权利要求8所述的装置,其特征在于,所述训练模块,用于使用噪声对比估计损失函数对所述词嵌入矩阵进行训练。
- 根据权利要求9所述的装置,其特征在于,所述确定模块,用于当所述噪声对比估计损失函数的函数值低于第一结束阈值时,将所述词嵌入矩阵中的所述用户帐号对应的词向量,确定为所述用户帐号的用户特征。
- 根据权利要求8至10任一所述的装置,其特征在于,所述映射模块,用于将n组所述时序对应关系按照词向量映射方式进行映射,得到所述词嵌入矩阵。
- 根据权利要求8至10任一所述的装置,其特征在于,所述获取模块包括:记录获取单元和排序单元;所述记录获取单元,用于获取m个用户帐号的视频查看历史记录,所述视频查看历史记录包括目标视频的视频标识以及查看时间戳,m为正整数;所述目标视频为所述用户观看过的视频和搜索过的视频中的至少一种;所述排序单元,用于对于所述视频查看历史记录中的每个所述目标视频,将查看过所述目标视频的各个用户帐号按照对应的查看时间戳进行排序后,生成所述目标视频和所述用户帐号之间的时序对应关系。
- 根据权利要求8至10任一所述的装置,其特征在于,所述装置还包括:视频特征获取模块,用于获取历史记录中的视频标识,作为视频特征;所述历史记录为所述用户帐号的观看历史记录和搜索历史记录中的至少一种;候选生成模型训练模块,用于将所述用户特征和所述视频特征作为样本特 征输入候选生成模型中进行训练,得到训练后的候选生成模型;其中,所述训练后的候选生成模型用于根据输入的用户特征输出对视频库中各个视频的观看概率。
- 一种服务器,其特征在于,所述服务器包括:处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行,使得所述处理器执行以下步骤:获取n组目标视频和用户帐号之间的时序对应关系,每组所述时序对应关系包括查看过所述目标视频的各个用户帐号,且所述用户帐号按照查看时间戳进行排序,n为正整数;根据n组所述时序对应关系映射得到词嵌入矩阵,所述词嵌入矩阵包括每个所述用户帐号对应的词向量;使用损失函数对所述词嵌入矩阵进行训练,所述损失函数用于根据观看历史的相似程度挖掘各个所述用户帐号之间的相似关系;将训练完毕的所述词嵌入矩阵中的所述用户帐号对应的词向量,确定为所述用户帐号的用户特征。
- 根据权利要求14所述的服务器,其特征在于,所述计算机可读指令被所述处理器执行所述使得所述处理器在执行所述使用损失函数对所述词嵌入矩阵进行训练步骤时,使得处理器执行以下步骤:使用噪声对比估计损失函数对所述词嵌入矩阵进行训练。
- 根据权利要求14所述的服务器,其特征在于,所述计算机可读指令被所述处理器执行所述根据n组所述时序对应关系映射得到词嵌入矩阵步骤时,使得处理器执行以下步骤:将n组所述时序对应关系按照词向量映射方式进行映射,得到所述词嵌入矩阵。
- 根据权利要求14所述的服务器,其特征在于,所述计算机可读指令被 所述处理器执行所述获取n组目标视频和用户帐号之间的时序对应关系步骤时,使得处理器执行以下步骤:获取m个用户帐号的视频查看历史记录,所述视频查看历史记录包括目标视频的视频标识以及查看时间戳,m为正整数;所述目标视频为所述用户观看过的视频和搜索过的视频中的至少一种;对于所述视频查看历史记录中的每个所述目标视频,将查看过所述目标视频的各个用户帐号按照对应的查看时间戳进行排序后,生成所述目标视频和所述用户帐号之间的时序对应关系。
- 一种计算机可读存储介质,其特征在于,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行,使得所述处理器执行以下步骤:获取n组目标视频和用户帐号之间的时序对应关系,每组所述时序对应关系包括查看过所述目标视频的各个用户帐号,且所述用户帐号按照查看时间戳进行排序,n为正整数;根据n组所述时序对应关系映射得到词嵌入矩阵,所述词嵌入矩阵包括每个所述用户帐号对应的词向量;使用损失函数对所述词嵌入矩阵进行训练,所述损失函数用于根据观看历史的相似程度挖掘各个所述用户帐号之间的相似关系;将训练完毕的所述词嵌入矩阵中的所述用户帐号对应的词向量,确定为所述用户帐号的用户特征。
- 根据权利要求18所述的计算机可读存储介质,其特征在于,所述计算机可读指令被所述处理器执行所述使得所述处理器在执行所述使用损失函数对所述词嵌入矩阵进行训练步骤时,使得处理器执行以下步骤:使用噪声对比估计损失函数对所述词嵌入矩阵进行训练。
- 根据权利要求18所述的计算机可读存储介质,其特征在于,所述计算 机可读指令被所述处理器执行所述根据n组所述时序对应关系映射得到词嵌入矩阵步骤时,使得处理器执行以下步骤:将n组所述时序对应关系按照词向量映射方式进行映射,得到所述词嵌入矩阵。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19830402.4A EP3819821B1 (en) | 2018-07-04 | 2019-06-10 | User feature generating method, device, and apparatus, and computer-readable storage medium |
US16/991,983 US11122333B2 (en) | 2018-07-04 | 2020-08-12 | User feature generation method and apparatus, device, and computer-readable storage medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810724443.3A CN108921221B (zh) | 2018-07-04 | 2018-07-04 | 用户特征的生成方法、装置、设备及存储介质 |
CN201810724443.3 | 2018-07-04 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/991,983 Continuation US11122333B2 (en) | 2018-07-04 | 2020-08-12 | User feature generation method and apparatus, device, and computer-readable storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020007164A1 true WO2020007164A1 (zh) | 2020-01-09 |
Family
ID=64425470
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2019/090559 WO2020007164A1 (zh) | 2018-07-04 | 2019-06-10 | 用户特征的生成方法、装置、设备及计算机可读存储介质 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11122333B2 (zh) |
EP (1) | EP3819821B1 (zh) |
CN (1) | CN108921221B (zh) |
TW (1) | TWI702844B (zh) |
WO (1) | WO2020007164A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112685578A (zh) * | 2020-12-25 | 2021-04-20 | 刘亚虹 | 一种多媒体信息内容提供方法及装置 |
CN113268645A (zh) * | 2021-05-07 | 2021-08-17 | 北京三快在线科技有限公司 | 信息召回方法、模型训练方法、装置、设备及存储介质 |
CN113344062A (zh) * | 2021-05-31 | 2021-09-03 | 北京达佳互联信息技术有限公司 | 异常帐户识别方法、装置、服务器及存储介质 |
CN114173138A (zh) * | 2021-10-22 | 2022-03-11 | 武汉斗鱼网络科技有限公司 | 一种处理异常视频up主的方法、装置、介质及设备 |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108921221B (zh) | 2018-07-04 | 2022-11-18 | 腾讯科技(深圳)有限公司 | 用户特征的生成方法、装置、设备及存储介质 |
CN109960761B (zh) * | 2019-03-28 | 2023-03-31 | 深圳市雅阅科技有限公司 | 信息推荐方法、装置、设备及计算机可读存储介质 |
CN110012356B (zh) * | 2019-04-16 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 视频推荐方法、装置和设备及计算机存储介质 |
CN111784377B (zh) * | 2019-04-25 | 2024-06-18 | 北京京东尚科信息技术有限公司 | 用于生成信息的方法和装置 |
CN110069663B (zh) * | 2019-04-29 | 2021-06-04 | 厦门美图之家科技有限公司 | 视频推荐方法及装置 |
CN110083688B (zh) * | 2019-05-10 | 2022-03-25 | 北京百度网讯科技有限公司 | 搜索结果召回方法、装置、服务器及存储介质 |
CN110162703A (zh) * | 2019-05-13 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 内容推荐方法、训练方法、装置、设备及存储介质 |
CN110928913B (zh) * | 2019-12-09 | 2023-10-03 | 腾讯科技(深圳)有限公司 | 用户显示方法、装置、计算机设备及计算机可读存储介质 |
CN111210233B (zh) * | 2020-01-02 | 2023-12-26 | 联想(北京)有限公司 | 用户特征确定方法、装置和电子设备 |
CN111310038B (zh) * | 2020-02-06 | 2022-09-02 | 腾讯科技(深圳)有限公司 | 信息推荐方法、装置、电子设备及计算机可读存储介质 |
CN111291904B (zh) * | 2020-02-06 | 2023-04-18 | 腾讯科技(深圳)有限公司 | 偏好预测方法、装置及计算机设备 |
CN111782959B (zh) * | 2020-07-20 | 2023-07-14 | 深圳市与飞科技有限公司 | 用户画像更新方法、装置、计算机设备及存储介质 |
JP7512759B2 (ja) * | 2020-08-14 | 2024-07-09 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置、文書管理システムおよびプログラム |
CN112148973B (zh) * | 2020-09-04 | 2023-11-07 | 京东科技控股股份有限公司 | 一种信息推送的数据处理方法及装置 |
CN112015439B (zh) * | 2020-09-21 | 2024-01-12 | 北京百度网讯科技有限公司 | 用户app兴趣的嵌入方法、装置、设备以及存储介质 |
CN112818231A (zh) * | 2021-01-29 | 2021-05-18 | 北京奇艺世纪科技有限公司 | 信息投放方法、装置、电子设备及存储介质 |
CN113010670B (zh) * | 2021-02-22 | 2023-09-19 | 腾讯科技(深圳)有限公司 | 账号信息聚类方法、检测方法、装置及存储介质 |
CN113038163B (zh) * | 2021-03-26 | 2023-06-23 | 百果园技术(新加坡)有限公司 | 用户体验模型训练方法、短视频用户体验评估方法及装置 |
CN112905897B (zh) * | 2021-03-30 | 2022-09-09 | 杭州网易云音乐科技有限公司 | 相似用户确定方法、向量转化模型、装置、介质及设备 |
CN113094506B (zh) * | 2021-04-14 | 2023-08-18 | 每日互动股份有限公司 | 一种基于关系图谱的预警方法、计算机设备及存储介质 |
CN113536113A (zh) * | 2021-06-18 | 2021-10-22 | 深圳市点购电子商务控股股份有限公司 | 短视频推荐的方法、装置、计算机设备和存储介质 |
CN113590960A (zh) * | 2021-08-02 | 2021-11-02 | 掌阅科技股份有限公司 | 用户识别模型训练方法、电子设备及计算机存储介质 |
CN113905135B (zh) * | 2021-10-14 | 2023-10-20 | 天津车之家软件有限公司 | 一种智能外呼机器人的用户意向识别方法和装置 |
CN116796290B (zh) * | 2023-08-23 | 2024-03-29 | 江西尚通科技发展有限公司 | 一种对话意图识别方法、系统、计算机及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677715A (zh) * | 2015-12-29 | 2016-06-15 | 海信集团有限公司 | 一种基于多用户的视频推荐方法及装置 |
CN106228386A (zh) * | 2016-07-12 | 2016-12-14 | 腾讯科技(深圳)有限公司 | 一种信息推送方法及装置 |
US20170048184A1 (en) * | 2015-08-10 | 2017-02-16 | Google Inc. | Privacy aligned and personalized social media content sharing recommendations |
CN106454423A (zh) * | 2016-12-15 | 2017-02-22 | 暴风集团股份有限公司 | 根据历史观看记录进行视频推送的方法和系统 |
CN106599226A (zh) * | 2016-12-19 | 2017-04-26 | 深圳大学 | 一种内容推荐方法及内容推荐系统 |
CN108921221A (zh) * | 2018-07-04 | 2018-11-30 | 腾讯科技(深圳)有限公司 | 用户特征的生成方法、装置、设备及存储介质 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9286294B2 (en) * | 1992-12-09 | 2016-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content suggestion engine |
US6560578B2 (en) * | 1999-03-12 | 2003-05-06 | Expanse Networks, Inc. | Advertisement selection system supporting discretionary target market characteristics |
JP4380524B2 (ja) * | 2004-12-17 | 2009-12-09 | ソニー株式会社 | 情報処理装置及び情報処理方法 |
FI20050149A0 (fi) * | 2005-02-09 | 2005-02-09 | Nokia Corp | Push-toiminnan ohjaus viestintäjärjestelmässä |
US8027977B2 (en) * | 2007-06-20 | 2011-09-27 | Microsoft Corporation | Recommending content using discriminatively trained document similarity |
KR20100055712A (ko) * | 2008-11-18 | 2010-05-27 | 한국전자통신연구원 | 개인 맞춤형 컨텐트 추천 방법 및 장치 |
US8108406B2 (en) * | 2008-12-30 | 2012-01-31 | Expanse Networks, Inc. | Pangenetic web user behavior prediction system |
US20110184807A1 (en) * | 2010-01-28 | 2011-07-28 | Futurewei Technologies, Inc. | System and Method for Filtering Targeted Advertisements for Video Content Delivery |
US9179171B2 (en) * | 2011-11-30 | 2015-11-03 | Verizon Patent And Licensing Inc. | Content recommendation for a unified catalog |
EP2645324A1 (en) * | 2012-03-30 | 2013-10-02 | Sony Corporation | Method for recommending items and recommendation system |
CN104270598A (zh) * | 2014-09-22 | 2015-01-07 | 深圳市邦彦信息技术有限公司 | 一种将视频推送到指定成员的视频会议方法及系统 |
US10050912B2 (en) * | 2014-10-27 | 2018-08-14 | At&T Intellectual Property I, L.P. | Subscription-based media push service |
CN106331778B (zh) * | 2015-07-06 | 2020-08-14 | 腾讯科技(深圳)有限公司 | 视频推荐方法和装置 |
US10180968B2 (en) * | 2015-07-23 | 2019-01-15 | Netflix, Inc. | Gaussian ranking using matrix factorization |
US10878029B2 (en) * | 2015-09-10 | 2020-12-29 | Adobe Inc. | Incorporating social-network connections information into estimated user-ratings of videos for video recommendations |
US10341728B2 (en) * | 2015-12-30 | 2019-07-02 | Sling Media L.L.C. | Media systems for temporally and contextually relevant recommendations |
US10861045B2 (en) * | 2016-09-07 | 2020-12-08 | Tivo Solutions Inc. | Automatically labeling clusters of media content consumers |
US20200036462A1 (en) * | 2016-09-09 | 2020-01-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Prediction Method And Device |
CN108062342A (zh) * | 2016-11-08 | 2018-05-22 | 北京国双科技有限公司 | 应用程序的推荐方法及装置 |
US10614381B2 (en) * | 2016-12-16 | 2020-04-07 | Adobe Inc. | Personalizing user experiences with electronic content based on user representations learned from application usage data |
WO2018112696A1 (zh) * | 2016-12-19 | 2018-06-28 | 深圳大学 | 一种内容推荐方法及内容推荐系统 |
CN106815311B (zh) * | 2016-12-21 | 2021-08-06 | 杭州朗和科技有限公司 | 一种问题匹配方法和装置 |
CN107436942A (zh) * | 2017-07-28 | 2017-12-05 | 广州市香港科大霍英东研究院 | 基于社交媒体的词嵌入方法、系统、终端设备及存储介质 |
CN107515909B (zh) * | 2017-08-11 | 2020-05-19 | 深圳市云网拜特科技有限公司 | 一种视频推荐方法及系统 |
CN107894998B (zh) * | 2017-10-24 | 2019-04-26 | 迅雷计算机(深圳)有限公司 | 视频推荐方法及装置 |
CN107977355A (zh) * | 2017-11-17 | 2018-05-01 | 四川长虹电器股份有限公司 | 基于词向量训练的电视节目推荐方法 |
US11244326B2 (en) * | 2018-03-06 | 2022-02-08 | Verizon Media Inc. | Analytical precursor mining for personalized recommendation |
-
2018
- 2018-07-04 CN CN201810724443.3A patent/CN108921221B/zh active Active
-
2019
- 2019-06-10 EP EP19830402.4A patent/EP3819821B1/en active Active
- 2019-06-10 WO PCT/CN2019/090559 patent/WO2020007164A1/zh active Application Filing
- 2019-06-10 TW TW108119940A patent/TWI702844B/zh active
-
2020
- 2020-08-12 US US16/991,983 patent/US11122333B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170048184A1 (en) * | 2015-08-10 | 2017-02-16 | Google Inc. | Privacy aligned and personalized social media content sharing recommendations |
CN105677715A (zh) * | 2015-12-29 | 2016-06-15 | 海信集团有限公司 | 一种基于多用户的视频推荐方法及装置 |
CN106228386A (zh) * | 2016-07-12 | 2016-12-14 | 腾讯科技(深圳)有限公司 | 一种信息推送方法及装置 |
CN106454423A (zh) * | 2016-12-15 | 2017-02-22 | 暴风集团股份有限公司 | 根据历史观看记录进行视频推送的方法和系统 |
CN106599226A (zh) * | 2016-12-19 | 2017-04-26 | 深圳大学 | 一种内容推荐方法及内容推荐系统 |
CN108921221A (zh) * | 2018-07-04 | 2018-11-30 | 腾讯科技(深圳)有限公司 | 用户特征的生成方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
See also references of EP3819821A4 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112685578A (zh) * | 2020-12-25 | 2021-04-20 | 刘亚虹 | 一种多媒体信息内容提供方法及装置 |
CN113268645A (zh) * | 2021-05-07 | 2021-08-17 | 北京三快在线科技有限公司 | 信息召回方法、模型训练方法、装置、设备及存储介质 |
CN113344062A (zh) * | 2021-05-31 | 2021-09-03 | 北京达佳互联信息技术有限公司 | 异常帐户识别方法、装置、服务器及存储介质 |
CN113344062B (zh) * | 2021-05-31 | 2024-03-22 | 北京达佳互联信息技术有限公司 | 异常帐户识别方法、装置、服务器及存储介质 |
CN114173138A (zh) * | 2021-10-22 | 2022-03-11 | 武汉斗鱼网络科技有限公司 | 一种处理异常视频up主的方法、装置、介质及设备 |
CN114173138B (zh) * | 2021-10-22 | 2023-08-22 | 广州新特珑电子有限公司 | 一种处理异常视频up主的方法、装置、介质及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN108921221B (zh) | 2022-11-18 |
CN108921221A (zh) | 2018-11-30 |
TWI702844B (zh) | 2020-08-21 |
EP3819821A4 (en) | 2021-06-09 |
US20200374589A1 (en) | 2020-11-26 |
EP3819821A1 (en) | 2021-05-12 |
US11122333B2 (en) | 2021-09-14 |
EP3819821B1 (en) | 2023-07-05 |
TW202007178A (zh) | 2020-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020007164A1 (zh) | 用户特征的生成方法、装置、设备及计算机可读存储介质 | |
US20210027160A1 (en) | End-to-end deep collaborative filtering | |
CN109547814B (zh) | 视频推荐方法、装置、服务器及存储介质 | |
CN111966914B (zh) | 基于人工智能的内容推荐方法、装置和计算机设备 | |
US20210056458A1 (en) | Predicting a persona class based on overlap-agnostic machine learning models for distributing persona-based digital content | |
US20190373297A1 (en) | Predicting digital personas for digital-content recommendations using a machine-learning-based persona classifier | |
US20180067910A1 (en) | Compiling Documents Into A Timeline Per Event | |
WO2022105129A1 (zh) | 内容数据推荐方法、装置、计算机设备及存储介质 | |
CN109511015B (zh) | 多媒体资源推荐方法、装置、存储介质及设备 | |
US20230066853A1 (en) | Method and apparatus for training information prediction models, method and apparatus for predicting information, and storage medium and device thereof | |
CN110413867B (zh) | 用于内容推荐的方法及系统 | |
CN112749330B (zh) | 信息推送方法、装置、计算机设备和存储介质 | |
CN111858969B (zh) | 多媒体数据推荐方法、装置、计算机设备和存储介质 | |
CN112989179B (zh) | 模型训练、多媒体内容推荐方法和装置 | |
CN112883265A (zh) | 信息推荐方法、装置、服务器及计算机可读存储介质 | |
CN111177500A (zh) | 数据对象分类方法、装置、计算机设备和存储介质 | |
CN114817692A (zh) | 确定推荐对象的方法、装置和设备及计算机存储介质 | |
Margaris et al. | Enhancing rating prediction quality through improving the accuracy of detection of shifts in rating practices | |
CN114491093B (zh) | 多媒体资源推荐、对象表征网络的生成方法及装置 | |
CN115222112A (zh) | 一种行为预测方法、行为预测模型的生成方法及电子设备 | |
CN114741540A (zh) | 一种多媒体序列推荐方法、操作预测模型训练方法、装置、设备及存储介质 | |
CN114912031A (zh) | 基于聚类和协同过滤的混合推荐方法和系统 | |
Werner-Stark et al. | A Heuristic Method to Recommendation Systems | |
CN112231546A (zh) | 异构文档的排序方法、异构文档排序模型训练方法及装置 | |
CN114048392B (zh) | 多媒体资源推送方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19830402 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2019830402 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2019830402 Country of ref document: EP Effective date: 20210204 |