CN112215684B - Clustering method and device for target controllable objects - Google Patents

Clustering method and device for target controllable objects Download PDF

Info

Publication number
CN112215684B
CN112215684B CN202011187274.8A CN202011187274A CN112215684B CN 112215684 B CN112215684 B CN 112215684B CN 202011187274 A CN202011187274 A CN 202011187274A CN 112215684 B CN112215684 B CN 112215684B
Authority
CN
China
Prior art keywords
state information
running state
operation state
attribute
target controllable
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011187274.8A
Other languages
Chinese (zh)
Other versions
CN112215684A (en
Inventor
马文博
赵宇
蒋冰
庄伟超
吴国祖
金朝林
危毅
黄耀鹏
叶雯文
李家昌
邓辉
葛文辉
冯艺超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202011187274.8A priority Critical patent/CN112215684B/en
Publication of CN112215684A publication Critical patent/CN112215684A/en
Application granted granted Critical
Publication of CN112215684B publication Critical patent/CN112215684B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

The embodiment of the application provides a clustering method and device for target controllable objects, and relates to the technical field of computers, wherein the method comprises the following steps: aiming at a target controllable object set to be clustered, respectively obtaining an operation state information set of each target controllable object; determining the running state attribute corresponding to each running state information sequence in the running state information set of the target controllable object according to at least one running state information in the corresponding running state information sequence for each target controllable object to obtain the running state attribute set of each target controllable object; and determining the similarity of different target controllable objects based on the positive running state attribute subset and the negative running state attribute subset in the running state attribute set of each target controllable object, and clustering each target controllable object based on the similarity. The accuracy and the universality of clustering are improved.

Description

Clustering method and device for target controllable objects
Technical Field
The embodiment of the application relates to the technical field of computers, in particular to a clustering method and device for target controllable objects.
Background
With the development of computer technology and network technology, service providers provide more and more services to users through networks. The application program service provider can provide services of downloading applications for users, and recommending other applications after the users download the applications, the shopping service provider provides services of commodity browsing, shopping and the like for the users, and recommends other commodities after the users purchase any commodity, the video service provider provides services of video watching, downloading, uploading and the like for the users, and recommends other videos after the users watch any video, so that in order to accurately recommend the users, the similarity between a controllable object used by the users and other controllable objects to be recommended needs to be determined, clustering is carried out based on the similarity, and the recommendation of other controllable objects in a clustering set is facilitated.
In the related art, the similarity is generally determined based on the attribute of the controllable object, for example, the controllable object used by the user 1 is a video application, and other controllable objects recommended to the user 1 are also video applications. However, determining the similarity between different controllable objects only by the attributes of the controllable objects may cause other controllable objects recommended to the user to all have the same attribute or similar attributes, resulting in that the recommended other controllable objects are not interesting to the user, and thus the effectiveness of the recommendation of the other controllable objects is low.
Disclosure of Invention
The embodiment of the application provides a clustering method and device for target controllable objects, which are used for accurately determining the similarity between different target controllable objects based on positive running state attributes and negative running state attributes corresponding to different target controllable objects so as to effectively recommend the target controllable objects.
In one aspect, an embodiment of the present application provides a method for clustering target controllable objects, where the method includes:
for a target controllable object set to be clustered, respectively obtaining an operation state information set of each target controllable object, wherein the operation state information set of each target controllable object comprises at least one operation state information sequence, each operation state information sequence comprises operation state information in at least two continuous time segments when the target controllable object is controlled by the same control object, each operation state information is determined based on the control behavior of the control object on the target controllable object, and the operation state information represents a used state or an unused state;
determining an operation state attribute corresponding to each operation state information sequence in the operation state information set of the target controllable object according to at least one operation state information in the corresponding operation state information sequence for each target controllable object to obtain an operation state attribute set of each target controllable object, wherein the operation state attribute comprises a positive operation state attribute or a negative operation state attribute;
And determining the similarity of different target controllable objects based on the positive running state attribute subset and the negative running state attribute subset in the running state attribute set of each target controllable object, and clustering each target controllable object based on the similarity.
In one aspect, an embodiment of the present application provides a clustering apparatus for target controllable objects, including:
an operation state information set obtaining unit, configured to obtain, for a target controllable object set to be clustered, an operation state information set of each target controllable object, where each operation state information set of each target controllable object includes at least one operation state information sequence, each operation state information sequence includes operation state information in at least two consecutive time segments when the target controllable object is controlled by the same control object, each operation state information is determined based on a control behavior of the control object on the target controllable object, and the operation state information characterizes a used state or an unused state;
the running state attribute set determining unit is used for determining running state attributes corresponding to each running state information sequence in the running state information set of the target controllable object according to at least one running state information in the corresponding running state information sequence respectively to obtain a running state attribute set of each target controllable object, wherein the running state attributes comprise positive running state attributes or negative running state attributes;
And the clustering unit is used for determining the similarity of different target controllable objects based on the positive running state attribute subset and the negative running state attribute subset in the running state attribute set of each target controllable object, and clustering each target controllable object based on the similarity.
Optionally, the clustering unit is specifically configured to:
taking a first set value corresponding to the running state attribute set of each target controllable object as a first coordinate value of a first coordinate axis in a clustering coordinate system, and taking a second set value corresponding to the running state attribute set of each target controllable object as a second coordinate value of a second coordinate axis in the clustering coordinate system;
determining the coordinate position of each target controllable object in a clustering coordinate system based on the first coordinate value and the second coordinate value corresponding to each target controllable object;
based on the coordinate position of each target controllable object in the cluster coordinate system, the similarity of different target controllable objects is determined.
In one aspect, embodiments of the present application provide a computer device including a memory, a processor, and a computer program stored on the memory and executable on the processor, the processor implementing the steps of a clustering method of target controllable objects when the processor executes the program.
In one aspect, embodiments of the present application provide a computer-readable storage medium storing a computer program executable by a computer device, which when executed on the computer device, causes the computer device to perform a method of clustering target controllable objects.
In one aspect, embodiments of the present application provide a computer program product comprising a computer program or instructions that, when executed, implement a clustering method in which at least one processor is capable of executing a target controllable object.
In the embodiment of the present application, for each target controllable object to be clustered, an operation state information set of each target controllable object is obtained respectively, where the set characterizes operation state information in at least two consecutive time segments when each target controllable object is controlled by a plurality of control objects, and based on each time segment and the corresponding operation state information, an operation state sequence corresponding to each control object is determined, and the operation state sequence of each control object forms an operation information set of each target control object.
Further, since the running state information set of each target controllable object includes the running state information corresponding to each time segment, and the running state information has different characterization meanings, the running state attribute of the running state information sequence corresponding to the corresponding target controllable object can be determined when each control object is controlled based on the different running state information and the corresponding characterization meanings, specifically, the running state attribute is classified into a positive running state attribute or a negative running state attribute, that is, each control object controlling any target controllable object corresponds to one running state attribute.
After determining the running state attributes of all the running state information sequences corresponding to each target operable object, the running state attribute set of each target operable object can be obtained, wherein the running state attribute set comprises a positive running state subset and a negative running state subset.
In the embodiment of the application, the similarity of different target controllable objects is determined based on a positive running state attribute subset and a negative running state attribute subset in the running state attribute set of each target controllable object, and each target controllable object is clustered based on the similarity.
As can be seen from the foregoing, in the clustering method for the controllable objects of different targets in the embodiment of the present application, the similarity is determined based on the positive running state and the negative running state corresponding to the controllable objects of different targets, and the positive running state and the negative running state are determined based on the control behavior of the control object, that is, the control behavior similarity between the controllable objects of different targets is determined from the control behavior of each controllable object of different targets, and the controllable objects of different targets are clustered by the similarity, that is, the controllable objects of multiple targets with similar control behavior characteristics are clustered into one cluster, so that the recommendation, the analysis and other purposes are facilitated.
In the embodiment of the application, different target controllable objects with similar control behaviors are clustered into one cluster, so that a barrier for clustering according to the attribute in the related technology is broken through, the accuracy and the breadth of clustering are improved, the effectiveness of recommending other target controllable objects is further improved, and the feeling of the control object is improved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the description of the embodiments will be briefly described below, it being obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 (a) is a schematic diagram of an application scenario provided in an embodiment of the present application;
fig. 1 (b) is a schematic diagram of an application scenario provided in an embodiment of the present application;
FIG. 2 is a schematic flow chart of a method for controlling an object according to an embodiment of the present application;
FIG. 3 is an intent of a set of operational state information for each target controllable object provided in an embodiment of the present application;
fig. 4 is a schematic diagram of a cluster coordinate system provided in an embodiment of the present application;
Fig. 5 is a schematic view of an application scenario provided in an embodiment of the present application;
fig. 6 is a schematic diagram of an application scenario provided in an embodiment of the present application;
fig. 7 is a schematic structural diagram of a target controllable object device according to an embodiment of the present application;
fig. 8 is a schematic structural diagram of a computer device according to an embodiment of the present invention.
Detailed Description
For the purposes of making the objects, technical solutions and advantages of the present application more apparent, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application, and it is apparent that the described embodiments are only some embodiments of the present application, but not all embodiments. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are within the scope of the present disclosure. Embodiments and features of embodiments in this application may be combined with each other arbitrarily without conflict. Also, while a logical order is depicted in the flowchart, in some cases, the steps depicted or described may be performed in a different order than presented herein.
For ease of understanding, terms referred to in the embodiments of the present application are explained below.
In addition, it is to be understood that the terms "system" and "network" in embodiments of the present application may be used interchangeably. "at least one" means one or more, and "a plurality" means two or more. "and/or", describes an association relationship of an association object, and indicates that there may be three relationships, for example, a and/or B, and may indicate: a alone, a and B together, and B alone, wherein a, B may be singular or plural. The character "/" generally indicates that the context-dependent object is an "or" relationship. "at least one of" or the like means any combination of these items, including any combination of single item(s) or plural items(s). For example, at least one (one) of a, b or c may represent: a, b, c, a-b, a-c, b-c, or a-b-c, wherein a, b, c may be single or plural. And, unless specified to the contrary, the embodiments of the present application refer to the ordinal terms "first," "second," etc., as used to distinguish between multiple objects, and are not to be construed as limiting the order, timing, priority, or importance of the multiple objects. For example, the first set of values and the second set of values are merely to distinguish between numerical representations of different sets, and are not intended to represent differences in priority or importance of the numerical values of the two sets.
Target controllable object: refers to an object that can be controlled and that can implement different usage states based on different control actions, which object can be an application App, i.e. when App is controlled App can be a user of usage state or can be an unused state; the object may be video, music, text, or the like, or may be an online commodity, or the like, and is not limited thereto.
In this embodiment, the usage status information of the target controllable object is used to characterize different usage statuses, where the different usage statuses correspond to the different usage status information. For example, if the target controllable object is App, the usage state information of App may be open state information, which characterizes the App as being in use.
Control object: the control object can be a user of the target controllable object, the user is used for operating the control object, the operations form control behaviors, and different control behaviors lead the target controllable object to have different running state information so as to obtain characterization of the different running state information.
In the embodiment of the present application, the control behavior generally includes two kinds, one is a behavior of changing the target controllable object from the unused state to the used state, and one is a behavior of changing the target controllable object from the used state to the unused state.
For example, when the target controllable object is App, the control actions may be a start App action, an install App action, an action to change App from an unused state to a used state, and an unload App action, an action to change the target controllable object from a used state to an unused state.
Running state information sequence: the information sequence is arranged according to time sequence, and the time sequence can be according to the sequence of collecting the running state information from far to near, from near to far or other time sequences.
Run state attribute: the attribute corresponding to each running state information sequence may include a positive running state attribute and a negative running state attribute, and each running state information sequence corresponds to one running state attribute, where different running state arrangements in the running state information sequence may cause the corresponding running state attributes to be different.
Having described the above terms, the concepts of the present application will now be described based on the problems existing in the related art.
Along with the increasing functions of terminal devices such as smart phones and tablet computers, controllable objects displayed on terminals such as smart phones and tablet computers are increasingly abundant and diversified. The diversity of controllable object types brings rich and diverse user experience to the terminal user, and simultaneously adds a selection difficulty to the terminal user. In order to conveniently and quickly select controllable objects meeting the requirements or preferences of end users from various controllable objects, recommended services of various controllable objects have been developed.
The principle of the recommendation service of the various controllable objects is to recommend based on the similarity between the various controllable objects, so that the similarity between the various controllable objects needs to be determined first.
In the related art, the method for determining the similarity between various controllable objects is determined based on the attribute of the controllable object, for example, the controllable object 1 is installed in the terminal device of the user 1, the controllable object 1 is a video application App1, and the other controllable objects similar to the controllable object 1 are determined as video application App2; the controllable object 2 is installed in the terminal equipment of the user 2, the controllable object 2 is a shopping application App1, and the other controllable objects similar to the controllable object 2 are determined to be the shopping application App2.
From the above, although it is possible in the related art to determine the similarity between different controllable objects based on the attributes of the controllable objects, cluster based on the similarity, and recommend other controllable objects through the clustering result, the controllable objects recommended in the related art are similar to the attributes of the controllable objects operated by the control objects, and the occurrence probability of redundant controllable objects is high, so that the effectiveness of controllable object recommendation is low and the applicability is poor.
Based on the above-mentioned problems, the inventor of the present application first proposes a clustering method for target controllable objects, in this embodiment of the present application, for each target controllable object to be clustered, a running state information set of each target controllable object is obtained respectively, where the set characterizes running state information in at least two consecutive time segments when each target controllable object is controlled by a plurality of control objects, and based on each time segment and the corresponding running state information, a running state sequence corresponding to each control object is determined, and the running state sequence of each control object forms a running information set of each target control object.
Further, since the running state information set of each target controllable object includes the running state information corresponding to each time segment, and the running state information has different characterization meanings, the running state attribute of the running state information sequence corresponding to the corresponding target controllable object can be determined when each control object is controlled based on the different running state information and the corresponding characterization meanings, specifically, the running state attribute is classified into a positive running state attribute or a negative running state attribute, that is, each control object controlling any target controllable object corresponds to one running state attribute.
After determining the running state attributes of all the running state information sequences corresponding to each target operable object, the running state attribute set of each target operable object can be obtained, wherein the running state attribute set comprises a positive running state subset and a negative running state subset.
In the embodiment of the application, the similarity of different target controllable objects is determined based on a positive running state attribute subset and a negative running state attribute subset in the running state attribute set of each target controllable object, and each target controllable object is clustered based on the similarity.
As can be seen from the foregoing, in the clustering method for the controllable objects of different targets in the embodiment of the present application, the similarity is determined based on the positive running state and the negative running state corresponding to the controllable objects of different targets, and the positive running state and the negative running state are determined based on the control behavior of the control object, that is, the control behavior similarity between the controllable objects of different targets is determined from the control behavior of each controllable object of different targets, and the controllable objects of different targets are clustered by the similarity, that is, the controllable objects of multiple targets with similar control behavior characteristics are clustered into one cluster, so that the recommendation, the analysis and other purposes are facilitated.
In the embodiment of the application, different target controllable objects with similar control behaviors are clustered into one cluster, so that a barrier for clustering according to the attribute in the related technology is broken through, the accuracy and the breadth of clustering are improved, the effectiveness of recommending other target controllable objects is further improved, and the feeling of the control object is improved.
After introducing the inventive concept of the present application, a system architecture diagram applicable to the present application is first introduced, and referring to fig. 1 (a), the system architecture at least includes at least one terminal device 101 and at least one server 102, where a plurality of controllable objects can be operated in the terminal device 101, the server 102 can obtain an operation state information set of each controllable object, the server 102 determines a positive operation state attribute subset and a negative operation state attribute subset in an operation state attribute set of each controllable object based on the obtained operation state information set of each controllable object, determines similarity of different target controllable objects, and clusters each target controllable object based on the similarity.
In the embodiment of the present application, a client is installed in the terminal device 101, and the client may correspond to a controllable object. The client in the terminal device 101 may be a browser client, a video application client, an application client of a software store or the like. The client in the terminal device 101 is a client of each application, that is, each controllable independent can be run through the terminal device 101, and status information data of each controllable object in the terminal device 101 is reported to the server 102.
The terminal device 101 may be, but is not limited to, a smart phone, a tablet computer, a notebook computer, a desktop computer, a smart speaker, a smart television, a smart watch, etc.
Further, the terminal device 101 may install each application client in an active manner (e.g. by downloading a software store application) or in a passive manner (pre-installation), and after opening each application client, monitor the state information change of each target controllable object on the interface of the terminal device 101.
In this embodiment of the present application, the server 102 is an electronic device that provides computing power, and the server 102 performs data analysis and statistics according to the status information data of each target controllable object reported by the terminal device 101, so as to obtain a clustering result. The server 102 may be an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, or may be a cloud server providing cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, a content delivery network (Content Delivery Network, CDN), basic cloud computing services such as big data and an artificial intelligence platform. The terminal device 101 and the server 102 may be directly or indirectly connected through wired or wireless communication, which is not limited herein.
Further, as shown in fig. 1 (b), by way of example explaining the structure of the terminal device 101 and the server 102, the terminal device 101 may include one or more processors 1011, a memory 1012, an I/O interface 1013 interacting with the server 102, a display panel 1014, and the like. The terminal device 101 may be, but is not limited to, a smart phone, a tablet computer, a notebook computer, a desktop computer, a smart speaker, a smart television, a smart watch, etc.
In the present embodiment, the server 102 may include one or more processors 1021, memory 1022, and I/O interfaces 1023 that interact with the terminal device 101, etc. In addition, server 102 can also configure database 1024.
In the embodiment of the present application, after the server 102 performs data analysis and statistics, the results may be stored in the memory 1022 or may be stored in another storage device, which is not limited herein.
Illustratively, a software store client is installed in the terminal device 101, and when the terminal device 101 downloads and installs a software store application, a software development kit SDK is installed at the same time, so as to monitor state information of each target controllable object in the terminal device 101, and report the state information of each target controllable object to the server 102.
Specifically, the processing procedure of the server 102 for the running state information of each target controllable object reported by the terminal device 101 is: for a target controllable object set to be clustered, respectively obtaining an operation state information set of each target controllable object, wherein the operation state information set of each target controllable object comprises at least one operation state information sequence, each operation state information sequence comprises operation state information in at least two continuous time segments when the target controllable object is controlled by the same control object, each operation state information is determined based on the control behavior of the control object on the target controllable object, and the operation state information represents a used state or an unused state; determining an operation state attribute corresponding to each operation state information sequence in the operation state information set of the target controllable object according to at least one operation state information in the corresponding operation state information sequence for each target controllable object to obtain an operation state attribute set of each target controllable object, wherein the operation state attribute comprises a positive operation state attribute or a negative operation state attribute; and determining the similarity of different target controllable objects based on the positive running state attribute subset and the negative running state attribute subset in the running state attribute set of each target controllable object, and clustering each target controllable object based on the similarity.
In this embodiment of the present application, after determining the clustering result, information of other target controllable objects in the same cluster may be obtained and recommended based on the target controllable objects existing in the terminal device 101.
Of course, the method provided in the embodiment of the present application is not limited to the application scenario shown in fig. 1 (a) and fig. 1 (b), but may be used in other possible application scenarios, and the embodiment of the present application is not limited. The functions that can be implemented by the respective devices in the application scenario shown in fig. 1 (a) and fig. 1 (b) will be described together in the following method embodiments, which are not described here again.
Based on the design ideas and the application scenarios, the method of the embodiment of the present application is specifically described below.
As shown in fig. 2, the present application provides a clustering method of target controllable objects, which is specifically executed by a computer device, and optionally, the computer device may be an electronic device with computing capability, such as a terminal device or a server, where the specific execution subject of the clustering method is not limited.
The method shown in fig. 2 specifically includes:
step S201, for a set of target controllable objects to be clustered, a set of running state information of each target controllable object is obtained respectively, where each set of running state information of each target controllable object includes at least one running state information sequence, each running state information sequence includes running state information in at least two consecutive time segments when the target controllable object is controlled by the same control object, each running state information is determined based on a control behavior of the control object on the target controllable object, and the running state information characterizes a used state or an unused state.
Specifically, in the embodiment of the present application, the set of target controllable objects to be clustered may be a set of all target controllable objects, or may be a set formed by target controllable objects that are matched with a set condition, for example, a set of target controllable objects to be clustered formed by target controllable objects that will run in a terminal device of the same model, or a set of target controllable objects to be clustered formed by target controllable objects that will run in a terminal device of the same geographic area, and of course, other methods for defining a set of target controllable objects are not described herein.
In this embodiment of the present application, each target controllable object corresponds to an operation state information set, where state information obtained by the set includes operation state information when each target controllable object is controlled, and each target controllable object has a correspondence with a plurality of control objects, that is, different control objects may control the same target controllable object, and perform a control behavior operation on the target controllable object, and through the control behavior operation, the operation state of the target controllable object is changed or not changed.
Furthermore, timeliness of each state information in the set, namely, the state information generated in the set time, can be defined, and the set of running state information corresponding to the target controllable object in the application is only defined. For example, the state information of the target controllable object 1 is the state information at the first time, the state information at the second time, and the state information at the third time; the state information of the target controllable object 2 is the state information at the fourth time, and the time interval between the fourth time and the first time is two years, and the correlation between the state information within two years is poor, so that it is necessary to define the timeliness of each state information.
Therefore, in the embodiment of the present application, each state information within the set time interval may be configured as a state information set, and for example, 3 months before the current time may be set as a set time interval, and state information within 3 months before the current time may be configured as a state information set. In the embodiment of the present application, the set time intervals may be time intervals with the same time length, or may be different, which is not limited herein.
That is, in the embodiment of the present application, the state information set of each target controllable object is generated in the same time period, so that the relevance between the state information of different target controllable objects can be better determined.
The state information of each target controllable object in a plurality of time segments can form an operation state information sequence, so that each target controllable object at least comprises one operation state information sequence, and the operation state information in the sequence is ordered according to a certain sequence, and the sequence can be a random sequence or a set sequence.
Optionally, in the embodiment of the present application, the latest state information may better represent the state of the controllable object of the current target, so in a specific embodiment, the state information may be sequenced according to the sequence from near to far in the segmentation time, to obtain the running state information sequence.
Illustratively, as shown in Table 1, a t-time segment, a t-1 time segment, and a t-2 time segment are included in Table 1, each time corresponding to the state information of the target controllable object 1.
TABLE 1
Time segmentation t-2 t-1 t
Status information Status information 3 Status information 2 Status information 1
In table 1, status information of the target controllable object 1 in three consecutive time segments is shown, and based on each status information in table 1, the consecutive time segments corresponding to the status information are ordered in the order from near to far, so as to obtain an operation status information sequence, which may be characterized as status information 1, status information 2, and status information 3.
Alternatively, in the embodiment of the present application, different clustering strategies correspond to different time segment information, and the clustering strategy may also be understood as a clustering rule, where each clustering rule corresponds to at least two consecutive target time segment information, and the number of target time segment information is not limited herein.
When the clustering rule is acquired, the running state information set of each target controllable object is acquired based on the clustering rule, and each running state information sequence comprises the running state information in at least two continuous target time segments corresponding to the at least two continuous target time segment information when the target controllable objects are controlled by the same control object.
For example, if the time segment information corresponding to the clustering rule 1 is a time segment of 1 month per week, based on the clustering rule 1, a running state information set of each target controllable object is obtained respectively, and each running state information sequence includes running state information in the time segment of one month per week corresponding to at least two continuous target time segment information when the target controllable objects are controlled by the same control object.
And the time segmentation information corresponding to the clustering rule 2 is 3 months per month time segmentation, and based on the clustering rule 2, the running state information set of each target controllable object is respectively obtained, and each running state information sequence comprises the running state information in the 3 months per month time segmentation corresponding to at least two continuous target time segmentation information when the target controllable objects are controlled by the same control object.
In this embodiment of the present application, each operation state information represents a used state or an unused state of a corresponding target controllable object, and the used state of the corresponding target controllable object can be changed through control behaviors of different control objects.
It is considered that the control object does not change the operation behavior of the target controllable object in two adjacent continuous time segments, or that after one operation behavior occurs, no other operation behavior is performed, and it is considered that the operation state information corresponding to the two continuous time segments is not changed. For example, in the t-1 time segment, the control object performs the opening operation on the target controllable object 1, and in the t time segment, the control object does not perform the control operation on the target controllable object 1, and then the state information of the target controllable object corresponding to the t-1 time segment is the same as the state information of the target controllable object corresponding to the t time segment.
Further, in two adjacent continuous time segments, the control object changes the operation behavior of the target controllable object, or after the operation behavior does not occur, the operation state information corresponding to the two continuous time segments may be considered to be changed. For example, in the t-1 time segment, the control object performs an opening operation on the target controllable object 1, and in the t time segment, the control object performs a deleting operation on the target controllable object 1, so that the state information of the target controllable object corresponding to the t-1 time segment is different from the state information of the target controllable object corresponding to the t time segment.
The at least one sequence of operating state information corresponding to each target controllable object may be a sequence having the same operating state information or may be a sequence having different operating state information.
Having introduced the above, the information content comprised by the set of target controllable objects to be clustered is explained below in connection with the schematic diagram of fig. 3.
In the embodiment of the present application, the target controllable objects to be clustered are App1, app2, app3 and App4, and the control objects of App1 are user 1 and user 2; the control objects of App2 are user 3, user 4 and user 5; the control object of App3 is user 6.
For each App, determining running state information of the App in a t-time segment and a t-1 time segment, specifically, in this embodiment, user 1 installs App1 in the t-time segment, the running state information of the t-time segment is installed, user 1 uninstalls App1 in the t-1 time segment, and the running state information of the t-time segment is uninstalled, so for user 1 corresponding to App1, the obtained running state information sequence is (install, uninstall) according to the sequence from near to far of the time segment.
Similarly, based on the above principle, the operation state information sequence corresponding to the user 2 is determined to be (on, turned on), the operation state information sequence corresponding to the user 3 is determined to be (installed, turned on), the operation state information sequence corresponding to the user 4 is determined to be (uninstalled ), the operation state information sequence corresponding to the user 5 is determined to be (installed, turned on), and the operation state information sequence corresponding to the user 6 is determined to be (uninstalled, installed).
It is possible to determine the set of operation state information of each App, specifically, for App1, the set of operation state information is (install, uninstall), (open )), for App2, the set of operation state information is ((install, open), (uninstall ), (install, open)), and for App3, the set of operation state information is (uninstalled ).
Step S202, respectively aiming at each target controllable object, determining the running state attribute corresponding to each running state information sequence in the running state information set of the target controllable object according to at least one running state information in the corresponding running state information sequence, and obtaining the running state attribute set of each target controllable object, wherein the running state attribute comprises a positive running state attribute or a negative running state attribute.
Specifically, in the embodiment of the present application, for each target controllable object, the attribute of each running state information sequence corresponding to the target controllable object can be determined, and according to the attribute of the running state information sequence, the running state attribute set of the target controllable object is determined.
In the embodiment of the application, since the running state information in each running state information sequence has different state characterizations, the attribute of the running state information sequence can be determined by the state characterizations corresponding to each running state information in the sequence.
In the embodiment of the present application, different running state information sequences may have the same attribute, or may have different attributes, and the specific attribute is determined based on at least one running state information state characterization in the running state information sequence.
For example, in the embodiment of the present application, the running state information sequence attribute may be determined based on all the running state information in the running state information sequence, the running state information sequence attribute may be determined based on setting several running state information, or the running state information sequence attribute may be determined based on the running state information of the set sequence position.
Alternatively, in the embodiment of the present application, since the latest operation state information can characterize the latest state, such as the used state or the unused state, of the target controllable object, the operation state information sequence attribute may be determined based on the latest operation state information in the operation state information sequence.
In the embodiment of the application, the attribute of the running state information sequence can be determined based on the corresponding relation between the characterization of the running state information and the attribute.
In an alternative embodiment, in order to facilitate determining the running state information sequence attribute based on different usage states in the embodiment of the present application, the different usage states may be first converted into a state identifier, and then the running state information sequence attribute is determined according to a correspondence between the state identifier and the attribute.
Alternatively, in the embodiment of the present application, the first state identifier is used to represent the used state, and the second state identifier is used to represent the used state, which may, of course, be used to represent the used state, and the first state identifier is used to represent the used state, which is not limited herein.
In the embodiment of the present application, the state identifier has a correspondence relationship with the attribute, and the relationship may be represented by a correspondence relationship table, which is not limited herein.
Therefore, in the real-time example of the application, the latest running state information is determined, then the state identification is exchanged, after the state identification is obtained, the corresponding attribute is determined, and the attribute is used as the running state information sequence attribute.
For example, in the embodiment of the present application, an App is taken as an example of a target controllable object, and specifically, for the App, the usage state may be a startup state, an uninstalled state, or an uninstalled state.
Further, defining a start state of the App, wherein the start state of the App refers to that if an operation of the user on the App last time in a t period is installation, the App is considered to be started once, or if the operation of the user on the App last time in the t period is start, the App is considered to be started once.
The uninstalled or uninstalled state of the App refers to a state in which the user is considered to uninstall the App if it is not started within a fixed time range (e.g., 31 days), i.e., the state of the App is considered to be an uninstalled or uninstalled state.
In the embodiment of the application, the starting state of the App is represented by a first state identifier, and the uninstalled or uninstalled state of the App is represented by a second state identifier.
For an App, the different run state information sequence attributes may be classified as either a positive run state attribute that characterizes the App as being used or installed, e.g., the App is installed within a t-time segment, or a negative run state attribute that characterizes the App as being started, e.g., the App is started within a t-time segment.
The negative run state attribute characterizes that the App is uninstalled or unused, e.g., the App is uninstalled within a time t segment, or the App has not been started for 30 days so far.
Further, in the embodiment of the present application, the operation behavior of the user corresponding to the forward running state attribute may be: the user once uninstalled the App, but installed the App at time t segments; the negative running state attribute may correspond to the user's operation behavior as follows: the user has installed the App but uninstalled the App at time t-segments, and from the foregoing, it is known that the positive run state attribute and the negative run state attribute need to be determined based on run state information of a plurality of consecutive time segments, such as t-time segments, t-1 time segments, and so on.
In an alternative embodiment, in an embodiment of the present application, the forward running state attribute includes a user continuous use App; the user newly adds the App, namely the user does not install the App at the time t-1, and the user newly installs the App at the time t; the user reinstalls the App, i.e., the user initially installs the App, then the user uninstalls the App at time t-1 or t-2, or other segments, and then reinstalls the App at time t.
In another alternative embodiment, in the embodiment of the present application, the negative running state attribute includes that the user uninstalls the App in segments at time t, where it may be the case that the user installs the App in segments any time before t-1, and the uninstallation control action is performed in segments at time t.
Further, in order to better characterize each attribute, the operation behaviors of the user in the attribute can be marked, and illustratively, the letter C indicates that the user continuously uses App, the letter N indicates that the user newly adds App, the letter U indicates that the user installs App in any time segment before t-1, the unloading control behavior is performed in t time segment, and the letter R indicates that the user reloads App.
So that the running state of the App determined by the latest control behavior of the user corresponds to the control behavior of the forward running state attribute letter C, N, R, the attribute of the running state information sequence of the App is determined to be the forward running state attribute through the letter determination; when the running state of the App determined by the latest control behavior of the user corresponds to the control behavior of the negative running state attribute letter U, determining that the attribute of the running state information sequence of the App is the negative running state attribute.
In the following description with reference to table 2, in the embodiment of the present application, the start state of the App is represented by a first state identifier, and the uninstalled or uninstalled state of the App is represented by a second state identifier.
TABLE 2
Figure BDA0002751728730000181
By the state identification of each time segment, attribute letters corresponding to different running state information sequences can be determined, and then the running state information sequences can be determined.
In table 2, letter I indicates that the App is not installed or started in consecutive time segments, so that the user considers the App as a neglected operation, and may consider letter I to represent an indiscriminate behavior, or may consider letter I to be a negative running state attribute.
Further, the first state identifier and the second state identifier can be assigned, so that the state of the App in each time segment can be conveniently represented, the first state identifier is assigned to 1, the second state identifier is assigned to 0, and then the table 2 can be updated to the table 3.
TABLE 3 Table 3
Figure BDA0002751728730000191
Further, in the embodiment of the present application, each operation state information sequence attribute can be determined through table 2 or table 3.
Of course, in the embodiment of the present application, the running state information sequence attribute is determined only by the running state information of the time segments from t-2 to t, and the running state information sequence attribute can also be determined by the running state information of more time segments.
In the embodiment of the present application, it can be determined through table 2 and table 3 that the attribute letter C is determined based on the assignment corresponding to the running state information of two consecutive time segments, so that the assignment corresponding to the running state information of any two time segments matches with the attribute letter C, and can correspond to one attribute letter C, and similarly, the attribute letter U is determined based on the assignment corresponding to the running state information of two consecutive time segments, so that the assignment corresponding to the running state information of any two time segments matches with the attribute letter U, and can correspond to one attribute letter U, so that a plurality of corresponding attribute letters can be obtained based on the running state information of time segments greater than t-2 to t.
Illustratively, in the present embodiment, the operational status information sequence attribute is determined from the operational status information of the t-3 to t time segment, as shown in Table 4.
TABLE 4 Table 4
Figure BDA0002751728730000192
/>
Figure BDA0002751728730000201
In Table 4, the two-tier behavior state is represented by two attribute letters, where the leading letter of the two attribute letters is determined based on at least two consecutive time segments from t-2 to t-1, and the following letter is determined based on two consecutive time segments from t-1 to t.
Specifically, the leading letter C in the CC is determined based on 1, 1 corresponding to two consecutive time segments from t-2 to t-1, and the trailing letter C in the CC is determined based on 1, 1 corresponding to two consecutive time segments from t-1 to t.
The leading letter C in the CU is determined based on 1, 1 corresponding to two consecutive time segments t-2 through t-1, and the trailing letter U in the CU is determined based on 1, 0 corresponding to two consecutive time segments t-1 through t.
The leading letter N in NC is determined based on 0, 1 corresponding to three consecutive time segments from t-3 to t-1, and the trailing letter C in NC is determined based on 1, 1 corresponding to three consecutive time segments from t-1 to t.
The determination method of the attribute letter sequences corresponding to the other two-layer behavior states is similar to the determination method in the above description, and is not repeated here.
After determining the running state attribute of each running state information sequence corresponding to each target controllable object, a different running state attribute set corresponding to each target controllable object can be determined.
In particular, the different running state attribute sets may comprise a positive running state attribute subset and a negative running state attribute subset, that is, a plurality of running state information sequences with positive running state attributes are formed into the positive running state attribute subset, and a plurality of running state information sequences with negative running state attributes are formed into the positive running state attribute subset.
Step S203, determining the similarity of different target controllable objects based on the positive running state attribute subset and the negative running state attribute subset in the running state attribute set of each target controllable object, and clustering each target controllable object based on the similarity.
Specifically, in the embodiment of the present application, for each target controllable object, the positive running state attribute subset and the negative running state attribute subset in the running state attribute set can represent control behavior features of different control objects corresponding to the target controllable object, and similarity of different target controllable objects can be determined and clustered through the control behavior features of the control objects of different target controllable objects.
In the embodiment of the application, the clustering feature value of the target controllable object can be determined based on the positive running state attribute subset and the negative running state attribute subset in the running state attribute set of each target controllable object, and the similarity is determined and clustered based on the clustering feature values of different target controllable objects.
Further, in the embodiment of the present application, the running state attribute set of each target controllable object includes two subsets, so the cluster feature values of the two subsets can be determined respectively.
Each subset is made up of a plurality of running state information sequences, so in order to be able to determine the cluster feature value of each subset, it is also necessary to determine the value of each running state information sequence.
There are various methods of determining the value of each running state information sequence, and an alternative method is to determine the value of each running state information in each running state information sequence, and then add the values of each running state information to obtain the value of each running state information sequence; alternatively, each running state information sequence is taken as a whole to determine the value of the running state information sequence, specifically, the value of the running state information sequence can be determined by a sequence-to-sequence value conversion method, that is, the value of the running state information sequence is determined by a preset sequence-to-sequence value conversion relationship; in an alternative method, since the running state information can represent two states, the two states are assigned respectively, so as to form a sequence with assigned values of the two states, the sequence is a binary sequence, and the value of the running state information sequence is obtained through conversion of the binary sequence.
That is, in the embodiment of the present application, for each target controllable object, the state value of each operation state information sequence is determined according to each operation state information in the corresponding operation state information sequence and the obtained correspondence between the operation state information and the state value; based on the state values of each operating state information sequence, a first set value of a subset of positive operating state attributes and a second set value of a subset of negative operating state attributes in the corresponding set of operating state attributes are determined.
And determining the similarity of different target controllable objects based on the first set value and the second set value corresponding to the running state attribute set of each target controllable object.
Further, in the embodiment of the present application, in order to obtain the binary sequence, the running state information of the used state is assigned a state value of 1, and the running state information of the unused state is assigned a state value of 0, so that the binary sequence can be obtained.
Further, after the assignment, the assignments are further ordered according to the time sequence, so that a binary sequence conforming to the time rule can be obtained.
In the embodiment of the application, the assignment of each operation state information is sequenced according to the sequence from near to far of the corresponding time segment, so as to obtain the corresponding binary state value sequence.
For example, as shown in table 3, the behavior state of user 1 for App1 is denoted as attribute letter CC, and then the sequence of binary state values obtained by sorting the behavior states in the order from near to far in time segments is 111, and the behavior state of user 2 for App2 is denoted as attribute letter NC, and then the sequence of binary state values obtained by sorting the behavior states in the order from near to far in time segments is 1100.
In the embodiment of the present application, since the behavior states of some control objects correspond to four binary digits, and the behavior states of some control objects correspond to three binary digits, in order to obtain a binary sequence with the same number of digits, the binary sequence with the lacking digits is complemented.
Specifically, in the embodiment of the present application, the specific method of bit filling is not limited, and the default value may be used for bit filling, or the bit filling may be performed according to a set bit filling rule.
After each binary sequence is obtained, the binary sequence can be converted into decimal, and the sequence value of each operation state information sequence is obtained.
For example, if the binary state value sequence is 1100 and the decimal value after conversion is 12, it may be determined that the sequence value of the operation state information sequence corresponding to the attribute letter NC is 12.
The sequence value of each of the operation state information sequences can be determined by the above-described method. After determining the sequence value for each sequence of operational state information, the aggregate value for two subsets of the different attribute states in the set of operational state attributes for each target controllable object may be determined.
In an alternative embodiment, adding sequence values of each running state information sequence belonging to the same attribute set to obtain set values of different subsets, for example, if the forward running state attribute subset includes 5 running state information sequences, adding decimal sequence values of the 5 running state information sequences to obtain set values of the forward running state attribute subset; similarly, if the negative running state attribute subset includes 3 running state information sequences, decimal sequence values of the 3 running state information sequences are added to obtain an aggregate value of the negative running state attribute subset.
In another alternative embodiment, the sequence values of the running state information sequences belonging to the same attribute set may be added and an average value calculated to obtain the set values of different subsets.
In yet another alternative embodiment, the sequence values of the running state information sequences belonging to the same attribute subset are weighted and added, that is, the weight of each running state information sequence is determined, and then the weighted and added, where the weight of each running state information sequence may be preset or determined based on the attribute information of the control object, which is not described herein.
In an alternative embodiment, the weights for each attribute may also be fused after the values for each subset of attributes are obtained.
Specifically, based on the number of running state information sequences of the positive running state attribute and the number of running state information sequences of the negative running state attribute in the running state attribute set, a first weight value corresponding to the positive running state attribute subset and a second weight value corresponding to the negative running state attribute subset are determined.
That is, if the total number of sequences in the running state attribute set can be determined to be 3 based on the numbers 1 and 2 of running state information sequences of the forward running state attribute, the first weight value can be determined according to the numbers 1 and 3, and can be directly divided or multiplied, which is not limited herein.
Adding each state value in the positive running state attribute subsets in the corresponding running state attribute sets to obtain a positive running state total value, and adding each state value in the negative running state attribute subsets in the corresponding running state attribute sets to obtain a negative running state total value; and obtaining a first set value according to the positive running state total value and the first weight value, and obtaining a second set value according to the negative running state total value and the second weight value.
The above disclosure therefore discloses a first set of values and a second set of values in each set of operational state attributes, determining a similarity of different target controllable objects from the first set of values and the second set of values, and clustering each of the target controllable objects based on the similarity.
In the embodiment of the present application, the method for determining the similarity may be a method based on the euclidean distance, a method based on machine learning, or other methods.
In an alternative embodiment, the clustering may be performed by a K-means clustering algorithm kmeans, specifically, first randomly selecting K objects as an initial clustering center, that is, selecting a first set value and a second set value of K target controllable objects. The distance between each object and the respective seed cluster center is then calculated, assigning each object to its nearest cluster center. The cluster centers and the objects assigned to them represent a cluster. Once all the objects have been assigned, the cluster center of each cluster is recalculated based on the existing objects in the cluster. This process will repeat until a certain termination condition is met. The termination condition may be any of the following:
1) No (or a minimum number of) objects are reassigned to different clusters.
2) No (or a minimum number of) cluster centers are changed again.
3) The sum of squares of errors is locally minimal.
After the above-mentioned optional clustering method is introduced, the first set value and the second set value of different target controllable objects may be projected in one clustering coordinate system, and the position of each target controllable object in the clustering coordinate system may be determined by the two set values, and the clustering may be performed by the positions of different clustering coordinate systems.
That is, the first set value corresponding to the running state attribute set of each target controllable object is taken as the first coordinate value of the first coordinate axis in the cluster coordinate system, and the second set value corresponding to the running state attribute set of each target controllable object is taken as the second coordinate value of the second coordinate axis in the cluster coordinate system;
determining the coordinate position of each target controllable object in a clustering coordinate system based on the first coordinate value and the second coordinate value corresponding to each target controllable object;
based on the coordinate position of each target controllable object in the cluster coordinate system, the similarity of different target controllable objects is determined.
In the following description with reference to fig. 4, in fig. 4, there is a cluster coordinate system, an origin of the cluster coordinate system is (0, 0), a first set value of different target controllable objects is used as a first coordinate value of a first coordinate axis in the cluster coordinate system, a second set value corresponding to an operation state attribute set of each target controllable object is used as a second coordinate value of a second coordinate axis in the cluster coordinate system, and a coordinate position of each target controllable object in the cluster coordinate system is determined based on the first coordinate value and the second coordinate value corresponding to each target controllable object.
Clustering the coordinate positions in the clustering coordinate system by using a Euclidean distance method or any clustering method to obtain clustering results of different target control objects.
Specifically, in fig. 4, the euclidean distance between the coordinate positions of different target controllable objects can be determined, the target controllable object 1, the target controllable object 2, and the target controllable object 3 belong to the same cluster set, and the target controllable object 4, the target controllable object 5, and the target controllable object 6 belong to the same cluster set.
In the embodiment of the application, after the clustering results of the controllable objects of different targets are obtained, the controllable objects of the targets belonging to the same clustering set can be recommended.
As shown in fig. 5, the characteristics in fig. 5 are that the user downloads App1 in the App download, and when the downloading is completed, recommended apps, app2, app3 and App4, are displayed in the App interface of the App download.
In the above embodiment, each App is a target controllable object, and when a user uses an App, the App will have different use states, and may be characterized by 1 or 0, so that cluster analysis can be performed on each App based on the behavior sequence of each App.
As another example, as shown in fig. 6, when the user purchases the commodity 1 in the shopping App in fig. 6, the recommended commodities, namely, commodity 2, commodity 3, commodity 4, and commodity 5, are displayed in the application interface of the shopping App when the shopping behavior is completed.
In the above embodiment, each commodity is a target controllable object, when a user makes shopping, each commodity has a different use state, and can be represented by 1 or 0, for example, the purchased state is represented by 1, the non-purchased state is represented by 0, so that clustering analysis can be performed on each commodity based on the behavior sequence of each user on different commodities.
Further, in the embodiment of the present application, the videos may be used as a target controllable object, when the user performs the video watching operation, each video may have a different use state, and may be represented by 1 or 0, for example, a 1 indicates that the video is watched, and a 0 indicates that the video is not watched, so that the cluster analysis can be performed on each video based on the behavior sequence of each user on different videos.
Based on the same conception, the embodiment of the application also provides a clustering device of the target controllable objects, as shown in fig. 7, including:
an operation state information set obtaining unit 701, configured to obtain, for a set of target controllable objects to be clustered, an operation state information set of each target controllable object, where each set of operation state information of each target controllable object includes at least one operation state information sequence, each operation state information sequence includes operation state information of at least two consecutive time segments when the target controllable object is controlled by the same control object, each operation state information is determined based on a control behavior of the control object on the target controllable object, and the operation state information characterizes a used state or an unused state;
the running state attribute set determining unit 702 is configured to determine, for each target controllable object, a running state attribute corresponding to each running state information sequence in the running state information set of the target controllable object according to at least one running state information in the corresponding running state information sequence, and obtain a running state attribute set of each target controllable object, where the running state attribute includes a positive running state attribute or a negative running state attribute;
A clustering unit 703, configured to determine similarities of different target controllable objects based on the positive running state attribute subset and the negative running state attribute subset in the running state attribute set of each target controllable object, and cluster each target controllable object based on the similarities.
Optionally, the running state attribute set determining unit 702 is specifically configured to:
determining a target running state identifier corresponding to the running state information of the latest time segment in the corresponding running state information sequence according to each target controllable object respectively, wherein a used state corresponds to a first state identifier and an unused state corresponds to a second state identifier;
and determining the operation state attribute corresponding to each operation state information sequence in the operation state information set of the target controllable object according to the target state identifier and the obtained corresponding relation between the state identifier and the operation state attribute.
Optionally, the running state information set acquiring unit 701 is specifically configured to:
obtaining a clustering rule, and determining at least two continuous target time segment information corresponding to the clustering rule;
and respectively obtaining running state information sets of each target controllable object based on a clustering rule aiming at the target controllable object set to be clustered, wherein each running state information sequence comprises running state information in at least two continuous target time segments corresponding to at least two continuous target time segment information when the target controllable objects are controlled by the same control object.
Optionally, the running state attribute set determining unit 702 is further configured to:
determining the state value of each operation state information sequence according to each operation state information in the corresponding operation state information sequence and the corresponding relation between the obtained operation state information and the state value aiming at each target controllable object;
determining a first set value of a positive running state attribute subset and a second set value of a negative running state attribute subset in the corresponding running state attribute set based on the state value of each running state information sequence;
the clustering unit 703 is specifically configured to:
and determining the similarity of different target controllable objects based on the first set value and the second set value corresponding to the running state attribute set of each target controllable object.
Optionally, the corresponding relation between the running state information and the state value is that the running state information representing the used state is assigned as a state value 1, and the running state information representing the unused state is assigned as a state value 0;
the running state attribute set determining unit 702 is specifically configured to:
for each target controllable object, according to the corresponding relation between the running state information and the state values, assigning all running state information representing the used state in the corresponding running state information sequence to be a state value 1, assigning all running state information representing the unused state to be a state value 0, and sequencing the state values of each running state information according to the sequence from near to far of the corresponding time segment to obtain a corresponding binary state value sequence;
And performing decimal conversion on each binary state value sequence to obtain the state value of the running state information sequence.
Optionally, the running state attribute set determining unit 702 is specifically configured to:
determining a first weight value corresponding to the positive running state attribute subset and a second weight value corresponding to the negative running state attribute subset based on the number of running state information sequences of the positive running state attribute and the number of running state information sequences of the negative running state attribute in the running state attribute set;
adding each state value in the positive running state attribute subsets in the corresponding running state attribute sets to obtain a positive running state total value, and adding each state value in the negative running state attribute subsets in the corresponding running state attribute sets to obtain a negative running state total value;
and obtaining a first set value according to the positive running state total value and the first weight value, and obtaining a second set value according to the negative running state total value and the second weight value.
Optionally, the clustering unit 703 is specifically configured to:
taking a first set value corresponding to the running state attribute set of each target controllable object as a first coordinate value of a first coordinate axis in a clustering coordinate system, and taking a second set value corresponding to the running state attribute set of each target controllable object as a second coordinate value of a second coordinate axis in the clustering coordinate system;
Determining the coordinate position of each target controllable object in a clustering coordinate system based on the first coordinate value and the second coordinate value corresponding to each target controllable object;
based on the coordinate position of each target controllable object in the cluster coordinate system, the similarity of different target controllable objects is determined.
In the embodiment of the application, the similarity of different target controllable objects is determined based on a positive running state attribute subset and a negative running state attribute subset in the running state attribute set of each target controllable object, and each target controllable object is clustered based on the similarity.
As can be seen from the foregoing, in the clustering method and apparatus for different controllable target objects in the embodiments of the present application, the similarity is determined based on the positive running state and the negative running state corresponding to the controllable target objects, where the positive running state and the negative running state are determined based on the control behavior of the control object, that is, the control behavior similarity between the controllable target objects is determined from the control behavior of each controllable target object, and the controllable target objects are clustered by the similarity, that is, the controllable target objects with similar control behavior features are clustered into one cluster, so as to facilitate recommendation, analysis, and other purposes.
In the embodiment of the application, different target controllable objects with similar control behaviors are clustered into one cluster, so that a barrier for clustering according to the attribute in the related technology is broken through, the accuracy and the breadth of clustering are improved, the effectiveness of recommending other target controllable objects is further improved, and the feeling of the control object is improved.
Based on the same technical concept, the embodiment of the present application provides a computer device, as shown in fig. 8, including at least one processor 801 and a memory 802 connected to the at least one processor, where a specific connection medium between the processor 801 and the memory 802 is not limited in the embodiment of the present application, and in fig. 8, the processor 801 and the memory 802 are connected by a bus, for example. The buses may be divided into address buses, data buses, control buses, etc.
In the embodiment of the present application, the memory 802 stores instructions executable by the at least one processor 801, and the at least one processor 801 may perform the steps included in the clustering method of the target controllable objects by executing the instructions stored in the memory 802.
Where the processor 801 is a control center of a computer device, various interfaces and lines may be utilized to connect various portions of the computer device, create virtual machines by executing or executing instructions stored in the memory 802 and invoking data stored in the memory 802. Alternatively, the processor 801 may include one or more processing units, and the processor 801 may integrate an application processor that primarily processes operating systems, user interfaces, application programs, and the like, with a modem processor that primarily processes wireless communications. It will be appreciated that the modem processor described above may not be integrated into the processor 801. In some embodiments, processor 801 and memory 802 may be implemented on the same chip, or they may be implemented separately on separate chips in some embodiments.
The processor 801 may be a general purpose processor such as a Central Processing Unit (CPU), digital signal processor, application specific integrated circuit (Application Specific Integrated Circuit, ASIC), field programmable gate array or other programmable logic device, discrete gate or transistor logic, discrete hardware components, and may implement or perform the methods, steps, and logic blocks disclosed in embodiments of the present application. The general purpose processor may be a microprocessor or any conventional processor or the like. The steps of a method disclosed in connection with the embodiments of the present application may be embodied directly in a hardware processor for execution, or in a combination of hardware and software modules in the processor for execution.
Memory 802, as a non-volatile computer-readable storage medium, may be used to store non-volatile software programs, non-volatile computer-executable programs, and modules. The Memory 802 may include at least one type of storage medium, which may include, for example, flash Memory, hard disk, multimedia card, card Memory, random access Memory (Random Access Memory, RAM), static random access Memory (Static Random Access Memory, SRAM), programmable Read-Only Memory (Programmable Read Only Memory, PROM), read-Only Memory (ROM), charged erasable programmable Read-Only Memory (Electrically Erasable Programmable Read-Only Memory), magnetic Memory, magnetic disk, optical disk, and the like. Memory 802 is any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to such. The memory 802 in the embodiments of the present application may also be circuitry or any other device capable of implementing a memory function for storing program instructions and/or data.
Based on the same inventive concept, embodiments of the present application provide a computer-readable storage medium storing a computer program executable by a computer device, which when run on the computer device, causes the computer device to perform the steps of a clustering method of target controllable objects.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present application without departing from the spirit or scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims and the equivalents thereof, the present application is intended to cover such modifications and variations.

