Model training method and device, recall method and device, equipment and storage medium

By training the recall model, and adjusting parameters using the blog post popularity and user preference prediction module, the problem of poor recall results caused by the independence of multiple recall models is solved, and more efficient recall effects and model inference efficiency are achieved.

CN119537911APending Publication Date: 2025-02-28MICRO DREAM TECHTRONIC NETWORK TECH CHINACO
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411544531.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-31
Publication Date
2025-02-28

AI Technical Summary

Technical Problem

The existing multiplexed recall model has poor recall results due to independence, which wastes model training and inference costs, and the overall recall effect cannot be improved.

Method used

By obtaining training samples and sample labels, the blog post popularity prediction module and user preference prediction module of the initial recall model are calculated to adjust the model parameters until converge, and the recall model is obtained.

Benefits of technology

It improves the recall effect of multiple recalls, decouples the interaction and correlation between different recalls, solves the problem of incomplete utilization of model version and single model modeling information, and improves the model inference efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119537911A_ABST
    Figure CN119537911A_ABST
Patent Text Reader

Abstract

The invention provides a model training method and device, a model recall method and device, equipment and a storage medium, and the training method comprises the steps: obtaining a training sample and a sample label, the training sample comprises user features of a sample user, and blog article features and blogger features of a sample blog article exposed to the sample user; the sample label represents whether the sample blog article is clicked by a sample user or not and the reason that the sample blog article is clicked; according to the blog article features, determining a blog article popularity score through a blog article popularity prediction module of an initial recall model; determining a user preference score through a user preference prediction module of the model according to the user features, the blog article features and the blogger features; determining a recall prediction result of the sample blog article according to the blog article popularity score and the user preference score; according to the recall prediction result, the blog article popularity score, the user preference score and the sample label, calculating a loss value to adjust model parameters until the model converges, and obtaining a recall model. According to the invention, the recall effect of multi-path recall can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer processing technology, and in particular to a model training method, a recall method, an apparatus, a device and a storage medium. Background Art

[0002] The retrieval model mainly recalls thousands of blog posts from a large set of candidate blog posts, and then inputs them into the downstream sorting model. The sorting model finely sorts and scores the recall results, and finally selects the blog posts that best meet the user's current needs and displays them to the user.

[0003] In related technologies, single-channel recall models often have certain limitations in their own performance, resulting in poor recall effects. Therefore, the recommendation system can adopt a multi-channel recall method, that is, using multiple single-channel recall models to perform recalls separately, and then summarizing the blog posts recalled by each single-channel recall model and inputting them into the downstream ranking model. However, since multiple single-channel recall models are independent of each other, the recall effects of these models may have similar problems, which not only wastes model training and inference costs, but also the overall recall effect of multiple single-channel recall models cannot be improved compared to a single model, and the overall recall effect is poor. Summary of the invention

[0004] The present application provides a model training method, a recall method, an apparatus, a device and a storage medium, which can improve the recall effect of multi-channel recall.

[0005] In a first aspect, the present application provides a training method for a recall model, comprising: obtaining training samples and sample labels corresponding to the training samples, the training samples comprising user characteristics of sample users and blog post characteristics and blogger characteristics of sample blog posts exposed to the sample users, the sample labels representing whether the sample blog posts are clicked by the sample users and the reasons why the sample blog posts are clicked; determining a blog post heat score through a blog post heat prediction module of an initial recall model based on the blog post characteristics, the blog post heat score representing the popularity of the sample blog post; determining a user preference score through a user preference prediction module of an initial recall model based on user characteristics, blog post characteristics and blogger characteristics, the user preference score representing the degree of preference of the sample user for the sample blog post; determining a recall prediction result of the sample blog post through an output module of an initial recall model based on the blog post heat score and the user preference score; calculating a loss value to adjust the parameters of the initial recall model through the recall prediction result, the blog post heat score, the user preference score, and the sample labels corresponding to the training samples, until the initial recall model converges to obtain a recall model.

[0006] In some possible implementations, the user preference prediction module includes a first preference prediction submodule and a second preference prediction submodule, and the user preference score includes a first preference score and a second preference score; the user preference score is determined by the user preference prediction module of the initial recall model according to user characteristics, blog post characteristics, and blogger characteristics, including: determining a first preference score by the first preference prediction submodule according to user characteristics and blog post characteristics, the first preference score representing the degree of preference of the sample user for the sample blog post; determining a second preference score by the second preference prediction submodule according to user characteristics and blogger characteristics, the second preference score representing the degree of preference of the sample user for the blogger corresponding to the sample blog post.

[0007] In some possible implementations, the recall prediction result of the sample blog post is determined through the output module of the initial recall model according to the blog post popularity score and the user preference score, including: determining a first weight value, a second weight value and a third weight value through the output module according to user characteristics, the first weight value representing the weight of the blog post popularity, the second weight value representing the weight of the user's preference for the blog post, and the third weight value representing the weight of the user's preference for the blogger; performing weighted summation of the blog post popularity score, the first preference score and the second preference score according to the first weight value, the second weight value and the third weight value through the output module to obtain a recall prediction result.

[0008] In some possible implementations, the sample label includes a click label indicating whether the sample blog post is clicked by a sample user, a blog post heat label of the sample blog post, and a user preference label of the sample blog post, wherein the blog post heat label indicates whether the reason why the sample blog post is clicked is the blog post heat, and the user preference label indicates whether the reason why the sample blog post is clicked is the user preference; the loss value is calculated through the recall prediction result, the blog post heat score, the user preference score, and the sample label corresponding to the training sample to adjust the parameters of the initial recall model until the initial recall model converges to obtain the recall model, including: determining a first loss value of the initial recall model according to the recall prediction result and the click label of the sample blog post; determining a total loss value of the initial recall model according to the first loss value, the blog post heat score, the user preference score, the blog post heat label of the sample blog post, and the user preference label of the sample blog post; adjusting the parameters of the initial recall model according to the total loss value until the initial recall model converges to obtain the recall model.

[0009] In some possible implementations, the user preference tag includes a user preference sub-tag for a blog post and a user preference sub-tag for a blogger; the total loss value of the initial recall model is determined based on the first loss value, the blog post heat score, the user preference score, the blog post heat tag of the sample blog post, and the user preference tag of the sample user, including: determining a second loss value through a blog post heat prediction module based on the blog post heat score and the blog post heat tag of the sample blog post; determining a third loss value through a first preference prediction sub-module based on the first preference score and the user preference sub-tag of the sample blog post for the blog post; determining a fourth loss value through a second preference prediction sub-module based on the second preference score and the user preference sub-tag of the sample blog post for the blogger; and determining a total loss value based on the first loss value, the second loss value, the third loss value, and the fourth loss value.

[0010] In a second aspect, the present application provides a recall model, the method comprising: obtaining user characteristics of a target user and post characteristics and blogger characteristics of multiple candidate blog posts; determining a recall prediction result for each candidate blog post through a recall model based on the user characteristics, post characteristics and blogger characteristics, the recall model being trained based on the method described in the first aspect; and recalling a target blog post from multiple candidate blog posts based on the recall prediction result.

[0011] In some possible implementations, the recall prediction result of each candidate blog post is determined through a recall model based on user characteristics, blog post characteristics, and blogger characteristics, including: for any candidate blog post, based on the blog post characteristics, the blog post heat score is determined through the blog post heat prediction module of the recall model, and the blog post heat score represents the popularity of the candidate blog post; based on the user characteristics, blog post characteristics, and blogger characteristics, the user preference score is determined through the user preference prediction module of the recall model, and the user preference score represents the target user's preference for the candidate blog post; based on the blog post heat score and the user preference score, the recall prediction result of the candidate blog post is determined through the output module of the recall model.

[0012] In some possible implementations, the user preference prediction module includes a first preference prediction submodule and a second preference prediction submodule, and the user preference score includes a first preference score and a second preference score; the user preference score is determined by the user preference prediction module of the recall model according to user characteristics, blog post characteristics, and blogger characteristics, including: determining a first preference score by the first preference prediction submodule according to user characteristics and blog post characteristics, the first preference score representing the target user's preference for the candidate blog post; determining a second preference score by the second preference prediction submodule according to user characteristics and blogger characteristics, the second preference score representing the target user's preference for the blogger corresponding to the candidate blog post.

