Methods, apparatus, devices, and storage media for object recommendation

By combining static and dynamic data and dynamically adjusting object recommendations, the problem of poor recommendations in the existing technology is solved, and more accurate and efficient user content recommendations are achieved.

CN112100558BActive Publication Date: 2025-01-03DOUYIN VISION CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202010911397.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-09-02
Publication Date
2025-01-03
Estimated Expiration
2041-01-03

AI Technical Summary

Technical Problem

The existing recommendation technology is based only on historical data and fails to fully consider various participants on the Internet, resulting in poor recommendation results, especially in scenarios such as live shopping and online education, which is difficult to recommend content that users are most interested in.

Method used

By determining the initial object associated with the object recommendation entity based on static data, and obtaining dynamic data generated by the user during the content provided by the object recommendation entity, dynamically adjusting the recommended content to achieve dynamic recommendation.

Benefits of technology

It improves the accuracy and efficiency of object recommendations, ensures that the recommended content is more in line with user needs, and reduces the time for users to find the object of interest in massive information.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112100558B_ABST
    Figure CN112100558B_ABST
Patent Text Reader

Abstract

Disclosed herein is a method, apparatus, device, and storage medium for object recommendation. The method described herein includes: determining a first object associated with an object recommendation entity based on static data, the object recommendation entity providing content for guiding a user to obtain the first object, the static data at least including attribute data of the object recommendation entity and attribute data of multiple candidate objects associated with the first object; obtaining dynamic data associated with a user's behavior with respect to the first object, the behavior occurring during the process of the object recommendation entity providing content; and determining a second object based on the dynamic data, the object recommendation entity will provide content for guiding a user to obtain the second object. In this way, dynamic object recommendation can be achieved, and the accuracy and efficiency of object recommendation can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present disclosure generally relate to the field of information technology, and more particularly, to a method, apparatus, device, and storage medium for object recommendation. Background Art

[0002] With the development of information technology, people are increasingly dependent on the Internet. Various recommendation technologies have been developed to recommend objects of interest to users. Recommendation technology is one of the important guarantee technologies for improving user experience, operating efficiency and accuracy in network application environments. However, currently known recommendation technologies usually only consider the historical behavior of the current target user or other related users, and can only perform recommendations based on historical data. This type of recommendation can be called "static recommendation". Since static recommendation does not fully consider various participants on the network, the recommendation effect needs to be improved. Summary of the invention

[0003] In a first aspect of the present disclosure, a method for object recommendation is provided. The method includes determining a first object associated with an object recommendation entity based on static data, the object recommendation entity providing content for guiding a user to obtain the first object, the static data at least including attribute data of the object recommendation entity and attribute data of multiple candidate objects associated with the first object; obtaining dynamic data associated with a user's behavior with respect to the first object, the behavior occurring during the process of the object recommendation entity providing content; and determining a second object based on the dynamic data, the object recommendation entity will provide content for guiding the user to obtain the second object.

[0004] In a second aspect of the present disclosure, a device for object recommendation is provided. The device includes: a first determination module, which is configured to determine a first object associated with an object recommendation entity based on static data, the object recommendation entity provides content for guiding a user to obtain the first object, the static data at least including attribute data of the object recommendation entity and attribute data of multiple candidate objects associated with the first object; an acquisition module, which is configured to acquire dynamic data associated with a user's behavior with respect to the first object, the behavior occurring in the process of the object recommendation entity providing content; and a second determination module, which is configured to determine a second object based on the dynamic data, the object recommendation entity will provide content for guiding a user to obtain the second object.

[0005] In a third aspect of the present disclosure, a device is provided, comprising one or more processors; and a storage device for storing one or more programs, when the one or more programs are executed by the one or more processors, the one or more processors implement the method according to the first aspect of the present disclosure.

[0006] In a fourth aspect of the present disclosure, a computer-readable medium is provided, on which a computer program is stored, and when the program is executed by a processor, the method according to the second aspect of the present disclosure is implemented.

[0007] It should be understood that the contents described in the summary of the invention are not intended to limit the key or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0008] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements, wherein:

[0009] Figure 1 A schematic diagram illustrating an example environment in which various embodiments of the present disclosure can be implemented;

[0010] Figure 2 A schematic diagram showing an example scenario according to some embodiments of the present disclosure;

[0011] Figure 3 A flowchart of a process for object recommendation according to some embodiments of the present disclosure is shown;