Claims (13)

1. A method of clustering target controllable objects, the method comprising:
for a target controllable object set to be clustered, respectively obtaining an operation state information set of each target controllable object, wherein each operation state information set of each target controllable object comprises at least one operation state information sequence, each operation state information sequence comprises operation state information in at least two continuous time segments when the target controllable object is controlled by the same control object, each operation state information is determined based on the control behavior of the control object on the target controllable object, and the operation state information represents a used state or an unused state;
determining an operation state attribute corresponding to each operation state information sequence in the operation state information set of the target controllable object according to at least one operation state information in the corresponding operation state information sequence for each target controllable object to obtain the operation state attribute set of each target controllable object, wherein the operation state attribute comprises a positive operation state attribute or a negative operation state attribute, the positive operation state attribute represents that the target controllable object is used or installed, and the negative operation state attribute represents that the target controllable object is unloaded or not used;
Forming a positive running state attribute subset from a plurality of running state information sequences with positive running state attributes in the running state attribute set of each target controllable object, and forming a negative running state attribute subset from a plurality of running state information sequences with negative running state attributes;
for each target controllable object, determining a state value of each operation state information sequence according to each operation state information in the corresponding operation state information sequence and a corresponding relation between the operation state information and the state value; determining a first set value of the corresponding subset of positive operational state attributes and a second set value of the subset of negative operational state attributes based on the state value of each of the operational state information sequences;
and determining the similarity of different target controllable objects based on the first set value and the second set value corresponding to the running state attribute set of each target controllable object, and clustering each target controllable object based on the similarity.
2. The method according to claim 1, wherein determining, for each of the target controllable objects, an operation state attribute corresponding to each of the operation state information sequences in the operation state information set of the target controllable object according to at least one of the operation state information in the corresponding operation state information sequences, includes:
Determining a target running state identifier corresponding to the running state information of the latest time segment in the corresponding running state information sequence according to each target controllable object, wherein the used state corresponds to a first state identifier and the unused state corresponds to a second state identifier;
and determining the operation state attribute corresponding to each operation state information sequence in the operation state information set of the target controllable object according to the target state identifier and the obtained corresponding relation between the state identifier and the operation state attribute.
3. The method according to claim 1, wherein the obtaining, for the set of target controllable objects to be clustered, the running state information set of each target controllable object, respectively, includes:
obtaining a clustering rule, and determining at least two continuous target time segment information corresponding to the clustering rule;
and respectively obtaining an operation state information set of each target controllable object based on the clustering rule, wherein each operation state information sequence comprises operation state information in at least two continuous target time segments corresponding to the at least two continuous target time segment information when the target controllable objects are controlled by the same control object.
4. The method according to claim 1, wherein the correspondence between the operation state information and the state value is that operation state information representing the used state is assigned a state value of 1, and operation state information representing the unused state is assigned a state value of 0;
the determining, for each of the target controllable objects, a state value of each of the running state information sequences according to each of the running state information in the corresponding running state information sequence and a correspondence between the running state information and the state value, includes:
for each target controllable object, according to the corresponding relation between the running state information and the state values, assigning all running state information representing the used state in the corresponding running state information sequence to be a state value 1, assigning all running state information representing the unused state to be a state value 0, and sequencing the state values of each running state information according to the sequence from near to far of the corresponding time segment to obtain a corresponding binary state value sequence;
and performing decimal conversion on each binary state value sequence to obtain the state value of the running state information sequence.
5. The method of claim 4, wherein determining the first set of values for the corresponding subset of positive operational state attributes and the second set of values for the subset of negative operational state attributes based on the state values for each of the operational state information sequences comprises:
determining a first weight value corresponding to the positive running state attribute subset and a second weight value corresponding to the negative running state attribute subset based on the number of running state information sequences of the positive running state attribute and the number of running state information sequences of the negative running state attribute in the running state attribute set;
adding each state value in the positive operation state attribute subset in the corresponding operation state attribute set to obtain a positive operation state total value, and adding each state value in the negative operation state attribute subset in the corresponding operation state attribute set to obtain a negative operation state total value;
and obtaining the first set value according to the positive running state total value and the first weight value, and obtaining the second set value according to the negative running state total value and the second weight value.
6. The method according to any one of claims 4 to 5, wherein determining the similarity of different ones of the target controllable objects based on the first set of values and the second set of values corresponding to the set of operational state attributes of each of the target controllable objects comprises:
taking the first set value corresponding to the running state attribute set of each target controllable object as a first coordinate value of a first coordinate axis in a clustering coordinate system, and taking the second set value corresponding to the running state attribute set of each target controllable object as a second coordinate value of a second coordinate axis in the clustering coordinate system;
determining the coordinate position of each target controllable object in the clustering coordinate system based on the first coordinate value and the second coordinate value corresponding to each target controllable object;
and determining the similarity of different target controllable objects based on the coordinate position of each target controllable object in the clustering coordinate system.
7. A clustering device of target controllable objects, comprising:
an operation state information set obtaining unit, configured to obtain, for a target controllable object set to be clustered, an operation state information set of each target controllable object, where each operation state information set of each target controllable object includes at least one operation state information sequence, each operation state information sequence includes operation state information in at least two consecutive time segments when the target controllable object is controlled by the same control object, each operation state information is determined based on a control action of the control object on the target controllable object, and the operation state information characterizes a used state or an unused state;
An operation state attribute set determining unit, configured to determine, for each of the target controllable objects, an operation state attribute corresponding to each of the operation state information sequences in the operation state information set of the target controllable object according to at least one of the operation state information sequences corresponding to each of the operation state information sequences, and obtain the operation state attribute set of each of the target controllable objects, where the operation state attribute includes a positive operation state attribute or a negative operation state attribute, the positive operation state attribute indicates that the target controllable object is used or installed, and the negative operation state attribute indicates that the target controllable object is unloaded or not used;
the clustering unit is used for forming a positive running state attribute subset from a plurality of running state information sequences with positive running state attributes in the running state attribute set of each target controllable object, and forming a negative running state attribute subset from a plurality of running state information sequences with negative running state attributes; for each target controllable object, determining a state value of each operation state information sequence according to each operation state information in the corresponding operation state information sequence and a corresponding relation between the operation state information and the state value; determining a first set value of the corresponding subset of positive operational state attributes and a second set value of the subset of negative operational state attributes based on the state value of each of the operational state information sequences; and determining the similarity of different target controllable objects based on the first set value and the second set value corresponding to the running state attribute set of each target controllable object, and clustering each target controllable object based on the similarity.
8. The apparatus according to claim 7, wherein the operation state attribute set determining unit is specifically configured to:
determining a target running state identifier corresponding to the running state information of the latest time segment in the corresponding running state information sequence according to each target controllable object, wherein the used state corresponds to a first state identifier and the unused state corresponds to a second state identifier;
and determining the operation state attribute corresponding to each operation state information sequence in the operation state information set of the target controllable object according to the target state identifier and the obtained corresponding relation between the state identifier and the operation state attribute.
9. The apparatus according to claim 7, wherein the operation state information set obtaining unit is specifically configured to:
obtaining a clustering rule, and determining at least two continuous target time segment information corresponding to the clustering rule;
and respectively obtaining running state information sets of each target controllable object according to the clustering rule aiming at the target controllable object set to be clustered, wherein each running state information sequence comprises running state information in at least two continuous target time segments corresponding to the at least two continuous target time segment information when the target controllable objects are controlled by the same control object.
10. The apparatus of claim 7, wherein the correspondence of the operational status information to status values is to assign operational status information characterizing the used status to status value 1 and operational status information characterizing the unused status to status value 0;
the running state attribute set determining unit is specifically configured to:
for each target controllable object, according to the corresponding relation between the running state information and the state values, assigning all running state information representing the used state in the corresponding running state information sequence to be a state value 1, assigning all running state information representing the unused state to be a state value 0, and sequencing the state values of each running state information according to the sequence from near to far of the corresponding time segment to obtain a corresponding binary state value sequence;
and performing decimal conversion on each binary state value sequence to obtain the state value of the running state information sequence.
11. The apparatus according to claim 10, wherein the operation state attribute set determining unit is specifically configured to:
Determining a first weight value corresponding to the positive running state attribute subset and a second weight value corresponding to the negative running state attribute subset based on the number of running state information sequences of the positive running state attribute and the number of running state information sequences of the negative running state attribute in the running state attribute set;
adding each state value in the positive operation state attribute subset in the corresponding operation state attribute set to obtain a positive operation state total value, and adding each state value in the negative operation state attribute subset in the corresponding operation state attribute set to obtain a negative operation state total value;
and obtaining the first set value according to the positive running state total value and the first weight value, and obtaining the second set value according to the negative running state total value and the second weight value.
12. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the steps of the method of any of claims 1-6 when the program is executed.
13. A computer readable storage medium, characterized in that it stores a computer program executable by a computer device, which program, when run on the computer device, causes the computer device to perform the steps of the method of any of claims 1-6.
CN202011187274.8A 2020-10-30 2020-10-30 Clustering method and device for target controllable objects Active CN112215684B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011187274.8A CN112215684B (en) 2020-10-30 2020-10-30 Clustering method and device for target controllable objects

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011187274.8A CN112215684B (en) 2020-10-30 2020-10-30 Clustering method and device for target controllable objects