[0013] In some possible implementations, the recall prediction result of the candidate blog post is determined through the output module of the recall model according to the blog post popularity score and the user preference score, including: determining a first weight value, a second weight value and a third weight value through the output module according to user characteristics, the first weight value representing the weight of the blog post popularity, the second weight value representing the weight of the user's preference for the blog post, and the third weight value representing the weight of the user's preference for the blogger; performing weighted summation of the blog post popularity score, the first preference score and the second preference score according to the first weight value, the second weight value and the third weight value through the output module to obtain a recall prediction result.

[0014] In a third aspect, the present application provides a training device for a recall model, the device comprising: a first acquisition module, used to acquire training samples and sample labels corresponding to the training samples, the training samples comprising user characteristics of sample users and blog post characteristics and blogger characteristics of sample blog posts exposed to the sample users, the sample labels representing whether the sample blog posts are clicked by the sample users and the reasons why the sample blog posts are clicked; a first determination module, used to determine a blog post heat score according to the blog post characteristics through a blog post heat prediction module of an initial recall model, the blog post heat score representing the popularity of the sample blog post; a second determination module, used to The first module is used to determine the user preference score through the user preference prediction module of the initial recall model according to the user characteristics, blog post characteristics and blogger characteristics, and the user preference score represents the degree of preference of the sample user for the sample blog post; the second module is used to determine the recall prediction result of the sample blog post through the output module of the initial recall model according to the blog post popularity score and the user preference score; the third module is used to calculate the loss value through the recall prediction result, the blog post popularity score, the user preference score, and the sample label corresponding to the training sample to adjust the parameters of the initial recall model until the initial recall model converges to obtain the recall model.

[0015] In some possible implementations, the user preference prediction module includes a first preference prediction submodule and a second preference prediction submodule, and the user preference score includes a first preference score and a second preference score; the second determination module is further used to: determine the first preference score through the first preference prediction submodule based on user characteristics and blog post characteristics, and the first preference score represents the degree of preference of the sample user for the sample blog post; determine the second preference score through the second preference prediction submodule based on user characteristics and blogger characteristics, and the second preference score represents the degree of preference of the sample user for the blogger corresponding to the sample blog post, and the user preference score includes the first preference score and the second preference score.

[0016] In some possible implementations, the third determination module is also used to: determine the first weight value, the second weight value and the third weight value through the output module according to user characteristics, the first weight value represents the weight of the blog post popularity, the second weight value represents the weight of the user's preference for the blog post, and the third weight value represents the weight of the user's preference for the blogger; according to the first weight value, the second weight value and the third weight value, perform weighted summation of the blog post popularity score, the first preference score and the second preference score through the output module to determine the recall prediction result, and the user preference score includes the first preference score and the second preference score.

[0017] In some possible implementations, the sample label includes a click label indicating whether the sample blog post is clicked by the sample user, a blog post heat label of the sample blog post, and a user preference label of the sample blog post, the blog post heat label characterizing whether the reason why the sample blog post is clicked is the blog post heat, and the user preference label characterizing whether the reason why the sample blog post is clicked is the user preference; the parameter adjustment module includes: a first determination unit, used to determine the first loss value of the initial recall model according to the recall prediction result and the click label of the sample blog post; a second determination unit, used to determine the total loss value of the initial recall model according to the first loss value, the blog post heat score, the user preference score, the blog post heat label of the sample blog post, and the user preference label of the sample blog post; a parameter adjustment unit, used to adjust the parameters of the initial recall model through the total loss value until the initial recall model converges to obtain the recall model.

[0018] In some possible implementations, the user preference tag includes a user preference sub-tag for a blog post and a user preference sub-tag for a blogger; the second determination unit is further used to: determine a second loss value through a blog post heat prediction module based on a blog post heat score and a blog post heat tag of a sample blog post; determine a third loss value through a first preference prediction sub-module based on a first preference score and a user preference sub-tag for a blog post of a sample blog post; determine a fourth loss value through a second preference prediction sub-module based on a second preference score and a user preference sub-tag for a blogger of a sample blog post; and determine a total loss value based on the first loss value, the second loss value, the third loss value, and the fourth loss value.

[0019] In a fourth aspect, the present application provides a recall device, which includes: a second acquisition module, used to obtain user characteristics of a target user and blog post characteristics and blogger characteristics of multiple candidate blog posts; a fourth determination module, used to determine the recall prediction result of each candidate blog post through a recall model based on the user characteristics, blog post characteristics and blogger characteristics; a recall module, used to recall the target blog post from multiple candidate blog posts based on the recall prediction result.

[0020] In some possible implementations, the fourth determination module includes: a third determination unit, used to determine, for any candidate blog post, a blog post heat score through a blog post heat prediction module of a recall model according to the blog post features, wherein the blog post heat score represents the popularity of the candidate blog post; a fourth determination unit, used to determine a user preference score through a user preference prediction module of a recall model according to user features, blog post features, and blogger features, wherein the user preference score represents the target user's preference for the candidate blog post; a fifth determination unit, used to determine the recall prediction result of the candidate blog post through the output module of the recall model according to the blog post heat score and the user preference score.

[0021] In some possible implementations, the user preference prediction module includes a first preference prediction submodule and a second preference prediction submodule, and the user preference score includes a first preference score and a second preference score; the fourth determination unit is also used to: determine the first preference score through the first preference prediction submodule based on user characteristics and blog post characteristics, the first preference score represents the target user's preference for the candidate blog post; determine the second preference score through the second preference prediction submodule based on user characteristics and blogger characteristics, the second preference score represents the target user's preference for the blogger corresponding to the candidate blog post, and the user preference score includes the first preference score and the second preference score.

[0022] In some possible implementations, the fifth determination unit is also used to: determine a first weight value, a second weight value, and a third weight value through an output module according to user characteristics, the first weight value representing the weight of the blog post popularity, the second weight value representing the weight of the user's preference for the blog post, and the third weight value representing the weight of the user's preference for the blogger; and perform weighted summation of the blog post popularity score, the first preference score, and the second preference score according to the first weight value, the second weight value, and the third weight value through the output module to obtain a recall prediction result.

[0023] In a fifth aspect, the present application provides an electronic device, comprising: a memory for storing executable instructions; and a processor for executing the executable instructions stored in the memory to implement the method provided by the present application.

[0024] In a sixth aspect, the present application provides a computer-readable storage medium storing executable instructions for implementing the method provided in the present application when the executable instructions are executed by a processor.

[0025] In a seventh aspect, the present application provides a computer program product, including a computer program or instructions, which are used to implement the method provided by the present application when the computer program or instructions are executed by a processor.

[0026] This application has the following beneficial effects:

[0027] In this application, firstly, the training samples and the sample labels corresponding to the training samples are obtained, and then the blog post heat score is determined by the blog post heat prediction module of the initial recall model according to the blog post features of the sample blog posts in the training samples; then, the user preference score is determined by the user preference prediction module of the initial recall model according to the user features of the sample users in the training samples and the blogger features of the sample blog posts; according to the blog post heat score and the user preference score, the recall prediction result of the sample blog post is determined by the output module of the initial recall model; through the recall prediction result, the blog post heat score, the user preference score and the sample labels corresponding to the training samples, the loss value is calculated to adjust the parameters of the initial recall model until the initial recall model converges to obtain the recall model. The sample label characterizes whether the sample blog post is clicked by the sample user and the reason why the sample blog post is clicked. The embodiment of this application attributes the user's click behavior on the blog post to the heat of the blog post itself and the user preference. After predicting the score of the sample blog post through these two ways respectively, the total recall prediction result is obtained based on the two-way score. Therefore, this application alleviates the interaction and association between different recall loops through a multi-channel recall joint modeling approach, solves the problem of incomplete utilization of model versions and single model modeling information, and at the same time realizes multi-channel recall decoupling, improves the recall effect of multi-channel recall, and improves the inference efficiency of the model. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] Figure 1 It is a schematic diagram of the architecture of the training and recall system framework for the recall model provided in the embodiment of the present application;

[0029] Figure 2 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application;

[0030] Figure 3 It is a flowchart of a training method for a recall model provided in an embodiment of the present application;

[0031] Figure 4 It is a schematic diagram of the architecture of the recall model provided in the embodiment of the present application;

[0032] Figure 5 is a flowchart of a recall method provided in an embodiment of the present application;

[0033] Figure 6 It is a structural schematic diagram of a training device for a recall model provided in an embodiment of the present application;

