Program, keyword detection method, and keyword detection device
The described program and device enhance the detection of important relationship aspects among multiple persons by utilizing input history to specify keywords within knowledge information, addressing the limitations of existing techniques in capturing relationship importance.
Patent Information
- Application Number
- JP2023204978
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-12-04
- Publication Date
- 2025-06-16
AI Technical Summary
Existing techniques for representing relationships between multiple persons in social networking services do not effectively capture the importance of relationships beyond the number of users involved.
A program and device that acquire knowledge information comprising message transmission and reception entities along with phrases, and use input history from a target terminal to specify keywords and detect relevant knowledge tuples within the knowledge information.
This approach enables the detection of important parts in relationships among multiple persons by identifying keywords within message phrases, thereby providing a more nuanced understanding of relationship importance.
Smart Images

Figure 2025089967000001_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a program, a keyword detection method, and a keyword detection device.
Background Art
[0002] Techniques for generating information representing the relationships of multiple persons have been developed. For example, Patent Document 1 discloses a technique for dividing users of a social networking service (SNS) into a plurality of small groups and representing the relationships between the small groups with a directed graph. In this directed graph, the small groups are represented by nodes. Also, the relationship between a follower and a followee between small groups is represented by an arrow.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In the graph of Patent Document 1, the thickness of the arrow representing between small groups is represented by the number of users. However, the element representing the importance of the relationship is not always the number of users. The present disclosure has been made in view of this problem, and one of its purposes is to provide a new technique for detecting important parts from the relationships of multiple persons.
Means for Solving the Problems
[0005] The program of the present disclosure causes a computer to execute an acquisition step of acquiring knowledge information including a plurality of knowledge tuples each being a combination of a message transmission entity, a message reception entity, and a phrase in the message, and an input history of character strings in a target terminal, a specification step of specifying a keyword from the character strings input in the target terminal using the input history, and a detection step of detecting, from the knowledge information, the knowledge tuple in which the specified keyword is included in the phrase.
[0006] The keyword detection method of the present disclosure is executed by a computer. The knowledge information generation method includes an acquisition step of acquiring knowledge information including a plurality of knowledge tuples each being a combination of a message transmission entity, a message reception entity, and a phrase in the message, and an input history of character strings in a target terminal, a specification step of specifying a keyword from the character strings input in the target terminal using the input history, and a detection step of detecting, from the knowledge information, the knowledge tuple in which the specified keyword is included in the phrase.
[0007] The keyword detection device of the present disclosure includes an acquisition means for acquiring knowledge information including a plurality of knowledge tuples each being a combination of a message transmission entity, a message reception entity, and a phrase in the message, and an input history of character strings in a target terminal, a specification means for specifying a keyword from the character strings input in the target terminal using the input history, and a detection means for detecting, from the knowledge information, the knowledge tuple in which the specified keyword is included in the phrase.
Effect of the Invention
[0008] According to the present disclosure, a new technique for detecting important parts from the relationships of a plurality of persons is provided.
Brief Description of the Drawings
[0009]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Mode for Carrying Out the Invention
[0010] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings. In each drawing, the same or corresponding elements are denoted by the same reference numerals, and redundant descriptions are omitted as necessary for clarity of explanation. Also, unless otherwise specified, predetermined values such as predetermined values and threshold values are stored in advance in a storage device accessible from the device that uses the values. Further, unless otherwise specified, the storage unit is composed of one or more arbitrary numbers of storage devices.
[0011] <Overview> The keyword detection device 2000 detects a phrase containing a keyword from the knowledge information. FIG. 1 is a diagram illustrating the knowledge information handled by the keyword detection device 2000. In the upper part of FIG. 1, the knowledge information 30 is illustrated in a table format.
[0012] The knowledge information 30 represents an overview of the exchange of messages among a plurality of persons or groups. Specifically, for each of the plurality of messages transmitted between entities, the knowledge information 30 indicates a combination of 1) a sending entity 32, 2) a receiving entity 34, and 3) a phrase 36. Here, each combination included in the knowledge information 30 is also called a knowledge tuple. In the knowledge information 30 of FIG. 1, the knowledge tuple is represented by one record. It can also be said that the knowledge information 30 is a set of knowledge tuples.
[0013] An entity is a subject or an object in the transmission of a message. The sending entity 32 is the subject in the transmission of a message (i.e., the source of the message). The receiving entity 34 is the object in the transmission of a message (i.e., the destination of the message). An entity may be a single person or a group composed of a plurality of persons.
[0014] The phrase 36 is composed of one or more words included in the message and represents a part or all of the message. For example, the phrase 36 is a predicate included in the message.
[0015] For example, assume that a message "Please receive the luggage." is sent from person A to person B. Also assume that the predicate included in the message is treated as the phrase 36. In this case, for the above message, a knowledge tuple (sending entity 32: person A, receiving entity 34: person B, phrase 36: Please) is generated.
[0016] Note that the phrase 36 only needs to be composed of one or more words included in the message and is not limited to a predicate.
[0017] The data included in the knowledge tuple is not limited to only the transmission entity 32, the reception entity 34, and the phrase 36. For example, the knowledge tuple may further indicate the transmission and reception date and time of the message (transmission date and time or reception date and time).
[0018] The lower part of FIG. 1 shows a directed graph generated using the knowledge information 30. This directed graph is called a knowledge graph 40. In the knowledge graph 40, an entity is represented by a node 42.
[0019] One knowledge tuple is represented by two nodes 42 and an edge 44 connecting them. The node 42 located at the starting point of the edge 44 represents the transmission entity 32. The node 42 located at the end point of the edge 44 represents the reception entity 34. The edge 44 indicates the phrase 36.
[0020] Here, the knowledge graph 40 is an example of data that visually and clearly represents the content of the knowledge information 30. The keyword detection device 2000 only needs to generate the knowledge information 30 and does not necessarily need to generate the knowledge graph 40.
[0021] FIG. 2 is a diagram showing an overview of the keyword detection device 2000. The operation of the keyword detection device 2000 shown in FIG. 2 is an example for facilitating the understanding of the keyword detection device 2000. The operations that the keyword detection device 2000 can perform are not limited to those shown in FIG. 2.
[0022] The keyword detection device 2000 utilizes the input history of character strings in a specific terminal. The specific terminal is called the target terminal 10. The character string input history of the target terminal 10 shows each of the plurality of character strings input in the target terminal 10 in association with the input date and time.
[0023] The keyword detection device 2000 identifies keywords in the target terminal 10 from the character input history of the target terminal 10. Keywords in the target terminal 10 are strings that are presumed to be important among the strings input in the target terminal 10. For example, keywords in the target terminal 10 are identified based on the number of times each of a plurality of strings input in the target terminal 10 is input.
[0024] The keyword detection device 2000 detects, from the knowledge information 30, a knowledge tuple 50 in which the identified keyword is included in the phrase 36.
[0025] According to the keyword detection device 2000, a knowledge tuple 50 in which a keyword in the target terminal 10 is included in the phrase 36 can be detected from the knowledge information 30. Here, the knowledge information 30 represents the relationship of message exchanges between entities such as people and groups. Therefore, according to the keyword detection device 2000, it is possible to detect an important part in which a keyword in a specific terminal is included in a message regarding the relationship between people and groups.
[0026] Hereinafter, the keyword detection device 2000 of the present embodiment will be described in more detail.
[0027] <Example of functional configuration> FIG. 3 is a block diagram illustrating the functional configuration of the keyword detection device 2000. The keyword detection device 2000 includes an acquisition unit 2020, a specification unit 2040, and a detection unit 2060. The acquisition unit 2020 acquires the knowledge information 30 and the character input history 60. The specification unit 2040 specifies keywords in the target terminal 10 using the character input history 60. The detection unit 2060 detects, from the knowledge information 30, a knowledge tuple 50 in which the specified keyword is included in the phrase 36.
[0028] <Example of hardware configuration> Each functional component of the keyword detection device 2000 may be implemented by hardware (e.g., a hard-wired electronic circuit, etc.) that implements each functional component, or may be implemented by a combination of hardware and software (e.g., a combination of an electronic circuit and a program that controls it, etc.). Hereinafter, the case where each functional component of the keyword detection device 2000 is implemented by a combination of hardware and software will be further described.
[0029] FIG. 4 is a block diagram illustrating the hardware configuration of a computer 1000 that realizes the keyword detection device 2000. The computer 1000 is an arbitrary computer. For example, the computer 1000 is a stationary computer such as a PC (Personal Computer) or a server machine. In addition, for example, the computer 1000 is a portable computer such as a smartphone or a tablet terminal. The computer 1000 may be a dedicated computer designed to realize the keyword detection device 2000, or may be a general-purpose computer.
[0030] For example, by installing a predetermined application on the computer 1000, each function of the keyword detection device 2000 is realized on the computer 1000. The above application is composed of programs for realizing each functional component of the keyword detection device 2000. Note that the method for obtaining the above program is arbitrary. For example, the program can be obtained from a storage medium in which the program is stored. The storage medium in which the program is stored is an arbitrary storage medium such as a DVD (Digital Versatile Disk) or a USB (Universal Serial Bus) memory. In addition, for example, the program can be obtained by downloading the program from a server device that manages the storage device in which the program is stored.
[0031] Computer 1000 has a bus 1020, a processor 1040, a memory 1060, a storage device 1080, an input / output interface 1100, and a network interface 1120. The bus 1020 is a data transmission path for the processor 1040, the memory 1060, the storage device 1080, the input / output interface 1100, and the network interface 1120 to transmit and receive data from each other. However, the method of connecting the processor 1040 and the like to each other is not limited to bus connection.
[0032] The processor 1040 is various processors such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), or an FPGA (Field-Programmable Gate Array). The memory 1060 is a main storage device realized using a RAM (Random Access Memory) or the like. The storage device 1080 is an auxiliary storage device realized using a hard disk, an SSD (Solid State Drive), a memory card, or a ROM (Read Only Memory) or the like.
[0033] The input / output interface 1100 is an interface for connecting the computer 1000 and an input / output device. For example, an input device such as a keyboard and an output device such as a display device are connected to the input / output interface 1100.
[0034] The network interface 1120 is an interface for connecting the computer 1000 to a network. This network may be a LAN (Local Area Network) or a WAN (Wide Area Network).
[0035] The storage device 1080 stores a program (a program that realizes the aforementioned application) for realizing each functional component of the keyword detection device 2000. The processor 1040 reads this program into the memory 1060 and executes it, thereby realizing each functional component of the keyword detection device 2000.
[0036] The keyword detection device 2000 may be realized by one computer 1000 or may be realized by a plurality of computers 1000. In the latter case, the configurations of the respective computers 1000 do not have to be the same and can be different from each other.
[0037] <Regarding the target terminal 10> The target terminal 10 is an arbitrary computer. For example, the target terminal 10 is a portable computer such as a smartphone, a tablet terminal, or a notebook PC. In addition, for example, the target terminal 10 is a stationary computer such as a desktop PC.
[0038] <Processing flow> FIG. 5 is a flowchart illustrating the processing flow executed by the keyword detection device 2000. The acquisition unit 2020 acquires the knowledge information 30 (S102). The acquisition unit 2020 acquires the character string input history 60 (S104). The specifying unit 2040 specifies the keyword in the target terminal 10 using the character string input history 60 (S106). The detection unit 2060 detects the knowledge tuple 50 in which the keyword is included in the phrase 36 from the knowledge information 30 (S108).
[0039] The processing flow executed by the keyword detection device 2000 is not limited to the flow shown in FIG. 5. For example, the acquisition of the knowledge information 30 may be performed before the knowledge information 30 is used by the detection unit 2060. Therefore, the acquisition of the knowledge information 30 may be performed after the acquisition of the character string input history 60 (S104) or the specification of the keyword (S106).
[0040] <Acquisition of Knowledge Information 30: S102> The acquisition unit 2020 acquires the knowledge information 30 (S102). There are various methods for the acquisition unit 2020 to acquire the knowledge information 30. For example, the knowledge information 30 is stored in advance in an external storage unit such as a memory card. Here, the external storage unit means a storage unit other than the storage unit built into the keyword detection device 2000. In this case, the user of the keyword detection device 2000 connects the external storage unit to the keyword detection device 2000. The acquisition unit 2020 acquires the knowledge information 30 from the connected external storage unit. Here, the method for acquiring predetermined data from the external storage unit is arbitrary.
[0041] In addition, for example, the knowledge information 30 may be stored in advance in the internal storage unit of the keyword detection device 2000. In this case, the acquisition unit 2020 acquires the knowledge information 30 by reading out the knowledge information 30 from the internal storage unit.
[0042] In addition, for example, the knowledge information 30 may be transmitted from a device other than the keyword detection device 2000 (for example, the device that generated the knowledge information 30) to the keyword detection device 2000. In this case, the acquisition unit 2020 acquires the knowledge information 30 by receiving the knowledge information 30 transmitted from another device.
[0043] <Acquisition of Character Input History 60: S104> The acquisition unit 2020 acquires the character input history 60 (S104). The method for the acquisition unit 2020 to acquire the character input history 60 is the same as the method for the acquisition unit 2020 to acquire the knowledge information 30. When the character input history 60 is transmitted from a device other than the keyword detection device 2000 to the keyword detection device 2000, the device that transmits the character input history 60 is, for example, the target terminal 10.
[0044] As described above, the character string input history 60 indicates the history of character string input on the target terminal 10. FIG. 6 is a first diagram illustrating the configuration of the character string input history 60. In FIG. 6, the character string input history 60 shows the input date and time 62 and the input character string 64 in association with each other. The input date and time 62 indicates the date and time when the character string was input. The input character string 64 indicates the input character string.
[0045] Here, on the terminal, in response to the input of a character string, one or more candidates for the next character string to be input may be displayed. The user can input the selected character string to the terminal by selecting one of the displayed candidates.
[0046] Such a function can be realized, for example, by associating two continuously input character strings with each other and recording them in the history. Therefore, the character string input history 60 may show two such continuously input character strings in association with each other.
[0047] FIG. 7 is a second diagram illustrating the configuration of the character string input history 60. The character string input history 60 in FIG. 7 further shows a subsequent character string 66 in addition to the information shown in the character string input history 60 in FIG. 6. The subsequent character string 66 indicates the character string input after the character string shown in the input character string 64.
[0048] The character string input history 60 is managed, for example, by character input software or an operating system (OS) installed on the target terminal 10. For example, the character string input history 60 is output in a format such as a text file by operating the character input software or the like. The acquisition unit 2020 can acquire the character string input history 60 output in this way by various methods described above.
[0049] <Keyword identification: S106> The specific part 2040 identifies the keyword in the target terminal 10 by using the character input history 60 (S106). For example, the specific part 2040 refers to the input character string 64 of each record in the character input history 60 and calculates the input count (the number of occurrences in the character input history 60) of each character string. For example, assume that there are 10 records in the character input history 60 where the input character string 64 is "thank you". In this case, the input count of the character string "thank you" is 10.
[0050] The specific part 2040 identifies the keyword based on the input count of each character string. For example, the specific part 2040 sorts the character strings input to the target terminal 10 in descending order of the input count. Then, the specific part 2040 identifies the character strings ranked above the threshold among the sorted character strings as keywords. For example, when the predetermined value is 3, the character string with the largest input count, the character string with the second largest input count, and the character string with the third largest input count are respectively identified as keywords.
[0051] The input count of the character string may be calculated using all the information shown in the character input history 60, or may be calculated using some of the information shown in the character input history 60. In the latter case, for example, the specific part 2040 calculates the input count of the character string only for the input of the character string during a specific period. Specifically, the specific part 2040 refers to only the records in the character input history 60 whose input date and time 62 are included in the specific period and calculates the input count of the character string.
[0052] By calculating the input count only for the input of the character string during a specific period in this way, important character strings in the messages input during the specific period can be identified more accurately.
[0053] For example, as a specific period, the period for which the knowledge information 30 is targeted can be set. More specifically, assume that the knowledge information 30 is generated from the history of messages exchanged during the period P1 of a specific event. In this case, the specifying unit 2040 specifies keywords based on the number of input times of each character string during this period P1. Thereby, important keywords related to the event can be specified more accurately.
[0054] <<Concatenation of character strings>> A character string forming one meaning may be input divided into a plurality of character strings. For example, a case where a character string "please" is input divided into two, "please" and "do". In this case, it is more suitable for the specifying unit 2040 to handle "please" as one character string rather than handling "please" and "do" as separate character strings.
[0055] Therefore, the specifying unit 2040 may concatenate character strings that are divided into two or more in the character string input history 60 into one character string, and handle the character string obtained by the concatenation as a keyword candidate. For example, the specifying unit 2040 generates a permutation C of character strings to be handled as keyword candidates from a permutation W of character strings obtained from each record of the character string input history 60. Hereinafter, the permutation W is also called a source string. Also, the permutation C is also called a candidate string. When keyword specification is performed only on character strings input during a specific period, the source string includes only the character strings input during the specific period.
[0056] FIG. 8 is a flowchart illustrating the flow of processing for generating a candidate string from a source string. The source string is represented by W = (W[1], W[2],..., W[N]). The candidate string is C = (C[1], C[2],...).
[0057] The specific part 2040 initializes variables i and j used in the processing (S202). i represents the position of the character string in the source string currently being processed. j represents the position of the character string in the candidate string currently being processed. Note that W[i] represents the i-th character string in the source string. Also, C[j] represents the j-th character string in the candidate string.
[0058] The specific part 2040 substitutes W[N] for C[1] (S204). That is, the newest character string in the character string input history 60 is set to C[1]. However, through the processing described later, concatenations such as W[N - 1] are attempted for C[1].
[0059] From S206 to S218 constitute the loop process L1. The loop process L1 is repeatedly executed while i > 1 is satisfied.
[0060] In S206, the specific part 2040 determines whether i > 1 is satisfied. If i > 1 is not satisfied, the specific part 2040 ends the execution of the loop process L1.
[0061] When i > 1 is satisfied, the specific part 2040 determines whether the character string W[i - 1]+C[j] obtained by concatenating W[i - 1] before C[j] is a character string that can be treated as a word (S208). If W[i - 1]+C[j] is a character string that can be treated as a word, the specific part 2040 sets W[i - 1]+C[j] to C[j] (S210). That is, C[j] is replaced with W[i - 1]+C[j]. Thereby, the concatenation of character strings is performed.
[0062] When W[i - 1]+C[j] is not a character string that can be treated as a word, the specific part 2040 sets W[i - 1] to C[j + 1] (S212). Thereby, W[i - 1] is included in the next character string C[j + 1] of the candidate string without being concatenated with C[j]. Thereafter, the specific part 2040 adds 1 to j (S214).
[0063] After the execution of S210 or S212, the specific part 2040 decrements i by 1. Since S218 is the end of the loop process L1, the specific part 2040 then executes S206 again.
[0064] After the loop process L1 is completed, the specific part 2040 calculates the input times for each character string included in the candidate sequence C.
[0065] <Identification of phrase 36 containing keyword: S108> The detection unit 2060 detects a knowledge tuple 50 in which the keyword is included in the phrase 36 from the knowledge information 30 (S108). For example, the detection unit 2060 determines whether the keyword is included in the phrase 36 for all the knowledge tuples 50 included in the knowledge information 30, thereby detecting the knowledge tuple 50 in which the keyword is included in the phrase 36.
[0066] The detection unit 2060 may detect the knowledge tuple 50 in which the keyword is included in the phrase 36 only from the knowledge tuples 50 among the knowledge tuples 50 included in the knowledge information 30 that satisfy a specific condition. The specific condition is, for example, the condition that "the transmission entity 32 is the user of the target terminal 10". The knowledge tuple 50 that satisfies this condition is the knowledge tuple 50 generated based on the message transmitted from the target terminal 10.
[0067] As described above, the keyword in the target terminal 10 is specified from the history of character string input in the target terminal 10. Therefore, it can be said that the keyword in the target terminal 10 is an important word among the words uttered by the user of the target terminal 10. Therefore, by detecting only the knowledge tuple 50 in which the transmission entity 32 is the user of the target terminal 10, it is possible to detect a particularly important message from the messages uttered by the user of the target terminal 10.
[0068] <Emphasis processing of knowledge graph 40> The keyword detection device 2000 may perform an enhancement process on the knowledge graph 40 by using the result of detection by the detection unit 2060. The functional component that performs the enhancement process on the knowledge graph 40 is called the enhancement processing unit. FIG. 9 is a block diagram illustrating the functional configuration of the keyword detection device 2000 including the enhancement processing unit. The enhancement processing unit 2080 performs an enhancement process so that a portion representing the knowledge tuple 50 including the keyword in the phrase 36 in the knowledge graph 40 is enhanced more than other portions.
[0069] By emphasizing a portion representing the knowledge tuple 50 including the keyword in the phrase 36 in the knowledge graph 40, there is an advantage that an important portion including the keyword can be easily grasped from the knowledge graph 40.
[0070] Here, there are various methods for emphasizing a part of the graph. For example, the enhancement processing unit 2080 makes the mode of the edge 44 corresponding to the knowledge tuple 50 including the keyword in the phrase 36 different from the mode of the edge 44 corresponding to the knowledge tuple 50 not including the keyword in the phrase 36. Examples of the mode of the edge 44 include, for example, the thickness of the line, the type of the line, or the color of the line.
[0071] For example, the enhancement processing unit 2080 makes the edge 44 corresponding to the knowledge tuple 50 including the keyword in the phrase 36 thicker than the edge 44 corresponding to the knowledge tuple 50 not including the keyword in the phrase 36.
[0072] In addition, for example, the enhancement processing unit 2080 makes the type of the line of the edge 44 corresponding to the knowledge tuple 50 including the keyword in the phrase 36 different from the type of the line of the edge 44 corresponding to the knowledge tuple 50 not including the keyword in the phrase 36. For example, the enhancement processing unit 2080 makes the former a relatively prominent line type such as a solid line, and the latter a relatively inconspicuous line type such as a dotted line.
[0073] For example, in addition, the emphasis processing unit 2080 changes the color of the edge 44 corresponding to the knowledge tuple 50 in which the keyword is included in the phrase 36 to a color different from the color of the edge 44 corresponding to the knowledge tuple 50 in which the keyword is not included in the phrase 36. For example, the emphasis processing unit 2080 makes the former a relatively conspicuous color such as red or yellow, and the latter a less conspicuous color such as black.
[0074] Also, when animation can be used for the display of the knowledge graph 40, animation may be used as the display mode of the edge 44. For example, the emphasis processing unit 2080 blinks the edge 44 corresponding to the knowledge tuple 50 in which the keyword is included in the phrase 36, while not blinking the edge 44 corresponding to the knowledge tuple 50 in which the keyword is not included in the phrase 36.
[0075] FIG. 10 is a diagram illustrating the highlighted display in the knowledge graph 40. The method of emphasis processing in FIG. 10 is the method of thickening the edge.
[0076] In the example of FIG. 10, it is assumed that three phrases 36, namely P3, P9, and P12, contain keywords. Therefore, three knowledge tuples 50, namely (E1, E2, P3), (E1, E3, P9), and (E1, E4, P12), are detected as the knowledge tuples 50 in which the keyword is included in the phrase 36. Therefore, the edges representing P3, the edge representing P9, and the edge representing P12 are all displayed thicker than the other edges.
[0077] The method of emphasizing the knowledge tuple 50 is not limited to the method based on the display mode of the edge 44. For example, the emphasis processing unit 2080 may emphasize the knowledge tuple 50 based on the display mode of the phrase. As the display mode of the phrase, for example, the thickness or color of the characters representing the phrase can be used.
[0078] For example, the emphasis processing unit 2080 makes the font weight of the characters of the phrase in edge 44 corresponding to the knowledge tuple 50 in which the keyword is included in phrase 36 thicker than the font weight of the characters of the phrase in edge 44 corresponding to the knowledge tuple 50 in which the keyword is not included in phrase 36. Additionally, for example, the emphasis processing unit 2080 makes the color of the characters of the phrase in edge 44 corresponding to the knowledge tuple 50 in which the keyword is included in phrase 36 different from the color of the characters of the phrase in edge 44 corresponding to the knowledge tuple 50 in which the keyword is not included in phrase 36. Further, the emphasis processing unit 2080 blinks the characters of the phrase in edge 44 corresponding to the knowledge tuple 50 in which the keyword is included in phrase 36.
[0079] Here, the process of generating the knowledge graph 40 from the knowledge information 30 may be performed by the keyword detection device 2000, or may be performed by a device other than the keyword detection device 2000. In the latter case, the keyword detection device 2000 acquires the data representing the knowledge graph 40 and performs a process of performing the above-described emphasis processing on the acquired data.
[0080] The keyword detection device 2000 outputs the knowledge graph 40 subjected to the emphasis processing. For example, the knowledge graph 40 is output as an image file or screen data.
[0081] The keyword detection device 2000 may perform keyword identification and identification of the knowledge tuple 50 in which the keyword is included in the phrase 36 for each of the plurality of terminals by treating each of the plurality of terminals as the target terminal 10. In this case, for example, it is preferable that the emphasis processing unit 2080 makes the edge 44 to be emphasized and the display mode of the characters different for each terminal. By making the edge 44 to be emphasized and the display mode of the characters different for each terminal, important parts in the knowledge graph 40 can be easily grasped by distinguishing them for each terminal.
[0082] As a method of varying the display mode of the edges 44 and characters for each terminal, for example, there is a method of changing the color of the lines and characters for each terminal. For example, for the knowledge tuple 50 in which the keyword in the first terminal is included in the phrase 36, the emphasis processing unit 2080 sets the color of the edge 44 to red, and for the knowledge tuple 50 in which the keyword in the second terminal is included in the phrase 36, the color of the edge 44 is set to blue. For the knowledge tuple 50 that does not include any keyword in the phrase 36, a process of setting the color of the edge 44 to black is performed.
[0083] As described above, the present disclosure has been described with reference to the embodiments, but the present disclosure is not limited to the above-described embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present disclosure. And each embodiment can be combined with other embodiments as appropriate.
[0084] Each drawing is merely an example for explaining one or more embodiments. Each drawing is not associated with only one specific embodiment, but may be associated with one or more other embodiments. As can be understood by those skilled in the art, various features or steps described with reference to any one drawing can be combined with the features or steps shown in one or more other drawings to create, for example, embodiments not explicitly illustrated or described. Not all of the features or steps shown in any one drawing for explaining exemplary embodiments are necessarily essential, and some features or steps may be omitted. The order of the steps described in any drawing may be changed as appropriate.
[0085] In the present disclosure, a program includes a set of instructions (or software code) for causing a computer to perform one or more functions described in the embodiments when the program is loaded into the computer. The program may be stored in a non-transitory computer-readable medium or a tangible storage medium. By way of example and not limitation, the computer-readable medium or tangible storage medium includes random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drive (SSD), or other memory technologies, CD-ROM, digital versatile disc (DVD), Blu-ray (registered trademark) disc, or other optical disc storage, magnetic cassette, magnetic tape, magnetic disk storage, or other magnetic storage devices. The program may be transmitted on a transient computer-readable medium or a communication medium. By way of example and not limitation, the transient computer-readable medium or communication medium includes electrical, optical, acoustic, or other forms of propagated signals.
[0086] Some or all of the above embodiments may be described as follows, but are not limited thereto. (Appendix 1) An acquisition step of acquiring knowledge information including a plurality of knowledge tuples, which are combinations of a message transmission entity, a message reception entity, and phrases in the message, and an input history of character strings in a target terminal; A specifying step of specifying a keyword from among the character strings input in the target terminal using the input history; A detection step of detecting, from the knowledge information, the knowledge tuple in which the specified keyword is included in the phrase, and a program for causing a computer to execute the steps. (Appendix 2) The program according to Appendix 1, wherein in the specifying step, the number of times each character string shown in the input history is input is calculated, and the keyword is specified based on the number of input times. (Appendix 3) The program according to Supplementary Note 2, wherein in the specific step, the character strings indicated in the input history are sorted in descending order of the number of inputs, and each character string having a rank within a predetermined rank is specified as the keyword. (Supplementary Note 4) The program according to any one of Supplementary Notes 1 to 3, wherein in the specific step, when the character string generated by concatenating a plurality of consecutive character strings in the input history in the order of input date and time is a character string that can be treated as one word, the character string generated by the concatenation is treated as one character string input at the target terminal. (Supplementary Note 5) The input history indicates the history of input of character strings performed on the target terminal during a specific period. The program according to any one of Supplementary Notes 1 to 3, wherein in the specific step, the keyword in the specific period is specified using the input history. (Supplementary Note 6) The program according to any one of Supplementary Notes 1 to 3, wherein in the detection step, the knowledge tuple in which the keyword is included in the phrase is detected from the knowledge tuples in which the transmission entity is the user of the target terminal. (Supplementary Note 7) The program according to any one of Supplementary Notes 1 to 3, wherein the computer is caused to execute an emphasizing process step of emphasizing a portion represented by the detected knowledge tuple with respect to a knowledge graph in which each knowledge tuple included in the knowledge information is represented by nodes and edges. (Supplementary Note 8) The program according to Supplementary Note 7, wherein in the emphasizing process step, a line representing an edge corresponding to the detected knowledge tuple is emphasized, or a character representing the phrase in the detected knowledge tuple is emphasized. (Supplementary Note 9) An acquisition step of acquiring knowledge information including a plurality of knowledge tuples which are combinations of a message transmission entity, a message reception entity, and a phrase in the message, and an input history of character strings at a target terminal. A specific step of identifying a keyword from the character strings input in the target terminal using the input history; A detection step of detecting, from the knowledge information, a knowledge tuple in which the identified keyword is included in the phrase, the keyword detection method being executed by a computer. (Appendix 10) The keyword detection method according to Appendix 9, wherein in the specific step, the number of times each character string shown in the input history is input is calculated, and the keyword is identified based on the number of times of input. (Appendix 11) The keyword detection method according to Appendix 10, wherein in the specific step, the character strings shown in the input history are sorted in descending order of the number of times of input, and each character string having a rank within a predetermined rank is identified as the keyword. (Appendix 12) The keyword detection method according to any one of Appendices 9 to 11, wherein in the specific step, when a character string generated by concatenating a plurality of consecutive character strings in the input history in the order of input date and time is a character string that can be treated as one word, the character string generated by the concatenation is treated as one character string input in the target terminal. (Appendix 13) The input history shows the history of input of character strings performed on the target terminal during a specific period, The keyword detection method according to any one of Appendices 9 to 11, wherein in the specific step, the keyword in the specific period is identified using the input history. (Appendix 14) The keyword detection method according to any one of Appendices 9 to 11, wherein in the detection step, a knowledge tuple in which the keyword is included in the phrase is detected from the knowledge tuples in which the sending entity is the user of the target terminal. (Appendix 15) The keyword detection method according to any one of Appendices 9 to 11, comprising an emphasizing process step of performing a process of emphasizing a portion represented by the detected knowledge tuple with respect to a knowledge graph in which each of the knowledge tuples included in the knowledge information is represented by nodes and edges. (Appendix 16) The keyword detection method according to Appendix 15, wherein in the emphasizing process step, a line representing an edge corresponding to the detected knowledge tuple is emphasized, or characters representing the phrase in the detected knowledge tuple are emphasized. (Appendix 17) An acquisition means for acquiring a knowledge information including a plurality of knowledge tuples which are combinations of a message transmission entity, a message reception entity, and a phrase in the message, and an input history of a character string in a target terminal; A specifying means for specifying a keyword from among character strings input in the target terminal using the input history; A keyword detection apparatus comprising a detection means for detecting, from the knowledge information, a knowledge tuple in which the specified keyword is included in the phrase. (Appendix 18) The keyword detection apparatus according to Appendix 17, wherein the specifying means calculates the number of times each character string shown in the input history is input, and specifies the keyword based on the number of times of input. (Appendix 19) The keyword detection apparatus according to Appendix 18, wherein the specifying means orders the character strings shown in the input history in descending order of the number of times of input, and specifies, as the keyword, each character string having a rank within a predetermined rank. (Appendix 20) The keyword detection apparatus according to any one of Appendices 17 to 19, wherein the specifying means, in the input history, treats, as one character string input in the target terminal, a character string generated by concatenating a plurality of consecutive character strings in the order of input date and time when the character string generated by the concatenation can be treated as one word. (Appendix 21) The input history indicates the history of input of character strings performed on the target terminal during a specific period, The specifying means is the keyword detection device according to any one of Appendices 17 to 19 that specifies keywords in the specific period using the input history. (Appendix 22) The detecting means is the keyword detection device according to any one of Appendices 17 to 19 that detects the knowledge tuple in which the keyword is included in the phrase from among the knowledge tuples in which the transmitting entity is the user of the target terminal. (Appendix 23) The keyword detection device according to any one of Appendices 17 to 19, having highlighting processing means for performing a process of highlighting a portion represented by the detected knowledge tuple with respect to a knowledge graph in which each of the knowledge tuples included in the knowledge information is represented by nodes and edges. (Appendix 24) The highlighting processing means is the keyword detection device according to Appendix 23 that highlights a line representing an edge corresponding to the detected knowledge tuple or highlights characters representing the phrase in the detected knowledge tuple.
Explanation of Signs
[0087] 10 Target terminal 30 Knowledge information 32 Transmitting entity 34 Receiving entity 36 Phrase 40 Knowledge graph 42 Node 44 Edge 50 Knowledge tuple 60 Character string input history 62 Input date and time 64 Input character string 66 Subsequent character string 1000 Computer 1000 Each computer 1020 Bus 1040 Processor 1060 Memory 1080 Storage device 1100 Input / output interface 1120 Network interface 2000 Keyword detection device 2020 Acquisition unit 2040 Identification unit 2060 Detection unit 2080 Emphasis processing unit
Claims
1. An acquisition step of acquiring knowledge information including a plurality of knowledge tuples each being a combination of a message transmission entity, a message reception entity, and a phrase in the message, and an input history of a character string in a target terminal; A specifying step of specifying a keyword from among the character strings input in the target terminal using the input history; A detection step of detecting, from the knowledge information, the knowledge tuple in which the specified keyword is included in the phrase, and a program for causing a computer to execute the steps.
2. The program according to claim 1, wherein in the specifying step, the number of times each character string shown in the input history is input is calculated, and the keyword is specified based on the number of times of input.
3. The program according to claim 2, wherein in the specifying step, the character strings shown in the input history are sorted in descending order of the number of times of input, and each character string having a rank within a predetermined rank is specified as the keyword.
4. The program according to any one of claims 1 to 3, wherein in the specifying step, when a character string generated by concatenating a plurality of consecutive character strings in the input history in the order of input date and time is a character string that can be treated as one word, the character string generated by the concatenation is treated as one character string input in the target terminal.
5. The input history shows an input history of character strings performed on the target terminal in a specific period, The program according to any one of claims 1 to 3, wherein in the specifying step, the keyword in the specific period is specified using the input history.
6. In the detection step, from among the knowledge tuples in which the transmitting entity is the user of the target terminal, the program according to any one of claims 1 to 3, which detects a knowledge tuple in which the keyword is included in the phrase.
7. Causing the computer to execute an emphasizing process step of performing a process of emphasizing a portion represented by the detected knowledge tuple with respect to a knowledge graph in which each of the knowledge tuples included in the knowledge information is represented by a node and an edge, the program according to any one of claims 1 to 3.
8. In the emphasizing process step, the program according to claim 7, which emphasizes a line representing an edge corresponding to the detected knowledge tuple, or emphasizes a character representing the phrase in the detected knowledge tuple.
9. An acquisition step of acquiring knowledge information including a plurality of knowledge tuples that are combinations of a message transmitting entity, a message receiving entity, and a phrase in the message, and an input history of a character string at a target terminal; A specifying step of specifying a keyword from among the character strings input at the target terminal using the input history; A keyword detection method executed by a computer, comprising: a detection step of detecting, from the knowledge information, a knowledge tuple in which the specified keyword is included in the phrase.
10. An acquisition means for acquiring knowledge information including a plurality of knowledge tuples that are combinations of a message transmitting entity, a message receiving entity, and a phrase in the message, and an input history of a character string at a target terminal; A specifying means for specifying a keyword from among the character strings input at the target terminal using the input history; A keyword detection device comprising: a detection means for detecting, from the knowledge information, a knowledge tuple in which the specified keyword is included in the phrase.
Citation Information
Patent Citations
Method and program for extracting small group from social network, and naming and visualizing the same
JP2013015973A