[0012] Figure 4 A flowchart of a process for updating a recommendation model and selecting a second object based on the updated recommendation model according to some embodiments of the present disclosure is shown;

[0013] Figure 5 A schematic block diagram showing an apparatus for object recommendation according to an embodiment of the present disclosure; and

[0014] Figure 6 A block diagram of a computing device capable of implementing various embodiments of the present disclosure is shown. DETAILED DESCRIPTION

[0015] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as being limited to the embodiments described herein, which are instead provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.

[0016] In the description of the embodiments of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may also be included below.

[0017] As mentioned above, traditional recommendation techniques usually only consider historical user behavior, so they can only perform static recommendations based on historical data. In addition, traditional recommendation techniques do not fully consider the various participants on the network, so the recommendation effect is not good.

[0018] For example, with the development of online live broadcasting technology, live shopping has begun to become an important online lifestyle. The products selected and recommended by the anchor will have different degrees of influence on merchants, users, live broadcast platforms and the anchor himself. However, the anchor may only rely on his product selection team to select the products to recommend. Furthermore, even if the anchor uses traditional recommendation technology to determine the products to recommend, such technology is difficult to recommend the products that the anchor's target users are most interested in due to the above-mentioned defects.

[0019] As another example, online education technology is becoming increasingly popular, and the courses chosen by teachers will affect the teaching effect of educational institutions or teachers, or the learning interest or effect of students. However, teachers may only rely on their experience to choose the courses to teach. In addition, even if teachers use traditional recommendation technology to determine the courses to teach, such technology is difficult to maximize the teaching effect or learning interest or effect due to the above-mentioned defects.

[0020] In order to at least partially solve one or more of the above problems and other potential problems, the example embodiments of the present disclosure propose an object recommendation scheme. In general, according to the embodiments described herein, a first object (e.g., a commodity, a course, etc.) associated with an object recommendation entity (e.g., a host, a teacher, etc.) can be determined based on static data. The object recommendation entity provides content for guiding users (e.g., fans, students, etc.) to obtain the first object (e.g., the host provides a live video introducing the commodity, or the teacher provides a course video). The static data includes at least the attribute data of the object recommendation entity and the attribute data of multiple candidate objects associated with the first object (e.g., multiple commodities in a commodity library, or multiple courses in a course list). In addition, dynamic data associated with the user's behavior with respect to the first object can be obtained. Such behavior occurs in the process of providing content by the object recommendation entity. Thus, the second object (e.g., another commodity, a course, etc.) can be determined based on dynamic data. The object recommendation entity will provide content for guiding users to obtain the second object.

[0021] In this way, the solution of the present disclosure can realize dynamic recommendation of objects based on dynamic data. In addition, the solution of the present disclosure comprehensively considers the attributes of the object recommendation entity and various candidate objects, thereby improving the accuracy and efficiency of object recommendation.

[0022] As used herein, the term "model" can learn the association between corresponding inputs and outputs from training data, so that after training is completed, the corresponding output can be generated for a given input. It should be understood that a "model" may also be referred to as a "neural network", "learning model" or "learning network".

[0023] In the following, the embodiments of the present disclosure will be discussed by taking webcasting technology and / or online education technology as examples. However, it should be understood that the solutions of the present disclosure can also be similarly applied to other scenarios, such as advertising recommendations, etc.

[0024] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.

[0025] Figure 1 A schematic diagram of an example environment 100 in which multiple embodiments of the present disclosure can be implemented is shown. In the example environment 100, a computing device 110 can obtain static data 120. For example, the computing device 110 can obtain static data 120 from any storage device (not shown) such as a database that stores static data 120. In some embodiments, the static data 120 may include attribute data of an object recommendation entity 140 (e.g., an anchor, a teacher, etc.). For example, for live broadcasting, the static data 120 may include the number of fans of the anchor, fan portraits, anchor portraits, etc. Similarly, for online education, the static data 120 may include the number of students of the teacher, student portraits, teacher portraits, etc.

[0026] The term "portrait" used herein refers to abstracting the specific information of entities such as fans, anchors, etc. into one or more labels, and using these labels to concretize the image of the entity, thereby characterizing these entities. For example, the fan portrait can be "Internet youth", the anchor portrait can be "popular anchor of electronic products", the student portrait can be "mathematics specialty student", and the teacher portrait can be "Olympiad lecturer".