[0034] Figure 7 It is a schematic diagram of the structure of the recall device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0035] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings. The described embodiments should not be regarded as limiting the present application. All other embodiments obtained by ordinary technicians in the field without making creative work are within the scope of protection of this application.

[0036] In the following description, reference is made to “some embodiments”, which describe a subset of all possible embodiments, but it can be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0037] If similar descriptions of "first / second" appear in the application documents, the following explanation is added. In the following description, the terms "first / second / third" involved are merely to distinguish similar objects and do not represent a specific ordering of the objects. It can be understood that "first / second / third" can be interchanged in a specific order or sequence where permitted, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.

[0038] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used herein are only for the purpose of describing the embodiments of this application and are not intended to limit this application.

[0039] Generally speaking, the recommendation system mainly includes four stages: recall, rough ranking, fine ranking, and re-ranking. As the first funnel, the recall model needs to quickly filter out the materials that users are interested in from the millions of materials in the entire library, such as blog posts, and give them to the rough ranking model. The recall model needs to consider many factors when screening materials, such as relevance, transaction rate, click-through rate and other different goals. If a single-channel recall is performed based on only one factor, it is difficult to achieve a balance between multiple goals.

[0040] In the recommendation system, the recall model faces a huge amount of candidate data, and generally needs to be output online, so the recall model must be lightweight, fast and low-latency. Since there is a rough sorting model as a guarantee in the future, the output of the recall model may not be very accurate, but it cannot be missed. In recent years, many effective recall modeling architectures and methods have been proposed, and complex models have emerged in an endless stream, but the core problems solved are similar, and the algorithm iterations are basically centered around three directions. Content-based recall, behavior-based recall, and social relationship graph-based recall. Among them, the content-based recall method can use user tags, such as favorite directors, actors, categories, etc. filled in when newly registered, to filter items (items) with similar content in the candidate set. The items here can be blog posts. The behavior-based recall method mainly includes two algorithms: user-based collaborative filtering (userCF) and item-based collaborative filtering (itemCF). The userCF algorithm recommends items to users based on user similarity. The core idea is to find other users (neighbor users) with similar behaviors to the target user (active user), and then recommend items in the interest lists of these other users to the target user. The similarity here is usually measured by the user's historical behaviors such as clicks. The itemCF algorithm recommends items to users based on item similarity. The core idea is to find other items (neighor items) similar to the target item (active item), and then recommend these other items to the target user who likes the target item. The recall method based on the social relationship graph is to find other people on the social chain through the social relationship graphs such as the target user's friends' likes, attention relationships, and address book relationships, and then recall items through them. The principle is that birds of a feather flock together, that is, the user is likely to like the items that his friends like.

[0041] The recall model framework provided above has the following main problems: single-channel recall has certain limitations in the modeling method and the object itself, resulting in poor recall effect; multi-channel recall requires the establishment of multiple models and the training of each model, and different models require the establishment of different training databases; in terms of iteration efficiency, the synchronization of multiple model versions affects the final recall, and the versions cannot be unified. In the actual application of sequence modeling for the above problems, a lot of manpower and resources are needed to update the model to ensure the effectiveness of the model, which greatly increases the algorithm iteration cycle. At the same time, due to the problems of single model version and modeling, information utilization is incomplete, the recommended content lacks consistency, and the model generalization ability is insufficient, which limits the application of model algorithms in actual projects and leads to poor model recall effect.

[0042] In order to solve the above-mentioned technical problems, the embodiments of the present application provide a recall model training method, recall method, device, equipment, storage medium and program product, which alleviate the interaction and association between different recall circuits through multi-channel recall joint modeling, solve the problem of incomplete utilization of model version and single model modeling information, and realize multi-channel recall decoupling, thereby improving the recall effect of multi-channel recall.

[0043] The training and / or recall method of the recall model provided in the embodiments of the present application can be implemented by various electronic devices, for example, it can be implemented by a server alone, or it can be implemented by a terminal and a server in collaboration. For example, the server alone executes the training and / or recall method of the recall model described below, or the terminal sends a direct model training message and / or a recall request message to the server, and the server executes the training and / or recall method of the recall model according to the received model training message and / or recall request message.

[0044] In some embodiments, the server may be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, and big data and artificial intelligence platforms. The terminal may be a smart phone, a tablet computer, a laptop computer, a desktop computer, a smart speaker, a smart watch, etc., but is not limited thereto. The terminal and the server may be directly or indirectly connected via wired or wireless communication, and the embodiments of the present application do not impose specific restrictions on this.

[0045] In some embodiments, the method provided in the embodiments of the present application is implemented by a server alone as an example. The server obtains the user characteristics of the user, the post characteristics of the blog post, and the blogger characteristics, and then implements the training of the recall model and / or the post recall based on these characteristics. Among them, when training the recall model, the user characteristics are the user characteristics of the sample user, and the post characteristics and the blogger characteristics are the post characteristics and the blogger characteristics of the sample blog post. When recalling a blog post, the user characteristics are the user characteristics of the target user, and the post characteristics and the blogger characteristics are the post characteristics and the blogger characteristics of the candidate blog post.

[0046] In some embodiments, the method provided in the embodiments of the present application is described by taking the server and the terminal working together to implement the method as an example. Figure 1 , Figure 1 Schematic diagram of the framework of the training and recall system for the recall model provided in the embodiment of the present application. Terminal 400-1 and terminal 400-2 ( Figure 1 Only two terminals are shown, but this does not constitute a limitation on the number of terminals included in the system of the embodiment of the present application) The server 200 is connected via a network 300, and the network 300 can be a wide area network or a local area network, or a combination of the two.

[0047] In some embodiments, the terminal or server 200 can implement the recall model training and / or blog post recall method provided in the embodiments of the present application by running a computer program. For example, the computer program can be a native program or software module in the operating system; for example, it can be a local application program.

[0048] (application, APP), that is, a program that needs to be installed in the operating system to run, such as Weibo APP; it can also be a small program, that is, a program that can be run only by downloading it to the browser environment; it can also be a small program that can be embedded in any APP. In short, the above-mentioned computer program can be an application, module or plug-in in any form, and the embodiments of the present application do not specifically limit this. Here, the above-mentioned computer program running on the terminal can also be described as a Weibo client.

[0049] Take blog post recall as an example. For example, terminal 400-1 is used as the target object for explanation. Terminal 400-1 displays the interface of the APP on the current interface 410-1. Exemplarily, terminal 400-1 can also display the content of the recalled blog post on the current interface. Server 200 can receive the user characteristics of the target user sent by terminal 400-1, as well as the blog post characteristics and blogger characteristics of multiple candidate blog posts. Then, server 200 determines the recall prediction result of each candidate blog post through the recall model based on the user characteristics, blog post characteristics and blogger characteristics; finally, server 200 recalls the target blog post from multiple candidate blog posts based on the recall prediction result.

[0050] See also Figure 2 , Figure 2 It is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. Figure 2 The electronic device 400 shown may be the above-mentioned terminal and / or server. The electronic device 400 may include: at least one processor 410, a memory 450, at least one network interface 420 and a user interface 430. The various components in the electronic device 400 are coupled together via a bus system 440. It is understood that the bus system 440 is used to achieve connection and communication between these components. In addition to the data bus, the bus system 440 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, the bus system 440 is not shown in FIG. Figure 2 Various buses are labeled as bus system 440 .

[0051] Processor 410 can be an integrated circuit chip with signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc., where the general-purpose processor can be a microprocessor or any conventional processor, etc.

[0052] The user interface 430 includes one or more output devices 431 that enable presentation of media content, including one or more speakers and / or one or more visual display screens. The user interface 430 also includes one or more input devices 432, including user interface components that facilitate user input, such as a keyboard, mouse, microphone, touch screen display, camera, other input buttons and controls.

[0053] The memory 450 may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard drives, optical drives, etc. The memory 450 may optionally include one or more storage devices that are physically remote from the processor 410.

[0054] The memory 450 includes a volatile memory or a non-volatile memory, and may also include both volatile and non-volatile memories. The non-volatile memory may be a read-only memory (ROM), and the volatile memory may be a random access memory (RAM). The memory 450 described in the embodiments of the present application is intended to include any suitable type of memory.

[0055] In some embodiments, memory 450 can store data to support various operations, examples of which include programs, modules, and data structures, or a subset or superset thereof, as exemplarily described below.

