A user behavior pattern analysis method and system based on APP software operation data
By constructing a correlation matrix between APP operations and user behavior, and using convolutional neural networks and fully connected neural networks to extract features, the problem of distinguishing between user behavior and operations in existing technologies is solved, and in-depth analysis and pattern extraction of user behavior patterns are realized.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- KUNMING UNIV OF SCI & TECH
- Filing Date
- 2022-02-21
- Publication Date
- 2026-04-28
AI Technical Summary
Existing technologies are insufficient to effectively distinguish and analyze user behavior and operations, and most studies only focus on the operation analysis of a single app, failing to fully explore user behavior patterns.
By preprocessing APP operation data, a correlation matrix between APP operations and user behavior is constructed. Features are extracted using convolutional neural networks and fully connected neural networks to extract user behavior patterns.
It can identify and extract user behavior patterns during the operation of APP software, reveal user habits and interests, and provide reference for APP improvement.
Smart Images

Figure CN114510613B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a method and system for analyzing user behavior patterns based on APP software operation data, belonging to the field of APP software operation analysis. Background Technology
[0002] In recent years, smart terminals have become an indispensable part of people's lives and work. Users can achieve many goals in their daily lives and work through apps on their smart terminals, such as shopping, reading, learning, socializing, and working. Users generate a large amount of app operation records during their daily use of smart terminals. These records reflect users' actual usage behavior. Mining and analyzing this information can extract hidden behavioral patterns and usage habits, helping to understand users' behavior, habits, and interests. This provides guidance for improving apps and assists developers in refining and improving their software.
[0003] Jiang Ziwen started by analyzing user behavior records of apps on smart terminals to gain a deeper understanding of app usage. Based on the Doc2Vec model, she proposed the AppUsage2Vec model, using deep learning to model user app usage behavior and using the AppUsage2Vec model to predict app usage and understand collaborative app behavior. For user behavior analysis in a big data environment, Chen Dan proposed a user behavior analysis system based on the Hadoop big data platform. This system collects users' daily log information through the input method SDK to obtain user behavior data and performs routine statistical calculations on this data, including user acquisition, activity, retention analysis, channel analysis, and analysis of custom events and errors. Furthermore, this paper also analyzes user sentiment trends based on user input data. Fujio Toriumi et al. analyzed private chat log data provided by LINE PLAY to clarify the behavior of private chat users and used clustering algorithms to classify users into 15 categories based on the results of user behavior analysis. Wang Xiaodong et al. conducted user behavior analysis based on log data generated by nodes of the National High-Performance Computing Environment (CNGrid), proposing a deep learning model based on Graph Neural Networks (GNN) and Recurrent Neural Networks (RNN) to predict user behavior. Experiments on the CNGrid's real user behavior dataset demonstrated the effectiveness of this new deep learning model. Liu Xinshuai et al. proposed an APP association rule extraction technique based on data mining, using association rule mining algorithms to analyze APP usage data collected from the Android platform and mine APP association rules.
[0004] In the aforementioned studies, the definitions and boundaries between user behavior and user operations were rather vague, making it difficult to distinguish between the two. Therefore, the user behavior mentioned in these studies actually refers to the user's actions while using the software, and the behavior analysis is essentially operation analysis. Furthermore, the analysis of user behavior primarily focuses on user behavior data from a single software application or a specific type of application, without explicitly extracting the user's actual behavior. Some studies only analyzed the correlation between different levels of the app software, without correspondingly analyzing the user behavior generated by the user's use of the app. Summary of the Invention
[0005] This invention provides a method and system for analyzing user behavior patterns based on APP software operation data, which is used to extract user behavior patterns by analyzing user APP software operation process data.
[0006] The technical solution of this invention is: a method for analyzing user behavior patterns based on APP software operation data, comprising: Step 1, preprocessing APP operation process data to obtain an information list corresponding to the activity; Step 2, combining the information list corresponding to the activity, performing operation analysis on the APP operation process data, and extracting APP operations from the APP operation process data; Step 3, mining the correlation between APP operations and APP user behavior, and constructing a correlation matrix between APP operations and APP user behavior; Step 4, extracting features from the correlation matrix between APP operations and APP user behavior to obtain APP user behavior; Step 5, analyzing the extracted APP user behavior and extracting APP user behavior patterns.
[0007] The process of preprocessing APP operation data to obtain a list of activity information includes: preprocessing the APP operation data set, querying the corresponding information of the activity activity for each APP operation data, and obtaining a list of activity information.
[0008] The process of mining the correlation between APP operations and APP user behavior, and constructing a correlation matrix between APP operations and APP user behavior, includes: mining the correlation between APP operations and APP user behavior through semantic similarity methods for the extracted APP operations, and incorporating APP category information data as heuristic knowledge into the mining of the correlation between APP operations and APP user behavior, thereby constructing a correlation matrix between APP operations and APP user behavior.
[0009] The step of extracting features from the correlation matrix between APP operations and APP user behavior to obtain APP user behavior includes: extracting features from the correlation matrix between APP operations and APP user behavior using a convolutional neural network, and mapping the extracted features to APP user behavior using a fully connected neural network.
[0010] The preprocessed APP operation data is used to obtain a list of information corresponding to the activity, including:
[0011] Step 1.1: Initialize the APP operation process dataset CaptureData, initialize the corresponding activity information dataset ActivityMessageData, and extract the APP operation process data from the APP operation process dataset CaptureData and store it in a two-dimensional list CaptureDataList. r*c =[[C1],[C2],[C3],…,[C r [C1] = [M1, M2, M3, ... M c ]], where C1 is the first APP operation process data, C r Let `r` be the r-th APP operation process data, `Mc` be the c-th attribute of the 1st APP operation process data, `r` be the total number of data entries in the APP operation process data list, and `c` be the total number of attributes for each APP operation process data. Extract the corresponding information of the activity from the ActivityMessageData dataset and store it in a two-dimensional list ActivityMessageList. q*2 =[[A1],[A2],[A3],…,[A q [A1] = [a1, m1]], where A1 is the information data corresponding to the first Activity, A q For the information data corresponding to the qth activity, a1 is the activity of the information data corresponding to the first activity, m1 is the "activity information corresponding to the first activity", set the temporary variable g = 0, and execute Step 1.2;
[0012] Step1.2. Determine if g < CaptureDataList.size(). If so, execute Step1.3; otherwise, execute Step2. Here, CaptureDataList.size() represents the total number of APP operation process data in the two-dimensional APP operation process data list CaptureDataList.
[0013] Step1.3. Retrieve the "Activity" of the current APP operation process data and store it in the local variable tempActivity, then execute Step1.4.
[0014] Step1.4. Determine if tempActivity is in the activity corresponding information list ActivityMessageList. If so, execute Step1.5; otherwise, execute Step1.6.
[0015] Step1.5. Increment g by 1, then execute Step1.2.
[0016] Step1.6. Look up the Chinese meaning of the current tempActivity in the dictionary as the corresponding information of the current activity Activity, and store it in the local variable tempActivityMessage, then execute Step1.7.
[0017] Step1.7. Add the list [tempActivity, tempActivityMessage] to the activity corresponding information list ActivityMessageList; then execute Step1.5.
[0018] The operation and analysis of the APP operation process data in combination with the activity corresponding information list, and the extraction of the APP operations in the APP operation process data include:
[0019] Step2.1. Initialize the temporary variables j = 0 and the one-dimensional list AnalyseCaptureDataList for storing APP operations, then execute Step2.2.
[0020] Step2.2. Determine if j < CaptureDataList.size(). If so, execute Step2.3; otherwise, execute Step3. Here, CaptureDataList.size() represents the total number of APP operation process data in the two-dimensional APP operation process data list CaptureDataList.
[0021] Step 2.3: Retrieve the "APP Name" from the current APP operation data and store it in the local variable tempAPPName. Then execute Step 2.4.
[0022] Step 2.4: Retrieve the "Activity" of the current APP operation process data and store it in the local variable tempActivity, then execute Step 2.5;
[0023] Step 2.5: Retrieve the "Description" of the current APP operation process data and store it in the local variable tempDescription, then execute Step 2.6;
[0024] Step 2.6: Determine if tempActivity is in the ActivityMessageList corresponding to the Activity. If it is, proceed to Step 2.7; otherwise, proceed to Step 2.8.
[0025] Step 2.7: Retrieve the corresponding information for tempActivity from the ActivityMessageList, and store it in the local variable tempActivityMessage; then proceed to Step 2.9.
[0026] Step 2.8: Set the corresponding information of the current Activity to null and store it in the local variable tempActivityMessage, then execute Step 2.9;
[0027] Step 2.9: The APP operation corresponding to the current APP operation process data consists of tempAPPName + tempDescription + tempActivityMessage, and the APP operation is stored in the local variable tempCapture. Then, Step 2.10 is executed.
[0028] Step 2.10: Add the APP operation tempCapture corresponding to the current APP operation process data to the APP operation list AnalyseCaptureList, and then execute Step 2.11;
[0029] Step 2.11, j++, execute Step 2.2.
[0030] The process involves mining the correlation between APP operations and APP user behavior, and constructing a correlation matrix between APP operations and APP user behavior, including:
[0031] Step 3.1. Initialize the semantic similarity list APPNameSimilarity for storing the semantic similarity between APP names and APP user behaviors, the semantic similarity list APPClassSimilarity for storing the semantic similarity between APP categories and APP user behaviors, and the semantic similarity list CaptureSimilarity for storing the semantic similarity between APP operations and APP user behaviors. Load the two-dimensional list APPClassList storing APP category data, where APPClassList o*2 = [[S1], [S2], [S3], …, [So]], [S1] = [b1, c1]], where S1 is the first APP category information data, S o is the o-th APP category information data, b1 is the APP name of the first APP category information data, c1 is the APP category of the first APP category information data. Load the two-dimensional list APPUserBehaviorKnowledgeList storing APP user behavior knowledge, where APPUserBehaviorKnowledgeList u*v = [[K1], [K2], [K3], …, [K u , [K1] = [N1, N2, N3, … N v , where K1 is the first APP user behavior knowledge data, K u is the u-th APP user behavior knowledge data, N v is the v-th APP user behavior knowledge of the first APP user behavior knowledge data. u is the total number of data in the APP user behavior knowledge list, and v is the total number of APP user behavior knowledge in each APP user behavior knowledge data. Since the number of APP user behavior knowledge included in each APP user behavior knowledge data is not necessarily the same, v is not a fixed value. Set the temporary variable p = 0 and execute Step 3.2;
[0032] Step 3.2. Judge whether p < CaptureDataList.size(). If so, execute Step 3.3; otherwise, execute Step 4. Here, CaptureDataList.size() represents the total number of APP operation process data in the two-dimensional APP operation process data list CaptureDataList;
[0033] Step 3.3. Take out the "APP name" of the current APP operation process data and store it in the local variable tempAPPName, and then execute Step 3.4;
[0034] Step 3.4: Retrieve the "APP Operation" data from the current APP operation process and store it in the local variable tempCapture. Then execute Step 3.5.
[0035] Step 3.5: Determine if the APP name tempAPPName in the current APP operation process data is in the APPClassList APP category data list. If it is, proceed to Step 3.6; otherwise, proceed to Step 3.7.
[0036] Step 3.6: Retrieve the category information corresponding to tempAPPName and store it in the local variable tempAPPClass, which corresponds to the category information of APP. Then execute Step 3.8.
[0037] Step 3.7: Set the category information corresponding to the current APP to empty and store it in the local variable tempAPPClass, then execute Step 3.8;
[0038] Step 3.8: Initialize the semantic similarity list tempAPPNameSimilarity (storing the current APP name and APP user behavior), the semantic similarity list tempAPPClassSimilarity (storing the current APP category and APP user behavior), and the semantic similarity list tempCaptureSimilarity (storing the current APP operation and APP user behavior), set the temporary variable s = 0, and execute Step 3.9;
[0039] Step 3.9: Determine if s < APPUserBehaviorKnowledgeList.size(). If yes, proceed to Step 3.10; otherwise, proceed to Step 3.14. Here, APPUserBehaviorKnowledgeList.size() represents the total number of APP user behavior knowledge data entries in the two-dimensional APP user behavior knowledge list APPUserBehaviorKnowledgeList.
[0040] Step 3.10: Calculate the semantic similarity between the APP name tempAPPName of the current APP operation process data and the current APP user behavior knowledge APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempAPPNameSimilarity. Then execute Step 3.11.
[0041] Step 3.11: Calculate the semantic similarity between tempAPPClass, the APP category information corresponding to the current APP operation process data, and APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempAPPClassSimilarity. Then execute Step 3.12.
[0042] Step 3.12: Calculate the semantic similarity between the current APP operation process data (APP operation tempCapture) and the current APP user behavior knowledge (APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempCaptureSimilarity. Then execute Step 3.13.
[0043] Step 3.13, s++, execute Step 3.9;
[0044] Step 3.14: Add the semantic similarity list tempAPPNameSimilarity between the current APP name and APP user behavior to the semantic similarity list APPNameSimilarity between the APP name and APP user behavior; add the semantic similarity list tempAPPClassSimilarity between the current APP category information and APP user behavior to the semantic similarity list APPClassSimilarity between the APP category information and APP user behavior; add the semantic similarity list tempCaptureSimilarity between the current APP operation and APP user behavior to the semantic similarity list CapureSimilarity between the APP operation and APP user behavior; then proceed to Step 3.15.
[0045] Step 3.15, p++, execute Step 3.2.
[0046] The step of extracting features from the correlation matrix between APP operations and APP user behavior to obtain APP user behavior includes:
[0047] Step 4.1: Initialize the APP user behavior feature detector 1T_APPUserBehavior_1:
[0048] W conv_1 ,b conv_1
[0049] Initialize the APP user behavior feature detector 2T_APPUserBehavior_2:
[0050] Wconv_2 ,b conv_2
[0051] Extract the semantic similarity list between the APP name and the APP user behavior, the semantic similarity list between the APP category information and the APP user behavior, and the semantic similarity list between the APP operation and the APP user behavior corresponding to the current APP operation process data, and form the APP operation input matrix, namely the APP operation input layer APPCaptureInputLevel, and execute Step 4.2.
[0052] Step 4.2: Use the APP user behavior feature detector 1T_APPUserBehavior_1 to slide on the APP operation input layer APPCaptureInputLevel. The detector outputs y_conv1 each time as follows:
[0053]
[0054] Where y_conv1 and the bias parameter Weight parameters Indicates a dimension of N f , Indicates a dimension of N c ×N f N c N represents the number of feature detectors. f APPCaptureInputLevel represents the dimension of the input layer vector for app operations. i This indicates that during the i-th swipe in the APP's input layer, W... conv_1 For the matrices involved in the calculation, proceed to Step 4.3;
[0055] Step 4.3: Perform max pooling on y_conv1 to obtain the pooled output y_pool, then proceed to Step 4.4:
[0056] Step 4.4: Use the APP user behavior feature detector 2T_APPUserBehavior_2 to slide on y_pool. The detector outputs y_conv2 each time as follows:
[0057]
[0058] Where y_conv2 and the bias parameter Weight parameters Indicates a dimension of N f , Indicates a dimension of N c ×N f Nc is the number of feature detectors, N f is the dimension of the y_pool vector, y_pool i Indicates that in the i-th sliding of y_pool, it participates in the calculation with W conv_2 The matrix participating in the calculation, execute Step4.5;
[0059] Step4.5. Connect y_conv2 into y, and execute Step4.6;
[0060] Step4.6. Input y into a fully connected neural network layer with a fixed size, and then feedback it to the output layer. Calculate the deviation using the APP user behavior output by the fully connected neural network and the label of the APP user behavior annotation corresponding to the training batch batch. According to the backpropagation process, obtain the errors of the parameters of each layer of the neural network. Adjust the parameters of each layer according to these errors to complete the optimization of the network model. When training this model, execute Step4.7;
[0061] Step4.7. Continuously iterate Step4.6 until the network converges. When using this model, execute Step4.8;
[0062] Step4.8. Store the APP user behavior output by the fully connected neural network in Step4.6 into the APP user behavior list APPUserBehaviorList until the APP user behavior of all data has been extracted, and then execute Step5.
[0063] The analysis of the extracted APP user behavior and the extraction of the APP user behavior pattern include:
[0064] Step5.1. Initialize the two-dimensional list APPUserBehaviorModeList for storing the APP user behavior pattern and the two-dimensional list APPUserBehaviorTimeList for storing the APP user behavior set. Set the temporary variable w = 0, and execute Step5.2;
[0065] Step5.2. Judge whether w < CaptureDataList.size(). If so, execute Step5.3; otherwise, execute Step5.9, where CaptureDataList.size() represents the total number of APP operation process data in the two-dimensional APP operation process data list CaptureDataList;
[0066] Step5.3. Extract the generation time of the current APP operation process data, calculate the time period to which this time belongs, and store it in the local variable T uCalculate the time slice within the time period to which the event belongs and store it in the local variable T. us Proceed to Step 5.4;
[0067] Step 5.4: Extract the user behavior data extracted from the current APP operation process and store it in the local variable tempAPPUserBehavior. Then execute Step 5.5.
[0068] Step 5.5, Determine T u Check if the app is in the APPUserBehaviorTimeList list. If yes, proceed to Step 5.6; otherwise, proceed to Step 5.7. The APPUserBehaviorTimeList is a list of APP user behavior items, and each APP behavior item is a string containing APP user behavior and its time information.
[0069] Step 5.6: Press tempAPPUserBehavior+T us Add the time period T to the APPUserBehaviorTimeList, which is a collection of user behaviors in the APP. u For the corresponding list, proceed to Step 5.8;
[0070] Step 5.7: Transfer list [T] u tempAPPUserBehavior+T us Add it to the APPUserBehaviorTimeList user behavior set list, and then proceed to Step 5.8;
[0071] Step 5.8, w++, execute Step 5.2;
[0072] Step 5.9: Initialize support S and confidence C, then proceed to Step 5.10;
[0073] Step 5.10: Initialize the list of candidate sets to be stored, CandidateSetList, and then execute Step 5.11. The candidate set list is a list that stores the currently generated candidate sets. A candidate set is a collection of combinations of APP user behavior items that meet the current conditions, and it is stored in a list.
[0074] Step 5.11: Iterate through the APP User BehaviorTimeList and generate a candidate set C1 where each element contains only a single APP user behavior item. C1 is a one-dimensional list containing several elements. Then execute Step 5.12.
[0075] Step 5.12: Remove elements in the candidate set that do not meet the support S, and proceed to Step 5.13;
[0076] Step 5.13: Determine if the candidate set is empty. If it is, proceed to Step 5.16; otherwise, proceed to Step 5.14.
[0077] Step 5.14: Add the current candidate set to the candidate set list CandidateSetList, then proceed to Step 5.15;
[0078] Step 5.15: If the remaining elements in the candidate set each contain K APP user behavior items, then create a candidate set C where each element contains K+1 APP user behavior items. K+1 C K+1 It is a one-dimensional list containing several elements; proceed to Step 5.12.
[0079] Step 5.16: Generate a set of frequent APP user behavior items based on the candidate set list CandidateSetList, and execute Step 5.17. The set of frequent APP user behavior items refers to the set of APP user behavior item combinations whose support is greater than or equal to the set support S.
[0080] Step 5.17: Generate strong association rules for APP user behavior based on frequent APP behavior itemsets, and execute Step 5.18. Here, a strong association rule for APP user behavior refers to an APP user behavior association rule whose confidence level is greater than or equal to the set confidence level C.
[0081] Step 5.18: Determine if the number of time periods is less than or equal to 1. If so, proceed to Step 5.21; otherwise, proceed to Step 5.19.
[0082] Step 5.19: Determine whether the number of strongly related rules for APP user behavior is less than or equal to the number of time periods. If yes, proceed to Step 5.21; otherwise, proceed to Step 5.20.
[0083] Step 5.20: Adjust the values of S and C, then execute Step 5.10;
[0084] Step 5.21: Extract the APP user behavior patterns based on the strong association rules of APP user behavior and add them to the user behavior pattern list APPUserBehaviorModeList.
[0085] According to another aspect of the present invention, a user behavior pattern analysis system based on APP software operation data is also provided, comprising: a first obtaining module, used to preprocess APP operation process data to obtain an information list corresponding to an activity; an extraction module, used to combine the information list corresponding to the activity to perform operation analysis on the APP operation process data and extract APP operations from the APP operation process data; a construction module, used to mine the correlation between APP operations and APP user behavior and construct a correlation matrix between APP operations and APP user behavior; a second obtaining module, used to extract features from the correlation matrix between APP operations and APP user behavior to obtain APP user behavior; and an extraction module, used to analyze the extracted APP user behavior and extract APP user behavior patterns.
[0086] The beneficial effects of this invention are:
[0087] (1) This invention can identify and extract the user behavior reflected in the user's APP software operation process data, which helps to explore the deeper meaning of APP user behavior.
[0088] (2) This invention can extract user behavior patterns by mining the correlation between APP user behaviors, which helps to obtain users’ usage habits and interests, and provides a reference for improving and perfecting the APP. Attached Figure Description
[0089] Figure 1 This is a flowchart of the present invention;
[0090] Figure 2 for Figure 1 The detailed flowchart of Step 1;
[0091] Figure 3 yes Figure 1 The detailed flowchart of Step 2;
[0092] Figure 4 yes Figure 1 The detailed flowchart for Step 3;
[0093] Figure 5 yes Figure 1 The convolutional neural network structure diagram for Step 4;
[0094] Figure 6 yes Figure 1 The detailed flowchart for step 5. Detailed Implementation
[0095] The invention will be further described below with reference to the accompanying drawings and embodiments, but the scope of the invention is not limited to the description.
[0096] Example 1: A method for analyzing user behavior patterns based on APP software operation data, comprising: Step 1, preprocessing APP operation process data to obtain a list of information corresponding to activities; Step 2, combining the list of information corresponding to activities to perform operation analysis on the APP operation process data and extract APP operations from the APP operation process data; Step 3, mining the correlation between APP operations and APP user behavior, and constructing a correlation matrix between APP operations and APP user behavior; Step 4, extracting features from the correlation matrix between APP operations and APP user behavior to obtain APP user behavior; Step 5, analyzing the extracted APP user behavior and extracting APP user behavior patterns.
[0097] Optionally, the preprocessing of APP operation process data to obtain the activity corresponding information list includes: preprocessing the APP operation process dataset, querying the corresponding information of the activity activity for each APP operation process data, and obtaining the activity corresponding information list.
[0098] Optionally, the step of mining the correlation between APP operations and APP user behavior and constructing a correlation matrix between APP operations and APP user behavior includes: mining the correlation between APP operations and APP user behavior through semantic similarity methods for the extracted APP operations, and using APP category information data as heuristic knowledge to participate in the mining of the correlation between APP operations and APP user behavior, thereby constructing a correlation matrix between APP operations and APP user behavior.
[0099] Optionally, the step of extracting features from the correlation matrix between APP operations and APP user behavior to obtain APP user behavior includes: extracting features from the correlation matrix between APP operations and APP user behavior using a convolutional neural network, and mapping the extracted features to APP user behavior using a fully connected neural network.
[0100] Example 2: Figure 1-6 As shown, a method for analyzing user behavior patterns based on APP software operation data includes:
[0101] Step 1: Preprocess APP operation process data: Preprocess the APP operation process dataset, query the corresponding information of the Activity for each APP operation process data, and obtain a list of Activity corresponding information.
[0102] Step 2: Extract APP operations: Combine the information list corresponding to the Activity to perform operation analysis on the APP operation process data and extract the APP operations from the APP operation process data;
[0103] Step 3: Mining the correlation between APP operations and APP user behavior: For the extracted APP operation data, the correlation between APP operations and APP user behavior is mined through semantic similarity method. APP category information data is also used as heuristic knowledge to participate in the mining of the correlation between APP operations and APP user behavior, and a correlation matrix between APP operations and APP user behavior is constructed.
[0104] Step 4: Extract APP user behavior: Use a convolutional neural network to extract features from the correlation matrix between APP operations and APP user behavior, and then map the extracted features to APP user behavior through a fully connected neural network.
[0105] Step 5: Extract App User Behavior Patterns: Analyze the extracted app user behaviors to explore the correlations between them, thereby further extracting app user behavior patterns.
[0106] The following is a detailed description of one optional specific method of the present invention. Table 1 shows the data attribute table for the APP operation process, which provides the meaning and symbolic representation of the data attributes for the APP operation process.
[0107] Table 1. Data Attribute Table of APP Operation Process
[0108] Attribute symbol representation Attribute meaning UserID User ID, unique identifier APPName The name of the app currently being used by the user PackageName The package name of the app currently being used by the user Activity The activity launched by the user's currently used APP StartTime The time stamp of when the user started using the app EventType The type of event triggered by the user's current action Description Description of the user's current operation
[0109] Furthermore, the specific steps of the method can be set as follows (the following mainly uses APP operation process data for experimental illustration):
[0110] Step 1.1: Preprocess APP operation process data; initialize the APP operation process dataset CaptureData, initialize the corresponding information dataset ActivityMessageData for the Activity, and extract the APP operation process data from the CaptureData dataset and store it in a two-dimensional list CaptureDataList. r*c =[[C1],[C2],[C3],…,[C r [C1] = [M1, M2, M3, ... M c ]], where C1 is the first APP operation process data, C rLet `r` be the r-th APP operation process data, `Mc` be the c-th attribute of the 1st APP operation process data, `r` be the total number of data entries in the APP operation process data list, and `c` be the total number of attributes for each APP operation process data. Extract the corresponding information of the activity from the ActivityMessageData dataset and store it in a two-dimensional list ActivityMessageList. q*2 =[[A1],[A2],[A3],…,[A q [A1] = [a1, m1]], where A1 is the information data corresponding to the first Activity, A q For the qth activity, a1 is the activity corresponding to the first activity, m1 is the "activity corresponding information" of the first activity, set the temporary variable g = 0, initialize ActivityMessageData = [], and execute Step 1.2;
[0111] Table 2 APP Operation Process Data Table
[0112]
[0113] Step 1.2: Determine if g < CaptureDataList.size(): 0 < 2, then execute Step 1.3;
[0114] Step 1.3: Retrieve the "Activity" of the current APP operation process data, that is, retrieve the first APP operation process data and store it in the local variable tempActivity, i.e., tempActivity = 'android.widget.Button', and execute Step 1.4;
[0115] Step 1.4: Determine if tempActivity is in the ActivityMessageList corresponding to the Activity. If tempActivity is not in ActivityMessageList, proceed to Step 1.6.
[0116] Step 1.6: Look up the Chinese meaning of the current tempActivity in the Oxford Advanced Learner's English-Chinese Dictionary, use it as the corresponding information of the current Activity, and store it in the local variable tempActivityMessage, tempActivityMessage = 'Button', then execute Step 1.7;
[0117] Step 1.7: Add the list [tempActivity, tempActivityMessage] to the ActivityMessageList corresponding to the Activity, where ActivityMessageList = [['android.widget.Button', 'Button']]. Execute Step 1.5.
[0118] Step 1.5: g++, g=1, execute Step 1.2;
[0119] Step 1.2: Determine if g < CaptureDataList.size(): 1 < 2, then execute Step 1.3;
[0120] Step 1.3: Retrieve the "Activity" of the current APP operation process data and store it in the local variable tempActivity, i.e., tempActivity = 'android.widget.Button', then execute Step 1.4;
[0121] Step 1.4: Determine if tempActivity is in the ActivityMessageList corresponding to the Activity. If tempActivity is in ActivityMessageList, proceed to Step 1.5.
[0122] Step 1.5: g++, g=2, execute Step 1.2;
[0123] Step 1.2: Determine if g < CaptureDataList.size(): 2 < 2, then execute Step 2;
[0124] Step 2 is described in detail below:
[0125] Step 2.1: Initialize j = 0, store the one-dimensional list AnalyseCaptureDataList of APP operations, AnalyseCaptureDataList = [], and execute Step 2.2;
[0126] Step 2.2: Determine if j < CaptureDataList.size(), 0 < 2, then execute Step 2.3;
[0127] Step 2.3: Retrieve the "APP Name" from the current APP operation data and store it in the local variable tempAPPName, where tempAPPName = 'JD.com'. Then proceed to Step 2.4.
[0128] Step 2.4: Retrieve the "Activity" of the current APP operation process data and store it in the local variable tempActivity, tempActivity = 'android.widget.Button', then execute Step 2.5;
[0129] Step 2.5: Retrieve the "Description" of the current APP operation process data and store it in the local variable tempDescription, tempDescription = 'Submit Order', then proceed to Step 2.6;
[0130] Step 2.6: Determine if tempActivity is in the ActivityMessageList. If tempActivity is in ActivityMessageList, proceed to Step 2.7. (Another case is if tempActivity is not in ActivityMessageList: Step 2.8: Set the corresponding information for the current Activity to null and store it in the local variable tempActivityMessage, then proceed to Step 2.9.)
[0131] Step 2.7: Retrieve the corresponding information of tempActivity from the ActivityMessageList, and store it in the local variable tempActivityMessage; tempActivityMessage = 'Button', then execute Step 2.9;
[0132] Step 2.9: The APP operation corresponding to the current APP operation process data consists of tempAPPName + tempDescription + tempActivityMessage, and the APP operation is stored in the local variable tempCapture, tempCapture = 'JD.com Submit Order Button', then proceed to Step 2.10;
[0133] Step 2.10: Add the APP operation tempCapture corresponding to the current APP operation process data to the APP operation list AnalyseCaptureList, AnalyseCaptureList = ['JD.com Submit Order Button'], then execute Step 2.11;
[0134] Step 2.11, j++, j=1, execute Step 2.2;
[0135] Step 2.2: Determine if j < CaptureDataList.size(), 1 < 2, then execute Step 2.3;
[0136] Step 2.3: Retrieve the "APP Name" from the current APP operation data and store it in the local variable tempAPPName, where tempAPPName = 'Alipay'. Then execute Step 2.4.
[0137] Step 2.4: Retrieve the "Activity" of the current APP operation process data and store it in the local variable tempActivity, tempActivity = 'android.widget.Button', then execute Step 2.5;
[0138] Step 2.5: Retrieve the "Description" of the current APP operation process data and store it in the local variable tempDescription, tempDescription = 'Confirm Transfer'. Then proceed to Step 2.6.
[0139] Step 2.6: Determine if tempActivity is in the ActivityMessageList corresponding to the Activity. If tempActivity is in ActivityMessageList, proceed to Step 2.7.
[0140] Step 2.7: Retrieve the corresponding information of tempActivity from the ActivityMessageList, and store it in the local variable tempActivityMessage; tempActivityMessage = 'Button', then execute Step 2.9;
[0141] Step 2.9: The APP operation corresponding to the current APP operation process data consists of tempAPPName + tempDescription + tempActivityMessage, and the APP operation is stored in the local variable tempCapture, tempCapture = 'Alipay Confirm Transfer Button', then proceed to Step 2.10;
[0142] Step 2.10: Add the APP operation tempCapture corresponding to the current APP operation process data to the APP operation list AnalyseCaptureList, AnalyseCaptureList = ['JD.com Submit Order Button', 'Alipay Confirm Transfer Button'], then execute Step 2.11;
[0143] Step 2.11, j++, j=2, execute Step 2.2;
[0144] Step 2.2: Determine if j < CaptureDataList.size(), 2 < 2, then proceed to Step 3;
[0145] Step 3 is described in detail below:
[0146] Step 3.1: Initialize the semantic similarity list APPNameSimilarity (APPNameSimilarity = []) for storing APP names and APP user behaviors, the semantic similarity list APPClassSimilarity (APPClassSimilarity = []) for storing APP categories and APP user behaviors, the semantic similarity list CaptureSimilarity (CaptureSimilarity = []) for storing APP operations and APP user behaviors, and load the two-dimensional list APPClassList (APPClassList) for storing APP category data. o*2 =[[S1],[S2],[S3],…,[S o [S1] = [b1,c1], where S1 is the first APP category information data, S n Let b1 be the name of the first APP category information data, c1 be the "APP category" of the first APP category information data, and load the two-dimensional list APPUserBehaviorKnowledgeList that stores APP user behavior knowledge. u*v =[[K1],[K2],[K3],…,[K u[K1] = [N1, N2, N3, ... N v ]], where K1 is the first piece of APP user behavior knowledge data, K u For the uth APP user behavior knowledge data, N v This refers to the v-th APP user behavior knowledge in the first APP user behavior knowledge data, where u is the total number of data entries in the APP user behavior knowledge list, and v is the total number of APP user behavior knowledge entries per data entry. Since the number of APP user behavior knowledge entries per data entry may vary, v is not a fixed value.
[0147] APPClassList = [['Alipay', 'Payment (Finance)'], ['JD.com', 'Shopping'], ['Kugou Music', 'Music'], ['Cainiao Guoguo', 'Shopping (Logistics)'], ['Xuexitong', 'Learning (Education)'], ['Pinduoduo', 'Shopping'], ['Mobile Taobao', 'Shopping'], ['Bilibili', 'Video'], ['QQ Mail', 'Social'], ['360 Mobile Manager', 'Security'], ['Settings', 'System Tools'], ['Reading', 'Reading'], ['Kingsoft PowerWord', 'Learning'], ['QQ', 'Social'], ['WeChat', 'Social']]
[0148] The APP user behavior knowledge data is shown in Table 3.
[0149] Table 3. Knowledge Data on APP User Behavior
[0150]
[0151] Set p = 0 and execute Step 3.2;
[0152] Step 3.2: Determine if p < CaptureDataList.size(), 0 < 2, then execute Step 3.3;
[0153] Step 3.3: Retrieve the "APP Name" from the current APP operation data and store it in the local variable tempAPPName, where tempAPPName = 'JD.com'. Then execute Step 3.4.
[0154] Step 3.4: Retrieve the current APP operation data and store it in the local variable tempCapture, tempCapture = 'JD.com Submit Order Button', then execute Step 3.5;
[0155] Step 3.5: Determine if the APP name (tempAPPName) in the current APP operation data is in the APP category data list (APPClassList). If tempAPPName is in APPClassList, proceed to Step 3.6. (Another case is if tempAPPName is not in APPClassList: Step 3.7: Set the category information corresponding to the current APP to null and store it in the local variable tempAPPClass, then proceed to Step 3.8.)
[0156] Step 3.6: Retrieve the category information corresponding to tempAPPName and store it in the local variable APP, where tempAPPClass = 'Shopping'. Then execute Step 3.8.
[0157] Step 3.8: Initialize the semantic similarity list tempAPPNameSimilarity for storing the current APP name and APP user behavior, tempAPPNameSimilarity = [], the semantic similarity list tempAPPClassSimilarity for storing the current APP category and APP user behavior, tempAPPClassSimilarity = [], the semantic similarity list tempCaptureSimilarity for storing the current APP operation and APP user behavior, tempCaptureSimilarity = [], set s = 0, and execute Step 3.9;
[0158] Step 3.9: Determine if s < APPUserBehaviorKnowledgeList.size(), 0 < 15, then execute Step 3.10;
[0159] Step 3.10: Calculate the semantic similarity between the APP name tempAPPName of the current APP operation process data and the current APP user behavior knowledge APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempAPPNameSimilarity. Then execute Step 3.11.
[0160] Step 3.11: Calculate the semantic similarity between tempAPPClass, the APP category information corresponding to the current APP operation process data, and APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempAPPClassSimilarity. Then execute Step 3.12.
[0161] Step 3.12: Calculate the semantic similarity between the current APP operation process data (APP operation tempCapture) and the current APP user behavior knowledge (APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempCaptureSimilarity. Then execute Step 3.13.
[0162] Step 3.13, s++, execute Step 3.9;
[0163] Execute Steps 3.9-3.13 repeatedly. When s = 15, the following results are obtained: tempAPPNameSimilarity, tempAPPClassSimilarity, and tempCaptureSimilarity:
[0164] tempAPPNameSimilarity=[0.871,0.103,0.248,0.148,0.069,0.159,0.149,0.04,0.118,0.128,0.102,0.058,0.07,0.082,0.057]
[0165] tempAPPClassSimilarity=[1.0,0.215,0.886,0.156,0.52,0.868,0.219,0.111,0.18,0.872,0.082,0.072,0.118,0.188,0.165]
[0166] tempCaptureSimilarity=[0.621,0.086,0.327,0.058,0.085,0.324,0.299,0.05,0.063,0.33,0.345,0.028,0.063,0.313,0.056]
[0167] 15 < 15, proceed to Step 3.14;
[0168] Step 3.14: Add the semantic similarity list tempAPPNameSimilarity between the current APP name and APP user behavior to the semantic similarity list APPNameSimilarity; add the semantic similarity list tempAPPClassSimilarity between the current APP category information and APP user behavior to the semantic similarity list APPClassSimilarity; add the semantic similarity list tempCaptureSimilarity between the current APP operation and APP user behavior to the semantic similarity list CapureSimilarity, thus obtaining APPNameSimilarity. 1*15 APPClassSimilarity 1*15 CapureSimilarity 1*15 As shown below:
[0169] APPNameSimilarity 1*15 =[[0.871,0.103,0.248,0.148,0.069,0.159,0.149,0.04,0.118,0.128,0.102,0.058,0.07,0.082,0.057]]
[0170] APPClassSimilarity 1*15 =[[1.0,0.215,0.886,0.156,0.52,0.868,0.219,0.111,0.18,0.872,0.082,0.072,0.118,0.188,0.165]]
[0171] CapureSimilarity 1*15 =[[0.621,0.086,0.327,0.058,0.085,0.324,0.299,0.05,0.063,0.33,0.345,0.028,0.063,0.313,0.056]]
[0172] Proceed to Step 3.15;
[0173] Step 3.15, p++, p=1, execute Step 3.2;
[0174] Step 3.2: Determine if p < CaptureDataList.size(), 1 < 2, then execute Step 3.3;
[0175] Step 3.3: Retrieve the "APP Name" from the current APP operation data and store it in the local variable tempAPPName, where tempAPPName = 'Alipay'. Then execute Step 3.4.
[0176] Step 3.4: Retrieve the current APP operation data and store it in the local variable tempCapture, where tempCapture = 'Alipay Confirm Transfer Button'. Then execute Step 3.5.
[0177] Step 3.5: Determine if the APP name tempAPPName in the current APP operation process data is in the APPClassList. If tempAPPName is in APPClassList, proceed to Step 3.6.
[0178] Step 3.6: Retrieve the category information corresponding to tempAPPName and store it in the local variable APP, where tempAPPClass = 'Payment (Finance)'. Then execute Step 3.8.
[0179] Step 3.8: Initialize the list of semantic similarity between the current APP name and each type of APP user behavior, tempAPPNameSimilarity = [], the list of semantic similarity between the current APP category and each type of APP user behavior, tempAPPClassSimilarity = [], the list of semantic similarity between the current APP operation and each type of APP user behavior, tempCaptureSimilarity = [], set s = 0, and execute Step 3.9;
[0180] Step 3.9: Determine if s < APPUserBehaviorKnowledgeList.size(), 0 < 15, then execute Step 3.10;
[0181] Step 3.10: Calculate the semantic similarity between the APP name tempAPPName of the current APP operation process data and the current APP user behavior knowledge APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempAPPNameSimilarity. Then execute Step 3.11.
[0182] Step 3.11: Calculate the semantic similarity between tempAPPClass, the APP category information corresponding to the current APP operation process data, and APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempAPPClassSimilarity. Then execute Step 3.12.
[0183] Step 3.12: Calculate the semantic similarity between the current APP operation process data (APP operation tempCapture) and the current APP user behavior knowledge (APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempCaptureSimilarity. Then execute Step 3.13.
[0184] Step 3.13, s++, execute Step 3.9;
[0185] Execute Steps 3.9-3.13 repeatedly. When s = 15, the following results are obtained: tempAPPNameSimilarity, tempAPPClassSimilarity, and tempCaptureSimilarity:
[0186] tempAPPNameSimilarity=[0.23,0.174,0.246,0.578,0.042,0.246,0.938,0.524,0.195,0.882,0.142,0.117,0.142,0.152,0.11]
[0187] tempAPPClassSimilarity=[0.315,0.069,0.086,0.053,0.073,0.112,0.64,0.041,0.104,0.082,0.112,0.116,0.077,0.094,0.069]
[0188] tempCaptureSimilarity=[0.297,0.286,0.067,0.055,0.051,0.321,0.606,0.073,0.069,0.076,0.057,0.025,0.055,0.317,0.308]
[0189] 15 < 15, proceed to Step 3.14;
[0190] Step 3.14: Add the semantic similarity list tempAPPNameSimilarity between the current APP name and APP user behavior to the semantic similarity list APPNameSimilarity; add the semantic similarity list tempAPPClassSimilarity between the current APP category information and APP user behavior to the semantic similarity list APPClassSimilarity; add the semantic similarity list tempCaptureSimilarity between the current APP operation and APP user behavior to the semantic similarity list CapureSimilarity, thus obtaining APPNameSimilarity. 2*15 APPClassSimilarity 2*15 CapureSimilarity 2*15 As shown below:
[0191] APPNameSimilarity 2*15 =[[0.871,0.103,0.248,0.148,0.069,0.159,0.149,0.04,0.118,0.128,0.102,0.058,0.07,0.082,0.057],[0.23,0.174,0.246,0.578,0.042,0.246,0.938,0.524,0.195,0.882,0.142,0.117,0.142,0.152,0.11]]
[0192] APPClassSimilarity 2*15 =[[1.0,0.215,0.886,0.156,0.52,0.868,0.219,0.111,0.18,0.872,0.082,0.072,0.118,0.188,0.165],[0.315,0.069,0.086,0.053,0.073,0.112,0.64,0.041,0.104,0.082,0.112,0.116,0.077,0.094,0.069]]
[0193] CapureSimilarity 2*15=[[0.621,0.086,0.327,0.058,0.085,0.324,0.299,0.05,0.063,0.33,0.345,0.028,0.063,0.313,0.056],[0.297,0.286,0.067,0.055,0.051,0.321,0.606,0.073,0.069,0.076,0.057,0.025,0.055,0.317,0.308]]
[0194] Proceed to Step 3.15;
[0195] Step 3.15, p++, p=2, execute Step 3.2;
[0196] Step 3.2: Determine if p < CaptureDataList.size(), 2 < 2, then proceed to Step 4;
[0197] Step 4 is described in detail below (the following describes the process of using the model, omitting the model training process, which consists of Steps 4.1-4.7 of this invention):
[0198] Step 4.1: Initialize the APP user behavior feature detector 1T_APPUserBehavior_1: W conv_1 ,b conv_1 Initialize the APP user behavior feature detector 2T_APPUserBehavior_2: W conv_2 ,b conv_2 Extract the semantic similarity lists of APP name and APP user behavior, APP category information and APP user behavior, and APP operation and APP user behavior corresponding to the current APP operation process data, and form the APP operation input matrix, i.e., the APP operation input layer APPCaptureInputLevel. The APP operation input layer APPCaptureInputLevel corresponding to the first data is shown below:
[0199] APPCaptureInputLevel 3*15*1=[[0.871,0.103,0.248,0.148,0.069,0.159,0.149,0.04,0.118,0.128,0.102,0.058,0.07,0.082,0.057],[1.0,0.215,0.886,0.156,0.52,0.868,0.219,0.1] 11,0.18,0.872,0.082,0.072,0.118,0.188,0.165],[0.621,0.086,0.327,0.058,0.085,0.324,0.299,0.05,0.063,0.33,0.345,0.028,0.063,0.313,0.056]]
[0200] Proceed to Step 4.2;
[0201] Step 4.2: Use the APP user behavior feature detector 1T_APPUserBehavior_1 to slide on the APP operation input layer APPCaptureInputLevel. The detector outputs y_conv1 each time as follows:
[0202]
[0203] Where y_conv1 and the bias parameter Weight parameters Indicates a dimension of N f , Indicates a dimension of N c ×N f N c N represents the number of feature detectors. f APPCaptureInputLevel represents the dimension of the input layer vector for app operations. i This indicates that during the i-th swipe in the APP's input layer, W... conv_1 For the matrices involved in the calculation, proceed to Step 4.3;
[0204] Step 4.3: Perform max pooling on y_conv1 to obtain the pooled output y_pool. Then execute Step 4.4:
[0205] Step 4.4: Use the APP user behavior feature detector 2T_APPUserBehavior_2 to slide on y_pool. The detector outputs y_conv2 each time as follows:
[0206]
[0207] Where y_conv2 and the bias parameter Weight parameters Indicates a dimension of N f , Indicates a dimension of N c ×N f N c N represents the number of feature detectors. f Let y_pool be the dimension of the y_pool vector. i This indicates that in the i-th sliding motion of y_pool, W... conv_2 For the matrices involved in the calculation, proceed to Step 4.5;
[0208] Step 4.5: Concatenate y_conv2 into y, then proceed to Step 4.6;
[0209] Step 4.6: Input y into a fixed-size fully connected neural network layer and execute Step 4.8;
[0210] Step 4.8: Store the APP user behavior output by the fully connected neural network in Step 4.6 into the APP user behavior list APPUserBehaviorList, APPUserBehaviorList = ['Shopping'], and then execute Step 4.1 again;
[0211] Step 4.1: Initialize the APP user behavior feature detector 1T_APPUserBehavior_1: W conv_1 ,b conv_1 Initialize the APP user behavior feature detector 2T_APPUserBehavior_2: W conv_2 ,b conv_2 Extract the semantic similarity lists of the APP name and APP user behavior, the APP category information and APP user behavior, and the APP operation and APP user behavior corresponding to the current APP operation data, and form the APP operation input matrix, i.e., the APP operation input layer APPCaptureInputLevel. The APP operation input layer APPCaptureInputLevel corresponding to the second data is shown below:
[0212] APPCaptureInputLevel 3*15*1=[[0.23,0.174,0.246,0.578,0.042,0.246,0.938,0.524,0.195,0.882,0.142,0.117,0.142,0.152,0.11],[0.315,0.069,0.086,0.053,0.073,0.112,0.64,0.0] 41,0.104,0.082,0.112,0.116,0.077,0.094,0.069],[0.297,0.286,0.067,0.055,0.051,0.321,0.606,0.073,0.069,0.076,0.057,0.025,0.055,0.317,0.308]]
[0213] Proceed to Step 4.2;
[0214] Step 4.2: Use the APP user behavior feature detector 1T_APPUserBehavior_1 to slide on the APP operation input layer APPCaptureInputLevel. The detector outputs y_conv1 each time as follows:
[0215]
[0216] Where y_conv1 and the bias parameter Weight parameters Indicates a dimension of N f , Indicates a dimension of N c ×N f N c N represents the number of feature detectors. f APPCaptureInputLevel represents the dimension of the input layer vector for app operations. i This indicates that during the i-th swipe in the APP's input layer, W... conv_1 For the matrices involved in the calculation, proceed to Step 4.3;
[0217] Step 4.3: Perform max pooling on y_conv1 to obtain the pooled output y_pool. Then execute Step 4.4:
[0218] Step 4.4: Use the APP user behavior feature detector 2T_APPUserBehavior_2 to slide on y_pool. The detector outputs y_conv2 each time as follows:
[0219]
[0220] Where y_conv2 and the bias parameter Weight parameters Indicates a dimension of N f , Indicates a dimension of N c ×N f N c N represents the number of feature detectors. f Let y_pool be the dimension of the y_pool vector. i This indicates that in the i-th sliding motion of y_pool, W... conv_2 For the matrices involved in the calculation, proceed to Step 4.5;
[0221] Step 4.5: Concatenate y_conv2 into y, then proceed to Step 4.6;
[0222] Step 4.6: Input y into a fixed-size fully connected neural network layer and execute Step 4.8;
[0223] Step 4.8: Store the APP user behaviors output by the fully connected neural network in Step 4.6 into the APP user behavior list APPUserBehaviorList, APPUserBehaviorList = ['Shopping', 'Payment']. All APP user behaviors have been extracted. Proceed to Step 5.
[0224] Step 5 is described in detail below:
[0225] Step 5.1: Initialize the two-dimensional list APPUserBehaviorModeList for storing APP user behavior patterns, APPUserBehaviorModeList = [], and the two-dimensional list APPUserBehaviorTimeList for storing APP user behavior sets, APPUserBehaviorTimeList = [], set w = 0, and execute Step 5.2;
[0226] Step 5.2 Determine if w < CaptureDataList.size(), 0 < 2, then execute Step 5.3;
[0227] Step 5.3: Extract the generation time of the current APP operation data, calculate the time period to which this time belongs (in this embodiment, the period is days), and store it in the local variable T. u T u =20211030, Calculate the time slice within the time period to which the event belongs (in this embodiment, half an hour is used as the time slice), and store it in the local variable T. us T us=21, proceed to Step 5.4;
[0228] Step 5.4: Extract the user behavior data extracted from the current APP operation process and store it in the local variable tempAPPUserBehavior, where tempAPPUserBehavior = 'shopping'. Then execute Step 5.5.
[0229] Step 5.5, Determine T u Is T in the APPUserBehaviorTimeList list of APP user behavior sets? u If it is not in APPUserBehaviorTimeList, proceed to Step 5.7. Here, the APP user behavior set list is a list of APP behavior items, and an APP user behavior item is a string containing APP user behavior and its time information.
[0230] Step 5.7: Add the list [20211030,'Shopping 21'] to the APP User Behavior TimeList, APPUserBehaviorTimeList = [[20211030,'Shopping 21']], then proceed to Step 5.8;
[0231] Step 5.8, w++, w=1 execute Step 5.2;
[0232] Step 5.2 Determine if w < CaptureDataList.size(), 1 < 2, then execute Step 5.3;
[0233] Step 5.3: Extract the generation time of the current APP operation process data, calculate the time period to which this time belongs, and store it in the local variable T. u T u =20211030, Calculate the time slice within the time period to which the event belongs, and store it in the local variable T. us T us =22, proceed to Step 5.4;
[0234] Step 5.4: Extract the user behavior data extracted from the current APP operation process and store it in the local variable tempAPPUserBehavior, where tempAPPUserBehavior = 'Payment'. Then execute Step 5.5.
[0235] Step 5.5, Determine T u Is T in the APPUserBehaviorTimeList list of APP user behavior sets?u In APPUserBehaviorTimeList, execute Step 5.6;
[0236] Step 5.6: Press tempAPPUserBehavior+T us Add the time period T to the APPUserBehaviorTimeList, which is a collection of user behaviors in the APP. u The corresponding list, APPUserBehaviorTimeList = [['20211030','Shopping 21','Payment 22']], execute Step 5.8;
[0237] Step 5.8, w++, w=2 execute Step 5.2;
[0238] Step 5.2 Determine if w < CaptureDataList.size(), 2 < 2, then execute Step 5.9;
[0239] Step 5.9: Initialize support S = 0.10 and confidence C = 0.5, then execute Step 5.10;
[0240] Step 5.10: Initialize the list for storing candidate sets, CandidateSetList, CandidateSetList = [], and execute Step 5.11. The candidate set list is a list that stores the currently generated candidate sets. A candidate set is a collection of combinations of APP user behavior items that meet the current conditions, and it is stored in a list.
[0241] Step 5.11: Iterate through the APPUserBehaviorTimeList of APP user behavior sets, and generate a candidate set C1 where each element contains only a single APP user behavior item. C1 is a one-dimensional list containing several elements, C1 = [frozenset({'Payment 22'}) 1.0, frozenset({'Shopping 21'} 1.0)], and execute Step 5.12; where the support of both elements in the candidate set is 1.0.
[0242] Step 5.12: Remove elements in the candidate set that do not meet the support S. The candidate set is: [frozenset({'Payment 22'}) 1.0, frozenset({'Shopping 21'}) 1.0]. Execute Step 5.13: Remove elements with support less than S.
[0243] Step 5.13: Determine if the candidate set is empty. If the candidate set is not empty, proceed to step 5.14.
[0244] Step 5.14: Add the current candidate set to the candidate set list CandidateSetList, CandidateSetList = [[frozenset({'Payment 22'}) 1.0,frozenset({'Shopping 21'}) 1.0]], then execute Step 5.15;
[0245] Step 5.15: If the remaining elements in the candidate set each contain K APP user behavior items, then create a candidate set C where each element contains K+1 APP user behavior items. K+1 In this example, if the remaining elements in the candidate set each contain 1 APP user behavior item, then create a candidate set C where each element contains 2 APP user behavior items. K+1 C k+1 =[frozenset({'Shopping 21','Payment 22'})1.0], execute Step 5.12;
[0246] Step 5.12: Remove elements in the candidate set that do not meet the support S. The candidate set is: [frozenset({'Shopping 21','Payment 22'},1.0)], then execute Step 5.13;
[0247] Step 5.13: Determine if the candidate set is empty. If the candidate set is not empty, proceed to step 5.14.
[0248] Step 5.14: Add the current candidate set to the candidate set list CandidateSetList, CandidateSetList = [[frozenset({'Payment 22'})1.0,frozenset({'Shopping 21'})1.0],[frozenset({'Shopping 21','Payment 22'},1.0)]], then execute Step 5.15;
[0249] Step 5.15: If the remaining elements in the candidate set all contain 2 APP user behavior items, then create a candidate set C where each element contains 3 APP user behavior items. K+1 Because this embodiment only has 2 APP user behavior items, it is impossible to build a candidate set C where each element contains 3 APP user behavior items. K+1 Therefore, it is established as an empty set, i.e., C. K+1 = [] Execute Step 5.12;
[0250] Step 5.12: Remove elements in the candidate set that do not meet the support S. The candidate set is: []. Execute Step 5.13.
[0251] Step 5.13: Determine if the candidate set is empty. If the candidate set is empty, proceed to step 5.16.
[0252] Step 5.16: Generate frequent APP user behavior itemsets based on the candidate set list CandidateSetList. The frequent behavior itemsets are: [[frozenset({'Payment 22'})1.0,frozenset({'Shopping 21'})1.0],[frozenset({'Shopping 21','Payment 22'})1.0]]. Execute Step 5.17. Here, the frequent APP user behavior itemsets refer to the set of APP user behavior item combinations whose support is greater than or equal to the set support S.
[0253] Step 5.17: Generate strong association rules for APP user behavior based on frequent APP behavior itemsets. The strong association rules for APP user behavior are: [[frozenset({'Shopping 21'})=>frozenset({'Payment 22'})'s conf:1.0],[frozenset({'Payment 22'})=>frozenset({'Shopping 21'})'s conf:1.0]]. Execute Step 5.18. Here, a strong association rule for APP user behavior refers to an APP user behavior association rule whose confidence level is greater than or equal to the set confidence level C.
[0254] Step 5.18: Determine if the number of time periods is less than or equal to 1. If the number of time periods is 1, and 1 <= 1, proceed to Step 5.21.
[0255] Step 5.21: Extract the APP user behavior pattern according to the strong association rules of APP user behavior, and add the behavior pattern to the APP user behavior pattern list APPUserBehaviorModeList. APPUserBehaviorModeList = [The user's frequent behaviors during the period from October 30, 2021 to October 30, 2021 are: "shopping" and "payment". The user often uses the mobile phone between 10:00 and 11:00. The "shopping" and "payment" behaviors are strongly correlated when the user uses the mobile phone. In specific usage, this means that the user frequently switches from the APP that generates the "shopping" behavior to the APP that generates the "payment" behavior when using the mobile phone];
[0256] To more clearly illustrate steps 5.9-5.21, let's assume that the APP user behavior set list APPUserBehaviorTimeList obtained after steps 1-5.8 is as follows:
[0257] APPUserBehaviorTimeList = [['20210901','File 41','Video 45','Social 45','Social 46','Payment 46','Image 46','Video 46'],['20210902','Social 16','Social 21','Image 21','Reading 21','Social 20','Reading 20','Reading 46','Social 46'],['20210903','Social 19','Music 26','Reading 26','Video 46','Social 46','Image 46','Payment 46','Reading 46','Photo 46','Photo 47','Image 47','Social 46'] 7','Reading 47','Video 48'],['20210904'],['20210905','Reading 20','Social 21','Video 22','Shopping 27'],['20210906','Video 21','Reading 21','Shopping 21','Music 21','Reading 22','Video 22','Reading 30','Video 31','Reading 31','Shopping 31','Social 31'],['20210907'],['20210908','Video 18','Video 19','Reading 19','Shopping 19','App Management 19','Shopping 21','Reading 22','Social 35','Social 37 [','Reading 37'],['20210909','Reading 17','Reading 18','Social 18','Video 22','Reading 22','Shopping 22','Reading 21','Payment 22','Music 22','Social 22'],['20210910','Social 24','Video 45','Social 45','Social 47','Reading 47'],['20210911','Social 17','Reading 28','Social 28'],['20210912','Social 27','Social 40','Payment 40','Image 40','Reading 40','Social 39','Payment 39','Reading 39','Social 41', [Payment 41, Social 46], [20210913, Social 38, Image 38], [20210914, Game 28, Application Management 29, Reading 46, Video 46, Social 46], [20210915, Social 18, Video 19, Social 19, Payment 19, Reading 19, Social 20], [20210916, Social 25, Reading 25, Video 25, Social 24, Reading 24, Image 25, Social 26, Image 26], [20210917, Reading 18, Social 19, Reading 19],['20210918','Social 24','Games 24','Files 24','Shopping 24','Payments 24','Reading 24','Music 24'],['20210919','Social 30','Reading 30','Videos 30','Music 30','Music 29','Reading 29','Videos 29','Shopping 30','Files 30','Games 30'],['202109 20','Video 28','Reading 28','Shopping 28','Social 28','Shopping 29','App Management 29','Social 29','Pictures 29','Reading 29','Video 29','Learning 29','Payment 29','Music 29','Photography 29','Social 30','Reading 30','Video 30','Others 30','Shopping 30']], execute Step 5.10;
[0258] Step 5.10: Initialize the list of candidate sets, CandidateSetList, CandidateSetList = [], and execute Step 5.11. The candidate set list is a list that stores the currently generated candidate sets. A candidate set is a collection of combinations of APP user behavior items that meet the current conditions.
[0259] Step 5.11: Iterate through the APPUserBehaviorTimeList, generating a candidate set C1 where each element contains only a single APP user behavior item. C1 = [frozenset({'Shopping 30'})0.1, frozenset({'Social 24'})0.15, frozenset({'Video 30'})0.1, frozenset({'Social 21'})0.1, frozenset({'Payment 46'})0.1, frozenset({'Video 19'})0.1, frozenset({'Social 47'})0.1, frozenset({'Social 30'})0.1, frozenset({'Video 29'})0.1, frozenset({'Reading 19'})0.15, frozenset({'Social 20'})0.1, frozenset({'Music 29'})0.1, frozenset({'Video 22'})0.15, frozenset({'Social 46'})0.25, frozenset({'Reading 47'})0.1, frozenset({'Social 47'})0.1, frozenset({'Social 30'})0.1, frozenset({'Video 29'})0.1 ... nset({'Reading 29'})0.1, frozenset({'Social 28'})0.1, frozenset({'App Management 29'})0.1, frozenset({'Video 46'})0.15, frozenset({'Social 45'})0.1, frozenset({'Shopping 21'})0.1, frozenset({'Reading 24'})0.1, frozenset({'Social 19'})0.15, frozenset({'Reading 22'})0.15, frozenens et({'Reading 28'})0.1,frozenset({'Reading 18'})0.1,frozenset({'Reading 20'})0.1,frozenset({'Reading 21'})0.15,frozenset({'Reading 46'})0.15,frozenset({'Reading 30'})0.15,frozenset({'Social 18'})0.1,frozenset({'Image 46'})0.1,frozenset({'Video 45'})0.1], execute Step 5.12;
[0260] Step 5.12: Remove elements from the candidate set that do not satisfy support S. The candidate set is: [frozenset({'Shopping 30'})0.1,frozenset({'Social 24'})0.15,frozenset({'Video 30'})0.1,frozenset({'Social 21'})0.1,frozenset({'Payment 46'})0.1,frozenset({'Video 19'})0.1,frozenset({'Social 47'})0.1,frozenset ({'Social 30'})0.1,frozenset({'Video 29'})0.1,frozenset({'Reading 19'})0.15,frozenset({'Social 20'})0.1,frozenset({'Music 29'})0.1,frozenset({'Video 22'})0.15,frozenset({'Social 46'})0.25,frozenset({'Reading 47'})0.1,frozenset({'Reading 29'})0.1,fro zenset({'Social 28'})0.1,frozenset({'App Management 29'})0.1,frozenset({'Video 46'})0.15,frozenset({'Social 45'})0.1,frozenset({'Shopping 21'})0.1,frozenset({'Reading 24'})0.1,frozenset({'Social 19'})0.15,frozenset({'Reading 22'})0.15,frozenset({'Reading 28'}) )0.1,frozenset({'Reading 18'})0.1,frozenset({'Reading 20'})0.1,frozenset({'Reading 21'})0.15,frozenset({'Reading 46'})0.15,frozenset({'Reading 30'})0.15,frozenset({'Social 18'})0.1,frozenset({'Image 46'})0.1,frozenset({'Video 45'})0.1], execute Step 5.13;
[0261] Step 5.13: Determine if the candidate set is empty. If the candidate set is not empty, proceed to step 5.14.
[0262] Step 5.14: Add the current candidate set to the candidate set list CandidateSetList. CandidateSetList = [[frozenset({'Shopping 30'})0.1,frozenset({'Social 24'})0.15,frozenset({'Video 30'})0.1,frozenset({'Social 21'})0.1,frozenset({'Payment 46'})0.1,frozenset({'Video 19'})0.1,frozenset({' Social 47'})0.1, frozenset({'Social 30'})0.1, frozenset({'Video 29'})0.1, frozenset({'Reading 19'})0.15, frozenset({'Social 20'})0.1, frozenset({'Music 29'})0.1, frozenset({'Video 22'})0.15, frozenset({'Social 46'})0.25, frozenset({'Reading 47'})0.1, frozenset({'Reading 47'})0.1, frozenset({'Reading 47'})0.1 0.1, frozenset({'Social 28'})0.1, frozenset({'App Management 29'})0.1, frozenset({'Video 46'})0.15, frozenset({'Social 45'})0.1, frozenset({'Shopping 21'})0.1, frozenset({'Reading 24'})0.1, frozenset({'Social 19'})0.15, frozenset({'Reading 22'})0.15, frozenset({' Reading 28'})0.1, frozenset({'Reading 18'})0.1, frozenset({'Reading 20'})0.1, frozenset({'Reading 21'})0.15, frozenset({'Reading 46'})0.15, frozenset({'Reading 30'})0.15, frozenset({'Social 18'})0.1, frozenset({'Image 46'})0.1, frozenset({'Video 45'})0.1]], execute Step 5.15;
[0263] Step 5.15: If the remaining elements in the candidate set each contain K APP user behavior items, then create a candidate set C where each element contains K+1 APP user behavior items. K+1 C K+1=[frozenset({'Reading 29','Video 30'})0.1,frozenset({'Video 22','Reading 22'})0.1,frozenset({'Social 46','Payment 46'})0.1,frozenset({'Shopping 30','Reading 29'})0.1,frozenset({'Social 30','Shopping 30'})0.1,frozenset({'Social 30','Video 29'})0.1,frozenset({'Reading 21','Video 22'})0.1,frozenset({'Social 28','Reading 28'})0.1,frozen set({'Social 30','Reading 29'})0.1,frozenset({'Shopping 30','Video 29'})0.1,frozenset({'Video 29','Reading 29'})0.1,frozenset({'Reading 46','Video 46'})0.1,frozenset({'Image 46','Payment 46'})0.1,frozenset({'Shopping 21','Reading 22'})0.1,frozenset({'Social 30','Video 30'})0.1,frozenset({'Reading 19','Video 19'})0.1,frozenset({'Music 29','Video 30'})0.1,frozenset({'Social 21','Reading 20'})0.1,frozenset({'Shopping 30','Video 30'})0.1,frozenset({'Social 46','Video 46'})0.15,frozenset({'Reading 30','Shopping 30'})0.1,frozenset({'Music 29','Reading 29'})0.1,frozenset({'Reading 19','Social 19'})0.1,frozenset({'Music 29','Video 29'})0.1,frozenset({'Video 46','Payment') 46'})0.1,frozenset({'Reading 30','Social 30'})0.1,frozenset({'Reading 21','Reading 22'})0.1,frozenset({'Reading 30','Video 29'})0.1,frozenset({'Social 24','Reading 24'})0.1,frozenset({'Reading 46','Social 46'})0.15,frozenset({'Reading 30','Reading 29'})0.1,frozenset({'Music 29','Shopping 30'})0.1,frozenset({'Image 46','Social 46'})0.1, frozenset({'Reading 30','Video 30'})0.1, frozenset({'Social 30','Music 29'})0.1, frozenset({'Social 45','Video 45'})0.1, frozenset({'Image 46','Video 46'})0.1, frozenset({'Reading 30','Music 29'})0.1, frozenset({'Video 29','Video 30'})0.1, frozenset({'Reading 47','Social 47'})0.1], loop through Step 5.12-Step 5.15 until the candidate set is empty, then execute Step 5.16;
[0264] Step 5.16: Generate frequent APP behavior itemsets based on the candidate set list CandidateSetList. The number of frequent APP behavior itemsets is 115. Execute Step 5.17. Here, a frequent APP user behavior itemset is a set of APP user behavior item combinations whose support is greater than or equal to the set support S.
[0265] Step 5.17: Generate strong association rules for APP user behavior based on frequent APP behavior itemsets. The number of strong association rules for APP user behavior is 320. Execute Step 5.18. Among them, strong association rules for APP user behavior refer to APP user behavior association rules whose confidence level is greater than or equal to the set confidence level C.
[0266] Step 5.18: Determine if the number of time periods is less than or equal to 1. If the time period is 20, and 20 <= 1, proceed to Step 5.19.
[0267] Step 5.19: Determine if the number of strong association rules is less than or equal to the number of time periods. If 320 <= 20, proceed to Step 5.20.
[0268] Step 5.20: Adjust the values of S and C, and repeat Step 5.10-Step 5.20 until the number of strongly related rules for APP user behavior is less than or equal to the number of time periods. The obtained APP user behavior related rules are: [[frozenset({'Reading 46'})=>frozenset({'Social 46'})'s conf:1.0],[frozenset({'Social 46'})=>frozenset({'Reading 46'})'s conf:0.6],[frozenset({'Video 46'})=>frozenset({'Social 46'})'s conf:1.0],[frozenset({'Social 46'})=>frozenset({'Video 46'})'s conf:0.6]]. Then execute Step 5.21.
[0269] Step 5.21: Extract the APP user behavior pattern according to the strong association rules of APP user behavior, and add the behavior pattern to the APP user behavior pattern list APPUserBehaviorModeList. APPUserBehaviorModeList = [The user's frequent behaviors during the period from 2021.09.01 to 2021.09.20 are: "Reading", "Social", and "Video". The user frequently uses the mobile phone between 22:30 and 23:00. The "Reading", "Social", and "Video" behaviors are strongly correlated when the user uses the mobile phone. In specific usage, this means that the user frequently switches from the APP that generates the "Reading" behavior to the APP that generates the "Social" behavior and then to the APP that generates the "Video" behavior.]
[0270] Example 3: A user behavior pattern analysis system based on APP software operation data, comprising: a first acquisition module, used to preprocess APP operation process data to obtain an information list corresponding to activity; an extraction module, used to combine the information list corresponding to activity to perform operation analysis on the APP operation process data and extract APP operations from the APP operation process data; a construction module, used to mine the correlation between APP operations and APP user behavior and construct a correlation matrix between APP operations and APP user behavior; a second acquisition module, used to extract features from the correlation matrix between APP operations and APP user behavior to obtain APP user behavior; and an extraction module, used to analyze the extracted APP user behavior and extract APP user behavior patterns. It should be noted that the above modules can be implemented by software or hardware. For example, for the latter, it can be implemented in the following ways: the above modules can be located in the same processor; and / or, the above modules can be located in different processors in any combination. The terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in a sequence other than those illustrated or described herein.
[0271] According to another aspect of the present invention, a processor is provided, the processor being used to run a program, wherein the program, when running, executes the user behavior pattern analysis method based on APP software operation data as described above.
[0272] The specific embodiments of the present invention have been described in detail above with reference to the accompanying drawings. However, the present invention is not limited to the above embodiments. Within the scope of knowledge possessed by those skilled in the art, various changes can be made without departing from the spirit of the present invention.
Claims
1. A method for analyzing user behavior patterns based on APP software operation data, characterized in that: include: Step 1: Preprocess the APP operation process data to obtain the information list corresponding to the Activity; Step 2: Combine the information list corresponding to the Activity to perform operation analysis on the APP operation process data and extract the APP operations from the APP operation process data. Step 3: Explore the correlation between APP operations and APP user behavior, and construct a correlation matrix between APP operations and APP user behavior; Step 4: Extract features from the correlation matrix between APP operations and APP user behavior to obtain APP user behavior; Step 5: Analyze the extracted APP user behavior and extract APP user behavior patterns; The process of mining the correlation between APP operations and APP user behavior and constructing a correlation matrix between APP operations and APP user behavior includes: mining the correlation between APP operations and APP user behavior through semantic similarity methods for the extracted APP operations, and using APP category information data as heuristic knowledge to participate in the mining of the correlation between APP operations and APP user behavior, and constructing a correlation matrix between APP operations and APP user behavior. The step of extracting features from the correlation matrix between APP operations and APP user behavior to obtain APP user behavior includes: Step 4.1: Initialize the APP user behavior feature detector 1T_APPUserBehavior_1: W conv_1 ,b conv_1 Initialize the APP user behavior feature detector 2T_APPUserBehavior_2: W conv_2 ,b conv_2 Extract the semantic similarity list between the APP name and the APP user behavior, the semantic similarity list between the APP category information and the APP user behavior, and the semantic similarity list between the APP operation and the APP user behavior corresponding to the current APP operation process data, and form the APP operation input matrix, namely the APP operation input layer APPCaptureInputLevel, and execute Step 4.
2. Step 4.2: Use the APP user behavior feature detector 1T_APPUserBehavior_1 to slide on the APP operation input layer APPCaptureInputLevel. The detector outputs y_conv1 each time as follows: Where y_conv1 and the bias parameter Weight parameters , Indicates a dimension of N f , Indicates a dimension of N c ×N f , N represents the number of feature detectors. f APPCaptureInputLevel represents the dimension of the input layer vector for app operations. i This indicates that during the i-th swipe in the APP's input layer, W... conv_1 For the matrices involved in the calculation, proceed to Step 4.3; Step 4.3: Perform max pooling on y_conv1 to obtain the pooled output y_pool, then proceed to Step 4.4: Step 4.4: Use the APP user behavior feature detector 2T_APPUserBehavior_2 to slide on y_pool. The detector outputs y_conv2 each time as follows: Where y_conv2 and the bias parameter Weight parameters , Indicates a dimension of N f , Indicates a dimension of N c ×N f , N represents the number of feature detectors. f Let y_pool be the dimension of the y_pool vector. i This indicates that in the i-th sliding motion of y_pool, W... conv_2 For the matrices involved in the calculation, proceed to Step 4.5; Step 4.5: Concatenate y_conv2 into y, then proceed to Step 4.6; Step4.
6. Input y into a fully-connected neural network layer with a fixed size, and then feedback it to the output layer. Calculate the deviation between the APP user behavior output by the fully-connected neural network and the label of the APP user behavior annotation corresponding to the training batch. According to the backpropagation process, obtain the errors of the parameters of each layer of the neural network. Adjust the parameters of each layer based on these errors to complete the optimization of the network model. When training this model, execute Step4.7; Step4.
7. Continuously iterate Step4.6 until the network converges. When using this model, execute Step4.8; Step4.
8. Store the APP user behavior output by the fully-connected neural network in Step4.6 into the APP user behavior list APPUserBehaviorList until the APP user behavior of all data has been extracted, and then execute Step5; The analysis of the extracted APP user behavior and the extraction of the APP user behavior pattern include: Step5.
1. Initialize the two-dimensional list APPUserBehaviorModeList for storing the APP user behavior pattern and the two-dimensional list APPUserBehaviorTimeList for storing the APP user behavior set. Set the temporary variable w = 0 and execute Step5.2; Step5.
2. Judge whether w < CaptureDataList.size(). If so, execute Step5.3; otherwise, execute Step5.9, where CaptureDataList.size() represents the total number of APP operation process data in the two-dimensional APP operation process data list CaptureDataList; Step 5.3: Extract the generation time of the current APP operation process data, calculate the time period to which this time belongs, and store it in the local variable T. u Calculate the time slice within the time period to which the given time belongs, and store it in the local variable T. us Proceed to Step 5.4; Step5.
4. Take out the APP user behavior extracted from the current APP operation process data and store it in the local variable tempAPPUserBehavior, and then execute Step5.5; Step 5.5, Determine T u Check if the app is in the APPUserBehaviorTimeList. If yes, proceed to Step 5.6; otherwise, proceed to Step 5.
7. The APPUserBehaviorTimeList is a list of APP user behavior items, and each APP user behavior item is a string containing APP user behavior and its time information. Step 5.6: Press tempAPPUserBehavior+T us Add the time period T to the APPUserBehaviorTimeList, which is a collection of user behaviors in the APP. u For the corresponding list, proceed to Step 5.8; Step 5.7: Transfer list [T] u tempAPPUserBehavior+T us Add it to the APPUserBehaviorTimeList user behavior set list, and then proceed to Step 5.8; Step5.
8. w++. Execute Step5.2; Step5.
9. Initialize the support S and the confidence C, and then execute Step5.10; Step5.
10. Initialize the list CandidateSetList for storing the candidate set, and then execute Step5.
11. Here, the candidate set list is the list for storing the currently generated candidate sets. The candidate set refers to the set of combinations of APP user behavior items that meet the current conditions and is stored in a list; Step5.
11. Traverse the APP user behavior set list APPUserBehaviorTimeList to generate a candidate set C1 in which each element contains only a single APP user behavior item. C1 is a one-dimensional list containing several elements, and then execute Step5.12; Step5.
12. Remove the elements in the candidate set that do not meet the support S, and then execute Step5.13; Step5.
13. Judge whether the candidate set is empty. If so, execute Step5.16; otherwise, execute 5.14; Step 5.14: Add the current candidate set to the candidate set list CandidateSetList, then proceed to Step 5.15; Step 5.15: If the remaining elements in the candidate set each contain K APP user behavior items, then create a candidate set C where each element contains K+1 APP user behavior items. K+1 C K+1 It is a one-dimensional list containing several elements; proceed to Step 5.
12. Step 5.16: Generate a set of frequent APP user behavior items based on the candidate set list CandidateSetList, and execute Step 5.
17. The set of frequent APP user behavior items refers to the set of APP user behavior item combinations whose support is greater than or equal to the set support S. Step 5.17: Generate strong association rules for APP user behavior based on frequent APP behavior itemsets, and execute Step 5.
18. Here, a strong association rule for APP user behavior refers to an APP user behavior association rule whose confidence level is greater than or equal to the set confidence level C. Step 5.18: Determine if the number of time periods is less than or equal to 1. If so, proceed to Step 5.21; otherwise, proceed to Step 5.
19. Step 5.19: Determine whether the number of strongly related rules for APP user behavior is less than or equal to the number of time periods. If yes, proceed to Step 5.21; otherwise, proceed to Step 5.
20. Step 5.20: Adjust the values of S and C, then execute Step 5.10; Step 5.21: Extract the APP user behavior patterns based on the strong association rules of APP user behavior and add them to the user behavior pattern list APPUserBehaviorModeList.
2. The user behavior pattern analysis method based on APP software operation data according to claim 1, characterized in that: The process of preprocessing APP operation data to obtain a list of activity information includes: preprocessing the APP operation data set, querying the corresponding information of the activity activity for each APP operation data, and obtaining a list of activity information.
3. The user behavior pattern analysis method based on APP software operation data according to claim 1, characterized in that: The step of extracting features from the correlation matrix between APP operations and APP user behavior to obtain APP user behavior includes: extracting features from the correlation matrix between APP operations and APP user behavior using a convolutional neural network, and mapping the extracted features to APP user behavior using a fully connected neural network.
4. The user behavior pattern analysis method based on APP software operation data according to claim 1, characterized in that: The preprocessed APP operation data is used to obtain a list of information corresponding to the activity, including: Step 1.1: Initialize the APP operation process dataset CaptureData, initialize the corresponding activity information dataset ActivityMessageData, and extract the APP operation process data from the APP operation process dataset CaptureData and store it in a two-dimensional list CaptureDataList. r*c =[[C1],[C2],[C3],…,[C r [C1]=[M1,M2,M3,…M c ]], where C1 is the first APP operation process data, C r For the rth APP operation process data, M c Let `r` be the c-th attribute of the first APP operation process data, `r` be the total number of data entries in the APP operation process data list, and `c` be the total number of attributes for each APP operation process data entry. Extract the corresponding information for each Activity from the ActivityMessageData dataset and store it in a two-dimensional list ActivityMessageList. q*2 =[[A1],[A2],[A3],…,[A q [A1]=[a1,m1]], where A1 is the information data corresponding to the first Activity, A q For the information data corresponding to the qth activity, a1 is the activity of the first activity information data, m1 is the "activity information corresponding to the first activity information data", set the temporary variable g=0, and execute Step 1.2; Step1.
2. Judgment If it is, execute Step 1.3; otherwise, execute Step 2; where CaptureDataList.size() represents the total number of APP operation process data entries in the two-dimensional APP operation process data list CaptureDataList; Step 1.3: Retrieve the "Activity" of the current APP operation process data and store it in the local variable tempActivity. Then execute Step 1.
4. Step 1.4: Determine if tempActivity is in the ActivityMessageList corresponding to the Activity. If it is, proceed to Step 1.5; otherwise, proceed to Step 1.
6. Step 1.5, g++, execute Step 1.2; Step 1.6: Look up the Chinese meaning of the current tempActivity in the dictionary, use it as the corresponding information of the current activity, and store it in the local variable tempActivityMessage. Then execute Step 1.
7. Step1.
7. Add the list [tempActivity, tempActivityMessage] to the activity corresponding information list ActivityMessageList of Activity; execute Step1.
5.
5. The user behavior pattern analysis method based on APP software operation data according to claim 1, characterized in that: Combined with the activity corresponding information list, perform operation analysis on the APP operation process data, and extract the APP operations in the APP operation process data, including: Step2.
1. Initialize the temporary variable j = 0 and the one-dimensional list AnalyseCaptureDataList for storing APP operations, and execute Step2.2; Step2.
2. Determine whether j < CaptureDataList.size(). If so, execute Step2.3; otherwise, execute Step3, where CaptureDataList.size() represents the total number of APP operation process data in the two-dimensional APP operation process data list CaptureDataList; Step2.
3. Retrieve the "APP name" of the current APP operation process data and store it in the local variable tempAPPName, and execute Step2.4; Step2.
4. Retrieve the "activity Activity" of the current APP operation process data and store it in the local variable tempActivity, and execute Step2.5; Step2.
5. Retrieve the "operation description Description" of the current APP operation process data and store it in the local variable tempDescription, and execute Step2.6; Step2.
6. Determine whether tempActivity is in the activity corresponding information list ActivityMessageList. If so, execute Step2.7; otherwise, execute Step2.8; Step2.
7. Retrieve the corresponding information of tempActivity from the activity corresponding information list ActivityMessageList and store it in the local variable tempActivityMessage; execute Step2.9; Step2.
8. Set the corresponding information of the current Activity to null and store it in the local variable tempActivityMessage, and execute Step2.9; Step2.
9. The APP operation corresponding to the current APP operation process data is composed of tempAPPName + tempDescription + tempActivityMessage, and store the APP operation in the local variable tempCapture, and execute Step2.10; Step2.
10. Add the APP operation tempCapture corresponding to the current APP operation process data to the APP operation list AnalyseCaptureList, and execute Step2.11; Step 2.11: j++. Execute Step 2.
2.
6. The user behavior pattern analysis method based on APP software operation data according to claim 1, characterized in that: Mining the correlation between APP operations and APP user behaviors, and constructing a correlation matrix between APP operations and APP user behaviors, including: Step 3.1: Initialize the following lists: APPNameSimilarity (for storing app names and user behaviors), APPClassSimilarity (for storing app categories and user behaviors), and CaptureSimilarity (for storing app actions and user behaviors). Load the two-dimensional list APPClassList (for storing app category data). o*2 =[[S1],[S2],[S3],…,[So]], [S1]=[b1,c1]], where S1 is the first APP category information data, S o Let b1 be the name of the first APP category information data, c1 be the APP category of the first APP category information data, and load the two-dimensional list APPUserBehaviorKnowledgeList that stores APP user behavior knowledge. u*v =[[K1],[K2],[K3],…,[K u [K1]=[N1,N2,N3,…N v ]], where K1 is the first piece of APP user behavior knowledge data, K u For the uth APP user behavior knowledge data, N v For the vth APP user behavior knowledge data of the first APP user behavior knowledge data, u is the total number of data items in the APP user behavior knowledge list, and v is the total number of APP user behavior knowledge items in each APP user behavior knowledge data. Since the number of APP user behavior knowledge items contained in each APP user behavior knowledge data may not be the same, v is not a fixed value. Set the temporary variable p=0 and execute Step 3.
2. Step 3.2: Judge whether p < CaptureDataList.size(). If yes, execute Step 3.3; otherwise, execute Step 4, where CaptureDataList.size() represents the total number of APP operation process data in the two-dimensional APP operation process data list CaptureDataList. Step 3.3: Take out the "APP name" of the current APP operation process data and store it in the local variable tempAPPName, then execute Step 3.
4. Step 3.4: Take out the "APP operation" of the current APP operation process data and store it in the local variable tempCapture, then execute Step 3.
5. Step 3.5: Judge whether the APP name tempAPPName of the current APP operation process data is in the APP category data list APPClassList. If yes, execute Step 3.6; otherwise, execute Step 3.
7. Step 3.6: Take out the corresponding category information of tempAPPName and store it in the local variable tempAPPClass, which is the category information corresponding to the APP, then execute Step 3.
8. Step 3.7: Set the category information corresponding to the current APP to be empty and store it in the local variable tempAPPClass, which is the category information corresponding to the APP, then execute Step 3.
8. Step 3.8: Initialize the semantic similarity list tempAPPNameSimilarity for storing the semantic similarity between the current APP name and APP user behaviors, the semantic similarity list tempAPPClassSimilarity for storing the semantic similarity between the current APP category and APP user behaviors, and the semantic similarity list tempCaptureSimilarity for storing the semantic similarity between the current APP operation and APP user behaviors. Set the temporary variable s = 0, then execute Step 3.
9. Step3.9, Judgment If you are executing Step 3.10, then execute Step 3.
14. Here, APPUserBehaviorKnowledgeList.size() represents the total size of the two-dimensional APP user behavior knowledge list APPUserBehaviorKnowledgeList. Step 3.10: Calculate the semantic similarity between the APP name tempAPPName of the current APP operation process data and the current APP user behavior knowledge APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempAPPNameSimilarity, then execute Step 3.
11. Step 3.11: Calculate the semantic similarity between the corresponding information tempAPPClass of the APP category of the current APP operation process data and the current APP user behavior knowledge APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempAPPClassSimilarity, then execute Step 3.
12. Step 3.12: Calculate the semantic similarity between the current APP operation process data (APP operation tempCapture) and the current APP user behavior knowledge (APPUserBehaviorKnowledge.get(s), and add the maximum semantic similarity value to tempCaptureSimilarity. Then execute Step 3.
13. Step 3.13, s++, execute Step 3.9; Step 3.14: Add the semantic similarity list tempAPPNameSimilarity between the current APP name and APP user behavior to the semantic similarity list APPNameSimilarity between the APP name and APP user behavior; add the semantic similarity list tempAPPClassSimilarity between the current APP category information and APP user behavior to the semantic similarity list APPClassSimilarity between the APP category information and APP user behavior; add the semantic similarity list tempCaptureSimilarity between the current APP operation and APP user behavior to the semantic similarity list CapureSimilarity between the APP operation and APP user behavior; then proceed to Step 3.
15. Step 3.15, p++, execute Step 3.
2.
7. A user behavior pattern analysis system based on APP software operation data that performs the method of claim 1, characterized in that: include: The first acquisition module is used to preprocess APP operation process data and obtain the information list corresponding to the Activity. The extraction module is used to analyze the APP operation process data by combining the information list corresponding to the Activity and extracting the APP operation from the APP operation process data. The module is used to explore the correlation between APP operations and APP user behavior, and to build a correlation matrix between APP operations and APP user behavior; The second acquisition module is used to extract features from the correlation matrix between APP operations and APP user behavior to obtain APP user behavior. The extraction module is used to analyze the extracted APP user behavior and extract APP user behavior patterns.