A user portrait circle selection method and device

By converting tag data into tag bitmap format, the problems of wasted storage space and low query efficiency when storing user tags in traditional wide tables are solved, enabling efficient user profile selection and dynamic expansion.

CN117271841BActive Publication Date: 2026-05-01GUANGZHOU HUANWANG TECH
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
GUANGZHOU HUANWANG TECH
Filing Date
2023-09-22
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

Traditional wide tables for storing user tags suffer from problems such as wasted storage space, low query efficiency, and difficulty in expansion.

Method used

The tag data is converted into a tag bitmap format, and logical operations are performed on the tag bitmap to select user profiles. It supports dynamic expansion without modifying the data table structure.

Benefits of technology

It saves storage space, improves query efficiency, supports dynamic expansion, has high computing efficiency, and is easy to maintain.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117271841B_ABST
    Figure CN117271841B_ABST
Patent Text Reader

Abstract

The present application belongs to the technical field of data processing, and particularly relates to a user portrait circle selection method. The user portrait circle selection method converts multiple label data of each user into a bitmap format and stores the bitmap in different label bitmaps. Since only the state information of whether each user has a label is stored in the label bitmap, the storage space is saved. When the label bitmap is used to circle select the user portrait, the operation result of the label corresponding to the user portrait can be quickly obtained through the logical operation of the data bits in the label bitmap, and the operation efficiency is high. Moreover, the label bitmap supports dynamic expansion, and the data table structure does not need to be modified during expansion, and is easy to maintain.
Need to check novelty before this filing date? Find Prior Art

Description

A method and apparatus for user profile selection Technical Field

[0001] This invention belongs to the field of data processing technology, specifically relating to a user profile selection method and apparatus. Background Technology

[0002] User personas, also known as user profiles, are an effective tool for identifying target users and aligning user needs with design direction. In the era of big data, user information permeates the internet. Abstracting each user's specific information into tags allows for the creation of a concrete user profile, enabling targeted services. In data processing, user personas typically represent the distribution of multiple users across certain user characteristic identifiers, i.e., tags. The function of statistically analyzing distribution is achieved by selecting tags.

[0003] The traditional approach to implementing tag selection functionality is to use a wide table to store the tag selection status. This involves defining a field in the database for each tag, using a boolean value of 0 or 1 to indicate whether the tag is selected. While this approach is easy to understand and implement, it has the following problems:

[0004] 1. Waste of space: Each tag requires a field to store its selection state, which wastes a lot of storage space when there are many tags. Furthermore, tags whose selection state doesn't change frequently also occupy a significant amount of storage space, making the data table bloated.

[0005] 2. Low query efficiency: When querying whether a certain tag is selected, it is necessary to traverse the entire data table to find the field corresponding to the tag, which is inefficient.

[0006] 3. Difficult to expand: When a new tag needs to be added, a new field needs to be added to the database, and the data table structure needs to be modified, which increases the system maintenance cost. Summary of the Invention

[0007] In view of this, the purpose of the present invention is to provide a user profile selection method and apparatus, which helps to solve the problems of wasted storage space, low query efficiency and difficulty in expansion when using a wide table to implement the tag selection function.

[0008] According to a first aspect of the present invention, a user profile selection method is provided, comprising:

[0009] Retrieve multiple tag data entries from the tag table, which stores multiple tag data entries corresponding to all users under each device. Each tag data entry includes one or more tags for a user.

[0010] According to the preset tag bitmap conversion rules, the tag data is converted into a tag bitmap to obtain a tag detail table that stores the tag bitmap. Each bit of data in the tag bitmap is used to indicate whether a user has the tag.

[0011] Based on the target tag currently selected by the user, a target audience packet bitmap is selected from the tag bitmap stored in the tag detail table to obtain an audience packet table storing the target audience packet bitmap. The audience corresponding to the target audience packet bitmap is used as the user profile corresponding to the target tag.

[0012] Preferably, the tag data includes user tag data and device tag data. The step of converting the tag data into a tag bitmap according to a preset tag bitmap conversion rule to obtain a tag detail table storing the tag bitmap includes:

[0013] The user tag data is converted into a user tag bitmap using a preset user tag bitmap conversion rule, and the user tags and the user tag bitmap are stored in a user tag detail table to obtain the user tag detail table;

[0014] The device tag data is converted into a device tag bitmap using a preset device tag bitmap conversion rule, and the device tag and the device tag bitmap are stored in the user tag detail table to obtain the device tag detail table.

[0015] Preferably, the tag data further includes a user ID, and the step of converting the user tag data into a user tag bitmap using a preset user tag bitmap conversion rule includes:

[0016] The position of the user tag data in each user tag bitmap is determined based on the user ID;

[0017] Set the value at each position in the user tag bitmap to 1 to obtain the user tag bitmap.