Publications (2)

Publication Number Publication Date
CN112215684A CN112215684A (en) 2021-01-12
CN112215684B true CN112215684B (en) 2023-07-14

Family

ID=74057616

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011187274.8A Active CN112215684B (en) 2020-10-30 2020-10-30 Clustering method and device for target controllable objects

Country Status (1)

Country Link
CN (1) CN112215684B (en)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102654860A (en) * 2011-03-01 2012-09-05 北京彩云在线技术开发有限公司 Personalized music recommendation method and system
WO2012148770A2 (en) * 2011-04-28 2012-11-01 United Video Properties, Inc. Systems and methods for deducing user information from input device behavior
US8781916B1 (en) * 2012-05-18 2014-07-15 Google Inc. Providing nuanced product recommendations based on similarity channels
JP2014164447A (en) * 2013-02-22 2014-09-08 Ntt Data Corp Recommendation information providing system, recommendation information generation device, recommendation information providing method and program
EP3067818A1 (en) * 2015-03-09 2016-09-14 Samsung Electronics Co., Ltd. User information processing method and electronic device supporting the same
CN106447459A (en) * 2016-10-16 2017-02-22 广东聚联电子商务股份有限公司 Commodity attribute-based automatic classification method
CN109960761A (en) * 2019-03-28 2019-07-02 腾讯科技(深圳)有限公司 Information recommendation method, device, equipment and computer readable storage medium
WO2019128930A1 (en) * 2017-12-29 2019-07-04 中兴通讯股份有限公司 Operation processing method, account information processing method, device, and storage medium
CN110209922A (en) * 2018-06-12 2019-09-06 中国科学院自动化研究所 Object recommendation method, apparatus, storage medium and computer equipment
CN111338918A (en) * 2020-02-10 2020-06-26 嘉兴太美医疗科技有限公司 Software usage behavior incentive method, system and computer readable medium
CN111367965A (en) * 2020-03-04 2020-07-03 腾讯云计算(北京)有限责任公司 Target object determination method and device, electronic equipment and storage medium
CN111368210A (en) * 2020-05-27 2020-07-03 腾讯科技(深圳)有限公司 Information recommendation method and device based on artificial intelligence and electronic equipment
CN111523010A (en) * 2019-02-03 2020-08-11 阿里巴巴集团控股有限公司 Recommendation method and device, terminal equipment and computer storage medium

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6983478B1 (en) * 2000-02-01 2006-01-03 Bellsouth Intellectual Property Corporation Method and system for tracking network use
JP5445339B2 (en) * 2010-06-08 2014-03-19 ソニー株式会社 Content recommendation device and content recommendation method
CN110046965A (en) * 2019-04-18 2019-07-23 北京百度网讯科技有限公司 Information recommendation method, device, equipment and medium

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102654860A (en) * 2011-03-01 2012-09-05 北京彩云在线技术开发有限公司 Personalized music recommendation method and system
WO2012148770A2 (en) * 2011-04-28 2012-11-01 United Video Properties, Inc. Systems and methods for deducing user information from input device behavior
US8781916B1 (en) * 2012-05-18 2014-07-15 Google Inc. Providing nuanced product recommendations based on similarity channels
JP2014164447A (en) * 2013-02-22 2014-09-08 Ntt Data Corp Recommendation information providing system, recommendation information generation device, recommendation information providing method and program
EP3067818A1 (en) * 2015-03-09 2016-09-14 Samsung Electronics Co., Ltd. User information processing method and electronic device supporting the same
CN106447459A (en) * 2016-10-16 2017-02-22 广东聚联电子商务股份有限公司 Commodity attribute-based automatic classification method
WO2019128930A1 (en) * 2017-12-29 2019-07-04 中兴通讯股份有限公司 Operation processing method, account information processing method, device, and storage medium
CN110209922A (en) * 2018-06-12 2019-09-06 中国科学院自动化研究所 Object recommendation method, apparatus, storage medium and computer equipment
CN111523010A (en) * 2019-02-03 2020-08-11 阿里巴巴集团控股有限公司 Recommendation method and device, terminal equipment and computer storage medium
CN109960761A (en) * 2019-03-28 2019-07-02 腾讯科技(深圳)有限公司 Information recommendation method, device, equipment and computer readable storage medium
CN111338918A (en) * 2020-02-10 2020-06-26 嘉兴太美医疗科技有限公司 Software usage behavior incentive method, system and computer readable medium
CN111367965A (en) * 2020-03-04 2020-07-03 腾讯云计算(北京)有限责任公司 Target object determination method and device, electronic equipment and storage medium
CN111368210A (en) * 2020-05-27 2020-07-03 腾讯科技(深圳)有限公司 Information recommendation method and device based on artificial intelligence and electronic equipment

