Content determination method and apparatus, electronic device, and storage medium

By determining the push scenario information and configuring weight values, multiple candidate contents are processed, and push content that matches the target profile is selected. This solves the problem of low content push accuracy in existing technologies and achieves higher accuracy and adaptability.

CN116204696BActive Publication Date: 2025-11-21TENCENT DIGITAL TIANJIN
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111440364.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-30
Publication Date
2025-11-21
Estimated Expiration
2041-11-30

AI Technical Summary

Technical Problem

Current technologies have low accuracy in content delivery, failing to effectively meet users' personalized needs.

Method used

通过确定推送场景信息,配置目标历史周期画像的权重值,利用预设画像融合模型处理多个候选内容,选择与目标画像匹配的推送内容。

Benefits of technology

It improved the accuracy and adaptability of content delivery, and enhanced the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116204696B_ABST
    Figure CN116204696B_ABST
Patent Text Reader

Abstract

The application discloses a content determination method and device, electronic equipment and storage medium. The method comprises the following steps: in response to a content determination instruction for a specified object, determining corresponding scene information; determining a plurality of candidate contents and a plurality of target historical period information indicating the specified object according to the scene information; configuring a corresponding weight value for each target historical period information according to the scene information; processing the plurality of target historical period information based on the corresponding weight value of each target historical period information to obtain target information; and determining the content matched with the target information from the plurality of candidate contents. The application can improve the accuracy of content determination by matching the target information obtained by fusing a plurality of target historical period information with the candidate content.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of Internet communication technology, and in particular to a content determination method, apparatus, electronic device and storage medium. Background Technology

[0002] With the development of internet communication technology, various internet products have emerged, providing users with service experiences. Taking content push services as an example, various types of content can be provided to users, such as short videos, long videos, live videos, animations, audio content, text and image content, etc. Content push can be user-initiated (e.g., a user sends a content request to the server via a client, triggering the server to push content) or user-passive (e.g., a client passively receives content actively pushed by the server). In related technologies, the content pushed by the server often originates from current trending topics and can provide users with accurate content recommendations. Summary of the Invention

[0003] To address the issues of low accuracy in existing technologies for content delivery, this application provides a content determination method, apparatus, electronic device, and storage medium:

[0004] According to a first aspect of this application, a content determination method is provided, the method comprising:

[0005] In response to a content push instruction targeting a specified object, determine the corresponding push scenario information;

[0006] Based on the push scenario information, multiple candidate contents and multiple target historical period profiles indicating the specified object are determined; wherein, the target historical period profile is obtained based on the category of each target push content among the multiple target push contents and the interaction information with the specified object, and the multiple target push contents indicate push content within a preset historical period;

[0007] Based on the push scenario information, configure corresponding weight values ​​for each target historical period profile;

[0008] The multiple target historical period portraits are processed based on the weight value corresponding to each target historical period portrait to obtain a target portrait;

[0009] The push content that matches the target profile is determined from the multiple candidate contents.

[0010] According to a second aspect of this application, a content determining apparatus is provided, the apparatus comprising:

[0011] Response module: Used to respond to content push instructions for a specified object and determine the corresponding push scenario information;

[0012] Profile determination module: used to determine multiple candidate contents and multiple target historical period profiles of the specified object based on the push scenario information; wherein, the target historical period profile is obtained based on the category of each target push content and the interaction information with the specified object, and the multiple target push contents indicate push content within a preset historical period;

[0013] Weight configuration module: used to configure corresponding weight values ​​for each target historical period profile according to the push scenario information;

[0014] Image processing module: used to process the multiple target historical period images based on the weight value corresponding to each target historical period image to obtain the target image;

[0015] Matching module: used to determine the push content that matches the target profile from the multiple candidate contents.

[0016] According to a third aspect of this application, an electronic device is provided, the electronic device including a processor and a memory, the memory storing at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the content determination method as described in the first aspect.

[0017] According to a fourth aspect of this application, a computer-readable storage medium is provided, wherein at least one instruction or at least one program is stored therein, the at least one instruction or the at least one program being loaded and executed by a processor to implement the content determination method as described in the first aspect.

[0018] According to a fifth aspect of this application, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the content determination method as described in the first aspect.

[0019] The content determination method, apparatus, electronic device, and storage medium provided in this application have the following technical advantages:

[0020] This application determines the corresponding push scenario information in response to a content push instruction for a specified object; then, it determines multiple candidate content and multiple target historical period profiles for the specified object based on the push scenario information; furthermore, it configures a corresponding weight value for each target historical period profile based on the push scenario information; next, it processes multiple target historical period profiles based on the weight values ​​corresponding to each target historical period profile to obtain a target profile, thereby determining the push content that matches the target profile from multiple candidate content. This application improves the accuracy of push content determination by matching the target profile obtained by fusing multiple target historical period profiles with candidate content. The target profile originates from multiple target historical period profiles, and the weight values ​​corresponding to each target historical period profile are configured based on the push scenario. The weight values ​​corresponding to each target historical period profile can achieve more granular feature capture of the push scenario. In this way, each target historical period profile can use the target profile to determine push content with different levels of participation, making the determined push content more adaptable to the relevant push scenario, thereby improving the content push experience for the specified object. Attached Figure Description

[0021] To more clearly illustrate the technical solutions and advantages in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0022] Figure 1 This is a schematic diagram of an application environment provided in an embodiment of this application;

[0023] Figure 2 This is a flowchart illustrating a content determination method provided in an embodiment of this application;

[0024] Figure 3 This is a flowchart illustrating how to configure corresponding weight values ​​for each target historical period profile based on push scenario information, as provided in an embodiment of this application.

[0025] Figure 4 This is a schematic flowchart of a portrait generation method provided in an embodiment of this application;

[0026] Figure 5 This is also a flowchart illustrating a portrait generation method provided in an embodiment of this application;

[0027] Figure 6 This is a schematic diagram of the model results provided in the embodiments of this application;

[0028] Figure 7This is a block diagram of a content determination device provided in an embodiment of this application;

[0029] Figure 8 This is a schematic diagram of the blockchain system provided in an embodiment of the present invention;

[0030] Figure 9 This is a schematic diagram of the block structure provided in an embodiment of the present invention;

[0031] Figure 10 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation

[0032] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.

[0033] It should be noted that the terms "comprising" and "having" and any variations thereof in the specification, claims and accompanying drawings of this application are intended to cover non-exclusive inclusion. For example, a process, method, system, product or server that includes a series of steps or units is not necessarily limited to those steps or units that are explicitly listed, but may include other steps or units that are not explicitly listed or that are inherent to such processes, methods, products or devices.

[0034] Before providing a further detailed description of the embodiments of this application, the nouns and terms involved in the embodiments of this application will be explained, and the nouns and terms involved in the embodiments of this application shall be interpreted as follows.

[0035] word2vec model: a group of related models used to generate word vectors.

[0036] fasttext: A word vector and text classification tool.

[0037] item2vec model: A model used to generate word vectors.

[0038] Skip-gram model: A model for training word vectors.

[0039] One-hot encoding: also known as one-bit effective encoding.