[0018] Preferably, the tag data further includes a device number, and the step of converting the device tag data into a device tag bitmap using a preset device tag bitmap conversion rule includes:

[0019] The location of the device tag data in each device tag bitmap is determined based on the device number;

[0020] Set the value at each position in the device label bitmap to 1 to obtain the device label bitmap.

[0021] Preferably, the target tags include one or more, and the step of selecting a target audience packet bitmap from the tag bitmap stored in the tag detail table based on the target tags currently selected by the user, to obtain an audience packet table storing the target audience packet bitmap, includes:

[0022] Select one or more target tag bitmaps with the same tag value as the target tag from the tag bitmaps stored in the tag detail table;

[0023] Perform logical operations on one or more of the target tag bitmaps to obtain a target audience bitmap;

[0024] The target label and the target audience bitmap are stored in the audience bitmap table to obtain the audience bitmap table.

[0025] Preferably, the step of performing logical operations on one or more of the target tag bitmaps to obtain a target audience bitmap includes:

[0026] Obtain the tag relationships of the target tags selected by the user;

[0027] The target audience bitmap is obtained by performing logical operations on one or more target tag bitmaps according to the logical operation method corresponding to the tag relationship.

[0028] Preferably, the tag data further includes a device tag, and the method further includes:

[0029] Retrieve the device ID of the current user from the ID import table;

[0030] Based on the device ID, filter out target tag data from the tag data whose device tag is the same as the device ID;

[0031] According to the preset tag bitmap conversion rules, the target tag data is converted into a target audience package bitmap, and an audience package table storing the target audience package bitmap is obtained. The audience corresponding to the target audience package bitmap is used as the user profile of the target tag.

[0032] Preferably, the method further includes:

[0033] Calculate the proportion of each tag value in the selected user profile.

[0034] Preferably, the audience segmentation table includes a user audience segmentation table, the user audience segmentation table includes audience segmentation IDs, and the method further includes:

[0035] Using the audience group ID, obtain the tags corresponding to the tag bitmap of each user in the user audience group table;

[0036] Obtain the device ID corresponding to the tag from the tag table;

[0037] Write the device ID into the device export table.

[0038] According to a second aspect of the present invention, a user profile selection device is provided, comprising:

[0039] The tag data acquisition module is used to acquire multiple tag data entries from a tag table. The tag table stores multiple tag data entries corresponding to all users under each device, and each tag data entry includes one or more tags for a user.

[0040] The tag bitmap conversion module is used to convert the tag data into a tag bitmap according to a preset tag bitmap conversion rule, and obtain a tag detail table storing the tag bitmap. Each bit of data in the tag bitmap is used to indicate whether a user has the tag.

[0041] The user profile selection module is used to select a target audience bitmap from the tag bitmap stored in the tag detail table based on the target tag currently selected by the user, and obtain an audience package table storing the target audience bitmap. The audience corresponding to the target audience bitmap is used as the user profile corresponding to the target tag.

[0042] The technical solutions provided by the embodiments of the present invention may include the following beneficial effects:

[0043] This application provides a user profile selection method that converts multiple tag data for each user into bitmap format and stores them in different tag bitmaps. Since the tag bitmaps only store the status information of whether each user has tags, storage space is saved. When using tag bitmaps to select user profiles, the logical operations of the data bits in the tag bitmaps can quickly obtain the calculation results of the corresponding tags for the user profile, resulting in high computational efficiency. Moreover, the tag bitmaps support dynamic expansion, and expansion does not require modification of the data table structure, making them easy to maintain.

[0044] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description

[0045] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.

[0046] Figure 1 is a flowchart illustrating a user profile selection method according to an exemplary embodiment;

[0047] Figure 2 is a flowchart illustrating a user profile selection method according to another exemplary embodiment;

[0048] Figure 3 is a view of the label table used in a user profile selection method according to another exemplary embodiment;

[0049] Figure 4 is a view of the user tag details table used in the user profile selection method according to another exemplary embodiment;

[0050] Figure 5 is a view of the device tag details table used in the user profiling selection method according to another exemplary embodiment;

[0051] Figure 6 is a view of the user group package table used in a user profiling selection method according to another exemplary embodiment;

[0052] Figure 7 is a view of the device crowd package table used in a user profiling selection method according to another exemplary embodiment;

[0053] Figure 8 is a verification table view used in a user profile selection method according to another exemplary embodiment;

[0054] Figure 9 is a schematic block diagram of a user profile selection device according to an exemplary embodiment. Detailed Implementation

[0055] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatuses and user profiling methods consistent with some aspects of the invention as detailed in the appended claims.