[0027] In addition, in some embodiments, the static data 120 may also include attribute data of multiple candidate objects, for example, attribute data of multiple commodities in a commodity library (such as price, category, promotion method, etc.), or attribute data of multiple courses in a course list (such as subject, duration, difficulty, etc.).

[0028] Optionally, in some embodiments, the static data 120 may also include attribute data of the user 150 and / or historical data associated with historical behaviors of the user 150 on multiple candidate objects. The attribute data of the user 150 may be the gender, age, geographic location, etc. of the user 150 such as a fan, student, etc. The historical data may be comments, likes, collections, purchases, shares, etc. of the user 150 in the past on commodities, courses, etc.

[0029] The computing device 110 may determine a first object 130 (e.g., a product, a course, etc.) associated with an object recommendation entity 140 based on the static data 120. The object recommendation entity 140 provides content for guiding a user 150 (e.g., a fan, a student, etc.) to acquire the first object 130. For example, a host may provide a live video introducing a product to guide fans to purchase the product, or a teacher may provide a course video to students to guide them to purchase, watch, or download the course.

[0030] In this way, personalized objects to be recommended can be selected for the object recommendation entity 140, so that the selected objects are more easily obtained by the user 150, thereby improving the accuracy and efficiency of object recommendation. For example, the anchor may be very good at recommending electronic products, most of the anchor's fans are male digital enthusiasts, and there is a mobile phone in the product library ready for promotion on the same day. In this case, choosing to recommend the mobile phone to fans for the anchor will achieve highly accurate and efficient recommendations. As another example, a teacher may be very good at teaching geometry, most of the teacher's students are geometry enthusiasts, and a geometry class is scheduled in the course list for the day. In this case, choosing to teach the geometry class for the teacher will achieve highly accurate and efficient recommendations.

[0031] In addition, the computing device 110 may obtain dynamic data 160 associated with the behavior of the user 150 on the first object 130. Such behavior occurs in the process of providing content by the object recommendation entity 140. For example, in the process of the anchor live broadcasting to introduce the product or in the process of the teacher teaching the course, the fans or students may comment, like, collect, purchase, share, etc. the product or course.

[0032] Thus, the computing device 110 may determine the second object 170 (e.g., another product, course, etc.) based on the dynamic data 160. The object recommendation entity 140 will provide content for guiding the user 150 to obtain the second object 170. For example, a host may provide a live video introducing another product to guide fans to purchase the other product, or a teacher may provide a course video of another course to students to guide them to purchase, watch, or download the other course.

[0033] In this way, the selection of the second object 170 is performed dynamically, for example, dynamically selected during the live broadcast of the first product by the anchor, or dynamically selected when the teacher teaches a class. For example, the various behaviors (such as comments, likes, collections, purchases, shares, etc.) performed by fans currently watching the live broadcast on the mobile phone recommended by the anchor can reflect that these users are interested in electronic products. In this case, recommended electronic products such as headphones, chargers, or another mobile phone can continue to be selected from the product library. As another example, the various behaviors of students currently watching the course on the geometry class taught by the teacher can reflect that these students are interested in mathematics, and the arithmetic class can continue to be selected from the course list.

[0034] In some embodiments, in addition to the first object 130, the computing device 110 may determine multiple objects to be recommended based on the static data 120. In this case, the dynamically determined second object 170 may replace one of the multiple objects to be recommended, or join multiple objects to be recommended. Thus, unlike the traditional situation where the recommended products are determined before the anchor starts the live broadcast, or the courses are determined before the teacher starts the class, the subsequent recommended products or courses can be dynamically adjusted according to the behavior of fans or students.

[0035] In this way, on the one hand, the recommended object can be determined dynamically, accurately and quickly for the object recommendation entity 140, so that the object recommended by the object recommendation entity 140 is more in line with the needs of its target users. On the other hand, it is also easier for the user 150 to find the object he is interested in, thereby saving the time spent on selecting the object of interest from the massive amount of information.

[0036] Figure 2 A schematic diagram of an example scenario 200 according to some embodiments of the present disclosure is shown. Taking live broadcast as an example, initially, the computing device 110 may select various objects to be recommended for the object recommendation entity 140 based on the static data 120. For example, the computing device may use a trained recommendation model to select objects to be recommended based on the static data 120. These objects to be recommended may include at least the first object 130, and may optionally include other objects to be recommended, such as objects 230 and 240 to be recommended. In some embodiments, these objects to be recommended may be formed into a list 220 of objects to be recommended.