Also Published As

Publication number Publication date
CN112215684A (en) 2021-01-12

Similar Documents

Publication Publication Date Title
CN106651542B (en) Article recommendation method and device
CN106503006B (en) Sequencing method and device for sub-applications in application App
US10262265B2 (en) Systems and methods for generating and communicating application recommendations at uninstall time
KR102342678B1 (en) Method and system of real-time graph-based embedding for personalized content recommendation
CN109815406B (en) Data processing and information recommendation method and device
CN108345419B (en) Information recommendation list generation method and device
CN111459993B (en) Configuration updating method, device, equipment and storage medium based on behavior analysis
CN111756832B (en) Method and device for pushing information, electronic equipment and computer readable storage medium
CN111275205A (en) Virtual sample generation method, terminal device and storage medium
CN108667877B (en) Method and device for determining recommendation information, computer equipment and storage medium
CN108055387B (en) Recommendation information display method and device, electronic equipment and readable storage medium
CN110781386A (en) Information recommendation method and device, and bloom filter creation method and device
CN112215684B (en) Clustering method and device for target controllable objects
KR102349522B1 (en) Method and system for long-term relevant document clustering
CN108549674B (en) Recommendation method, recommendation device and storage medium
KR102578016B1 (en) Method and system for providing content based on user response and non-transitory computer readable recording medium
CN107562758B (en) Information pushing method and device and electronic equipment
CN114429644A (en) Method, device and equipment for updating image base and storage medium
CN115004667B (en) Information pushing method, device, electronic equipment and computer readable medium
CN112532406B (en) Data processing method and device for contrast experiment, computer equipment and storage medium
CN110942345B (en) Seed user selection method, device, equipment and storage medium
CN111221651B (en) Load balancing configuration method, device, server and readable storage medium
CN110929207A (en) Data processing method, device and computer readable storage medium
CN110688582A (en) Application recommendation method, application recommendation device and terminal equipment
CN110263212B (en) Method and device for sharing search results

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40038131

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant