Information object labeling method, device, equipment and storage medium

By constructing an information object network and using a community discovery algorithm for labeling, the problem of low efficiency of manual labeling is solved, and efficient labeling of information objects and resource conservation are achieved.

CN114547430BActive Publication Date: 2025-09-30TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202011332338.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-11-24
Publication Date
2025-09-30
Estimated Expiration
2040-12-01

AI Technical Summary

Technical Problem

In the existing technology, manual product labeling is inefficient and wastes human resources.

Method used

By constructing an information object network and using community discovery algorithms to divide information objects into different communities, batch labeling of information objects can be achieved, thereby improving labeling efficiency.

Benefits of technology

It achieves efficient labeling of information objects and saves human resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114547430B_ABST
    Figure CN114547430B_ABST
Patent Text Reader

Abstract

The present application discloses a method, apparatus, device, and storage medium for labeling information objects, relating to the field of user interest recommendation. The method comprises: reading from a memory a set of n information objects corresponding to n user accounts, as well as the association relationship between the user accounts; in response to at least two user accounts among the n user accounts having an association relationship, generating an information object network based on the information object set and the association relationship; reading the connection relationship in the information object network, calling a community discovery algorithm to divide the information objects in the information object network into communities to obtain at least one community; obtaining the label of the community, and writing the label into the information object data of the information objects belonging to the community in the memory. This method can improve the efficiency of labeling information objects and facilitate accurate recommendation of information objects to users based on the labels of the information objects.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of user interest recommendation, and in particular to a labeling method, apparatus, device and storage medium for information objects. Background Art

[0002] A recommendation system is a type of application that uses information such as a user's historical behavior, social relationships, interests, and context to determine what items or services the user currently needs or is interested in, or to help the user make decisions. The task and function of a recommendation system is to connect and shorten the path between the user account and valuable information, bringing the user account closer to their preferred items and improving product experience and conversion efficiency.

[0003] In related technologies, recommendation systems recommend products that may be of interest to a user account based on the user account's historical behavior and product tags. For example, if a user account's historical behavior includes food-related products, the recommendation system will recommend other products in the same food category to the user account. Product tags are typically manually assigned to each product.

[0004] The methods in the related art use manual labeling of product labels, which is inefficient and wastes human resources. Summary of the Invention

[0005] The embodiments of the present application provide a method, apparatus, device, and storage medium for labeling information objects, which can improve the efficiency of labeling information objects. The technical solution is as follows.

[0006] According to one aspect of the present application, a method for labeling an information object is provided, which is applied to a computer device, and the method includes:

[0007] Reading from a memory n information object sets corresponding to n user accounts, respectively, and associations between the user accounts, wherein the information object sets include at least one information object, and n is an integer greater than 1;

[0008] In response to at least two user accounts among the n user accounts having the association relationship, generating an information object network based on the information object set and the association relationship, the information object network including nodes corresponding to the information objects and a connection line connecting two associated nodes, the information objects of the two associated nodes respectively belonging to the information object sets corresponding to the two user accounts having the association relationship;

[0009] Reading the connection relationship in the information object network, calling a community discovery algorithm to divide the information objects in the information object network into communities to obtain at least one community, wherein the community includes at least one information object;

[0010] A label of the community is obtained, and the label is written into the information object data of the information object belonging to the community in the memory.

[0011] According to another aspect of the present application, a device for labeling an information object is provided, the device comprising:

[0012] a reading module, configured to read from a memory n information object sets corresponding to n user accounts, as well as associations between user accounts, wherein the information object sets include at least one information object, and n is an integer greater than 1;

[0013] a generating module configured to generate, in response to at least two user accounts among the n user accounts having the association relationship, an information object network based on the information object set and the association relationship, the information object network comprising nodes corresponding to the information objects and a connecting line connecting two associated nodes, the information objects of the two associated nodes respectively belonging to the information object sets corresponding to the two user accounts having the association relationship;

[0014] The reading module is used to read the connection relationship in the information object network;

[0015] A community module, configured to call a community discovery algorithm to perform community division on the information objects in the information object network to obtain at least one community, wherein the community includes at least one information object;

[0016] An acquisition module, used to acquire the label of the community;

[0017] A writing module is used to write the tag into the information object data of the information object belonging to the community in the memory.

[0018] In an optional embodiment, the generating module is configured to construct the node according to the information object in the information object set in response to at least two user accounts in the n user accounts having the association relationship, wherein the information objects correspond to the nodes in a one-to-one manner;

[0019] The generating module is configured to generate an inter-set connection line based on the association relationship, wherein the inter-set connection line is configured to connect a node corresponding to an information object in an i-th information object set and a node corresponding to an information object in a j-th information object set, wherein the i-th user account corresponding to the i-th information object set and the j-th user account corresponding to the j-th information object set have the association relationship, where i and j are positive integers not greater than n, and n is an integer greater than 1;

[0020] The generating module is used to generate the information object network according to the nodes and the inter-assembly connection lines.

[0021] In an optional embodiment, the generating module is configured to generate, in response to the association relationship between the i-th user account and the j-th user account among the n user accounts, the inter-set connection line connecting the node of the x-th information object in the i-th information object set and the node of the y-th information object in the j-th information object set;

[0022] The xth information object includes any information object in the i-th information object set, the y-th information object includes any information object in the j-th information object set, i and j are positive integers not greater than n, x and y are positive integers, and n is an integer greater than 1.

[0023] In an optional embodiment, the information object in the information object set corresponds to a user behavior;

[0024] the generating module is configured to generate, in response to the i-th user account and the j-th user account in the n user accounts having the association relationship, and the x-th information object in the i-th information object set and the y-th information object in the j-th information object set corresponding to the same user behavior, generate the inter-set connection line connecting the node of the x-th information object and the node of the y-th information object;

[0025] The xth information object includes any information object in the i-th information object set, the y-th information object includes any information object in the j-th information object set, i and j are positive integers not greater than n, x and y are positive integers, and n is an integer greater than 1.

[0026] In an optional embodiment, the generating module is configured to generate an intra-set connection line according to the information object set, wherein the intra-set connection line is configured to connect two nodes corresponding to two information objects in the i-th information object set;

[0027] The generating module is used to generate the information object network according to the nodes, the inter-assembly connection lines and the intra-assembly connection lines.

[0028] In an optional embodiment, the generation module is used to generate the intra-set connection line connecting any two nodes in a fully connected manner for the nodes corresponding to all information objects in the i-th information object set, where i is a positive integer not greater than n and n is a positive integer.

[0029] In an optional embodiment, the information objects in the information object set correspond to user behaviors; the generating module is configured to generate, in response to the xth information object and the zth information object in the ith information object set corresponding to the same user behaviors, the intra-set connecting line connecting the node of the xth information object and the node of the zth information object;

[0030] The xth information object includes any information object in the i-th information object set, the z-th information object includes any information object in the i-th information object set that is different from the x-th information object, i is a positive integer not greater than n, x and z are positive integers, and n is an integer greater than 1.

[0031] In an optional embodiment, the same information objects in different information object sets correspond to the same node in the information object network;

[0032] The generating module is configured to, in response to the presence of a plurality of inter-assembly connection lines between the a-th node and the b-th node, remove duplicates from the plurality of inter-assembly connection lines connecting the a-th node and the b-th node to obtain a single connection line between the a-th node and the b-th node; the a-th node and the b-th node are any two connected nodes, and a and b are positive integers;

[0033] The generating module is configured to, in response to the existence of one inter-assembly connection line between the a-th node and the b-th node, determine the inter-assembly connection line connecting the a-th node and the b-th node as the single connection line between the a-th node and the b-th node;

[0034] The generating module is configured to determine the weight of the single connection line between the ath node and the bth node according to the number of the inter-collection connection lines connecting the ath node and the bth node;

[0035] The generating module is configured to generate the information object network according to the nodes, the single connection lines and the weights of the single connection lines.

[0036] In an optional embodiment, the same information objects in different information object sets correspond to the same node in the information object network;

[0037] The generating module is configured to, in response to the presence of a plurality of connection lines between the a-th node and the b-th node, remove duplicates from the plurality of connection lines connecting the a-th node and the b-th node to obtain a single connection line between the a-th node and the b-th node; the connection line includes at least one of an intra-set connection line and an inter-set connection line, the a-th node and the b-th node are any two connected nodes, and a and b are positive integers;

[0038] The generating module is configured to, in response to the existence of one connecting line between the a-th node and the b-th node, determine the connecting line connecting the a-th node and the b-th node as the single connecting line between the a-th node and the b-th node;

[0039] The generating module is configured to determine a weight of the single connection line between the a-th node and the b-th node according to the number of the connection lines connecting the a-th node and the b-th node;

[0040] The generating module is configured to generate the information object network according to the nodes, the single connection lines and the weights of the single connection lines.

[0041] In an optional embodiment, the reading module is used to read the connection relationship in the information object network;

[0042] The community module is configured to group adjacent nodes in the information object network into the same community based on the connection relationship between the nodes in the information object network, calculate the modularity of the information object network, and repeat this step to obtain multiple modularities of the information object network; the adjacent nodes include two nodes having the connection relationship, and the modularity is used to describe the quality of the community division in the information object network;

[0043] The community module is configured to obtain a community division result in response to the modularity of the information object network taking a maximum value, wherein the community division result includes at least one community;

[0044] The community module is used to treat nodes belonging to the same community as one node, update the information object network, and repeat the above steps until the network structure of the information object network remains unchanged.

[0045] In an optional embodiment, the acquisition module is used to acquire the label annotated to the community using a manual labeling method;

[0046] The writing module is used to write the tag into the information object data of the information object belonging to the community in the memory.

[0047] In an optional embodiment, the information objects in the n information object sets include labeled objects and unlabeled objects;

[0048] The acquisition module is configured to determine the label of the community based on the labeled objects belonging to the community;

[0049] The writing module is configured to write the tag into the information object data of the untagged object in the community in the memory.

[0050] In an optional embodiment, the reading module is used to read the user history behavior of the user account to be recommended from the memory;

