Resource recommendation method and device
By constructing the point-of-interest matching characteristics of click-through rate and click-through rate confidence, combining multi-dimensional resource interest points, and using the factor decomposition machine model to predict recommendation scores, the problem of low accuracy in the existing resource recommendation methods is solved, and higher resource recommendation accuracy and user experience are achieved.
Patent Information
- Application Number
- CN202510766345.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-10
- Publication Date
- 2025-07-08
- Estimated Expiration
- 2045-06-10
AI Technical Summary
In the existing resource recommendation methods, only click-through rate is considered and click-through rate confidence is ignored, resulting in low recommendation accuracy and low point-of-interest matching recall accuracy in a single dimension.
By constructing point-of-interest matching features that include click-through rate and click-through rate confidence, combining resource interest points in multiple dimensions, using the factor decomposition machine model to predict recommendation scores, and determining the resources to be recommended.
It improves the accuracy of resource recommendations, improves user experience, and ensures that the recommended resources are more consistent with user interests.
Smart Images

Figure CN120277273A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of resource recommendation, and in particular, to a resource recommendation method and device. Background Art
[0002] With the development of Internet technology, resource recommendation technology has achieved rapid development. Resource recommendation technology is based on the mining of user behavior to understand users' interest preferences, and then based on users' interest preferences, recommends valuable resources to users. Resource recommendation technology can help users efficiently obtain the resources they need.
[0003] It can be understood that the accuracy of resource recommendation is one of the core indicators for measuring resource recommendation solutions, which reflects the matching degree between resource recommendation results and users' real needs or interests. The accuracy of resource recommendation directly affects the user experience, and how to achieve relatively accurate resource recommendation is an urgent problem to be solved currently. Summary of the Invention
[0004] In view of this, this application provides a resource recommendation method and device for recommending resources that are relatively matched with users' interests. The technical solutions are as follows:
[0005] The first aspect of this application provides a resource recommendation method, including:
[0006] Obtain the user portrait of the target user, where the user portrait includes several user interest points and the click times and exposure times respectively corresponding to the several user interest points;
[0007] By matching several resource interest points of each resource in the resource library with the several user interest points, obtain the click times and exposure times respectively corresponding to the several resource interest points of each resource in the resource library;
[0008] According to the click times and exposure times respectively corresponding to the several resource interest points of each resource in the resource library, construct the interest point matching features respectively corresponding to the several resource interest points of each resource in the resource library, where the interest point matching features include click-through rate and click-through rate confidence;
[0009] According to the interest point matching features respectively corresponding to the several resource interest points of each resource in the resource library, predict the recommendation score of each resource in the resource library;
[0010] According to the recommendation scores of each resource in the resource library, determine the resources to be recommended and recommend the resources to be recommended to the target user.
[0011] In a possible implementation, obtaining the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library by matching several resource interest points of each resource in the resource library with the several user interest points includes:
[0012] For each resource interest point of each resource in the resource library:
[0013] Determine whether there is a user interest point in the several user interest points that matches this resource interest point;
[0014] If there is a user interest point that matches this resource interest point, determine the click times and exposure times corresponding to the user interest point that matches this resource interest point as the click times and exposure times corresponding to this resource interest point;
[0015] If there is no user interest point that matches this resource interest point, determine that both the click times and exposure times corresponding to this resource interest point are 0.
[0016] In a possible implementation, the several resource interest points of each resource in the resource library are resource interest points in multiple dimensions;
[0017] Obtaining the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library by matching several resource interest points of each resource in the resource library with the several user interest points includes:
[0018] For each resource in the resource library:
[0019] Obtain the click times and exposure times corresponding to the resource interest points of this resource in each dimension by matching the resource interest points of this resource in each dimension with the user interest points in the same dimension among the several user interest points.
[0020] In a possible implementation, the several resource interest points of each resource in the resource library are resource interest points in multiple dimensions;
[0021] Constructing the interest point matching features respectively corresponding to several resource interest points of each resource in the resource library according to the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library includes:
[0022] For the resource interest points of each resource in the resource library in each dimension:
[0023] Calculate the click-through rate corresponding to this resource interest point according to the click times and exposure times corresponding to this resource interest point;
[0024] Determine the number of exposures corresponding to the resource interest point as the click-through rate confidence corresponding to the resource interest point;
[0025] Concatenate the dimension identifier of the dimension to which the resource interest point belongs, the click-through rate corresponding to the resource interest point, and the click-through rate confidence corresponding to the resource interest point to obtain the interest point matching feature corresponding to the resource interest point.
[0026] In a possible implementation, the predicting the recommendation score of each resource in the resource library according to the interest point matching features respectively corresponding to several resource interest points of each resource in the resource library includes:
[0027] For each resource in the resource library:
[0028] Input the interest point matching features respectively corresponding to several resource interest points of the resource into a pre-trained resource score prediction model, and obtain the recommendation score of the resource output by the resource score prediction model;
[0029] Among them, the resource score prediction model is trained using several training samples. Any training sample includes the interest point matching features respectively corresponding to several resource interest points of a resource recommended to a user, and the feedback result of the user for the recommended resource. The feedback result is used to indicate whether the user clicks on the recommended resource.
[0030] In a possible implementation, the obtaining process of the several training samples includes:
[0031] Recommend several resources to the user;
[0032] For each resource recommended to the user:
[0033] By matching several resource interest points of the resource with several user interest points included in the user portrait of the user, obtain the number of clicks and the number of exposures respectively corresponding to several resource interest points of the resource;
[0034] According to the number of clicks and the number of exposures respectively corresponding to several resource interest points of the resource, construct the interest point matching features respectively corresponding to several resource interest points of the resource;
[0035] Obtain the feedback result of the user for the resource;
[0036] Form a training sample with the interest point matching features respectively corresponding to several resource interest points of the resource and the feedback result of the user for the resource.
[0037] In a possible implementation, the resource score prediction model is a factorization machine FM model, and the FM model is a model that can capture the third-order interaction relationship between features.
[0038] In a possible implementation manner, determining the resources to be recommended according to the recommendation scores of each resource in the resource library includes:
[0039] Normalize the recommendation scores of each resource in the resource library to obtain the normalized scores of each resource in the resource library;
[0040] Sort each resource in the resource library according to the normalized scores of each resource in the resource library to obtain a resource sequence;
[0041] Determine the resources to be recommended according to the resource sequence.
[0042] In a possible implementation manner, sorting each resource in the resource library according to the normalized scores of each resource in the resource library to obtain a resource sequence includes:
[0043] Determine the number of buckets N according to a preset precision;
[0044] Create N buckets according to the number of buckets N, where each bucket has a bucket number, and the bucket numbers of the N buckets range from 0 to N - 1;
[0045] For each resource in the resource library, determine the bucket number corresponding to the resource according to the number of buckets N and the normalized score of the resource, and put the resource into the bucket with the corresponding bucket number;
[0046] Take out resources from the N buckets in the order of decreasing bucket numbers to obtain a resource sequence; or, take out resources from the N buckets in the order of increasing bucket numbers to obtain a resource sequence.
[0047] The second aspect of this application provides a resource recommendation device, including: a user portrait acquisition module, an interest point matching module, an interest point matching feature construction module, a resource score prediction module, a to-be-recommended resource determination module, and a resource recommendation module;
[0048] The user portrait acquisition module is used to acquire the user portrait of the target user, where the user portrait includes a number of user interest points and the click times and exposure times respectively corresponding to the number of user interest points;
[0049] The interest point matching module is used to obtain the click times and exposure times respectively corresponding to a number of resource interest points of each resource in the resource library by matching a number of resource interest points of each resource in the resource library with the number of user interest points;
[0050] The interest point matching feature construction module is used to construct the interest point matching features corresponding to several resource interest points of each resource in the resource library according to the click times and exposure times corresponding to the several resource interest points of each resource in the resource library, wherein the interest point matching features include click-through rate and click-through rate confidence;
[0051] The resource score prediction module is used to predict the recommendation scores of each resource in the resource library according to the interest point matching features corresponding to several resource interest points of each resource in the resource library;
[0052] The resource to be recommended determination module is used to determine the resource to be recommended according to the recommendation scores of each resource in the resource library;
[0053] The resource recommendation module is used to recommend the resource to be recommended to the target user.
[0054] By means of the above technical solution, for the resource recommendation method provided by this application, after obtaining the user portrait of the target user, first, by matching several resource interest points of each resource in the resource library with several user interest points in the user portrait of the target user, the click times and exposure times corresponding to several resource interest points of each resource in the resource library are obtained. Then, according to the click times and exposure times corresponding to several resource interest points of each resource in the resource library, for each resource interest point of each resource in the resource library, an interest point matching feature including click-through rate and click-through rate confidence is constructed. Then, taking the interest point matching features corresponding to several resource interest points of each resource in the resource library as the prediction basis, the recommendation scores of each resource in the resource library are predicted. Finally, the resource to be recommended is determined according to the recommendation scores of each resource in the resource library, and the resource to be recommended is recommended to the target user. Considering that sometimes the click-through rate corresponding to the resource interest point cannot truly reflect the matching degree between the resource and the user interest, the resource recommendation method provided by this application constructs an interest point matching feature including click-through rate and click-through rate confidence for each resource interest point of each resource in the resource library, that is, the click-through rate confidence is introduced on the basis of the click-through rate. For the resources in the resource library, combining the click-through rate confidence on the basis of the click-through rate can predict a more accurate recommendation score. Furthermore, according to the more accurate recommendation score, a resource that is more matched with the interest of the target user can be determined, so as to achieve accurate recommendation of resources. Description of the Drawings
[0055] In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for the description of the embodiments or the prior art. Obviously, the drawings in the following description are only the embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained according to the provided drawings without creative efforts.
[0056] Figure 1 Schematic diagram of a system architecture related to this application;
[0057] Figure 2 Schematic diagram of a hardware structure of a terminal provided by an embodiment of this application;
[0058] Figure 3 Schematic diagram of a hardware structure of a server provided by an embodiment of this application;
[0059] Figure 4 Schematic diagram of the process of a resource recommendation method provided by an embodiment of this application;
[0060] Figure 5 Schematic diagram of the process of obtaining the click times and exposure times respectively corresponding to several resource interest points of each resource in a resource library by matching several resource interest points of each resource in the resource library with several user interest points in the user profile of a target user provided by an embodiment of this application;
[0061] Figure 6 Schematic diagram of the process of constructing interest point matching features respectively corresponding to several resource interest points of each resource in a resource library according to the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library provided by an embodiment of this application;
[0062] Figure 7 Schematic diagram of the structure of a resource recommendation device provided by an embodiment of this application. Detailed implementation manners
[0063] The embodiments of this application will be described below with reference to the accompanying drawings in the embodiments of this application. The terms used in the implementation part of this application are only used to explain the specific embodiments of this application, rather than being intended to limit this application.
[0064] The embodiments of this application will be described below with reference to the accompanying drawings. Those skilled in the art know that with the development of technology and the emergence of new scenarios, the technical solutions provided by the embodiments of this application are equally applicable to similar technical problems.
[0065] In the description and claims of this application and the above-mentioned drawings, terms such as "first" and "second" are used to distinguish similar objects, and do not necessarily describe a specific order or sequence. It should be understood that such terms can be interchanged under appropriate circumstances, which is only a way of distinguishing objects with the same attributes when describing the embodiments of this application. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion, so that a process, method, system, product or device including a series of units does not have to be limited to those units, but may include other units not clearly listed or inherent to these processes, methods, products or devices.
[0066] In one possible implementation, as Figure 1 shown, the system architecture involved in this application may include a terminal 101 and a server 102. The terminal 101 can interact with the server 102 through a network (wired network or wireless network). Among them, the server 102 may include one or more servers ( Figure 1 illustrated by including one server as an example). The terminal sends a user's recommendation request to the server, and the server recommends resources to the user using the resource recommendation method provided in this application.
[0067] The above-mentioned terminal can be a mobile phone, a tablet computer, a wearable device, a vehicle-mounted device, a robot, an augmented reality (AR) / virtual reality (VR) device, a laptop computer, an ultra-mobile personal computer (UMPC), a netbook, a personal digital assistant (PDA), etc., and the embodiments of this application do not impose any restrictions on this.
[0068] Figure 2 shows an optional schematic diagram of the hardware structure of the terminal.
[0069] Referring to Figure 2 shown, the terminal may include a radio frequency unit 210, a memory 220, an input unit 230, a display unit 240, a camera 250 (optional), an audio circuit 260 (optional), a speaker 261 (optional), a microphone 262 (optional), a headphone jack 263 (optional), a processor 270, an external interface 280, a power supply 290, and other components. Those skilled in the art can understand that Figure 2 this is only an example of the terminal, and does not constitute a limitation on the terminal. It may include more or fewer components than shown in the figure, or combine some components, or different components.
[0070] The input unit 230 can be used to receive input digital or character information and generate key signal inputs related to the user settings and function control of the terminal. Specifically, the input unit 230 may include a touch screen 231 (optional) and / or other input devices 232. The touch screen 231 can collect touch operations of the user thereon or nearby (such as operations of the user using any suitable object such as a finger, a joint, a stylus, etc. on or near the touch screen), and drive the corresponding connection device according to a preset program. The touch screen can detect the touch action of the user on the touch screen, convert the touch action into a touch signal and send it to the processor 270, and can receive and execute the command sent by the processor 270; the touch signal at least includes contact coordinate information. The touch screen 231 can provide an input interface and an output interface between the terminal and the user. In addition, multiple types such as resistive, capacitive, infrared, and surface acoustic wave can be used to implement the touch screen. In addition to the touch screen 231, the input unit 230 may further include other input devices. Specifically, the other input devices 232 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, etc.
[0071] The display unit 240 can be used to display information input by the user or information provided to the user, various menus of the terminal, an interactive interface, file display, and / or the playback of any multimedia file.
[0072] The memory 220 can be used to store instructions and data. The memory 220 mainly includes a storage instruction area and a storage data area. The storage data area can store various data, such as multimedia files, texts, etc.; the storage instruction area can store software units such as an operating system, applications, instructions required for at least one function, or their subsets and extended sets. It can also include a non-volatile random access memory; it provides the processor 270 with management of the hardware, software, and data resources in the computing processing device, supports control software and applications. It is also used for the storage of multimedia files and the storage of running programs and applications.
[0073] The processor 270 is the control center of the terminal, connecting various parts of the entire terminal through various interfaces and circuits. By running or executing instructions stored in the memory 220 and invoking data stored in the memory 220, it performs various functions of the terminal and processes data, thereby exercising overall control over the terminal. Optionally, the processor 270 may include one or more processing units; preferably, the processor 270 may integrate an application processor and a modem processor. Among them, the application processor mainly processes the operating system, user interface, application programs, etc., and the modem processor mainly processes wireless communications. It can be understood that the above-mentioned modem processor may not be integrated into the processor 270 either. In some embodiments, the processor and the memory may be implemented on a single chip, and in some embodiments, they may also be separately implemented on independent chips. The processor 270 can also be used to generate corresponding operation control signals, send them to corresponding components of the computing and processing device, read and process data in the software, especially read and process the data and programs in the memory 220, so that each functional module therein executes corresponding functions, thereby controlling the corresponding components to act according to the requirements of the instructions.
[0074] Among them, the memory 220 can be used to store software codes related to the resource recommendation method. The processor 270 can execute the software codes in the memory 220 or can also schedule other units (such as the above-mentioned input unit 230 and display unit 240) to implement corresponding functions.
[0075] The radio frequency unit 210 (optional) can be used for receiving and sending information or signals during a call. For example, after receiving the downlink information of the base station, it is given to the processor 270 for processing; in addition, it sends the designed uplink data to the base station. Generally, the radio frequency unit 210 includes but is not limited to antennas, at least one amplifier, a transceiver, a coupler, a low noise amplifier (LNA), a duplexer, etc. In addition, the radio frequency unit 210 can also communicate with network devices and other devices through wireless communication. This wireless communication can use any communication standard or protocol, including but not limited to the Global System of Mobile communication (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (LTE), email, Short Messaging Service (SMS), etc.
[0076] Among them, in the embodiments of the present application, the radio frequency unit 210 can send data to other devices and can also receive data sent by other devices. It should be understood that the radio frequency unit 210 is optional and can be replaced by other communication interfaces, such as a network interface.
[0077] The terminal further includes a power supply 290 (such as a battery) for supplying power to each component. Preferably, the power supply can be logically connected to the processor 270 through a power management system, so as to realize functions such as management of charging, discharging, and power consumption management through the power management system.
[0078] The terminal further includes an external interface 280, which can be a standard Micro USB interface or a multi-pin connector. It can be used to connect the terminal to other devices for communication and can also be used to connect a charger to charge the terminal.
[0079] Although not shown, the terminal may further include a flash, a wireless fidelity (WiFi) module, a Bluetooth module, sensors with different functions, etc., which will not be elaborated here.
[0080] Next, the product form of the above server will be described.
[0081] Figure 3 A schematic structural diagram of the above server is provided, as Figure 3 shown, the server may include a bus 301, a processing device 302, a communication interface 303, and a storage device 304. The processing device 302, the storage device 304, and the communication interface 303 communicate with each other through the bus 301.
[0082] The bus 301 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For the sake of representation, Figure 3 only a thick line is used to represent it in the figure, but it does not mean that there is only one bus or one type of bus.
[0083] The processing device 302 can be any one or more of processors such as a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).
[0084] The storage device 304 can include volatile memory, such as random access memory (RAM). The storage device 304 can also include non-volatile memory, such as read-only memory (ROM), flash memory, a hard disk drive (HDD), or a solid state drive (SSD).
[0085] The storage device 304 can be used to store software code related to the resource recommendation method. The processing device 302 can call the software code stored in the storage device 304 or can also schedule other units to implement corresponding functions.
[0086] The processor 270 in the above terminal and the processing device 302 in the server can be hardware circuits (such as an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a general-purpose processor, a digital signal processor (DSP), a microprocessor, or a microcontroller, etc.), or a combination of these hardware circuits. For example, the processing device can be a hardware system with the function of executing instructions, such as a CPU, a DSP, etc., or a hardware system without the function of executing instructions, such as an ASIC, an FPGA, etc., or a combination of the above hardware system without the function of executing instructions and the hardware system with the function of executing instructions.
[0087] Currently, there are some resource recommendation methods. A relatively typical resource recommendation method is to pre - establish the association relationship between points of interest and resources in the resource library, obtain the user profile of the target user. The user profile includes several user points of interest and the click - through times and exposure times respectively corresponding to several user points of interest. Calculate the click - through rate corresponding to each user point of interest in the user profile based on the click - through times and exposure times respectively corresponding to several user points of interest in the user profile, so as to obtain the top K points of interest with the highest click - through rate, and obtain the resources associated with the top K points of interest with the highest click - through rate and recommend them to the target user.
[0088] The above - mentioned solution recommends resources based on the click - through rate corresponding to the point of interest, that is, the existing resource recommendation solution only considers the click - through rate. However, only considering the click - through rate cannot achieve accurate recommendation. For example, the exposure times and click - through times corresponding to user point of interest A are 2 times and 1 time in sequence, and the exposure times and click - through times corresponding to user point of interest B are 100 times and 50 times in sequence. Although the click - through rate corresponding to user point of interest A and the click - through rate corresponding to user point of interest B are both 50%, the confidence level of the click - through rate corresponding to user point of interest B is higher. Because the click on user point of interest A may be accidental. Therefore, resources related to user point of interest B should be recommended preferentially.
[0089] In addition, the user profile usually includes user points of interest in multiple dimensions, such as classification dimension, theme dimension, keyword dimension, etc. When the existing resource recommendation method performs resource recommendation, it recommends the resources associated with the top K user points of interest with the highest click - through rate in the classification dimension to the target user. However, using only the points of interest in a single dimension to match and recall resources will have the problem of low recall accuracy.
[0090] Aiming at the problems existing in the existing resource recommendation method, this application proposes a resource recommendation method with relatively high recommendation accuracy. Next, the resource recommendation method provided by this application will be introduced through the following embodiments.
[0091] Please refer to Figure 4 , which shows the schematic flow chart of the resource recommendation method provided by the embodiment of this application. The resource recommendation method may include:
[0092] Step S401: Obtain the user profile of the target user.
[0093] In this embodiment, the user profile of the target user includes several user points of interest and the click - through times and exposure times respectively corresponding to several user points of interest. The several user points of interest in the user profile of the target user are several interest points of the target user.
[0094] It should be noted that the user interest points in the user profile of the target user are the resource interest points of the resources exposed to the target user. For example, if the resource interest points of a resource include interest point A and interest point B, and this resource is exposed to the target user, then interest point A and interest point B will be recorded in the user profile of the target user.
[0095] Among them, the exposure times corresponding to any user interest point in the user profile of the target user are the times of exposing the resources related to this user interest point to the target user, and the click times corresponding to any user interest point in the user profile of the target user are the click times of the target user on the resources related to this user interest point.
[0096] Step S402: By matching several resource interest points of each resource in the resource library with several user interest points in the user profile of the target user, obtain the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library.
[0097] In this embodiment, for any resource interest point of any resource in the resource library, the exposure times corresponding to this resource interest point are the times of exposing the resources related to this resource interest point to the target user, and the click times corresponding to this resource interest point are the click times of the target user on the resources related to this resource interest point.
[0098] Step S403: According to the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library, construct the interest point matching features respectively corresponding to several resource interest points of each resource in the resource library.
[0099] Among them, the interest point matching feature corresponding to any resource interest point includes the click-through rate and the click-through rate confidence corresponding to this resource interest point. The click-through rate corresponding to a resource interest point is the ratio of the click times corresponding to this resource interest point to the exposure times corresponding to this resource interest point, that is, click-through rate = click times / exposure times.
[0100] When making resource recommendations, considering that the recommendation effect based only on the click-through rate is not good, this embodiment introduces the click-through rate confidence on the basis of the click-through rate. The introduction of the click-through rate confidence can improve the accuracy of resource recommendations.
[0101] Step S404: According to the interest point matching features respectively corresponding to several resource interest points of each resource in the resource library, predict the recommendation scores of each resource in the resource library.
[0102] In a possible implementation manner, a pre-trained resource score prediction model can be used to predict the recommendation scores of each resource in the resource library according to the interest point matching features respectively corresponding to several resource interest points of each resource in the resource library.
[0103] The recommendation score of any resource in the resource library reflects the likelihood of the target user clicking on that resource. The higher the recommendation score of the resource, the greater the likelihood that the target user will click on the resource. Conversely, the lower the score of the resource, the smaller the likelihood that the target user will click on the resource.
[0104] Step S405: Determine the resources to be recommended based on the recommendation scores of each resource in the resource library, and recommend the resources to be recommended to the target user.
[0105] Specifically, each resource in the resource library can be sorted according to the recommendation scores of each resource in the resource library to obtain a resource sequence. Then, the resources to be recommended can be determined based on the resource sequence, and finally, the resources to be recommended can be recommended to the target user.
[0106] In a possible implementation, the user profile of the target user may include user interest points in multiple dimensions (for example, user interest points in the classification dimension, user interest points in the theme dimension, user interest points in the keyword dimension, etc.). Similarly, the several resource interest points of each resource in the resource library can also be resource interest points in multiple dimensions.
[0107] In view of this, for each resource in the resource library, the resource interest points of the resource in each dimension can be matched with the user interest points in the same dimension in the user profile of the target user to obtain the click times and exposure times corresponding to the resource interest points of the resource in each dimension. After obtaining the click times and exposure times corresponding to the resource interest points of each resource in the resource library in each dimension, for each resource in the resource library, the interest point matching features corresponding to the resource interest points of the resource in each dimension can be determined based on the click times and exposure times corresponding to the resource interest points of the resource in each dimension. After obtaining the interest point matching features corresponding to the resource interest points of each resource in the resource library in each dimension, for each resource in the resource library, the recommendation score of the resource can be predicted based on the interest point matching features corresponding to the resource interest points of the resource in each dimension. After obtaining the recommendation scores of each resource in the resource library, the resources to be recommended can be determined based on the recommendation scores of each resource in the resource library, and then the resources to be recommended can be recommended to the target user.
[0108] The resource recommendation method provided by the embodiment of the present application, after obtaining the user portrait of the target user, first matches several resource interest points of each resource in the resource library with several user interest points in the user portrait of the target user to obtain the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library. Then, according to the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library, an interest point matching feature including click-through rate and click-through rate confidence is constructed for each resource interest point of each resource in the resource library. Then, taking the interest point matching features respectively corresponding to several resource interest points of each resource in the resource library as the prediction basis, the recommendation score of each resource in the resource library is predicted. Finally, the resources to be recommended are determined according to the recommendation scores of the resources in the resource library, and the resources to be recommended are recommended to the target user. Considering that sometimes the click-through rate corresponding to the resource interest point cannot truly reflect the matching degree between the resource and the user interest, the resource recommendation method provided by the embodiment of the present application constructs an interest point matching feature including click-through rate and click-through rate confidence for each resource interest point of each resource in the resource library, that is, the click-through rate confidence is introduced on the basis of the click-through rate. Combining the click-through rate confidence on the basis of the click-through rate can predict a relatively accurate recommendation score for the resource. Furthermore, according to the relatively accurate recommendation score, a resource that is more matched with the interest of the target user can be determined, so as to achieve accurate resource recommendation. In addition, the resource recommendation method provided by the embodiment of the present application can construct an interest point matching feature for the resource interest points in multiple dimensions of the resource, and predict the recommendation score according to the interest point matching features corresponding to the resource interest points in multiple dimensions. Then, the resources to be recommended are determined according to the recommendation scores of the resources and recommended. It can be seen that the resource recommendation method provided by the embodiment of the present application does not perform resource matching for the interest points in a single dimension, but performs resource matching for the interest points in multiple dimensions, so that the recommendation accuracy of the resource can be improved, and thus the user experience can be improved.
[0109] In another embodiment of the present application, the specific implementation process of "step S402: By matching several resource interest points of each resource in the resource library with several user interest points in the user portrait of the target user, the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library are obtained" in the above embodiment is introduced.
[0110] Please refer to Figure 5 , which shows a schematic flowchart of obtaining the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library by matching several resource interest points of each resource in the resource library with several user interest points in the user portrait of the target user, and may include:
[0111] Step S501: For each resource interest point of each resource in the resource library, determine whether there is a user interest point in the user profile of the target user that matches the resource interest point.
[0112] Exemplarily, the resource in the resource library is an article, and a resource interest point of a resource in the resource library is "technology". Assume that the user profile of the target user includes the user interest point "technology", then it is determined that there is a user interest point in the user profile of the target user that matches the resource interest point.
[0113] Step S502a: If there is a user interest point in the user profile of the target user that matches the resource interest point, then determine the click count and exposure count corresponding to the user interest point that matches the resource interest point as the click count and exposure count corresponding to the resource interest point.
[0114] Exemplarily, the resource in the resource library is an article, a resource interest point of a resource in the resource library is "technology", and the user profile of the target user includes the user interest point "technology", that is, there is a user interest point in the user profile of the target user that matches the resource interest point. Then, determine the click count and exposure count corresponding to the user interest point "technology" in the user profile of the target user as the click count and exposure count corresponding to the resource interest point "technology".
[0115] Step S502b: If there is no user interest point in the user profile of the target user that matches the resource interest point, then determine that both the click count and exposure count corresponding to the resource interest point are 0.
[0116] If there is no user interest point in the user profile of the target user that matches the resource interest point, it means that the resource involving the resource interest point has not been exposed to the target user. Furthermore, for the target user, both the click count and exposure count corresponding to the resource interest point are 0.
[0117] As mentioned in the above embodiments, the user profile of the target user may include user interest points in multiple dimensions, and several resource interest points of each resource in the resource library may also be resource interest points in multiple dimensions. In view of this, through the above process, the click count and exposure count corresponding to each resource interest point of each resource in the resource library in each dimension can be obtained.
[0118] In another embodiment of the present application, the specific implementation process of "Step S403: Construct interest point matching features corresponding to several resource interest points of each resource in the resource library according to the click counts and exposure counts corresponding to the several resource interest points of each resource in the resource library" in the above embodiment is introduced.
[0119] Please refer to Figure 6, which shows a schematic flow chart of constructing the interest point matching features corresponding to each resource interest point of each resource in the resource library according to the number of click times and exposure times corresponding to each resource interest point, may include:
[0120] Step S601: For each resource interest point of each resource in the resource library in each dimension, calculate the click-through rate corresponding to the resource interest point according to the number of click times and exposure times corresponding to the resource interest point.
[0121] The click-through rate corresponding to the resource interest point is the ratio of the number of click times corresponding to the resource interest point to the number of exposure times corresponding to the resource interest point.
[0122] Step S602: Determine the exposure times corresponding to the resource interest point as the click-through rate confidence corresponding to the resource interest point.
[0123] In this embodiment, the exposure times corresponding to the resource interest point are used as the click-through rate confidence corresponding to the resource interest point.
[0124] After obtaining the click-through rate and the click-through rate confidence, the obtained click-through rate and click-through rate confidence can be binned. After binning, the final click-through rate and click-through rate confidence are obtained. Binning can reduce outliers and reduce the complexity of the data.
[0125] Step S603: Concatenate the dimension identifier of the dimension to which the resource interest point belongs, the click-through rate corresponding to the resource interest point, and the click-through rate confidence corresponding to the resource interest point to obtain the interest point matching feature corresponding to the resource interest point.
[0126] Among them, the dimension identifier can be a dimension name, such as "classification".
[0127] Through the above process, the interest point matching features corresponding to each resource interest point of each resource in the resource library in each dimension can be obtained.
[0128] In another embodiment of the present application, the specific implementation process of "Step S404: Predict the recommendation score of each resource in the resource library according to the interest point matching features corresponding to each resource interest point of each resource in the resource library" in the above embodiment is introduced.
[0129] In a possible implementation manner, the process of predicting the recommendation score of each resource in the resource library according to the interest point matching features corresponding to each resource interest point of each resource in the resource library may include: For each resource in the resource library, input the interest point matching features corresponding to each resource interest point of the resource (the interest point matching features corresponding to the resource interest points in each dimension) into a pre-trained resource score prediction model, and obtain the recommendation score of the resource output by the resource score prediction model.
[0130] The resource score prediction model in this embodiment is trained using the training samples in the training dataset. Among them, the training dataset includes multiple training samples. Any training sample includes the interest point matching features corresponding to several resource interest points of a resource recommended to the user, and the feedback result of the user for the recommended resource. The feedback result is used to indicate whether the user has clicked on the recommended resource. Exemplarily, the feedback result of the user for a recommended resource is "1" or "0", where "1" means the user has clicked on the recommended resource, and "0" means the user has not clicked on the recommended resource.
[0131] Among them, the process of obtaining the training samples in the training dataset includes:
[0132] Step a1: Recommend s resources to the user.
[0133] Step a2: For each resource recommended to the user, by matching several resource interest points of the resource with several user interest points included in the user portrait of the user, obtain the click count and exposure count corresponding to each of the several resource interest points of the resource.
[0134] Step a3: Construct the interest point matching feature corresponding to the resource according to the click count and exposure count corresponding to each of the several resource interest points of the resource.
[0135] For the specific implementation processes of step a2 and step a3, reference can be made to the relevant parts in the above embodiment, and this embodiment will not elaborate here.
[0136] Step a4: Obtain the feedback result of the user for the resource.
[0137] Step a5: Combine the interest point matching features corresponding to each of the several resource interest points of the resource and the feedback result of the user for the resource to form a training sample.
[0138] Through the above process, s training samples can be obtained. By repeatedly executing steps a1 to a5 multiple times, more training samples can be obtained.
[0139] Next, the process of training the resource score prediction model using the training samples in the training dataset will be introduced.
[0140] The process of training the resource score prediction model using the training samples in the training dataset may include:
[0141] Step b1: Obtain training samples from the training dataset.
[0142] Step b2: Input the interest point matching features in the obtained training samples into the resource score prediction model to obtain the recommended score predicted by the resource score prediction model.
[0143] The interest point matching features in the obtained training samples (i.e., the interest point matching features corresponding to several resource interest points of a piece of resource recommended to the user) are input into the resource score prediction model, and the resource score prediction model predicts the recommendation score of the resource based on the input interest point matching features and outputs it.
[0144] Step b3: Determine the prediction loss of the resource score prediction model according to the recommendation score predicted by the resource score prediction model and the feedback result of the user on the resource in the obtained training samples.
[0145] The prediction loss of the resource score prediction model can adopt the cross-entropy loss, and the calculation method of the cross-entropy loss is the prior art, which will not be elaborated in this embodiment.
[0146] Step b4: Update the parameters of the resource score prediction model according to the prediction loss of the resource score prediction model.
[0147] Using the training samples in the training dataset, the resource score prediction model is iteratively trained multiple times according to the process of step b1 to step b4 above until the training end condition is satisfied.
[0148] In a possible implementation manner, the resource score prediction model can be a factorization machine FM model. The FM model can be an existing FM model that can capture the second-order interaction relationship between features. In order to obtain a better recommendation effect, this application proposes an FM model that can capture the third-order interaction relationship between features, which is called the FM3 model in this application. Compared with the FM model that can capture the second-order interaction relationship between features, the FM3 model has higher accuracy and better performance.
[0149] The FM3 model can be expressed as:
[0150] (1).
[0151] Wherein, is the global bias term, , and are features, is the weight corresponding to the feature , is the latent vector of the feature , is the latent vector of the feature , is the latent vector of the feature , is the number of features.
[0152] The calculation method of the third-order cross part of the FM3 model is as follows:
[0153] (2).
[0154] Among them, is the dimension of the hidden vector v, is the feature of the hidden vector the f-th parameter of is the feature of the hidden vector the f-th parameter of is the feature of the hidden vector the f-th parameter of
[0155] The combinations of the three variables i, j, and l are:
[0156] (3);
[0157] (4);
[0158] (5).
[0159] For (4.1), (4.2), (4.3), (4.4), (4.5), (4.6), the results are all equal.
[0160] For (5.1), (5.2), (5.3), (5.4), (5.5), (5.6), the results are all equal.
[0161] Therefore, the calculation method of the third order is as follows:
[0162] (6).
[0163] According to Equation (6), the target result is:
[0164] (7).
[0165] The formula is optimized as follows:
[0166] (8);
[0167] (9).
[0168] (10).
[0169] (11);
[0170] (12).
[0171] In another embodiment of the present application, the specific implementation process of "Step S405: Determine the resources to be recommended according to the recommendation scores of each resource in the resource library, and recommend the resources to be recommended to the target user" in the above embodiment is introduced.
[0172] The implementation process of determining the resources to be recommended according to the recommendation scores of each resource in the resource library and recommending the resources to be recommended to the target user may include:
[0173] Step c1: Normalize the recommendation scores of each resource in the resource library to obtain the normalized scores of each resource in the resource library.
[0174] Specifically, obtain the maximum recommendation score score max and the minimum recommendation score score min from the recommendation scores of each resource in the resource library, and normalize the recommendation scores of each resource in the resource library according to the following formula:
[0175] y = (x - score min ) / (score max - score min ) (13).
[0176] Wherein, x represents the recommendation score of a resource in the resource library, and y represents the normalized score of this resource.
[0177] Step c2: Sort each resource in the resource library according to the normalized scores of each resource in the resource library to obtain a resource sequence.
[0178] There are various implementation manners for sorting each resource in the resource library according to the normalized scores of each resource in the resource library. The present embodiment provides the following two implementation manners.
[0179] The first implementation manner: Sort each resource in the resource library in descending order (or ascending order) of scores.
[0180] Considering that the sorting speed of the above first implementation manner is relatively slow (assuming there are n resources in the resource library, the time complexity of the above resource sorting manner is o(nlog(n))), the present embodiment provides the following second implementation manner.
[0181] The second implementation method: Determine the number of buckets N according to the preset precision; create N buckets according to the number of buckets N, each bucket has a bucket number, and the bucket numbers of the N buckets range from 0 to N - 1; for each resource in the resource library, determine the bucket number corresponding to the resource according to the number of buckets N and the normalized score of the resource, and put the resource into the bucket with the corresponding bucket number; take out the resources from the N buckets in the order from high to low (or from low to high) of the bucket numbers to obtain a resource sequence.
[0182] In a possible implementation, a precision can be selected from several predefined precisions (such as 0.1, 0.01, 0.001, 0.0001, 0.00001, 0.000001) according to actual requirements as the preset precision. Of course, a precision can also be preset according to actual requirements.
[0183] If the preset precision is represented as a, then the number of buckets N is 1 / a. After determining the number of buckets N, create N buckets, and the bucket numbers of the N buckets are 0, 1, 2, …, N - 1. Then, determine the bucket number corresponding to the resource according to the number of buckets N and the normalized score of the resource in the resource library. Specifically, the bucket number M corresponding to a resource can be calculated by the following formula:
[0184] M = int(y × N) (14).
[0185] After determining the bucket number corresponding to the resource, put the resource into the bucket with the corresponding bucket number. Next, the resources can be taken out from each bucket in the order from high to low or from low to high of the bucket numbers to obtain a resource sequence. In a possible implementation, the resources taken out from the bucket can be put into the result set array. It should be noted that in order to improve the sorting speed, the resources in the bucket may not be sorted.
[0186] Exemplarily, if the preset precision is 0.1, then the number of buckets is 10, and the bucket numbers of the 10 buckets are 0, 1, 2, 3, 4, … 9.
[0187] Suppose the normalized score of a piece of resource is 0.86, and the bucket number corresponding to this piece of resource is int(0.86×10)=8. Then this piece of resource is put into bucket No. 8. In a similar way, each resource in the resource library can be put into 10 buckets. Then, the resources can be taken out from each bucket in the order from the highest bucket number to the lowest and put into the result set array. Specifically, first, the resources in bucket No. 9 are taken out one by one and put into the result set array, then the resources in bucket No. 8 are taken out one by one and put into the result set array, then the resources in bucket No. 7 are taken out one by one and put into the result set array, …, finally, the resources in bucket No. 0 are taken out one by one and put into the result set array. Of course, the resources can also be taken out from each bucket in the order from the lowest bucket number to the highest and put into the result set array. Specifically, first, the resources in bucket No. 0 are taken out one by one and put into the result set array, then the resources in bucket No. 1 are taken out one by one and put into the result set array, then the resources in bucket No. 2 are taken out one by one and put into the result set array, …, finally, the resources in bucket No. 9 are taken out one by one and put into the result set array.
[0188] The speed of the second sorting method above is relatively fast. Suppose there are n pieces of resources in the resource library, then the time complexity of the second sorting method above is o(n).
[0189] Step c3: Determine the resources to be recommended according to the resource sequence, and recommend the resources to be recommended to the target user.
[0190] When sorting the resources, if the resources are taken out from each bucket in the order from the highest bucket number to the lowest, then the top K resources (i.e., the first K resources) of the resource sequence are determined as the resources to be recommended. If the resources are taken out from each bucket in the order from the lowest bucket number to the highest, then the last K resources in the resource sequence are determined as the resources to be recommended, where K is an integer greater than or equal to 1, and the specific value of K can be set according to the actual scenario.
[0191] After determining the resources to be recommended, the resources to be recommended can be recommended to the target user.
[0192] The above introduces the resource recommendation method provided by the embodiments of the present application. The following will introduce the device for implementing the above resource recommendation method.
[0193] Please refer to Figure 7 , Figure 7 which is a schematic structural diagram of a resource recommendation device provided by the embodiments of the present application. The resource recommendation device may include: a user portrait acquisition module 701, an interest point matching module 702, an interest point matching feature construction module 703, a resource score prediction module 704, a to-be-recommended resource determination module 705, and a resource recommendation module 706.
[0194] The user profile acquisition module 701 is used to acquire the user profile of the target user, where the user profile includes a number of user interest points and the corresponding click times and exposure times for each of the number of user interest points.
[0195] The interest point matching module 702 is used to obtain the corresponding click times and exposure times for each of the number of resource interest points in the resource library by matching the number of resource interest points of each resource in the resource library with the number of user interest points.
[0196] The interest point matching feature construction module 703 is used to construct the interest point matching features corresponding to each of the number of resource interest points in the resource library according to the corresponding click times and exposure times for each of the number of resource interest points in the resource library, where the interest point matching features include click-through rate and click-through rate confidence.
[0197] The resource score prediction module 704 is used to predict the recommended scores of each resource in the resource library according to the interest point matching features corresponding to each of the number of resource interest points in the resource library.
[0198] The to-be-recommended resource determination module 705 is used to determine the to-be-recommended resources according to the recommended scores of each resource in the resource library.
[0199] The resource recommendation module 706 is used to recommend the to-be-recommended resources to the target user.
[0200] In a possible implementation manner, when the interest point matching module 702 obtains the corresponding click times and exposure times for each of the number of resource interest points in the resource library by matching the number of resource interest points of each resource in the resource library with the number of user interest points, it specifically is used for:
[0201] For each resource interest point of each resource in the resource library:
[0202] Determine whether there is a user interest point in the number of user interest points that matches the resource interest point;
[0203] If there is a user interest point that matches the resource interest point, determine the click times and exposure times corresponding to the user interest point that matches the resource interest point as the click times and exposure times corresponding to the resource interest point;
[0204] If there is no user interest point that matches the resource interest point, determine that the click times and exposure times corresponding to the resource interest point are both 0.
[0205] In a possible implementation, several resource interest points of each resource in the resource library are resource interest points in multiple dimensions. When the interest point matching module 702 obtains the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library by matching several resource interest points of each resource in the resource library with several user interest points, it is specifically used for:
[0206] For each resource in the resource library:
[0207] By matching the resource interest points of this resource in each dimension with the user interest points in the same dimension among several user interest points, the click times and exposure times corresponding to the interest points of this resource in each dimension are obtained.
[0208] In a possible implementation, when the interest point matching feature construction module 703 constructs the interest point matching features respectively corresponding to several resource interest points of each resource in the resource library according to the click times and exposure times respectively corresponding to several resource interest points of each resource in the resource library, it is specifically used for:
[0209] For the resource interest points of each resource in the resource library in each dimension:
[0210] According to the click times and exposure times corresponding to this resource interest point, calculate the click-through rate corresponding to this resource interest point;
[0211] Determine the exposure times corresponding to this resource interest point as the click-through rate confidence corresponding to this resource interest point;
[0212] Concatenate the dimension identifier of the dimension to which this resource interest point belongs, the click-through rate corresponding to this resource interest point, and the click-through rate confidence corresponding to this resource interest point to obtain the interest point matching feature corresponding to this resource interest point.
[0213] In a possible implementation, when the resource score prediction module 704 predicts the recommendation score of each resource in the resource library according to the interest point matching features respectively corresponding to several resource interest points of each resource in the resource library, it is specifically used for:
[0214] For each resource in the resource library:
[0215] Input the interest point matching features respectively corresponding to several resource interest points of this resource into a pre-trained resource score prediction model to obtain the recommendation score of this resource output by the resource score prediction model;
[0216] Among them, the resource score prediction model is trained using a number of training samples. Any training sample includes the interest point matching features corresponding to a number of resource interest points of a resource recommended to a user, and the feedback result of the user for the recommended resource, where the feedback result is used to indicate whether the user has clicked on the recommended resource.
[0217] In a possible implementation, the resource recommendation device may further include a training data acquisition module. The training data acquisition module is used to acquire a number of training samples.
[0218] When the training data acquisition module acquires a number of training samples, it specifically is used for:
[0219] Recommend a number of resources to the user;
[0220] For each resource recommended to the user:
[0221] By matching a number of resource interest points of the resource with a number of user interest points included in the user portrait of the user, obtain the click times and exposure times corresponding to the number of resource interest points of the resource respectively;
[0222] According to the click times and exposure times corresponding to the number of resource interest points of the resource respectively, construct the interest point matching features corresponding to the number of resource interest points of the resource;
[0223] Form a training sample with the interest point matching features corresponding to the number of resource interest points of the resource and the feedback result of the user for the resource.
[0224] In a possible implementation, the resource score prediction model is a Factorization Machine (FM) model, and the FM model is a model that can capture the third-order interaction relationship between features.
[0225] In a possible implementation, when the to-be-recommended resource determination module 705 determines the to-be-recommended resources according to the recommendation scores of each resource in the resource library, it specifically is used for:
[0226] Normalize the recommendation scores of each resource in the resource library to obtain the normalized scores of each resource in the resource library;
[0227] Sort the resources in the resource library according to the normalized scores of the resources in the resource library to obtain a resource sequence;
[0228] Determine the to-be-recommended resources according to the resource sequence.
[0229] In a possible implementation, when the to-be-recommended resource determination module 705 sorts the resources in the resource library according to the normalized scores of the resources in the resource library to obtain a resource sequence, it specifically is used for:
[0230] Determine the number of buckets N according to the preset precision;
[0231] Create N buckets according to the number of buckets N, where each bucket has a bucket number, and the bucket numbers of the N buckets range from 0 to N-1;
[0232] For each resource in the resource library, determine the bucket number corresponding to the resource according to the number of buckets N and the normalized score of the resource, and place the resource into the bucket with the corresponding bucket number;
[0233] Take out resources from the N buckets in descending order of bucket numbers to obtain a resource sequence; alternatively, take out resources from the N buckets in ascending order of bucket numbers to obtain a resource sequence.
[0234] The resource recommendation device provided by the embodiments of the present application has a high resource recommendation accuracy and a good user experience.
[0235] The embodiments of the present application also provide an electronic device, which may include: at least one processor and a memory connected to the processor.
[0236] Among them, the memory is used to store a computer program, and the processor is used to execute the computer program so that the electronic device can implement the steps of the resource recommendation method provided by the above embodiments.
[0237] The embodiments of the present application also provide a computer storage medium, and the storage medium carries one or more computer programs. When the one or more computer programs are executed by an electronic device, the electronic device can implement the steps of the resource recommendation method provided by the above embodiments.
[0238] The embodiments of the present application also provide a computer program product, including computer-readable instructions. When the computer-readable instructions run on an electronic device, the electronic device can implement the steps of the resource recommendation method provided by the above embodiments.
[0239] In addition, it should be noted that the device embodiments described above are only illustrative. The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. In addition, in the drawings of the device embodiments provided by the present application, the connection relationships between modules indicate that they have communication connections, which can be specifically implemented as one or more communication buses or signal lines.
[0240] Through the description of the above embodiments, those skilled in the art can clearly understand that this application can be implemented by means of software plus necessary general hardware. Of course, it can also be implemented by dedicated hardware including application-specific integrated circuits, dedicated CPUs, dedicated memories, dedicated components, etc. Generally, functions accomplished by computer programs can easily be implemented by corresponding hardware, and the specific hardware structures for implementing the same function can also be diverse, such as analog circuits, digital circuits, or dedicated circuits. However, for this application, software program implementation is a better embodiment in more cases. Based on such an understanding, the technical solution of this application, in essence, or the part that makes contributions to the prior art, can be embodied in the form of a software product. This computer software product is stored in a readable storage medium, such as a computer floppy disk, USB flash drive, mobile hard disk, ROM, RAM, magnetic disk, or optical disc, etc., and includes several instructions to enable a computer device (which can be a personal computer, training device, or network device, etc.) to execute the methods described in various embodiments of this application.
[0241] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product.
[0242] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application are generated in whole or in part. The computer can be a general computer, a dedicated computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website, computer, training device, or data center to another website, computer, training device, or data center by wire (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wirelessly (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can store, or a data storage device such as a training device or data center that includes one or more integrated available media. The available medium can be a magnetic medium (such as a floppy disk, hard disk, magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid state disk (SSD)).
Claims
1. A resource recommendation method, characterized in that Including: Obtain the user profile of the target user, where the user profile includes a number of user interest points and the click times and exposure times respectively corresponding to the number of user interest points; By matching a number of resource interest points of each resource in the resource library with the number of user interest points, obtain the click times and exposure times respectively corresponding to the number of resource interest points of each resource in the resource library; According to the click times and exposure times respectively corresponding to the number of resource interest points of each resource in the resource library, construct the interest point matching features respectively corresponding to the number of resource interest points of each resource in the resource library, where the interest point matching features include click-through rate and click-through rate confidence; Predict the recommendation scores of each resource in the resource library according to the interest point matching features respectively corresponding to the number of resource interest points of each resource in the resource library; Determine the resources to be recommended according to the recommendation scores of each resource in the resource library, and recommend the resources to be recommended to the target user.
2. The resource recommendation method according to claim 1, wherein The step of obtaining the click times and exposure times respectively corresponding to the number of resource interest points of each resource in the resource library by matching a number of resource interest points of each resource in the resource library with the number of user interest points includes: For each resource interest point of each resource in the resource library: Determine whether there is a user interest point in the number of user interest points that matches the resource interest point; If there is a user interest point that matches the resource interest point, determine the click times and exposure times corresponding to the user interest point that matches the resource interest point as the click times and exposure times corresponding to the resource interest point; If there is no user interest point that matches the resource interest point, determine that the click times and exposure times corresponding to the resource interest point are both 0.
3. The resource recommendation method according to claim 1, wherein The number of resource interest points of each resource in the resource library are resource interest points in multiple dimensions; The step of obtaining the click times and exposure times respectively corresponding to the number of resource interest points of each resource in the resource library by matching a number of resource interest points of each resource in the resource library with the number of user interest points includes: For each resource in the resource library: By matching the resource interest points of the resource in each dimension with the user interest points in the same dimension among the number of user interest points, obtain the click times and exposure times corresponding to the resource interest points of the resource in each dimension.
4. The resource recommendation method according to claim 1, wherein The number of resource interest points of each resource in the resource library are resource interest points in multiple dimensions; The step of constructing the interest point matching features respectively corresponding to the number of resource interest points of each resource in the resource library according to the click times and exposure times respectively corresponding to the number of resource interest points of each resource in the resource library includes: For each resource interest point of each resource in the resource library in each dimension: Calculate the click-through rate corresponding to the resource interest point according to the click times and exposure times corresponding to the resource interest point; Determine the exposure times corresponding to the resource interest point as the click-through rate confidence corresponding to the resource interest point; Concatenate the dimension identifier of the dimension to which the resource point of interest belongs, the click-through rate corresponding to the resource point of interest, and the click-through rate confidence corresponding to the resource point of interest to obtain the point of interest matching feature corresponding to the resource point of interest.
5. The resource recommendation method according to claim 1, wherein Predicting the recommendation score of each resource in the resource library according to the point of interest matching features respectively corresponding to a number of resource points of interest of each resource in the resource library includes: For each resource in the resource library: Input the point of interest matching features respectively corresponding to a number of resource points of interest of the resource into a pre-trained resource score prediction model to obtain the recommendation score of the resource output by the resource score prediction model; Among them, the resource score prediction model is trained using a number of training samples. Any training sample includes the point of interest matching features respectively corresponding to a number of resource points of interest of a resource recommended to a user, and the feedback result of the user for the recommended resource. The feedback result is used to indicate whether the user has clicked on the recommended resource.
6. The resource recommendation method according to claim 5, wherein The process of obtaining the number of training samples includes: Recommend a number of resources to the user; For each resource recommended to the user: By matching a number of resource points of interest of the resource with a number of user interest points included in the user profile of the user, obtain the number of clicks and the number of exposures respectively corresponding to the number of resource points of interest of the resource; Construct the point of interest matching features respectively corresponding to a number of resource points of interest of the resource according to the number of clicks and the number of exposures respectively corresponding to the number of resource points of interest of the resource; Obtain the feedback result of the user for the resource; Form a training sample with the point of interest matching features respectively corresponding to a number of resource points of interest of the resource and the feedback result of the user for the resource.
7. The resource recommendation method according to claim 5, wherein The resource score prediction model is a factorization machine FM model, and the FM model is a model that can capture the third-order interaction relationship between features.
8. The resource recommendation method according to claim 1, wherein Determining the resource to be recommended according to the recommendation score of each resource in the resource library includes: Normalize the recommendation score of each resource in the resource library to obtain the normalized score of each resource in the resource library; Sort the resources in the resource library according to the normalized scores of the resources in the resource library to obtain a resource sequence; Determine the resource to be recommended according to the resource sequence.
9. The resource recommendation method according to claim 8, wherein Sorting the resources in the resource library according to the normalized scores of the resources in the resource library to obtain a resource sequence includes: Determine the number of buckets N according to the preset precision; Create N buckets according to the number of buckets N, where each bucket has a bucket number, and the bucket numbers of the N buckets range from 0 to N - 1; For each resource in the resource library, determine the bucket number corresponding to the resource according to the number of buckets N and the normalized score of the resource, and put the resource into the bucket with the corresponding bucket number; Take out the resources from the N buckets in the order from high to low bucket numbers to obtain a resource sequence; or, take out the resources from the N buckets in the order from low to high bucket numbers to obtain a resource sequence.
10. A resource recommendation device, characterized in that, Includes: User profile acquisition module, point of interest matching module, point of interest matching feature construction module, resource score prediction module, resource to be recommended determination module, and resource recommendation module; The user profile acquisition module is used to acquire the user profile of the target user, where the user profile includes a number of user interest points and the click times and exposure times respectively corresponding to the number of user interest points; The interest point matching module is used to obtain the click times and exposure times respectively corresponding to the number of resource interest points of each resource in the resource library by matching the number of resource interest points of each resource in the resource library with the number of user interest points; The interest point matching feature construction module is used to construct the interest point matching features respectively corresponding to the number of resource interest points of each resource in the resource library according to the click times and exposure times respectively corresponding to the number of resource interest points of each resource in the resource library, where the interest point matching features include click-through rate and click-through rate confidence; The resource score prediction module is used to predict the recommendation scores of each resource in the resource library according to the interest point matching features respectively corresponding to the number of resource interest points of each resource in the resource library; The to-be-recommended resource determination module is used to determine the to-be-recommended resources according to the recommendation scores of each resource in the resource library; The resource recommendation module is used to recommend the to-be-recommended resources to the target user.
Citation Information
Patent Citations
Article hot spot score prediction method, medium, device and computing equipment
CN110119511A
Method and apparatus for content recommendation
CN111552884A
User interested content recommendation method and device and storage medium
CN117951380A
Recommendation method, device and equipment based on user interest and computer program product
CN119940550A