[0056] Operating system 451, including system programs for processing various basic system services and performing hardware-related tasks, such as a framework layer, a core library layer, a driver layer, etc., for implementing various basic services and processing hardware-based tasks;

[0057] A network communication module 452, for reaching other computing devices via one or more (wired or wireless) network interfaces 420, exemplary network interfaces 420 include: Bluetooth, wireless compatibility certification (WiFi), and universal serial bus (USB), etc.;

[0058] a presentation module 453 for enabling presentation of information via one or more output devices 431 (e.g., display screen, speaker, etc.) associated with the user interface 430 (e.g., a user interface for operating peripherals and displaying content and information);

[0059] The input processing module 454 is used to detect one or more user inputs or interactions from one of the one or more input devices 432 and translate the detected inputs or interactions.

[0060] In some embodiments, the device provided in the embodiments of the present application can be implemented in software. Figure 2 The recall model training device 455 and the recall device 456 stored in the memory 450 are shown. The recall model training device 455 and / or the recall device 456 may be software in the form of a program and a plug-in.

[0061] In other embodiments, the apparatus provided in the embodiments of the present application may be implemented in hardware. As an example, the apparatus provided in the embodiments of the present application may be a processor in the form of a hardware decoding processor, which is programmed to execute the live broadcast recommendation method provided in the embodiments of the present application. For example, the processor in the form of a hardware decoding processor may be one or more application specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs), or other electronic components.

[0062] The following will explain the training method and recall method of the recall model provided in the embodiments of the present application in combination with the exemplary application and implementation of the electronic device provided in the embodiments of the present application.

[0063] See also Figure 3 , Figure 3 This is a flow chart of the training method of the recall model provided in the embodiment of the present application. Figure 3 The steps shown illustrate the training method of the recall model provided in the embodiment of the present application.

[0064] Step S301: Obtain training samples and sample labels corresponding to the training samples.

[0065] In some embodiments, the training sample includes user features of the sample user and post features and blogger features of the sample blog posts exposed to the sample user. The sample label represents whether the sample blog post is clicked by the sample user and the reason why the sample blog post is clicked.

[0066] In some embodiments, the implementation process of step S301 may be: obtaining historical data within a preset time period, the historical data including user data of sample users, blog data and blogger data of sample blogs, and the sample blogs including blogs clicked by sample users and blogs not clicked; extracting features from the historical data through the feature extraction module of the initial recall model to obtain training samples. The preset time period may be pre-set, such as 10 days before the current time.

[0067] In some embodiments, user data may include attribute data of sample users and interactive data of sample users on sample blog posts. Attribute data characterizes user attributes of sample users. Attribute data may include user identity (ID), gender information, age information, interest information, activity time information, activity frequency information, and other information. Interactive data may include interactive information of sample users on sample blog posts, such as likes, favorites, and comments of sample users on sample blog posts.

[0068] It can be understood that the user's identity can be used to uniquely identify the sample user. Gender information can be used to indicate the gender of the sample user. Age information can be used to indicate the age of the sample user. Interest information can be used to indicate the interests and hobbies of the sample user. In one example, the interest information may include at least one interest tag, each interest tag representing an interest and hobby of the sample user. For example, interest tags may include sports, stars, games, cars, etc. Activity time information can be used to indicate the active time of the sample user. In one example, the activity time information may include the active duration of the sample user, for example, the active duration of the sample user in a day. Activity frequency information can indicate the activity frequency of the sample user. In one example, the activity frequency information can indicate the number of logins of the sample user in a time period. For example, the number of logins of the sample user in a day.

[0069] It can be understood that the sample blog posts are the blog posts exposed to the sample users. Among these exposed blog posts, the sample users may click to view a portion of the blog posts. Therefore, the sample blog posts may actually include blog posts that interact with the sample users (i.e., clicked by the sample users) and blog posts that do not interact with the sample users (i.e., not clicked by the sample users).

[0070] In some embodiments, the blog post data of the sample blog post may include information such as the blog post identifier, the blog post tag, the blog post hourly forwarding rate, the blog post hourly interaction rate, etc.

[0071] It can be understood that the blog post identifier can be used to uniquely identify the sample blog post. The blog post tag can be used to indicate the direction of the sample blog post content. For example, the blog post tag can include sports, celebrities, games and other tags. The blog post hourly forwarding rate can be used to indicate the ratio of the number of times the sample blog post is forwarded within one hour after it is published to the total number of forwardings of the sample blog post. The blog post hourly interaction rate can be used to indicate the ratio of the number of times users interact with the sample blog post (including forwarding, commenting, liking, etc.) within one hour after the sample blog post is published to the total number of interactions of the sample blog post. The blog post hourly forwarding rate and hourly interaction rate represent the dissemination effect of the sample blog post content, that is, the popularity of the sample blog post.

[0072] In some embodiments, the blogger characteristics of the sample blog post may include the blogger's identity, gender information, age information, interest information, weekly interaction rate, etc. It can be understood that the blogger is the publisher of the sample blog post.

[0073] After obtaining historical data, user data of sample users, blog features of sample blogs, and blogger features, feature extraction can be performed through the feature extraction module of the initial recall model to obtain training samples. It can be understood that feature extraction refers to the establishment of derived values ​​(i.e., features) from the initial data through a specific algorithm to provide information and non-redundant features, which can highlight the representativeness or key information of the data. Exemplarily, the feature extraction module can be a network module such as a deep interest network (DIN) and a transformer.

[0074] It is understandable that the sample label of the training sample represents whether the sample blog post is clicked by the sample user and the reason why the sample blog post is clicked. Therefore, the method of constructing the training sample and the label of the training sample in the embodiment of the present application may include the following steps:

[0075] 1. Data collection. This includes user data of sample users, blog data of sample blog posts, and blogger data. The description of user data, blog data, and blogger data can be found in the above-mentioned related content and will not be repeated here.

[0076] 2. Filter valid events. First, we can look for events in which sample users click on a sample blog post. Here, the sample blog post clicked by the sample user can be called a positive item. Then, for each click event, we randomly or based on certain rules (such as time sequence, popularity, etc.) select a sample blog post that the sample user did not click as a comparison. Here, the sample blog post that the sample user did not click is called a negative item.

[0077] 3. Calculate the heat comparison. Compare the heat of the clicked positive item with the heat of the unclicked negative item.

[0078] 4. Determine user motivation. The embodiment of the present application attributes the user's click behavior to the popularity of the blog post itself and the user's preference. In some embodiments, the sample label may include a click label indicating whether the sample blog post is clicked by the sample user, a blog post popularity label of the sample blog post, and a user preference label of the sample blog post. The blog post popularity label indicates whether the reason why the sample blog post is clicked is the popularity of the blog post, and the user preference label indicates whether the reason why the sample blog post is clicked is the user's preference. Furthermore, the user's preference can be divided into the user's preference for the blog post and the user's preference for the blogger. In this case, the user preference label also includes a user's preference sub-label for the blog post and a user's preference sub-label for the blogger. That is, the embodiment of the present application can attribute the user's click behavior to three factors: the popularity of the blog post itself, the user's preference for the blog post, and the user's preference for the blogger.

[0079] Exemplarily, when the user motivation is attributed to the heat of the blog post itself, the user's preference for the blog post, and the user's preference for the blogger, if the heat of the positive item is less than the heat of the negative item, and the user does not follow the blogger of the blog post, it can be considered that the user's click behavior is based on the user's preference for the blog post. Therefore, the value of the click tag in the sample tag of the sample blog post positive item can be 1, the value of the blog post heat tag can be 0, the value of the user's preference subtag for the blog post can be 1, and the value of the user's preference subtag for the blogger can be 0. If the heat of the positiveitem is less than the heat of the negative item, and the user follows the blogger of the blog post, it can be considered that the user's click behavior is based on the user's preference for the blogger. Therefore, the value of the click tag in the sample tag of the sample blog post positive item can be 1, the value of the blog post heat tag can be 0, the value of the user's preference subtag for the blog post can be 0, and the value of the user's preference subtag for the blogger can be 1. If the heat of the positive item is greater than or equal to the heat of the negative item, it can be considered that the user's click behavior is caused by the heat of the blog post itself and the user's preference for the blog post. Therefore, the value of the click label in the sample label of the sample blog post positive item may be 1, the value of the blog post popularity label may be 0.5, the value of the user preference sub-label for the blog post may be 0.5, and the value of the user preference sub-label for the blogger may be 0.