[0056] This application provides a user profile selection method. Please refer to Figure 1. Figure 1 is a flowchart illustrating a user profile selection method according to an exemplary embodiment. As shown in Figure 1, the user profile selection method includes the following steps:

[0057] Step S11: Obtain multiple tag data entries from the tag table. The tag table stores multiple tag data entries corresponding to all users under each device. Each tag data entry includes one or more tags for a user.

[0058] Step S12: According to the preset tag bitmap conversion rules, the tag data is converted into a tag bitmap to obtain a tag detail table storing the tag bitmap. Each bit of data in the tag bitmap is used to indicate whether a user has the tag.

[0059] Step S13: Based on the target tag selected by the current user, select the target audience package bitmap from the tag bitmap stored in the tag detail table to obtain the audience package table storing the target audience package bitmap. The audience corresponding to the target audience package bitmap is used as the user profile corresponding to the target tag.

[0060] It should be noted that, in practice, the user profile selection method provided in this embodiment needs to be loaded into the controller of the electronic device to run.

[0061] The electronic devices include, but are not limited to, desktop computers, laptops, etc.

[0062] It is understood that the technical solution provided in this embodiment saves storage space by converting multiple tag data of each user into bitmap format and storing them in different tag bitmaps. Since the tag bitmap only stores the status information of whether each user has tags, the storage space is saved. When using the tag bitmap to select user profiles, the calculation results of the corresponding tags of the user profile can be quickly obtained through the logical operation of the data bits in the tag bitmap, which has high calculation efficiency. Moreover, the tag bitmap supports dynamic expansion, and the data table structure does not need to be modified when expanding, making it easy to maintain.

[0063] In practice, the “tag data” mentioned in step S11 is used to represent the tag information owned by each user under each device, and the tag data is stored in the tag table.

[0064] In practice, the "tag table" mentioned in step S11 is used to store tag data. The tag table stores multiple tag data entries. Each tag data entry includes one or more tags for a user, device ID, user number, device number, etc. According to the attribute category (user attribute and family attribute) to which the tag belongs, the tag data can be divided into user tag data and family tag data. In order to generate a tag bitmap later, the user profile corresponding to a specific tag is selected.

[0065] In practice, the table structure of the tag table is shown in Table 1 below.

[0066]

[0067]

[0068] Table 1

[0069] As shown in Table 1, the tag fields for user attributes in the tag table include: gender, age, education level, income level, and occupation; the tag fields for family attributes include: family characteristics, region, and community. It should be noted that the device ID and user ID are of type UInt32, which facilitates subsequent conversion to a bitmap structure.

[0070] In practice, the "tag bitmap" mentioned in step S12 is used to store tag data in bitmap format. A bitmap, also known as a bitmap image, is a commonly used data structure. It is a special array that can only store 0 or 1, and can be used to represent binary states such as binary codes, character sets, colors, etc. This application uses a preset tag bitmap conversion rule to convert the tag data into a tag bitmap. Each tag corresponds to one tag bitmap, and all tag bitmaps include the same number of data bits, equal to the total number of users. Each data bit in the tag bitmap indicates whether a user has that tag. Each data bit takes a value of 0 or 1. If the value is 1, it means that the user corresponding to that data bit has the tag; if the value is 0, it means that the user corresponding to that data bit does not have the tag. It should be noted that in the default tag bitmap, the initial value of each data bit is 0.

[0071] In practice, the "label detail table" mentioned in step S12 is used to store the bitmap format data corresponding to the converted label data. It can be understood that each label corresponds to a label bitmap, and the label and its corresponding bitmap are stored in the label detail table.

[0072] In practice, since the tag data includes user tag data and family tag data, the bitmap conversion rules for these two types of tag data are different, so the converted tag bitmaps are also different. After conversion, user tag data corresponds to user tag bitmap, and after conversion, family tag data corresponds to device tag bitmap.

[0073] In practice, the user tag bitmap is stored in the user tag detail table, and the table structure of the user tag detail table is shown in Table 2 below.

[0074] Fields | Field Type | Field Description | label_type | LowCardinality(String) | First-level label, label type | label_value | LowCardinality(String) | Second-level label, label value | bitmap_pno | AggregateFunction(groupBitmap, UInt32) | User label bitmap detail data surface

[0075] Table 2

[0076] As shown in Table 2, the fields in the User Tag Details table include: Tag Type, Tag Value, and User Tag Bitmap Details Data. It should be noted that the User Tag Bitmap Details Data is user tag data stored in bitmap format.

[0077] In practice, the device tag bitmap is stored in the device tag detail table, and the table structure of the device tag detail table is shown in Table 3 below.

[0078] Fields | Field Type | Field Description | label_type | LowCardinality(String) | First-level label, label type | label_value | LowCardinality(String) | Second-level label, label value | bitmap_dno | AggregateFunction(groupBitmap, UInt32) | Device label bitmap detail data surface

[0079] Table 3

[0080] As shown in Table 3, the fields in the Device Tag Details table include: Tag Type, Tag Value, and Device Tag Bitmap Details Data. It should be noted that the Device Tag Bitmap Details Data is household tag data stored in bitmap format.

[0081] In practice, step S12, "converting the tag data into a tag bitmap according to a preset tag bitmap conversion rule to obtain a tag detail table storing the tag bitmap," includes:

[0082] The user tag data is converted into a user tag bitmap using a preset user tag bitmap conversion rule, and the user tags and the user tag bitmap are stored in the user tag detail table to obtain the user tag detail table.

[0083] In practice, the user tag data is converted into a user tag bitmap using a preset user tag bitmap conversion rule. The specific steps are as follows:

[0084] The position of the user tag data in each user tag bitmap is determined based on the user ID;

[0085] Set the value at each position in the user tag bitmap to 1 to obtain the user tag bitmap.

[0086] It is understandable that by using a preset user tag bitmap conversion rule, the user tag data is converted into a user tag bitmap, and the corresponding information is stored in the user tag detail table, thus obtaining a range for selecting user profiles.

[0087] In practice, step S12, "converting the tag data into a tag bitmap according to a preset tag bitmap conversion rule to obtain a tag detail table storing the tag bitmap," further includes:

[0088] The device tag data is converted into a device tag bitmap using a preset device tag bitmap conversion rule, and the device tag and the device tag bitmap are stored in the user tag detail table to obtain the device tag detail table.

[0089] In practice, the device tag data is converted into a device tag bitmap using a preset device tag bitmap conversion rule. The specific steps are as follows:

[0090] The location of the device tag data in each device tag bitmap is determined based on the device number;

[0091] Set the value at each position in the device label bitmap to 1 to obtain the device label bitmap.

[0092] It is understandable that by using preset device tag bitmap conversion rules, the device tag data is converted into a device tag bitmap, and the corresponding information is stored in the device tag detail table, thus obtaining another range for selecting user profiles.

[0093] In practice, the "target label" mentioned in step S13 refers to the label selected by the user that meets the user profile selection requirements. This target label is a condition for achieving user profile selection. The target label may include one or more labels, and the user selects the target label through the interface on the display terminal.

[0094] In practice, the "target audience location map" mentioned in step S13 is the corresponding audience location map selected based on the target tag selected by the user. The audience corresponding to this target audience location map serves as the user profile corresponding to the target tag.

[0095] It's important to note that each user segment matching the user profile corresponds to a target audience bitmap. All audience bitmaps contain the same number of data bits, equal to the total number of users. Each data bit in the target audience bitmap indicates whether a user belongs to that audience, that is, whether they possess the tag corresponding to that audience. Each data bit can take the values ​​0 and 1. A value of 1 indicates that the user corresponding to that data bit belongs to that audience; a value of 0 indicates that the user corresponding to that data bit does not belong to that audience.

[0096] In practice, the "audience package table" mentioned in step S13 is used to store target audience package bitmaps. It can be understood that the audience package table stores multiple target audience package bitmaps, each target audience package bitmap corresponding to one audience group. The audience group corresponding to the target audience package bitmaps stored in the audience package table is the final selected user profile.

[0097] In practice, step S13, "based on the target tag selected by the current user, selecting the target audience packet bitmap from the tag bitmap stored in the tag detail table, and obtaining the audience packet table storing the target audience packet bitmap," includes:

[0098] Select one or more target tag bitmaps with the same tag value as the target tag from the tag bitmaps stored in the tag detail table; perform logical operations on one or more target tag bitmaps to obtain the target audience bitmap;

[0099] The target label and the target audience bitmap are stored in the audience bitmap table to obtain the audience bitmap table.

[0100] In practice, logical operations are performed on one or more target tag bitmaps to obtain a target audience bitmap. The specific steps are as follows:

[0101] Obtain the tag relationship of the target tags selected by the user; perform logical operations on the one or more target tag bitmaps according to the logical operation method corresponding to the tag relationship to obtain the target audience bitmap.

[0102] It should be noted that after the user selects a target tag, the tag relationship between the target tags will be automatically generated. The logical operation methods include AND, OR, NOT, etc., but are not limited to these. The logical operation method is determined by the tag relationship between the target tags selected by the user.

[0103] It is understandable that, since user tag data is converted into a user tag bitmap and family tag data is converted into a device tag bitmap, selecting the target audience bitmap from the tag bitmap based on the target tag selected by the current user is equivalent to: selecting a user audience bitmap from the user tag bitmap based on the target tag selected by the current user; and selecting a device audience bitmap from the device tag bitmap based on the target tag selected by the current user. The final selected target audience bitmaps are the user audience bitmap and the device audience bitmap. The user audience bitmap corresponds to the user audience selected from the perspective of user attributes, and the device audience bitmap corresponds to the device audience selected from the perspective of family attributes.

[0104] In practice, the user audience bitmap is stored in the user audience table, and the table structure of the user audience table is shown in Table 4 below.

[0105] Fields | Field Type | Field Description taId | String | Audience Package ID bitmap_pno | AggregateFunction(groupBitmap, UInt32) | User Tag Bitmap Detail Data surface

[0106] Table 4

[0107] As shown in Table 4, the fields in the user audience package table include: audience package ID and user tag bitmap details.

[0108] It should be noted that the user tag bitmap detail data is stored in bitmap format. The audience package ID is a unique identifier for the user audience package bitmap; this ID is an auto-incrementing primary key, meaning it can be incremented when multiple audience packages are selected. This allows the ID to overwrite existing data when new audience packages are generated later, saving storage space.

[0109] In practice, the device crowd packet bitmap is stored in the device crowd packet table, and the table structure of the device crowd packet table is shown in Table 5 below.

[0110] Fields | Field Type | Field Description | taId | String | Audience Package ID | bitmap_dno | AggregateFunction(groupBitmap,UInt32) | Device Tag Bitmap Detail Data surface

[0111] Table 5

[0112] As shown in Table 5, the fields in the device audience package table include: audience package ID and device tag bitmap details.

[0113] It should be noted that the device tag bitmap detail data is household tag data stored in bitmap format. The audience package ID is a unique identifier for the device's audience package bitmap; this ID is an auto-incrementing primary key, meaning it can be incremented when multiple audience packages are selected. This allows the ID to overwrite existing data when new audience packages are generated later, saving storage space.

[0114] It is understood that the technical solution provided in this embodiment saves storage space by converting multiple tag data of each user into bitmap format and storing them in different tag bitmaps. Since the tag bitmap only stores the status information of whether each user has tags, the storage space is saved. When using the tag bitmap to select user profiles, the calculation results of the corresponding tags of the user profile can be quickly obtained through the logical operation of the data bits in the tag bitmap, which has high calculation efficiency. Moreover, the tag bitmap supports dynamic expansion, and the data table structure does not need to be modified when expanding, making it easy to maintain.

[0115] This application also provides another user profile selection method. Please refer to Figure 2. Figure 2 is a flowchart illustrating a user profile selection method according to another exemplary embodiment. As shown in Figure 2, the user profile selection method includes the following steps:

[0116] Step S21: Obtain multiple tag data entries from the tag table. The tag table stores multiple tag data entries corresponding to all users under each device. Each tag data entry includes one or more tags for a user and a device tag.

[0117] Step S22: Obtain the device ID of the current user from the ID import table;

[0118] Step S23: Based on the device ID, filter out target tag data from the tag data whose device tag is the same as the device ID;

[0119] Step S24: Convert the target tag data into a target audience packet bitmap according to the preset tag bitmap conversion rules, and obtain an audience packet table that stores the target audience packet bitmap. The audience corresponding to the target audience packet bitmap is used as the user profile of the target tag.

[0120] In practice, the ID import table stores the device IDs provided by the customer. The table structure of the ID import table is shown in Table 6 below.

[0121] Fields | Field Type | Field Description | device_id | String | Device ID surface

[0122] Table 6

[0123] As shown in Table 6, the fields imported into the ID table include: Device ID.

[0124] It should be noted that the structures of the tables used in this embodiment, except for the ID import table, are the same as the corresponding table structures in the previous embodiment. For details of their table structures, please refer to the corresponding content in the previous embodiment.

[0125] It is understood that the technical solution provided in this embodiment filters out target tag data with the same device tag and device ID from the tag data, converts the target tag data into bitmap format and stores it in different target audience bitmaps. Since the target audience bitmap only stores the status information of whether each user has the tag corresponding to the audience, it saves storage space; moreover, the tag bitmap supports dynamic expansion, and the data table structure does not need to be modified when expanding, making it easy to maintain.

[0126] In practice, preferably, the user profile selection method further includes:

[0127] Calculate the proportion of each tag value in the selected user profile, that is, calculate the percentage of users with a specific tag within a specific user group. The specific calculation steps are as follows:

[0128] Obtain detailed data for each tag bitmap corresponding to the target audience bitmap and the total detailed data for the tag category to which the tag belongs;

[0129] Perform an intersection operation between the detailed data of each tag bitmap and the total detailed data of the tag category to which the tag belongs, and obtain the number of users 'a' for each specific tag in the audience package corresponding to the target audience package bitmap;

[0130] Summarize the number of users (b) in the target audience's bitmap to the tag category of this tag;

[0131] The percentage c of each tag is calculated using the following formula: c = a / b, where a ≥ 1 and b ≥ 1.

[0132] Understandably, by calculating the percentage of users for each tag or each device in the audience segment, it is possible to clearly demonstrate whether the user profile selected by the tags meets the user requirements.

[0133] In practice, preferably, the audience segmentation table includes a user audience segmentation table, the user audience segmentation table includes audience segmentation IDs, and the user profile selection method further includes:

[0134] Using the audience group ID, obtain the tags corresponding to the tag bitmap of each user in the user audience group table;

[0135] Obtain the device ID corresponding to the tag from the tag table;

[0136] Write the device ID into the device export table.

[0137] Understandably, exporting device information from the selected user group to a file makes it easier for customers to use.

[0138] It should be noted that the technical solution provided in this application uses the CK BitMap compression algorithm for storage, further saving storage space and improving storage efficiency. Furthermore, the bitmap structure enables efficient computation; through bitwise AND, OR, and NOT operations between bitmaps, as well as the summation of elements within the bitmap, user profiles can be quickly calculated. The computation time of the bitmap is not significantly affected by the number of users, and computational performance will not decrease with the increase in the number of users, thus ensuring the efficiency of user profile calculation.

[0139] The database table design in the technical solution provided in this application can be implemented using a local database or a database cluster. Preferably, the database table design is implemented using a database cluster.

[0140] Understandably, using a database cluster to implement the database table design ensures high availability, as other servers in the cluster can continue tag selection even if one database server fails.

[0141] To better understand the technical solution of this application, a simple example is used below to illustrate the solution.

[0142] Please refer to Figure 3. Figure 3 is a view of the tag table used in the user profile selection method according to another exemplary embodiment. As shown in Figure 3, in the technical solution provided in this embodiment, the tag table stores multiple pieces of user information. Each tag value corresponds to a tag field name. For the specific meaning of each tag field name, please refer to Table 7 below.

[0143]

[0144]

[0145] Table 7

[0146] It should be noted that in the label field names, USER_P_M represents the user attribute label, while USER_D_M and CONTENT_D_M represent the family attribute labels. The two sets of numbers following the labels represent the first-level label number and the second-level label number, respectively. For the regional label of the family attribute, the corresponding label field names are numbered according to province and city. The first set of numbers represents the sequence number of each province, and the second set of numbers represents the sequence number of each city / region under that province. Due to the large number of label field names for regional labels, not all of them are shown in Table 7 above.

[0147] The data in the tag table of Figure 3 is converted into user tag bitmaps according to a preset user tag bitmap conversion rule, resulting in a user tag detail table storing the user tag bitmaps. The content of this user tag detail table is shown in Figure 4, which is a view of the user tag detail table used in a user profiling selection method according to another exemplary embodiment. As can be seen from the user tag detail table view in Figure 4, the data in the tag table is categorized according to the tag field name, and the tag bitmaps are converted according to the user ID. Since the data stored in the bitmap field cannot be directly displayed, the content of the bitmap_pno field is not displayed in Figure 4.

[0148] The data in the tag table of Figure 3 is converted into device tag bitmaps according to a preset device tag bitmap conversion rule, resulting in a device tag detail table storing the device tag bitmaps. The contents of this device tag detail table are shown in Figure 5, which is a view of the device tag detail table used in a user profiling selection method according to another exemplary embodiment. As can be seen from the device tag detail table view in Figure 5, the data in the tag table is categorized according to the tag field name, and the tag bitmaps are converted according to the device number. Since the data stored in the bitmap field cannot be directly displayed, the content of the bitmap_dno field is not displayed in Figure 5.

[0149] If we want to filter out data with the gender of male using the user tag details table, the data that meets the criteria filtered by the user tag details table is stored in the user audience package table. For details of the contents of this table, please refer to Figure 6. Figure 6 is a view of the user audience package table used in the user profile selection method according to another exemplary embodiment. As shown in Figure 6, the audience package ID of the filtered user audience package is 313, and the user IDs of male users in this audience package include: 1, 2, 4, 5, 7, and 9.

[0150] If we want to filter out data with the gender of male through the device tag details table, the data that meets the conditions filtered by the device tag details table is stored in the device audience package table. For the specific contents of this table, please refer to Figure 7. Figure 7 is a view of the device audience package table used by the user profile selection method according to another exemplary embodiment. As shown in Figure 7, the audience package ID of the filtered device audience package is 314, and the device numbers with the gender of male in this audience package include: 1, 2, 3, and 4.

[0151] According to the data in the label table of Figure 3, the user IDs and device IDs corresponding to the data for male gender in the label table are shown in Figure 8. Figure 8 is a verification table view used in the user profiling selection method according to another exemplary embodiment. As shown in Figure 8, the user IDs corresponding to the data for male gender in this verification table include: 1, 2, 4, 5, 7, 9, and the device IDs include: 1, 2, 3, 3, 3, 4, where each user ID and each device ID correspond one-to-one. The content of this verification table can confirm that the selected user group profile table data and device group profile table data are correct.

[0152] This application also provides a user profile selection device. Please refer to FIG9, which is a schematic block diagram of a user profile selection device according to an exemplary embodiment. As shown in FIG9, the user profile selection device 100 includes:

[0153] The tag data acquisition module 101 is used to acquire multiple tag data entries from a tag table. The tag table stores multiple tag data entries corresponding to all users under each device, and each tag data entry includes one or more tags for a user.

[0154] The tag bitmap conversion module 102 converts the tag data into a tag bitmap according to a preset tag bitmap conversion rule, and obtains a tag detail table storing the tag bitmap. Each bit of data in the tag bitmap is used to indicate whether a user has the tag.

[0155] The user profile selection module 103 is used to select a target audience bitmap from the tag bitmap stored in the tag detail table according to the target tag currently selected by the user, and obtain an audience package table storing the target audience bitmap. The audience corresponding to the target audience bitmap is used as the user profile corresponding to the target tag.

[0156] In practice, preferably, the user profile selection device 100 further includes a percentage calculation module, used to calculate the proportion of the tag value of each tag in the selected user profile, wherein the user profile is a user group packet map or a device group packet map; and a device ID export module, used to export the device ID corresponding to each tag in the user group packet map. It should be noted that the percentage calculation module and the device ID export module are not shown in Figure 3.

[0157] Regarding the user profile selection device 100 in this embodiment, the specific manner in which its tag data acquisition module 101, tag bitmap conversion module 102, user profile selection module 103, proportion calculation module, and device ID export module execute the above-mentioned user profile selection method has been described in detail in the embodiments related to the user profile selection method, and will not be elaborated here.

[0158] It is understood that the technical solution provided in this embodiment, the user profile selection device, saves storage space by converting multiple tag data of each user into bitmap format and storing them in different tag bitmaps. Since the tag bitmap only stores the status information of whether each user has a tag, the storage space is saved. When using the tag bitmap to select user profiles, the calculation results of the corresponding tags of the user profile can be quickly obtained through the logical operation of the data bits in the tag bitmap, and the calculation efficiency is high. Moreover, the tag bitmap supports dynamic expansion, and the data table structure does not need to be modified when expanding, making it easy to maintain.

[0159] Furthermore, this application provides a computer-readable storage medium storing computer instructions for causing a computer to execute the steps of any of the user profile selection methods described above. The storage medium may be a magnetic disk, optical disk, read-only memory (ROM), random access memory (RAM), flash memory, hard disk drive (HDD), or solid-state drive (SSD), etc.; the storage medium may also include combinations of the above types of memory.

[0160] It is understood that the same or similar parts in the above embodiments can be referred to each other, and the contents not described in detail in some embodiments can be referred to the same or similar contents in other embodiments.

[0161] It should be noted that in the description of this application, the terms "first," "second," etc., are used for descriptive purposes only and should not be construed as indicating or implying relative importance. Furthermore, in the description of this application, unless otherwise stated, "multiple" or "more" means at least two.

[0162] It should be understood that when an element is referred to as "fixed to" or "set on" another element, it may be directly on the other element or may have an intervening element present at the same time; when an element is referred to as "connected to" another element, it may be directly connected to the other element or may have an intervening element present at the same time. In addition, the term "connected" as used herein may include wireless connections; the word "and / or" as used includes any unit and all combinations of one or more of the associated listed items.

[0163] Any process or user profile selection method described in the flowchart or otherwise herein can be understood as: representing a module, segment, or portion of code comprising one or more executable instructions for implementing a particular logical function or process, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which the embodiments of this application pertain.

[0164] It should be understood that various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or user profile selection methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0165] Those skilled in the art will understand that all or part of the steps of the user profile selection method in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the user profile selection method embodiments.

[0166] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.

[0167] The storage media mentioned above can be read-only memory, disk, or optical disk, etc.

[0168] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.

[0169] Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of this application.

Claims

1. A method for selecting user profiles, characterized in that, This includes: acquiring multiple tag data entries from a tag table, where the tag table stores multiple tag data entries corresponding to all users under each device, and each tag data entry includes one or more tags for a user; converting the tag data into a tag bitmap according to a preset tag bitmap conversion rule to obtain a tag detail table storing the tag bitmap, where each bit in the tag bitmap indicates whether a user has that tag; selecting a target audience package bitmap from the tag bitmap stored in the tag detail table according to the target tag currently selected by the user, to obtain an audience package table storing the target audience package bitmap, where the audience corresponding to the target audience package bitmap is used as the user profile corresponding to the target tag; the tag data includes user tag data and device tag data, and the step of converting the tag data into a tag bitmap according to the preset tag bitmap conversion rule to obtain a tag detail table storing the tag bitmap includes: using a preset user tag bitmap conversion rule to convert the tag data into a tag bitmap. The user tag data is converted into a user tag bitmap, and the user tags and the user tag bitmap are stored in a user tag detail table to obtain a user tag detail table; the device tag data is converted into a device tag bitmap using a preset device tag bitmap conversion rule, and the device tags and the device tag bitmap are stored in a user tag detail table to obtain a device tag detail table; the target tag includes one or more, and the step of selecting a target audience package bitmap from the tag bitmap stored in the tag detail table according to the target tag currently selected by the user to obtain an audience package table storing the target audience package bitmap includes: selecting one or more target tag bitmaps with the same tag value as the target tag from the tag bitmap stored in the tag detail table; performing logical operations on one or more target tag bitmaps to obtain a target audience package bitmap; and storing the target tag and the target audience package bitmap in the audience package table to obtain an audience package table.

2. The user profile selection method according to claim 1, characterized in that, The tag data also includes a user ID. The step of converting the user tag data into a user tag bitmap using a preset user tag bitmap conversion rule includes: determining the position of the user tag data in each user tag bitmap based on the user ID; setting the value at each position in each user tag bitmap to 1 to obtain the user tag bitmap.

3. The user profile selection method according to claim 1, characterized in that, The tag data also includes a device number. Converting the device tag data into a device tag bitmap using a preset device tag bitmap conversion rule includes: determining the position of the device tag data in each device tag bitmap based on the device number; setting the value at each position in each device tag bitmap to 1 to obtain the device tag bitmap.

4. The user profile selection method according to claim 1, characterized in that, The step of performing logical operations on one or more target tag bitmaps to obtain a target audience bitmap includes: obtaining the tag relationship of the target tags selected by the user; and performing logical operations on the one or more target tag bitmaps according to the logical operation method corresponding to the tag relationship to obtain the target audience bitmap.

5. The user profile selection method according to claim 1, characterized in that, The tag data also includes device tags, and the method further includes: obtaining the device ID of the current user in the ID import table; filtering out target tag data with the same device tag as the device ID from the tag data according to the device ID; converting the target tag data into a target audience package bitmap according to a preset tag bitmap conversion rule, and obtaining an audience package table storing the target audience package bitmap, wherein the audience corresponding to the target audience package bitmap is used as the user profile of the target tag.

6. The user profile selection method according to claim 1, characterized in that, Also includes: Calculate the proportion of each tag value in the selected user profile.

7. The user profile selection method according to claim 1, characterized in that, The audience package table includes a user audience package table, and the user audience package table includes an audience package ID. The method further includes: obtaining the tag corresponding to each user tag bitmap in the user audience package table through the audience package ID; obtaining the device ID corresponding to the tag from the tag table; and writing the device ID into the device export table.

8. A user profile selection device, characterized in that, include: The tag data acquisition module is used to acquire multiple tag data entries from a tag table. The tag table stores multiple tag data entries corresponding to all users under each device. Each tag data entry includes one or more tags for a user. The tag data includes user tag data and device tag data. A tag bitmap conversion module is used to convert the tag data into tag bitmaps according to preset tag bitmap conversion rules, and obtain a tag detail table storing the tag bitmaps. This includes: converting the user tag data into user tag bitmaps using preset user tag bitmap conversion rules, and storing the user tags and the user tag bitmaps in a user tag detail table to obtain a user tag detail table; converting the device tag data into device tag bitmaps using preset device tag bitmap conversion rules, and storing the device tags and the device tag bitmaps in a user tag detail table to obtain a device tag detail table; each bit in the tag bitmap is used to indicate whether a user has that tag; a user profile selection module is used to select tags from the target tags currently selected by the user. Selecting a target audience bitmap from the tag bitmap stored in the tag detail table yields an audience package table containing the target audience bitmap. The audience corresponding to the target audience bitmap serves as the user profile corresponding to the target tag. The target tag includes one or more tags. The process of selecting a target audience bitmap from the tag bitmap stored in the tag detail table based on the target tag selected by the current user, and obtaining the audience package table containing the target audience bitmap, includes: selecting one or more target tag bitmaps with the same tag value as the target tag from the tag bitmap stored in the tag detail table; performing logical operations on the one or more target tag bitmaps to obtain the target audience bitmap; and storing the target tag and the target audience bitmap in the audience package table to obtain the audience package table.

Citation Information

Patent Citations

  • User label storage method, user portrait calculation method and calculation equipment

    CN108415978A

  • Human surrounding method, device and equipment and storage medium

    CN116303452A