[0051] a recommendation module, configured to determine a recommendation tag for the recommended user account based on the information object corresponding to the user's historical behavior, wherein the recommendation tag includes a tag of the information object corresponding to the user's historical behavior;

[0052] The recommendation module is configured to determine a recommendation object for the user account to be recommended based on the recommendation tag, wherein the tag of the recommendation object is the same as the recommendation tag;

[0053] The sending module is used to send the recommended object to the client of the user account to be recommended.

[0054] According to another aspect of the present application, a computer device is provided, comprising: a processor and a memory, wherein the memory stores at least one instruction, at least one program, a code set, or an instruction set, and the at least one instruction, the at least one program, the code set, or the instruction set is loaded and executed by the processor to implement the labeling method for information objects as described above.

[0055] According to another aspect of the present application, a computer-readable storage medium is provided, in which at least one instruction, at least one program, a code set or an instruction set is stored. The at least one instruction, the at least one program, the code set or the instruction set is loaded and executed by a processor to implement the labeling method for information objects as described above.

[0056] According to another aspect of an embodiment of the present disclosure, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the information object labeling method provided in the aforementioned optional implementation.

[0057] The beneficial effects brought about by the technical solutions provided in the embodiments of the present application include at least the following beneficial effects.

[0058] By constructing the information objects corresponding to different user accounts into an information object network based on the association relationship between user accounts, a topological structure of the information objects is formed. Then, according to the topological structure on the information object network, the community discovery algorithm is called to divide the information objects into different communities, completing the classification of the information objects, and then realizing batch labeling of the information objects in a community, thereby improving the labeling efficiency of the information objects and saving human resources. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0060] Figure 1 is a block diagram of a computer system provided by an exemplary embodiment of the present application;

[0061] Figure 2 is a method flow chart of a labeling method for an information object provided by another exemplary embodiment of the present application;

[0062] Figure 3 is a method flow chart of a labeling method for an information object provided by another exemplary embodiment of the present application;

[0063] Figure 4 is a method flow chart of a labeling method for an information object provided by another exemplary embodiment of the present application;

[0064] Figure 5 This is a schematic diagram of inter-set connection lines of a labeling method for information objects provided by another exemplary embodiment of the present application;

[0065] Figure 6 This is a schematic diagram of inter-set connection lines of a labeling method for information objects provided by another exemplary embodiment of the present application;

[0066] Figure 7 This is a schematic diagram of inter-set connection lines of a labeling method for information objects provided by another exemplary embodiment of the present application;

[0067] Figure 8 This is a schematic diagram of intra-set connection lines of a labeling method for information objects provided by another exemplary embodiment of the present application;

[0068] Figure 9This is a schematic diagram of intra-set connection lines of a labeling method for information objects provided by another exemplary embodiment of the present application;

[0069] Figure 10 This is a schematic diagram of intra-set connection lines of a labeling method for information objects provided by another exemplary embodiment of the present application;

[0070] Figure 11 is a schematic diagram of undirected connection lines of a labeling method for information objects provided by another exemplary embodiment of the present application;

[0071] Figure 12 is a schematic diagram of directed connection lines of a labeling method for information objects provided by another exemplary embodiment of the present application;

[0072] Figure 13 is a schematic diagram of an information object network of a labeling method for information objects provided by another exemplary embodiment of the present application;

[0073] Figure 14 is a schematic diagram of a community discovery algorithm of a labeling method for information objects provided by another exemplary embodiment of the present application;

[0074] Figure 15 is a schematic diagram of an information object network of a labeling method for information objects provided by another exemplary embodiment of the present application;

[0075] Figure 16 is a schematic diagram of a labeling result of a labeling method for an information object provided by another exemplary embodiment of the present application;

[0076] Figure 17 is a block diagram of an information object labeling device provided by another exemplary embodiment of the present application;

[0077] Figure 18 is a structural diagram of a server provided by another exemplary embodiment of the present application;

[0078] Figure 19 is a block diagram of a terminal provided by another exemplary embodiment of the present application. DETAILED DESCRIPTION

[0079] In order to make the objectives, technical solutions and advantages of this application clearer, the implementation methods of this application will be further described in detail below with reference to the accompanying drawings.

[0080] Artificial Intelligence (AI) refers to the theories, methods, techniques, and application systems that use digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, to perceive the environment, acquire knowledge, and use that knowledge to achieve optimal results. In other words, AI is a comprehensive technology within computer science that seeks to understand the essence of intelligence and produce new intelligent machines that can respond in a manner similar to human intelligence. AI also involves studying the design principles and implementation methods of various intelligent machines, enabling them to possess the capabilities of perception, reasoning, and decision-making.

[0081] Artificial intelligence (AI) technology is a comprehensive discipline encompassing a wide range of fields, encompassing both hardware and software technologies. Foundational AI technologies generally include sensors, specialized AI chips, cloud computing, distributed storage, big data processing, operating / interaction systems, and mechatronics. AI software technologies primarily encompass computer vision, speech processing, natural language processing, and machine learning / deep learning.

[0082] Machine learning (ML) is a multidisciplinary field that encompasses probability theory, statistics, approximation theory, convex analysis, and algorithmic complexity theory. It specifically studies how computers can simulate or implement human learning behaviors to acquire new knowledge or skills and reorganize existing knowledge structures to continuously improve their performance. Machine learning is at the core of artificial intelligence and the fundamental way to make computers intelligent. Its applications span all areas of AI. Machine learning and deep learning typically include techniques such as artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, and learning through demonstration.

[0083] Cloud technology refers to a hosting technology that unifies hardware, software, network and other resources within a wide area network or local area network to achieve data computing, storage, processing and sharing.

[0084] Cloud technology is a general term for network technologies, information technologies, integration technologies, management platform technologies, and application technologies based on the cloud computing business model. It can form a resource pool that can be used flexibly and conveniently on demand. Cloud computing technology will become a crucial support. Backend services for technical network systems, such as video websites, image websites, and more portals, require extensive computing and storage resources. With the rapid development and application of the internet industry, every item will likely have its own unique identifier, requiring transmission to backend systems for logical processing. Different levels of data will be processed separately, and data from various industries will require a strong system backend, which can only be achieved through cloud computing.

[0085] Big data refers to collections of data that cannot be captured, managed, and processed within a specific timeframe using conventional software tools. These massive, rapidly growing, and diverse information assets require new processing models to enhance decision-making, insight discovery, and process optimization. With the advent of the cloud era, big data has attracted increasing attention. Big data requires specialized technologies to efficiently process large amounts of time-sensitive data. Technologies suitable for big data include massively parallel processing databases, data mining, distributed file systems, distributed databases, cloud computing platforms, the internet, and scalable storage systems.

[0086] Cloud Social is a virtual social application model that integrates the Internet of Things, cloud computing, and mobile internet. Its goal is to establish a well-known "resource sharing relationship map" to promote online social interaction. Cloud Social's key feature is the integration and evaluation of a vast amount of social resources, forming an efficient resource pool to provide on-demand services to users. The more users who participate in sharing, the greater the value created.

[0087] Figure 1 A schematic structural diagram of a computer system provided by an exemplary embodiment of the present application is shown. The computer system includes a terminal 120 and a server 140 .

[0088] The terminal 120 and the server 140 are connected to each other via a wired or wireless network.

[0089] Terminal 120 may include at least one of a smartphone, a laptop, a desktop computer, a tablet, a smart speaker, and an intelligent robot. In an optional implementation, terminal 120 is installed with a client that supports information object recommendation functionality. Information objects include at least one of: products, pictures, emoticons, hotels, merchants, movies, books, videos, news, web pages, brands, and applications. In an optional implementation, terminal 120 is installed with a client that supports categorizing or labeling information objects. The types of information objects are the same as described above. In an optional implementation, terminal 120 is installed with a client that supports information object recommendation functionality. The types of information objects are the same as described above. For example, the client may be a client for a lifestyle service application that provides merchant information for multiple merchants. Users can browse the merchant information and select merchants of interest for consumption. To facilitate users' quick retrieval of merchants, the client tags the merchants, allowing users to quickly find merchants based on the tags. For example, the client may also recommend merchants of potential interest to the user based on the user's interests and the tags of each merchant.

[0090] Exemplarily, the method provided in this application can be executed by a client on a terminal or by a server. Exemplarily, the method provided in this application is executed by a server, and the client can display the server's annotation results for the information object.

[0091] Exemplarily, the client sends the user's user data to the server so that the server can tag the information object based on the user data. For example, if a first user account 122 uses the client on a first terminal to engage in user behavior with a first information object 121, such as purchasing the first information object 121, the client will upload the user data related to the user behavior between the first user account 122 and the first information object 121 to the server. If a second user account 123 uses the client on a second terminal to engage in user behavior with a second information object 124, such as browsing the second information object 124, the client will upload the user data related to the user behavior between the second user account 123 and the second information object 124 to the server.

[0092] The terminal 120 includes a first memory and a first processor. A first program is stored in the first memory; the first program is called and executed by the first processor to implement the labeling method for the information object provided in this application. The first memory may include, but is not limited to, the following: Random Access Memory (RAM), Read Only Memory (ROM), Programmable Read-Only Memory (PROM), Erasable Programmable Read-Only Memory (EPROM), and Electrically Erasable Programmable Read-Only Memory (EEPROM).

[0093] The first processor may be composed of one or more integrated circuit chips. Alternatively, the first processor may be a general-purpose processor, such as a central processing unit (CPU) or a network processor (NP). Alternatively, the first processor may implement the labeling method for the information object provided in this application by running a program or code.

[0094] The server 140 includes a second memory and a second processor. The second memory stores a second program, which is called by the second processor to implement the labeling method for information objects provided in this application. Exemplarily, the second memory stores a second program. Exemplarily, the server receives and stores user data sent by the terminal, and labels the information objects based on the user data. Optionally, the second memory may include, but is not limited to, the following: RAM, ROM, PROM, EPROM, EEPROM. Optionally, the second processor may be a general-purpose processor, such as a CPU or NP.

[0095] Illustratively, the server 140 includes a database 141 , a network construction unit 142 , a community discovery unit 143 , and a tagging unit 144 .

