Advertisement display method and electronic device
By building a personal knowledge graph on the electronic device side and using a reorder model, the problem of failure to effectively consider the differences between individual users in the existing advertising delivery methods is solved, and a more accurate and personalized advertising delivery effect is achieved.
Patent Information
- Application Number
- CN202010990422.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-09-19
- Publication Date
- 2025-03-25
- Estimated Expiration
- 2040-09-19
AI Technical Summary
The existing advertising delivery methods fail to effectively consider the differences between individual users, resulting in homogeneity of recommendations and the failure to achieve the optimal advertising delivery effect.
Advertising recommendation schemes jointly with the end-side and server-side are adopted to build a user's personal knowledge graph on the electronic device side, and filter and sort advertisements in combination with the reordering model to optimize advertisement delivery.
It improves the accuracy and economic benefits of advertising delivery of advertising providers, meets users' personalized advertising needs, and reduces the phenomenon of homogeneity of recommendations.
Smart Images

Figure CN114255056B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data processing technology, and in particular to an advertisement display method and an electronic device. Background Art
[0002] In recent years, with the advancement of network technology, the Internet has become an important part of people's lives. The content and delivery methods of advertisements have undergone tremendous changes with the rapid development of the Internet.
[0003] At present, the advertising delivery method has formed a technical delivery model that targets the population and is product-oriented. First, the server collects the business data of the user group, such as the type and duration of the advertisements watched by the user group, the operation records of the user group closing and ignoring advertisements, etc. The server creates a group portrait for the user group based on the business data of the user group. The result of the group portrait can be which types of advertisements the user group watches the most, which types of advertisements the user group is not interested in, etc.; the server screens multiple advertisements in the advertisement pool based on the results of the group portrait; the server sends the sorted advertisements to the user's electronic device.
[0004] The above-mentioned advertising delivery method utilizes the behavioral characteristics of a large user group to push advertisements, but does not take into account the differences among individual users, such as the different preferences and needs of individual users. This advertising recommendation method has the problem of recommendation homogeneity and cannot achieve the optimal advertising delivery effect. Summary of the invention
[0005] The present application provides an advertisement display method and an electronic device. A joint advertisement recommendation scheme between the terminal side and the server side is implemented. On the one hand, the advertisement delivery effect of the advertisement supplier is optimized, the advertisement delivery of the advertisement supplier is made more accurate, and the economic benefits of the advertisement supplier are improved. On the other hand, the user's personal knowledge graph is constructed using the personal data stored in the terminal side. The user's personal knowledge graph can fully describe the user's behavioral characteristics, and the user's personal knowledge graph is established on the terminal side, which protects the security of the user's privacy information.
[0006] In the first aspect, the present application provides an advertisement display method, the method comprising an electronic device acquiring first personal data of a user, the first personal data being the user's personal information; the electronic device constructing a personal knowledge graph based on the first personal data; the personal knowledge graph including the first personal data and the time when the first personal data was generated. Afterwards, the electronic device acquires parameter information of the first advertisement content from an advertisement server, the parameter information including the type of the first advertisement content and the link address of the first advertisement content; the first advertisement content is obtained by the advertisement server from multiple advertisements screened based on group data; the first advertisement content includes one or more advertisements. The electronic device acquires parameter information of the second advertisement content from the parameter information of the first advertisement content based on the personal knowledge graph; the electronic device acquires the second advertisement content based on the parameter information of the second advertisement content; the second advertisement content includes one or more advertisements; the electronic device displays the second advertisement content on a display screen.
[0007] The electronic device may obtain the parameter information of the second advertising content from the parameter information of the first advertising content according to the personal knowledge graph in one or more of the following ways. Way 1: The electronic device retains the parameter information of all advertisements in the parameter information of the first advertising content, and the electronic device simply sorts the first advertising content from high to low by the type of advertisement according to the user's predicted preference value, to obtain the parameter information of the second advertising content. Way 2: The electronic device filters the parameter information of a part of advertisements from the parameter information of the first advertising content to obtain the parameter information of the second advertising content. Specifically, the electronic device sorts the first advertising content from high to low by the type of advertisement according to the user's predicted preference value, and only retains the parameter information of advertisements whose user's predicted preference value is higher than the first threshold, to obtain the parameter information of the second advertising content.
[0008] In the method, the electronic device sends an advertisement recommendation request to an advertisement server, and the electronic device receives parameter information of the first advertisement content returned by the advertisement server. Afterwards, the electronic device further screens the parameter information of the first advertisement content to obtain parameter information of the second advertisement content.
[0009] Specifically, the electronic device uses the acquired personal data to construct the user's personal knowledge graph, and trains the re-ranking model based on the personal knowledge graph. After the electronic device sends an advertisement recommendation request to the advertisement server, the electronic device receives the parameter information of the first advertisement content sent by the advertisement server; then, the electronic device further screens the parameter information of the first advertisement content based on the re-ranking model to obtain the parameter information of the second advertisement content, and the electronic device obtains the second advertisement content based on the parameter information of the second advertisement content, and recommends the second advertisement content to the user for viewing.
[0010] This method implements a joint advertising recommendation solution on the client side and the server side. On the one hand, it optimizes the advertising effect of the advertising supplier, makes the advertising supplier's advertising more accurate, and improves the economic benefits of the advertising supplier. On the other hand, the user's personal knowledge graph is constructed using the personal data stored on the client side. The user's personal knowledge graph can fully describe the user's behavioral characteristics, and the user's personal knowledge graph is established on the client side, which protects the security of the user's privacy information.
[0011] In combination with the first aspect, in a possible implementation of the first aspect, the electronic device constructs a personal knowledge graph based on the first personal data, specifically including: the electronic device obtains the second personal data from the first personal data; the second personal data includes relationship knowledge, event knowledge, and entity knowledge; the electronic device stores the relationship knowledge, event knowledge, and entity knowledge according to a predetermined structure; the electronic device constructs the user's personal knowledge graph based on the relationship knowledge of the predetermined structure, the event knowledge of the predetermined structure, and the entity knowledge of the predetermined structure. In this way, the personal knowledge graph graphically displays the data structure of the interconnection between personal data; and the personal knowledge graph includes the first personal data and the time when the first personal data was generated. The personal knowledge graph can represent the relationship between personal data and time, which is convenient for subsequent electronic devices to update the personal knowledge graph according to time.
[0012] In conjunction with the first aspect, in a possible implementation of the first aspect, the first advertisement content is any one or more of the following: pictures, videos, texts, and audios. The first advertisement content may also include other content, which is not limited in this application.
[0013] In combination with the first aspect, in a possible implementation of the first aspect, the electronic device obtains the first personal data of the user at regular intervals. In this way, the electronic device can obtain the new first personal data of the user at regular intervals and add the new first personal data to the personal knowledge graph, thereby updating the personal data of the user in the personal knowledge graph.
[0014] In combination with the first aspect, in a possible implementation of the first aspect, the predetermined structure is a five-tuple structure; the electronic device stores the relationship knowledge according to the predetermined structure, specifically including: the electronic device stores the relationship knowledge according to the first five-tuple structure; the first five-tuple structure is "first entity-relationship-second entity-first time point-first time interval"; the relationship represents the relationship between the first entity and the second entity, the first time point is the time when the first entity establishes a relationship with the second entity, and the first time interval is the interval time from the first time point to the current time point. In this way, the electronic device stores the user's relationship knowledge as a predetermined structure, which is convenient for the subsequent construction of a personal knowledge graph. In addition, the first five-tuple representing the relationship knowledge includes the first time point and the first time interval, and the electronic device can update the user's relationship knowledge according to the first time point and the first time interval.
[0015] In combination with the first aspect, in a possible implementation of the first aspect, the predetermined structure is a five-tuple structure; the electronic device stores the event knowledge according to the predetermined structure, specifically including: the electronic device stores the event knowledge according to the second five-tuple structure; the second five-tuple structure is "event-argument-logical relationship-second time point-second time interval"; the argument is the occurrence action of the event, the logical relationship represents the relationship between the event and the argument, the second time point is the time when the event occurs, and the second time interval is the interval time from the second time point to the current time point. In this way, the electronic device stores the user's event knowledge as a predetermined structure, which is convenient for the subsequent construction of a personal knowledge graph. In addition, the second five-tuple representing the event knowledge includes the second time point and the second time interval, and the electronic device can update the user's event knowledge according to the second time point and the second time interval.
[0016] In combination with the first aspect, in a possible implementation of the first aspect, the predetermined structure is a five-tuple structure; the electronic device stores the entity knowledge according to the predetermined structure, specifically including: the electronic device stores the entity knowledge according to the third five-tuple structure; the third five-tuple structure is "third entity: third time point-first association weight-fourth entity-second association weight-fifth entity"; the third time point is the occurrence time of the third entity, the first association weight is the degree of association between the third entity and the fourth entity, and the second association weight is the degree of association between the fourth entity and the fifth entity. In this way, the electronic device stores the user's entity knowledge as a predetermined structure, which is convenient for the subsequent construction of a personal knowledge graph. In addition, the third five-tuple representing the entity knowledge includes a third time point and a third time interval, and the electronic device can update the user's entity knowledge according to the third time point and the third time interval.
[0017] In combination with the first aspect, in a possible implementation of the first aspect, the electronic device deletes the relationship knowledge in the personal knowledge graph whose first time interval is greater than the first threshold; and / or, the electronic device deletes the event knowledge in the personal knowledge graph whose second time interval is greater than the first threshold; and / or, the electronic device determines the third time interval from the third time point to the current time point based on the third time point; the electronic device deletes the entity knowledge in the personal knowledge graph whose third time interval is greater than the first threshold. In this way, the electronic device can delete the user knowledge in the personal knowledge graph whose time interval is greater than the first threshold according to time, remove the user knowledge that is very old, and the personal knowledge graph can better represent the user's behavioral characteristics in the recent period of time.
[0018] In combination with the first aspect, in a possible implementation of the first aspect, after the electronic device constructs a personal knowledge graph based on the user's first personal data, the method further includes: the electronic device obtains the user's historical behavior and the historical advertising information displayed by the electronic device; the electronic device uses the historical advertising information and the personal knowledge graph as inputs to the reordering model, and the reordering model outputs a first result; the electronic device compares the first result with the user's historical behavior, and modifies the parameters of the reordering model until the first result output by the reordering model is within a preset range, thereby obtaining a first model; the electronic device obtains the parameter information of the second advertising content from the parameter information of the first advertising content based on the personal knowledge graph, specifically including: the electronic device obtains the parameter information of the second advertising content from the parameter information of the first advertising content based on the first model. In this way, the electronic device trains the reordering model based on the personal knowledge graph to obtain the first model. The electronic device can obtain the parameter information of the second advertising content from the parameter information of the first advertising content based on the first model.
[0019] In combination with the first aspect, in a possible implementation of the first aspect, the electronic device obtains the parameter information of the second advertising content from the parameter information of the first advertising content according to the first model, specifically including: the electronic device sorts the types of the first advertising content from high to low according to the user's predicted preference value according to the first model, and obtains the parameter information of the second advertising content; or the electronic device sorts the types of the first advertising content from high to low according to the user's predicted preference value according to the first model, and obtains the types of advertisements whose user's predicted preference value is higher than the first threshold, and obtains the parameter information of the second advertising content. In this way, the electronic device obtains the parameter information of the second advertising content from the parameter information of the first advertising content according to the user's predicted preference value, so that the advertisement displayed by the electronic device is more in line with the user's preferences. In this way, the advertising recommendation effect can be improved.
[0020] In combination with the first aspect, in a possible implementation of the first aspect, before the electronic device obtains the second personal data from the first personal data, the method also includes: the electronic device converts the first personal data into text information; the electronic device performs sentence segmentation, word segmentation and part-of-speech tagging on the text information; the electronic device obtains the second personal data from the first personal data, specifically including: the electronic device obtains words belonging to preset parts of speech in the text information. In this way, the electronic device removes data in the first personal data that cannot represent the user's behavioral characteristics. The electronic device removes useless data, and the obtained second personal data can better characterize the user's behavioral characteristics, so that the constructed personal knowledge graph can more accurately represent the user's behavioral characteristics.
[0021] In combination with the first aspect, in a possible implementation of the first aspect, after the electronic device obtains a word belonging to a preset part of speech in the text information, the method further includes: the electronic device obtains a word that appears once in the text information; if two or more identical words appear in the text information, the electronic device obtains one of the two or more identical words that appear in the text information to obtain the second personal data. In this way, the electronic device removes duplicate data and reduces data redundancy.
[0022] In combination with the first aspect, in a possible implementation of the first aspect, the user's personal information includes one or more of the following: gender, age, personality, hobbies, interpersonal relationships, income, address book information, call records, text messages, memo information, residential address, and weather conditions at the residential address.
[0023] In combination with the first aspect, in a possible implementation of the first aspect, the electronic device displays the second advertising content in the advertising display area of the display screen, specifically including: the electronic device plays one or more advertisements in the second advertising content from high to low according to the user's predicted value of preference in the second advertising content; or, the electronic device plays the advertisement with the highest user's predicted value of preference in the second advertising content; or, the electronic device plays one or more advertisements in the delivered advertisements from high to low according to the user's predicted value of preference in the second advertising content, and shields one or more advertisements in the second advertising content that the electronic device has played in the first time period. In this way, the electronic device plays one or more advertisements in the second advertising content from high to low according to the user's predicted value of preference or plays the advertisement with the highest user's predicted value of preference, which is more in line with the user's preference, and the user is more likely to watch the advertisement. In addition, the electronic device shields one or more advertisements that the electronic device has played in the first time period to avoid repeatedly recommending the same advertisement in a short period of time, which affects the user experience.
[0024] In combination with the first aspect, in a possible implementation of the first aspect, after the electronic device displays the second advertising content in the advertising display area of the display screen, the method further includes: the electronic device obtains the user's viewing data of the second advertising content; the viewing data includes the types of advertisements of one or more advertisements in the second advertising content that the user has viewed and the types of advertisements of one or more advertisements in the second advertising content that the user has closed; and the electronic device updates the first model according to the viewing data. In this way, the electronic device updates the first model according to the user's viewing data of advertisements, and the first model will recommend the type of advertisement that the user has viewed the most times to the user when recommending advertisements to the user next time, so as to better meet the needs of the user.
[0025] In a second aspect, the present application provides an electronic device, which includes one or more processors, one or more memories, and a display screen; the one or more memories and the display screen are coupled to the one or more processors, the one or more memories are used to store computer program codes, the computer program codes include computer instructions, and the one or more processors call computer instructions to enable the electronic device to execute the above-mentioned first aspect and the advertising display method provided in combination with any one of the implementation methods of the above-mentioned first aspect.
[0026] In a third aspect, the present application provides a computer storage medium, wherein the computer-readable storage medium stores a computer program. When the computer program is executed by a processor, the processor executes the advertisement display method provided in the first aspect and in combination with any one of the implementations of the first aspect.
[0027] In a fourth aspect, an embodiment of the present application provides a computer program product, wherein a computer-readable storage medium stores a computer program. When the computer program is executed by a processor, the processor executes the advertising display method provided in the first aspect and in combination with any one of the implementation methods of the first aspect.
[0028] In the method, the electronic device uses the acquired personal data to construct the user's personal knowledge graph, and trains a re-ranking model based on the personal knowledge graph. After the electronic device sends an advertisement recommendation request to an advertisement server, the electronic device receives parameter information of the first advertisement content sent by the advertisement server; then, the electronic device further screens the parameter information of the first advertisement content according to the re-ranking model to obtain parameter information of the second advertisement content, obtains the second advertisement content according to the parameter information of the second advertisement content, and recommends the second advertisement content to the user for viewing.
[0029] This method implements a joint advertising recommendation solution on the client side and the server side. On the one hand, it optimizes the advertising effect of the advertising supplier, makes the advertising supplier's advertising more accurate, and improves the economic benefits of the advertising supplier. On the other hand, the user's personal knowledge graph is constructed using the personal data stored on the client side. The user's personal knowledge graph can fully describe the user's behavioral characteristics, and the user's personal knowledge graph is established on the client side, which protects the security of the user's privacy information. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] Figure 1 A schematic diagram of an advertisement recommendation system provided in an embodiment of the present application;
[0031] Figure 2 A schematic diagram of the structure of an electronic device 100 provided in an embodiment of the present application;
[0032] Figure 3 A software structure block diagram of an electronic device 100 provided in an embodiment of the present application;
[0033] Figure 4 A schematic diagram of the hardware structure of an advertising server 200 provided in an embodiment of the present application;
[0034] Figure 5 A schematic diagram of another advertising recommendation system architecture provided in an embodiment of the present application;
[0035] Figure 6A-6E A set of application program interface diagrams provided for embodiments of the present application;
[0036] Figure 7 A schematic diagram of a flow chart of an advertisement display method provided in an embodiment of the present application;
[0037] Figure 8 A schematic diagram of a personal knowledge graph constructed in the form of a graph provided in an embodiment of the present application;
[0038] Figure 9A-9C A set of UI diagrams provided for embodiments of the present application;
[0039] Fig.10 A schematic diagram of another method for displaying advertisements provided in an embodiment of the present application;
[0040] Figure 11A-11C Another set of UI diagrams provided for embodiments of the present application;
[0041] Fig.12 Another schematic diagram of a system architecture provided for an embodiment of the present application;
[0042] Fig. 12A A UI diagram provided for an embodiment of the present application. DETAILED DESCRIPTION
[0043] The following will be combined with the accompanying drawings to clearly and thoroughly describe the technical solutions in the embodiments of the present application. In the description of the embodiments of the present application, unless otherwise specified, " / " means or, for example, A / B can mean A or B; "or" in the text is only a description of the association relationship of the associated objects, indicating that there can be three relationships, for example, A or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, in the description of the embodiments of the present application, "multiple" means two or more than two.
[0044] In the following, the terms "first" and "second" are used for descriptive purposes only and are not to be understood as suggesting or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features, and in the description of the embodiments of the present application, unless otherwise specified, "plurality" means two or more.
[0045] The term "user interface (UI)" in the specification, claims and drawings of this application refers to the medium interface for interaction and information exchange between an application or operating system and a user, which realizes the conversion between the internal form of information and the form acceptable to the user. The user interface of an application is source code written in a specific computer language such as Java and extensible markup language (XML). The interface source code is parsed and rendered on the terminal device, and finally presented as content that the user can recognize, such as pictures, text, buttons and other controls. Controls, also known as widgets, are the basic elements of the user interface. Typical controls include toolbars, menu bars, text boxes, buttons, scroll bars, pictures and text. The properties and contents of controls in the interface are defined by tags or nodes, such as XML through <textview> 、 <imgview> 、 <videoview>The controls contained in the interface are specified by nodes such as . A node corresponds to a control or attribute in the interface. After parsing and rendering, the node is presented as user-visible content. In addition, many applications, such as hybrid applications, usually also contain web pages in their interfaces. A web page, also known as a page, can be understood as a special control embedded in the application interface. A web page is source code written in a specific computer language, such as hypertext markup language (HTML), cascading style sheets (CSS), JavaScript (JS), etc. The web page source code can be loaded and displayed as user-recognizable content by a browser or a web page display component with similar functions to a browser. The specific content contained in a web page is also defined by tags or nodes in the web page source code. For example, HTML is defined by 、 、 <video> 、 <canvas>To define the elements and attributes of a web page.
[0046] The most common form of user interface is graphical user interface (GUI), which refers to a user interface related to computer operation that is displayed in a graphical manner. It can be an icon, window, control or other interface element displayed on the display screen of an electronic device, where a control can include icons, buttons, menus, tabs, text boxes, dialog boxes, status bars, navigation bars, widgets and other visual interface elements.
[0047] In order to facilitate the understanding of the present application, the terms involved in the present application are explained below.
[0048] File system: The file system is used to store unstructured personal data generated by various applications in the electronic device during operation. Unstructured personal data is data that cannot be represented by a two-dimensional logical table. Unstructured personal data can be, for example, documents, pictures, videos, texts and other data. For example, unstructured personal data can be data generated by the camera application during operation. The pictures and videos taken by the camera application are stored in the file system, so the pictures and videos taken by the camera application are unstructured personal data.
[0049] Data service: Data service is used to store structured personal data generated by various applications in electronic devices during operation. Structured personal data is data that can be represented by a unified structure. For example, structured personal data can be data generated during the operation of the above-mentioned address book application. For example, the user contact name and user contact phone number stored in the address book application, in the data service, the user contact name and the user contact phone number are stored in a one-to-one correspondence. The user contact name and the user contact phone number are structured personal data.
[0050] Personal data: Personal data includes data involving personal privacy.
[0051] Specifically, personal data can be data involving personal privacy generated by the electronic device during the operation of various applications. The data generated during the operation of various applications are saved in the file system and / or data service. Personal data can also be data involving personal privacy obtained directly from various applications by the electronic device after obtaining the user's authorization. For example, communication applications, SMS applications, address book applications, memo applications, weather applications, shopping applications, etc.
[0052] On the one hand, the data generated by each application in the electronic device during operation is stored in the data service and / or the file system, and the electronic device can obtain the user's personal data from the data service and / or the file system.
[0053] On the other hand, the application in the electronic device can obtain the user's authorization. After obtaining the user's authorization, the electronic device can obtain the user's personal data from each application. It should be noted that the electronic device directly obtains the user's personal data from the application and can also be divided into structured personal data and unstructured personal data.
[0054] Group data: Group data includes data of multiple users in a user group that does not involve user privacy, such as business data generated when users watch advertisements. For example, it may include one or more of the following: advertisements that users frequently click, advertisements that users have never clicked, the length of time users watch advertisements, advertisements that users close, etc.
[0055] Personal knowledge graph: The personal knowledge graph is constructed based on the user's personal data and is a data structure that graphically displays the interconnections between personal data.
[0056] Since the personal data of different users are different, the personal knowledge graphs of different users are different.
[0057] At present, group knowledge graphs are constructed based on group data of user groups, that is, knowledge graphs are data structures that represent the interconnections between group data of user groups. Group knowledge graphs cannot represent the behavioral characteristics of individual users.
[0058] In this application, the electronic device can construct a personal knowledge graph of each user based on the personal data of the user. The specific construction process of the personal knowledge graph can refer to the detailed description of the subsequent method embodiment, which will not be repeated for the time being.
[0059] Group portrait: Group portrait is a label for a user group generated using group data.
[0060] The labels of a user group may include, but are not limited to: the types of advertisements that the user group likes to browse, the types of advertisements that the user group ignores the most, the types of advertisements that the user group closes the most, the types of advertisements that the user group reports the most, and so on.
[0061] In some embodiments, the user group is a collection of all users regardless of gender, age, or region.
[0062] In some embodiments, the user groups may be classified according to gender, for example, the user groups may be divided into female user groups and male user groups, or the user groups may be divided into user groups of different age groups, etc.
[0063] Exemplarily, when the user group is divided into a female user group and a male user group, the group portrait can be divided into a female user group portrait and a male user group portrait. Specifically, the group data can be divided into data of the male user group and data of the female user group. Profiling the male user group based on the data of the male user group, that is, labeling the male user group, for example, the male user group is most interested in car advertisements and is not interested in beauty advertisements, etc. Profiling the female user group based on the data of the female user group, that is, labeling the female user group, for example, the female user group is interested in clothing advertisements and beauty advertisements, and is not interested in sports advertisements, etc.
[0064] Exemplarily, when the user group is divided into user groups of various age groups, the group portrait can also be used to portrait the user group according to the user groups of various age groups. Specifically, the group data can be classified according to age groups. For example, the user group data of users aged between 0-20 years old is divided into one category, the user group data of users aged between 21-35 years old is divided into one category, the user group data of users aged between 36-50 years old is divided into one category, and the user group data of users aged between 51-70 years old is divided into one category. The user groups of various age groups are respectively portraited according to the user group data of various age groups, that is, the user groups of various age groups are labeled. For example, the user group aged between 0-20 years old is most interested in toy advertisements, the user group aged between 21-35 years old is most interested in electronic product advertisements, the user group aged between 36-50 years old is most interested in skin care and hair care advertisements, and the user group aged between 51-70 years old is most interested in health care advertisements, etc.
[0065] Advertisement: Advertisement is a means of disseminating information to the public. Advertisements can be divided into public service advertisements and profit-making advertisements. Public service advertisements are advertising activities that provide free services to the society without the purpose of making profits. Profit-making advertisements can include the promotion of various applications, products or some brands. For example, profit-making advertisements can be beauty and food advertisements, music trial recommendation advertisements, video recommendation advertisements, novel recommendation advertisements, movie recommendation advertisements, application download recommendation advertisements, etc.
[0066] Currently, the ad serving process can include the following steps:
[0067] First, the advertisement server receives an advertisement recommendation request sent by the application server. In response to the advertisement recommendation request, the advertisement server sends an advertisement acquisition request to a manufacturer server (eg, a mobile phone manufacturer server).
[0068] The function of the advertising server is to obtain advertisements from various manufacturers and filter the advertisements. After that, the advertising server sends the filtered advertisements to various applications for display.
[0069] There can be multiple manufacturer servers, such as mobile phone manufacturer servers, car manufacturer servers, beauty brand manufacturer servers, etc. Multiple manufacturer servers receive advertisement acquisition requests sent by the advertising server. When any of the multiple manufacturer servers has advertisements to be sent, any manufacturer server can send the advertisements to be sent to the advertising server.
[0070] The advertisement server receives advertisements sent by any manufacturer's server, and screens multiple advertisements (for example, screens from high to low according to the prices of the advertisements) to obtain an advertisement set.
[0071] In some embodiments, the advertisements sent by any manufacturer server to the advertisement server may be duplicated, and the advertisement server may further deduplicate the obtained advertisements to avoid duplicate advertisements.
[0072] The advertisement server further screens the advertisements in the advertisement set according to the group data of the user group to obtain an advertisement list. The advertisement server sends the advertisement list to the application, and the application displays the advertisements in the advertisement list.
[0073] Coarse-cut advertisements: Coarse-cut advertisements are a collection of one or more advertisements. Coarse-cut advertisements are screened by the advertisement server from a large number of advertisements according to group data and the degree of interest of the user group in the advertisements.
[0074] Placed advertisements: Placed advertisements are a collection of one or more advertisements, which are obtained by the electronic device from rough-ranked advertisements based on the user's personal data and the probability that the individual may click on the advertisements. The number of placed advertisements can be the same as the number of rough-ranked advertisements. The number of placed advertisements can also be less than the number of rough-ranked advertisements, because the electronic device can filter out some advertisements from the rough-ranked advertisements based on the user's personal data.
[0075] To facilitate understanding of this application, the advertisement recommendation system is introduced below.
[0076] like Figure 1 As shown, Figure 1 Schematic diagram of an advertisement recommendation system. The system 10 may include Figure 1 The electronic device 100, the advertisement server 200 and the application server 300 are shown in FIG.
[0077] The electronic device 100 may be used to detect a user operation, and in response to the user operation, the electronic device 100 sends a user request to the application server 300 .
[0078] Among them, the user operation can be, for example: the electronic device 100 detects that the user has opened an application, or the electronic device 100 detects that the user has opened the current browsing page of the next video application (for example, the electronic device 100 detects that the user has swiped down with one finger to open the current browsing interface of the next video), then the electronic device 100 sends a user request to the application server 300.
[0079] The application server 300 may be configured to receive and respond to user requests. The application server 300 may send an advertisement recommendation request to the advertisement server 200 .
[0080] The advertisement server 200 may be used to filter advertisements in the advertisement set according to the user's group portrait to obtain roughly ranked advertisements.
[0081] The advertisement server 200 may also be used to send rough advertisements to the electronic device 100 .
[0082] The electronic device 100 can also be used to receive the rough ranking advertisements sent by the advertising server 200, and further screen the rough ranking advertisements to obtain the delivered advertisements. After that, the electronic device 100 recommends the delivered advertisements to the user for viewing.
[0083] It should be noted that Figure 1 The advertising recommendation system architecture in is only an exemplary implementation in the embodiments of the present application. The advertising recommendation system architecture in the embodiments of the present application includes but is not limited to the above advertising recommendation system architecture.
[0084] At present, there are generally two ways to place advertisements. Method 1: The application server collects the business data of multiple users watching advertisements and uploads the business data of the user group to the advertising server. The advertising server screens multiple advertisements based on the business data of the user group and obtains a list of advertisements that the user group is interested in. The advertising server sends the advertisements that the user group is interested in to the user. This advertising placement method uses the business data of the user group to place advertisements. This advertising push method does not take into account the differences between individual users and has the problem of recommendation homogeneity. Method 2: The application server collects the search information and browsing information of individual users, and the application server extracts keywords from the search information and browsing information to recommend content to individual users. For example, an individual user searches for an item (such as headphones) that he wants to buy on a shopping application. The next time the individual user uses the shopping application, the shopping application will recommend a variety of headphone item information to the individual user. This recommendation method collects the user's search information and browsing information, which will lead to the leakage of the user's personal privacy.
[0085] In order to solve the above problems, the following embodiments of the present application provide an advertisement display method. In this method, an electronic device can receive a user operation, and in response to the user operation, the electronic device sends a user request to an application server, the application server sends an advertisement recommendation request to an advertisement server, and the electronic device receives a rough-ranked advertisement (first advertisement content) returned by the advertisement server. Afterwards, the electronic device further screens the rough-ranked advertisements to obtain delivery advertisements (second advertisement content). The number of rough-ranked advertisements and delivery advertisements can be one or more.
[0086] In some embodiments, the electronic device may directly receive the rough ranking advertisement (first advertisement content) returned by the advertisement server. Afterwards, the electronic device further screens the rough ranking advertisement to obtain the delivered advertisement (second advertisement content). The electronic device does not need to send the user request to the application server. Please do not make any limitation here.
[0087] Specifically, the electronic device uses the acquired personal data to construct the user's personal knowledge graph, and trains the re-ranking model based on the personal knowledge graph. After the application server sends an advertisement recommendation request to the advertisement server, the electronic device receives the rough ranking advertisement sent by the advertisement server; then, the electronic device further screens the rough ranking advertisement according to the re-ranking model to obtain the delivered advertisement, and the electronic device recommends the delivered advertisement to the user for viewing.
[0088] In some embodiments, the electronic device receives parameter information of the first advertisement content from the advertisement server. The parameter information may be information such as the type, link address, and size of the first advertisement content. The electronic device obtains parameter information of the second advertisement content from the parameter information of the first advertisement content based on the personal knowledge graph. The electronic device obtains the second advertisement content from the advertisement server based on the parameter information of the second advertisement content. This application does not limit this.
[0089] This method implements a joint advertising recommendation solution on the client side and the server side. On the one hand, it optimizes the advertising effect of the advertising supplier, makes the advertising supplier's advertising more accurate, and improves the economic benefits of the advertising supplier. On the other hand, the user's personal knowledge graph is constructed using the personal data stored on the client side. The user's personal knowledge graph can fully describe the user's behavioral characteristics, and the user's personal knowledge graph is established on the client side, which protects the security of the user's privacy information.
[0090] Next, the hardware architecture of the electronic device mentioned in the embodiments of the present application is introduced.
[0091] Figure 2 A schematic structural diagram of an electronic device 100 is shown.
[0092] The following is a specific description of the embodiment using the electronic device 100 as an example. The device types of the electronic device 100 may include mobile phones, televisions, tablet computers, speakers, watches, desktop computers, laptop computers, handheld computers, notebook computers, ultra-mobile personal computers (ultra-mobile personal computers, UMPC), netbooks, and personal digital assistants (personal digital assistants, PDAs), augmented reality (augmented reality, AR) / virtual reality (virtual reality, VR) devices, etc. The embodiment of the present application does not impose any special restrictions on the device type of the electronic device 100.
[0093] It should be understood that Figure 2 The electronic device 100 shown is only an example, and the electronic device 100 may have more Figure 2 The more or less components shown in the figure can be combined with two or more components, or can have different component configurations. The various components shown in the figure can be implemented in hardware, software, or a combination of hardware and software including one or more signal processing and / or application specific integrated circuits.
[0094] The electronic device 100 may include: a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, a button 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0095] It is to be understood that the structure illustrated in the embodiment of the present invention does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown in the figure, or combine some components, or separate some components, or arrange the components differently. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.
[0096] The processor 110 may include one or more processing units, for example, the processor 110 may include an application processor (AP), a modem processor, a graphics processor (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, or a neural-network processing unit (NPU), etc. Different processing units may be independent devices or integrated into one or more processors.
[0097] The controller may be the nerve center and command center of the electronic device 100. The controller may generate an operation control signal according to the instruction operation code and the timing signal to complete the control of fetching and executing instructions.
[0098] The processor 110 may also be provided with a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory may store instructions or data that the processor 110 has just used or cyclically used. If the processor 110 needs to use the instruction or data again, it may be directly called from the memory. This avoids repeated access, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.
[0099] In some embodiments, the processor 110 may include one or more interfaces. The interface may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, or a universal serial bus (USB) interface, etc.
[0100] The charging management module 140 is used to receive charging input from a charger. The charger may be a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 may receive charging input from a wired charger through the USB interface 130. In some wireless charging embodiments, the charging management module 140 may receive wireless charging input through a wireless charging coil of the electronic device 100. While the charging management module 140 is charging the battery 142, it may also power the electronic device through the power management module 141.
[0101] The power management module 141 is used to connect the battery 142, the charging management module 140 and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140, and supplies power to the processor 110, the internal memory 121, the external memory, the display screen 194, the camera 193, and the wireless communication module 160. The power management module 141 can also be used to monitor parameters such as battery capacity, battery cycle number, battery health status (leakage, impedance), etc. In some other embodiments, the power management module 141 can also be set in the processor 110. In other embodiments, the power management module 141 and the charging management module 140 can also be set in the same device.
[0102] The wireless communication function of the electronic device 100 can be implemented through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor and the baseband processor.
[0103] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve the utilization of the antennas.
[0104] The mobile communication module 150 can provide solutions for wireless communications including 2G / 3G / 4G / 5G, etc., applied to the electronic device 100. The mobile communication module 150 may include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves from the antenna 1, and filter, amplify, etc. the received electromagnetic waves, and transmit them to the modulation and demodulation processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modulation and demodulation processor, and convert it into electromagnetic waves for radiation through the antenna 1.
[0105] The modulation and demodulation processor may include a modulator and a demodulator, wherein the modulator is used to modulate the low-frequency baseband signal to be transmitted into a medium-high frequency signal, and the demodulator is used to demodulate the received electromagnetic wave signal into a low-frequency baseband signal.
[0106] The wireless communication module 160 can provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc., which are applied to the electronic device 100. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, modulates the frequency of the electromagnetic wave signal and performs filtering, and sends the processed signal to the processor 110. The wireless communication module 160 can also receive the signal to be sent from the processor 110, modulate the frequency of it, amplify it, and convert it into electromagnetic waves for radiation through the antenna 2.
[0107] The electronic device 100 implements a display function through a GPU, a display screen 194, and an application processor, etc. The display screen 194 is used to display images, videos, etc. The display screen 194 includes a display panel.
[0108] The electronic device 100 can realize the shooting function through ISP, camera 193, video codec, GPU, display screen 194 and application processor.
[0109] In some embodiments, the wireless communication solution provided by the mobile communication module 150 can enable the electronic device to communicate with devices in the network (such as an advertising server), and the WLAN wireless communication solution provided by the wireless communication module 160 can also enable the electronic device to communicate with devices in the network (such as an advertising server).
[0110] In some embodiments, the electronic device 100 can send an advertising recommendation request through the wireless communication module 160 to establish a communication connection with the advertising server. The electronic device 100 can also receive rough-ranked advertisements sent by the advertising server through the wireless communication module 160. The electronic device 100 can also filter the rough-ranked advertisements through the processor 110 to obtain delivered advertisements. The electronic device 100 can also be used to display delivered advertisements for users to watch through the display screen 194.
[0111] The ISP is used to process data fed back by the camera 193. For example, when taking a photo, the shutter is opened, and light is transmitted to the camera photosensitive element through the lens, and the light signal is converted into an electrical signal. The camera photosensitive element transmits the electrical signal to the ISP for processing and converts it into an image visible to the naked eye.
[0112] The camera 193 is used to capture still images or videos. The object is projected onto the photosensitive element by generating an optical image through the lens.
[0113] Digital signal processors are used to process digital signals. In addition to processing digital image signals, they can also process other digital signals.
[0114] NPU is a neural-network (NN) computing processor. It can quickly process input information by drawing on the structure of biological neural networks, such as the transmission mode between neurons in the human brain, and can also continuously self-learn.
[0115] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device 100 .
[0116] The internal memory 121 may be used to store computer executable program codes, which include instructions. The processor 110 executes the instructions stored in the internal memory 121 to perform various functional applications and data processing of the electronic device 100.
[0117] The electronic device 100 can implement audio functions such as music playing and recording through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the headphone jack 170D, and the application processor.
[0118] The audio module 170 is used to convert digital audio information into analog audio signal output, and also used to convert analog audio input into digital audio signal. The audio module 170 can also be used to encode and decode audio signals.
[0119] The speaker 170A, also called a "speaker", is used to convert an audio electrical signal into a sound signal. The electronic device 100 can listen to music or listen to a hands-free call through the speaker 170A.
[0120] The receiver 170B, also called a "earpiece", is used to convert audio electrical signals into sound signals. When the electronic device 100 receives a call or voice message, the voice can be received by placing the receiver 170B close to the human ear.
[0121] Microphone 170C, also called "microphone" or "microphone", is used to convert sound signals into electrical signals. When making a call or sending a voice message, the user can speak by putting their mouth close to microphone 170C to input the sound signal into microphone 170C. The electronic device 100 can be provided with at least one microphone 170C. In other embodiments, the electronic device 100 can be provided with two microphones 170C, which can not only collect sound signals but also realize noise reduction function. In other embodiments, the electronic device 100 can also be provided with three, four or more microphones 170C to realize collection of sound signals, noise reduction, identification of sound sources, realization of directional recording function, etc.
[0122] In this embodiment, the electronic device 100 collects sound signals through the microphone 170C and transmits the sound signals to an application in the electronic device 100 .
[0123] The earphone interface 170D is used to connect a wired earphone and can be a USB interface 130 or a 3.5 mm open mobile terminal platform (OMTP) standard interface or a cellular telecommunications industry association of the USA (CTIA) standard interface.
[0124] The pressure sensor 180A is used to sense the pressure signal and can convert the pressure signal into an electrical signal. In some embodiments, the pressure sensor 180A can be set on the display screen 194. There are many types of pressure sensors 180A, such as resistive pressure sensors, inductive pressure sensors, capacitive pressure sensors, etc. The capacitive pressure sensor can be a parallel plate including at least two conductive materials. When a force acts on the pressure sensor 180A, the capacitance between the electrodes changes. The electronic device 100 determines the intensity of the pressure according to the change in capacitance. When a touch operation acts on the display screen 194, the electronic device 100 detects the touch operation intensity according to the pressure sensor 180A. The electronic device 100 can also calculate the touch position according to the detection signal of the pressure sensor 180A. In some embodiments, touch operations acting on the same touch position but with different touch operation intensities can correspond to different operation instructions. For example: when a touch operation with a touch operation intensity less than the first pressure threshold acts on the short message application icon, an instruction to view the short message is executed. When a touch operation with a touch operation intensity greater than or equal to the first pressure threshold acts on the short message application icon, an instruction to create a new short message is executed.
[0125] The gyro sensor 180B can be used to determine the motion posture of the electronic device 100. In some embodiments, the angular velocity of the electronic device 100 around three axes (i.e., x, y, and z axes) can be determined by the gyro sensor 180B. The gyro sensor 180B can be used for anti-shake shooting. For example, when the shutter is pressed, the gyro sensor 180B detects the angle of the electronic device 100 shaking, calculates the distance that the lens module needs to compensate based on the angle, and allows the lens to offset the shaking of the electronic device 100 through reverse movement to achieve anti-shake. The gyro sensor 180B can also be used for navigation and somatosensory game scenes.
[0126] The air pressure sensor 180C is used to measure air pressure. In some embodiments, the electronic device 100 calculates the altitude through the air pressure value measured by the air pressure sensor 180C to assist positioning and navigation.
[0127] The magnetic sensor 180D includes a Hall sensor. The electronic device 100 can use the magnetic sensor 180D to detect the opening and closing of the flip leather case. In some embodiments, when the electronic device 100 is a flip phone, the electronic device 100 can detect the opening and closing of the flip cover according to the magnetic sensor 180D. Then, according to the detected opening and closing state of the leather case or the opening and closing state of the flip cover, the flip cover can be automatically unlocked.
[0128] The acceleration sensor 180E can detect the magnitude of the acceleration of the electronic device 100 in all directions (generally three axes). When the electronic device 100 is stationary, the magnitude and direction of gravity can be detected. It can also be used to identify the posture of the electronic device and is applied to applications such as horizontal and vertical screen switching and pedometers.
[0129] The distance sensor 180F is used to measure the distance. The electronic device 100 can measure the distance by infrared or laser. In some embodiments, when shooting a scene, the electronic device 100 can use the distance sensor 180F to measure the distance to achieve fast focusing.
[0130] The proximity light sensor 180G may include, for example, a light emitting diode (LED) and a light detector, such as a photodiode. The light emitting diode may be an infrared light emitting diode. The electronic device 100 emits infrared light outward through the light emitting diode. The electronic device 100 uses a photodiode to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it can be determined that there is an object near the electronic device 100. When insufficient reflected light is detected, the electronic device 100 can determine that there is no object near the electronic device 100. The electronic device 100 can use the proximity light sensor 180G to detect that the user holds the electronic device 100 close to the ear to talk, so as to automatically turn off the screen to save power. The proximity light sensor 180G can also be used in leather case mode and pocket mode to automatically unlock and lock the screen.
[0131] The ambient light sensor 180L is used to sense the ambient light brightness. The electronic device 100 can adaptively adjust the brightness of the display screen 194 according to the perceived ambient light brightness. The ambient light sensor 180L can also be used to automatically adjust the white balance when taking pictures. The ambient light sensor 180L can also cooperate with the proximity light sensor 180G to detect whether the electronic device 100 is in a pocket to prevent accidental touches.
[0132] The fingerprint sensor 180H is used to collect fingerprints. The electronic device 100 can use the collected fingerprint characteristics to implement fingerprint unlocking, access application locks, fingerprint photography, fingerprint call answering, etc.
[0133] The temperature sensor 180J is used to detect temperature. In some embodiments, the electronic device 100 uses the temperature detected by the temperature sensor 180J to execute a temperature processing strategy. For example, when the temperature reported by the temperature sensor 180J exceeds a threshold, the electronic device 100 reduces the performance of a processor located near the temperature sensor 180J to reduce power consumption and implement thermal protection. In other embodiments, when the temperature is lower than another threshold, the electronic device 100 heats the battery 142 to avoid abnormal shutdown of the electronic device 100 due to low temperature. In other embodiments, when the temperature is lower than another threshold, the electronic device 100 performs a boost on the output voltage of the battery 142 to avoid abnormal shutdown caused by low temperature.
[0134] The touch sensor 180K may also be referred to as a touch panel or a touch-sensitive surface. The touch sensor 180K may be disposed on the display screen 194, and the touch sensor 180K and the display screen 194 form a touch screen, also referred to as a "touch screen". The touch sensor 180K is used to detect touch operations acting on or near it. The touch sensor may transmit the detected touch operations to an application processor to determine the type of touch event. Visual output related to the touch operations may be provided through the display screen 194. In other embodiments, the touch sensor 180K may also be disposed on the surface of the electronic device 100, at a position different from that of the display screen 194.
[0135] The bone conduction sensor 180M can obtain a vibration signal. In some embodiments, the bone conduction sensor 180M can obtain a vibration signal of a vibrating bone block of the vocal part of the human body. The bone conduction sensor 180M can also contact the human pulse to receive a blood pressure beat signal. In some embodiments, the bone conduction sensor 180M can also be set in an earphone and combined into a bone conduction earphone. The audio module 170 can parse out a voice signal based on the vibration signal of the vibrating bone block of the vocal part obtained by the bone conduction sensor 180M to realize a voice function. The application processor can parse the heart rate information based on the blood pressure beat signal obtained by the bone conduction sensor 180M to realize a heart rate detection function.
[0136] The key 190 includes a power key, a volume key, etc. The key 190 may be a mechanical key or a touch key. The electronic device 100 may receive key input and generate key signal input related to user settings and function control of the electronic device 100.
[0137] Motor 191 can generate vibration prompts. Motor 191 can be used for incoming call vibration prompts, and can also be used for touch vibration feedback. For example, touch operations acting on different applications (such as taking pictures, audio playback, etc.) can correspond to different vibration feedback effects. For touch operations acting on different areas of the display screen 194, motor 191 can also correspond to different vibration feedback effects. Different application scenarios (for example: time reminders, receiving messages, alarm clocks, games, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect can also support customization.
[0138] Indicator 192 may be an indicator light, which may be used to indicate charging status, power changes, messages, missed calls, notifications, etc.
[0139] The SIM card interface 195 is used to connect a SIM card. The SIM card can be connected to and separated from the electronic device 100 by inserting it into the SIM card interface 195 or pulling it out from the SIM card interface 195. The electronic device 100 can support 1 or N SIM card interfaces, where N is a positive integer greater than 1. The SIM card interface 195 can support Nano SIM cards, Micro SIM cards, SIM cards, and the like. Multiple cards can be inserted into the same SIM card interface 195 at the same time. The types of the multiple cards can be the same or different. The SIM card interface 195 can also be compatible with different types of SIM cards. The SIM card interface 195 can also be compatible with external memory cards. The electronic device 100 interacts with the network through the SIM card to implement functions such as calls and data communications. In some embodiments, the electronic device 100 uses an eSIM, i.e., an embedded SIM card. The eSIM card can be embedded in the electronic device 100 and cannot be separated from the electronic device 100.
[0140] The software system of the electronic device 100 may adopt a layered architecture, an event-driven architecture, a micro-core architecture, a micro-service architecture or a cloud architecture. The software structure of the electronic device 100 is described in the embodiment of the present application using a layered architecture.
[0141] Figure 3 A software structure block diagram of an electronic device 100 provided in an embodiment of the present application.
[0142] The layered architecture divides the software system into several layers, each with clear roles and division of labor. The layers communicate with each other through software interfaces. In some embodiments, the layered architecture divides the system into four layers, from top to bottom: application layer, application framework layer, Android runtime and system library, and kernel layer.
[0143] The application layer can include a series of application packages.
[0144] like Figure 3 As shown, the application package may include applications such as camera, gallery, calendar, phone, map, memo, address book, weather, music, video, and text messages.
[0145] The application framework layer provides an application programming interface (API) and a programming framework for the applications in the application layer. The application framework layer includes some predefined functions.
[0146] like Figure 3 As shown, the application framework layer may include a personal knowledge graph manager, a model manager, and the like.
[0147] Among them, the personal knowledge graph manager is used to build the user's personal knowledge graph. The personal knowledge graph manager includes a knowledge acquisition module, a knowledge fusion module, and a computing and storage module.
[0148] The knowledge acquisition module is used to acquire personal data. The knowledge acquisition module can acquire the user's personal data from two aspects.
[0149] On one hand, the data generated by each application in the electronic device during operation is stored in the data service and / or the file system, and the knowledge acquisition module can obtain the user's personal data from the data service and / or the file system.
[0150] On the other hand, the application programs in the electronic device can obtain the user's authorization. After obtaining the user's authorization, the electronic device can obtain the user's personal data from each application program.
[0151] Afterwards, the knowledge acquisition module sends the personal data to the knowledge fusion module.
[0152] The knowledge fusion module is used to receive the personal data sent by the knowledge acquisition module, pre-process the personal data, and classify the pre-processed personal data according to relationships, events, and entities based on the machine learning algorithm to obtain the user's relationship knowledge, event knowledge, and entity knowledge.
[0153] User knowledge includes relationship knowledge, event knowledge, and entity knowledge.
[0154] Relationship knowledge refers to user knowledge of a user's interpersonal relationships, such as friend relationships, colleague relationships, and family relationships, obtained based on personal data.
[0155] Event knowledge refers to user knowledge about things that have happened, are happening, or have not happened, such as traveling, going on a business trip, or going to the gym, obtained based on personal data.
[0156] Entity knowledge refers to user knowledge about entities such as users' favorite movies and favorite music obtained based on personal data.
[0157] It can be seen from the above embodiments that the personal data acquired by the knowledge acquisition module can be divided into structured personal data and unstructured personal data.
[0158] For unstructured personal data, the knowledge fusion module can preprocess the unstructured personal data (such as audio, video, pictures, etc.). Preprocessing includes converting the information contained in the unstructured personal data (such as audio, video, pictures, etc.) into text information. Then the text information is cleaned. Cleaning the text information includes segmenting and tagging the text information with parts of speech through natural language processing, and deleting words in the text information that do not belong to the preset parts of speech according to the preset parts of speech, such as deleting articles, prepositions, adverbs, conjunctions, verbs, modal particles, etc. The preset parts of speech can be user-defined, and the preset parts of speech can be set according to actual needs.
[0159] Afterwards, the knowledge fusion module deduplicates the cleaned text information. The purpose of deduplication is that, on the one hand, the electronic device 100 obtains the user's personal data from the data service and / or file system and directly obtains the user's personal data from various applications, and duplicate data may appear; on the other hand, the electronic device 100 directly obtains the user's personal data from various applications, and the personal data in each application may also be duplicated. Therefore, the knowledge fusion module deduplicates the cleaned text information, deletes duplicate data, and reduces data redundancy.
[0160] Among them, the part-of-speech tagging can refer to Table 1:
[0161] Table 1
[0162]
[0163] According to Table 1, the words in the text information after word segmentation can be tagged with parts of speech. Specifically, add " / a" after adjectives, add " / b" after distinguishing words, add " / c" after conjunctions, add " / d" after adverbs, add " / e" after interjections, add " / f" after locatives, add " / g" after morphemes, add " / h" after the preceding component, add " / i" after idioms, add " / j" after abbreviations, add " / k" after the following components, add " / l" after idiomatic expressions, add " / m" after numerals, add " / n" after nouns, add " / o" after onomatopoeias, and add " / h" after idioms. Add " / p" after prepositions, " / q" after quantifiers, " / r" after pronouns, " / s" after place words, " / t" after time words, " / u" after particles, " / v" after verbs, " / w" after punctuation marks, " / x" after non-morpheme characters, " / y" after modal particles, " / z" after state words, " / nr" after names of people, " / ns" after place names, " / nt" after names of institutions, and "nz" after other proper nouns.
[0164] For example, for a text message "TV Series 1, starring actor 1, will premiere on Apple Video on May 4, 2020", the result after word segmentation and part-of-speech tagging of the text data is "TV Series 1 / n, starring actor 1 / nr, premiered on Apple Video on 2020 / m / m5 / m / m4 / m / m. / w".
[0165] Table 1 merely lists some rules for part-of-speech tagging by way of example, and may include more part-of-speech tagging rules. Part-of-speech tagging may also refer to other rules, and this application does not limit this.
[0166] For structured personal data, the knowledge fusion module can preprocess the structured personal data, which includes two steps: data cleaning and deduplication. The method of cleaning and deduplication for structured personal data is the same as that for unstructured personal data, which will not be repeated here.
[0167] The cleaned and deduplicated personal data is input into the machine learning algorithm, and the pre-processed personal data is classified according to relationship knowledge, event knowledge, and entity knowledge using the machine learning algorithm.
[0168] Among them, the machine learning algorithm can be a clustering algorithm based on association rules. Association rules can be set in advance according to actual needs, and then the pre-processed personal data is clustered and analyzed according to the set association rules to extract the core information (relationship knowledge, event knowledge and entity knowledge) in the pre-processed personal data. This method can more accurately extract the core information (relationship knowledge, event knowledge and entity knowledge) related to the constructed knowledge graph in the pre-processed personal data.
[0169] At the same time, the core information in the pre-processed personal data (second personal data) that is not related to the constructed knowledge graph is collectively referred to as the user's basic characteristic data. The user's basic characteristic data may include: user gender, age; user's device information (such as device identification, device model), etc.
[0170] In addition to the clustering algorithm based on association rules, the machine learning algorithm may also be a decision tree classification method, a naive Bayes classification algorithm, a classification method based on a support vector machine, etc. This application does not make any limitation here.
[0171] The knowledge fusion module is also used to send relational knowledge, entity knowledge, and event knowledge to the computing and storage module.
[0172] The computing and storing module is used to receive the user knowledge sent by the knowledge fusion module and store the user knowledge according to a predetermined structure, for example, the user knowledge can be stored in a five-tuple structure.
[0173] Specifically, the computing storage module can store the relational knowledge according to a predetermined structure. The purpose of storing the relational knowledge according to a predetermined structure is to store the relational knowledge and time in correspondence, reflecting the connection between the relational knowledge and time. For example, the relational knowledge and time can be stored according to the structure of a quintuple (the first quintuple structure), and the structure of the quintuple is "entity 1-relationship-entity 2-time point-time interval".
[0174] For example, I-Customer-Mr. Wang-2019.6.8-14. This relationship knowledge indicates that I met Mr. Wang, the customer, on June 8, 2019, and we have known each other for 16 months today (for example, August 10, 2020).
[0175] The computing storage module can store event knowledge according to a predetermined structure. The purpose of storing event knowledge according to a predetermined structure is to store event knowledge and time in correspondence, reflecting the connection between event knowledge and time. For example, event knowledge and time can be stored according to a quintuple structure (second quintuple structure), and the quintuple structure is event-argument-logical relationship-time point-time interval. Here, the argument is the action that supports this event, and the logical relationship can be a causal relationship, a sequential relationship, etc.
[0176] For example, going on a business trip - buying a plane ticket - sequentially - 2020.9.1-3 days. This event knowledge expresses the business trip event. The business trip and buying a plane ticket are sequentially related. The departure date is September 1, 2020, and the itinerary is three days.
[0177] The computing storage module can store entity knowledge according to a predetermined structure. The purpose of storing entity knowledge according to a predetermined structure is to store entity knowledge and time in correspondence, reflecting the connection between entity knowledge and time. For example, entity knowledge and time can be stored according to a quintuple structure (third quintuple structure), and the quintuple structure is "entity 1: time-association weight-entity 2-relationship weight-entity 3".
[0178] For example, TV Series 1: 2020.4.6-1.0-Actor 1-0.8-Actor 3. This entity knowledge expresses that TV Series 1 was released on April 6, 2020. The correlation between TV Series 1 and Actor 1 is 1.0, and the correlation between Actor 1 and Actor 3 is 0.8. This means that TV Series 1 is more correlated with Actor 1.
[0179] The computing and storage module is also used to construct a personal knowledge graph based on the user knowledge of a predetermined structure. The personal knowledge graph is a graphical representation of the user knowledge of a predetermined structure. Figure 8 The personal knowledge graph constructed in the form of a graph is shown.
[0180] The computing storage module is also used to send the user's personal knowledge graph to the personal knowledge graph library for storage.
[0181] The model manager includes a feature pool and a model pool. The feature pool is used to store the user's personal knowledge graph and the user's basic feature data; the model pool is pre-set with a re-ranking model, which can be a logistic regression, decision tree, factorization machine (FM), field-aware factorization machine (FFM), deep learning and other algorithms. The model pool trains the re-ranking model based on the user's personal knowledge graph and the user's basic feature data. The trained re-ranking model (first model) can further screen the rough ranking advertisements to obtain the delivered advertisements.
[0182] The following describes how the model pool trains the reranking model.
[0183] The input of the training data of the re-ranking model is historical advertising information, user basic feature data, and personal knowledge graph, and the output of the training data is user historical behavior.
[0184] The reranking model can be but is not limited to logistic regression, decision tree, FFM, deep learning and other algorithms.
[0185] The model pool stores historical advertisement information of multiple advertisements displayed in the past. The historical advertisement information may be information such as advertisement ID, advertisement description and size.
[0186] User basic characteristic data may include: user gender, age, device information used by the user (such as device identification, device model), etc.
[0187] The user's historical behavior may include which ads the user has watched in the past week, how long the user has watched the ads, which ads the user has closed, etc.
[0188] The input of the training data is thrown into the re-ranking model, and the re-ranking model will output a result, which can be that the user clicked and browsed the ad or that the user did not browse and closed the ad. Compare the result with the output of the training data. If the result does not match the output of the training data, modify the parameters of the re-ranking model and continue to train the re-ranking model. When the result output by the re-ranking model is consistent with the user's historical behavior, the model training ends. After the re-ranking model training is completed, the re-ranking model can predict the click probability of each ad in the rough ranking, that is, obtain the probability value of each ad user clicking. The re-ranking model sorts the ads from large to small according to the probability value of user clicking, and obtains the delivered ads.
[0189] For example, the user's interpersonal network can be obtained based on the relationship knowledge recorded in the user's personal knowledge graph, and the user can be learned from the interpersonal network whether he is a sociable person or an introvert. The user's frequent activities, such as travel and business trips, can be obtained based on the event knowledge recorded in the user's personal knowledge graph. The user's favorite TV series can be obtained based on the entity knowledge recorded in the user's personal knowledge graph.
[0190] For example, the re-ranking model learns from the user's personal knowledge graph that the user is a user who likes to watch movies and TV series and occasionally goes on business trips. The coarse-ranked ads include a ticket purchase ad, a movie and TV series ad, and a dating ad. The re-ranking model makes probability predictions for the coarse-ranked ads and finds that the probability of a user clicking on the ticket purchase ad is 0.5, the probability of a user clicking on the movie and TV series ad is 0.9, and the probability of a user clicking on the dating ad is 0.4. The re-ranking model re-ranks the coarse-ranked ads according to the probability of the user clicking to obtain the delivered ads. The order of the delivered ads is movie and TV series ads, ticket purchase ads, and dating ads.
[0191] The application obtains the re-ranking model, and the application can screen the rough ranked ads according to the trained re-ranking model (first model) to obtain the delivered ads. The delivered ads are obtained by re-screening the rough ranked ads according to the user's personal behavior characteristics, and the delivered ads are obtained by sorting from high to low according to the probability that the user may click and watch the ads.
[0192] The following is an explanation of how the application screens the rough ranked advertisements to obtain the delivered advertisements.
[0193] In some embodiments, after the application obtains the rough-ranked advertisements, the application obtains a re-ranking model, and sorts the rough-ranked advertisements from high to low according to the probability that the user may click and view the advertisements according to the re-ranking model, to obtain delivered advertisements.
[0194] In some embodiments, after the application obtains the roughly ranked advertisements, the application obtains the re-ranking model, and the application may retain only the advertisement with the highest probability that the user may click and view.
[0195] In other embodiments, after the application obtains the roughly ranked advertisements, the application obtains the re-ranking model, and the application can filter out advertisements whose probability of being clicked and viewed by the user is lower than a threshold.
[0196] In other embodiments, after the application obtains the rough-ranked advertisements, the application obtains the re-ranking model and sorts the rough-ranked advertisements from high to low according to the probability of the advertisements being clicked and viewed by individual users based on the re-ranking model. The application will also determine whether each advertisement has been pushed within a certain time (e.g., three days). If the application determines that some of the advertisements have been pushed within a certain time (e.g., three days), the application will filter out the advertisements that have been pushed within a certain time (e.g., three days).
[0197] It should be noted that there may be other ways for the application to filter the rough ranked advertisements to obtain the delivered advertisements, and this application does not limit this.
[0198] The model manager in the application layer can provide an interface. The application server sends an ad recommendation request to the ad server. After that, the application receives the rough-ranked ads sent by the ad server. The application can obtain the re-ranking model through the interface provided by the model manager with the user's authorization. The application uses the re-ranking model to filter the rough-ranked ads and obtain the delivered ads. The application recommends the acquired delivered ads to the user for viewing.
[0199] In some embodiments, the personal knowledge graph library in the system library may provide an interface, and after the application obtains the user's authorization, the application may obtain the user's personal knowledge graph from the interface. The application may recommend content that the user is interested in through the user's personal knowledge graph.
[0200] Exemplarily, the newly downloaded application has not recorded the user's behavior, and the newly downloaded application can obtain the user's authorization to obtain the user's personal knowledge graph. The newly downloaded application can recommend content that the user is interested in through the user's personal knowledge graph. On the one hand, the user does not need to select the content he is interested in, and the newly downloaded application can make personalized recommendations based on the personal knowledge graph. On the other hand, the newly downloaded application can make personalized recommendations based on the personal knowledge graph, and the recommended content conforms to the user's behavioral characteristics, optimizing the content recommendation effect.
[0201] Android Runtime includes core libraries and virtual machines. Android runtime is responsible for system scheduling and management.
[0202] The core library consists of two parts: one is the function that the Java language needs to call, and the other is the core library of the system.
[0203] The application layer and the application framework layer run in a virtual machine. The virtual machine executes the Java files of the application layer and the application framework layer as binary files. The virtual machine is used to perform functions such as object life cycle management, stack management, thread management, security and exception management, and garbage collection.
[0204] The system library can include multiple functional modules, such as data services, file systems, personal knowledge graph libraries, surface managers, 3D graphics processing libraries (such as OpenGL ES), etc.
[0205] Data services are used to store structured data involving user privacy generated during the operation of electronic devices and applications, such as databases, tables, and other data.
[0206] The file system is used to store unstructured data involving user privacy generated when electronic devices run applications, such as documents, pictures, videos, and other data.
[0207] The personal knowledge graph library is used to store personal knowledge graphs.
[0208] The surface manager is used to manage the display subsystem and provide the fusion of 2D and 3D layers for multiple applications.
[0209] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.
[0210] The kernel layer is the layer between hardware and software. The kernel layer contains at least display driver, camera driver, audio driver, and sensor driver.
[0211] refer to Figure 4 , Figure 4 It is a schematic diagram of the hardware structure of the advertising server 200 provided in the embodiment of the present application.
[0212] The advertising server 200 may include: one or more processors 301, a memory 302, a communication interface 303, a transmitter 305, a receiver 306, a coupler 307, and an antenna 308. These components may be connected via a bus 304 or other means. Figure 3 Take bus connection as an example.
[0213] The communication interface 303 can be used for the advertising server 200 and other communication devices, and the other communication devices can be, for example, the above-mentioned electronic devices or other network devices. Exemplarily, the application server sends an advertisement recommendation request to the advertising server 200, the advertising server 200 receives and responds to the advertisement recommendation request sent by the application server, and the advertising server 200 sends a rough advertisement to the application in the electronic device 100. Specifically, the communication interface 303 can be a long-term evolution (LTE) (4G) communication interface. Not limited to a wireless communication interface, the advertising server 200 can also be configured with a wired communication interface 303 to support wired communication, for example, the backhaul link between the advertising server 200 and other communication devices can be a wired communication connection.
[0214] In some embodiments of the present application, the transmitter 305 and the receiver 306 can be regarded as a wireless modem. The transmitter 305 can be used to transmit and process the signal output by the processor 301. The receiver 306 can be used to receive the signal. In the advertising server 200, the number of the transmitter 305 and the receiver 306 can be one or more. The antenna 308 can be used to convert the electromagnetic energy in the transmission line into electromagnetic waves in the free space, or convert the electromagnetic waves in the free space into electromagnetic energy in the transmission line. The coupler 307 can be used to divide the mobile communication signal into multiple paths and distribute them to multiple receivers 306.
[0215] The memory 302 is coupled to the processor 301 and is used to store various software programs and / or multiple sets of instructions. Specifically, the memory 302 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more disk storage devices, flash memory devices or other non-volatile solid-state storage devices.
[0216] The memory 302 can store an operating system (hereinafter referred to as system), such as embedded operating systems such as uCOS, VxWorks, RTLinux, etc. The memory 302 can also store a network communication program, which can be used to communicate with one or more additional devices, one or more terminal devices, and one or more network devices.
[0217] In the embodiment of the present application, the processor 301 can be used to read and execute computer-readable instructions. Specifically, the processor 301 can be used to call a program stored in the memory 302, such as an implementation program of the method provided in one or more embodiments of the present application on the advertising server 200 side, and execute the instructions contained in the program.
[0218] Need to explain, Figure 4 The hardware structure of the advertising server 200 shown is only one implementation of the embodiment of the present application. In actual applications, the advertising server 200 may also include more or fewer components, which is not limited here.
[0219] refer to Figure 5 , Figure 5 This is another schematic diagram of the advertising recommendation system architecture provided in an embodiment of the present application.
[0220] like Figure 5 As shown, the electronic device 100 may include a knowledge acquisition module 5101 , a knowledge fusion module 5102 , a calculation and storage module 5103 , and a reordering module 5104 .
[0221] For the functional introduction of knowledge acquisition module 5101, knowledge fusion module 5102, calculation storage module 5103, and reordering module 5104, please refer to Figure 3 The illustrated embodiments will not be described in detail here.
[0222] The advertisement server 200 may include: an advertisement click module 5201 , a dynamic advertisement pool module 5202 , an advertisement rough sorting module 5203 , and a group portrait module 5204 .
[0223] Among them, the advertisement click module 5201 can be used to receive an advertisement recommendation request sent by the application server. In response to the advertisement recommendation request sent by the application server, the advertisement click module 5201 sends an advertisement bidding request to the dynamic advertisement pool module 5202.
[0224] The dynamic advertisement pool module 5202 may be used to receive and respond to advertisement bidding requests sent by the advertisement click module 5201 .
[0225] On the one hand, the dynamic advertisement pool module 5202 can send an advertisement acquisition request to multiple advertiser servers, multiple advertiser servers receive and respond to the advertisement acquisition request, and multiple advertiser servers send advertisements to the dynamic advertisement pool module 5202. On the other hand, the dynamic advertisement pool module 5202 screens the advertisements sent by multiple advertiser servers (for example, screens from high to low according to the price of the advertisements) to obtain an advertisement set, and the dynamic advertisement pool module 5202 sends the advertisement set to the advertisement rough sorting module 5203.
[0226] The rough advertising ranking module 5203 can be used to receive the advertising set sent by the dynamic advertising pool module 5202. The rough advertising ranking module 5203 is also used to receive the group portrait sent by the group portrait module 5204. The rough advertising ranking module 5203 filters the advertisements in the advertising set according to the group portrait to obtain rough ranking advertisements. The rough ranking advertisements may include one or more advertisements. The rough advertising ranking module 5203 sends the rough ranking advertisements to the application.
[0227] The application in the electronic device 100 receives the rough ranking advertisements sent by the rough ranking module 5203 and obtains the re-ranking model. The application screens the rough ranking advertisements according to the re-ranking model to obtain the delivered advertisements. The application recommends the delivered advertisements to the user for viewing.
[0228] The group portrait module 5204 may be used to obtain group data of the user group sent by the application server, and the group data may include which advertisements the user group clicked, which advertisements the user group browsed, which advertisements the user group closed, the duration of advertisement browsing by the user group, etc. The group portrait module 5204 creates a group portrait for the user group based on the group data of the user group. The group portrait is to label the user group based on the group data of the user group, such as which type of advertisements the user group likes to watch, which type of advertisements the user group does not like to watch, etc.
[0229] The following describes how an electronic device directly obtains a user's personal data from an application program in conjunction with a user interface on the electronic device.
[0230] For example, Fig. 6A As shown, Fig. 6A An exemplary user interface 60 of a contacts application on an electronic device is illustrated.
[0231] The user interface 40 may include a status bar 400 and a contact list 410 .
[0232] User contacts can be classified according to attributes such as friends, colleagues, relatives, etc. Fig. 6A As shown, the friend-type contacts may include Wang Ke, whose phone number is 12345; the friend-type contacts also include Li Ke, whose phone number is 23456. The colleague-type contacts may include Zhang San, whose phone number is 12346; the colleague-type contacts also include Lao Wang, whose phone number is 12045; the colleague-type contacts may include Zhang San, whose phone number is 12365; the colleague-type contacts also include Xiao Li, whose phone number is 23045; the colleague-type contacts also include Hua Hua, whose phone number is 92345. The relatives-type contacts may include Mom, whose phone number is 65430.
[0233] The following uses the user interface on an electronic device to give an example of the personal data generated when an electronic device runs a text messaging application.
[0234] The SMS application records SMS information related to the user, and the electronic device can obtain the user's behavior information from the SMS information. For example, if a user buys a ticket from Beijing to Shanghai through a ticket purchase application, the ticket purchase application sends the user's ticket purchase SMS to the SMS application, and the electronic device can obtain the places the user often goes to from the SMS application. For another example, if a user buys a movie ticket through an application, the application sends the user's ticket purchase SMS to the SMS application, and the electronic device can obtain the types of movies the user likes to watch from the SMS application.
[0235] It is understandable that the electronic device can also directly obtain the user's ticket purchase SMS from the ticket purchase application. This application does not limit this.
[0236] For example, Figure 6B As shown, Figure 6B An exemplary user interface 50 of a text messaging application on an electronic device is illustrated.
[0237] The user interface 50 may include a status bar 400 and a text message content display frame 420 .
[0238] The SMS content display box 420 may include SMS content, which is "Order EK123456, Z234, car 10, lower berth No. 24, August 24, 2020, departing from Shenzhen Station at 12:45, arriving at Beijing West. Please bring your ticket purchase certificate to enter the station and board the train. You purchased an electronic ticket, so please directly bring your ticket purchase certificate to the ticket inspection and wait for the train."
[0239] The electronic device can know from the content of the text message that the user will take a train from Shenzhen Station to Beijing West Station on August 24, 2020, and thus the electronic device recommends hotel accommodation advertisements to the user for viewing.
[0240] The following uses the user interface on an electronic device to give an example of the personal data generated when an electronic device runs a communication application.
[0241] Figure 6C An exemplary user interface of a communication application on an electronic device is exemplarily shown.
[0242] The communication application may be a telephone application pre-installed in the electronic device. The communication application may also be a communication application downloaded by the user from an application store, through which the user can make a voice call or video call with a friend. This application is not limited here.
[0243] The following description uses the communication application as a telephone application pre-installed in the electronic device.
[0244] When an electronic device runs a phone application, it can obtain the call frequency between the user's contact and the user based on the user's call records, so that the electronic device can infer the closeness of the relationship between the user's contact and the user based on the call frequency between the user's contact and the user.
[0245] For example, Figure 6C As shown, Figure 6C An exemplary user interface 40 of a telephone application on an electronic device is illustrated.
[0246] The user interface 40 may include a status bar 400 and a call record list 410 .
[0247] The status bar 400 may include a time indicator 4001 , a battery status indicator 4002 , one or more signal strength indicators 4003 of wireless fidelity (Wi-Fi) signals, and one or more signal strength indicators 4004 of mobile communication signals (also referred to as cellular signals).
[0248] The call record list 410 may include one or more call records, for example, at 10:22 this morning, the user called Zhang San once, at 11:30 this morning, the user called Lao Wang once, at 1:15 this afternoon, the user called Hua Hua once, at 1:21 this afternoon, the user called Mom once, at 2:11 this afternoon, the user called Mr. Wang once, at 6:10 this afternoon, the user called Wang Ke once, at 6:10 this afternoon, the user called Li Ke once, at 8:15 this evening, the user called Mom once, and the user called Mom once yesterday. The call record list 410 may also include more or fewer call records, which are not given as examples here.
[0249] The following uses the user interface on the electronic device to give an example of the personal data generated when the electronic device runs the memo application.
[0250] The memo application records important events and times. The electronic device can obtain important events and people related to the user from the important events and times recorded in the memo application. For example, a friend's birthday, the time, location and content of a meeting, etc. For example, Fig.6D As shown, Fig.6D An exemplary user interface 70 of a memo application on an electronic device is exemplarily shown.
[0251] The user interface 40 may include a status bar 400 and a my memo list 440 .
[0252] My memo list 440 may include important events, important people, and times recorded by the user. For example, "Work report at 2:00 pm on August 7, prepare PPT", "Wang Ke's birthday is on August 16, remember to buy a birthday present", "Flight at 3:00 pm on August 20, business trip to Beijing". My memo list 440 may also record more or fewer important events, important people, and times, which will not be repeated here.
[0253] The following uses the user interface on the electronic device to give an example of the personal data generated when the electronic device runs the memo application.
[0254] The weather application records the weather conditions of the user's preset city. The electronic device can obtain the user's city, the weather conditions of the city, etc. from the weather module 2106.
[0255] For example, Fig. 6E As shown, Fig. 6E An exemplary user interface 80 of weather on an electronic device is illustrated.
[0256] The user interface 80 may include a status bar 400 and a list 450 of weather conditions for the week.
[0257] The one-week weather condition list 450 may include the daily weather conditions of a certain location within a week. For example, the location of the electronic device is Nanshan District, Shenzhen City, the weather today (Tuesday) is cloudy, and the temperature is 29°, the weather at 9:00 p.m. today (Tuesday) is cloudy, and the temperature is 28°, the weather at 10:00 p.m. today (Tuesday) is cloudy, and the temperature is 28°, the weather at 11:00 p.m. today (Tuesday) is cloudy, and the temperature is 27°, the weather at 0:00 a.m. tomorrow (Wednesday) is cloudy, and the temperature is 27°, and the weather at 1:00 a.m. tomorrow (Wednesday) is cloudy, and the temperature is 27°. The weather on Wednesday will be showers, with a maximum temperature of 29° and a minimum temperature of 27°; the weather on Thursday will be showers, with a maximum temperature of 29° and a minimum temperature of 27°; the weather on Friday will be showers, with a maximum temperature of 29° and a minimum temperature of 27°; the weather on Saturday will be showers, with a maximum temperature of 29° and a minimum temperature of 27°; the weather on Sunday will be showers, with a maximum temperature of 29° and a minimum temperature of 27°; the weather on next Monday will be showers, with a maximum temperature of 29° and a minimum temperature of 27°.
[0258] The above UI embodiment is only an example of how the electronic device 100 can obtain the user's personal data from the above application. The personal data can also come from other applications, which will not be introduced one by one in this application.
[0259] like Figure 7 As shown, Figure 7 A flowchart of an advertisement display method provided in an embodiment of the present application.
[0260] The method includes:
[0261] S701. The electronic device 100 obtains personal data and pre-processes the personal data.
[0262] On the one hand, the data generated by each application in the electronic device during operation is stored in the data service and / or the file system, and the electronic device 100 can obtain the user's personal data from the data service and / or the file system.
[0263] On the other hand, the application programs in the electronic device can obtain the user's authorization. After obtaining the user's authorization, the electronic device can directly obtain the user's personal data from each application program.
[0264] Exemplarily, the electronic device 100 can directly obtain the user's interpersonal relationship knowledge from address book applications, communication applications, etc., for example, user knowledge such as the user's friend relationships, the user's colleague relationships, the user's relatives, and the user's customer relationships.
[0265] The electronic device 100 can directly obtain user knowledge such as the user's friends' birthdays, meeting information, tourist cities, academic papers, departure dates, etc. from text messaging applications, memo applications, etc.
[0266] The electronic device 100 can obtain user knowledge such as the user's favorite things, favorite cities, favorite singers, song titles, and actors of interest from the gallery application.
[0267] The electronic device 100 can obtain user knowledge such as the user's city area, weather conditions, exercise status, etc. from a wearable device (such as a Bluetooth watch).
[0268] Exemplarily, the electronic device 100 obtains the description information and data of "TV Series 1" from the video application. The description information and data of "TV Series 1" are shown in Table 2:
[0269] Table 2
[0270]
[0271] The electronic device 100 is also used to pre-process the personal data. The pre-processing includes cleaning and deduplication of the personal data. Cleaning the personal data includes segmenting and tagging the text information with parts of speech through natural language processing, and deleting words in the text information that do not belong to the preset parts of speech according to the preset parts of speech, such as deleting articles, prepositions, adverbs, conjunctions, verbs, modal particles, etc. The preset parts of speech can be user-defined, and the preset parts of speech can be set according to actual needs.
[0272] Afterwards, on the one hand, the electronic device 100 obtains the user's personal data from the data service and / or file system and directly obtains the user's personal data from various applications, and duplicate data may appear; on the other hand, the electronic device 100 directly obtains the user's personal data from various applications, and the personal data in each application may also be duplicated. Therefore, the knowledge fusion module further deduplicates the cleaned text information, deletes duplicate data, and reduces data redundancy.
[0273] Exemplarily, the electronic device 100 pre-processes the acquired description information and data of "TV Series 1", specifically including segmenting and part-of-speech tagging the description information and data of "TV Series 1". Figure 3 The embodiments are not described in detail in this application.
[0274] The result of the electronic device 100 preprocessing the description information and data of "TV Series 1" is shown in Table 3:
[0275] Table 3
[0276]
[0277]
[0278] Exemplarily, the electronic device 100 cleans the description information and data of "TV Series 1" after word segmentation and part-of-speech tagging according to the preset part-of-speech, and obtains words including names of people, places, songs, TV series, time, actors, etc. The description information and data of "TV Series 1" after word segmentation and part-of-speech tagging are shown in Table 4:
[0279] Table 4
[0280]
[0281] S702. The electronic device 100 classifies the pre-processed personal data according to relationships, events, and entities based on a machine learning algorithm to obtain three types of knowledge of the user: relationship knowledge, event knowledge, and entity knowledge.
[0282] For details, see Figure 3 The embodiments are not described in detail here.
[0283] S703. The electronic device 100 stores the user knowledge according to a predetermined structure, and constructs a personal knowledge graph based on the user knowledge in the predetermined structure.
[0284] Specifically, the electronic device 100 stores the relationship knowledge according to a predetermined structure. The purpose of storing the relationship knowledge according to a predetermined structure is to store the relationship knowledge and time in correspondence, reflecting the connection between the relationship knowledge and time. For example, the relationship knowledge and time can be stored according to the structure of a quintuple, and the structure of the quintuple is "entity 1-relationship-entity 2-time point-time interval".
[0285] For example, I-Customer-Mr. Wang-2019.6.8-14. This relationship knowledge indicates that I met Mr. Wang, the customer, on June 8, 2019, and we have known each other for 16 months today (for example, August 10, 2020).
[0286] Here, the time interval is expressed as 203 days in months, years, or days, and this application does not limit this.
[0287] In some embodiments, the electronic device 100 may also represent the relationship between entities only using time points. The basic format is: entity 1-relationship-entity 2-time point.
[0288] For example, I-colleague-Zhang San-2019.4.5. This relationship knowledge indicates that I and my colleague Zhang San met on April 15, 2019.
[0289] The electronic device 100 stores the event knowledge according to a predetermined structure. The purpose of storing the event knowledge according to the predetermined structure is to store the event knowledge and time in correspondence, reflecting the connection between the event knowledge and time. For example, the event knowledge and time can be stored according to the structure of a five-tuple, and the structure of the five-tuple is "event-argument-logical relationship-time point-time interval".
[0290] Here, the argument is the action that supports this event, and the logical relationship can be causal relationship, sequential relationship, etc.
[0291] For example, going on a business trip - buying a plane ticket - sequentially - 2020.9.1-3 days. This event knowledge expresses the business trip event. The business trip and buying a plane ticket are sequentially related. The departure date is September 1, 2020, and the itinerary is three days.
[0292] For example, go to duty-free shop - buy cosmetics - cause and effect - 2020.8.20 - 2 days. This event knowledge expresses the purchase event, there is a causal relationship between going to duty-free shop and buying cosmetics, the departure date is August 20, 2020, and the itinerary is two days.
[0293] In some embodiments, the electronic device 100 may also simply represent the events that occurred to the user with time points. The basic format is: Entity 1: event-argument-logical relationship-time point.
[0294] For example, go on a business trip - buy a plane ticket - sequentially - 2020.9.1. This event knowledge expresses the business trip event, the business trip and the plane ticket are in a sequential relationship, and the departure date is September 1, 2020.
[0295] The electronic device 100 stores the entity knowledge according to a predetermined structure. The purpose of storing the entity knowledge according to a predetermined structure is to store the entity knowledge and time in correspondence, reflecting the connection between the entity knowledge and time. For example, the entity knowledge and time can be stored according to the structure of a five-tuple, and the structure of the five-tuple is "entity 1: time-association weight-entity 2-relationship weight-entity 3".
[0296] For example, TV Series 1: 2020.4.6-1.0-Actor 1-0.8-Actor 3. This entity knowledge expresses that TV Series 1 was released on April 6, 2020. The correlation between TV Series 1 and Actor 1 is 1.0, and the correlation between Actor 1 and Actor 3 is 0.8. This means that TV Series 1 is more correlated with Actor 1.
[0297] For example, TV Series 2: 2020.2.1-0.6-Actor 2-0.8-Actor 1. This entity knowledge expresses that TV Series 2 was released on February 1, 2020, the correlation between TV Series 2 and Actor 2 is 0.6, and the correlation between Actor 2 and Actor 1 is 0.8. This means that TV Series 2 is more correlated with Actor 1.
[0298] Exemplarily, the electronic device 100 performs entity mining on the cleaned and deduplicated description information and data of "TV Series 1", and establishes time-based entity knowledge, TV Series 1: 2020-1.0-Actor 1-0.8-Actor 2.
[0299] The electronic device 100 constructs a personal knowledge graph based on event knowledge of a predetermined structure, relationship knowledge of a predetermined structure, and entity knowledge of a predetermined structure.
[0300] A personal knowledge graph represents user knowledge of a predetermined structure in the form of a graph.
[0301] like Figure 8 As shown, Figure 8 This is a schematic diagram of a personal knowledge graph constructed in the form of a graph in the embodiment of the present application. It can be understood that Figure 8 The personal knowledge graph in only shows part of the user's user knowledge. The personal knowledge graph can also include more or less user knowledge.
[0302] like Figure 8 As shown, the user's personal knowledge graph may include relationship knowledge, event knowledge, and entity knowledge.
[0303] for Figure 8 For a specific description of the user's relationship knowledge, event knowledge, and entity knowledge in the personal knowledge graph shown in , please refer to the above embodiments, and this application will not repeat them again.
[0304] It should be noted that since the user knowledge acquired by the electronic device 100 from various application modules is changing in real time, the personal knowledge graph constructed by the electronic device 100 based on the user knowledge acquired from various application modules also needs to be updated in real time. In this way, the personal knowledge graph will more accurately express the user's characteristics.
[0305] After the electronic device 100 constructs the user's time-based personal knowledge graph, the electronic device 100 can also update the user knowledge in the personal knowledge graph. The specific personal knowledge graph can only retain the user knowledge of the user in the most recent period of time, and the electronic device 100 can filter out the user knowledge that does not belong to the most recent period of time in the personal knowledge graph. On the one hand, the user characteristics portrayed by the updated personal knowledge graph are more accurate. On the other hand, the storage resources of the electronic device 100 can be saved.
[0306] The following describes how the electronic device 100 updates the personal knowledge graph.
[0307] The updating of the personal knowledge graph by the electronic device 100 can be divided into two aspects. The first aspect is that the electronic device 100 adds the user's new knowledge to the personal knowledge graph. The second aspect is that the electronic device 100 filters out the user's existing knowledge in the personal knowledge graph.
[0308] The following describes how the electronic device 100 filters out the user's existing knowledge in the personal knowledge graph.
[0309] Specifically, in some embodiments, the electronic device 100 may only retain user knowledge from a recent period of time (eg, two years) in the personal knowledge graph, and filter out user knowledge from outside the recent period of time (eg, two years) in the personal knowledge graph.
[0310] In other embodiments, the electronic device 100 may also filter out the user's existing knowledge in the personal knowledge graph according to the memory size of the personal knowledge graph.
[0311] Specifically, when the electronic device 100 detects that the memory size of the user's personal knowledge graph is close to a preset memory size, the electronic device 100 can retain the knowledge of the most recent period in the personal knowledge graph according to the preset memory size.
[0312] The embodiments of the present application may also be other ways to update the user's personal knowledge graph. The above embodiments are only used to explain the present application and should not constitute a limitation.
[0313] The electronic device 100 may update the personal knowledge graph at specific time intervals.
[0314] In some embodiments, the electronic device 100 may update the personal knowledge graph at a fixed time (eg, one day).
[0315] In other embodiments, the electronic device 100 may update the personal knowledge graph based on the user's behavioral habits.
[0316] For example, during the time period "22:00-8:00", the user is resting at home, and the electronic device 100 is in standby mode. The electronic device 100 can update the personal knowledge graph during the time period "22:00-8:00". Because when the electronic device 100 updates the personal knowledge graph, a certain amount of memory space of the electronic device 100 will be occupied. In this way, the electronic device 100 does not update the personal knowledge graph during the user's rest time, leaving more memory space for user operations, ensuring the smoothness of user operations.
[0317] S704. The electronic device 100 trains a re-ranking model based on historical advertising information, user basic feature data, personal knowledge graph, and user historical behavior.
[0318] For how the electronic device 100 trains the reordering model, see Figure 3 The embodiments are not described in detail here.
[0319] It should be noted that the electronic device 100 trains the re-ranking model based on data such as the personal knowledge graph. From the above embodiments, it can be known that the personal knowledge graph will be updated over time, so the electronic device 100 should also update the re-ranking model over time, so that the re-ranking model re-ranks the input multiple advertisements to obtain a more accurate advertising ranking list.
[0320] The following is an explanation of how the electronic device 100 updates the reordering model rows.
[0321] In some embodiments, the electronic device 100 may update the reordering model at a fixed time (eg, one day).
[0322] In some embodiments, the electronic device 100 can update the personal knowledge graph based on the user's behavioral habits.
[0323] For example, during the time period "22:00-8:00", the user is resting at home and the electronic device 100 is in standby mode, and the electronic device 100 can update the reordering model during the time period "22:00-8:00". Because the electronic device 100 will occupy a certain memory space of the electronic device 100 when updating the reordering model, the electronic device 100 does not update the reordering model while the user is using the electronic device 100, leaving more memory space for user operations, ensuring the smoothness of user operations.
[0324] S705: The application in the electronic device 100 receives the rough advertisement sent by the advertisement server 200.
[0325] The electronic device 100 detects a user operation, and in response to the user operation, the electronic device 100 sends a user request to the application server 300 , and the application server 300 sends an advertisement recommendation request to the advertisement server 200 .
[0326] The user operation may be, for example: the electronic device 100 detects that the user has opened an application, or the electronic device 100 detects that the user has downloaded a video and has accessed the current browsing page of the application (for example, the electronic device 100 detects that the user has swiped down with one finger to access the current browsing interface of the next video), then the electronic device 100 sends a user request to the application server 300.
[0327] For example, Fig. 9A As shown, Fig. 9A An exemplary user interface 90 illustrating a current browsing interface of an application program is shown.
[0328] The user interface 90 may include a status bar 400 , a current video browsing interface 460 , and an advertisement display area 470 .
[0329] The current video browsing interface 460 includes a recommendation control 4601 , a popular control 4602 , a small video control 4603 , a next video control 4604 , a video display window 4605 , a like control 4606 , a comment control 4607 , and a forwarding control 4608 .
[0330] Advertisement display area 470 includes an advertisement icon 4609 , a close control 4610 , and an advertisement link control 4611 .
[0331] Among them, the video display window 4605 displays the video content 4600 of the currently broadcast video (such as TV series 1).
[0332] The next video control 4604 may receive a single click operation from the user, and in response to the single click operation from the user, the current video browsing interface 460 will display video content of other videos.
[0333] In response to the user's single-click operation of the next video control 4604, the electronic device 100 sends a user request to the application server 300, and the application server 300 sends an advertisement recommendation request to the advertisement server 200. In response to the advertisement recommendation request, the advertisement server 200 will send a new advertisement to the application in the electronic device 100, and the advertisement display area 470 will display the new advertisement content.
[0334] The current browsing interface of the application can also accept the user's single-finger downward swipe to the next video current browsing interface. In response to the user's single-finger downward swipe operation on the current browsing interface, the electronic device 100 sends a user request to the application server 300, and the application server 300 sends an advertising recommendation request to the advertising server 200. In response to the advertising recommendation request, the advertising server 200 will send a new advertisement to the application in the electronic device 100, and the advertising display area 470 will display the new advertising content.
[0335] The following describes how the advertisement server 200 sends the rough advertisement to the application in the electronic device 100 .
[0336] First, the advertisement server 200 creates a group profile for the user group based on the group data.
[0337] The advertisement server 200 obtains group data, which may be which advertisements the user clicks on, which advertisements the user browses, which advertisements the user closes, and the like.
[0338] Figure 9B-Figure 9C A UI diagram showing an exemplary user interface for the advertisement server 200 to obtain group data.
[0339] For example, Fig. 9B As shown, Fig. 9B An exemplary user interface 900 illustrating a current browsing interface of an application program.
[0340] The user interface 900 may include a status bar 400 , a current video browsing interface 460 , and an advertisement display area 470 .
[0341] The current video browsing interface 460 includes a recommendation control 4601 , a popular control 4602 , a small video control 4603 , a next video control 4604 , a video display window 4605 , a like control 4606 , a comment control 4607 , and a forwarding control 4608 .
[0342] Advertisement display area 470 includes an advertisement icon 4609 , a close control 4610 , and an advertisement link control 4611 .
[0343] Among them, the video display window 4605 displays the video content 4600 of the currently broadcast video (such as TV series 1).
[0344] The next video control 4604 may receive a single click operation from the user, and in response to the single click operation from the user, the current video browsing interface 460 will display video content of other videos.
[0345] Advertisement display area 470 displays advertisement content, which is "The method to receive the coupon is already provided below, please click to receive ABCDEFGHI".
[0346] The advertisement link control 4611 can receive a user click operation, and in response to the user click operation, the user interface 910 will display the user interface of the advertisement. At the same time, in response to the user click operation of the advertisement link control 4611, the application server 300 reports the user click and view behavior of the advertisement to the advertisement server 200. The user click and view behavior of the advertisement can be used as a piece of business data of the advertisement.
[0347] The close control 4610 may also receive a user click operation. In response to the user click operation, the advertisement display area 470 displays the following Fig. 9C The selection prompt box 4612 shown includes a not interested control 4613, a repeat recommendation control 4614, and a block this type of advertisement control 4615.
[0348] Among them, the not interested control 4613 can receive a user click operation, and in response to the user's click operation, the advertisement display area 470 will no longer display the advertisement; the repeat recommendation control 4614 can receive a user click operation, and in response to the user's click operation, the advertisement display area 470 will no longer recommend the advertisement to the user for viewing within a certain period of time (for example, 48 hours); the block this type of advertisement controls 46154614 can receive a user click operation, and in response to the user's click operation, the advertisement display area 470 will not recommend this type of advertisement (for example, beauty) to the user for viewing.
[0349] At the same time, in response to the user clicking the close control 4610, the application server 300 reports the user's behavior of closing and not viewing the advertisement to the advertisement server 200. The user's behavior of closing and not viewing the advertisement can be used as a group data of the advertisement.
[0350] The group data of the advertisement may also come from other sources. The above embodiments are only used to explain the present application, and the embodiments of the present application are not limited here.
[0351] The application server 300 collects group data and reports it to the advertising server 200. The advertising server 200 creates group portraits for the user groups based on the groups of all users. Group portraits are labels for the user groups based on the group data of all users, such as what type of advertisements the user groups like to watch, what type of advertisements the user groups do not like to watch, etc.
[0352] It is understandable that the group data of all users collected by the application server 300 changes in real time, so the group data of all users sent by the application server 300 and received by the advertisement server 200 also changes in real time.
[0353] The advertisement server 200 can generate group portraits for the user groups according to the group data of all users at a fixed time (for example, one day). Then the group portraits of the user groups are also updated periodically.
[0354] Afterwards, the advertisement server 200 screens the advertisements according to the group portrait of the user group to obtain roughly ranked advertisements.
[0355] A rough advertisement may be one or more advertisements.
[0356] The rough ranking advertisements are obtained by screening multiple advertisements in the advertisement set according to the group portrait of the user group. The advertisement server 200 sends the rough ranking advertisements to the application in the electronic device 100 .
[0357] The application in the electronic device 100 receives the rough advertisement sent by the advertisement server 200 .
[0358] As can be seen from the above embodiments, in some embodiments, the advertisement server 200 may also classify user groups, for example, the user groups may be divided into female user groups and male user groups, or the user groups may be divided into user groups of different age groups, etc.
[0359] Exemplarily, when the advertisement server 200 divides the user group into a female user group and a male user group, the advertisement server 200 performs a profile for the male user group and a profile for the female user group respectively.
[0360] Specifically, the advertisement server 200 screens multiple advertisements according to the group portrait of male users to obtain rough ranking advertisements for male users, and pushes the rough ranking advertisements for male users to the electronic devices of male users.
[0361] The advertisement server 200 screens multiple advertisements according to the group portrait of female users to obtain rough ranking advertisements for female users. The advertisement server 200 pushes the rough ranking advertisements for female users to the application program in the electronic device of the female user.
[0362] Exemplarily, when the advertisement server 200 divides the user group into user groups of various age groups, the group portrait may also be formed according to the user groups of various age groups.
[0363] Specifically, the advertisement server 200 profiles a user group between the ages of 21 and 35, and screens multiple advertisements according to the group profile of users between the ages of 21 and 35 to obtain rough ranking advertisements for users between the ages of 21 and 35. The advertisement server 200 pushes the rough ranking advertisements for users between the ages of 21 and 35 to the application in the electronic device of the user between the ages of 21 and 35.
[0364] The advertisement server 200 creates a profile for a user group between the ages of 36 and 50, and screens multiple advertisements based on the group profile of users between the ages of 36 and 50 to obtain a rough ranking advertisement for users between the ages of 36 and 50. The advertisement server 200 pushes the rough ranking advertisement for users between the ages of 36 and 50 to an application in an electronic device of the user between the ages of 36 and 50.
[0365] The advertisement server 200 generates a profile for a user group between the ages of 51 and 70, and screens multiple advertisements according to the group profile of users between the ages of 51 and 70 to obtain rough ranking advertisements for users between the ages of 51 and 70. The advertisement server 200 pushes the rough ranking advertisements for users between the ages of 51 and 70 to an application in an electronic device of the users between the ages of 51 and 70.
[0366] S706: The application in the electronic device 100 obtains the reordering model, and the application screens the rough-ranked advertisements according to the reordering model to obtain delivered advertisements.
[0367] The number of advertisements delivered can be one or more advertisements.
[0368] For information on how applications are served ads based on rough ranking, see Figure 3 The embodiments are not described in detail here.
[0369] The following is an explanation of how applications display and deliver advertisements.
[0370] The electronic device 100 opens an application, and the current browsing interface of the application has an advertisement slot, which can display one or more advertisements.
[0371] Exemplarily, if the duration of the advertisement in the advertisement slot is 60 seconds, then the advertisement slot may only display one advertisement, and the duration of the advertisement is 60 seconds.
[0372] For example, if the duration of the advertisement in the advertisement slot is 60 seconds, then the advertisement slot can display 6 advertisements, and the display time of each advertisement is 10 seconds.
[0373] It should be noted that the above embodiments are only used to explain the present application, and the present application does not limit the number of advertisements displayed in each advertisement position and the advertisement time.
[0374] The present application is not limited to advertisement recommendation, but can also be applied to content recommendation, which may include song recommendation, e-book recommendation, film and television drama recommendation, food recommendation, shopping recommendation, etc. The present application does not make any limitation here.
[0375] like Fig.10 As shown, Fig.10 A schematic flow chart of another advertisement display method provided in an embodiment of the present application.
[0376] The method includes:
[0377] S1001. The electronic device 100 obtains first personal data.
[0378] The electronic device 100 obtains the first personal data, which is the user's personal information. The personal information may be one or more of the following: gender, age, personality, hobbies, interpersonal relationships, income, address book information, call records, text messages, memo information, residential address, and weather conditions at the residential address.
[0379] In some embodiments, the electronic device 100 may obtain the first personal data of the user every fixed period (eg, one week).
[0380] Specifically, the electronic device 100 obtains the first personal data, please refer to Figure 6A-6D The embodiment and the embodiment described in S701 will not be described in detail in this application.
[0381] S1002. The electronic device 100 constructs a personal knowledge graph based on the first personal data.
[0382] Before the electronic device 100 constructs a personal knowledge graph based on the first personal data, it is necessary to pre-process the first personal data. The electronic device 100 pre-processes the first personal data including the following two steps:
[0383] Step 1: The electronic device converts the first personal data into text information, and performs sentence segmentation, word segmentation and part-of-speech tagging on the text information. The electronic device obtains words belonging to the preset part-of-speech from the text information.
[0384] Step 2: After the electronic device obtains words belonging to the preset part of speech from the text information, the electronic device 100 deduplicates the words in the text information to remove data redundancy.
[0385] Specifically, the electronic device 100 needs to obtain words that appear once in the text information; when two or more identical words appear in the text information, the electronic device 100 retains one of the two identical words that appear in the text information.
[0386] That is, the electronic device 100 obtains the second personal data from the first personal data. The second personal data includes relationship knowledge, event knowledge and entity knowledge.
[0387] Specifically, the electronic device 100 preprocesses the first personal data, please refer to the embodiment described in S701, which is not limited here.
[0388] The electronic device 100 constructs a personal knowledge graph according to the first personal data, specifically including the following steps:
[0389] The electronic device 100 stores the relationship knowledge, event knowledge and entity knowledge in a predetermined structure, which may be a five-tuple structure.
[0390] Specifically, the electronic device 100 stores the relationship knowledge according to the first quintuple structure; the first quintuple structure is "first entity-relationship-second entity-first time point-first time interval"; the relationship represents the relationship between the first entity and the second entity, the first time point is the time when the relationship between the first entity and the second entity is established, and the first time interval is the interval time from the first time point to the current time point.
[0391] The electronic device 100 stores event knowledge according to the second quintuple structure; the second quintuple structure is "event-argument-logical relationship-second time point-second time interval"; the argument is the occurrence action of the event, the logical relationship represents the relationship between the event and the argument, the second time point is the time when the event occurs, and the second time interval is the interval time from the second time point to the current time point.
[0392] The electronic device 100 stores entity knowledge according to the third quintuple structure; the third quintuple structure is "third entity: third time point-first association weight-fourth entity-second association weight-fifth entity"; the third time point is the occurrence time of the third entity, the first association weight is the degree of association between the third entity and the fourth entity, and the second association weight is the degree of association between the fourth entity and the fifth entity.
[0393] The electronic device constructs a user's personal knowledge graph based on relationship knowledge of a predetermined structure, event knowledge of a predetermined structure, and entity knowledge of a predetermined structure.
[0394] Specifically, the electronic device 100 may construct a personal knowledge graph by referring to the embodiment described in S703, and this application will not go into details here.
[0395] The electronic device 100 can also update the personal knowledge graph.
[0396] On the one hand, the electronic device 100 can delete personal data in the personal knowledge graph to update the personal knowledge graph.
[0397] Specifically, the electronic device deletes relational knowledge whose first time interval in the personal knowledge graph is greater than a first threshold; and / or, the electronic device deletes event knowledge whose second time interval in the personal knowledge graph is greater than the first threshold; and / or, the electronic device determines a third time interval from a third time point to the current time point based on a third time point; the electronic device deletes entity knowledge whose third time interval in the personal knowledge graph is greater than the first threshold.
[0398] On the other hand, the electronic device 100 can add new personal data to the personal knowledge graph.
[0399] Specifically, the electronic device 100 obtains the first personal data at regular intervals and adds the first personal data to the personal knowledge graph.
[0400] S1003 : The electronic device 100 obtains parameter information of the first advertisement content from the advertisement server 200 .
[0401] What the electronic device receives from the advertisement server may be parameter information of the first advertisement content. The parameter information may be information such as the type, link address, size, etc. of the first advertisement content. The first advertisement content may include one or more advertisements.
[0402] The first advertisement content is any one or more of the following: pictures, videos, texts, audios, etc. The first advertisement content may include one or more advertisements.
[0403] S1004. The electronic device 100 obtains parameter information of the second advertisement content from the parameter information of the first advertisement content according to the personal knowledge graph.
[0404] The electronic device may obtain the parameter information of the second advertising content from the parameter information of the first advertising content according to the personal knowledge graph in one or more of the following ways. Way 1: The electronic device retains the parameter information of all advertisements in the parameter information of the first advertising content, and the electronic device simply sorts the first advertising content from high to low by the type of advertisement according to the user's predicted preference value, to obtain the parameter information of the second advertising content. Way 2: The electronic device filters the parameter information of a part of advertisements from the parameter information of the first advertising content to obtain the parameter information of the second advertising content. Specifically, the electronic device sorts the first advertising content from high to low by the type of advertisement according to the user's predicted preference value, and only retains the parameter information of advertisements whose user's predicted preference value is higher than the first threshold, to obtain the parameter information of the second advertising content.
[0405] The second advertisement content is any one or more of the following: pictures, videos, texts, audios, etc. The second advertisement content may include one or more advertisements.
[0406] Specifically, the electronic device 100 trains a re-ranking model according to the personal knowledge graph to obtain a first model, and the electronic device obtains parameter information of the second advertisement content from parameter information of the first advertisement content through the first model.
[0407] Specifically, the electronic device 100 trains a re-ranking model according to the personal knowledge graph, which may include the following contents:
[0408] The electronic device obtains the user's historical behavior and the historical advertising information displayed by the electronic device. The electronic device uses the historical advertising information and the personal knowledge graph as inputs of the re-ranking model, and the re-ranking model outputs a first result. The electronic device compares the first result with the user's historical behavior and modifies the parameters of the re-ranking model until the first result output by the re-ranking model is within a preset range, thereby obtaining a first model.
[0409] S1005. The electronic device 100 obtains the second advertisement content according to the parameter information of the second advertisement content.
[0410] The electronic device 100 acquires the second advertisement content according to the parameter information (eg, link address) of the second advertisement content.
[0411] S1006: The electronic device 100 displays the second advertisement content on the display screen.
[0412] The electronic device 100 displays the second advertisement content on the display screen in the following manner:
[0413] Method 1: The electronic device plays one or more advertisements in the second advertisement content according to the predicted values of user preference in the second advertisement content from high to low.
[0414] Method 2: The electronic device displays the advertisement with the highest predicted user preference value in the second advertisement content.
[0415] Method three: the electronic device plays one or more advertisements in the second advertisement content according to the predicted user preference values in the second advertisement content from high to low, and blocks one or more advertisements in the second advertisement content that the electronic device has played in the first time period.
[0416] After the electronic device 100 displays the second advertisement content, the electronic device 100 may obtain viewing data of the user on the second advertisement content; the viewing data includes the advertisement types of one or more advertisements in the second advertisement content that the user has viewed and the advertisement types of one or more advertisements in the second advertisement content that the user has closed;
[0417] The electronic device updates the first model according to the viewing data. In this way, the electronic device updates the first model according to the user's viewing data of advertisements, and the first model will recommend advertisements of the type that the user has viewed the most times to the user the next time it recommends advertisements to the user, which is more in line with the user's needs.
[0418] In the following embodiments of the present application, after the electronic device 100 constructs a personal knowledge graph based on the user's personal data, the application in the electronic device 100 can obtain the personal knowledge graph with the user's consent, and the application can make personalized recommendations for the user based on the personal knowledge graph. In this way, on the one hand, the application can only obtain the personal knowledge graph with the user's consent, which fully respects the user's personal privacy; on the other hand, the application makes personalized recommendations for the user based on the personal knowledge graph, so that the content recommended by the application to the user is more in line with the user's behavioral characteristics.
[0419] First, a currently existing content display method is described.
[0420] After the user has used the electronic device 100 for a period of time, the user downloads a new application (for example, the first application) from the application store. On the one hand, the first application will prompt the user to register personal information and log in. On the other hand, the first application can prompt the user to select content that he or she is interested in. The first application will recommend related content that the user is interested in to the user for viewing.
[0421] Exemplarily, the above application scenario is described below with reference to the accompanying drawings.
[0422] Fig.11A An exemplary user interface 700 for an application menu on the electronic device 100 is exemplarily shown.
[0423] The user interface 700 may include: a status bar 400, a tray 710 with common application icons, a navigation bar 720, and other application icons.
[0424] The tray 710 with common application icons may display: a phone icon 7012 , a contact icon 7013 , a text message icon 7014 , and a camera icon 7015 .
[0425] The navigation bar 720 may include system navigation keys such as a return button 7016, a home screen button 7017, and an outgoing task history button 7018. When it is detected that the user clicks the return button 7016, the electronic device 100 may display the previous page of the current page. When it is detected that the user clicks the home screen button 7017, the electronic device 100 may display the home screen. When it is detected that the user clicks the outgoing task history button 7018, the electronic device 100 may display the task that the user has recently opened. The naming of each navigation key may also be other, and this application does not limit this. Not limited to virtual buttons, each navigation key in the navigation bar 720 may also be implemented as a physical button.
[0426] Other application icons may include: clock icon 7001, calendar icon 7002, gallery icon 7003, memo icon 7004, file management icon 7005, email icon 7006, music icon 7007, calculator icon 7008, Huawei video icon 7009, sports and health icon 7010, and first application icon 7011.
[0427] The first application is an application that the user has downloaded from an application store but has not used yet. The first application may be a shopping application, an e-book application, a video application, etc. This application scenario is described by assuming that the first application is a shopping application.
[0428] like Fig.11A As shown, the first application icon 7011 can receive a single click operation from the user, and in response to the single click operation from the user, the electronic device 100 displays the following Fig. 11B An exemplary user interface 730 is shown.
[0429] The user interface 730 includes the status bar 400 and a gender selection interface 740 .
[0430] Among them, the gender selection interface 740 includes controls 7101 and 7102.
[0431] Control 7101 may receive a single-click operation from the user, and in response to the single-click operation from the user, the first application may recommend items of interest to the user for viewing.
[0432] Control 7102 may receive a single-click operation from the user, and in response to the single-click operation from the user, the first application may recommend items of interest to the user for viewing.
[0433] For example, Fig. 11B As shown, the control 7102 receives a single click operation from the user, and in response to the single click operation from the user, the electronic device 100 displays the following Fig. 11C An exemplary user interface 750 is shown.
[0434] The user interface 750 includes a status bar 400 and a personalized recommendation selection interface 760 .
[0435] The personalized recommendation selection interface 760 includes a plurality of recommendation topic controls and a next step control 770 .
[0436] The multiple recommended theme controls may include a dressing control 7501, a sports control 7502, a beauty control 7503, a travel control 7504, a food control 7505, and a game control 7506. The multiple recommended theme controls may also include other recommended controls, which are not limited here.
[0437] Any one of the multiple recommended subject controls may receive a single click from the user, and in response to the single click operation of the user, the first application program will recommend a subject of interest to the user for viewing.
[0438] For example, if the user is interested in beauty, dressing and food, then the dressing control 7501, the beauty control 7503, and the food control 7505 receive the user's single click selection, and the next control 770 receives and responds to the user's single click operation, and the electronic device 100 displays an exemplary user interface of the first application, and the content displayed in the user interface of the first application is the beauty, dressing and food content selected by the user. In this way, the first application can recommend relevant content to the user according to the user's preferences.
[0439] However, it can be seen from the above embodiment that when a user opens an unused application, the user needs to first select a gender, and then select the subject content that the user is interested in. After the user has made the selection, the user needs to click Next to enter the application. From the above operation, it can be seen that the recommendation method of the application is complicated to operate and the user experience is not good.
[0440] The first application can recommend content that the user is interested in based on the personal knowledge graph provided in the embodiment of the present application. On the one hand, the user does not need to perform a series of operations to select the content that he is interested in. On the other hand, the first application can recommend content that the user is interested in based on the personal knowledge graph more accurately.
[0441] When the user opens the first application, the first application will solicit the user's request to obtain information such as the personal knowledge graph. In this way, when the user authorizes the first application, the first application will obtain data such as the personal knowledge graph, thereby fully respecting the user's personal privacy.
[0442] like Fig.12 As shown, Fig.12 1 is another schematic diagram of a system architecture of an embodiment of the present application. The system includes an electronic device 100 and an application server 300.
[0443] The application server 300 sends a first content list to a first application in the electronic device 100 . The first content list may include a plurality of contents. The first application receives the first content list sent by the application server 300 .
[0444] After the first application obtains the user's request, the electronic device 100 sends the personal knowledge graph to the first application, and the first application receives the personal knowledge graph sent by the electronic device 100. After the first application obtains the first content list, the first application filters multiple contents in the first content list according to the personal knowledge graph to obtain a second content list, and the first application recommends the content in the second content list to the user for viewing.
[0445] For example, Fig. 12A As shown, Fig. 12A Exemplary user interface 780 for obtaining a user request for a first application.
[0446] The user interface 780 includes a status bar 400 and a prompt box 790 .
[0447] The prompt box 790 displays a prompt message, a disagreement control 7801, and an agreement control 7802. The prompt message is used to prompt the user whether to agree to the first application to obtain personal knowledge graph and other information. The prompt message includes "In order to better provide browsing recommendations, posting information, purchasing goods and other related services, we will collect necessary user information (which may involve equipment, personal knowledge graph and other information) according to the specific functional needs of your use of the service."
[0448] The disagree control 7801 can accept a single-click operation of the user. In response to the single-click operation of the user, if the user disagrees with the first application obtaining data such as the personal knowledge graph, the first application will not recommend personalized content to the user.
[0449] The consent control 7802 can accept a single-click operation by the user. In response to the single-click operation by the user, the user agrees that the first application obtains data such as the personal knowledge graph. Then, the first application will recommend content similar to the user's personal behavior characteristics based on the personal knowledge graph and other data. For example, similar content may be recommended to the user based on the user's preferences, consumption level, etc.
[0450] In this way, the first application recommends content that is similar to the user's personal behavioral characteristics based on personal knowledge graphs and other data, without the user having to manually select the content they are interested in. On the one hand, the user operation is simple, and on the other hand, the first application recommends content that the user is interested in based on personal knowledge graphs, which will be more accurate and more in line with the user's needs.
[0451] As used in the above embodiments, the term "when..." may be interpreted to mean "if..." or "after..." or "in response to determining..." or "in response to detecting...", depending on the context. Similarly, the phrases "upon determining..." or "if (the stated condition or event) is detected" may be interpreted to mean "if determining..." or "in response to determining..." or "upon detecting (the stated condition or event)" or "in response to detecting (the stated condition or event)", depending on the context.
[0452] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that contains one or more available media integration. The available medium can be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk), etc.
[0453] Those skilled in the art can understand that to implement all or part of the processes in the above-mentioned embodiments, the processes can be completed by computer programs to instruct related hardware, and the programs can be stored in computer-readable storage media. When the programs are executed, they can include the processes of the above-mentioned method embodiments. The aforementioned storage media include: ROM or random access memory RAM, magnetic disk or optical disk and other media that can store program codes.< / canvas> < / video> < / videoview> < / imgview> < / textview>
Claims
1. An advertisement display method, characterized in that: The method comprises: The electronic device obtains first personal data of the user; the first personal data is the personal information of the user; The electronic device acquires second personal data from the first personal data; the second personal data includes relationship knowledge, event knowledge, entity knowledge, and basic characteristic data of the user; The electronic device stores the relationship knowledge according to a first five-tuple structure; the first five-tuple structure is "first entity-relationship-second entity-first time point-first time interval"; the relationship represents the relationship between the first entity and the second entity, the first time point is the time when the first entity and the second entity establish the relationship, and the first time interval is the interval time from the first time point to the current time point; The electronic device stores the event knowledge according to a second five-tuple structure; the second five-tuple structure is "event-argument-logical relationship-second time point-second time interval"; the argument is the occurrence action of the event, the logical relationship represents the relationship between the event and the argument, the second time point is the time when the event occurs, and the second time interval is the interval time from the second time point to the current time point; The electronic device stores the entity knowledge according to a third five-tuple structure; the third five-tuple structure is "third entity: third time point-first association weight-fourth entity-second association weight-fifth entity"; the third time point is the occurrence time of the third entity, the first association weight is the association degree between the third entity and the fourth entity, and the second association weight is the association degree between the fourth entity and the fifth entity; The electronic device constructs a personal knowledge graph of the user according to the relationship knowledge stored in the first quintuple structure, the event knowledge stored in the second quintuple structure, and the entity knowledge stored in the third quintuple structure; The electronic device obtains parameter information of the first advertisement content from the advertisement server; the parameter information includes the type of the first advertisement content and the link address of the first advertisement content; the first advertisement content is obtained by the advertisement server from a plurality of advertisements according to group data; the first advertisement content includes a plurality of advertisements; The electronic device trains a re-ranking model according to the personal knowledge graph and the basic characteristic data of the user to obtain a trained first model, and acquires parameter information of the second advertisement content from parameter information of the first advertisement content based on the first model; The electronic device acquires the second advertisement content according to the parameter information of the second advertisement content; the second advertisement content includes one or more advertisements; The electronic device displays the second advertisement content on a display screen.
2. The method according to claim 1, characterized in that The basic characteristic data of the user includes: gender of the user, age of the user, device identification of the device used by the user, and device model of the device used by the user.
3. The method according to claim 1, characterized in that The electronic device obtains the first personal data of the user at regular intervals.
4. The method according to claim 1, characterized in that: The first advertisement content is any one or more of the following: picture, video, text, audio.
5. The method according to claim 1, characterized in that The method comprises: The electronic device deletes the relationship knowledge in the personal knowledge graph whose first time interval is greater than a first threshold; and / or, The electronic device deletes the event knowledge whose second time interval is greater than the first threshold in the personal knowledge graph; and / or, The electronic device determines, according to the third time point, a third time interval from the third time point to the current time point; The electronic device deletes the entity knowledge in the personal knowledge graph whose third time interval is greater than the first threshold.
6. The method according to claim 1, characterized in that The electronic device trains a re-ranking model according to the personal knowledge graph and the basic feature data of the user to obtain a trained first model, specifically including: The electronic device acquires the user's historical behavior and the historical advertisement information displayed by the electronic device; The electronic device uses the historical advertising information, the personal knowledge graph, and the user basic feature data as inputs to the re-ranking model, and the re-ranking model outputs a first result; The electronic device compares the first result with the user's historical behavior and modifies the parameters of the reordering model until the first result output by the reordering model is within a preset range, thereby obtaining the first model.
7. The method according to claim 6, characterized in that The electronic device acquires the parameter information of the second advertisement content from the parameter information of the first advertisement content according to the first model, specifically including: The electronic device sorts the types of the first advertisement content from high to low according to the user's predicted preference values according to the first model, and obtains parameter information of the second advertisement content; or, The electronic device sorts the types of the first advertising content from high to low according to the user's predicted preference values based on the first model, obtains the types of advertisements whose user's predicted preference values are higher than a first threshold, and obtains parameter information of the second advertising content.
8. The method according to claim 1, characterized in that Before the electronic device acquires the second personal data from the first personal data, the method further includes: The electronic device converts the first personal data into text information; The electronic device performs sentence segmentation, word segmentation and part-of-speech tagging on the text information; The electronic device acquires the second personal data from the first personal data, specifically including: The electronic device obtains words belonging to a preset part of speech in the text information.
9. The method according to claim 8, characterized in that After the electronic device obtains a word belonging to a preset part of speech in the text information, the method further includes: The electronic device obtains a word that appears once in the text information; If two or more identical words appear in the text information, the electronic device obtains one of the two or more identical words in the text information to obtain the second personal data.
10. The method according to claim 1, characterized in that The user's personal information includes one or more of the following: gender, age, personality, hobbies, interpersonal relationships, income, address book information, call records, text messages, memo information, residential address, and weather conditions at the residential address.
11. The method according to claim 1, characterized in that: The electronic device displays the second advertisement content in the advertisement display area of the display screen, specifically comprising: The electronic device plays one or more advertisements in the second advertisement content according to the predicted value of the user's preference in the second advertisement content from high to low; or, The electronic device displays the advertisement with the highest predicted value of user's preference among the second advertisement contents; or, The electronic device plays one or more advertisements in the second advertising content according to the user's predicted preference value in the second advertising content from high to low, and blocks one or more advertisements in the second advertising content that the electronic device has played within a first time period.
12. The method according to any one of claims 1 to 11, characterized in that: After the electronic device displays the second advertisement content in the advertisement display area of the display screen, the method further includes: The electronic device obtains viewing data of the second advertising content by the user; the viewing data includes the advertising types of one or more advertisements in the second advertising content viewed by the user and the advertising types of one or more advertisements in the second advertising content closed by the user; The electronic device updates the first model according to the viewing data.
13. An electronic device, characterized in that: The electronic device includes one or more processors, one or more memories, and a display screen; the one or more memories and the display screen are coupled to the one or more processors, the one or more memories are used to store computer program codes, the computer program codes include computer instructions, and one or more processors call the computer instructions so that the device executes the method described in any one of claims 1 to 12.
14. A computer-readable storage medium comprising instructions, characterized in that: When the instructions are executed on an electronic device, the electronic device is caused to execute the method according to any one of claims 1 to 12.
Citation Information
Patent Citations
Personalized recommendation method, terminal device and system
CN110059249A
Knowledge graph construction method and system
CN112287125A
Cited By
Advertisement display method and electronic device
WO2022057764A1