[0037] The object recommendation entity 140 can broadcast live according to the objects listed in the to-be-recommended object list 220 to recommend these objects to the user 150. Assume that the object recommendation entity 140 is recommending the first object 130 through live broadcast. At this time, the user 150 can watch the live broadcast of the first object 130 recommended by the object recommendation entity 140 on its terminal device 210, and perform actions such as like, share, purchase and / or comment.

[0038] The computing device 110 may adjust the objects in the list of objects to be recommended 220 based on the dynamic data 160, thereby generating an updated list of objects to be recommended 250. For example, the computing device 110 may use a streaming computing engine to determine the second object 170 based on the dynamic data 160. The second object 170 may be added to the list of objects to be recommended 220 to generate an updated list of objects to be recommended 250. Alternatively, the second object 170 may also replace an object in the list of objects to be recommended 220 (such as the objects 230 and / or 240 to be recommended) to generate an updated list of objects to be recommended 250.

[0039] In this way, the object recommendation entity 14 can dynamically, accurately, and quickly determine the objects to be recommended, so that the objects recommended by the object recommendation entity 14 are more likely to be the objects that the user 150 is interested in.

[0040] The following will be combined Figure 3-Figure 4 The operations performed by the computing device 110 are described in detail. Figure 3 FIG. 3 is a flowchart of a process 300 for object recommendation according to some embodiments of the present disclosure. For example, the process 300 may be performed as follows: Figure 1 The process 300 is performed by the computing device 110 shown. It should be understood that the process 300 may also include additional steps not shown and / or may omit the steps shown, and the scope of the present disclosure is not limited in this respect.

[0041] In block 310, the computing device 110 determines the first object 130 associated with the object recommendation entity 140 based on the static data 120. The object recommendation entity 140 may provide content for guiding the user 150 to obtain the first object 130. For example, the computing device 110 may determine the product that the anchor wants to recommend based on the static data 120, and the anchor may provide a live video introducing the product to guide fans to purchase the product. Alternatively, the computing device 110 may determine the course that the teacher wants to teach based on the static data 120, and the teacher may provide the course video to the students to guide the students to purchase, watch or download the course.

[0042] As described above, the static data 120 includes at least the attribute data of the object recommendation entity 140 and the attribute data of multiple candidate objects associated with the first object 130. In some embodiments, the static data 120 may also include the attribute data of the user and / or the historical data associated with the historical behavior of the user for multiple candidate objects.

[0043] The first object 130 can be determined in various ways. In some embodiments, the first object 130 can be determined by pattern matching. Specifically, the computing device 110 can determine the pattern indicating the object to be recommended based on at least one of the attribute data of the object recommendation entity 140, the attribute data of the user, and the historical data. For example, the anchor's portrait is a "popular anchor of electronic products", the fans are aged 15-30 years old, the gender is male, and the fans have purchased electronic products within a month. In this case, it can be determined that the pattern of the goods to be recommended is electronic products. As another example, the teacher's portrait is a "history teacher", the student's geographical location is Beijing, and he has shared popular science articles about the Ming Dynasty. In this case, it can be determined that the pattern of the course to be recommended is the history of Beijing during the Ming Dynasty.

[0044] The computing device 110 may determine whether the attribute data of each of the plurality of candidate objects matches the determined pattern. In some embodiments, for each of the plurality of candidate objects, the computing device 110 may determine whether the attribute data of the corresponding object matches the pattern. For example, for each commodity in the commodity library, it may be determined whether the attribute data of the commodity matches an electronic product, or for each course in the course list, it may be determined whether the attribute data of the course matches the history of Beijing during the Ming Dynasty.

[0045] If the attribute data of the corresponding object matches the pattern, the computing device 110 determines the corresponding object as the first object 130. For example, the category of mobile phones in the commodity library is electronic products or the category of the history of the Forbidden City in the course list is the history of Beijing during the Ming Dynasty, and thus can be determined as the first object 130.

[0046] Furthermore, in addition to the pattern matching method, a trained recommendation model may be used to determine the first object 130. Specifically, the computing device 110 may obtain a recommendation model that at least characterizes the relationship between the static data 120 and the object to be recommended. The computing device 110 may apply the static data 120 to the recommendation model to select the first object 130 from a plurality of candidate objects.