[0080] 5. Construct triples. Based on the above judgment results, construct a triple for each event.<user,pos_item,neg_item> Triples are obtained, and user motivations are marked for each triple, that is, sample labels are created. In some embodiments, after obtaining the triples, feature extraction can also be performed on each triple to obtain training samples. In this way, training samples and sample labels corresponding to the training samples can be obtained.

[0081] In some embodiments, after obtaining the training samples, i.e., the user features of the sample users and the post features and blogger features of the sample blog posts exposed to the sample users, these features can be input into the embedding module of the initial recall model, also referred to as the embedding layer, to obtain the embedding vectors corresponding to the corresponding features.

[0082] It is understandable that in deep learning, embedding modules are often used to convert discrete categorical variables or high-dimensional sparse input data into low-dimensional dense vector representations. This conversion helps the model process these data more efficiently and capture the potential relationships between them. The core idea of ​​the embedding module is to map each category or feature to a vector of a fixed size. In the recommendation system, the embedding module can be used to convert discrete variables such as user ID and item ID into vector representations, thereby capturing the potential relationship between users and items and improving the accuracy of recommendations.

[0083] In some embodiments, based on user features, blog post features and blogger features, the first embedding vector corresponding to the user features, the second embedding vector corresponding to the blog post features, and the third embedding vector corresponding to the blogger features can be determined through the embedding module of the initial recall model. Subsequently, the first embedding vector, the second embedding vector, and the third embedding vector can be used as inputs to other modules of the initial recall model based on steps S302 and S303.

[0084] Step S302: Determine the blog post popularity score based on the blog post features through the blog post popularity prediction module of the initial recall model.

[0085] In some embodiments, the blog post heat score represents the popularity of the sample blog post. The higher the blog post heat score, the higher the popularity of the sample blog post.

[0086] Since heat prediction is usually a regression problem or a binary classification problem, the regression problem is used to predict the number of clicks or heat values ​​of a blog post, and the binary classification problem is used to predict whether a blog post will reach a certain heat threshold. In some embodiments, the blog post heat prediction module in the initial recall model can be a linear regression module, a logistic regression module, a decision tree / random forest, a gradient boosting tree, a neural network and other modules. Among them, the gradient boosting tree can be exemplarily an extreme gradient boosting (XGBoost) and a light gradient boosting machine (LightGBM). The neural network can exemplarily be a recurrent neural network (RNN) and a long short-term memory network (LSTM).

[0087] It can be understood that the blog post features of the sample blog post are input as input features to the blog post heat prediction module. The blog post heat prediction module can predict the blog post heat score of the sample blog post based on features such as the blog post tags, hourly forwarding rate, and hourly interaction rate in the user characteristics.

[0088] In some embodiments, after inputting the blog post features into the embedding module of the initial recall module to obtain a second embedding vector corresponding to the blog post features, the second embedding vector can be input into the blog post popularity prediction module to determine the blog post popularity score.

[0089] Figure 4 Schematic diagram of the structure of the recall model provided in the embodiment of the present application. Figure 4 As shown, the recall model 10 includes an embedding module 11, a blog post popularity prediction module 12, a user preference prediction module 13 and an output module 14. Among them, the embedding module 11 is used to perform an embedded representation of the received input features (including blog post features, user features and blogger features) to obtain an embedding vector corresponding to each feature. The blog post popularity prediction module 12 is used to perform popularity prediction based on the embedding vector corresponding to the blog post features to obtain a blog post popularity score. The architecture of the user preference prediction module 13 and the output module 14 will be described later.

[0090] Step S303: Determine the user preference score through the user preference prediction module of the initial recall model according to the user characteristics, blog post characteristics and blogger characteristics.

[0091] In some embodiments, the user preference score represents the degree of preference of the sample user for the sample blog post.

[0092] In some embodiments, the user preference prediction module includes a first preference prediction submodule and a second preference prediction submodule, and the user preference score includes a first preference score and a second preference score; the implementation process of step S303 can be: according to user characteristics and blog post characteristics, determine the first preference score through the first preference prediction submodule, and the first preference score represents the sample user's preference for the sample blog post; according to user characteristics and blogger characteristics, determine the second preference score through the second preference prediction submodule, and the second preference score represents the sample user's preference for the blogger corresponding to the sample blog post.

[0093] It can be understood that the first preference prediction submodule focuses on the relationship between the user and the blog post itself, and predicts the sample user's preference for a certain sample blog post by analyzing the user characteristics of the sample user and the blog post characteristics of the sample blog post. The first preference score is a quantitative indicator used to characterize the sample user's blog post preference for the sample blog post. The higher the first preference score, the stronger the sample user's blog post preference for the sample blog post. Conversely, the lower the first preference score, the weaker the sample user's blog post preference for the sample blog post. The second preference prediction submodule focuses on the relationship between the user and the blogger, and predicts the sample user's preference for the blogger who published the sample blog post by analyzing the user characteristics of the sample user and the blogger characteristics of the publisher of the sample blog post. The second preference score is a quantitative indicator used to characterize the sample user's preference for the blogger who published the sample blog post. The higher the second preference score, the stronger the sample user's preference for the blogger who published the sample blog post. Conversely, the lower the second preference score, the weaker the sample user's preference for the blogger who published the sample blog post.

[0094] It can be understood that the user characteristics of the sample user and the blog features of the sample blog post are input as input features to the first preference prediction submodule, and the first preference prediction submodule can splice the user characteristics and the blog features to obtain a spliced ​​vector, and then predict the blog preference score of the sample user for the sample blog post based on the spliced ​​vector. Similarly, the user characteristics of the sample user and the blogger characteristics of the sample blog post are input as input features to the second preference prediction submodule, and the second preference prediction submodule can splice the user characteristics and the blogger characteristics to obtain a spliced ​​vector, and then predict the blogger preference score of the sample user for the sample blogger based on the spliced ​​vector.

[0095] In some embodiments, after inputting the user features, blog post features, and blogger features into the embedding module of the initial recall module to obtain the first embedding vector corresponding to the user features, the second embedding vector corresponding to the blog post features, and the third embedding vector corresponding to the blogger features, the first embedding vector and the second embedding vector may be input into the first preference prediction submodule to obtain the first preference score. And the first embedding vector and the third embedding vector may be input into the second preference prediction submodule to obtain the second preference score.

[0096] refer to Figure 4The user preference prediction module 13 includes a first preference prediction submodule 131 and a second preference prediction submodule 132. The first preference prediction submodule 131 is used to make predictions based on the embedding vectors corresponding to the blog post features and the embedding vectors corresponding to the user features, and obtain a blog post preference score (first preference score) representing the user's preference for the blog post. The second preference prediction submodule 132 is used to make predictions based on the embedding vectors corresponding to the blogger features and the embedding vectors corresponding to the user features, and obtain a blogger preference score (second preference score) representing the user's preference for the blog post.

[0097] Step S304: According to the blog post popularity score and the user preference score, the recall prediction result of the sample blog post is determined through the output module of the initial recall model.

[0098] In some embodiments, the implementation process of step S304 may be: according to user characteristics, determine the first weight value, the second weight value and the third weight value through the output module, the first weight value represents the weight of the blog post popularity, the second weight value represents the weight of the user's preference for the blog post, and the third weight value represents the weight of the user's preference for the blogger; through the output module, perform weighted summation of the blog post popularity score, the first preference score and the second preference score according to the first weight value, the second weight value and the third weight value to determine the recall prediction result.

[0099] It is understandable that since the user's click behavior on the blog post depends on the combined effect of the above three factors, the embodiment of the present application introduces a weighted matrix, inputs the user features into the output module of the initial recall model, outputs the weight value corresponding to each factor through the network layer of the output module, and then performs weighted summation of the weight value corresponding to each factor and the predicted score of the corresponding factor through the output layer of the output module to obtain the recall prediction result of the sample blog post. The network layer assigns a weight value to the blog post heat factor, the user's preference factor for the blog post, and the user's preference factor for the blogger through information such as interest in the user features, and enhances the importance of different factors through weighted summation. Exemplarily, the network layer can be a multi-layer perceptron (MLP).

[0100] In one example, the recall prediction result can be expressed by formula (1):

[0101] y o =σ(w1y i +w2y m +w3y u ) (1);

[0102] Among them, y o represents the recall prediction result, w1 represents the first weight value, y i represents the blog post popularity score, w2 represents the second weight value, ym represents the first preference score, w3 represents the third weight value, y u represents the second preference score, and σ represents the mathematical formula sigmoid function.