[0096] Among them, the database 141 user stores user data of user accounts and data of information objects. The user data includes: user accounts, associations between user accounts, sets of information objects corresponding to user accounts, etc. The information object data includes the name of the information object, user behavior between the information object and the user account, etc.

[0097] The network construction unit 142 is used to construct the information object network 110 according to the user data and information object data stored in the database 141 .

[0098] The community discovery unit 143 is used to call the community discovery algorithm based on the information object network 110 constructed by the network construction unit 142 to divide the nodes in the information object network 110 into various communities, and obtain the community division result 111. For example, Figure 1 The community division result 111 includes four divided communities, each community corresponds to a type of node, the first community corresponds to five nodes, the second community corresponds to three nodes, the third community corresponds to six nodes, and the fourth community corresponds to two nodes.

[0099] The label tagging unit 144 is configured to obtain a label corresponding to each community based on the community division result 111 obtained by the community discovery unit 143, and use the community label to tag information objects corresponding to nodes in the community. For example, the information objects corresponding to nodes in the first community are tagged with label 101, the information objects corresponding to nodes in the second community are tagged with label 102, the information objects corresponding to nodes in the third community are tagged with label 103, and the information objects corresponding to nodes in the fourth community are tagged with label 104. Exemplarily, the label tagging unit 144 stores the label tagging results for the information objects in the database 141.

[0100] Exemplarily, the server may further include a recommendation unit configured to search the database 141 for information objects with the same tags as the recommendation tags of the user account, and determine these information objects as recommendation objects and recommend them to the user account.

[0101] The server 140 may be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. The terminal may be a smartphone, tablet computer, laptop computer, desktop computer, smart speaker, smart watch, etc., but is not limited thereto. The terminal and the server may be directly or indirectly connected via wired or wireless communication, which is not limited in this application.

[0102] Figure 2 The flowchart of the labeling method of an information object provided by an exemplary embodiment of the present application is shown. The method can be executed by a computer device, for example, Figure 1 The method includes the following steps.

[0103] Step 201: read n information object sets corresponding to n user accounts and association relationships between user accounts from a memory, wherein the information object set includes at least one information object, and n is an integer greater than 1.

[0104] Exemplarily, the information object includes at least one of a product, a picture, an emoticon, a hotel, a merchant, a movie, a book, a video, information, a webpage, a brand, a user account, and an application. Exemplarily, to ensure the accuracy of community classification, the information object may only be one of the above multiple types.

[0105] Illustratively, the i-th information object set of the i-th user account is a set of information objects associated with the i-th user account. Illustratively, the association of an information object with a user account means that there is an associated behavior (user behavior) between the user account and the information object, i.e., the user account has performed an associated behavior with the information object. Illustratively, the associated behavior includes at least one of: purchasing, browsing, adding to favorites, following, opening, sharing, recommending, commenting, using, sending, receiving, checking in, viewing, renting, and liking.

[0106] For example, when the information object is a product, the i-th product set corresponding to the i-th user account includes: products purchased by the i-th user account, products added to the shopping cart, browsed products, favorited products, followed products, shared products, etc.

[0107] Illustratively, the information object sets of different user accounts may contain the same information object. For example, the information object set of user account A includes information object A, and the information object set of user account B also includes information object A.

[0108] For example, there are associations between user accounts. Associations include interactive relationships between user accounts, such as friend relationships, follow relationships, like relationships, comment relationships, and group relationships (belonging to the same group); associations also include user account information relationships between user accounts, such as having the same or similar user account attributes (same gender, same or similar place of residence / login location, same or similar hobbies, etc.); associations also include indirect relationships between user accounts, such as visiting the same merchant, having a friend relationship with the same user account, etc.

[0109] In step 202, in response to at least two user accounts among the n user accounts being associated, an information object network is generated based on the information object set and the association relationship. The information object network includes nodes corresponding to the information objects and a connection line for connecting the two associated nodes. The information objects of the two associated nodes respectively belong to the information object sets corresponding to the two associated user accounts.

[0110] Exemplarily, based on the association relationship between user accounts, the connection relationship between information objects in the information object set is determined, and an information object network is constructed with the information objects as nodes.

[0111] Exemplarily, one information object corresponds to one node in an information object network. Exemplarily, the same information object in different information object sets corresponds to the same node. For example, if information object set A includes information object A, information object B, and information object C, and information object set B includes information object A and information object D, then the information object network constructed based on information object sets A and B includes four nodes corresponding to information object A, information object B, information object C, and information object D, respectively.

[0112] Based on the associations between user accounts, the connection relationships within information object sets can be determined. For example, if user account A and user account B are associated, then information object sets A and B are also associated. If two information object sets are associated, then the information objects within the information object sets are also connected. For example, an information object in information object set A is connected to every information object in information object set B. Therefore, based on the associations between user accounts, the connection relationships between information objects can be inferred. Furthermore, based on the connection relationships between information objects, the nodes corresponding to the two information objects can be connected with a connecting line to form an information object network.

[0113] Illustratively, an information object network is a network used to describe the connection relationships between information objects. The connection relationships between information objects can be determined based on the association relationships between user accounts, or based on the user behavior of the user accounts themselves. Illustratively, the association relationships between user accounts can determine the connection relationships between information objects between two information object sets, and user behavior can determine the connection relationships between information objects within an information object set.

[0114] Step 203: read the connection relationship in the information object network, call the community discovery algorithm to divide the information objects in the information object network into communities to obtain at least one community, and the community includes at least one information object.

[0115] Exemplarily, the client utilizes a community discovery algorithm based on the information object network to divide nodes (information objects) in the information object network into communities, thereby obtaining at least one community. Exemplarily, information objects within a community have similar characteristics and belong to the same category. Exemplarily, a community includes at least one node (information object), and a node (information object) belongs to only one community.

[0116] Since many real networks have a community structure, that is, the entire network is composed of several communities, the connections between communities are relatively sparse, and the connections within communities are relatively dense. Community discovery algorithms use the information contained in the network's topology to analyze its modular community structure from complex networks.

[0117] Exemplarily, the community discovery algorithm includes at least one of a community discovery algorithm based on modularity optimization, a community discovery algorithm based on spectral analysis, a community discovery algorithm based on information theory, and a community discovery algorithm based on label propagation.

[0118] Step 204: Obtain the tag of the community, and write the tag into the information object data of the information object belonging to the community in the memory.

[0119] For example, after information objects are divided into different communities, labels corresponding to the communities are obtained, and all information objects belonging to the communities are labeled with the labels, thereby achieving batch labeling of information objects and improving labeling efficiency of information objects.

[0120] Exemplarily, information object data of the information object is stored in the memory. For example, the information object data includes: the name, price, merchant, inventory, historical sales, specifications, attributes, shelf time, tags, etc. of the information object.

[0121] Exemplarily, the label is written into the information object data of the information object belonging to the community in the memory, that is, the information objects belonging to the community are marked according to the label of the community.

[0122] For example, blockchain technology can be used to store the labeling results of information objects. For example, the user accounts, the associations between user accounts, and the information object sets corresponding to the user accounts in step 201 can be stored in the blockchain.

[0123] To sum up, the method provided in this embodiment constructs the information objects in the information object set corresponding to different user accounts into an information object network based on the association relationship between user accounts, forms a topological structure of the information objects, and then calls the community discovery algorithm according to the topological structure on the information object network to divide the information objects into different communities, completes the classification of information objects, and then realizes batch labeling of information objects in a community, thereby improving the labeling efficiency of information objects and saving human resources.

[0124] Exemplarily, an exemplary embodiment of constructing an information object network based on association relationships between user accounts and / or user behaviors is provided.

[0125] Figure 3 The flowchart of the labeling method of an information object provided by an exemplary embodiment of the present application is shown. The method can be executed by a computer device, for example, Figure 1 The terminal or server shown is used for execution. Figure 2 On the basis of the exemplary embodiment shown, step 202 further includes steps 2021 to 2023, step 203 further includes steps 2031 to 2033, step 204 further includes step 2041, and step 204 further includes steps 205 to 207.

[0126] Step 2021 : In response to at least two user accounts among the n user accounts being associated with each other, a node is generated according to the information object in the information object set, and the information object corresponds to the node in a one-to-one manner.

[0127] Exemplarily, each information object in an information object set corresponds to a node in the information object network. Exemplarily, some information object sets may contain duplicate information objects, and these duplicate information objects correspond to the same node in the information object network. For example, information object set A, information object set B, and information object set C all contain information object A, but information object A has only one node in the information object network, not three.

[0128] Exemplarily, the connection lines in the information object network may include two types: inter-set connection lines and intra-set connection lines. The inter-set connection lines are used to connect the nodes of two information objects belonging to different information object sets, and the intra-set connection lines are used to connect the nodes of two information objects belonging to the same information object set.

[0129] Figure 3 Steps 2022 and 2023 in FIG. 4 show an example in which the information object network includes connection lines between collections. Figure 4 Steps 2022, 2024, and 2023-1 in the example above provide examples of information object networks including inter-assembly connections and intra-assembly connections. For example, this embodiment also provides two methods for generating inter-assembly connections and two methods for generating intra-assembly connections. Each of these steps is described below.

[0130] Step 2022: Generate an inter-set connection line based on the association relationship. The inter-set connection line is used to connect a node corresponding to an information object in the i-th information object set and a node corresponding to an information object in the j-th information object set. The i-th user account corresponding to the i-th information object set and the j-th user account corresponding to the j-th information object set have an association relationship. i and j are positive integers not greater than n, and n is an integer greater than 1.

[0131] Exemplarily, the i-th information object set is any information object set among the n information object sets, and the j-th information object set is any information object set among the n information object sets that is different from the i-th information object set.

[0132] For example, when two user accounts have an association relationship, it can be determined that two information object sets corresponding to the two user accounts have an association relationship. An inter-set connection can then be established between the information objects in the two information object sets. For example, an inter-set connection line is a connection line used to connect nodes of two information objects belonging to two information object sets. An inter-set connection line is used to connect nodes corresponding to information objects in two information object sets that have an association relationship.

[0133] Exemplarily, one of two methods may be used to generate inter-assembly connection lines between nodes.

[0134] A method is as follows: in response to an association between an i-th user account and a j-th user account among n user accounts, an inter-set connection line is generated, connecting a node of an x-th information object in an i-th information object set and a node of a y-th information object in a j-th information object set; wherein the x-th information object includes any information object in the i-th information object set, the y-th information object includes any information object in the j-th information object set, i and j are positive integers not greater than n, x and y are positive integers, and n is an integer greater than 1.

[0135] That is, when there is an association relationship between two information object sets, the information objects in one of the information object sets are traversed, and the nodes in the information object are connected one by one with the nodes of the information objects in the other information object set.

[0136] For example, Figure 5 As shown, when the first user account 301 and the second user account 302 have an association relationship, information object 1 in the information object set corresponding to the first user account 301 is connected to information object 5, information object 6, and information object 7 in the information object set corresponding to the second user account 302, respectively. Similarly, information object 2, information object 3, and information object 4 are connected to each information object in the information object set corresponding to the second user account 302.

[0137] For example, if the same information object exists in the information object sets of two user accounts, the information object corresponds to only one node, which is connected to the other nodes in the two information object sets. Figure 6 As shown, the information object set of the first user account 301 and the information object set of the second user account 302 both include information object 1. Then, information object 1 corresponds to only one node in the information object network, and this node is connected to the other nodes (information object 2, information object 3, information object 4, information object 6 and information object 7) in the two information object sets respectively.

[0138] Another method is: information objects in an information object set correspond to user behaviors; in response to the i-th user account and the j-th user account in n user accounts having an association relationship, and the x-th information object in the i-th information object set and the y-th information object in the j-th information object set having the same user behaviors as each other, an inter-set connection line is generated connecting the node of the x-th information object and the node of the y-th information object; wherein the x-th information object includes any information object in the i-th information object set, the y-th information object includes any information object in the j-th information object set, i and j are positive integers not greater than n, x and y are positive integers, and n is an integer greater than 1.

[0139] Exemplarily, the association relationship between user accounts is used to connect information objects in two information object sets, and the connection relationship between the information objects can also be limited by using user behaviors of the user accounts.

[0140] Exemplarily, user behavior is an associated behavior that associates an information object with a user account. For example, user behavior includes at least one of purchasing, browsing, collecting, following, opening, sharing, recommending, commenting, using, sending, receiving, signing in, watching, renting, and liking.

[0141] When two user accounts are associated, determine whether there are information objects corresponding to the same user behavior in the two information object sets corresponding to the two user accounts. If so, connect the nodes of the two information objects with an inter-set connection line; if not, do not connect the nodes of the information objects in the two information object sets.

[0142] For example, Figure 7 As shown, in the information object set of first user account 301, information object 1 and information object 2 are both information objects purchased by the first user account. Therefore, the user behavior corresponding to information objects 1 and 2 is purchase. Information objects 3 and 4 are information objects browsed by the first user account. Therefore, the user behavior corresponding to information objects 3 and 4 is browse. In the information object set of second user account 302, information object 5 is an information object purchased by the second user account. Therefore, the user behavior corresponding to information object 5 is purchase. Information objects 6 and 7 are information objects browsed by the second user account. Therefore, the user behavior corresponding to information objects 6 and 7 is browse. In response to the association between first user account 301 and second user account 302, the nodes of information objects corresponding to the same user behavior in the two information object sets are connected. That is, information object 1 is connected to information object 5, information object 2 is connected to information object 5, information object 3 is connected to information object 6 and information object 7 respectively, and information object 4 is connected to information object 6 and information object 7 respectively. The connecting lines are inter-set connections.

[0143] For example, the information object network includes not only inter-set connections but also intra-set connections, such as Figure 4 As shown, the method also includes step 2024.

[0144] Step 2024: Generate an intra-set connection line according to the information object set. The intra-set connection line is used to connect two nodes corresponding to two information objects in the i-th information object set.

[0145] Illustratively, intra-set connections are used to connect nodes corresponding to multiple information objects within an information object set corresponding to a user account. That is, they connect nodes corresponding to information objects within an information object set. Illustratively, inter-set connections are used to express associations between user accounts, and intra-set connections are used to express associations between information objects within a user account (information objects that are associated with the same user account, or that are associated with the same user account in the same manner).

[0146] Exemplarily, one of two methods may be used to generate inter-assembly connection lines between nodes.

[0147] One method is: generate intra-set connection lines connecting any two nodes in a fully connected manner for the nodes corresponding to all information objects in the i-th information object set, where i is a positive integer not greater than n, and n is a positive integer.

[0148] That is, multiple nodes corresponding to all information objects in an information object set corresponding to a user account are connected in pairs to form a full connection. Since these information objects belong to the same user account, there is an association relationship between any two information objects.

[0149] For example, Figure 8 As shown, the six information objects in the information object set corresponding to the first user account 301 are connected in pairs to form a fully connected network consisting of six nodes.

[0150] Another method is: the information objects in the information object set correspond to user behaviors; in response to the fact that the user behaviors corresponding to the x-th information object and the z-th information object in the ith information object set are the same, an intra-set connecting line connecting the node of the x-th information object and the node of the z-th information object is generated; wherein, the x-th information object includes any information object in the ith information object set, the z-th information object includes any information object in the ith information object set that is different from the x-th information object, i is a positive integer not greater than n, x and z are positive integers, and n is an integer greater than 1.

[0151] That is, in an information object set corresponding to a user account, the nodes of multiple information objects corresponding to the same user behavior are connected.

[0152] For example, Figure 9 As shown, in the information object set of first user account 301, information objects 1, 2, 3, and 4 are all merchants reviewed by the first user account, and information objects 5 and 6 are merchants checked in by the first user account. Information objects 1, 2, 3, and 4 are connected in pairs with intra-set connecting lines, and information objects 5 and 6 are connected.

[0153] For example, when an information object corresponds to multiple user behaviors, it is necessary to determine each user behavior of the information object in turn to see whether there is an information object with the same user behavior. When multiple user behaviors corresponding to the information object have information objects with the same user behavior, the nodes of the information object will be connected multiple times.

[0154] For example, Figure 10 As shown, in the information object set of first user account 301, information objects 1, 2, 3, and 4 are all merchants reviewed by the first user account, and information objects 2, 5, and 6 are merchants checked in by the first user account. Information objects 1, 2, 3, and 4 are connected in pairs with intra-set connections, and information objects 2, 5, and 6 are connected in pairs with intra-set connections.

[0155] For example, the connection line (intra-set connection line or inter-set connection line) can be as follows Figure 11 The undirected connecting line 303 shown can also be Figure 12 Directed connection line 304 is shown. Undirected connections only represent the connection between two nodes, while directed connections can also indicate the direction of the connection. For example, if a user browses product A and then purchases product B on product A's recommended page, a directed connection line from product A's node to product B's node can be used to express this recommendation relationship.

[0156] For example, for directed links, when performing community division, the community division can only be performed along the direction of the directed link. For example, if node A points to node B, node A can only be classified into the community to which node B belongs, and node B cannot be classified into the community to which node A belongs.

[0157] Step 2023: Generate an information object network based on the nodes and the connection lines between the sets.

[0158] For example, when the connection line includes an inter-set connection line, the information object network is generated according to the nodes and the inter-set connection line. Figure 4 As shown, step 2023 includes step 2023-1: generating an information object network according to nodes, intra-set connection lines and inter-set connection lines.

[0159] For example, because information objects may be duplicated in information object sets for different user accounts, and the same information object in different information object sets corresponds to the same node in the information object network, the nodes of two information objects may be connected multiple times. For example, if user account A's information object set contains information object A and information object B, and user account B's information object set contains information object B, then when user accounts A and B are associated, there will be one intra-set connection line and one inter-set connection line between the node of information object A and the node of information object B. Similarly, when the same information object exists in multiple information object sets, there may be multiple inter-set connections between the two nodes, or multiple intra-set connections.

[0160] Therefore, it is necessary to deduplicate multiple connection lines between nodes.

[0161] When the connection line includes an inter-collection connection line, in response to the existence of multiple connection lines between the a-th node and the b-th node, the multiple inter-collection connection lines connecting the a-th node and the b-th node are deduplicated to obtain a single connection line between the a-th node and the b-th node; the a-th node and the b-th node are any two connected nodes, and a and b are positive integers; in response to the existence of an inter-collection connection line between the a-th node and the b-th node, the inter-collection connection line connecting the a-th node and the b-th node is determined to be a single connection line between the a-th node and the b-th node; based on the number of inter-collection connection lines connecting the a-th node and the b-th node, the weight of the single connection line between the a-th node and the b-th node is determined; and an information object network is generated based on the nodes, the single connection lines and the weights of the single connection lines.

[0162] When the connection lines include inter-set connection lines and / or intra-set connection lines, in response to the existence of multiple connection lines between the a-th node and the b-th node, the multiple connection lines connecting the a-th node and the b-th node are deduplicated to obtain a single connection line between the a-th node and the b-th node; the connection lines include at least one of intra-set connection lines and inter-set connection lines, the a-th node and the b-th node are any two connected nodes, and a and b are positive integers; in response to the existence of one connection line between the a-th node and the b-th node, the connection line connecting the a-th node and the b-th node is determined to be a single connection line between the a-th node and the b-th node; based on the number of connection lines connecting the a-th node and the b-th node, the weight of the single connection line between the a-th node and the b-th node is determined; and an information object network is generated based on the nodes, the single connection lines and the weights of the single connection lines.

[0163] That is, when there are multiple connection lines between two nodes, the redundant connection lines are removed and only one connection line is retained as a single connection line. In the final information object network, there is only one connection line (single connection line) between the two nodes.

[0164] For example, a single link also has a corresponding weight, and the weight of the single link is equal to the number of links between the two nodes. For example, if there are 10 links between the two nodes, the weight of the single link between the two nodes is 10.

[0165] Exemplarily, the weight of a single connection line may also be a preset value, for example, the weight of all single connection lines is 1.

[0166] For example, Figure 13 As shown, multiple connection lines between nodes are deduplicated to retain single connection lines, and the weight of the single connection line is calculated. According to the nodes, single connection lines and weights, the following can be generated: Figure 13 The information object network shown. For example, there is a single link 305 between node 1 and node 3, and the weight of the single link is w 1,3 .

[0167] Step 2031: Read the connection relationships in the information object network, divide adjacent nodes in the information object network into the same community based on the connection relationships of the nodes in the information object network, calculate the modularity of the information object network, and repeat this step to obtain multiple modularities of the information object network; adjacent nodes include two nodes with a connection relationship, and modularity is used to describe the quality of community division in the information object network.

[0168] Illustratively, this embodiment provides an exemplary embodiment of performing community division using a modularity-based Fast-Unfolding community discovery algorithm.

[0169] The Fast-Unfolding algorithm mainly consists of two stages:

[0170] The first stage is called Modularity Optimization, which mainly divides each node into the community of its adjacent nodes so that the modularity value continues to increase.

[0171] The second stage, called Community Aggregation, involves aggregating the communities divided in the first step into a single node. This means reconstructing the information object network based on the community structure generated in the previous step. This process is repeated until the structure of the information object network no longer changes.

[0172] The algorithm process is as follows:

[0173] The first step is to initialize the information object network and divide each node into different communities;

[0174] The second step is to try to divide each node into the community where its adjacent nodes are located, calculate the modularity Q of the information object network at this time, and determine whether the difference ΔQ between the modularity before and after the division is a positive number. If it is a positive number, the community division is accepted. If not, the community division is abandoned.

[0175] The third step is to repeat the above process until the modularity can no longer be increased;

[0176] In the fourth step, multiple nodes belonging to a community are treated as one node and the information object network is updated. Each node in the new information object network represents each community delineated in the third step. The second and third steps are continued until the structure of the information object network (community division) no longer changes.

[0177] For example, the calculation formula of modularity is:

[0178]

[0179] Where m is the sum of all weights in the information object network, A i,j represents the weight between node i and node j (the weight of a single link); k i represents the sum of the weights of the single link connected to node i, k i =∑ j A i,j , c i represents the community to which node i is assigned, δ(c i ,c j ) is used to determine whether node i and node j are divided into the same community. If so, it returns 1, otherwise it returns 0.

[0180] Exemplarily, the above formula is used to calculate the modularity between nodes i and j. The modularity of an information object network is the sum of the modularities between all connected nodes in the information object network. For example, if there are three nodes in the information object network, the modularity of the information object network is the sum of the three modularities between these three nodes.

[0181] Modularity refers to the proportion of connecting lines connecting nodes within the community structure in the information object network, minus the expected value of the proportion of arbitrary connections between these two nodes under the same community structure.

[0182] Exemplarily, the method of steps 2031 to 2033 is understood based on the process of the aforementioned Fast-Unfolding algorithm.

[0183] Specifically, each node in the information object network is first assigned to a community. Then, one of the nodes is assigned to the community of an adjacent node. The difference in modularity between the information object network before and after this division is calculated. If the difference is greater than zero, the division is accepted. If the difference is not positive, the division is rejected and the node is reassigned to its original community. The node is again assigned to the community of an adjacent node, and the difference in modularity between the information object network before and after the division is calculated. This process is repeated until the modularity of the information object network no longer increases, i.e., the modularity of the information object network reaches its maximum value.

[0184] Step 2032: In response to the modularity of the information object network being maximized, a community division result is obtained, and the community division result includes at least one community.

[0185] The community division of each node when the modularity of the information object network reaches its maximum value is taken as the community division result.

[0186] Step 2033: Nodes belonging to the same community are treated as one node, and the information object network is updated. The above steps are repeated until the network structure of the information object network remains unchanged.

[0187] According to the community division result obtained in step 2032, the nodes (one or more nodes) belonging to a community are merged into one node, the information object network is updated, and then the process from step 2031 to step 2032 is repeated, and each node in the information object network is again tried to be divided into the community of its adjacent node until the modularity no longer increases. The information object network is updated again according to the community division situation when the modularity no longer increases, until the network structure of the information object network no longer changes, that is, the community division result no longer changes.

[0188] like Figure 14 As shown in (1), it is an initialized information object network. Each node in the network belongs to a different community. After the first stage of Modularity Optimization, we get Figure 14 The community division result shown in (2) in the figure is that nodes with the same color are divided into the same community, that is, node 1, node 2, node 4, node 5, and node 0 are the same community, node 3, node 7, and node 6 are the same community, node 15, node 8, node 9, node 14, node 12, and node 10 are the same community, and node 11 and node 13 are the same community. At this time, the modularity of the information object network takes the maximum value. Then Figure 14 The results of (2) in the second stage of Community Aggregation are used to merge the nodes belonging to the same community into one node, and the following is obtained: Figure 14 In the information object network shown in (3), the value corresponding to each node in the figure is the modularity of the community corresponding to the node. Figure 14 The information object network shown in (3) in the figure is then subjected to the first stage of Modularity Optimization and the second stage of Community Aggregation, and finally the following is obtained: Figure 14 The information object network shown in (4) in , that is, the nodes in the information object network are finally divided into two communities.

[0189] For example, Figure 15 As shown, using the community discovery algorithm, the nodes in the information object network can be divided into multiple communities 306. Figure 15 It can be seen that the connections between nodes within a community are relatively close, while the connections between nodes in different communities are relatively sparse.

[0190] Step 2041: Obtain the label manually marked on the community, and write the label into the information object data of the information object belonging to the community in the memory.

[0191] After dividing the nodes in the information object network into multiple communities, since the nodes correspond to information objects, the information objects can also be divided into multiple communities. Then, based on the labels of each community, the labels of the communities can be used to uniformly label the information objects within the communities.

[0192] Exemplarily, the labels of a community can be manually annotated, that is, after using the above method to divide information objects into multiple communities (categories), the categories of information objects in each community are manually identified to obtain the label of the community, and then the community label is used to uniformly annotate the information objects in the community.

[0193] For example, Figure 4 As shown, step 2041 can also be replaced by step 2042.

[0194] Step 2042: Determine the label of the community based on the labeled objects belonging to the community, and write the label into the information object data of the unlabeled objects belonging to the community in the memory.

[0195] Exemplarily, the information objects in the n information object sets include labeled objects and unlabeled objects. Initially, some of the information objects in the information object set may be labeled and some may be unlabeled.

[0196] After dividing information objects into multiple communities, we can use the labels of the labeled information objects (labeled objects) within the community to determine the label of the community with the most labels. Then, we can use the community label to label the unlabeled information objects (unlabeled objects) within the community. In this way, we can use a small amount of labeled data to achieve automatic labeling of unlabeled data.

[0197] For example, Figure 16 As shown, after using the community discovery algorithm to divide the 12 information objects into 4 communities, the labels of each community are obtained respectively, and the information objects in the first community are labeled as animals 307, the information objects in the second community are labeled as food 308, the information objects in the third community are labeled as people 309, and the information objects in the fourth community are labeled as cars 310.

[0198] Step 205 : Read the user history behaviors of the user account to be recommended from the memory, and determine the recommendation tag of the recommended user account according to the information object corresponding to the user history behaviors. The recommendation tag includes the tag of the information object corresponding to the user history behaviors.

[0199] After the information objects are labeled, the information objects can be recommended to users based on the labels of the information objects.

[0200] For example, information objects can be recommended to users based on their historical user behavior. Historical user behavior includes information objects corresponding to historical user behavior in the user account. For example, tags of information objects corresponding to historical user behavior are obtained, and then, based on the tags of these information objects, user-preferred recommendation tags are determined. Recommended information objects are then determined based on the recommended tags and recommended to the user.

[0201] Step 206 : Determine the recommended object of the user account to be recommended based on the recommendation tag, where the tag of the recommended object is the same as the recommendation tag.

[0202] Exemplarily, based on the recommended tag, a recommended information object having the same tag as the recommended tag is determined from a plurality of tagged information objects.

[0203] Step 207: Send the recommended object to the client of the user account to be recommended.

[0204] To sum up, the method provided in this embodiment generates an information object network by converting the information objects in the information object set corresponding to different user accounts into an information object network based on the association relationship between user accounts, forming a topological structure of the information objects, and then calling the community discovery algorithm according to the topological structure on the information object network to divide the information objects into different communities, completing the classification of the information objects, and then realizing batch labeling of information objects in a community, thereby improving the labeling efficiency of information objects and saving human resources.

[0205] The method provided in this embodiment connects the nodes of information objects in the information object set of a user account using intra-set connection lines, thereby strengthening the connection between information objects belonging to the same user account, so that the community discovery algorithm can discover similar features between different information objects based on the connection in the topological structure, thereby more accurately performing community division.

[0206] The method provided in this embodiment divides information objects into different communities based on an information object network by using a community discovery algorithm, so that all information objects in the community can be labeled at one time according to the community label, thereby improving labeling efficiency and saving human resources.

[0207] The method provided in this embodiment determines the user's favorite tags by using the tagged information objects and the user's historical behavior, and can then recommend information objects to the user based on the user's favorite tags.

[0208] For example, an exemplary embodiment of using the labeling method of the information object provided by the present application to label a product is provided.

[0209] Exemplarily, the server obtains user data of each user account, where the user data includes commodities that have been associated with the user account (user behavior), for example, commodities purchased by the user account, commodities added to the shopping cart, commodities collected, commodities browsed, commodities shared, and commodities followed, and generates a separate commodity set for the commodities corresponding to each user account.

[0210] The server obtains the association relationship between user accounts, for example, obtains the user accounts associated with the user account based on the user account's friend list, the user account's follow list, the user account's message sending list, etc.

[0211] The server constructs a product network based on multiple product sets of multiple user accounts and the association relationship between the user accounts. The product network includes nodes corresponding to products and connecting lines for connecting two associated nodes. The products corresponding to the two associated nodes belong to the product sets corresponding to the two associated user accounts.

[0212] Exemplarily, the server fully connects the nodes corresponding to the products in each product set, and fully connects the nodes corresponding to the two product sets corresponding to two associated user accounts, to form a product network. Exemplarily, the weight of a connection line in the product network is the number of connections between the two nodes. For example, if the nodes of product A and product B are connected once based on the association between user accounts A and B, and the nodes of product A and product B are connected again based on the association between user accounts C and D, then the weight of the connection line between the nodes of product A and product B is 2.

[0213] The server uses a community discovery algorithm to divide the commodities in the commodity network into communities and obtains multiple communities.

[0214] The server obtains the labels manually annotated for each community and annotates the products in the community according to the labels.

[0215] After the server labels the products using the above method, it can recommend products that the user may be interested in based on the user's preferences. For example, the server recommends products with corresponding tags to the user based on the product tag preferences set by the user.

[0216] To sum up, the method provided in this embodiment constructs a product network by using the user's product data and the association data between users, and classifies the products based on the product network using a community discovery algorithm, thereby realizing rapid batch labeling of product labels. When the number of products is relatively large, this method can be used to quickly label a large number of products, thereby improving the labeling efficiency of product labels and facilitating the recommendation of products to users based on product labels.

[0217] The following is an embodiment of the device of the present application. For details not described in detail in the embodiment of the device, reference can be made to the corresponding records in the above method embodiment, and no further details will be given herein.

[0218] Figure 17 A schematic diagram of a device for labeling information objects provided by an exemplary embodiment of the present application is shown. The device can be implemented as all or part of a computer device through software, hardware, or a combination of both. The device includes:

[0219] A reading module 401 is configured to read from a memory n information object sets corresponding to n user accounts, as well as associations between user accounts, wherein each information object set includes at least one information object, and n is an integer greater than 1;

[0220] a generating module 402 for generating an information object network based on the information object set and the association relationship, the information object network comprising nodes corresponding to the information objects and a connecting line connecting two associated nodes, wherein the information objects of the two associated nodes respectively belong to the information object sets corresponding to the two user accounts having the association relationship;

[0221] The reading module 401 is used to read the connection relationship in the information object network;

[0222] A community module 403 is configured to call a community discovery algorithm to divide the information objects in the information object network into communities to obtain at least one community, wherein the community includes at least one information object;

[0223] An acquisition module 407 is used to acquire the tag of the community;

[0224] The writing module 404 is configured to write the tag into the information object data of the information object belonging to the community in the memory.

[0225] In an optional embodiment, the generating module 402 is configured to generate the node according to the information object in the information object set in response to at least two user accounts among the n user accounts having the association relationship, wherein the information object corresponds to the node in a one-to-one manner;

[0226] The generating module 402 is configured to generate an inter-set connection line based on the association relationship, wherein the inter-set connection line is configured to connect a node corresponding to an information object in the i-th information object set and a node corresponding to an information object in the j-th information object set, wherein the i-th user account corresponding to the i-th information object set and the j-th user account corresponding to the j-th information object set have the association relationship, where i and j are positive integers not greater than n, and n is an integer greater than 1;

[0227] The generating module 402 is configured to generate the information object network according to the nodes and the inter-assembly connection lines.

[0228] The generating module 402 is configured to generate, in response to the association between the i-th user account and the j-th user account among the n user accounts, the inter-set connection line connecting the node of the x-th information object in the i-th information object set and the node of the y-th information object in the j-th information object set;

[0229] The xth information object includes any information object in the i-th information object set, the y-th information object includes any information object in the j-th information object set, i and j are positive integers not greater than n, x and y are positive integers, and n is an integer greater than 1.

[0230] In an optional embodiment, the information object in the information object set corresponds to a user behavior;

[0231] The generating module 402 is configured to generate, in response to the i-th user account and the j-th user account in the n user accounts having the association relationship, and the x-th information object in the i-th information object set and the y-th information object in the j-th information object set corresponding to the same user behavior, generate the inter-set connection line connecting the node of the x-th information object and the node of the y-th information object;

[0232] The xth information object includes any information object in the i-th information object set, the y-th information object includes any information object in the j-th information object set, i and j are positive integers not greater than n, x and y are positive integers, and n is an integer greater than 1.

[0233] In an optional embodiment, the generating module 402 is configured to generate an intra-set connection line according to the information object set, wherein the intra-set connection line is used to connect two nodes corresponding to two information objects in the i-th information object set;

[0234] The generating module 402 is configured to generate the information object network according to the nodes, the inter-assembly connection lines and the intra-assembly connection lines.

[0235] In an optional embodiment, the generation module 402 is used to generate the intra-set connection line connecting any two nodes in a fully connected manner for the nodes corresponding to all information objects in the i-th information object set, where i is a positive integer not greater than n, and n is a positive integer.

[0236] In an optional embodiment, the information objects in the information object set correspond to user behaviors; the generating module 402 is configured to generate, in response to the xth information object and the zth information object in the ith information object set corresponding to the same user behaviors, the intra-set connecting line connecting the node of the xth information object and the node of the zth information object;

[0237] The xth information object includes any information object in the i-th information object set, the z-th information object includes any information object in the i-th information object set that is different from the x-th information object, i is a positive integer not greater than n, x and z are positive integers, and n is an integer greater than 1.

[0238] In an optional embodiment, the same information objects in different information object sets correspond to the same node in the information object network;

[0239] The generating module 402 is configured to, in response to the presence of multiple inter-assembly connection lines between the a-th node and the b-th node, remove duplicates from the multiple inter-assembly connection lines connecting the a-th node and the b-th node to obtain a single connection line between the a-th node and the b-th node; the a-th node and the b-th node are any two connected nodes, and a and b are positive integers;

[0240] The generating module 402 is configured to, in response to the existence of one inter-assembly connection line between the a-th node and the b-th node, determine the inter-assembly connection line connecting the a-th node and the b-th node as the single connection line between the a-th node and the b-th node;

[0241] The generating module 402 is configured to determine the weight of the single connection line between the a-th node and the b-th node according to the number of the inter-collection connection lines connecting the a-th node and the b-th node;

[0242] The generating module 402 is configured to generate the information object network according to the nodes, the single connection lines and the weights of the single connection lines.

[0243] In an optional embodiment, the same information objects in different information object sets correspond to the same node in the information object network;

[0244] The generating module 402 is configured to, in response to the presence of multiple connection lines between the a-th node and the b-th node, remove duplicates from the multiple connection lines connecting the a-th node and the b-th node to obtain a single connection line between the a-th node and the b-th node; the connection line includes at least one of an intra-set connection line and an inter-set connection line, the a-th node and the b-th node are any two connected nodes, and a and b are positive integers;

[0245] The generating module 402 is configured to, in response to the existence of one connection line between the a-th node and the b-th node, determine the connection line connecting the a-th node and the b-th node as the single connection line between the a-th node and the b-th node;

[0246] The generating module 402 is configured to determine a weight of the single connection line between the a-th node and the b-th node according to the number of connection lines connecting the a-th node and the b-th node;

[0247] The generating module 402 is configured to generate the information object network according to the nodes, the single connection lines and the weights of the single connection lines.

[0248] In an optional embodiment, the reading module 401 is used to read the connection relationship in the information object network;

[0249] The community module 403 is configured to group adjacent nodes in the information object network into the same community based on the connection relationship between the nodes in the information object network, calculate the modularity of the information object network, and repeat this step to obtain multiple modularities of the information object network; the adjacent nodes include two nodes with the connection relationship, and the modularity is used to describe the quality of the community division in the information object network;

[0250] The community module 403 is configured to obtain a community division result in response to the modularity of the information object network being maximized, wherein the community division result includes at least one community;

[0251] The community module 403 is used to treat nodes belonging to the same community as one node, update the information object network, and repeat the above steps until the network structure of the information object network remains unchanged.

[0252] In an optional embodiment, the acquisition module 407 is configured to acquire the label annotated on the community using a manual labeling method;

[0253] The writing module 404 is configured to write the tag into the information object data of the information object belonging to the community in the memory.

[0254] In an optional embodiment, the information objects in the n information object sets include labeled objects and unlabeled objects;

[0255] The acquisition module 407 is configured to determine the label of the community based on the labeled objects belonging to the community;

[0256] The writing module 404 is configured to write the tag into the information object data of the untagged object in the community in the memory.

[0257] In an optional embodiment, the reading module 401 is configured to read the user history behavior of the user account to be recommended from a memory;

[0258] A recommendation module 405 is configured to determine a recommendation tag for the recommended user account based on the information object corresponding to the user's historical behavior, wherein the recommendation tag includes a tag of the information object corresponding to the user's historical behavior;

[0259] The recommendation module 405 is configured to determine a recommendation object for the user account to be recommended based on the recommendation tag, wherein the tag of the recommendation object is the same as the recommendation tag;

[0260] The sending module 406 is configured to send the recommended object to the client of the user account to be recommended.

[0261] Figure 18 1800 is a schematic diagram of the structure of a server provided by one embodiment of the present application. Specifically, server 1800 includes a central processing unit (CPU) 1801, a system memory 1804 including random access memory (RAM) 1802 and read-only memory (ROM) 1803, and a system bus 1805 connecting system memory 1804 and CPU 1801. Server 1800 also includes a basic input / output system (I / O system) 1806 that facilitates information transmission between various components within the computer, and a mass storage device 1807 for storing an operating system 1813, application programs 1814, and other program modules 1815.

[0262] The basic input / output system 1806 includes a display 1808 for displaying information and an input device 1809, such as a mouse and keyboard, for user account input. Both the display 1808 and the input device 1809 are connected to the central processing unit 1801 via an input / output controller 1810 connected to the system bus 1805. The basic input / output system 1806 may also include an input / output controller 1810 for receiving and processing input from various other devices, such as a keyboard, mouse, or electronic stylus. Similarly, the input / output controller 1810 also provides output to a display screen, printer, or other type of output device.

[0263] The mass storage device 1807 is connected to the central processing unit 1801 via a mass storage controller (not shown) connected to the system bus 1805. The mass storage device 1807 and its associated computer-readable media provide non-volatile storage for the server 1800. In other words, the mass storage device 1807 may include computer-readable media (not shown) such as a hard disk or a CD-ROM drive.

[0264] Without loss of generality, computer-readable media may include computer storage media and communication media. Computer storage media include volatile and non-volatile, removable and non-removable media implemented using any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. Computer storage media include RAM, ROM, Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), flash memory or other solid-state storage technologies, CD-ROM, Digital Versatile Disc (DVD) or other optical storage, tape cassettes, magnetic tape, disk storage or other magnetic storage devices. Of course, those skilled in the art will appreciate that computer storage media are not limited to the aforementioned types. The above-mentioned system memory 1804 and mass storage device 1807 may be collectively referred to as memory.

[0265] According to various embodiments of the present application, the server 1800 may also be connected to a remote computer on a network such as the Internet for operation. That is, the server 1800 may be connected to a network 1812 via a network interface unit 1811 connected to the system bus 1805, or the network interface unit 1811 may be used to connect to other types of networks or remote computer systems (not shown).

[0266] The present application also provides a terminal, which includes a processor and a memory, wherein the memory stores at least one instruction, and the at least one instruction is loaded and executed by the processor to implement the labeling method of the information object provided by each of the above method embodiments. It should be noted that the terminal can be as follows Figure 19 The terminal provided.

[0267] Figure 19The following is a block diagram of a terminal 1900 according to an exemplary embodiment of the present application. Terminal 1900 may be a smartphone, tablet computer, MP3 player (Moving Picture Experts Group Audio Layer III), MP4 player (Moving Picture Experts Group Audio Layer IV), laptop computer, or desktop computer. Terminal 1900 may also be referred to as a user account device, portable terminal, laptop terminal, desktop terminal, or other similar names.

[0268] Typically, the terminal 1900 includes a processor 1901 and a memory 1902 .

[0269] The processor 1901 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. The processor 1901 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), or a PLA (Programmable Logic Array). The processor 1901 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 1901 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 1901 may also include an AI (Artificial Intelligence) processor, which is used to handle computing operations related to machine learning.

[0270] Memory 1902 may include one or more computer-readable storage media, which may be non-transitory. Memory 1902 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices and flash memory storage devices. In some embodiments, the non-transitory computer-readable storage medium in memory 1902 is used to store at least one instruction, which is executed by processor 1901 to implement the labeling method for information objects provided in the method embodiment of the present application.

[0271] In some embodiments, terminal 1900 may optionally include a peripheral device interface 1903 and at least one peripheral device. The processor 1901, memory 1902, and peripheral device interface 1903 may be connected via a bus or signal lines. Each peripheral device may be connected to peripheral device interface 1903 via a bus, signal lines, or circuit boards. Specifically, the peripheral device may include at least one of a radio frequency circuit 1904, a display screen 1905, a camera assembly 1906, an audio circuit 1907, a positioning assembly 1908, and a power supply 1909.

[0272] The peripheral device interface 1903 can be used to connect at least one I / O (Input / Output)-related peripheral device to the processor 1901 and the memory 1902. In some embodiments, the processor 1901, the memory 1902, and the peripheral device interface 1903 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 1901, the memory 1902, and the peripheral device interface 1903 can be implemented on separate chips or circuit boards, which is not limited in this embodiment.

[0273] RF circuit 1904 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. RF circuit 1904 communicates with communication networks and other communication devices via electromagnetic signals. RF circuit 1904 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals into electrical signals. Exemplarily, RF circuit 1904 includes an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a user account identity module card, and the like. RF circuit 1904 can communicate with other terminals via at least one wireless communication protocol. Such wireless communication protocols include, but are not limited to, the World Wide Web, metropolitan area networks, intranets, various generations of mobile communication networks (2G, 3G, 4G, and 5G), wireless local area networks, and / or WiFi (Wireless Fidelity) networks. In some embodiments, RF circuit 1904 may also include circuitry related to Near Field Communication (NFC), although this application does not limit this.

[0274] The display screen 1905 is used to display a UI (User Interface). The UI may include graphics, text, icons, videos, and any combination thereof. When the display screen 1905 is a touch screen display, the display screen 1905 also has the ability to collect touch signals on the surface or above the surface of the display screen 1905. The touch signal can be input as a control signal to the processor 1901 for processing. At this time, the display screen 1905 can also be used to provide virtual buttons and / or virtual keyboards, also known as soft buttons and / or soft keyboards. In some embodiments, there can be one display screen 1905, which is set on the front panel of the terminal 1900; in other embodiments, there can be at least two display screens 1905, which are respectively set on different surfaces of the terminal 1900 or in a folding design; in still other embodiments, the display screen 1905 can be a flexible display screen, which is set on the curved surface or folding surface of the terminal 1900. Even more, the display screen 1905 can be set as a non-rectangular irregular shape, that is, a special-shaped screen. The display screen 1905 can be made of materials such as LCD (Liquid Crystal Display) and OLED (Organic Light-Emitting Diode).

[0275] The camera assembly 1906 is used to capture images or videos. Exemplarily, the camera assembly 1906 includes a front camera and a rear camera. Typically, the front camera is arranged on the front panel of the terminal, and the rear camera is arranged on the back of the terminal. In some embodiments, there are at least two rear cameras, which are any one of a main camera, a depth of field camera, a wide-angle camera, and a telephoto camera, so as to realize the fusion of the main camera and the depth of field camera to realize the background blur function, the fusion of the main camera and the wide-angle camera to realize panoramic shooting and VR (Virtual Reality) shooting function or other fusion shooting functions. In some embodiments, the camera assembly 1906 may also include a flash. The flash can be a single-color temperature flash or a dual-color temperature flash. A dual-color temperature flash refers to a combination of a warm light flash and a cold light flash, which can be used for light compensation at different color temperatures.

[0276] The audio circuit 1907 may include a microphone and a speaker. The microphone is used to collect sound waves from the user account and the environment, and convert the sound waves into electrical signals that are input into the processor 1901 for processing, or input into the RF circuit 1904 to achieve voice communication. For the purpose of stereo sound collection or noise reduction, there may be multiple microphones, each located in different parts of the terminal 1900. The microphone may also be an array microphone or an omnidirectional collection microphone. The speaker is used to convert electrical signals from the processor 1901 or the RF circuit 1904 into sound waves. The speaker may be a traditional thin film speaker or a piezoelectric ceramic speaker. When the speaker is a piezoelectric ceramic speaker, it can not only convert electrical signals into sound waves audible to humans, but also convert electrical signals into sound waves inaudible to humans for purposes such as distance measurement. In some embodiments, the audio circuit 1907 may also include a headphone jack.

[0277] Positioning component 1908 is used to locate the current geographic location of terminal 1900 to implement navigation or LBS (Location Based Service). Positioning component 1908 can be a positioning component based on the US GPS (Global Positioning System), China's Beidou system, or Russia's Galileo system.

[0278] Power supply 1909 is used to power various components in terminal 1900. Power supply 1909 can be AC ​​power, DC power, a disposable battery, or a rechargeable battery. When power supply 1909 includes a rechargeable battery, the rechargeable battery can be a wired rechargeable battery or a wireless rechargeable battery. A wired rechargeable battery is charged via a wired line, while a wireless rechargeable battery is charged via a wireless coil. The rechargeable battery can also support fast charging technology.

[0279] In some embodiments, the terminal 1900 further includes one or more sensors 1910 , including but not limited to: an acceleration sensor 1911 , a gyroscope sensor 1912 , a pressure sensor 1913 , a fingerprint sensor 1914 , an optical sensor 1915 , and a proximity sensor 1916 .

[0280] Accelerometer 1911 can detect the magnitude of acceleration along the three coordinate axes of the coordinate system established by terminal 1900. For example, accelerometer 1911 can be used to detect the components of gravity acceleration along the three coordinate axes. Processor 1901 can control display screen 1905 to display the user account interface in either landscape or portrait mode based on the gravity acceleration signal collected by accelerometer 1911. Accelerometer 1911 can also be used to collect motion data for games or user accounts.

[0281] The gyroscope sensor 1912 can detect the orientation and rotation angle of the terminal 1900. It can also work with the accelerometer 1911 to collect 3D motions of the user account on the terminal 1900. Based on the data collected by the gyroscope sensor 1912, the processor 1901 can implement the following functions: motion sensing (for example, changing the UI based on the user account's tilt operation), image stabilization during shooting, game control, and inertial navigation.

[0282] The pressure sensor 1913 can be set on the side frame of the terminal 1900 and / or the lower layer of the display screen 1905. When the pressure sensor 1913 is set on the side frame of the terminal 1900, it can detect the user account's grip signal on the terminal 1900, and the processor 1901 performs left and right hand recognition or shortcut operations based on the grip signal collected by the pressure sensor 1913. When the pressure sensor 1913 is set on the lower layer of the display screen 1905, the processor 1901 controls the operable controls on the UI interface based on the pressure operation of the user account on the display screen 1905. Operable controls include at least one of button controls, scroll bar controls, icon controls, and menu controls.

[0283] The fingerprint sensor 1914 is used to collect the fingerprint of the user account. The processor 1901 identifies the identity of the user account based on the fingerprint collected by the fingerprint sensor 1914, or the fingerprint sensor 1914 identifies the identity of the user account based on the collected fingerprint. When the identity of the user account is identified as a trusted identity, the processor 1901 authorizes the user account to perform relevant sensitive operations, such as unlocking the screen, viewing encrypted information, downloading software, making payments, and changing settings. The fingerprint sensor 1914 can be set on the front, back, or side of the terminal 1900. When a physical button or manufacturer logo is set on the terminal 1900, the fingerprint sensor 1914 can be integrated with the physical button or manufacturer logo.

[0284] Optical sensor 1915 is used to detect ambient light intensity. In one embodiment, processor 1901 can control the display brightness of display screen 1905 based on the ambient light intensity detected by optical sensor 1915. Specifically, when the ambient light intensity is high, the display brightness of display screen 1905 is increased; when the ambient light intensity is low, the display brightness of display screen 1905 is decreased. In another embodiment, processor 1901 can also dynamically adjust the shooting parameters of camera assembly 1906 based on the ambient light intensity detected by optical sensor 1915.

[0285] Proximity sensor 1916, also known as a distance sensor, is typically located on the front panel of terminal 1900. Proximity sensor 1916 is used to detect the distance between the user account and the front of terminal 1900. In one embodiment, when proximity sensor 1916 detects that the distance between the user account and the front of terminal 1900 is gradually decreasing, processor 1901 controls display screen 1905 to switch from the screen-on state to the screen-off state. When proximity sensor 1916 detects that the distance between the user account and the front of terminal 1900 is gradually increasing, processor 1901 controls display screen 1905 to switch from the screen-off state to the screen-on state.

[0286] Those skilled in the art will understand that Figure 19 The structure shown in the figure does not constitute a limitation on the terminal 1900, and the terminal 1900 may include more or fewer components than shown in the figure, or combine certain components, or adopt a different component arrangement.

[0287] The memory also includes one or more programs, which are stored in the memory and include a labeling method for the information object provided in the embodiment of the present application.

[0288] The present application also provides a computer device, which includes: a processor and a memory, wherein the storage medium stores at least one instruction, at least one program, code set or instruction set, and the at least one instruction, at least one program, code set or instruction set is loaded and executed by the processor to implement the labeling method of the information object provided by the above-mentioned method embodiments.

[0289] The present application also provides a computer-readable storage medium, which stores at least one instruction, at least one program, code set or instruction set, and the at least one instruction, at least one program, code set or instruction set is loaded and executed by a processor to implement the labeling method of the information object provided by the above-mentioned method embodiments.

[0290] The present application also provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the information object labeling method provided in the above optional implementation.

[0291] It should be understood that the term "plurality" used herein refers to two or more. "And / or" describes a relationship between associated objects, indicating that three possible relationships exist. For example, "A and / or B" can mean: A exists alone, A and B exist simultaneously, or B exists alone. The character " / " generally indicates an "or" relationship between the associated objects.

[0292] Those skilled in the art will understand that all or part of the steps of implementing the above embodiments may be accomplished by hardware, or by programs instructing related hardware to accomplish the steps. The programs may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a disk, or an optical disk, etc.

[0293] The above are only optional embodiments of the present application and are not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application should be included in the scope of protection of the present application.

Claims

1. A labeling method for an information object, characterized in that: Applied to a computer device, the method includes: Reading from a memory n information object sets corresponding to n user accounts, respectively, and associations between the user accounts, wherein the information object sets include at least one information object, and n is an integer greater than 1; In response to at least two user accounts among the n user accounts having the association relationship, generating an information object network based on the information object set and the association relationship, the information object network including nodes corresponding to the information objects and a connection line connecting two associated nodes, the information objects of the two associated nodes respectively belonging to the information object sets corresponding to the two user accounts having the association relationship; Reading the connection relationship in the information object network, calling a community discovery algorithm to divide the information objects in the information object network into communities to obtain at least one community, wherein the community includes at least one information object; A label of the community is obtained, and the label is written into the information object data of the information object belonging to the community in the memory.

2. The method according to claim 1, characterized in that In response to at least two user accounts among the n user accounts having the association relationship, generating an information object network according to the information object set and the association relationship includes: In response to at least two user accounts among the n user accounts having the association relationship, generating the node according to the information object in the information object set, wherein the information object corresponds to the node in a one-to-one manner; generating an inter-set connection line based on the association relationship, wherein the inter-set connection line is used to connect a node corresponding to an information object in the i-th information object set and a node corresponding to an information object in the j-th information object set, wherein the i-th user account corresponding to the i-th information object set and the j-th user account corresponding to the j-th information object set have the association relationship, where i and j are positive integers not greater than n, and n is an integer greater than 1; The information object network is generated according to the nodes and the inter-assembly connection lines.

3. The method according to claim 2, characterized in that Generating inter-set connection lines according to the association relationship includes: In response to the association relationship between the i-th user account and the j-th user account among the n user accounts, generating the inter-set connection line connecting the node of the x-th information object in the i-th information object set and the node of the y-th information object in the j-th information object set; The xth information object includes any information object in the i-th information object set, the y-th information object includes any information object in the j-th information object set, i and j are positive integers not greater than n, x and y are positive integers, and n is an integer greater than 1.

4. The method according to claim 2, characterized in that The information object in the information object set corresponds to a user behavior; Generating inter-set connection lines according to the association relationship includes: In response to the i-th user account and the j-th user account among the n user accounts having the association relationship, and the x-th information object in the i-th information object set and the y-th information object in the j-th information object set corresponding to the same user behavior, generating the inter-set connection line connecting the node of the x-th information object and the node of the y-th information object; The xth information object includes any information object in the i-th information object set, the y-th information object includes any information object in the j-th information object set, i and j are positive integers not greater than n, x and y are positive integers, and n is an integer greater than 1.

5. The method according to any one of claims 2 to 4, characterized in that: The method further comprises: generating an intra-set connection line according to the information object set, wherein the intra-set connection line is used to connect two nodes corresponding to two information objects in the i-th information object set; The step of constructing the information object network according to the nodes and the inter-collection connection lines includes: The information object network is generated according to the nodes, the inter-assembly connection lines and the intra-assembly connection lines.

6. The method according to claim 5, characterized in that Generating an intra-set connection line according to the information object set includes: The nodes corresponding to all information objects in the i-th information object set are used to generate the intra-set connection line connecting any two nodes in a fully connected manner, where i is a positive integer not greater than n, and n is a positive integer.

7. The method according to claim 5, characterized in that The information objects in the information object set correspond to user behaviors; and generating a connection line within the set according to the information object set includes: In response to the user behaviors corresponding to the xth information object and the zth information object in the i-th information object set being the same, generating the intra-set connection line connecting the node of the xth information object and the node of the zth information object; The xth information object includes any information object in the i-th information object set, the z-th information object includes any information object in the i-th information object set that is different from the x-th information object, i is a positive integer not greater than n, x and z are positive integers, and n is an integer greater than 1.

8. The method according to any one of claims 2 to 4, characterized in that: The same information objects in different information object sets correspond to the same node in the information object network, and generating the information object network according to the nodes and the inter-set connection lines includes: In response to the presence of a plurality of inter-assembly connection lines between the a-th node and the b-th node, duplicates are removed from the plurality of inter-assembly connection lines connecting the a-th node and the b-th node to obtain a single connection line between the a-th node and the b-th node; the a-th node and the b-th node are any two connected nodes, and a and b are positive integers; In response to the existence of one inter-collection connection line between the a-th node and the b-th node, determining the inter-collection connection line connecting the a-th node and the b-th node as the single connection line between the a-th node and the b-th node; Determining a weight of the single connection line between the a-th node and the b-th node according to the number of the inter-collection connection lines connecting the a-th node and the b-th node; The information object network is generated according to the nodes, the single-links and the weights of the single-links.

9. The method according to claim 5, characterized in that The same information objects in different information object sets correspond to the same node in the information object network, and generating the information object network according to the nodes, the inter-set connection lines, and the intra-set connection lines includes: In response to the presence of a plurality of connection lines between the a-th node and the b-th node, duplicate connection lines connecting the a-th node and the b-th node are removed to obtain a single connection line between the a-th node and the b-th node; the connection line includes at least one of an intra-set connection line and an inter-set connection line, the a-th node and the b-th node are any two connected nodes, and a and b are positive integers; In response to the existence of one connection line between the a-th node and the b-th node, determining the connection line connecting the a-th node and the b-th node as the single connection line between the a-th node and the b-th node; Determining a weight of the single connection line between the a-th node and the b-th node according to the number of the connection lines connecting the a-th node and the b-th node; The information object network is generated according to the nodes, the single-links and the weights of the single-links.

10. The method according to any one of claims 1 to 4, characterized in that: The acquiring of the tag of the community and writing the tag into the information object data of the information object belonging to the community in the memory includes: The label marked on the community by manual labeling is obtained, and the label is written into the information object data of the information object belonging to the community in the memory.

11. The method according to any one of claims 1 to 4, characterized in that: The information objects in the n information object sets include labeled objects and unlabeled objects; The acquiring of the tag of the community and writing the tag into the information object data of the information object belonging to the community in the memory includes: A label of the community is determined based on the labeled objects belonging to the community, and the label is written into the information object data of the unlabeled objects belonging to the community in the memory.

12. The method according to any one of claims 1 to 4, characterized in that: The method further comprises: Reading historical user behaviors of the user account to be recommended from a memory, and determining a recommendation tag for the recommended user account according to the information object corresponding to the historical user behaviors, wherein the recommendation tag includes a tag of the information object corresponding to the historical user behaviors; Determining a recommendation object for the user account to be recommended based on the recommendation tag, wherein the tag of the recommendation object is the same as the recommendation tag; The recommended object is sent to the client of the user account to be recommended.

13. A label marking device for an information object, characterized in that: The device comprises: a reading module, configured to read from a memory n information object sets corresponding to n user accounts, as well as associations between user accounts, wherein the information object sets include at least one information object, and n is an integer greater than 1; a generating module configured to generate, in response to at least two user accounts among the n user accounts having the association relationship, an information object network based on the information object set and the association relationship, the information object network comprising nodes corresponding to the information objects and a connecting line connecting two associated nodes, the information objects of the two associated nodes respectively belonging to the information object sets corresponding to the two user accounts having the association relationship; The reading module is used to read the connection relationship in the information object network; A community module, configured to call a community discovery algorithm to perform community division on the information objects in the information object network to obtain at least one community, wherein the community includes at least one information object; An acquisition module, used to acquire the label of the community; A writing module is used to write the tag into the information object data of the information object belonging to the community in the memory.

14. A computer device, comprising: A processor and a memory, wherein the memory stores at least one instruction, at least one program, a code set, or an instruction set, and the at least one instruction, the at least one program, the code set, or the instruction set is loaded and executed by the processor to implement the labeling method for an information object as described in any one of claims 1 to 12.

15. A computer-readable storage medium, characterized in that The storage medium stores at least one instruction, at least one program, a code set, or an instruction set, and the at least one instruction, the at least one program, the code set, or the instruction set is loaded and executed by a processor to implement the labeling method for an information object as described in any one of claims 1 to 12.