[0040] Please see Figure 1 , Figure 1This is a schematic diagram of an application environment provided in an embodiment of this application. This application environment may include a client 10 and a server 20, which can be directly or indirectly connected via wired or wireless communication. Related objects (such as users, simulators, etc.) can send content retrieval requests to the server 20 through the client 10. The server 20 can generate a content determination instruction based on the received content retrieval request; then, based on the scene information corresponding to the instruction, it determines multiple candidate contents and multiple target historical period information indicating the specified object; furthermore, it configures a corresponding weight value for each target historical period information according to the scene information; then, it processes the multiple target historical period information based on the weight value corresponding to each target historical period information to obtain target information, and then determines the content matching the target information from the multiple candidate contents to send to the client 10. The generated content determination instruction can also be a content push instruction, and correspondingly, the scene information can also be push scene information. The target historical period information is used to describe the interaction with the content received through the client 10 within a preset historical period. The target historical period information can also be a target historical period profile, and correspondingly, the target information can also be a target profile.

[0041] Content determination instructions (or content push instructions) can also be triggered and generated by server-side 20. In this case, server-side 20 can proactively send content that satisfies the target information (or target profile) of the associated objects of client-side 10. It should be noted that... Figure 1 This is just one example.

[0042] Client 10 can be a physical device such as a smartphone, computer (e.g., desktop computer, tablet, laptop), augmented reality (AR) / virtual reality (VR) device, digital assistant, smart voice interaction device (e.g., smart speaker), smart wearable device, smart home appliance, in-vehicle terminal, etc., or it can be software running on the physical device, such as a computer program. The operating system corresponding to the client can be Android, iOS (a mobile operating system developed by Apple), Linux (an operating system), Microsoft Windows, etc.

[0043] The server-side component 20 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. The server may include network communication units, processors, and memory, etc. The server-side component can provide backend services to the corresponding clients.

[0044] In practical applications, client 10 can be software running on a physical device. Client 10 and server 20 can be used to support relevant internet products in providing service experiences to users. These relevant internet products can be cloud technology products, artificial intelligence products, smart transportation products, assisted driving products, live streaming products, online office products, e-commerce products, game products, local life products, instant messaging products, social products, etc. It should be noted that for user information and related profile data and interaction data involved in this application embodiment, when this application embodiment is applied to specific products or technologies, user permission or consent is required, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. This invention can be applied to various scenarios such as cloud technology, artificial intelligence, smart transportation, and the Internet of Vehicles.

[0045] The aforementioned client 10 and server 20 can be used to build a content delivery system (such as a recommendation system), which can be a distributed system. For example, consider a blockchain system as an example of a distributed system. Figure 8 , Figure 8 This is an optional structural diagram of the distributed system 10 provided in this embodiment of the invention applied to a blockchain system. It consists of multiple nodes (any form of computing device in the network, such as servers or user terminals) and clients, forming a peer-to-peer (P2P) network. The P2P protocol is an application layer protocol running on top of the Transmission Control Protocol (TCP). In the distributed system, any machine, such as a server or terminal, can join and become a node. A node includes a hardware layer, a middleware layer, an operating system layer, and an application layer.

[0046] See Figure 8 The functions of each node in the blockchain system shown include:

[0047] 1) Routing: A basic function of nodes used to support communication between nodes.

[0048] In addition to routing capabilities, nodes can also have the following functions:

[0049] 2) Applications are deployed in the blockchain to implement specific business needs. They record data related to the implementation of functions to form record data, carry digital signatures in the record data to indicate the source of the task data, and send the record data to other nodes in the blockchain system. When other nodes successfully verify the source and integrity of the record data, they add the record data to a temporary block.

[0050] For example, the business logic implemented by the application includes:

[0051] 2.1) A wallet is used to provide the function of conducting electronic currency transactions, including initiating transactions (i.e., sending the transaction record of the current transaction to other nodes in the blockchain system; after other nodes successfully verify the transaction, they store the transaction record data in the temporary block of the blockchain as a response to acknowledge the validity of the transaction; of course, the wallet also supports querying the remaining electronic currency in the electronic currency address;

[0052] 2.2) Shared ledger, used to provide functions such as storage, query and modification of ledger data. It sends the record data of the operation on the ledger data to other nodes in the blockchain system. After the other nodes verify the validity, as a response to acknowledge the validity of the ledger data, they store the record data in a temporary block. They can also send confirmation to the node that initiated the operation.

[0053] 2.3) Smart contracts are computerized protocols that can execute the terms of a contract. They are implemented through code deployed on a shared ledger that executes when certain conditions are met. Based on actual business needs, the code is used to complete automated transactions, such as querying the logistics status of goods purchased by a buyer and transferring the buyer's electronic money to the merchant's address after the buyer signs for the goods. Of course, smart contracts are not limited to executing contracts for transactions; they can also execute contracts for processing received information.

[0054] 3) A blockchain consists of a series of blocks that are sequentially generated. Once a new block is added to the blockchain, it will not be removed. The blocks contain the data submitted by the nodes in the blockchain system.

[0055] See Figure 9 , Figure 9This is an optional schematic diagram of the block structure provided in this embodiment of the invention. Each block includes the hash value of the transaction records stored in this block (the hash value of this block) and the hash value of the previous block. The blocks are connected through their hash values ​​to form a blockchain. Additionally, the block may include information such as a timestamp when it was generated. A blockchain is essentially a decentralized database, a chain of data blocks linked together using cryptographic methods. Each data block contains relevant information used to verify the validity of the information (anti-counterfeiting) and to generate the next block.

[0056] The following describes a specific embodiment of a content determination method according to this application. Figure 2 This is a flowchart illustrating a content determination method provided in an embodiment of this application. This application provides the operational steps of the method described in the embodiment or flowchart, but based on conventional or non-inventive labor, more or fewer operational steps may be included. The order of steps listed in the embodiment is merely one possible execution order among many steps and does not represent the only execution order. In actual systems or products, the method can be executed sequentially or in parallel (e.g., in a parallel processor or multi-threaded processing environment) as shown in the embodiment or drawings. Specifically, as... Figure 2 As shown, the method may include:

[0057] S201: In response to a content push instruction for a specified object, determine the corresponding push scenario information;

[0058] In this embodiment, in response to a content push instruction targeting a specified object, the server determines the corresponding push scenario information. The specified object can refer to a specific user, emulator, etc. Taking a specific user as an example, the specific user can be a single user, a guest user, or a registered user. A specific user can also be a user group, such as a group of users using the same device model or a group of users using the same IP address. Content can include, but is not limited to, short video content, long video content, live video content, animation content, audio content, graphic content, image content, and text content. The content push instruction can be triggered by the server or generated based on a content retrieval request sent by the client. It can be understood that the content can be actively provided by the relevant server to the specified object through the relevant client, or it can be passively provided by the relevant server to the specified object through the relevant client in response to a content retrieval request (sent by the relevant client).

[0059] Push notification context information can be determined based on the push purpose, push time, and push recipient. Taking the push purpose as an example, if the content push instruction is triggered by the server, then the push purpose can prioritize conversion results (such as the effect of user clicks, comments, and other interactions through push exposure) or brand promotion. Correspondingly, the push context information indicates a scenario prioritizing conversion results or brand promotion. Taking the push time as an example, the triggering or generation time of the content push instruction can be used as the push time. If the push time is in the morning, then the push context information indicates a morning scenario. Taking the push recipient as an example, the push recipient can be a single user or a user group, as mentioned above. Correspondingly, the push context information can indicate a scenario targeting a "single user" or a scenario targeting a "user group."

[0060] S202: Determine multiple candidate contents and multiple target historical period profiles indicating the specified object based on the push scenario information; wherein, the target historical period profile is obtained based on the category of each target push content in the multiple target push contents and the interaction information with the specified object, and the multiple target push contents indicate push content within a preset historical period;

[0061] In this embodiment, the server determines multiple candidate contents and multiple target historical period profiles for designated objects based on push scenario information. It can be understood that the multiple candidate contents are selected by the server from a content pool based on the push scenario information. The content in the content pool can be current trending content, content with push demand, etc. Combining the push purpose, push time, and push target mentioned in step S201 above, if the push purpose prioritizes conversion effect, then the candidate content selected from the content pool based on the push scenario information can be content with conversion effect higher than a threshold; if the push purpose prioritizes brand promotion, then the candidate content selected from the content pool based on the push scenario information can be brand-related content (such as commercial advertisements) with push demand; if the push time is in the morning, then the candidate content selected from the content pool based on the push scenario information can be weather-related content, traffic-related content, news-related content, etc., that fit the morning scenario; if the push target is a single user (or a user group), then the candidate content selected from the content pool based on the push scenario information can be content of interest to the same type of single user (or user group). Of course, you can also use all the content in the content pool as candidate content, or you can use the current trending content and content that needs to be pushed as candidate content.

[0062] Multiple target historical period profiles are selected by the server from multiple candidate historical period profiles indicating a specified object based on push scenario information. Multiple target historical period profiles can be all or part of multiple candidate historical period profiles. For the generation process of target historical period profiles, or candidate historical periods, please refer to steps S401-S405 described later. It should be noted that multiple candidate historical period profiles correspond to multiple preset historical periods. Multiple preset historical periods can be multiple historical time periods with adjacent relationships. In this case, the preset historical period can use a fixed preset time period length value, such as historical time period 1 indicating "xxxx year xx month 1st", historical time period 2 indicating "xxxx year xx month 2nd", and historical time period 3 indicating "xxxx year xx month 3rd"; or they can be multiple historical time periods with an inclusive relationship, such as historical time period 4 indicating "within the week before the current time", historical time period 5 indicating "within the two weeks before the current time", and historical time period 6 indicating "within the three weeks before the current time".

[0063] In an exemplary implementation, determining multiple target historical period profiles indicating the specified object based on the push scenario information includes the following steps: first, determining the corresponding historical push scenario based on the push scenario information; then, determining the historical period indicated by the historical push scenario; and further, determining the multiple target historical period profiles from multiple candidate historical period profiles indicating the specified object based on the indicated historical period.

[0064] Considering the existence of multiple push scenarios indicating the same push scenario information, we can identify historical push scenarios that indicate the same push scenario as the current push scenario. The push performance of historical push scenarios can be obtained based on relevant historical period profiles, which can be used as a reference to improve the push performance of similar current push scenarios. Determining the target historical period profile by defining the historical period dimension related to historical push scenarios can effectively filter out historical period profiles with low reference value, thereby narrowing the scope for subsequent weight value configuration and improving the efficiency of subsequent push content determination.

[0065] For example, the push notification scenario indicates the "XX Shopping Festival" scenario. Historical push scenarios can be the "XX Shopping Festival" scenario itself, or other shopping festival scenarios with a similar level and scale. For instance, there might be three historical push scenarios: Scenario 1, Scenario 2, and Scenario 3, with their respective historical periods being Historical Period 1, Historical Period 2, and Historical Period 3. The indicated historical period is generally the minimum preset historical period for the relevant historical push scenario. In practical applications, this preset historical period is a historical time period with a fixed preset time duration that is not inclusive of other preset historical periods. Thus, from multiple candidate historical period profiles, Historical Period Profile 1 (related to Historical Period 1), Historical Period Profile 2 (related to Historical Period 2), and Historical Period Profile 3 (related to Historical Period 3) are determined. Multiple target historical period profiles are obtained through Historical Period Profile 1, Historical Period Profile 2, and Historical Period Profile 3. These profiles can capture user intent and trends in user attention to push content, thereby improving the accuracy and adaptability of subsequent push content determination. In practical applications, if these three historical profiles have certain similarities, it means that the user's intention remains unchanged under the same shopping festival scenario, such as hoarding daily necessities. If these three historical profiles show certain changing trends, it means that the user's intention also changes under the same shopping festival scenario. For example, the changing trend reflects the user's intention to "hoard Class A daily necessities" and then the intention to "hoard Class B daily necessities". In this case, the historical profile that is more suitable for the current push scenario can be determined from the changing trend to increase its weight value.

[0066] S203: Configure corresponding weight values ​​for each target historical period profile according to the push scenario information;

[0067] In this embodiment, the server configures a corresponding weight value for each target historical period profile based on the push scenario information. By configuring the weight values, the contribution of each target historical period profile to the determination of push content can be effectively determined.

[0068] In one exemplary implementation, such as Figure 3 As shown, configuring corresponding weight values ​​for each target historical period profile based on the push scenario information includes:

[0069] S301: Obtain the corresponding first preset weight configuration rule based on the push scenario information;

[0070] S302: Based on the first preset weight configuration rule, configure corresponding weight values ​​for each of the target historical period portraits.

[0071] Each push notification scenario can have a corresponding first preset weight configuration rule, and the relationship between them can be preset. Of course, the first preset weight configuration rule corresponding to each push notification scenario can be flexibly adjusted according to actual needs. Based on this, after determining the push notification scenario, the corresponding first preset weight configuration rule can be obtained, and a corresponding weight value can be configured for each target historical period profile, which can improve the efficiency and adaptability of weight value configuration.

[0072] For example, taking five target historical period profiles as an example, in a scenario where conversion effect is prioritized, the weight values ​​(0.3, 0.25, 0.2, 0.15, 0.1) corresponding to the first preset weight configuration rule can be used to configure these five target historical period profiles according to the order from most recent to oldest time. This can increase the contribution of recent profiles to the push effect. In a scenario where brand promotion is prioritized, the weight values ​​(0.2, 0.2, 0.2, 0.2, 0.2) corresponding to the first preset weight configuration rule can be used to configure these five target historical period profiles according to the order from most recent to oldest time. This can ensure that each profile has the same contribution to the effect.

[0073] Considering that the number of target historical period portraits may not be fixed, the first preset weight configuration rule can be used to limit the changing trend of the weight value corresponding to each target historical period portrait, the sum of the weight values ​​corresponding to each target historical period portrait (e.g., 1), and the correlation (e.g., the difference between the weight value corresponding to the most recent portrait and the weight value corresponding to the furthest portrait according to the order from closest to furthest from the current time).

[0074] Furthermore, configuring corresponding weight values ​​for each of the target historical period portraits based on the first preset weight configuration rule may include the following steps: First, determining the degree of portrait deviation corresponding to the plurality of target historical period portraits; then, obtaining the corresponding second preset weight configuration rule according to the degree of portrait deviation; next, merging the first preset weight configuration rule and the second preset weight configuration rule to generate a target weight configuration rule; finally, configuring corresponding weight values ​​for each of the target historical period portraits based on the target weight configuration rule.

[0075] The first preset weight configuration rule originates from the push scenario. Based on this, a second preset weight configuration rule related to the profile itself is introduced, which can incorporate user-side information when configuring weight values, and can further improve the adaptability of weight value configuration.

[0076] The degree of profile deviation can be quantified using variance. Taking five target historical period profiles as an example, the variance values ​​corresponding to these five target historical period profiles are determined as the degree of profile deviation. When the variance value is greater than or equal to a first preset threshold, it indicates a large degree of profile deviation and volatility. In this case, the recent profiles are more significant and can provide more helpful contributions when determining push content. The corresponding second preset weight configuration rule then instructs to increase the weight value of the recent profiles. For example, the second preset weight configuration rule limits the sum of the weight values ​​corresponding to each target historical period profile to 1, and the relationship between the weights of adjacent profiles needs to satisfy a multiple relationship (the number of features corresponding to the variance value, where the number of features is a positive integer greater than 0). When the variance value is less than the first preset threshold, it indicates a small degree of profile deviation and volatility. The corresponding second preset weight configuration rule then instructs to balance the weight values ​​corresponding to each profile. For example, the second preset weight configuration rule limits the variance of the weight values ​​corresponding to each target historical period profile to be equal to or have a similarity higher than the second preset threshold.

[0077] The first preset weight configuration rule generally indicates that the weight value corresponding to the recent portrait should not be lower than the weight value corresponding to the distant portrait. The integration of the first and second preset weight configuration rules can be understood as incorporating the idea that "the weight value corresponding to the recent portrait should not be lower than the weight value corresponding to the distant portrait" into the second preset weight configuration rule.

[0078] S204: Process the multiple target historical period portraits based on the weight value corresponding to each target historical period portrait to obtain a target portrait;

[0079] In this embodiment of the application, the server processes multiple target historical period images based on the weight value corresponding to each target historical period image to obtain a target image.

[0080] In an exemplary embodiment, after determining multiple candidate contents and multiple target historical periodic profiles indicating the specified object based on the push scenario information, the method further includes the following steps: first, determining a preset profile fusion model corresponding to the push scenario information; then, using the multiple target historical periodic profiles as input, obtaining the target profile using the preset profile fusion model; wherein, the preset profile fusion model is obtained by machine learning training through multiple profile samples, and each profile sample carries a corresponding content tag.

[0081] By training a pre-defined profile fusion model with high generalization ability using relevant machine learning models, the ability to configure weight values ​​for target historical period profiles can be improved when using the pre-defined profile fusion model to perform target historical period profile fusion in the context of push scenarios, thereby greatly improving the efficiency and reliability of profile fusion.

[0082] For example, a pre-defined profile fusion model can flexibly fuse target historical period profiles in a weight-sharing manner, better preserving the feature information of profiles from different target historical periods, thereby improving the push notification effect. The weights corresponding to different target historical periods are shared, and the output value of the hidden layer indicates the input weight of the current calculation period plus the input weight of the previous calculation period, calculated as follows:

[0083]

[0084] in, This represents the hidden layer output in the t-th cycle. Let w1 be the feature vector (corresponding to the image) for the t-th period, and w2 be the number of image categories. w1 and w2 are the weight coefficients corresponding to the input of the current calculation period t and the input of the previous calculation period (t-1), respectively. i f(*) is the first bias coefficient, f(*) is the first activation function, and f(*)∈tanh.

[0085] The output layer result is the prediction of the target image. The output value of the output layer is calculated as follows:

[0086]

[0087] in, σ(*) represents the output of the output layer, w0 represents the weight of the hidden layer output, b0 represents the second bias coefficient, σ(*) represents the second activation function, and σ(*)∈softmax.

[0088] The loss function is:

[0089]

[0090] Where n is the total number of training samples, y is the true label, and z is the predicted output.

[0091] In practical applications, the pushed content can be the product of advertising, and the above output layer results can also be a prediction of the probability of product intention. The content tag carried by each profile sample indicates the specific product advertisement.

[0092] S205: Determine the push content that matches the target profile from the plurality of candidate contents.

[0093] In this embodiment, the server determines the push content that matches the target profile from multiple candidate content. The similarity between the profile and the features (such as the text feature vectors mentioned above) of each candidate content can be calculated. The similarity calculation metric can be Euclidean distance, cosine similarity, etc. If the similarity is greater than or equal to a third preset threshold, then the corresponding candidate content is determined to be push content that matches the target profile.

[0094] The following section will introduce the generation of candidate historical cycle profiles, taking the generation of the aforementioned target historical cycle profile as an example. Figure 4 As shown, the generation process may include the following steps:

[0095] S401: Obtain the multiple target push content;

[0096] The server retrieves multiple target push content items indicating a preset historical period. The preset historical period is relative to the current time or current time interval; that is, it refers to historical time intervals preceding the current time or current time interval. The preset historical period can be determined based on the current time (or current time interval) and a preset time interval length. For example, if the current time is 2nd, xxxx, and the preset time interval length is 1 day, then the preset historical period can be an adjacent historical time interval preceding the current time that meets the preset time interval length requirement: 1st, xxxx. Alternatively, the preset historical period can be determined based on the current time (or current time interval), the preset time interval length, and a preset time interval. For example, if the current time is the 3rd week of xxxx, the preset time interval length is 1 week, and the preset time interval is 1 week, then the preset historical period can be a historical time interval preceding the current time that meets both the preset time interval length and preset time interval requirements: the 1st week of xxxx. Of course, the preset historical period, preset time interval length, and preset time interval can be flexibly set as needed. For multiple target push content items indicating a preset historical period, it can be understood that these push contents are content sent to the specified objects within the preset historical period. It should be noted that the executing entities involved in step S401 and subsequent steps S402-S405 may be the same as or different from the executing entities involved in the aforementioned steps S201-S205.

[0097] S402: Determine the text feature vector corresponding to each of the target push contents to obtain a set of text feature vectors corresponding to the multiple target push contents;

[0098] The server determines the text feature vector corresponding to each target push content, resulting in a set of text feature vectors for multiple target push content items. This set of text feature vectors is composed of the text feature vectors corresponding to each of the multiple target push content items. The text feature vectors can originate from the text corpus corresponding to the target push content. For example, when the target push content contains text, it can be used as the text corpus. When the target push content does not contain text, text can be extracted from it, such as video, audio, or images, to obtain the text corpus.

[0099] In an exemplary embodiment, determining the text feature vector corresponding to each of the target push content includes the following steps: First, determining the text corpus corresponding to each of the target push content; then, performing word segmentation on the text corpus to obtain at least two text corpus segments; further, determining the representation vector corresponding to each text corpus segment; finally, obtaining the representation vector corresponding to the text corpus based on the representation vector corresponding to each of the at least two text corpus segments, and determining the representation vector corresponding to the text corpus as the text feature vector of the target push content.

[0100] Taking push content 1 as an example, firstly, the corresponding text corpus 1 is determined; then, text corpus 1 is segmented to obtain at least two text corpus fragments, such as text corpus fragments 11-19; next, the representation vectors corresponding to the text corpus fragments are determined, for example, the representation vectors corresponding to each of text corpus fragments 11-19 are determined separately; finally, the representation vector 1 corresponding to text corpus 1 is obtained using the representation vectors corresponding to each of text corpus fragments 11-19, and this representation vector 1 is used as the text feature vector 1 of push content 1. By determining the text corpus, performing word segmentation, determining local representation vectors, and fusing local representation vectors to obtain a text feature vector that reflects the whole, effective feature mining and capture of push content at the text dimension is ensured, and the accuracy of the obtained text feature vector is guaranteed.

[0101] Furthermore, determining the representation vector corresponding to the text corpus segment may include the following steps: first, encoding the text corpus segment to obtain an initial vector; then, processing the initial vector based on a first preset weight matrix to obtain a hidden layer vector; and finally, processing the hidden layer vector based on a second preset weight matrix to obtain the representation vector. Introducing encoding and weight matrices allows for better and deeper feature mining and capture of the text corpus segment. The resulting representation vector can more accurately reflect the semantics of the text corpus segment, avoiding omissions in the expression of hidden semantics.

[0102] One-hot encoding can be used to encode each valid text corpus segment, making it vectorized. The initial vector corresponding to each valid text corpus segment is in one-hot format. The dimension of the initial vector corresponding to each valid text corpus segment can be determined by the total number of valid text corpus segments. For understanding valid text corpus segments, refer to the following: If multiple target push content includes push content 1-3, push content 1 corresponds to text corpus 1, push content 2 corresponds to text corpus 2, and push content 3 corresponds to text corpus 3. There may be duplicate text corpus segments among text corpus segment group 1 (indicating at least two text corpus segments corresponding to text corpus 1), text corpus segment group 2 (indicating at least two text corpus segments corresponding to text corpus 2), and text corpus segment group 3 (indicating at least two text corpus segments corresponding to text corpus 3). After deduplication, the valid text corpus segments can be determined. If the total number of valid text corpus segments is V, then the size of the initial vector corresponding to each valid text corpus segment is V*1. In practical applications, IDs (identifiers) can be used to refer to valid text corpus fragments, and the number of IDs is also V. If a correlation model is used to determine the representation vector corresponding to a text corpus fragment, the initial vector can be regarded as the output of the input layer of the correlation model.

[0103] The first preset weight matrix W can be used as a tool for extracting the hidden layer vector h. The size of the first preset weight matrix W can be V*N, where V corresponds to the total number of effective text corpus segments, N corresponds to the number of hidden layer neurons, and N also corresponds to the dimension of the hidden layer vector. Each row of the first preset weight matrix W can represent the embedding of an effective text corpus segment. The hidden layer vector h can be determined by the following formula:

[0104]

[0105] Among them, W T X is the transpose of W, and X indicates the initial vector. In practical applications, the first preset weight matrix W can indicate the hidden layer of the relevant model.

[0106] The second preset weight matrix O can be used as a tool for extracting the representation vector u. The size of the second preset weight matrix O can be N*V, and the representation vector u can be determined by the following formula:

[0107] u=O T ·h;

[0108] Among them, O T It is the transpose of O, representing that vector u is a V-dimensional vector. In practical applications, the second preset weight matrix O can correspond to the weight matrix from the hidden layer to the output layer of the relevant model.

[0109] Accordingly, the step of “obtaining the representation vector corresponding to the text corpus based on the representation vector corresponding to each of the at least two text corpus segments, and determining the representation vector corresponding to the text corpus as the text feature vector of the target push content” can fuse the representation vectors corresponding to at least two text corpus segments in a text corpus to obtain the text feature vector.

[0110] Text corpus fragments can be represented in the form of words, and their corresponding representation vectors are word vectors. Referring to the example of push content 1 above, the representation of text corpus fragments 11-19 is indicated by words 11-19. For example, using 5-dimensional word vectors, see Table 1 below:

[0111]

[0112]

[0113] Table 1

[0114] The representation vector corresponding to a text corpus can be either a weighted sum of the word vectors of all related text corpus segments, or the average of the word vectors of all related text corpus segments. Here, "all related text corpus segments" refers to the word segmentation results of the text corpus. In practical applications, when determining the representation vector corresponding to a text corpus segment, models such as word2vec, fasttext-based models, item2vec, and skip-gram models can be used. See also... Figure 6 The model can take a segmented text sequence as input and use a trained model to obtain the representation vectors (embedding features) corresponding to the relevant text corpus segments; or it can use a trained model to obtain the representation vectors (embedding features) corresponding to the text corpus. The parameters of the weight matrix used by the model can be updated by minimizing the loss function. The process of determining the loss function is as follows: the output can be normalized to [0,1] using the softmax function, then ID... t Under the condition that (corresponding to the valid text fragment t) appears, ID j The probability of (corresponding to valid text fragment j) appearing is given by the following formula:

[0115]

[0116] Accordingly, the loss function is given by the following formula:

[0117]

[0118] S403: Perform clustering processing on the text feature vector set to obtain multiple categories; wherein, the multiple categories correspond one-to-one with the multiple cluster centers indicated by the clustering processing results;

[0119] The server performs clustering on the text feature vector set to obtain multiple categories. Clustering is the process of dividing the text feature vector set into multiple classes composed of similar text feature vectors. The profile generation scheme provided in this application does not require pre-category labeling of the content; instead, it generates categories based on the clustering results of the text feature vector set, thereby utilizing the category of the pushed content and interaction information to generate a profile. Compared to the limitations of pre-category labeling, generating categories based on the clustering results of the text feature vector set is more flexible and adaptable; for example, it is easier to adjust the number and precision of categories as needed.

[0120] In an exemplary embodiment, the step of clustering the text feature vector set to obtain multiple categories may include the following steps: First, determining the number of target categories; then, clustering the text feature vector set according to the number of target categories to obtain clustering results; wherein, the clustering results indicate several cluster center sets for the target categories, and the cluster center of each cluster center set is a target text feature vector in the text feature vector set that meets the clustering requirements; furthermore, determining the corresponding category based on each target text feature vector to obtain several target categories.

[0121] The number of target categories can be determined based on business needs. Generally, the number of target categories should be less than or equal to the number of text feature vectors in the text feature vector set, that is, less than or equal to the number of multiple target push content items. Given the number of target categories, a correlation clustering algorithm can be used to process the text feature vector set to obtain clustering results. A correlation clustering algorithm such as K-means clustering can be used. Based on the obtained clustering results, the target text feature vectors are used to determine the categories.

[0122] For example, if the number of target categories is 5 and the number of text feature sets in the text feature vector set is 50, the clustering result indicates 5 cluster center sets. The cluster center of each cluster center set is a target text feature vector in the text feature vector set that meets the clustering requirements, and each cluster center set corresponds to a category. Accordingly, each target text feature vector can be used to determine the corresponding category, thus obtaining 5 categories. When using target text feature vectors to determine categories, the target text corpus fragments corresponding to the target text feature vectors can be obtained, and then the target text corpus fragments that meet the requirements can be used as category labels based on parameters such as word frequency and part-of-speech tagging.

[0123] Furthermore, the clustering process of the text feature vector set to obtain the clustering result includes the following steps:

[0124] 1) Randomly determine several text feature vectors of the target category from the set of text feature vectors to use as cluster centers, thereby obtaining several center vectors of the target category;

[0125] 2) Create a corresponding set of cluster centers based on each of the aforementioned center vectors;

[0126] 3) Based on the similarity calculation results, each text feature vector in the text feature vector set is assigned to the cluster center set corresponding to the center vector indicating the maximum similarity;

[0127] 4) Update the center vector corresponding to the cluster center set based on the allocation result;

[0128] 5) When the similarity between the updated center vector and the original center vector is greater than the similarity threshold, repeat the above steps of assigning to the cluster center set corresponding to the center vector indicating the maximum similarity until the center vector corresponding to the cluster center set is updated, until the similarity between the updated center vector and the original center vector is less than or equal to the similarity threshold, or the number of repetitions is equal to the number of repetitions threshold.

[0129] 6) The clustering result is obtained based on the result of the last assignment and the center vector updated last time.

[0130] Given a set of text feature vectors D = {x0, x1, x2, ..., x...} m Taking feature clustering as an example, the number of text feature vectors in the text feature vector set is m. K text feature vectors are randomly selected from D as center vectors, where K is the number of target categories, and K is less than or equal to m. Then, cluster center sets are created based on the K center vectors, resulting in K cluster center sets, where each cluster center set corresponds to one center vector. Alternatively, K empty sets can be created first to serve as cluster center sets, and then the K randomly selected text feature vectors can be placed into each of the K sets.

[0131] For each text feature vector in D, its similarity to each current center vector is calculated. Then, based on the similarity calculation results, it is placed into the cluster center set corresponding to the center vector indicating the maximum similarity to achieve assignment. Euclidean distance can be used for similarity calculation, with the maximum similarity corresponding to the minimum distance. Of course, cosine similarity and other metrics can also be used. After completing this round of assigning cluster center sets to each text feature vector in D, cluster centers can be calculated based on the text feature vectors in the current cluster center set to update the center vectors, for example, replacing text feature vector a with text feature vector b.

[0132] If the similarity between the updated center vector and the original center vector is less than or equal to the similarity threshold, then the clustering result is obtained based on the result of the last assignment and the last updated center vector.

[0133] If the similarity between the updated center vector and the original center vector is greater than the similarity threshold, then repeat the above steps of assigning cluster center sets to the updated center vectors for each text feature vector in D until the similarity between the updated center vector and the original center vector is less than or equal to the similarity threshold, or the number of repetitions is equal to the number threshold N; then, based on the result of the last assignment and the last updated center vector, the clustering result is obtained.

[0134] The similarity calculation between the updated and unupdated center vectors can be understood as the similarity calculation between the unupdated and updated center vectors of each of the K sets, i.e., K similarity calculation groups. The results of the K similarity calculation groups can be judged using the same similarity threshold. To determine whether the similarity between the updated and unupdated center vectors is less than or equal to the similarity threshold, we can consider it as "less than or equal to the similarity threshold" if the results of all K similarity calculation groups are less than or equal to the similarity threshold, otherwise "greater than the similarity threshold"; alternatively, we can consider it as "less than or equal to the similarity threshold" if the result of e% * K similarity calculation groups is less than or equal to the similarity threshold, and the result of (1-e%) * K similarity calculation groups is greater than the similarity threshold but the similarity difference is less than the difference threshold, otherwise "greater than the similarity threshold". Here, e% needs to be greater than or equal to 50%, which can be taken as 80%. "Less than or equal to the similarity threshold" indicates that the updated center vector is not significantly different from the original center vector, suggesting that the repeated steps have led to a stabilizing or convergent effect. Therefore, it can be considered that the clustering process has achieved the desired result and can be stopped.

[0135] It should be noted that, if the center vector is considered as a constituent element of the cluster center set, then "assigning cluster center sets to each text feature vector in D" can be seen as assigning the remaining vectors in D. Alternatively, if the center vector is considered as a representation of the cluster center of the cluster center set, and not as a constituent element of the cluster center set, then "assigning cluster center sets to each text feature vector in D" can be seen as assigning the entire set of vectors in D.

[0136] S404: Determine the category of each target push content based on the cluster center set of the corresponding text feature vector;

[0137] The server determines the category of each target push content based on the set of cluster centers to which the corresponding text feature vector belongs. Based on the correspondence between text feature vectors and target push content, and the correspondence between cluster centers and categories, the category of the target push content can be determined by the set of cluster centers to which the text feature vector belongs.

[0138] Taking the clustering results indicating K categories as an example, the correspondence between each target push content and a category can be seen in Table 2 below:

[0139]

[0140] Table 2

[0141] S405: Generate the target historical periodic profile based on the category of each target push content and the interaction information with the specified object.

[0142] The server generates a target historical profile based on the category of each target push content and its interaction information with a specified object. The interaction information between the specified object and the target push content records whether there is interaction; if so, it indicates the type of interaction. Interactions can include, but are not limited to, clicking, swiping, liking, commenting, forwarding, saving, reporting, pausing playback, and starting playback. This interaction information can be used to capture the specified object's interest in the target push content. Combining the interaction information with the category of the target push content generates an interest profile describing the specified object. Furthermore, when generating the target historical profile using interaction information, more granular profiles can be generated based on positive interactions (e.g., liking) and negative interactions (e.g., reporting) indicated by the interaction information.

[0143] Taking the clustering result indicating K categories as an example, by summarizing and statistically analyzing the push content that each user has interacted with, we can obtain the statistical values ​​of the user under each category, as shown in Table 3 below:

[0144]

[0145]

[0146] Table 3

[0147] In one exemplary implementation, generating the target historical periodic profile based on the category of each target pushed content and the interaction information with the specified object may include the following steps: First,

[0148] Based on the interaction information, candidate push content that has an interaction relationship with the specified object is determined from the multiple push content; then, a profile indicating the specified object is generated based on the category to which the candidate push content belongs.

[0149] Taking multiple target push content as push content af as an example, if the specified object does not interact with push content b, then push content b is excluded, and push content a and cf are respectively selected as candidate push content a and cf. If push content a belongs to category 1, push content c belongs to category 1, push content d belongs to category 2, push content e belongs to category 2, and push content f belongs to category 3, then a target historical periodic profile can be generated based on categories 1-3. Of course, considering that these candidate push content use categories 1 and 2 as their category more often than category 3, corresponding weight coefficients can be added to categories 1 and 2 to increase their contribution to profile generation. Furthermore, different weight coefficients can also be added to related categories based on different interaction operations.

[0150] In one exemplary implementation, the generated profile is not limited to a preset historical period. Generating profiles under more preset historical period dimensions can provide an effective data source for analyzing a specified object, and can improve the capture of changes in the interests of the specified object so as to provide more accurate push content.

[0151] Then: 1) In response to the received portrait generation instruction, determine the specified object corresponding to the portrait generation instruction and at least two preset historical periods; 2) Obtain multiple target push contents corresponding to each preset historical period to obtain a set of target push contents under each preset historical period dimension; 3) Obtain the interaction information between the specified object and the multiple target push contents corresponding to each preset historical period to obtain target interaction information under each preset historical period dimension.

[0152] Accordingly, based on the target interaction information and the category information of the target push content set under each preset historical period dimension, a profile indicating the specified object is generated under each preset historical period dimension; wherein, the category information indicates the category of each target push content in the target push content set.

[0153] Based on the description in step S202 regarding the existence of adjacency and inclusion relationships among multiple preset historical periods, for the former, the portrait generation scheme provided in steps S401-S405 can be used to generate a portrait indicating a specified object under each preset historical period dimension, executing the relevant steps in parallel. For the latter, the portrait generation scheme provided in steps S401-S405 can be used to generate a portrait indicating a specified object under each preset historical period dimension; alternatively, at least two historical time periods with inclusion relationships can be broken down into at least two historical time periods with adjacency relationships, and based on this, the target push content set and target interaction information under each preset historical period (adjacency relationship) dimension can be obtained, and then the relevant steps can be executed in parallel to determine the category of the relevant push content under each preset historical period (adjacency relationship) dimension, and then integrated to generate a portrait indicating a specified object under each preset historical period (inclusion relationship) dimension.

[0154] Taking the clustering result indicating K categories as an example, the push content for each user can be statistically analyzed according to the K categories, numbered by category, and over multiple periods. See Table 4 below for the multi-period interest profile of a single user A, and Table 5 below for the multi-period interest profile of a single user B:

[0155]

[0156] Table 4

[0157]

[0158] Table 5

[0159] Therefore, a single user's multi-period interest profile has 6 (number of periods) * K (number of categories) = 6K dimensions. This profile can be directly used as a numerical feature of the recommendation system. It should be noted that the number of periods can be flexibly set as needed.

[0160] The profile generation scheme provided in this application improves the accuracy and efficiency of profile generation by focusing on lower-dimensional text feature vectors and clustering to determine the category of pushed content, and then combining the interaction information between the specified object and the pushed content to generate a profile. Compared with related technologies that rely on sample annotation and manual intervention, determining the category of pushed content through clustering ensures the accuracy, adaptability, and efficiency of category determination, thus meeting the requirements for category determination precision; using a set of text feature vectors as the clustering object ensures the efficiency of feature vector determination.

[0161] In practical applications, pushed content can be a product of advertising. See also Figure 5 Step S401 here corresponds to S1 and S2 in the diagram. S1 indicates the organization of relevant advertising push content, which can be regarded as obtaining the corresponding push content based on a preset historical period. S2 indicates the data preprocessing of the organization results, which may include data cleaning and removal of invalid data (such as empty data, dirty data, etc.).

[0162] The content of the advertisement push can indicate the advertisement push data. The advertisement push data often includes information about the recommended products and the advertisement text information. Using historical advertisement push data can help the recommendation system to more accurately judge user needs and build user profiles.

[0163] Step S402 here corresponds to S3-S5 in the diagram. Before S3, the advertised products displayed (recommended) to users can be processed into a product sequence, which can be a sequence of product names or product IDs. The advertised products displayed (recommended) to users within a certain period can be sorted according to their display (recommendation) time, and then the sorting results can be associated with relevant users, as shown in Table 6 below:

[0164] User ID Product (Advertisement) Series 0000001 Product 1, Product 2, ... Product 6 0000002 Item 5, Item 226, ..., Item 1235, Item 12

[0165] Table 6

[0166] It should be noted that (1) the product (advertisement) uses the product ID as a unique identifier. (2) If the same product (advertisement) is pushed multiple times within the specified T minutes, it is counted as 1 time; where T minutes is less than the preset historical period.

[0167] S3 indicates to perform segmentation, deduplication, and serialization on the advertising text information. The relevant processing steps are as follows: 1) Remove punctuation marks, letters, numbers, and special symbols, such as [a-zA-Z0-9’!"#$%&\'()*+,-. / :;<=>?@,。?★、…【】《》?“”‘’![\\]^_`{|}~]+; 2) Remove the specified stop words, such as "的", "哦", "呀", etc.; 3) Customize the word segmentation dictionary, which can include the name of a certain commodity and common words in the advertisement; 4) Segment the advertising push text after filtering out the relevant content in 1) and 2) above, and turn each text segment into a word segmentation sequence, as shown in the word segmentation sequence in Table 7 below:

[0168]

[0169] Table 7

[0170] It should be noted that (1) the text is advertising description or push content, and the advertising ID is used as the unique identifier.

[0171] (2) After generating the word segmentation sequence, it is necessary to perform deduplication on the word segmentation sequence to ensure that each word segmentation sequence is unique.

[0172] S4 and S5 indicate to use the word2vec method to extract the embedding features corresponding to the commodity ID and the embedding features corresponding to the text indicated by the advertising ID respectively.

[0173] Steps S403 - S404 here can correspond to S6 in the figure. S6 indicates to use the K-means clustering algorithm for the generated text embedding features to generate the category of each pushed commodity (advertisement). The advertising text feature vectors generated in the previous step can be clustered, and the advertisements can be divided into different categories. The advertisement categories in a clustering cluster are similar. For example, advertisements related to sports shoes, sports equipment, etc. will be divided into one clustering cluster, while milk powder, diapers, etc. will be divided into another clustering cluster. It can be considered that each clustering cluster represents a type, and the number K of types is the number of clustering centers set in advance. It can be found that as the number of clustering centers set increases, the clustering clusters generated by clustering will also increase, which means that the classification will become more and more refined. Therefore, the refinement degree of the portrait can be adjusted by defining the value of K in advance to meet the requirements of different scenarios.

[0174] Step S405 here corresponds to S7 and S8 in the diagram. S7 indicates dividing the interaction sequence into multiple periods and generating statistical features. This application provides an interest profile generation scheme based on word vector clustering. It utilizes textual information from advertising pushes with strong physical meaning to generate calculable numerical features. Through the K-means clustering algorithm, advertisements and products are automatically divided into multiple categories, and then a user interest profile is generated. This scheme effectively reduces the cost of manual annotation and is characterized by its simplicity, efficiency, and ease of expansion. The generated numerical features are low-dimensional vectors, which can be used as input to the clustering algorithm or as numerical features in the recommendation system, enriching the feature dimensions and helping the recommendation system achieve more accurate recommendations to improve recommendation performance, thus exhibiting strong generalizability. The automatic generation of category attributes eliminates the need for manual pre-definition of product categories and tags, reducing manpower input and improving construction efficiency. The level of detail in the interest profile can be set via parameters, and its coverage of categories far exceeds manual standards. It can also be adjusted at any time, exhibiting high coverage and flexibility.

[0175] This application utilizes a clustering algorithm to transform advertising information into category attributes through machine computation, improving computational efficiency and profile coverage while saving labor costs. In recommendation systems, computers neither know nor need to know the physical meaning of each attribute feature; the physical meaning of features is meaningless for the machine learning process. Therefore, clustering methods can be used to automatically classify products and advertisements into multiple categories. Each category does not have a directly defined physical meaning, but it can group similar advertisements and products into the same category. As the number of categories increases, the profile becomes more refined, and the generation process requires no manual intervention.

[0176] As can be seen from the technical solutions provided in the embodiments of this application above, the embodiments of this application determine the corresponding push scenario information in response to a content push instruction for a specified object; then, multiple candidate contents and multiple target historical period profiles indicating the specified object are determined based on the push scenario information; furthermore, a corresponding weight value is configured for each target historical period profile based on the push scenario information; then, multiple target historical period profiles are processed based on the weight value corresponding to each target historical period profile to obtain a target profile, thereby determining the push content that matches the target profile from multiple candidate contents. This application uses the target profile obtained by fusing multiple target historical period profiles to match with candidate contents to determine push content, which can improve the accuracy of push content determination. The target profile originates from multiple target historical period profiles, and the weight value corresponding to each target historical period profile is configured based on the push scenario. The weight value corresponding to each target historical period profile can achieve more granular feature capture for the push scenario. In this way, each target historical period profile can use the target profile to determine push content with different levels of participation, making the determined push content more adaptable to the relevant push scenario, thereby improving the content push experience for the specified object.

[0177] This application also provides a content determination device, such as... Figure 7 As shown, the content determining device 70 includes:

[0178] Response module 701: Used to respond to a content push instruction for a specified object and determine the corresponding push scenario information;

[0179] Profile determination module 702: used to determine multiple candidate contents and multiple target historical period profiles of the specified object based on the push scenario information; wherein, the target historical period profile is obtained based on the category of each target push content in the multiple target push contents and the interaction information with the specified object, and the multiple target push contents indicate push content within a preset historical period;

[0180] Weight configuration module 703: used to configure corresponding weight values ​​for each target historical period profile according to the push scenario information;

[0181] Image processing module 704: used to process the multiple target historical period images based on the weight value corresponding to each target historical period image to obtain a target image;

[0182] Matching module 705: used to determine push content that matches the target profile from the plurality of candidate contents.

[0183] It should be noted that the apparatus and method embodiments described in the device embodiments are based on the same inventive concept.

[0184] This application provides an electronic device including a processor and a memory. The memory stores at least one instruction or at least one program segment, which is loaded and executed by the processor to implement the content determination method provided in the above method embodiments.

[0185] Furthermore, Figure 10 A schematic diagram of the hardware structure of an electronic device for implementing the content determination method provided in the embodiments of this application is shown. The electronic device may participate in or include the content determination apparatus provided in the embodiments of this application. Figure 10 As shown, the electronic device 100 may include one or more processors 1002 (shown as 1002a, 1002b, ..., 1002n in the figure) (processor 1002 may include, but is not limited to, a microprocessor MCU or a programmable logic device FPGA, etc.), a memory 1004 for storing data, and a transmission device 1006 for communication functions. In addition, it may also include: a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which may be included as one of the ports of the I / O interface), a network interface, a power supply, and / or a camera. Those skilled in the art will understand that... Figure 10 The structure shown is for illustrative purposes only and does not limit the structure of the electronic device described above. For example, the electronic device 100 may also include... Figure 10 The more or fewer components shown, or having the same Figure 10 The different configurations shown.

[0186] It should be noted that the aforementioned one or more processors 1002 and / or other data processing circuits are generally referred to herein as "data processing circuits". These data processing circuits may be embodied, in whole or in part, in software, hardware, firmware, or any other combination thereof. Furthermore, the data processing circuits may be a single, independent processing module, or may be wholly or partially integrated into any other element within the electronic device 100 (or mobile device). As involved in the embodiments of this application, the data processing circuit serves as a processor control mechanism (e.g., selection of a variable resistor termination path connected to an interface).

[0187] The memory 1004 can be used to store software programs and modules of application software, such as the program instructions / data storage device corresponding to the content determination method described in the embodiments of this application. The processor 1002 executes various functional applications and data processing by running the software programs and modules stored in the memory 1004, thereby implementing the aforementioned content determination method. The memory 1004 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 1004 may further include memory remotely located relative to the processor 1002, and these remote memories can be connected to the electronic device 100 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0188] The transmission device 1006 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by the communication provider of the electronic device 100. In one example, the transmission device 1006 includes a network interface controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In one embodiment, the transmission device 1006 may be a radio frequency (RF) module for wireless communication with the Internet.

[0189] The display can be, for example, a touchscreen liquid crystal display (LCD) that allows a user to interact with the user interface of the electronic device 100 (or mobile device).

[0190] Embodiments of this application also provide a computer-readable storage medium, which can be disposed in an electronic device to store at least one instruction or at least one program related to implementing a content determination method in the method embodiments, wherein the at least one instruction or the at least one program is loaded and executed by the processor to implement the content determination method provided in the above method embodiments.

[0191] Optionally, in this embodiment, the storage medium may be located at at least one of the multiple network servers in a computer network. Optionally, in this embodiment, the storage medium may include, but is not limited to, various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.

[0192] It should be noted that the order of the embodiments described above is merely for descriptive purposes and does not represent the superiority or inferiority of the embodiments. Furthermore, the above description focuses on specific embodiments of this application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps described in the claims can be performed in a different order than that shown in the embodiments and still achieve the desired results. Additionally, the processes depicted in the drawings do not necessarily require a specific or sequential order to achieve the desired results. In some implementations, multitasking and parallel processing are also possible or may be advantageous.

[0193] The various embodiments in this application are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the device and electronic device embodiments are basically similar to the method embodiments, so the descriptions are relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

[0194] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.

[0195] The above description is only a preferred embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.

Claims

1. A method for determining content, characterized in that, The method includes: In response to a content push instruction targeting a specified object, determine the corresponding push scenario information; Based on the push scenario information, multiple candidate contents and multiple target historical period profiles indicating the specified object are determined; wherein, the target historical period profile is obtained based on the category of each target push content among the multiple target push contents and the interaction information with the specified object, and the multiple target push contents indicate push content within a preset historical period; Based on the push scenario information, configure corresponding weight values ​​for each target historical period profile; The multiple target historical period portraits are processed based on the weight value corresponding to each target historical period portrait to obtain a target portrait; The push content that matches the target profile is determined from the multiple candidate contents.

2. The method according to claim 1, characterized in that, The step of determining multiple target historical period profiles for the specified object based on the push scenario information includes: The corresponding historical push scenario is determined based on the push scenario information; Determine the historical period indicated by the historical push scenario; The multiple target historical period profiles are determined from multiple candidate historical period profiles indicating the specified object based on the indicated historical period.

3. The method according to claim 1, characterized in that, The step of configuring corresponding weight values ​​for each target historical period profile based on the push scenario information includes: Obtain the corresponding first preset weight configuration rule based on the push scenario information; Based on the first preset weight configuration rule, a corresponding weight value is configured for each of the target historical period portraits.

4. The method according to claim 3, characterized in that, The step of configuring corresponding weight values ​​for each target historical period profile based on the first preset weight configuration rule includes: Determine the degree of image deviation corresponding to the multiple target historical period images; The second preset weight configuration rule is obtained based on the degree of deviation of the portrait. The target weight configuration rule is generated by combining the first preset weight configuration rule and the second preset weight configuration rule. Based on the target weight configuration rules, a corresponding weight value is configured for each target historical period profile.

5. The method according to claim 1, characterized in that, After determining multiple candidate content items and indicating multiple target historical periodic profiles of the specified object based on the push scenario information, the method further includes: Determine the preset profile fusion model corresponding to the push scenario information; Using the multiple target historical periodic portraits as input, the target portrait is obtained by using the preset portrait fusion model; wherein, the preset portrait fusion model is obtained by machine learning training of multiple portrait samples, and each portrait sample carries a corresponding content tag.

6. The method according to claim 1, characterized in that, The method further includes: Obtain the target push content; Each target push content is determined to have its corresponding text feature vector, thus obtaining a set of text feature vectors corresponding to the multiple target push contents. The text feature vector set is clustered to obtain multiple categories; wherein, the multiple categories correspond one-to-one with the multiple cluster centers indicated by the clustering result; The category to which each target push content belongs is determined based on the cluster center set to which the corresponding text feature vector belongs; The target historical periodic profile is generated based on the category of each target push content and the interaction information with the specified object.

7. The method according to claim 6, characterized in that, The step of determining the text feature vector corresponding to each of the target push contents includes: Determine the text corpus corresponding to each of the target push content; The text corpus is segmented to obtain at least two text corpus fragments; Determine the representation vector corresponding to the text corpus segment; The representation vector corresponding to the text corpus is obtained based on the representation vector corresponding to each text corpus segment in the at least two text corpus segments, and the representation vector corresponding to the text corpus is determined to be the text feature vector of the target push content.

8. A content determining device, characterized in that, The device includes: Response module: Used to respond to content push instructions for a specified object and determine the corresponding push scenario information; Profile determination module: used to determine multiple candidate contents and multiple target historical period profiles of the specified object based on the push scenario information; wherein, the target historical period profile is obtained based on the category of each target push content and the interaction information with the specified object, and the multiple target push contents indicate push content within a preset historical period; Weight configuration module: used to configure corresponding weight values ​​for each target historical period profile according to the push scenario information; Image processing module: used to process the multiple target historical period images based on the weight value corresponding to each target historical period image to obtain the target image; Matching module: used to determine the push content that matches the target profile from the multiple candidate contents.

9. An electronic device, characterized in that, The electronic device includes a processor and a memory, the memory storing at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the content determination method as described in any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, The storage medium stores at least one instruction or at least one program segment, which is loaded and executed by a processor to implement the content determination method as described in any one of claims 1-7.

11. A computer program product, characterized in that, The computer program product includes at least one instruction or at least one program segment, which is loaded and executed by a processor to implement the content determination method as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Pushing method and system and electronic device

    CN110020180A

  • Collaborative filtering recommendation method and system based on user portrait clustering and storage medium

    CN112307332A