[0103] The embodiment of the present application introduces a weighted attribution allocation mechanism that can adaptively learn the degree of user dependence on different factors, thereby obtaining the user's recall prediction results for blog posts, achieving unification after decoupling of multiple recalls, and thus bringing increments to the model.

[0104] refer to Figure 4 The output module 14 includes a network layer 141 and an output layer 142. The network layer 141 is used to determine the importance of each factor based on the embedding vector corresponding to the user feature to obtain the weight value corresponding to each factor. The output layer 142 is used to perform a weighted summation of the weight value corresponding to each factor and the predicted score of each factor to obtain the recall prediction result of the blog post.

[0105] Step S305: Calculate the loss value to adjust the parameters of the initial recall model through the recall prediction results, blog post popularity scores, user preference scores, and sample labels corresponding to the training samples until the initial recall model converges to obtain the recall model.

[0106] In some embodiments, the implementation process of step S305 can be divided into the following three steps: Step 1: Determine the first loss value of the initial recall model based on the recall prediction result and the click label of the sample blog post; Step 2: Determine the total loss value of the initial recall model based on the first loss value, the blog post popularity score, the user preference score, the blog post popularity label of the sample blog post, and the user preference label of the sample blog post; Step 3: Adjust the parameters of the initial recall model according to the total loss value until the initial recall model converges to obtain the recall model.

[0107] It can be understood that the overall loss of the recall model can be determined based on the final recall prediction results and click labels of the sample blog posts. The overall loss value represents the difference between the recall prediction results of the sample blog posts and the values ​​of the real click labels of the sample bloggers. The smaller the overall loss value, the smaller the difference. Correspondingly, based on the overall loss value and the loss values ​​corresponding to other factors, the smaller the total loss value determined, the better the convergence degree of the recall model, that is, the accuracy of the recall model. Therefore, the embodiment of the present application can adjust the parameters of the initial recall model based on the total loss value to obtain a recall model with better accuracy than the initial recall model. The embodiment of the present application jointly learns the multi-way recall loss and the overall loss, and uses a multi-task loss strategy to achieve joint optimization of the model to further enhance the expressive power of multi-way recall and improve the generalization ability of the model.

[0108] In step one, the recall prediction result is the predicted result of whether the sample user clicks on the sample blog post, and the click label is the actual result of whether the sample blog post is clicked by the sample user. Therefore, based on the prediction result and the actual result, the overall loss of the recall model, that is, the first loss value, can be obtained.

[0109] In some embodiments, the loss value may be calculated by a cross entropy loss function.

[0110] In one example, the first loss value can be expressed by formula (2):

[0111]

[0112] Among them, L o Represents the first loss value, y label Indicates the value of the clicked label, y o Represents the recall prediction result, and σ represents the mathematical formula sigmoid function.

[0113] In step 2, the total loss value of the recall model can be determined based on the overall loss value and the loss values ​​corresponding to other factors.

[0114] In some embodiments, the implementation process of step two may be: determining the second loss value through the blog post heat prediction module according to the blog post heat score and the blog post heat tag of the sample blog post; determining the third loss value through the first preference prediction submodule according to the first preference score and the user's preference subtag of the sample blog post for the blog post; determining the fourth loss value through the second preference prediction submodule according to the second preference score and the user's preference subtag of the sample blog post for the blogger; determining the total loss value according to the first loss value, the second loss value, the third loss value and the fourth loss value.

[0115] That is, the prediction module corresponding to each factor is used to calculate the loss of this path. The blog post heat prediction module is used to calculate the difference between the predicted blog post heat score and the actual blog post heat label value. The first preference prediction submodule is used to calculate the difference between the predicted user-blog post preference score and the actual user's blog post preference sublabel value. The second preference prediction submodule is used to calculate the difference between the predicted user-blogger preference score and the actual user's blogger preference sublabel value. Then, based on the overall loss value and the loss value of each factor, the total loss value of the model is determined.

[0116] In one example, the second loss value can be expressed by formula (3):

[0117]

[0118] Among them, L i represents the second loss value, y1 represents the value of the blog post heat label, and y irepresents the popularity score of the blog post, and σ represents the mathematical formula sigmoid function.

[0119] In one example, the third loss value can be expressed by formula (4):

[0120]

[0121] Among them, L m represents the third loss value, y2 represents the value of the user's preference sub-label for the blog post, and y m represents the first preference score, and σ represents the mathematical formula sigmoid function.

[0122] In one example, the fourth loss value can be expressed by formula (5):

[0123]

[0124] Among them, L u represents the fourth loss value, y3 represents the value of the user's preference sub-label for the blogger, and y u represents the second preference score, and σ represents the mathematical formula sigmoid function.

[0125] After obtaining the first loss value, the second loss value, the third loss value, and the fourth loss value, a total loss value may be determined based on the four loss values.

[0126] In one example, the total loss value can be expressed by formula (6):

[0127] L=L o +α*L i +β*L m +γ*L u (6);

[0128] Among them, L represents the total loss value, α, β and γ represent hyperparameters used to adjust the balance between different factors, and the value range of α, β and γ is (0, 1), for example, α = 0.2, β = 0.4, γ = 0.3.

[0129] In step three, the parameters of the initial recall model are adjusted by the total loss value until the initial recall model converges to obtain the recall model.

[0130] It can be understood that in the embodiment of the present application, the total loss is determined based on the loss of each task (each path), and the parameters of the initial recall model are adjusted based on the total loss, rather than adjusting the parameters based on a single task, so that the recall model can balance the processing of different tasks, and train multiple tasks as a whole, so that the recall model obtained by training can obtain more comprehensive and accurate multi-task recognition results.

[0131] In this application, firstly, the training samples and the sample labels corresponding to the training samples are obtained, and then the blog post heat score is determined by the blog post heat prediction module of the initial recall model according to the blog post features of the sample blog posts in the training samples; then, the user preference score is determined by the user preference prediction module of the initial recall model according to the user features of the sample users in the training samples and the blogger features of the sample blog posts; according to the blog post heat score and the user preference score, the recall prediction result of the sample blog post is determined by the output module of the initial recall model; through the recall prediction result, the blog post heat score, the user preference score and the sample labels corresponding to the training samples, the loss value is calculated to adjust the parameters of the initial recall model until the initial recall model converges to obtain the recall model. The sample label characterizes whether the sample blog post is clicked by the sample user and the reason why the sample blog post is clicked. The embodiment of this application attributes the user's click behavior on the blog post to the heat of the blog post itself and the user preference. After predicting the score of the sample blog post through these two ways respectively, the total recall prediction result is obtained based on the two-way score. Therefore, this application alleviates the interaction and association between different recall loops through a multi-channel recall joint modeling approach, solves the problem of incomplete utilization of model versions and single model modeling information, and at the same time realizes multi-channel recall decoupling, improves the recall effect of multi-channel recall, and improves the inference efficiency of the model.

[0132] Furthermore, the present application adopts causal inference technology to identify the causal relationship between variables, and attributes the user's click behavior to three factors: the user's preference for the blogger, the user's preference for the blog post, and the popularity of the blog post itself, so as to perform joint modeling, so that the model's interpretability is improved, and the robustness is also improved to a certain extent. At the same time, the present application introduces a weighted attribution allocation mechanism, which can adaptively learn the user's dependence on different factors, so as to obtain the recall prediction results, and realize the unification after the decoupling of multi-way recall, thereby bringing increments to the model. In addition, the present application introduces a multi-task learning architecture, jointly learns the multi-way recall loss and the overall loss, and uses a multi-task loss strategy to achieve joint optimization of the model, so as to further enhance the expressive power of multi-way recall and improve the generalization ability of the model.

[0133] In an embodiment of the present application, based on the trained recall model, the aforementioned recall method can be applied to recall blog posts that are more in line with the user's interests.

[0134] Figure 5 Schematic diagram of the recall method provided in the embodiment of the present application. Figure 5 As shown, the recall method may include the following steps.

[0135] Step S501: obtaining user features of a target user and blog post features and blogger features of a plurality of candidate blog posts.

[0136] In some embodiments, the implementation process of step S501 may be: obtaining the user data of the target user within a preset time period, as well as the blog post data and blogger data of each candidate blog post; extracting features from the user data, blog post data and blogger data through the feature extraction module of the recall model to obtain user features, blog post features and blogger features. The preset time period may be pre-set, such as within an hour before the current time, etc., which is not limited in the embodiments of the present application, and the current time is the time for recommending blog posts to the target user.