[0047] In some embodiments, before using the recommendation model to determine the first object 130, the computing device 110 may train the recommendation model. Specifically, the computing device 110 may input static data of multiple candidate objects and identifiers of objects to be recommended from the multiple candidate objects as training samples into the recommendation model to train the recommendation model. Thus, the trained recommendation model can well characterize the relationship between the static data 120 and the objects to be recommended. It should be understood that in some embodiments, in addition to the first object 130, the computing device 110 may also determine multiple objects to be recommended based on the static data 120.

[0048] The above-mentioned stage of determining the first object 130 through historical or past static data 120 can be considered as a cold start stage. In the cold start stage, one or more objects to be recommended are preliminarily selected for the object recommendation entity 140. After the object recommendation entity 140 begins to provide content for guiding the user 150 to obtain the first object 130 (for example, after the anchor starts live broadcasting, or the teacher starts lecturing), the user 150 will perform various actions on the first object 130 (for example, comment, like, collect, purchase, share, etc.). By collecting the dynamic data 160 of the user 150, the object to be recommended by the object recommendation entity 140 can be dynamically adjusted, thereby recommending to the user 150 the object that he or she is more interested in.

[0049] To this end, in block 320, the computing device 110 may obtain dynamic data 160 associated with the user's behavior on the first object 130. Such behavior occurs in the process of providing content by the object recommendation entity 140. The dynamic data 160 may include data associated with a comment operation performed by the user 150 on the first object 130, data associated with a like operation performed by the user 150 on the first object 130, data associated with a collection operation performed by the user 150 on the first object 130, data associated with a purchase operation performed by the user 150 on the first object 130, and / or data associated with a share operation performed by the user 150 on the first object 130, etc.

[0050] In box 330, the computing device 110 can determine the second object 170 based on the dynamic data 160. The object recommendation entity 140 will provide content for guiding the user 150 to obtain the second object 170. For example, through the various behaviors (such as comments, likes, favorites, purchases, shares, etc.) of the fans currently watching the live broadcast on the mobile phone recommended by the anchor, it can be reflected that these users are interested in electronic products, and the recommended electronic products can continue to be selected from the product library. As another example, through the various behaviors of the students currently watching the course on the geometry class taught by the teacher, it can be reflected that these students are interested in mathematics, and the arithmetic class can continue to be selected from the course list.

[0051] In some embodiments, the recommendation model can be updated with the help of a streaming computing engine, thereby achieving dynamic adjustment of the objects to be recommended. In principle, in the iterative process of dynamic model update based on the streaming computing engine, the user's dynamic data is merged and sampled by the streaming computing engine within a predetermined time window (for example, a minute-level window) to generate feature data representing the dynamic data, such as a vector representing the dynamic data. Then, the feature data is used as an input sample to perform model iteration at the minute level, and an updated recommendation model is output after the iteration is completed. The model can be trained for various goals. For example, the goal of model training can be to maximize the number of purchases, the number of shares, etc.

[0052] In the following, we will combine Figure 4 A flowchart of a process 400 for updating a recommendation model and selecting a second object 170 based on the updated recommendation model is described in detail. The computing device 110 may update the recommendation model based on the dynamic data 160 and the static data 120. The recommendation model characterizes the relationship between the dynamic data 160, the static data 120, and the object to be recommended. Specifically, in block 410, the computing device 110 may apply the dynamic data 160 to a streaming computing engine to generate a feature representation of a portion of the dynamic data within a predetermined time window, such as a vector characterizing the portion of the dynamic data within the predetermined time window.

[0053] In box 420, the computing device 110 may update the recommendation model based on the feature representation and the static data 120. In box 430, the computing device 110 may apply the dynamic data 160 and the static data 120 to the updated recommendation model to select the second object 170 from multiple candidates. It should be understood that the dynamic data 160 and the static data 120 are used here to both update the recommendation model and select the second object 170 based on the updated recommendation model. In fact, in some embodiments, the dynamic data 160 and the static data 120 may also be grouped into training data and prediction data. In this case, the training data may be used to update the recommendation model, and the prediction data may be used to select the second object 170 based on the updated recommendation model.

[0054] In this way, the dynamic data of users newly generated in the process of the object recommendation entity recommending objects can be used to dynamically update and continuously iterate the recommendation model. In this case, the recommendation model can more accurately and quickly determine the recommended objects that meet the user's needs, thereby increasing the probability of users obtaining objects and better meeting the needs of all parties including object recommendation entities (e.g., teachers, anchors), users (e.g., fans, students), object providers (e.g., merchants, educational institutions), object recommendation platforms (e.g., live broadcast platforms, online education platforms), etc.

[0055] Figure 5 FIG. 5 shows a schematic block diagram of an apparatus 500 for object recommendation according to an embodiment of the present disclosure. Figure 5 As shown, the device 500 includes: a first determination module 510, which is configured to determine a first object associated with an object recommendation entity based on static data, the object recommendation entity providing content for guiding the user to obtain the first object, the static data at least including attribute data of the object recommendation entity and attribute data of multiple candidate objects associated with the first object; an acquisition module 520, which is configured to acquire dynamic data associated with the user's behavior on the first object, the behavior occurring during the process of the object recommendation entity providing content; and a second determination module 530, which is configured to determine a second object based on the dynamic data, the object recommendation entity will provide content for guiding the user to obtain the second object.

[0056] In some embodiments, the static data further includes at least one of the following: attribute data of the user, and historical data associated with historical behaviors of the user with respect to the plurality of candidate objects.

[0057] In some embodiments, the first determination module includes: a pattern determination module, which is configured to determine a pattern indicating an object to be recommended based on at least one of the attribute data of the object recommendation entity, the attribute data of the user, and the historical data; a matching module, which is configured to determine whether the attribute data of each of the multiple candidate objects matches the pattern; and a first object determination module, which is configured to determine the corresponding object as the first object if the attribute data of the corresponding object matches the pattern.

[0058] In some embodiments, the first determination module includes: a model acquisition module, which is configured to acquire a recommendation model, the recommendation model at least characterizing the relationship between the static data and the object to be recommended; and a first selection module, which is configured to apply the static data to the recommendation model to select a first object from multiple candidate objects.

[0059] In some embodiments, the second determination module includes: an update module, which is configured to update the recommendation model based on dynamic data and static data, the recommendation model characterizing the relationship between the dynamic data, the static data and the object to be recommended; and a second selection module, which is configured to apply the dynamic data and the static data to the updated recommendation model to select a second object from multiple candidates.

[0060] In some embodiments, the update module includes: a generation module configured to apply dynamic data to a streaming computing engine to generate a feature representation of a portion of the dynamic data within a predetermined time window; and a model update module configured to update the recommendation model based on the feature representation and static data.

[0061] In some embodiments, the dynamic data includes at least one of the following: data associated with a comment operation performed by a user on the first object, data associated with a like operation performed by a user on the first object, data associated with a collection operation performed by a user on the first object, data associated with a purchase operation performed by a user on the first object, and data associated with a share operation performed by a user on the first object.

[0062] Figure 6 600 is a schematic block diagram of an example device 600 that can be used to implement an embodiment of the present disclosure. The device 600 can be used to implement Figure 1 The computing device 110 of the present invention. As shown in the figure, the device 600 includes a central processing unit (CPU) 601, which can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) 602 or computer program instructions loaded from a storage unit 608 to a random access memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the device 600 can also be stored. The CPU 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0063] A number of components in the device 600 are connected to the I / O interface 605, including: an input unit 606, such as a keyboard, a mouse, etc.; an output unit 607, such as various types of displays, speakers, etc.; a storage unit 608, such as a disk, an optical disk, etc.; and a communication unit 609, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 609 allows the device 600 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0064] The processing unit 601 performs the various methods and processes described above, such as process 300 and / or process 400. For example, in some embodiments, process 300 and / or process 400 may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as storage unit 608. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 600 via ROM 602 and / or communication unit 609. When the computer program is loaded into RAM 603 and executed by CPU 601, one or more steps of process 300 and / or process 400 described above may be performed. Alternatively, in other embodiments, CPU 601 may be configured to perform process 300 and / or process 400 in any other appropriate manner (e.g., by means of firmware).

[0065] The functions described above herein may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chip systems (SOCs), load programmable logic devices (CPLDs), and the like.

[0066] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0067] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0068] In addition, although each operation is described in a specific order, this should be understood as requiring such operation to be performed in the specific order shown or in a sequential order, or requiring that all illustrated operations should be performed to obtain desired results. Under certain circumstances, multitasking and parallel processing may be advantageous. Similarly, although some specific implementation details are included in the above discussion, these should not be interpreted as limiting the scope of the present disclosure. Some features described in the context of a separate embodiment can also be implemented in a single implementation in combination. On the contrary, the various features described in the context of a single implementation can also be implemented in multiple implementations individually or in any suitable sub-combination mode.

