Method for inferring interest of user and user device using same
The user device infers user interests using system and user log knowledge graphs for on-device data analysis, addressing privacy and cost concerns, and providing personalized services.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- SAMSUNG ELECTRONICS CO LTD
- Filing Date
- 2025-12-19
- Publication Date
- 2026-07-02
AI Technical Summary
Existing AI technologies face challenges in inferring user interests efficiently on-device due to privacy concerns and high processing costs, necessitating a method for on-device data processing and analysis.
A user device utilizes a system log knowledge graph and a user log knowledge graph to infer user interests by aggregating and analyzing system and user interaction data, converting it into a knowledge graph format, and providing personalized services based on user activity information.
Enables efficient, privacy-preserving, and cost-effective inference of user interests on-device, enhancing user experience through personalized services and recommendations.
Smart Images

Figure KR2025022346_02072026_PF_FP_ABST
Abstract
Description
Method for inferring user interests and user device utilizing the same
[0001] This relates to a method for inferring user interests and a user device utilizing the same.
[0002] Artificial intelligence-based technologies are being utilized in various fields across industries. A diverse range of AI models have been developed and are being applied in each sector, and the application of AI-based solutions is rapidly increasing not only in manufacturing but also in diverse industries such as robotics, transportation and logistics, healthcare, education, and pharmaceuticals and biotechnology. The adoption of such AI-based technologies is leading to the strengthening of competitiveness for companies and nations.
[0003] To enhance the performance of artificial intelligence models, knowledge bases can be utilized for model training and inference. An example of a knowledge base is a knowledge graph, which has a graph-like data structure.
[0004] Recently, there has been growing interest in on-device artificial intelligence technology that collects and processes information independently on user devices, such as smartphones, rather than the method of transmitting collected information to a server for analysis and then sending it back to the user device. This perspective stems from privacy concerns and the need to reduce processing costs associated with large-scale AI models.
[0005] According to one embodiment of the present disclosure, a method for inferring interests related to a user is provided. The method for inferring interests related to a user includes the step of obtaining period information for determining interests related to a user from a query. Additionally, the method for inferring interests related to a user includes the step of obtaining user interaction-based semantic index information from at least one system log knowledge graph, where each node is a result of aggregating system log data by system monitoring criteria, corresponding to the period information for determining interests related to a user. Additionally, the method for inferring interests related to a user includes the step of searching for at least one contact node based on user interaction-based semantic index information in at least one user log knowledge graph, which includes each node an entity related to user activity information based on user log data corresponding to the period information for determining interests related to a user, and includes expressions representing relationships between entities. Additionally, the method for inferring interests related to a user includes the step of obtaining interests related to a user corresponding to the period information for determining interests related to a user based on at least one node satisfying a predetermined condition in a user log knowledge graph including at least one contact node.
[0006] According to one embodiment of the present disclosure, a computer-readable recording medium is provided on which a program for executing the above-described method is recorded.
[0007] According to one embodiment of the present disclosure, a user device for inferring user interests is provided. The user device includes a memory comprising one or more storage media for storing instructions, and at least one processor comprising a processing circuit. By executing one or more instructions individually or collectively by at least one processor, the user device obtains period information for determining user-related interests from a query. Additionally, by executing one or more instructions individually or collectively by at least one processor, the user device obtains user interaction-based semantic index information from at least one system log knowledge graph, which includes, as each node, the results of aggregating system log data by system monitoring criteria corresponding to the period information for determining user interests. Additionally, by executing one or more instructions individually or collectively by at least one processor, the user device searches for at least one contact node based on user interaction-based semantic index information in at least one user log knowledge graph, which includes, as each node, an entity associated with user-related activity information based on user log data corresponding to period information for determining user-related interests, and includes representations indicating relationships between entities. Additionally, by executing one or more instructions individually or collectively by at least one processor, the user device obtains user-related interests corresponding to period information for determining user interests based on at least one node satisfying a predetermined condition in a user log knowledge graph including at least one contact node.
[0008] The above and other aspects, features, and advantages of one embodiment of the present disclosure will become more apparent from the following description, which is referenced together with the accompanying drawings.
[0009] FIG. 1 is a drawing for illustrating an artificial intelligence platform based on a personal knowledge graph according to one embodiment of the present disclosure.
[0010] FIG. 2 is a diagram illustrating the operation of a user device according to one embodiment of the present disclosure to build a knowledge graph-based personalized database.
[0011] FIG. 3 is a diagram illustrating the process of generating a user log knowledge graph in a user device according to one embodiment of the present disclosure.
[0012] FIG. 4 is a drawing for illustrating a user log knowledge graph according to one embodiment of the present disclosure.
[0013] FIG. 5 is a drawing for illustrating a user log knowledge graph according to one embodiment of the present disclosure.
[0014] FIG. 6 is a diagram illustrating the process of generating a system log knowledge graph in a user device according to one embodiment of the present disclosure.
[0015] FIG. 7 is a diagram illustrating a system log knowledge graph according to one embodiment of the present disclosure.
[0016] FIG. 8 is a diagram illustrating the integration of a system log knowledge graph according to one embodiment of the present disclosure.
[0017] FIG. 9 is a diagram illustrating the operation of a user device providing a personal knowledge graph-based service according to one embodiment of the present disclosure.
[0018] FIG. 10 is a flowchart illustrating a method for inferring a user's interests in a user device according to one embodiment of the present disclosure.
[0019] FIG. 11 is a diagram illustrating the connection relationship between a system log knowledge graph and a user log knowledge graph according to one embodiment of the present disclosure.
[0020] FIG. 12 is a diagram illustrating an interest knowledge graph formed by merging a system log knowledge graph and a user log knowledge graph according to one embodiment of the present disclosure.
[0021] FIG. 13 is a diagram illustrating the process of inferring user interests using a system log knowledge graph and a user log knowledge graph according to one embodiment of the present disclosure.
[0022] FIG. 14 is a diagram illustrating a method for acquiring a user's interest when keywords corresponding to a plurality of objects are acquired in a user device according to one embodiment of the present disclosure.
[0023] FIG. 15 is a diagram illustrating the process of inferring user interests using a system log knowledge graph and a user log knowledge graph according to one embodiment of the present disclosure.
[0024] FIG. 16 is a drawing for illustrating a graph generated using a method of providing a user with interests corresponding to a predetermined time range to a user, performed by a user device according to one embodiment of the present disclosure.
[0025] FIG. 17 is a block diagram for explaining in detail the operation of a processor of a user device according to one embodiment of the present disclosure.
[0026] FIG. 18 is a block diagram for explaining the configuration and operation of a user device according to one embodiment of the present disclosure.
[0027] The terms used in this specification will be briefly explained, and the present disclosure will be described in detail. In the present disclosure, the expression "at least one of a, b, or c" may refer to "a," "b," "c," "a and b," "a and c," "b and c," or "all of a, b, and c."
[0028] The terms used in this disclosure have been selected to be as widely used and general as possible, taking into account their functions within this disclosure; however, these terms may vary depending on the intent of those skilled in the art, case law, the emergence of new technologies, etc. Additionally, in specific cases, terms have been selected at the applicant's discretion, and in such cases, their meanings will be described in detail in the relevant explanatory sections. Therefore, terms used in this disclosure should be defined not merely by their names, but based on their meanings and the overall content of this disclosure.
[0029] Singular expressions may include plural expressions unless the context clearly indicates otherwise. Terms used herein, including technical or scientific terms, may have the same meaning as generally understood by those skilled in the art as described in this specification. Additionally, terms including ordinal numbers, such as "first" or "second," used in this specification may be used to describe various components, but said components should not be limited by said terms. Such terms are used solely for the purpose of distinguishing one component from another.
[0030] When a part of a specification is described as "comprising" a certain component, this means that, unless specifically stated otherwise, it does not exclude other components but may include additional components. Furthermore, terms such as "part" or "module" as used in the specification refer to a unit that processes at least one function or operation, and this may be implemented in hardware or software, or as a combination of hardware and software.
[0031] Functions related to artificial intelligence according to the present disclosure are operated through a processor and memory. The processor may be composed of one or more processors. In this case, the one or more processors may be general-purpose processors such as CPUs, APs, and DSPs (Digital Signal Processors), graphics-dedicated processors such as GPUs and VPUs (Vision Processing Units), or artificial intelligence-dedicated processors such as NPUs. The one or more processors control the processing of input data according to predefined operation rules or artificial intelligence models stored in memory. Alternatively, if the one or more processors are artificial intelligence-dedicated processors, the artificial intelligence-dedicated processors may be designed with a hardware structure specialized for processing a specific artificial intelligence model.
[0032] The predefined rules of operation or artificial intelligence models are characterized by being created through learning. Here, being created through learning means that a predefined rules of operation or artificial intelligence models configured to perform a desired characteristic (or objective) are created by a basic artificial intelligence model being trained using multiple learning data by a learning algorithm. Such learning may be performed on the device itself where the artificial intelligence according to the present disclosure is executed, or it may be performed through a separate server and / or system. Examples of learning algorithms include supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but are not limited to the examples described above.
[0033] An artificial intelligence model may be composed of multiple neural network layers. Each of the multiple neural network layers has multiple weight values and performs neural network operations through operations between the results of previous layers and the multiple weights. The multiple weights possessed by the multiple neural network layers can be optimized based on the learning results of the artificial intelligence model. For example, the multiple weights may be updated so that the loss value or cost value obtained from the artificial intelligence model during the learning process is reduced or minimized. Artificial neural networks may include deep neural networks (DNNs), such as Convolutional Neural Networks (CNNs), Deep Neural Networks (DNNs), Recurrent Neural Networks (RNNs), Restricted Boltzmann Machines (RBMs), Deep Belief Networks (DBNs), Bidirectional Recurrent Deep Neural Networks (BRDNNs), or Deep Q-Networks, but are not limited to the examples mentioned above.
[0034] In this disclosure, a "knowledge graph" refers to a method for managing and searching knowledge information, meaning a knowledge base in graph form based on a knowledge base that stores knowledge information and a graph that represents it so that it can be analyzed as a network structure. A knowledge graph is a graph model that implements knowledge accumulated in a knowledge base through node-edge relationships. A knowledge graph can be used to integrate data using graph data models, topologies, etc. To enable knowledge to be interconnected and integrated using a knowledge graph, a schema is implemented through an ontology, and a structure and dictionary (terms) that can be shared are used.
[0035] Semantic information containing common sense and fact knowledge is organized into connections between nodes and edges, and by referencing this, various types of data can be transformed into the form of a knowledge graph. Methods for representing a knowledge graph may include LPG (Labeled Property Graph), where nodes and edges can each have attributes, and RDF (Resource Description Framework), which expresses relationships using a triple-fact structure of subject-predicate-object, but are not limited to these. A knowledge graph can be created by recognizing entities from various data, connecting them to appropriate entities in an existing knowledge base (entity linking), and extracting relationships between entities.
[0036] Knowledge graphs can be utilized to improve the performance of artificial intelligence. Knowledge graphs can be used in models such as Graph Neural Networks (GNNs) and Graph Convolutional Neural Networks (GCNs), and can be used to provide explanations for results in Explainable Artificial Intelligence (XAI).
[0037] Below, with reference to the attached drawings, embodiments of the present disclosure are described in detail so that those skilled in the art can easily implement the present invention. However, the present disclosure may be embodied in various different forms and is not limited to the embodiments described herein.
[0038] The present disclosure will be described in detail below with reference to the attached drawings.
[0039] FIG. 1 is a drawing for illustrating an Artificial Intelligence (AI) platform based on a personal knowledge graph according to one embodiment of the present disclosure.
[0040] Referring to FIG. 1, it shows that a personal knowledge graph-based AI platform is provided to a user through the process of building a knowledge graph-based personalized database (S110) and the process of providing a personalized AI service to the user through a knowledge graph-based service application (S120).
[0041] In the process of constructing a knowledge graph-based personalized database (S110), the user device (100) can generate a structured personal knowledge graph by referencing a structured general knowledge graph, such as common sense and factual knowledge, from user data acquired from the user device (100). The user device (100) can convert various types of unstructured data into the form of a knowledge graph to construct a knowledge graph-based personalized database, i.e., a Personal Knowledge Graph, and store it in storage. The user device (100) can database the user data acquired from the user device (100) and manage it in storage.
[0042] In the process (S120) of providing personalized AI services to a user through a knowledge graph-based service application, the user device (100) can provide various services using the personal knowledge graph stored in storage and the databased user data. The user device (100) can provide recommendation services, assistant services, QA (Question Answering) services, etc., by using the personal knowledge graph.
[0043] For example, if the user device (100) is performing an action, it may recommend music that the user enjoys listening to during the action through a recommendation service, or provide information regarding relevant past experiences or upcoming future events (e.g., calendar schedules) as well as knowledge information based on a personal knowledge graph through an assistant service. The user device (100) may identify the user's behavioral patterns from a personalized database, and if the user exhibits a pattern different from their usual behavioral patterns, it may provide a solution service related to the cause of the different pattern through a recommendation service. The user device (100) may provide user-customized answers based on a personalized database to the user's questions through a QA service. The user device (100) may utilize a personalized database to provide a journal service that manages and describes the user's daily routine or special events.
[0044] FIG. 2 is a diagram illustrating the operation of a user device (100) according to one embodiment of the present disclosure to build a knowledge graph-based personalized database.
[0045] A user device (100) according to one embodiment of the present disclosure may be an electronic device capable of processing data. For example, it may be an electronic device such as a smartphone, smart glasses, a wearable device, a digital camera, a laptop, an AR (Augmented Reality) device, or a VR (Virtual Reality) device. The user device (100) may be equipped with various types of neural network models. For example, the user device may be equipped with at least one model such as a CNN (Convolutional Neural Network), GCN (Graph Convolutional Neural Network), GNN (Graph Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), or BRDNN (Bidirectional Recurrent Deep Neural Network), and may use these in combination.
[0046] A user device (100) according to one embodiment of the present disclosure can construct a knowledge graph-based personalized database by converting various types of unstructured data into the form of a knowledge graph. The user device (100) can acquire various types of data and convert them into triple-format data. The user device (100) can map the converted data to an ontology stored in semantic memory and reflect structured data in a format matching the ontology format into the personal knowledge graph. An ontology is a type of dictionary that defines terms conceptualizing data and the relationships between terms. An ontology can be expanded by adding external knowledge converted into triple-format data.
[0047] Data obtained from a user device (100) according to one embodiment of the present disclosure may be user data related to an application executed on the user device (100) or metadata regarding the time, place, weather, etc. of an event occurrence, stored on the user device (100). Data obtained from the user device (100) may include at least one of data input by a user on the user device (100), data detected by the user device (100), data received from an external source by the user device (100), and data processed by the user device (100).
[0048] The user device (100) can process unstructured data obtained from the user device (100) into structured data and store it in a personal knowledge graph. The user device (100) can prepare structured semantic information in advance as an ontology. The user device (100) can refer to semantic information of various types of ontology to process unstructured data obtained from the user device (100) into structured data and store it in a personalized database. For example, the user device (100) can convert various types of unstructured data into the form of a knowledge graph and store it in a personal knowledge graph.
[0049] Referring to FIG. 2, the process of a user device (100) collecting user data related to an application executed on the user device (100) and building a personalized database in the form of a knowledge graph is illustrated as an example.
[0050] In the data collector part of the user device (100), the user data collector (1030) can collect user data from a contact provider, a message provider, a media provider, CMH (content management hub) data, other data providers, etc. Each provider can store raw data level data provided from at least one application. For example, a message provider can store user data in the form of raw data received from a text message application or a chat application. The user data collector (1030) is not limited to the example shown in FIG. 2 and can collect user data from various types of applications, including third-party applications installed on the user device (100). The place data collector (1010) and the weather data collector (1020) can collect metadata regarding a place or weather from external information obtained from the user device (100). In FIG. 2, the location data collector (1010), weather data collector (1020), and user data collector (1030) are separated, but are not limited thereto and may be integrated into a single collector.
[0051] Each data collector (1010, 1020, 1030) collects data at the level of log data or raw data. For example, a user data collector (1030) can collect photo files themselves from a photo management application that manages photos taken through a camera. The user data collector (1030) can receive user data transmitted by each application according to a protocol predetermined by domain or by provider. When an event such as the addition, modification, or deletion of user data stored in each application occurs, the user data collector (1030) can receive the added user data, modified user data, or deleted user data from each application.
[0052] In the memory core part of the user device (100), the analyzer (1040) can generate a new form of user data using part or all of the data collected by each data collector (1010, 1020, 1030).
[0053] The analyzer (1040) can generate user data at the level of action information or activity information from the data collected by each of the data collectors (1010, 1020, 1030). The analyzer (1040) can generate user data at the level of action information or activity information by inferring and determining the user's act of taking a photo from a photo, the user's act of eating food from a receipt paid at a restaurant, and the user's act of staying from GPS-based location information of the user's location. Action information is user data corresponding to the user's action (unit action), and activity information may be user data composed of a series of continuous action information. Activity information may have attribute data where the values of the start time and end time are different, whereas action information may have attribute data regarding the value of the time at which the user's action occurred. For example, watching a movie can be considered activity information because the time at which the movie started and the time at which the movie ended are different, whereas making a payment can be considered action information because the time of payment is instantaneous. However, action information can also be processed as a type of activity information where the start time and end time are the same.
[0054] The analyzer (1040) can generate user data at the level of a personal knowledge graph. The analyzer (1040) can generate a personal knowledge graph by obtaining action information or activity information based on data collected by each data collector (1010, 1020, 1030), connecting entities related to the action information or activity information as nodes, and storing attribute information of each node. For example, the personal knowledge graph may be composed of a lower layer containing user data at the raw data level, a middle layer containing user data at the action information or activity information level, and a top layer corresponding to the title or topic level of the personal knowledge graph encompassing the action information or activity information, but is not limited to such a hierarchical structure format. Multiple nodes corresponding to activity information included in the middle layer may be connected to the uppermost layer of the personal knowledge graph. Multiple nodes corresponding to user data at the raw data level included in the lower layer may be connected to each node corresponding to activity information as attribute data of each activity information. Nodes corresponding to activity information in a personal knowledge graph can be connected to each other, and nodes corresponding to user data can be connected to nodes corresponding to other user data. Nodes corresponding to similar user data included in one or more personal knowledge graphs can be clustered and managed as a single group. For example, photos containing the faces of look-alike users can be managed as a single group, so that when attribute information is entered for any one of the photos, all photos within the same group can share the entered attribute information. If any one photo within the same group is deleted, all photos within the same group can be processed to be deleted from one or more personal knowledge graphs.As another example, a personal knowledge graph can be represented by having user data generated within a specified period as the root node, and each node connected to the root node. The root node is traversable through the specified period information. The root node can be connected to each personal knowledge graph, each having a sub-period information constituting the specified period information as a sub-root node.
[0055] The encoder (1050) converts user data generated or processed by the analyzer (1040) into triple-format data and maps it to a predetermined ontology, infers structured data that fits the ontology format, and can build a personal knowledge graph in storage (1060) or reflect it in an existing personal knowledge graph. Various types of ontology, such as content ontology, activity information ontology, environment ontology, and relationship ontology, may be prepared in advance on the user device (100). The encoder (1050) can integrate and use various ontology prepared on the user device (100). For example, the encoder (1050) can convert user data related to card payment information paid on January 1 and photos taken on January 1 into a triple format, and use an activity information ontology to identify the converted user data as activity information for purchases and activity information for taking photos that took place on January 1, respectively, and generate or update a personal knowledge graph based on activity information in a structured form.
[0056] Storage (1060) can store a personal knowledge graph. The user device (100) can manage the personal knowledge graph by building a knowledge graph-based personalized database in the storage (1060). The user device (100) can record and store data related to events generated by the user in the form of a personal knowledge graph over a certain period. To record and manage events generated on the user device (100) using various types of user data, the user device (100) can store and manage a personal knowledge graph in which objects related to the event are each node.
[0057] Below, the method of generating various types of personal knowledge graphs by a user device (100) and the method of inferring the user's interests using various types of personal knowledge graphs to provide user-customized services are described in detail.
[0058] FIG. 3 is a diagram illustrating the process of generating a user log knowledge graph in a user device (100) according to one embodiment of the present disclosure.
[0059] Referring to FIG. 3, the user device (100) may include a user log knowledge graph generation module (125). The user log knowledge graph generation module (125) may include a data queue, rule storage, rule matcher, target storage, target executer, etc., but the names and detailed configurations thereof are not limited thereto.
[0060] A data queue can receive (subscribe to) data published by multiple data creators. Data creators can be applications, frameworks, systems, developers, users, etc. Rule storage can store specifications regarding data conditions that determine when a target action is performed. For example, rule storage can store filter conditions such as condition information on strings, system time information, or third-party information related to the data. A rule matcher can refer to rule storage to determine whether data matches a condition. Target storage can store specifications regarding how data is transformed to perform a specific target action. A target executor can refer to target storage to determine the target action to perform and execute the target action. Target executors can set up connection pooling for frequently connected massive language models or knowledge graphs. Target executors can refer to a cache for the same request to provide a fast return. Target executors can store triple-facts in an existing knowledge graph with established connections.
[0061] The user log knowledge graph generation module (125) can generate a user log knowledge graph that represents the relationships between entities by having each node an entity related to user activity information based on user log data. The user log knowledge graph is a personal knowledge graph that stores triple-facts extracted from user log data generated by a user interacting with a user device (100). User log data is data that records data regarding events generated by a user, and may include information regarding the process of an application executed by the user, the operation status or execution result of the process, and user data at the raw data level related to the application executed by the user. The user log knowledge graph generation module (125) can perform operations such as updating, deleting, and querying, as well as generating the user log knowledge graph. The user log knowledge graph generation module (125) can manage triple-facts extracted from old user log data and, in some cases, refine the user log knowledge graph so that only keyword-centered facts remain.
[0062] FIG. 4 is a drawing for illustrating a user log knowledge graph according to one embodiment of the present disclosure.
[0063] Referring to FIG. 4, the user device (100) can create a knowledge graph that records attribute data for each event by using the period information from '20:16 to 20:17' as the root node and five events that occurred on the user device (100) during the one-minute period information as nodes connected to the root node. Each event can be represented by extractable facts such as whether it is a foreground work that the user can perceive, whether it was triggered by the user, whether it is performing a process of a certain application, what type of input interface it is, and when the start time and end time are.
[0064] Looking at the example illustrated in FIG. 4, it can be seen that the first event (event 1) is an event performed from 20:16:00 to 20:16:03, in which a user runs a note application as a foreground work and generates a result through pen input. It can be seen that the first event generates a result through pen input named 'Note123123.object' which mentions the keywords 'test' and 'Dijkstra'. The second event (event 2) is an event performed from 20:16:10 to 20:16:11, in which a result is generated through text input in the note application. It can be seen that the second event generates a result through text input that mentions the keyword 'Dijkstra', which is referenced 8 times by other nodes. Event 3 concerns the generation of a result through text input in an application called 'KK Talk', and it can be seen that this event was performed from 20:16:30 to 20:16:40. Event 3 generates a result through text input mentioning the keywords '맛집' (famous restaurant) and '떡볶이' (spicy rice cakes), which are each referenced once by other nodes. Event 4 concerns the generation of 'photo_2024231', a result of taking a photo using a camera application, and it can be seen that this event was performed instantaneously from 20:16:40 to 20:16:40. Event 4 mentions the keywords 'exam' and 'Dijkstra', and generates a photo named 'photo_2024231' that is included in 'Lecture 13'. Event 5 is related to the attachment of a photo named 'photo_2024231', which is the result of taking a photo of Event 4 in the note application, and it can be seen that this event was performed instantaneously from 20:16:45 to 20:16:45.
[0065] A user device (100) according to one embodiment of the present disclosure may record data related to events occurring in the user device (100) over a set period and store it in the form of a knowledge graph. For results generated through each event occurring in the user device (100), the user device (100) may generate a user log knowledge graph that represents the association between keywords, with keywords extracted from each result serving as nodes, as shown in FIG. 4.
[0066] FIG. 5 is a drawing for illustrating a user log knowledge graph according to one embodiment of the present disclosure.
[0067] A user device (100) according to one embodiment of the present disclosure may not store data related to all events that occurred in the user device (100), but may delete and store data related to some events that are not associated with other events. In the user log knowledge graph described above in FIG. 4, it can be seen that among the events that occurred within a certain period, the results generated through the third event are not associated with the results generated through other events and correspond to keywords that are not semantically influential when considering the number of times they are referenced by other nodes. Referring to FIG. 5, the user device (100) according to one embodiment of the present disclosure may delete and store nodes related to the results generated through the third event from the user log knowledge graph.
[0068] FIG. 6 is a diagram illustrating the process of generating a system log knowledge graph in a user device according to one embodiment of the present disclosure.
[0069] Referring to FIG. 6, the user device (100) may include a system log knowledge graph generation module (124). The system log knowledge graph generation module (124) may include a system information database (System Info DB), a system information aggregator (System Info Aggregator), a system information fact generator (System Info Fact Generator), etc., but its names and detailed configurations are not limited thereto.
[0070] The system information database can record system events generated by each process on an chronological basis. By analyzing the list of running processes, I / O statistics by process, and which processes consume the most system resources, the system information database can identify important system events. The system information aggregator can remove unimportant system events based on system resource usage and system events. The system information aggregator aggregates system events by integrating attributes such as execution time and execution results into system event units, and can limit the number of system events per predetermined time period. The system information aggregator can aggregate system usage by integrating system usage per predetermined time period. The system information fact generator can generate triple-facts from aggregated system events and system usage, and the generated triple-facts can be reflected in the system log knowledge graph.
[0071] A system log knowledge graph generation module (124) according to one embodiment of the present disclosure can generate a system log knowledge graph in which the results of aggregating system log data by system monitoring criteria are each node. The system log knowledge graph generation module (124) can obtain statistically significant data by aggregating system log data by system monitoring criteria. The system log knowledge graph is a personal knowledge graph that aggregates and stores system log data by each system monitoring criterion at predetermined intervals. System log data is data that records system status information or data regarding events that occurred in the system, and may include system resource usage such as CPU, memory, disk, network, and sensors, as well as system events. The system log knowledge graph can store facts related to system events and system usage belonging to a period according to the period information of the root node. System monitoring criteria may be based on various perspectives such as hardware, processes, situation information, time, and users, or a combination thereof. For example, system monitoring criteria may include 'most active application information', 'foreground display time', 'productivity level', 'user state', 'number of processes', 'max duration', etc. The system log knowledge graph generation module (124) can perform operations such as updating, deleting, and querying, as well as generating the system log knowledge graph.
[0072] FIG. 7 is a diagram illustrating a system log knowledge graph according to one embodiment of the present disclosure.
[0073] Referring to FIG. 7, the user device (100) can generate a system log knowledge graph with the period information from '20:16 to 20:17' as the root node and the results of aggregating system log data generated by the user device (100) during the period information of one minute as each node according to system monitoring criteria. The system log data may include system events and system usage that occurred within the period according to the period information of a predetermined time unit. In FIG. 7, the period information is set to a time unit of one minute, but it is not limited thereto. The system log knowledge graph can reflect the characteristics of the system log data generated by the user device (100) during the period according to the period information.
[0074] The user device (100) can generate a system log knowledge graph by connecting the results of aggregating system log data by system monitoring criteria to each node at the root node. Looking at the example illustrated in FIG. 7, it can be seen that the most active application information on the user device (100) during the one minute from 20:16 to 20:17 is the 'Note App', and the time displayed in the foreground during the entire one minute is '55 seconds'. Additionally, it can be seen that the number of processes executed on the user device (100) during the one minute from 20:16 to 20:17 is '3', and the maximum duration of the processes is '50 seconds' during the one minute. The user device (100) can infer state information such as the user's emotions, productivity, or concentration based on the system log data. As shown in the example illustrated in FIG. 7, the user device (100) can infer that the productivity level on the user device (100) is approximately '4' during the one minute from '20:16 to 20:17' and infer that the user state is 'immersed', and create each node in the system log knowledge graph.
[0075] FIG. 8 is a diagram illustrating the integration of a system log knowledge graph according to one embodiment of the present disclosure.
[0076] Referring to FIG. 8, the user device (100) can create a system log knowledge graph in which the period information of a minimum unit time of one minute is used as the root node, and the results of aggregating system log data collected within the period according to the period information are aggregated according to system monitoring criteria are used as each node connected to the root node. The user device (100) can integrate ten system log knowledge graphs in which the period information of one minute is used as the root node to create one system log knowledge graph in which the period information of ten minutes is used as the root node. That is, the user device (100) can create a system log knowledge graph in which the period information of a time range equal to the sum of the periods of the smaller period information is used as the root node, and the results of aggregating system log data collected within the period according to the smaller period information are aggregated according to system monitoring criteria are used as each node connected to the root node.
[0077] A user device can generate one system log knowledge graph corresponding to a 10-minute period by integrating 10 system log knowledge graphs corresponding to a 1-minute period. A user device can generate one system log knowledge graph corresponding to a 30-minute period by integrating three system log knowledge graphs corresponding to a 10-minute period. A user device can generate one system log knowledge graph corresponding to a 1-hour period by integrating two system log knowledge graphs corresponding to a 30-minute period. In this way, a system log knowledge graph with a hierarchical structure can be generated, in which a system log knowledge graph corresponding to a smaller time range becomes the lower layer, and a system log knowledge graph corresponding to a time range that combines the periods of the smaller time ranges becomes the upper layer. The higher the layer of the knowledge graph, the more it can reflect the characteristics of the system log data over a longer period.
[0078] Referring to FIG. 8, it can be seen that the lowest layer system log knowledge graph has period information of 1 minute, which is the minimum unit of time range, and the highest layer system log knowledge graph has period information of 30 minutes. Looking at the example illustrated in FIG. 8, it can be seen that the application information most active on the user device (100) during the 30 minutes is the 'Note App', and the time displayed in the foreground during the entire 30 minutes is '10 minutes and 25 seconds'. The app most active during the period from 10 minutes to 30 minutes is the 'Music App', and it can be seen that the 'Music App' is run while the screen is off, and the time displayed in the foreground is only 20 seconds and 5 seconds, respectively. In addition, it can be seen that the user's emotional state during the first 10 minutes was 'immersed,' but during the 20 minutes from 10 to 30 minutes, the user's emotional state was 'sensitive,' so the user's emotional state for the entire 30 minutes was inferred to be 'neutral.' Also, it can be seen that the productivity level during the first 10 minutes was '6,' but during the 20 minutes from 10 to 30 minutes, the productivity level was '1,' so the productivity level for the entire 30 minutes was inferred to be '3.' Furthermore, it can be seen that the application information that ran the longest during the entire 30 minutes was the 'music app.'
[0079] When a system log knowledge graph with such a hierarchical structure is provided, the user device (100) can identify the characteristics of system log data corresponding to a longer time period through the upper layer system log knowledge graph without having to identify the characteristics of multiple system log data corresponding to a predetermined unit of time period information one by one in order to identify the characteristics of system log data corresponding to a specific period information.
[0080] FIG. 9 is a diagram illustrating the operation of a user device (100) according to one embodiment of the present disclosure providing a personal knowledge graph-based service.
[0081] According to one embodiment of the present disclosure, in a service providing part of a user device (100), a service logic module (1090) can execute a specific service in accordance with user input through a service request module (1095). The service request module (1095) can receive user input such as a request to execute a specific application, input of a search term, or a touch on a user interface screen for setting specific items, characters, numbers, periods, etc. For example, the service logic module (1090) can request a personal knowledge graph or user data of a personal knowledge graph related to a retrievaler (1080) in accordance with a request to execute a specific application or input of a search term entered by a user. The service logic module (1090) can provide a specific service using a personal knowledge graph based on mutually related user data or user data obtained from a personal knowledge graph.
[0082] In the memory core part of the user device (100), the retrieval agent (1080) can query the personal knowledge graph stored in the storage (1060) or search for user data contained in the personal knowledge graph. The retrieval agent (1080) may include a query engine or a search engine. The retrieval agent (1080) can query the personal knowledge graph by date or the personal knowledge graph for a specific date or a specific period from the storage (1060) and transmit it to the service logic module (1090). The retrieval agent (1080) can search the personal knowledge graph corresponding to the search term or query, or user data contained in the personal knowledge graph from the storage (1060), and transmit it to the service logic module (1090). The retrieval agent (1080) can identify the Internationalized Resource Identifier (IRI) of the representative word for the input search term using an embedding vector comparison method or a synonym dictionary DB. The retrieval agent (1080) can construct a query using IRI to receive query results for the personal knowledge graph from the storage (1060).
[0083] The decoder (1070) performs the inverse role of the encoder (1050) of FIG. 2. The decoder (1070) can obtain data in a form that can be utilized by the service logic module (1090) from structured data obtained from the personal knowledge graph.
[0084] If the user's interests within a specific period are known, the user device (100) can provide effective services through user customization based on the user's interests. Below, a method of inferring the user's interests using the system log knowledge graph and the user log knowledge graph is described in detail, in which the user device (100) infers the user's interests in order to provide a predetermined service when the system log knowledge graph and the user log knowledge graph are stored in the storage (1060) as a form of a personal knowledge graph.
[0085] FIG. 10 is a flowchart illustrating a method for inferring a user's interests in a user device (100) according to one embodiment of the present disclosure.
[0086] A user device (100) according to one embodiment of the present disclosure can obtain time span information for determining the user's interests from a query (S1010)
[0087] A query may be generated during the process of providing a service on a user device (100). The query may be generated by a query generation model of the user device (100) depending on the type of service being provided to the user, user input, user state or situation, etc. For example, in an environment where the user device (100) provides a first service to the user, if there is a request from a user using the first service or an interaction between the user device (100) and the user, the user device (100) may generate a query based on at least one of the type of the first service, user input, user state or situation.
[0088] The query may be in the form of requesting the user's interests during a specific period. For example, the query may be in the form of asking what the 'user's interests during the last month' are. Although the query is in the form of requesting a specific service, the user device (100) may need to identify what the user's interests are during a specific period in order to provide the specific service. For example, if there is a query requesting a music recommendation service such as 'recommend a song,' the user device (100) can check if there are any singers or songs corresponding to the user's interests. Once the user's interests related to songs are identified, the user device (100) can provide personalized song recommendations.
[0089] The user device (100) can determine whether information regarding the user's interests over a certain period is needed by analyzing a query. The user device (100) can obtain information regarding the period for determining the user's interests by analyzing the query. The period for determining the user's interests can be set differently depending on the content of the query. For example, if the query is related to the user's interests for today, the period for determining the user's interests can also be set to today. If the query is related to the user's interests for the past month, the period for determining the user's interests can also be set to the past month. If the information regarding the period for determining the user's interests cannot be specified, the information regarding the period for determining the user's interests can be determined according to a default value.
[0090] A user device (100) according to one embodiment of the present disclosure can obtain user interaction-based semantic index information (hereinafter, semantic index information) from at least one system log knowledge graph corresponding to period information for determining the user's interests. (S1020)
[0091] The system log knowledge graph may be a personal knowledge graph in which each node represents the result of aggregating system log data collected within a period based on predefined time range information according to system monitoring criteria. The predefined time range may be 1 minute, 10 minutes, 1 hour, 1 day, etc., but is not limited thereto. The system log knowledge graph corresponding to the period information for determining user interest may mean that the time of creation of the system log data in the system log knowledge graph falls within the period based on the period information for determining user interest.
[0092] Semantic index information may correspond to guidance information for node exploration of a personal knowledge graph to obtain information regarding the user's interests or intentions. Since the user's interests or intentions are reflected in the interactions between the user and the user device (100), such as 'what,' 'how often,' or 'how long' the user used the user device (100), and 'what input was received from the user,' in one embodiment of the present disclosure, user interaction-based semantic index information may be used to infer the user's interests. Since all interactions between the user and the user device (100) are stored as system log data within the user device (100), the semantic index information may be information obtained from at least one node of a system log knowledge graph generated using the system log data.
[0093] Semantic index information can be utilized as filter condition information used to determine the user's interests. The user device (100) can select a section corresponding to the semantic index information during the entire period for determining the user's interests. For example, the user device (100) can obtain information about a specific section for acquiring the user's interests by selecting a system log knowledge graph that has a value corresponding to the semantic index information for at least one system log knowledge graph belonging to specific period information. Accordingly, the amount of data that the user device (100) needs to search for is significantly reduced.
[0094] In one embodiment of the present disclosure, a user device (100) may obtain system monitoring criteria used to determine user interests according to a predetermined rule in at least one system log knowledge graph. The user device (100) may obtain semantic index information based on at least one node corresponding to the system monitoring criteria obtained according to the predetermined rule in at least one system log knowledge graph. According to one embodiment of the present disclosure, the system monitoring criteria used to determine user interests may be predetermined by the manufacturer of the user device (100) or the user of the user device (100) based on the relationship between the system monitoring criteria. For example, if the first system monitoring criterion is 'information on the most active application' and the second system monitoring criterion is 'level of productivity', and a synergistic relationship between the type of application and productivity is recognized, the first system monitoring criterion and the second system monitoring criterion may be predetermined as system monitoring criteria used to determine user interests. Accordingly, the user device (100) can obtain semantic index information based on a node corresponding to a first system monitoring criterion and a node corresponding to a second system monitoring criterion. According to one embodiment of the present disclosure, the system monitoring criterion used to determine the user's interests may be determined based on the importance of the system monitoring criterion itself or the value of the node corresponding to the system monitoring criterion. When the importance of a specific system monitoring criterion is the highest, it may be predetermined as the system monitoring criterion used to determine the user's interests. The user device (100) may set the importance for each system monitoring criterion.For example, if the 'most active application information' is set as an important system monitoring criterion that must be checked, the user device (100) can obtain semantic index information based on the node corresponding to the 'most active application information' which is the system monitoring criterion. If the value of the node corresponding to any system monitoring criterion exceeds a predetermined threshold or corresponds to a specific value, it can be pre-determined as a system monitoring criterion used to determine the user's interests. The user device (100) can set a threshold or a specific value for each system monitoring criterion. For example, if the value of the node corresponding to the system monitoring criterion 'productivity level' is 8 or higher, the user device (100) can select the 'productivity level' as a system monitoring criterion used to determine the user's interests and also select other system monitoring criteria that are in a corresponding relationship (e.g., most active application information).
[0095] In one embodiment of the present disclosure, a user device (100) can obtain at least one system monitoring criterion used to determine a user's interest according to the content of a query by using a system monitoring criterion selection model learned based on historical information that determined semantic index information. The user device (100) can obtain semantic index information based on at least one node corresponding to the at least one system monitoring criterion obtained using the system monitoring criterion selection model in at least one system log knowledge graph. The system monitoring criterion selection model may be a large language model. According to one embodiment of the present disclosure, the user device (100) can obtain at least one system monitoring criterion that should be prioritized when determining a user's interest among a plurality of system monitoring criterions according to the content of a query by using a system monitoring criterion selection model. The system monitoring criterion selection model can analyze the given plurality of system monitoring criterions and the query to determine which combination of system monitoring criterions can infer a user's interest according to the content of the query. As a result of the determination, the system monitoring criterion selection model can output the combination of system monitoring criterions most appropriate for inferring a user's interest corresponding to the query.
[0096] In one embodiment of the present disclosure, when the period information for determining the user's interest is composed of a combination of sub-period information of a predefined time range, the user device (100) can determine semantic index information in a system log knowledge graph corresponding to each sub-period information. The period information for determining the user's interest may be composed of a combination of sub-period information of time ranges of the same or different lengths. For example, when the period information for determining the user's interest is 'today 15:00 ~ 17:21' and the predefined time ranges are '1 hour', '10 minutes', and '1 minute', the sub-period information may be 'today 15:00~16:00', 'today 16:00~17:00', 'today 17:00~17:10', 'today 17:10~17:20', and 'today 17:20~17:21'.
[0097] In one embodiment of the present disclosure, a user device (100) may search for at least one node corresponding to at least one system monitoring criterion used to determine interest in a system log knowledge graph corresponding to sub-period information. The system log knowledge graph corresponding to sub-period information may be a system log knowledge graph in which the sub-period information is the root node and the results of aggregating system log data collected within the period according to the sub-period information by system monitoring criterion are each node connected to the root node. The user device (100) may determine semantic index information based on at least one node searched in the system log knowledge graph corresponding to sub-period information.
[0098] In one embodiment of the present disclosure, upper sub-period information may be composed of a combination of lower sub-period information of a smaller time range. Upper sub-period information may be composed of a combination of multiple lower sub-period information having the same time range. For example, in an example where the period information for determining a user's interest is 'today 15:00 ~ 17:21', the upper sub-period information of 'today 15:00 ~ 16:00' may be composed of a combination of lower sub-period information of 'today 15:00 ~ 15:10', 'today 15:10 ~ 15:20', 'today 15:20 ~ 15:30', 'today 15:30 ~ 15:40', 'today 15:40 ~ 15:50', and 'today 15:50 ~ 16:00'. In addition, sub-period information in 10-minute units (e.g., sub-period information of ‘today 15:00~15:10’) may be composed of a combination of 10 sub-period information in 1-minute units. The lowest sub-period information may have a time range corresponding to a predetermined unit time (e.g., a unit time of 1 minute).
[0099] In one embodiment of the present disclosure, a system log knowledge graph corresponding to sub-period information may be a hierarchical structure created by connecting the root node of the upper sub-period information, which is the time range summing the periods of the lower sub-period information, and each node connected to the root node of the upper sub-period information, which is the result of integrating system log data collected within the period according to the lower sub-period information and aggregating it according to system monitoring criteria. In order to obtain semantic index information from a system log knowledge graph corresponding to sub-period information having a hierarchical structure, a user device (100) may obtain semantic index information from a system log knowledge graph corresponding to sub-period information in each layer from the top layer to the bottom layer of the system log knowledge graph corresponding to sub-period information, or stop searching the system log knowledge graph to the lower layer. The user device (100) may obtain semantic index information from a system log knowledge graph corresponding to a lower sub-period information based on at least one system monitoring criterion and semantic index information used to determine interest in the system log knowledge graph corresponding to the upper sub-period information. The user device (100) can use at least one system monitoring criterion, which is used to determine interest in a system log knowledge graph corresponding to upper sub-period information, and the same system monitoring criterion to obtain semantic index information in a system log knowledge graph corresponding to lower sub-period information.
[0100] The user device (100) can determine the similarity between the semantic index information obtained from the system log knowledge graph corresponding to the lower sub-period information and the semantic index information obtained from the system log knowledge graph corresponding to the upper sub-period information. If the similarity between the semantic index information obtained from the system log knowledge graph corresponding to the lower sub-period information and the semantic index information obtained from the system log knowledge graph corresponding to the upper sub-period information satisfies a predetermined criterion, the user device (100) can process the semantic index information corresponding to the lower sub-period information as valid. If the similarity between the semantic index information obtained from the system log knowledge graph corresponding to the upper sub-period information and the semantic index information obtained from the system log knowledge graph corresponding to the lower sub-period information does not satisfy a predetermined criterion, the user device (100) can process the semantic index information corresponding to the lower sub-period information as invalid and stop the search of the system log knowledge graph to the lower layer. Since the semantic index information obtained from the system log knowledge graph corresponding to the upper sub-period information represents user interaction for a longer time range than the semantic index information obtained from the system log knowledge graph corresponding to the lower sub-period information, if the similarity between the semantic index information corresponding to the upper sub-period information and the semantic index information corresponding to the lower sub-period information does not satisfy a predetermined standard, the user device (100) may ignore the semantic index information corresponding to the lower sub-period information.
[0101] A user device (100) according to one embodiment of the present disclosure can search for at least one contact node based on semantic index information obtained from at least one system log knowledge graph in at least one user log knowledge graph corresponding to period information for determining the user's interest. (S1030)
[0102] The user log knowledge graph may be a personal knowledge graph that represents the relationships between entities, with each node representing an entity related to user activity information based on user log data. The entities related to user activity information are facts extracted from events that occur when a user performs an action on a user device (100), and may include information on an application executed on the user device (100), the execution result of the application, words extracted from the execution result, or inferred material or topic. The user log knowledge graph may be refined to represent the relationships between keywords at the level of user action information.
[0103] A user device (100) according to one embodiment of the present disclosure can utilize semantic index information obtained based on at least one node of a system log knowledge graph to select a user log knowledge graph that is most related to the user's interests among a plurality of user log knowledge graphs belonging to period information for determining the user's interests.
[0104] In one embodiment of the present disclosure, a user device (100) can search for at least one contact node based on semantic index information obtained based on at least one node of a system log knowledge graph in at least one user log knowledge graph. A contact node refers to a node corresponding to a contact point that allows access from a node of the first personal knowledge graph to the second personal knowledge graph when there are different first personal knowledge graphs and second personal knowledge graphs. For example, if the semantic index information corresponding to the first period information is 'ABC' application information, the user device (100) can search for a node having 'ABC' application information in at least one user log knowledge graph corresponding to the first period information as a contact node. This will be described in detail below with reference to FIG. 11.
[0105] FIG. 11 is a diagram illustrating the connection relationship between a system log knowledge graph and a user log knowledge graph according to one embodiment of the present disclosure.
[0106] Referring to FIG. 11, there is a system log knowledge graph with the period information from '20:16 to 20:17' as the root node, and the results of aggregating system log data collected from the user device (100) during the period information for one minute as each node according to system monitoring criteria. Additionally, there is a user log knowledge graph that shows the relationships between objects, with objects related to user activity information based on user log data generated by running a note application and a camera application on the user device (100) during the period information as each node. Looking at the user log knowledge graph illustrated in FIG. 11, it can be seen that the user ran the note application and generated a result through pen input named 'Note123123.object' mentioning keywords 'test' and 'Dijkstra', and generated a result through text input mentioning the keyword 'Dijkstra'. In addition, it can be seen that the user mentions the keywords 'test' and 'Dijkstra' by taking a photo using a camera application, and creates a photo named 'photo_2024231' included in 'Lecture 13'.
[0107] Referring to FIG. 11, a user device (100) can search for at least one contact node in a user log knowledge graph by utilizing a 'note application' obtained based on a node corresponding to the most active application in the system log knowledge graph as semantic index information. Since the semantic index information is a 'note application', the user device (100) can search for a node having 'note application' information in the user log knowledge graph as a contact node.
[0108] Meanwhile, as illustrated in FIG. 11, the user device (100) can connect the system log knowledge graph and the user log knowledge graph using the semantic index information obtained from the system log knowledge graph and the root node, which is information of a predetermined period, as the merging criteria, and can merge the user log knowledge graph including a contact node having information identical to the system log knowledge graph and semantic index information of the root node. The user device (100) can generate an interest knowledge graph representing the user's interests by merging the system log knowledge graph based on system log data and the user log knowledge graph based on user log data. The user device (100) can remove nodes of low importance during the process of merging multiple knowledge graphs. As illustrated in FIG. 11, nodes of entities related to activity information, such as 'taking a photo using a camera app,' can be removed from the user log knowledge graph. The user device (100) stores the merged knowledge graph as an interest knowledge graph and can obtain the user's interests based on at least one node satisfying a predetermined condition in the interest knowledge graph.
[0109] FIG. 12 is a diagram illustrating an interest knowledge graph formed by merging a system log knowledge graph and a user log knowledge graph according to one embodiment of the present disclosure.
[0110] As previously explained in FIG. 11, a heterogeneous personal knowledge graph can be generated by identifying contact nodes corresponding to points of contact using information regarding period information and semantic index information, and by connecting and merging the two instruction graphs. At this time, the interest knowledge graph may further include nodes representing activity information inferred as the state of a user within a predetermined unit of time period information, based on the nodes of the merged system log knowledge graph and user log knowledge graph.
[0111] Referring to FIG. 12, the user device (100) can infer activity information of "studying hard" as a user's state within a predetermined unit of time period information from the values of the node of "productivity level" and the node of "user state" in the system log knowledge graph, which is part of the interest knowledge graph, and from the keywords "Dijkstra" and "Lecture 13" in the user log knowledge graph, which is part of the interest knowledge graph. Accordingly, the interest knowledge graph may further include a node representing the inferred activity information.
[0112] Referring again to FIG. 10, in one embodiment of the present disclosure, when period information for determining a user's interest is composed of a combination of sub-period information of a predefined time range, a user device (100) can search for at least one contact node in at least one user log knowledge graph based on semantic index information corresponding to the sub-period information. For example, when the semantic index information corresponding to the sub-period information is 'XYZ' application information, the user device (100) can search for a contact node having the same application information as the 'XYZ' application information in at least one user log knowledge graph corresponding to the sub-period information.
[0113] When the system log knowledge graph corresponding to the sub-period information is a hierarchical structure, the user device (100) can search for at least one contact node based on semantic index information corresponding to the lowest layer of the sub-period information of the predetermined unit time in at least one user log knowledge graph generated for each predetermined unit time. For example, when the semantic index information corresponding to the lowest layer of the sub-period information of the predetermined unit time is second application information, the user device (100) can search for a contact node having the same application information as the second application information in at least one user log knowledge graph generated for each predetermined unit time.
[0114] A user device (100) according to one embodiment of the present disclosure can obtain a user’s interest corresponding to period information for determining the user’s interest based on at least one node satisfying a predetermined condition in a user log knowledge graph including at least one contact node. (S1040)
[0115] In one embodiment of the present disclosure, a user device (100) may acquire an entity of at least one node as a user's interest by applying a weight based on validity within a period according to period information for determining the user's interest and a correlation with other nodes for each node in at least one user log knowledge graph. The validity of a node within a period according to period information for determining the user's interest refers to the period during which the node is valid as an interest within the entire period. For example, the validity of a node may be determined based on how long the entity of a node persists as an interest and how often it is selected as an interest within the period according to period information for determining the user's interest. The correlation of each node with other nodes in the user log knowledge graph refers to the degree to which the node influences other nodes or how closely related they are. For example, the degree of association with other nodes may be determined based on the number of hops from at least one contact node to the node (or, the number of hops from the root node of the system log knowledge graph to the node), the number of times the node is referenced by other nodes in at least one user log knowledge graph, the category similarity between the user action inferred in at least one system log knowledge graph and the node, etc.
[0116] FIG. 13 is a diagram illustrating the process of inferring user interests using a system log knowledge graph and a user log knowledge graph according to one embodiment of the present disclosure.
[0117] Referring to FIG. 13, there is a system log knowledge graph with a period information of a 3-minute time range as the root node, and three system log knowledge graphs with a period information of a 1-minute time range (hereinafter referred to as sub-period information) each constituting 3 minutes as the root node. Each root node of the system log knowledge graph corresponding to the sub-period information is connected to the root node of the system log knowledge graph corresponding to the 3-minute period information, which is the upper period information. Each system log knowledge graph corresponding to the sub-period information is connected to at least one user log knowledge graph.
[0118] When a query requesting the user's interests is input to the user device (100), the user device obtains period information for determining the user's interests from the query. FIG. 13 describes the case where the period information for determining the user's interests is assumed to be 3 minutes.
[0119] A user device (100) can obtain user interaction-based semantic index information from a system log knowledge graph corresponding to the 3-minute period information, which is the top-level root node. In FIG. 13, assuming that a total of three system monitoring criteria used to determine interest are determined—namely, 'most active application', 'productivity level', and 'longest run application'—the user device (100) can search for a node corresponding to each system monitoring criterion and determine user interaction-based semantic index information based on the searched node. That is, in the system log knowledge graph corresponding to the 3-minute period information, 'note app', 'productivity level 8', and 'music app' can be obtained as semantic index information according to a total of three criteria—namely, 'most active application', 'productivity level', and 'longest run application'.
[0120] A user device (100) can obtain semantic index information in each system log knowledge graph corresponding to a 1-minute sub-period information based on at least one system monitoring criterion and semantic index information used to determine interest in a system log knowledge graph corresponding to 3-minute period information. Referring to FIG. 13, in a system log knowledge graph with the sub-period information 'period 0' from '20:16 to 20:17' as the root node, 'note app' and 'productivity level 10' can be obtained as semantic index information according to a total of three criteria: 'most active application', 'productivity level', and 'longest executed application'. On the other hand, in a system log knowledge graph with the sub-period information 'period 1' from '20:17 to 20:18' as the root node, 'note app', 'productivity level 1', and 'music app' can be obtained as semantic index information based on three criteria: 'most active application', 'productivity level', and 'longest running application'. However, it can be seen that the similarity to the semantic index information obtained from the system log knowledge graph corresponding to the period information of 3 minutes, which is the upper root node, does not satisfy a predetermined criterion. In particular, since ‘productivity level 8’ obtained from the system log knowledge graph corresponding to the period information of the upper root node, which is 3 minutes, and ‘productivity level 1’ obtained from the system log knowledge graph with ‘period 1’ as the root node are not similar, the user device (100) can treat the semantic index information corresponding to the sub-period information of ‘period 1’ as invalid and stop searching the system log knowledge graph or the connected user log knowledge graph to the lower layer.In a system log knowledge graph with the root node 'period 2', which is the sub-period information of '20:18 to 20:19', 'KK Talk App', 'Productivity Level 1', and 'Music App' can also be obtained as semantic index information. However, since 'Productivity Level 8' obtained from the system log knowledge graph corresponding to the period information of 3 minutes, which is the upper root node, and 'Productivity Level 1' obtained from the system log knowledge graph with the root node of 'period 2' are not similar, the user device (100) can treat the semantic index information corresponding to the sub-period information of 'period 2' as invalid and stop searching the system log knowledge graph or the connected user log knowledge graph to the lower layer.
[0121] A user device (100) can search for at least one contact node based on 'Note App', which is semantic index information obtained from a system log knowledge graph with 'Period 0' as the root node, in at least one user log knowledge graph corresponding to period information for determining the user's interest. Referring to FIG. 13, when 'Note App: Pen Input' and 'Note App: Text Input' are searched as contact nodes in the user log knowledge graph, the user device (100) can obtain the user's interest corresponding to the period information for determining the user's interest based on at least one node satisfying a predetermined condition in the user log knowledge graph including the contact nodes 'Note App: Pen Input' and 'Note App: Text Input'. The user device (100) can acquire the keyword 'Dijkstra' as a user's interest corresponding to period information for determining user interest, as the node corresponding to the keyword 'Dijkstra' is 1 hop from the contact node (or 2 hops from the root node of 'period 0'), the number of times other nodes refer to it is 8, which is the highest, and it is valid for two periods from 'period 0' to 'period 1'. Meanwhile, in the case of the node corresponding to 'photo_2024231', which is a result of taking a photo, the search as a contact node connected to the system log knowledge graph corresponding to the sub-period information of 'period 1' failed, but there is a correlation and temporal proximity correlation with the node of the keyword 'Dijkstra', so it can be acquired as a user's interest corresponding to the next rank.
[0122] FIG. 14 is a diagram illustrating a method of acquiring a user's interest when keywords corresponding to a plurality of objects are acquired in a user device (100) according to one embodiment of the present disclosure.
[0123] In one embodiment of the present disclosure, a user device (100) can obtain keywords corresponding to a plurality of entities from a plurality of nodes of a user log knowledge graph. For each of the plurality of keywords, the user device (100) can determine the priority of the keywords by applying a weight based on the validity of the node corresponding to the keyword and the degree of relevance with other nodes, and thereby determine the priority of the interest.
[0124] Referring to FIG. 14, this is a case where the user device (100) obtains a total of three keywords corresponding to interests, including ‘Lecture 13’, ‘Dijkstra’, and ‘photo_2024231’.
[0125] From the perspective of the validity of nodes corresponding to keywords, it can be seen that 'Lecture 13' is valid for a total of 3 periods, including 'Period 0', 'Period 1', and 'Period 3', 'Dijkstra' is valid for a total of 4 periods, including 'Period 0' and 'Period 3', and 'photo_2024231' is valid for a total of 3 periods, including 'Period 1' and 'Period 3'. Assuming that the information for each period from 'Period 0' to 'Period 3' has the same time range, the node corresponding to 'Dijkstra' has the highest validity and can receive the highest weight because it has lasted for the longest period. The nodes corresponding to 'Lecture 13' and 'photo_2024231' are identical in that they are valid for 3 periods.
[0126] From the perspective of relevance to other nodes, it can be seen that 'Dijkstra' is referenced 8 times by other nodes and is 1 hop from the contact node, while 'photo_2024231' is referenced 3 times by other nodes and is 2 hops from the contact node. 'Lecture 13' is 2 hops from the contact node; if other nodes reference it 4 or more times, it has a higher relevance to other nodes compared to 'photo_2024231' and can be assigned a higher weight. Conversely, if other nodes reference it less than 3 times, it has a lower relevance to other nodes compared to 'photo_2024231' and can be assigned a lower weight. Since 'photo_2024231' and 'Lecture 13' have the same node validity and the same number of hops from the contact node to the corresponding node, the priority of the two keywords is determined by the number of times other nodes reference the node, and the priority of interest may differ.
[0127] FIG. 15 is a diagram illustrating the process of inferring user interests using a system log knowledge graph and a user log knowledge graph according to one embodiment of the present disclosure.
[0128] Referring to FIG. 15, there is a system log knowledge graph with a period information of a 3-minute time range as the root node, and three system log knowledge graphs with a period information of a 1-minute time range (hereinafter referred to as sub-period information) each constituting 3 minutes as the root node. Each root node of the system log knowledge graph corresponding to the sub-period information is connected to the root node of the system log knowledge graph corresponding to the 3-minute period information, which is the upper period information. Each system log knowledge graph corresponding to the sub-period information is connected to at least one user log knowledge graph.
[0129] When a query requesting the user's interests is input to the user device (100), the user device obtains period information for determining the user's interests from the query. FIG. 15 describes the case where the period information for determining the user's interests is a total of 2 minutes from 20:17 to 20:19.
[0130] Since the system log knowledge graph corresponding to the period information of 3 minutes, which is the top-level root node, contains system data corresponding to 'period 0' from 20:16 to 20:17, the user device (100) can obtain user interaction-based semantic index information from the system log knowledge graph corresponding to 'period 1' and the system log knowledge graph corresponding to 'period 2', which are lower-level system log knowledge graphs, without searching this. In FIG. 15, assuming that a total of four system monitoring criteria used to determine interest are determined, namely 'most active application', 'productivity level', 'user state', and 'longest-running application', the user device (100) can search for a node corresponding to each system monitoring criterion and determine user interaction-based semantic index information based on the searched node.
[0131] In the system log knowledge graph corresponding to 'period 1', nodes such as 'note app', 'productivity level 1', 'sensitive', and 'music app' can be explored, corresponding to a total of four criteria: 'most active application', 'productivity level', 'user state', and 'longest-running application'. However, in the case of 'note app', it cannot be determined as index information because it does not match the compatibility with other explored nodes. Therefore, the user device (100) determines 'music app' as semantic index information and can explore at least one contact node based on 'music app' in at least one user log knowledge graph corresponding to period information for determining the user's interests. Referring to FIG. 15, when 'Music App: Listen to Music 1' is discovered as a contact node in the user log knowledge graph, the user device (100) can obtain the user's interest corresponding to period information for determining the user's interest based on at least one node satisfying a predetermined condition in the user log knowledge graph containing the contact node 'Music App: Listen to Music 1'. The user device (100) can obtain the keyword 'Ive-Love Dive' as the user's interest corresponding to the period information for determining the user's interest, since the node corresponding to the keyword 'Ive-Love Dive' is 1 hop from the contact node (or 2 hops from the root node of 'Period 0') and is valid for two periods from 'Period 1' to 'Period 2'.
[0132] In the system log knowledge graph corresponding to 'period 2', nodes such as 'KK Talk App', 'Productivity Level 1', 'Sensitive', and 'Music App' can be explored, corresponding to a total of four criteria: 'most active application', 'productivity level', 'user state', and 'longest-running application'. However, in the case of 'KK Talk App', it cannot be determined as index information because it does not match the compatibility with other explored nodes. Therefore, the user device (100) determines 'Music App' as semantic index information and can explore at least one contact node based on 'Music App' in at least one user log knowledge graph corresponding to period information for determining the user's interests. Referring to FIG. 15, when 'Music App: Listen to Music 2' is discovered as a contact node in the user log knowledge graph, the user device (100) can obtain the user's interest corresponding to period information for determining the user's interest based on at least one node satisfying a predetermined condition in the user log knowledge graph containing the contact node 'Music App: Listen to Music 2'. The user device (100) can obtain the keyword 'Espa-Supernova' as the user's interest corresponding to the period information for determining the user's interest, since the node corresponding to the keyword 'Espa-Supernova' is 1 hop from the contact node (or 2 hops from the root node of 'Period 0') and is valid during the period of 'Period 2'.
[0133] The keyword 'espa-supernova', which is of interest obtained based on semantic index information obtained from the system log knowledge graph corresponding to 'period 1', has a longer validity than the keyword 'espa-supernova', which is of interest obtained based on semantic index information obtained from the system log knowledge graph corresponding to 'period 2', so it can be a high-priority interest.
[0134] FIG. 16 is a diagram illustrating a graph of keywords generated using a method of providing the user with interests for a predetermined period of time in a user device (100) according to one embodiment of the present disclosure.
[0135] A user device (100) according to one embodiment of the present disclosure may provide a chart showing keywords acquired as user interests by time period within the period in which interests were determined. Referring to FIG. 16, it can be seen that the user device (100) acquired a total of 7 keywords as user interests for 4 hours from 10:00 to 14:00, including 'lecture', 'tumbler', 'Blue Bottle', 'tteokbokki', 'famous restaurant', 'Dijkstra', and 'code'. For 1 hour from 10:00, a total of 3 interests were inferred, including 'lecture', 'Dijkstra', and 'code', and among them, 'Dijkstra' was found to be the most relevant interest. For 1 hour from 11:00, a total of 2 interests were inferred, including 'tteokbokki' and 'famous restaurant', and among them, 'tteokbokki' was found to be more relevant interest. For 1 hour from 12:00, no interests were inferred. For one hour starting from 13:00, a total of three interests were inferred: 'Tumblr', 'Blue Bottle', and 'Dijkstra', and it can be seen that among them, 'Blue Bottle' corresponded to the most interest. The user device (100) can provide the user with an interest chart as shown in FIG. 16, and when the user selects a specific interest from the interest chart, it can launch an application related to the interest and display content related to user interaction on the user device (100) at that time on the screen. Through the interest chart as shown in FIG. 16, not only the user's interests but also information on the user's activity during that time period can be inferred, the location or destination of the user can be inferred, and information on expected activity at a later time can also be inferred.
[0136] FIG. 17 is a block diagram for explaining the operation of a processor of a user device (100) according to one embodiment of the present disclosure. FIG. 18 is a block diagram for explaining the configuration and operation of a user device (100) according to one embodiment of the present disclosure.
[0137] Referring to FIG. 17, a user device (100) according to one embodiment may include a memory (110) and a processor (120), but is not limited thereto, and may further include general-purpose components. For example, as shown in FIG. 18, the user device (100) may further include a sensing unit (130), a communication unit (140), and an input / output unit (150) in addition to the memory (110) and the processor (120). Hereinafter, each component will be described in detail with reference to FIG. 17 and FIG. 18.
[0138] A memory (110) according to one embodiment can store a program for processing and controlling a processor (120), and can store data and information that is input to or generated from a user device (100). The memory (110) can store instructions, data structures, and program code that can be read by the processor (120). Operations performed by the processor (120) can be implemented by executing instructions or program code stored in the memory (110).
[0139] A memory (110) according to one embodiment may include a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (e.g., SD or XD memory, etc.), a non-volatile memory including at least one of ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, a magnetic disk, and an optical disk, and a volatile memory such as RAM (Random Access Memory) or SRAM (Static Random Access Memory).
[0140] A memory (110) according to one embodiment may store one or more instructions and / or programs that control a user device (100) to train a neural network model or to use a neural network model.
[0141] A processor (120) according to one embodiment can control operations or functions so that a user device (100) can perform tasks by executing instructions or programmed software modules stored in memory (110). The processor (120) may be composed of hardware components that perform arithmetic, logic, and input / output operations and signal processing. The processor (120) can control the overall operations of the user device (100) by executing one or more instructions stored in memory (110). The processor (120) can control a sensing unit (130) including at least one sensor, a communication unit (140), and an input / output unit (150) by executing programs stored in memory (110).
[0142] The processor (120) may include various processing circuits and / or multiple processors. For example, the term “processor” as used herein, including in the claim, may include various processing circuits including at least one processor. “At least one processor” may be configured to perform the various functions described herein, individually and / or collectively. As used herein, “processor,” “at least one processor,” and “one or more processors” may be configured to perform various functions. However, these terms cover, without limitation, situations where one processor performs some of the functions and other processor(s) perform other parts of the functions, and situations where a single processor can perform all functions. Additionally, “at least one processor” may include a combination of processors performing various functions of the disclosed functions in a distributed manner. “At least one processor” may execute program instructions to achieve or perform various functions.
[0143] A processor (120) according to one embodiment may be composed of at least one of, for example, a Central Processing Unit, a microprocessor, a Graphic Processing Unit, ASICs (Application Specific Integrated Circuits), DSPs (Digital Signal Processors), DSPDs (Digital Signal Processing Devices), PLDs (Programmable Logic Devices), FPGAs (Field Programmable Gate Arrays), an Application Processor, a Neural Processing Unit, or an AI-dedicated processor designed with a hardware structure specialized for processing AI models, but is not limited thereto. Each processor constituting the processor (120) may be a dedicated processor for performing a predetermined function.
[0144] An artificial intelligence (AI) processor according to one embodiment can perform computation and control for processing a task set to be performed by a user device (100) using an artificial intelligence (AI) model. The AI processor may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or it may be manufactured as part of a general-purpose processor (e.g., CPU or application processor) or a graphics-dedicated processor (e.g., GPU) and installed in the user device (100).
[0145] A sensing unit (130) according to one embodiment may include a plurality of sensors configured to detect information regarding the surrounding environment of a user device (100). For example, the sensing unit (130) may include a camera (131), a temperature / humidity sensor (132), an infrared sensor (133), a barometric pressure sensor (134), a position sensor (135), a gyroscope sensor (136), etc., but is not limited thereto. Since the function of each sensor can be intuitively inferred by a person skilled in the art from its name, it will be briefly described below.
[0146] A camera (131) according to one embodiment may include a stereo camera, a mono camera, a wide-angle camera, an around-view camera, or a 3D vision sensor. A LiDAR sensor (132) can detect the distance to an object and various physical properties by shining a laser on the target. A temperature / humidity sensor (132) can measure the temperature or humidity of the location where the user device (100) is located. An infrared sensor (133) may be either an active infrared sensor that detects changes by radiating infrared light and blocking the light, or a passive infrared sensor that detects only changes in infrared light received from the outside without having a light emitter. A barometric pressure sensor (134) can measure the barometric pressure of the location where the user device (100) is located. A position sensor (135) can detect the location of the user device (100). For example, the position sensor (135) may be a GPS (global positioning system). A gyroscope sensor (136) can detect angular velocity. The gyroscope sensor (136) can be used to measure the position of the user device (100) and to set the direction in which the user device (100) moves.
[0147] The communication unit (140) may include one or more components that enable the user device (100) to communicate with an external device, such as a server or other electronic device. For example, the communication unit (140) may include a short-range wireless communication unit (141), a mobile communication unit (143), etc., but is not limited thereto.
[0148] The short-range wireless communication unit (141) may include, but is not limited to, a Bluetooth communication unit, a BLE (Bluetooth Low Energy) communication unit, a near field communication unit, a WLAN (Wi-Fi) communication unit, a Zigbee communication unit, an Ant+ communication unit, a WFD (Wi-Fi Direct) communication unit, an UWB (ultra wideband) communication unit, an infrared (IrDA, infrared Data Association) communication unit, a microwave (uWave) communication unit, etc.
[0149] The mobile communication unit (143) transmits and receives wireless signals with at least one of a base station, an external terminal, and a server on a mobile communication network. Here, the wireless signal may include various forms of data such as voice call signals, video call call signals, or text / multimedia message transmission and reception.
[0150] The input / output unit (150) may include an input unit (151) and an output unit (153). The input / output unit (150) may be in a form where the input unit (151) and the output unit (153) are separated, or it may be in a single integrated form such as a touchscreen. The input / output unit (150) may receive input information from a user and provide output information to the user.
[0151] The input unit (151) may refer to a device or component that acquires user input for controlling the user device (100). For example, the input unit (151) may be a key pad, a touch panel (contact capacitive method, pressure resistive method, infrared detection method, surface ultrasonic conduction method, integral tension measurement method, piezo effect method, etc.), a microphone, etc. In addition, the input unit (151) may be an eye tracking sensor, a jog wheel, a jog switch, etc., but is not limited thereto, and may detect user input using any sensor of the sensing unit (130). User input may be in the form of text, voice, or gestures, but is not limited thereto. The user may input search commands in the form of search terms or sentences through the user interface or microphone of the user device (100). The user may provide user input to the user device (100) through predefined gestures or actions (e.g., shaking the user device (100)).
[0152] The output unit (153) can output an audio signal, a video signal, or a vibration signal, and the output unit (153) may include a display unit, an audio output unit, and a vibration motor. The display unit can display information processed by the user device (100). For example, the display unit can display a user interface for receiving user operations. When the display unit and the touchpad form a layered structure and are configured as a touch screen, the display unit can also be used as an input device in addition to an output device. The display unit may include at least one of a liquid crystal display, a thin film transistor-liquid crystal display, an organic light-emitting diode, a flexible display, and a 3D display. Depending on the implementation form of the user device (100), the user device (100) may include two or more display units. The audio output unit can output audio data stored in the memory (110). The audio output unit can output an audio signal related to a function performed by the user device (100). The audio output section may include speakers, buzzers, etc.
[0153] According to one embodiment of the present disclosure, a user device (100) includes a memory (110) comprising one or more storage media for storing instructions and at least one processor (120) comprising a processing circuit. Referring to FIG. 17, the at least one processor (120) can execute instructions to execute a query generation module (121), a query analysis module (122), an interest determination module (123), a system log knowledge graph generation module (124), a user log knowledge graph generation module (125), and a knowledge graph merging module (126). By executing instructions by the at least one processor (120), the user device (100) can generate a personal knowledge graph based on system log data or user log data, for example, a system log knowledge graph, a user log knowledge graph, an interest knowledge graph, etc. By executing instructions by the at least one processor (120), the user device (100) can infer user interests based on the system log knowledge graph and the user log knowledge graph.
[0154] According to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can generate a query when there is a request from the user or an interaction between the user device (100) and the user. The user device (100) can generate a query by executing a query generation module (121) based on at least one of the type of service provided by the user device (100), user input, user state, or situation.
[0155] Queries requesting user interests can be generated in forms depending on the type of service. For example, in the case of OTT (over-the-top) media services, the query may request interests derived from videos in the user's viewing history, such as the genre or provider of the videos watched. Queries requesting user interests can also be generated in forms based on user input. For example, it may be a query requesting interests based on interest categories or keywords defined or registered by the user. Queries requesting user interests can also be generated in forms based on the user's state or situation. For example, it may be a query requesting interests related to a specific period when the user was busy with work, a time when a specific activity was performed, or when a change in the user's state occurred.
[0156] According to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can obtain period information for determining the user's interests by analyzing the query. The user device (100) can execute a query analysis module (122) to determine whether information regarding the user's interests during a certain period is needed. When a query is input from a query generation model (121), the query analysis module (122) can analyze the query to obtain period information for determining the user's interests and query elements such as keywords, categories, and the user's situation that constitute the query.
[0157] According to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can query a personal knowledge graph necessary for determining the user's interests. The user device (100) can execute an interest determination module (123) to obtain at least one personal knowledge graph according to the content of a query analyzed by a query analysis module (122).
[0158] The interest determination module (123) can obtain at least one system log knowledge graph corresponding to period information for determining the user's interest from the system log knowledge graph generation module (124). The interest determination module (123) can obtain at least one user log knowledge graph corresponding to period information for determining the user's interest from the user log knowledge graph generation module (125). The interest determination module (123) can obtain at least one interest knowledge graph corresponding to period information for determining the user's interest from the knowledge graph merging module (126). The knowledge graph merging module (126) can obtain a system log knowledge graph from the system log knowledge graph generation module (124) and obtain a user log knowledge graph from the user log knowledge graph generation module (125). The knowledge graph merging module (126) can generate an interest knowledge graph by merging the system log knowledge graph and the user log knowledge graph corresponding to the same period information based on nodes that correspond to each other.
[0159] The knowledge graph merging module (126) can obtain an interest knowledge graph by merging a system log knowledge graph, in which the sub-period information of the lowest layer of the predetermined unit time is the root node, and a user log knowledge graph, in which the application information, which is semantic index information corresponding to the sub-period information of the lowest layer of the predetermined unit time, is the same as the application information, which is the semantic index information, and a contact node having the same application information. Based on the nodes of the merged system log knowledge graph and user log knowledge graph, the knowledge graph merging module (126) can create a node representing activity information inferred as the state of a user within a predetermined unit time and add it to the interest knowledge graph.
[0160] According to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), a user device (100) can obtain user interaction-based semantic index information from at least one system log knowledge graph. The user device (100) can execute an interest determination module (123) to obtain semantic index information based on at least one node corresponding to at least one system monitoring criterion in at least one system log knowledge graph.
[0161] The interest determination module (123) can obtain system monitoring criteria used to determine user interests according to a predetermined rule in at least one system log knowledge graph. The interest determination module (123) can obtain semantic index information based on at least one node corresponding to the system monitoring criteria obtained according to a predetermined rule in at least one system log knowledge graph.
[0162] The interest determination module (123) can obtain at least one system monitoring criterion used to determine the user's interest according to the content of the query by using a system monitoring criterion selection model learned based on historical information that determined semantic index information. The interest determination module (123) can obtain semantic index information based on at least one node corresponding to the at least one system monitoring criterion obtained using the system monitoring criterion selection model in at least one system log knowledge graph.
[0163] When period information for determining a user's interest is composed of a combination of sub-period information within a predefined time range, the interest determination module (123) can obtain semantic index information from a system log knowledge graph corresponding to each sub-period information. The interest determination module (123) can search for at least one node corresponding to at least one system monitoring criterion used to determine interest in the system log knowledge graph corresponding to the sub-period information. The interest determination module (123) can determine semantic index information based on at least one node searched in the system log knowledge graph corresponding to the sub-period information.
[0164] A system log knowledge graph corresponding to sub-period information may be a hierarchical structure created by using upper sub-period information, which combines the periods of lower sub-period information into a time range, as the root node, integrating system log data collected within the period according to the lower sub-period information and aggregating the results according to system monitoring criteria as nodes connected to the root node of the upper sub-period information, and connecting the root node of the upper sub-period information to the root node of the lower sub-period information. When the system log knowledge graph corresponding to sub-period information is a hierarchical structure, the interest determination module (123) may obtain semantic index information from the system log knowledge graph corresponding to the lower sub-period information based on at least one system monitoring criterion and semantic index information used to determine interest in the system log knowledge graph corresponding to the upper sub-period information from the top layer to the bottom layer. The interest determination module (123) may determine the similarity between the semantic index information obtained from the system log knowledge graph corresponding to the lower sub-period information and the semantic index information obtained from the system log knowledge graph corresponding to the upper sub-period information. The interest determination module (123) can process the semantic index information obtained from the system log knowledge graph corresponding to the lower sub-period information as valid if the similarity satisfies a predetermined criterion. If the similarity does not satisfy a predetermined criterion, the interest determination module (123) can process the semantic index information corresponding to the lower sub-period information as invalid and stop the exploration of the system log knowledge graph to the lower layer.
[0165] According to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), a user device (100) can search for at least one contact node in at least one user log knowledge graph based on semantic index information obtained from at least one system log knowledge graph. The user device (100) can execute an interest determination module (123) to search for a contact node having information identical to the semantic index information in at least one user log knowledge graph.
[0166] When period information for determining user interest is composed of a combination of sub-period information within a predefined time range, the interest determination module (123) can search for at least one contact node based on semantic index information corresponding to the sub-period information in at least one user log knowledge graph corresponding to the sub-period information. When the system log knowledge graph corresponding to the sub-period information is a hierarchical structure, the interest determination module (123) can search for at least one contact node based on semantic index information corresponding to the sub-period information of the lowest layer of the predetermined unit time in at least one user log knowledge graph generated for each predetermined unit time.
[0167] According to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can obtain the user's interests corresponding to period information for determining the user's interests based on at least one node satisfying a predetermined condition in a user log knowledge graph including at least one contact node. The user device (100) can execute an interest determination module (123) to obtain the user's interests based on how frequently an entity related to user activity information performed by the user device (100) appears for a long time within a period according to the period information for determining the user's interests in at least one user log knowledge graph.
[0168] The interest determination module (123) can acquire at least one node as a user's interest by applying weights based on validity within a period and correlation with other nodes according to period information for determining the user's interest for each node in at least one user log knowledge graph. The validity of a node within a period according to period information for determining the user's interest refers to the period during which the node is valid as an interest within the entire period. The correlation of each node with other nodes in the user log knowledge graph refers to the degree to which the node influences other nodes or how closely related they are. When the interest determination module (123) acquires an interest knowledge graph from the knowledge graph merging module (126), it can acquire a user's interest based on at least one node satisfying a predetermined condition in the interest knowledge graph.
[0169] Meanwhile, embodiments of the present disclosure may also be implemented in the form of a recording medium containing computer-executable instructions, such as program modules executed by a computer. A computer-readable medium may be any available medium accessible by a computer and includes both volatile and non-volatile media, and both removable and non-removable media. Additionally, a computer-readable medium may include computer storage media and communication media. Computer storage media include both volatile and non-volatile, removable and non-removable media implemented by any method or technique for storing information, such as computer-readable instructions, data structures, program modules, or other data. Communication media may typically include other data of modulated data signals, such as computer-readable instructions, data structures, or program modules.
[0170] Additionally, computer-readable storage media may be provided in the form of non-transitory storage media. Here, 'non-transitory storage media' simply means that it is a tangible device and does not contain a signal (e.g., electromagnetic waves), and this term does not distinguish between cases where data is stored semi-permanently and cases where it is stored temporarily. For example, 'non-transitory storage media' may include a buffer in which data is stored temporarily.
[0171] According to one embodiment, the method according to one embodiment of the present disclosure may be provided by being included in a computer program product. The computer program product may be traded between a seller and a buyer as a product. The computer program product may be distributed in the form of a device-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or distributed online (e.g., download or upload) through an application store or directly between two user devices (e.g., smartphones). In the case of online distribution, at least a portion of the computer program product (e.g., downloadable app) may be temporarily stored or temporarily created on a device-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server.
[0172] According to one embodiment of the present disclosure, a computer-readable recording medium is provided on which a program is recorded for executing a method for generating a personal knowledge graph (e.g., a system log knowledge graph, a user log knowledge graph, an interest knowledge graph, etc.) based on the above system log data or user log data, or a method for inferring a user's interests.
[0173] According to one embodiment of the present disclosure, a method for inferring user interests is provided. The method for inferring user interests may include the step (S1010) of obtaining period information for determining user interests from a query. Additionally, the method for inferring user interests may include the step (S1020) of obtaining user interaction-based semantic index information from at least one system log knowledge graph, where each node represents the result of aggregating system log data by system monitoring criteria, corresponding to the period information for determining user interests. Additionally, the method for inferring user interests may include the step (S1030) of searching for at least one contact node based on user interaction-based semantic index information in at least one user log knowledge graph, where each node represents the relationship between entities related to user activity information based on user log data, corresponding to the period information for determining user interests. Additionally, the method for inferring user interests may include the step (S1040) of obtaining user interests corresponding to the period information for determining user interests based on at least one node satisfying a predetermined condition in a user log knowledge graph including at least one contact node.
[0174] Additionally, according to one embodiment of the present disclosure, the step (S1020) of obtaining user interaction-based semantic index information may obtain semantic index information based on at least one node corresponding to at least one system monitoring criterion used to determine user interests according to a predetermined rule in at least one system log knowledge graph.
[0175] Additionally, according to one embodiment of the present disclosure, the step (S1020) of obtaining user interaction-based semantic index information can obtain user interaction-based semantic index information based on at least one node corresponding to at least one system monitoring criterion used to determine user interests according to the content of the query, by using a system monitoring criterion selection model learned based on past history information in which user interaction-based semantic index information was obtained.
[0176] Additionally, according to one embodiment of the present disclosure, the step of obtaining user interaction-based semantic index information (S1020) may include, when period information for determining user interest is composed of a combination of sub-period information within a predefined time range, the step of searching for at least one node corresponding to at least one system monitoring criterion used to determine user interest in a system log knowledge graph in which the sub-period information corresponding to the sub-period information is the root node and the result of aggregating system log data collected within the period according to the sub-period information by system monitoring criterion is each node connected to the root node. Additionally, the step of obtaining user interaction-based semantic index information (S1020) may include the step of determining semantic index information corresponding to the sub-period information based on the at least one node found. Additionally, the step of searching for at least one contact node (S1030) may include the step of searching for at least one contact node based on user interaction-based semantic index information corresponding to the sub-period information in at least one user log knowledge graph.
[0177] In addition, according to one embodiment of the present disclosure, a system log knowledge graph corresponding to sub-period information may be a hierarchical structure created by having upper sub-period information, which is a time range summing the periods of lower sub-period information, as a root node, and each node connected to the root node of the upper sub-period information, which is a result of integrating system log data collected within the period according to the lower sub-period information and aggregating it by system monitoring criteria.
[0178] Additionally, according to one embodiment of the present disclosure, the step of obtaining user interaction-based semantic index information (S1020) may obtain user interaction-based semantic index information from a system log knowledge graph corresponding to lower sub-period information based on at least one system monitoring criterion used to determine user interest in a system log knowledge graph corresponding to upper sub-period information, from the top layer to the bottom layer of a system log knowledge graph corresponding to sub-period information which is a hierarchical structure. Additionally, the step of searching for at least one contact node (S1030) may search for at least one contact node based on user interaction-based semantic index information corresponding to the sub-period information of the bottom layer of the same predetermined unit time in at least one user log knowledge graph generated for each predetermined unit time.
[0179] Additionally, according to one embodiment of the present disclosure, a method for inferring user interests may further include the step of obtaining an interest knowledge graph by merging an application information, which is user interaction-based semantic index information corresponding to the sub-period information of the lowest layer of the lowest layer of the predetermined unit time, with a system log knowledge graph having the sub-period information of the lowest layer of the predetermined unit time as the root node, and a user log knowledge graph including a contact node having the same application information as the application information, which is user interaction-based semantic index information. Additionally, the step of obtaining user interests (S1040) may obtain user interests based on at least one node satisfying a predetermined condition in the interest knowledge graph.
[0180] Additionally, according to one embodiment of the present disclosure, the interest knowledge graph may further include a node representing activity information inferred as the state of a user within a predetermined unit of time, based on the nodes of the merged system log knowledge graph and the user log knowledge graph.
[0181] Additionally, according to one embodiment of the present disclosure, the step of acquiring user interests (S1040) may acquire at least one node as a user interest by applying a weight based on validity within a period and correlation with other nodes according to period information for determining user interests for each node in at least one user log knowledge graph.
[0182] According to one embodiment of the present disclosure, a computer-readable recording medium is provided on which a program for executing a method of inferring the interests of the above user is recorded.
[0183] According to one embodiment of the present disclosure, a user device (100) for inferring user interests is provided. The user device (100) may include a memory (110) comprising one or more storage media for storing instructions and at least one processor (120) comprising a processing circuit. By executing one or more instructions by the at least one processor (120), the user device (100) can obtain period information for determining user interests from a query. Additionally, by executing one or more instructions by the at least one processor (120), the user device (100) can obtain user interaction-based semantic index information from at least one system log knowledge graph, where each node is a result of aggregating system log data by system monitoring criteria corresponding to the period information for determining user interests. Additionally, by executing one or more instructions by at least one processor (120), the user device (100) can search for at least one contact node based on user interaction-based semantic index information in at least one user log knowledge graph representing relationships between entities, with each node representing an entity related to user activity information based on user log data corresponding to period information for determining the user's interests. Additionally, by executing one or more instructions by at least one processor (120), the user device (100) can obtain the user's interests corresponding to period information for determining the user's interests based on at least one node satisfying a predetermined condition in the user log knowledge graph including at least one contact node.
[0184] Additionally, according to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can obtain semantic index information based on at least one node corresponding to at least one system monitoring criterion used to determine the user's interests according to a predetermined rule in at least one system log knowledge graph.
[0185] Additionally, according to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can acquire user interaction-based semantic index information based on at least one node corresponding to at least one system monitoring criterion used to determine the user's interests according to the content of the query, using a system monitoring criterion selection model learned based on past history information that acquired user interaction-based semantic index information.
[0186] Additionally, according to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can search for at least one node corresponding to at least one system monitoring criterion used to determine the user's interest in a system log knowledge graph in which the sub-period information corresponding to the sub-period information is a root node and the result of aggregating system log data collected within the period according to the sub-period information by system monitoring criterion is each node connected to the root node, when the period information to determine the user's interest is composed of a combination of sub-period information of a predefined time range, and based on the at least one node found, determine semantic index information corresponding to the sub-period information. Additionally, by executing one or more instructions by at least one processor (120), the user device (100) can search for at least one contact node based on user interaction-based semantic index information corresponding to the sub-period information in at least one user log knowledge graph.
[0187] In addition, according to one embodiment of the present disclosure, a system log knowledge graph corresponding to sub-period information may be a hierarchical structure created by having upper sub-period information, which is a time range summing the periods of lower sub-period information, as a root node, and each node connected to the root node of the upper sub-period information, which is a result of integrating system log data collected within the period according to the lower sub-period information and aggregating it by system monitoring criteria.
[0188] Additionally, according to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can obtain user interaction-based semantic index information in a system log knowledge graph corresponding to lower sub-period information based on at least one system monitoring criterion and user interaction-based semantic index information used to determine user interest in a system log knowledge graph corresponding to upper sub-period information, from the top layer to the bottom layer of a system log knowledge graph corresponding to sub-period information which is a hierarchical structure. Additionally, by executing one or more instructions by at least one processor (120), the user device (100) can search for at least one contact node in at least one user log knowledge graph generated for a predetermined unit time based on user interaction-based semantic index information corresponding to the sub-period information of the bottom layer of the same predetermined unit time.
[0189] Additionally, according to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can determine the similarity between semantic index information obtained from a system log knowledge graph corresponding to lower sub-period information and semantic index information obtained from a system log knowledge graph corresponding to upper sub-period information. Additionally, by executing one or more instructions by at least one processor (120), the user device (100) can process the semantic index information obtained from the system log knowledge graph corresponding to lower sub-period information as valid if the similarity satisfies a predetermined criterion, and process the semantic index information corresponding to lower sub-period information as invalid if the similarity does not satisfy a predetermined criterion, and stop searching the system log knowledge graph to the lower layer.
[0190] Additionally, according to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can obtain an interest knowledge graph by merging an application information, which is user interaction-based semantic index information corresponding to the sub-period information of the lowest layer of a predetermined unit time, and a user log knowledge graph including a contact node having the same application information as the application information, which is user interaction-based semantic index information, with the sub-period information of the lowest layer of a predetermined unit time as the root node, based on the sub-period information of the lowest layer of a predetermined unit time. Additionally, by executing one or more instructions by at least one processor (120), the user device (100) can obtain the user's interest based on at least one node satisfying a predetermined condition in the interest knowledge graph.
[0191] Additionally, according to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can generate a node representing activity information inferred as the state of the user within a predetermined unit time based on the nodes of the merged system log knowledge graph and the user log knowledge graph, and add it to the interest knowledge graph.
[0192] Additionally, according to one embodiment of the present disclosure, by executing one or more instructions by at least one processor (120), the user device (100) can acquire an object of at least one node as a user's interest by applying a weight based on validity within a period and a correlation with other nodes according to period information for determining the user's interest for each node in at least one user log knowledge graph.
[0193] The foregoing description of the present disclosure is for illustrative purposes only, and those skilled in the art will understand that other specific forms can be easily modified without altering the technical spirit or essential features of the present disclosure. Therefore, the embodiments described above should be understood as illustrative in all respects and not restrictive. For example, each component described as a single unit may be implemented in a distributed manner, and components described as distributed may likewise be implemented in a combined form.
[0194] The scope of the present disclosure is defined by the claims set forth below rather than by the detailed description above, and all modifications or variations derived from the meaning and scope of the claims and equivalent concepts thereof should be interpreted as being included within the scope of the present disclosure.
Claims
1. A step of obtaining period information to determine user-related interests from a query (S1010); A step (S1020) of obtaining user interaction-based semantic index information from at least one system log knowledge graph corresponding to the above period information—each system log knowledge graph includes the result of aggregating system log data according to system monitoring criteria as a respective node—; In at least one user log knowledge graph corresponding to the above period information—each of the at least one user log knowledge graph includes entities associated with activity information related to a user based on user log data as respective nodes, and includes expressions representing relationships between said entities—a step of searching for at least one contact node based on the user interaction-based semantic index information (S1030); and A step (S1040) of obtaining interests related to the user corresponding to the period information based on at least one node satisfying a predetermined condition in a user log knowledge graph including at least one contact node; A method for inferring user-related interests, performed by at least one processor including 2. In Paragraph 1, The step (S1020) of obtaining the above user interaction-based semantic index information is, A method for obtaining user interaction-based semantic index information based on at least one node corresponding to at least one system monitoring criterion used to determine interest according to a predetermined rule in at least one system log knowledge graph.
3. In Paragraph 1 or 2, The step (S1020) of obtaining the above user interaction-based semantic index information is, A method for obtaining user interaction-based semantic index information based on at least one node corresponding to at least one system monitoring criterion used to determine interest according to the content of the query, using a system monitoring criterion selection model learned based on past history information.
4. In any one of paragraphs 1 to 3, The step of obtaining the above semantic index information (S1020) is, Based on the above period information including a combination of sub-period information of a predefined time range, A step of determining at least one node corresponding to at least one system monitoring criterion used to determine interest, in a system log knowledge graph in which the sub-period information corresponding to the sub-period information is the root node and the result of aggregating system log data collected within the period according to the sub-period information by system monitoring criterion is each node connected to the root node; and Based on the at least one node corresponding to the at least one system monitoring standard, the method includes the step of determining user interaction-based semantic index information corresponding to the sub-period information. The step (S1030) of searching for at least one contact node is, A method for searching for at least one contact node based on user interaction-based semantic index information corresponding to the sub-period information in at least one user log knowledge graph.
5. In any one of paragraphs 1 through 4, The system log knowledge graph corresponding to the above sub-period information is, A method comprising a hierarchical structure created by using upper sub-period information of a time range combining the periods of lower sub-period information as a root node, integrating system log data collected within the period according to the lower sub-period information, and using each node connected to the root node of the upper sub-period information as a result aggregated according to the system monitoring criteria, and connecting the root node of the upper sub-period information to the root node of the lower sub-period information.
6. In any one of paragraphs 1 through 5, The step (S1020) of obtaining the above user interaction-based semantic index information is, Based on at least one system monitoring criterion and semantic index information used to determine the interest in the system log knowledge graph corresponding to the upper sub-period information, from the uppermost layer to the lowermost layer of the system log knowledge graph corresponding to the above sub-period information, the user interaction-based semantic index information in the system log knowledge graph corresponding to the lower sub-period information is obtained, and The step (S1030) of searching for at least one contact node is, A method for searching for at least one contact node based on semantic index information corresponding to sub-period information of the lowest layer of the predetermined unit time in at least one user log knowledge graph generated for each predetermined unit time.
7. In any one of paragraphs 1 through 6, The method further includes the step of obtaining an interest knowledge graph by merging an application information, which is semantic index information corresponding to the sub-period information of the lowest layer of the predetermined unit time, and a user log knowledge graph including a system log knowledge graph in which the sub-period information of the lowest layer of the predetermined unit time is the root node, and the contact node having the same application information as the application information, based on the sub-period information of the lowest layer of the predetermined unit time. The step of acquiring the interests of the above user (S1040) is, A method for obtaining the interest based on at least one node satisfying the above predetermined condition in the above interest knowledge graph.
8. In any one of paragraphs 1 through 7, The above interest knowledge graph is, A method further comprising a node representing activity information inferred as the state of the user within a predetermined unit time, based on the nodes of a graph obtained by merging the system log knowledge graph and the user log knowledge graph.
9. In any one of paragraphs 1 through 8, The step of acquiring the above interest (S1040) is, A method for acquiring an object of at least one node as an interest by applying weights based on validity within a period and correlation with other nodes according to period information for determining the interest of the user for each node in the at least one user log knowledge graph.
10. A computer-readable recording medium having a program recorded thereon for executing the method of any one of paragraphs 1 through 9.
11. Memory (110) comprising one or more storage media for storing instructions; and It includes at least one processor (120) including a processing circuit, and By executing one or more instructions individually or collectively by the above-mentioned at least one processor (120), the user device (100) is enabled, Obtain period information from the query to determine user-related interests, and From at least one system log knowledge graph corresponding to the above period information—each system log knowledge graph includes the result of aggregating system log data according to system monitoring criteria as a respective node—user interaction-based semantic index information is obtained, and In at least one user log knowledge graph corresponding to the above period information—each of the at least one user log knowledge graph includes entities associated with activity information related to a user based on user log data as respective nodes, and includes expressions representing relationships between said entities—at least one contact node is searched based on the user interaction-based semantic index information, A user device (100) for inferring interests related to a user, which obtains interests related to the user corresponding to period information based on at least one node satisfying a predetermined condition in a user log knowledge graph including at least one contact node.
12. In Paragraph 11, By executing one or more instructions individually or collectively by the above-mentioned at least one processor (120), the user device (100) is enabled, A user device (100) that obtains user interaction-based semantic index information based on at least one node corresponding to at least one system monitoring criterion used to determine interest according to a predetermined rule in at least one system log knowledge graph.
13. In Article 11 or Article 12, By executing one or more instructions individually or collectively by the above-mentioned at least one processor (120), the user device (100) is enabled, A user device (100) that obtains user interaction-based semantic index information based on at least one node corresponding to at least one system monitoring criterion used to determine interest according to the content of the query, using a system monitoring criterion selection model learned based on past history information.
14. In any one of paragraphs 11 through 13, By executing one or more instructions individually or collectively by the above-mentioned at least one processor (120), the user device (100) is enabled, Based on the above period information including a combination of sub-period information of a predefined time range, In a system log knowledge graph in which the sub-period information corresponding to the sub-period information is the root node and the result of aggregating system log data collected within the period according to the sub-period information according to the system monitoring criteria is each node connected to the root node, at least one node corresponding to at least one system monitoring criterion used to determine the interest is determined, and based on the at least one node corresponding to the at least one system monitoring criterion, user interaction-based semantic index information corresponding to the sub-period information is determined. A user device (100) that searches for at least one contact node based on user interaction-based semantic index information corresponding to the sub-period information in the above at least one user log knowledge graph.
15. In any one of paragraphs 11 through 14, By executing one or more instructions individually or collectively by the above-mentioned at least one processor (120), the user device (100) is enabled, A user device (100) that acquires an object of at least one node as an interest by applying weights based on validity within a period and correlation with other nodes according to period information for determining the interest of the user for each node in the above at least one user log knowledge graph.