[0137] In some embodiments, the user data of the target user may include the attribute data of the target user and the target user's interactive data for the blog post. The attribute data represents the user attributes of the target user. The attribute data may include the user's identity, gender information, age information, interest information, activity time information, activity frequency information, and other information. The interactive data may include the target user's interactive information for the blog post, such as the target user's likes, favorites, comments, and other interactive information for the blog post.

[0138] In some embodiments, the blog post data may include blog post identification, blog post tags, blog post hourly forwarding rate, blog post hourly interaction rate, etc. The blog post blogger characteristics may include the blogger's identity identification, gender information, age information, interest information, weekly interaction rate, etc.

[0139] Step S502: Determine the recall prediction result of each candidate blog post through a recall model according to user features, blog post features and blogger features.

[0140] In some embodiments, the implementation process of step S502 can be divided into the following three steps: Step 1: For any candidate blog post, based on the blog post features, the blog post heat score is determined through the blog post heat prediction module of the recall model, and the blog post heat score represents the popularity of the candidate blog post; Step 2: Based on the user characteristics, blog post characteristics and blogger characteristics, the user preference score is determined through the user preference prediction module of the recall model, and the user preference score represents the target user's preference for the candidate blog post; Step 3: Based on the blog post heat score and the user preference score, the recall prediction result of the candidate blog post is determined through the output module of the recall model.

[0141] In some embodiments, the user preference prediction module includes a first preference prediction submodule and a second preference prediction submodule, and the user preference score includes a first preference score and a second preference score; the implementation process of step 2 can be: according to user characteristics and blog post characteristics, determine the first preference score through the first preference prediction submodule, and the first preference score represents the target user's preference for the candidate blog post; according to user characteristics and blogger characteristics, determine the second preference score through the second preference prediction submodule, and the second preference score represents the target user's preference for the blogger corresponding to the candidate blog post.

[0142] In some embodiments, the implementation process of step 3 can be: according to user characteristics, determine the first weight value, the second weight value and the third weight value through the output module, the first weight value represents the weight of the blog post popularity, the second weight value represents the weight of the user's preference for the blog post, and the third weight value represents the weight of the user's preference for the blogger; through the output module, according to the first weight value, the second weight value and the third weight value, perform weighted summation of the blog post popularity score, the first preference score and the second preference score to determine the recall prediction result.

[0143] Among them, the implementation method of step S502 can refer to the relevant content in the above-mentioned model training process, which will not be repeated here.

[0144] Step S503: recalling a target blog post from multiple candidate blog posts according to the recall prediction result.

[0145] In some embodiments, the implementation process of step S503 may be: sorting multiple candidate recall blog posts according to the recall prediction results corresponding to each candidate blog post; determining at least one candidate blog post that meets the preset conditions from the multiple candidate blog posts as the target blog post according to the sorting results, so as to recall the target blog post. The preset conditions may be pre-set by the target user, for example, the recommended ranking may be the top 1,000 blog posts, which is not limited in the embodiments of the present application.

[0146] It is understandable that when the recall prediction result is a probability, multiple candidate blog posts can be sorted in order of predicted probability from high to low, or multiple candidate blog posts can be sorted according to other rules, and the embodiments of the present application are not limited to this.

[0147] The following describes an exemplary structure of the recall model training device 455 provided in the embodiment of the present application implemented as a software module. Figure 6 Schematic diagram of the structure of the training device of the recall model provided in the embodiment of the present application. Figure 6 As shown, the training device 455 of the recall model includes a first acquisition module 4551, a first determination module 4552, a second determination module 4553, a third determination module 4554 and a parameter adjustment module 4555.

[0148] The first acquisition module 4551 is used to obtain training samples and sample labels corresponding to the training samples. The training samples include user characteristics of sample users and blog features and blogger features of sample blog posts exposed to sample users. The sample labels represent whether the sample blog posts are clicked by sample users and the reasons why the sample blog posts are clicked. The first determination module 4552 is used to determine the blog post heat score according to the blog post features through the blog post heat prediction module of the initial recall model. The blog post heat score represents the popularity of the sample blog post. The second determination module 4553 is used to determine the blog post heat score according to the user characteristics, blog post characteristics, and blog post heat prediction module of the initial recall model. and blogger features, and determine the user preference score through the user preference prediction module of the initial recall model, where the user preference score represents the degree of preference of the sample user for the sample blog post; a third determination module 4554 is used to determine the recall prediction result of the sample blog post through the output module of the initial recall model according to the blog post popularity score and the user preference score; a parameter adjustment module 4555 is used to calculate the loss value to adjust the parameters of the initial recall model through the recall prediction result, the blog post popularity score, the user preference score, and the sample label corresponding to the training sample, until the initial recall model converges to obtain the recall model.

[0149] In some possible implementations, the user preference prediction module includes a first preference prediction submodule and a second preference prediction submodule, and the user preference score includes a first preference score and a second preference score; the second determination module 4553 is also used to: determine the first preference score through the first preference prediction submodule based on user characteristics and blog post characteristics, the first preference score representing the sample user's preference for the sample blog post; determine the second preference score through the second preference prediction submodule based on user characteristics and blogger characteristics, the second preference score representing the sample user's preference for the blogger corresponding to the sample blog post.

[0150] In some possible implementations, the third determination module 4554 is also used to: determine the first weight value, the second weight value and the third weight value through the output module according to user characteristics, the first weight value represents the weight of the blog post popularity, the second weight value represents the weight of the user's preference for the blog post, and the third weight value represents the weight of the user's preference for the blogger; and perform weighted summation of the blog post popularity score, the first preference score and the second preference score according to the first weight value, the second weight value and the third weight value through the output module to obtain a recall prediction result.

[0151] In some possible implementations, the sample label includes a click label indicating whether the sample blog post is clicked by the sample user, a blog post heat label of the sample blog post, and a user preference label of the sample blog post. The blog post heat label indicates whether the reason why the sample blog post is clicked is the blog post heat, and the user preference label indicates whether the reason why the sample blog post is clicked is the user preference. The parameter adjustment module 4555 includes: a first determination unit, used to determine the first loss value of the initial recall model according to the recall prediction result and the click label of the sample blog post; a second determination unit, used to determine the total loss value of the initial recall model according to the first loss value, the blog post heat score, the user preference score, the blog post heat label of the sample blog post, and the user preference label of the sample blog post; a parameter adjustment unit, used to adjust the parameters of the initial recall model according to the total loss value until the initial recall model converges to obtain the recall model.

[0152] In some possible implementations, the user preference tag includes a user preference sub-tag for a blog post and a user preference sub-tag for a blogger; the second determination unit is further used to: determine a second loss value through a blog post heat prediction module based on a blog post heat score and a blog post heat tag of a sample blog post; determine a third loss value through a first preference prediction sub-module based on a first preference score and a user preference sub-tag for a blog post of a sample blog post; determine a fourth loss value through a second preference prediction sub-module based on a second preference score and a user preference sub-tag for a blogger of a sample blog post; and determine a total loss value based on the first loss value, the second loss value, the third loss value, and the fourth loss value.

[0153] The following describes an exemplary structure of the recall device 456 provided in the embodiment of the present application implemented as a software module. Figure 7 Schematic diagram of the structure of the recall device provided in the embodiment of the present application. Figure 7 As shown, the recall device 456 includes a second acquisition module 4561 , a fourth determination module 4562 and a recall module 4563 .

[0154] The second acquisition module 4561 is used to obtain the user characteristics of the target user and the blog post characteristics and blogger characteristics of multiple candidate blog posts; the fourth determination module 4562 is used to determine the recall prediction result of each candidate blog post through the recall model based on the user characteristics, blog post characteristics and blogger characteristics; the recall module 4563 is used to recall the target blog post from multiple candidate blog posts based on the recall prediction result.

[0155] In some possible real-time methods, the fourth determination module 4562 includes: a third determination unit, used to determine, for any candidate blog post, a blog post heat score through a blog post heat prediction module of a recall model according to the blog post features, wherein the blog post heat score represents the popularity of the candidate blog post; a fourth determination unit, used to determine a user preference score through a user preference prediction module of a recall model according to user features, blog post features, and blogger features, wherein the user preference score represents the target user's preference for the candidate blog post; a fifth determination unit, used to determine the recall prediction result of the candidate blog post through the output module of the recall model according to the blog post heat score and the user preference score.

[0156] In some possible implementations, the user preference prediction module includes a first preference prediction submodule and a second preference prediction submodule, and the user preference score includes a first preference score and a second preference score; the fourth determination unit is further used to: determine the first preference score through the first preference prediction submodule based on user characteristics and blog post characteristics, the first preference score representing the target user's preference for the candidate blog post; determine the second preference score through the second preference prediction submodule based on user characteristics and blogger characteristics, the second preference score representing the target user's preference for the blogger corresponding to the candidate blog post.

[0157] In some possible implementations, the fifth determination unit is also used to: determine a first weight value, a second weight value, and a third weight value through an output module according to user characteristics, the first weight value representing the weight of the blog post popularity, the second weight value representing the weight of the user's preference for the blog post, and the third weight value representing the weight of the user's preference for the blogger; and perform weighted summation of the blog post popularity score, the first preference score, and the second preference score according to the first weight value, the second weight value, and the third weight value through the output module to determine the recall prediction result.

[0158] The embodiment of the present application provides a computer program product or a computer program, which includes computer instructions stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the training method and / or the recall method of the recall model provided in the embodiment of the present application.

[0159] An embodiment of the present application provides a computer-readable storage medium storing executable instructions, wherein executable instructions are stored. When the executable instructions are executed by a processor, the processor will execute the training method and / or recall method of the recall model provided in the embodiment of the present application.

[0160] In some embodiments, the computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, flash memory, magnetic surface storage, optical disk, or CD-ROM; or it may be various devices including one or any combination of the above memories.

[0161] In some embodiments, executable instructions may be in the form of a program, software, software module, script or code, written in any form of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, including as a stand-alone program or as a module, component, subroutine or other unit suitable for use in a computing environment.

[0162] As an example, executable instructions may, but need not, correspond to a file in a file system, may be stored as part of a file that stores other programs or data, such as in one or more scripts in a hypertext markup language (HTML) document, in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files storing one or more modules, subroutines, or code portions).

[0163] As an example, executable instructions may be deployed to be executed on one computing device, or on multiple computing devices located at one location, or on multiple computing devices distributed at multiple locations and interconnected by a communication network. The above is only an embodiment of the present application and is not intended to limit the scope of protection of the present application. Any modifications, equivalent substitutions, and improvements made within the spirit and scope of the present application are included in the scope of protection of the present application.

Claims

1. A recall model training method, characterized in that: The method comprises: Acquire training samples and sample labels corresponding to the training samples, wherein the training samples include user features of sample users and blog features and blogger features of sample blog posts exposed to the sample users, and the sample labels indicate whether the sample blog posts are clicked by the sample users and the reasons why the sample blog posts are clicked; According to the blog post features, a blog post heat score is determined by a blog post heat prediction module of an initial recall model, wherein the blog post heat score represents the popularity of the sample blog post; According to the user characteristics, the blog post characteristics and the blogger characteristics, a user preference score is determined by a user preference prediction module of the initial recall model, wherein the user preference score represents the degree of preference of the sample user for the sample blog post; Determining the recall prediction result of the sample blog post through the output module of the initial recall model according to the blog post popularity score and the user preference score; The loss value is calculated through the recall prediction result, the blog post popularity score, the user preference score, and the sample label corresponding to the training sample to adjust the parameters of the initial recall model until the initial recall model converges to obtain the recall model.

2. The method according to claim 1, characterized in that The user preference prediction module includes a first preference prediction submodule and a second preference prediction submodule, and the user preference score includes a first preference score and a second preference score; The determining the user preference score by the user preference prediction module of the initial recall model according to the user characteristics, the blog post characteristics and the blogger characteristics includes: According to the user characteristics and the blog post characteristics, determining the first preference score through the first preference prediction submodule, the first preference score representing the blog post preference degree of the sample user for the sample blog post; The second preference score is determined by the second preference prediction submodule according to the user characteristics and the blogger characteristics, and the second preference score represents the degree of preference of the sample user for the blogger corresponding to the sample blog post.

3. The method according to claim 2, characterized in that Determining the recall prediction result of the sample blog post through the output module of the initial recall model according to the blog post popularity score and the user preference score includes: According to the user characteristics, the output module determines a first weight value, a second weight value and a third weight value, wherein the first weight value represents the weight of the popularity of the blog post, the second weight value represents the weight of the user's preference for the blog post, and the third weight value represents the weight of the user's preference for the blogger; The output module performs weighted summation of the blog post popularity score, the first preference score and the second preference score according to the first weight value, the second weight value and the third weight value to obtain the recall prediction result.

4. The method according to claim 2, characterized in that: The sample tags include a click tag indicating whether the sample blog post is clicked by the sample user, a blog post popularity tag of the sample blog post, and a user preference tag of the sample blog post. The blog post popularity tag indicates whether the reason why the sample blog post is clicked is the blog post popularity, and the user preference tag indicates whether the reason why the sample blog post is clicked is the user preference. The loss value is calculated by the recall prediction result, the blog post popularity score, the user preference score, and the sample label corresponding to the training sample to adjust the parameters of the initial recall model until the initial recall model converges to obtain the recall model, including: Determining a first loss value of the initial recall model according to the recall prediction result and the click tag of the sample blog post; Determine a total loss value of the initial recall model according to the first loss value, the blog post popularity score, the user preference score, the blog post popularity label of the sample blog post, and the user preference label of the sample blog post; The parameters of the initial recall model are adjusted according to the total loss value until the initial recall model converges to obtain the recall model.

5. The method according to claim 4, characterized in that The user preference tags include user preference subtags for blog posts and user preference subtags for bloggers; Determining the total loss value of the initial recall model according to the first loss value, the blog post popularity score, the user preference score, the blog post popularity label of the sample blog post, and the user preference label of the sample user includes: Determining a second loss value through the blog post heat prediction module according to the blog post heat score and the blog post heat tag of the sample blog post; Determining a third loss value through the first preference prediction submodule according to the first preference score and the user's preference sublabel for the sample blog post; Determining a fourth loss value through the second preference prediction submodule according to the second preference score and the preference sub-label of the user of the sample blog post to the blogger; The total loss value is determined according to the first loss value, the second loss value, the third loss value and the fourth loss value.

6. A recall method, characterized in that: The method comprises: Obtain user features of the target user and blog post features and blogger features of multiple candidate blog posts; Determining the recall prediction result of each candidate blog post through a recall model according to the user characteristics, the blog post characteristics and the blogger characteristics, wherein the recall model is trained by the method according to any one of claims 1 to 5; According to the recall prediction result, the target blog post is recalled from the multiple candidate blog posts.

7. The method according to claim 6, characterized in that The step of determining the recall prediction result of each candidate blog post through a recall model according to the user characteristics, the blog post characteristics and the blogger characteristics includes: For any candidate blog post, according to the blog post features, a blog post heat prediction module of the recall model is used to determine a blog post heat score, wherein the blog post heat score represents the popularity of the candidate blog post; According to the user characteristics, the blog post characteristics and the blogger characteristics, a user preference score is determined by a user preference prediction module of the recall model, wherein the user preference score represents the degree of preference of the target user for the candidate blog post; According to the blog post popularity score and the user preference score, the recall prediction result of the candidate blog post is determined through the output module of the recall model.

8. A recall device, characterized in that: The device comprises: The second acquisition module is used to acquire user features of the target user and blog features and blogger features of multiple candidate blog posts; a fourth determination module, configured to determine the recall prediction result of each candidate blog post through a recall model according to the user characteristics, the blog post characteristics and the blogger characteristics, wherein the recall model is obtained by training using the method according to any one of claims 1 to 5; The recall module is used to recall the target blog post from the multiple candidate blog posts according to the recall prediction result.

9. An electronic device, characterized in that: The electronic device comprises: A memory for storing executable instructions; A processor, configured to implement the method of any one of claims 1 to 5, or the method of claim 6 or 7, when executing the executable instructions or computer programs stored in the memory.

10. A computer-readable storage medium storing executable instructions or a computer program, characterized in that: When the executable instructions are executed by a processor, the method described in any one of claims 1 to 5, or the method described in claim 6 or 7 is implemented.

Citation Information

Cited By

  • Intelligent marketing method and system based on ai large model driving

    CN120181956A