[0069] Although the subject matter has been described in language specific to structural features and / or methodological logical actions, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. On the contrary, the specific features and actions described above are merely example forms of implementing the claims.

Claims

1. A method for object recommendation, comprising: Determine, based on static data, a first object and a plurality of objects to be recommended that are associated with an object recommendation entity, the object recommendation entity providing content for guiding a user to obtain the first object, the static data comprising at least attribute data of the object recommendation entity and attribute data of a plurality of candidate objects associated with the first object; Acquire dynamic data associated with a behavior performed by the user on the first object, wherein the behavior occurs during a process in which the object recommendation entity provides the content; as well as Determine a second object based on the dynamic data, the object recommendation entity will provide content for guiding the user to obtain the second object, and the second object is used to add to the multiple objects to be recommended or replace the recommended object in the multiple objects to be recommended; Wherein determining the first object comprises: Acquire a recommendation model, wherein the recommendation model at least represents the relationship between the static data and the object to be recommended; and Applying the static data to the recommendation model to select the first object from the plurality of candidate objects; Wherein determining the second object comprises: Grouping the dynamic data and the static data into training data and prediction data; Applying the dynamic data in the training data to a streaming computing engine to generate a feature representation of a portion of the dynamic data within a predetermined time window; Based on the feature representation and the static data in the training data, updating the recommendation model, the updated recommendation model represents the relationship between the dynamic data, the static data and the object to be recommended; and The prediction data is applied to the updated recommendation model to select the second object from the plurality of candidate objects.

2. The method according to claim 1, wherein the static data further comprises at least one of the following: attribute data of the user, and Historical data associated with historical behaviors performed by the user on the plurality of candidate objects.

3. The method according to claim 1, wherein the dynamic data comprises at least one of the following: data associated with a comment operation performed by the user on the first object, data associated with a like operation performed by the user on the first object, data associated with a favorite operation performed by the user on the first object, data associated with a purchase operation performed by the user on the first object, and Data associated with a sharing operation performed by the user on the first object.

4. A device for object recommendation, comprising: A first determination module is configured to determine a first object and a plurality of to-be-recommended objects associated with an object recommendation entity based on static data, wherein the object recommendation entity provides content for guiding a user to obtain the first object, and the static data at least includes attribute data of the object recommendation entity and attribute data of a plurality of candidate objects associated with the first object; an acquisition module, configured to acquire dynamic data associated with a behavior performed by the user on the first object, wherein the behavior occurs during a process in which the object recommendation entity provides the content; as well as a second determination module configured to determine a second object based on the dynamic data, the object recommendation entity will provide content for guiding the user to obtain the second object, the second object is used to be added to the multiple objects to be recommended or to replace the recommended objects in the multiple objects to be recommended; The first determining module comprises: A model acquisition module, configured to acquire a recommendation model, wherein the recommendation model at least represents a relationship between the static data and an object to be recommended; and a first selection module configured to apply the static data to the recommendation model to select the first object from the plurality of candidate objects; The second determining module is further configured to: Grouping the dynamic data and the static data into training data and prediction data; Applying the dynamic data in the training data to a streaming computing engine to generate a feature representation of a portion of the dynamic data within a predetermined time window; Based on the feature representation and the static data in the training data, updating the recommendation model, the updated recommendation model represents the relationship between the dynamic data, the static data and the object to be recommended; and The prediction data is applied to the updated recommendation model to select the second object from the plurality of candidate objects.

5. The apparatus according to claim 4, wherein the static data further comprises at least one of the following: attribute data of the user, and Historical data associated with historical behaviors performed by the user on the plurality of candidate objects.

6. The apparatus according to claim 4, wherein the dynamic data comprises at least one of the following: data associated with a comment operation performed by the user on the first object, data associated with a like operation performed by the user on the first object, data associated with a favorite operation performed by the user on the first object, data associated with a purchase operation performed by the user on the first object, and Data associated with a sharing operation performed by the user on the first object.

7. An electronic device, comprising: one or more processors; as well as A storage device, used for storing one or more programs, when the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 3.

8. A computer-readable storage medium having a computer program stored thereon, wherein the program, when executed by a processor, implements the method according to any one of claims 1 to 3.

Citation Information

Patent Citations

  • Content recommendation method, apparatus and system

    CN105872629A

  • Information recommendation method and device, storage medium and processor

    CN106874522A

  • Service object recommendation method and device and electronic equipment

    CN108073671A