Information processing device, attribute information extraction method, and attribute information extraction program
The information processing device and method generate related strings and extract attribute information from target data using a language model, addressing the reliance on search queries by providing a solution for assigning attribute information without them.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- NEC CORP
- Filing Date
- 2022-12-26
- Publication Date
- 2026-07-29
AI Technical Summary
Conventional methods for assigning attribute information to data rely on search queries, which are often unavailable, making it difficult to obtain such information.
An information processing device and method that uses a language model to generate related strings from target strings and extract attribute information without requiring search queries, utilizing a related string generation unit and an attribute information extraction unit.
Enables the assignment of attribute information to target data without relying on search queries, allowing for the extraction of new and relevant information using a language model trained on word relationships.
Smart Images

Figure 0007896699000001 
Figure 0007896699000002 
Figure 0007896699000003
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing apparatus that assigns attribute information to target data and the like.
Background Art
[0002] Conventionally, a technique for automatically assigning attribute information indicating the attributes of data to be analyzed has been known. For example, in Patent Document 1 below, a first keyword corresponding to a predetermined target and a second keyword related to the nature of the target are extracted from a search query, and the extracted second keyword is provided as target demand information related to the demand of the target. According to this information processing apparatus, for example, when the ratio of search queries in which a second keyword such as "width" or "cargo bed area" is extracted is high among search queries in which the first keyword "car X" is extracted, information such as "width" and "cargo bed area" can be provided as target demand information related to the demand for "car X".
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] However, the above-described conventional technology is premised on the availability of search queries input by various users, and generally it is difficult to obtain such search queries. One aspect of the present invention aims to realize an information processing apparatus and the like that enables attribute information to be assigned to target data without using a search query or the like.
Means for Solving the Problems
[0005] An information processing device according to one aspect of the present invention includes a related string generation means that generates related strings related to a target string from a target string relating to target data to which attribute information is to be assigned, using a language model that has learned the relationships between words, and an attribute information extraction means that extracts the attribute information from the related string.
[0006] An attribute information extraction method according to one aspect of the present invention includes, using a language model that has learned the relationships between words, at least one processor generating related strings from a target string relating to target data to which attribute information is to be assigned, and extracting the attribute information from the related strings.
[0007] An attribute information extraction program according to one aspect of the present invention causes a computer to function as a related string generation means that generates related strings related to a target string relating to target data to which attribute information is to be assigned, using a language model that has learned the relationships between words, and an attribute information extraction means that extracts the attribute information from the related strings. [Effects of the Invention]
[0008] According to one aspect of the present invention, it becomes possible to assign attribute information to target data without using search queries or the like. [Brief explanation of the drawing]
[0009] [Figure 1] This is a block diagram showing the configuration of an information processing device according to an exemplary embodiment 1 of the present invention. [Figure 2] This is a flowchart showing the flow of the attribute information extraction method according to exemplary embodiment 1 of the present invention. [Figure 3] This figure shows an example of attribute information extraction using the attribute information extraction method according to Exemplary Embodiment 2 of the present invention. [Figure 4] This is a block diagram showing an example configuration of an information processing device according to Exemplary Embodiment 2 of the present invention. [Figure 5]This figure shows an example of a table from which related terms will be extracted. [Figure 6] This figure illustrates an example of extracting attribute information using a language model trained to output a string that fits the missing part of a sentence when a sentence with a missing portion is input. [Figure 7] This figure shows an example of extracting attribute information based on the frequency of word occurrences extracted from multiple related strings. [Figure 8] This is a flowchart showing the flow of the attribute information extraction method according to exemplary embodiment 2 of the present invention. [Figure 9] This figure shows an example of a computer that executes program instructions, which are software that realizes each function of each exemplary embodiment of the present invention. [Modes for carrying out the invention]
[0010] [Exemplary Embodiment 1] A first exemplary embodiment of the present invention will be described in detail with reference to the drawings. This exemplary embodiment is the basic form of the exemplary embodiments described later.
[0011] (Configuration of information processing device) The configuration of the information processing device 1 according to this exemplary embodiment will be described with reference to Figure 1. Figure 1 is a block diagram showing the configuration of the information processing device 1. As shown in Figure 1, the information processing device 1 includes an association string generation unit (association string generation means) 11 and an attribute information extraction unit (attribute information extraction means) 12.
[0012] The related string generation unit 11 uses a language model that has learned the relationships between words to generate related strings from target strings related to target data to which attribute information is to be assigned.
[0013] The attribute information extraction unit 12 extracts attribute information from the related strings generated by the related string generation unit 11.
[0014] As described above, the information processing apparatus 1 according to this exemplary embodiment includes a related string generation unit 11 that generates a related string related to the target string from the target string related to the target data to which attribute information is to be assigned, using a language model that has learned the relationships between words, and an attribute information extraction unit 12 that extracts attribute information from the related strings generated by the related string generation unit 11. Therefore, according to the information processing apparatus 1 according to this exemplary embodiment, the effect that it is possible to assign attribute information to the target data without using a search query or the like can be obtained.
[0015] (Attribute Information Extraction Program) The functions of the information processing apparatus 1 described above can also be realized by a program. The attribute information extraction program according to this exemplary embodiment causes a computer to function as a related string generation unit 11 that generates a related string related to the target string from the target string related to the target data to which attribute information is to be assigned, using a language model that has learned the relationships between words, and an attribute information extraction unit 12 that extracts attribute information from the related strings generated by the related string generation unit 11. Therefore, according to the attribute information extraction program according to this exemplary embodiment, the effect that it is possible to assign attribute information to the target data without using a search query or the like can be obtained.
[0016] (Flow of Attribute Information Extraction Method) The flow of the attribute information extraction method according to this exemplary embodiment will be described with reference to FIG. 2. FIG. 2 is a flowchart showing the flow of the attribute information extraction method. Note that the execution subject of each step described in FIG. 2 may be a processor included in the information processing apparatus 1, may be a processor included in another apparatus, or may be processors provided in different apparatuses for each step.
[0017] In S11, at least one processor generates a related string related to the target string from the target string related to the target data to which attribute information is to be assigned, using a language model that has learned the relationships between words.
[0018] In S12, at least one processor extracts attribute information from the associated string generated in S11.
[0019] Thus, in the attribute information extraction method according to this exemplary embodiment, at least one processor uses a language model that has learned the relationships between words to generate related strings from a target string relating to the target data to which attribute information is to be added, and extracts attribute information from the generated related strings. Therefore, according to the attribute information extraction method according to this exemplary embodiment, it is possible to add attribute information to the target data without using search queries or the like.
[0020] [Exemplary Embodiment 2] (Overview of attribute information extraction method) An overview of the attribute information extraction method according to this exemplary embodiment (hereinafter referred to as "this method") will be explained based on Figure 3. Figure 3 is a diagram showing an example of attribute information extraction using this method. Table T1 shown in Figure 3 is input data entered by the user. The record in Table T1 with a company ID of "c001" is the target data designated as the target to which attribute information will be assigned. The target data may be the entire record or one of the data contained in the record. Furthermore, it is also possible to use data in any format other than table format as target data.
[0021] From table T1, we can see that the company with company ID "c001" has the company name "XXX" and is a "supermarket," but other information is unknown. This method makes it possible to assign attribute information to such target data without using search queries or the like.
[0022] First, this method generates a target string related to the target data to which attribute information will be assigned. In the example in Figure 3, the target string generated is the sentence "The characteristics of the supermarket called XXX are," which includes "XXX," a string representing the name of the target data, and "supermarket," a related word associated with the target data.
[0023] Next, this method generates related strings from the generated target string. As will be explained in detail later, a language model that has learned the relationships between words is used to generate related strings. In the example in Figure 3, the sentence "The characteristics of the supermarket called XXX are its wide selection of products and their high quality," which has the latter part of the target string completed, is generated as a related string.
[0024] This method extracts attribute information from the generated related strings. In the example in Figure 3, the words "product range" and "quality" included in the related strings are extracted as attribute information. These both indicate the nature of the target data and are useful words as attribute information for the target data. Thus, this method makes it possible to add attribute information to target data without using search queries or the like.
[0025] (Configuration of information processing device) Figure 4 is a block diagram showing an example configuration of the information processing device 2 according to this exemplary embodiment. As shown in Figure 4, the information processing device 2 includes a control unit 20 that controls all parts of the information processing device 2, a storage unit 21 that stores various data, a communication unit 22 for communicating with other devices, an input unit 23 for receiving input operations, and an output unit 24 that outputs data.
[0026] The control unit 20 also includes a target data acquisition unit 201, a related word acquisition unit 202, a target string generation unit 203, a related string generation unit 204, and an attribute information extraction unit 205. The storage unit 21 stores the input data 211 and the language model 212.
[0027] The target data acquisition unit 201 acquires target data to which attribute information will be assigned. For example, the target data acquisition unit 201 may extract target data from the input data 211. The input data 211 may contain one or more data, and may be entered by the user, stored in the storage unit 21 in advance, or acquired via the communication unit 22. For example, a dataset such as table T1 shown in Figure 3 may be used as the input data 211. In this case, the target data acquisition unit 201 may acquire records or data included in the input data 211 as target data. The user may specify which data in the input data 211 should be used as target data. The method of acquiring target data is not particularly limited; for example, the target data acquisition unit 201 may acquire target data entered by the user via the input unit 23, or it may acquire target data from another device via the communication unit 22.
[0028] The related word acquisition unit 202 acquires related words related to the target data acquired by the target data acquisition unit 201. The method of acquiring related words is not particularly limited. For example, if the target data contains multiple data, as in the example in Figure 3, the related word acquisition unit 202 may extract related words from among the data. For example, in the example in Figure 3, if the target data is the company name "YYY", the related word acquisition unit 202 may extract the business type "grocery store" associated with the target data as a related word. It is preferable that the related words are those that contribute to the generation of related strings, and it is preferable to avoid using things that do not have meaning on their own, such as IDs (identification information) or equipment model numbers, as related words.
[0029] The target string generation unit 203 generates a target string relating to the target data acquired by the target data acquisition unit 201. The target string only needs to contain content relating to the target data, and the target string generation unit 203 may, for example, generate at least one sentence relating to the target data as the target string. Note that the target string does not necessarily need to be a complete sentence; it may be missing the end or some words.
[0030] For example, the target string generation unit 203 may generate a target string containing at least one sentence from a string representing the name of the target data. This provides the effect of generating a target string using generally available data, such as a string representing the name of the target data, in addition to the effects of the information processing device 1 according to the exemplary embodiment 1.
[0031] Furthermore, the above configuration allows for the creation of new nuances by transforming the string representing the name of the target data into a sentence, thereby guiding the output to include relevant strings containing desired attribute information. For example, suppose the target data is about a company, and the company's name is a common noun referring to a fruit. In this case, generating a target string like "The characteristics of {Company Name} are," might generate a target string related to fruit. However, using a template like "The characteristics of the company {Company Name} are," would generate a target string related to the company instead of fruit, allowing for the extraction of appropriate attribute information.
[0032] The names mentioned above may include company names, product names of tangible goods, names of intangible goods or services, place names, recipe names, etc. By using names that evoke the target data, it becomes possible to generate related strings associated with the target data. For example, by generating a target string that includes the product name "wine," it becomes possible to extract attribute information related to "wine."
[0033] Furthermore, since the information processing device 2 includes a related word acquisition unit 202 that acquires related words related to the target data, the target string generation unit 203 can also generate at least one sentence containing related words as the target string. This makes it possible to extract attribute information related to the related words. Therefore, in addition to the effects of the information processing device 1 according to the exemplary embodiment 1, even if, for example, the name of the target data is a series of numbers and symbols and a meaningful target string cannot be generated from them, it is possible to extract attribute information related to related words and therefore related to the target data.
[0034] Furthermore, by using a sentence containing related words as the target string, it is possible to guide the language model 212 to output a related string containing the desired attribute information. For example, if the target data is about stores, by obtaining a word indicating that type of business as a related word, it is possible to guide the language model 212 to output a related string containing attribute information about stores of that type.
[0035] The method for generating the target string is not particularly limited. For example, the target string generation unit 203 may generate at least one sentence using a pre-prepared template and use this as the target string. The template may be stored in advance in the storage unit 21 or the like, or a template generation unit may be provided in the control unit 20 of the information processing device 2, and the template generation unit may be made to generate the template.
[0036] Furthermore, when the target string generation unit 203 inputs the name and related words of the target data into the template, it may adjust the format of the data to be input into the template to make it suitable for input into the template. This makes it possible to make the target string into a natural sentence. The method of adjustment described above is not particularly limited, and adjustments can also be made using, for example, a language model.
[0037] As the template described above, for example, a target string may be created by inputting a string representing the name of the target data and a related word to be acquired by the related word acquisition unit 202. For example, if the template "The characteristic of the {related word} {name of target data} is," is used, and the name of the target data is "XXX" and the related word is "supermarket", then the target string generation unit 203 can generate the string "The characteristic of the supermarket called XXX is," (more precisely, the beginning of the sentence) as the target string. Alternatively, for example, by using the template "The characteristic of the {item name} that exists in {place name} is," it becomes possible to limit the target string to sentences about items that exist in a specific region and extract attribute information about items that exist in that region. The {place name} can be extracted from input data 211, etc.
[0038] The related string generation unit 204 uses a language model 212 that has learned the relationships between words to generate related strings from target strings related to target data to which attribute information is to be assigned.
[0039] The language model 212 has learned the relationships between words and is a model that generates related strings from a target string. By using the language model 212, which has been trained on sentences and texts in various contexts, it is possible to generate related strings with reasonable content related to the target string.
[0040] For example, the language model 212 may be trained to output at least one sentence containing the input string. By using such a language model 212, the related string generation unit 204 can generate at least one sentence containing the target string as a related string. The sentence thus generated is related to the target data by containing the target string, and also contains new information about the target data. Therefore, according to the above configuration, in addition to the effects of the information processing device 1 according to the exemplary embodiment 1, the effect of being able to extract new information about the target data as attribute information can be obtained.
[0041] For example, as the language model 212, you could use GPT-2 (Generative Pre-Training-2) or GPT-3, which outputs a sentence containing the input string by predicting the string with the highest probability of following the input string. In addition, other models such as T5 (Text-to-Text Transfer Transformer) can also be used as the language model 212.
[0042] Furthermore, when using the language model 212 as described above, the related string generation unit 204 may input the string output from the language model 212 back into the language model 212. This process may also be repeated multiple times. This increases the amount of information contained in the target string and improves the likelihood of extracting valid attribute information.
[0043] The attribute information extraction unit 205 extracts attribute information from the related strings generated by the related string generation unit 204. The attribute information extraction unit 205 also stores the extracted attribute information as result data in the storage unit 21. The attribute information extraction unit 205 may also store the extracted attribute information in association with the target data. The attribute information extraction unit 205 may also present the extracted attribute information to the user by outputting it to the output unit 24 or other means.
[0044] As described above, the information processing device 2 includes a related string generation unit 204 that generates related strings from a target string relating to target data to which attribute information is to be assigned, using a language model 212 that has learned the relationships between words, and an attribute information extraction unit 205 that extracts attribute information from the related strings.
[0045] The related strings generated from the target string using a language model that has learned the relationships between words contain new information about the target data that was not present in the original target string. Therefore, according to the above configuration, new information about the target data can be extracted as attribute information, making it possible to assign attribute information to the target data without using search queries or the like. Note that "extracting attribute information from related strings" also includes using the generated related strings as attribute information as they are.
[0046] (Regarding how to obtain related words) Other methods for obtaining related terms will be explained with reference to Figure 5. Figure 5 shows an example of a table from which related terms are to be extracted. The figure shows table T21 containing the target data and tables T22 to T26 that are directly or indirectly related to it. The input data 211 may contain multiple such tables, and the related term acquisition unit 202 may extract related terms from these tables.
[0047] For example, the related word acquisition unit 202 may acquire related words from table T21 containing the target data, such as words indicating age and gender associated with the target data. In this case, the related word acquisition unit 202 may also acquire related words after replacing numerical values in table T21 with numerical ranges or symbols with words. For example, the related word acquisition unit 202 may acquire "30s" as a related word instead of "34," which is the age value associated with the target data. Similarly, the related word acquisition unit 202 may acquire "male" as a related word instead of "M," which is the gender value associated with the target data. Such substitutions can also be applied to information acquired from sources other than table T21 containing the target data.
[0048] Furthermore, the related word retrieval unit 202 may retrieve related words from table T22, which uses "User ID," the primary key of table T21, as its foreign key, or it may retrieve related words from tables T23 to T25, which are associated with table T22. In addition, the related word retrieval unit 202 may extract related words from table T26, which is associated with table T23. When the related word retrieval unit 202 extracts related words by traversing tables that are related to each other in this way, it may traverse the tables in the order of primary key to foreign key (for example, from table T21 to table T22), or it may traverse the tables in the order of foreign key to primary key (for example, from table T22 to table T23).
[0049] When the target string generation unit 203 generates a target string that includes related words obtained from multiple sources, it can use a template that allows input of related words obtained from each source. For example, when the target string generation unit 203 generates a target string from two related words extracted from table T21 containing the target data, it may use the template "The characteristics of {age}{gender} are,". In this case, the target string "The characteristics of men in their 30s are," will be generated.
[0050] Furthermore, for example, when the target string generation unit 203 generates a target string using the two related words extracted from table T21 and the related word indicating "location" extracted from table T22, it may use the template "The characteristics of {age}{gender} who shop at {location} are,". In this case, the target string "The characteristics of a 30-year-old man who shops at P1 are," will be generated. In this way, the related word acquisition unit 202 may acquire related words from table T21 containing the target data and one related table T22. In this case, the target string generation unit 203 may generate the target string by inputting the related words extracted from each table into the template.
[0051] Furthermore, the related word acquisition unit 202 may acquire related words from tables T23 to T26 that are indirectly linked to table T21 containing the target data. For example, the related word acquisition unit 202 may identify from table T22, which is indirectly linked to table T21 containing the target data, that the IDs of the companies from which a user with user ID "u001" purchased products are "c001" and "c002", and extract the company names "XXX" and "YYY" from table T23 as related words. In this case, the target string generation unit 203 may generate a target string such as "The characteristics of a 30-year-old man who is interested in XXX and YYY are," using a template such as "The characteristics of a {age}{gender} who is interested in {characteristics extracted from table T3} are,". In this way, the related word acquisition unit 202 can identify various data related to the target data starting from table T21 containing the target data, and acquire related words from that data. These data may be entered as input data 211, or they may be referenced from an external database or similar source.
[0052] Furthermore, the related word acquisition unit 202 may acquire multiple related words, in which case the target string generation unit 203 may aggregate the acquired multiple related words and include them in the target string. For example, in the example in Figure 5, the related word acquisition unit 202 may refer to table T22 to identify that the company IDs of the places where a user with user ID "u001" purchased products are "c001" and "c002", and further refer to tables T23 and T26 to identify that the attributes of those companies are "health", "safety", "import", and "wine", and extract these as related words. As a result, the target string generation unit 203 can, for example, use the template "Characteristics of {age}{gender} who are interested in {related words}" to generate a target string such as "Characteristics of a 30-year-old man who is interested in health, safety, import, and wine".
[0053] In this way, by extracting related words from various data associated with the target data, it becomes possible to extract valid attribute information even when the target data is something that cannot be easily understood from the data itself, such as a user ID or a device model number.
[0054] (Aggregation of attribute information from similar data) The information processing device 2 may also extract attribute information of similar data to the target data, and may aggregate the extracted attribute information and the attribute information of the target data and output it. The criteria for "similar" are arbitrary. For example, users of similar ages may be considered similar users. In this case, when the target data acquisition unit 201 is specified as the target data, it may acquire data of users of similar age to that user as similar data. For example, suppose the data with user ID "u011" in table T21 of Figure 5 is specified as the target data. In this case, the target data acquisition unit 201 may acquire data of users within a predetermined age range (e.g., 34 ± 5 years) from the age "34" associated with "u011" as similar data. Alternatively, the target data acquisition unit 201 may acquire data of users of the same age group (in the above example, in their 30s) as similar data.
[0055] Then, similar data is subjected to the same process as the target data: related words are acquired by the related word acquisition unit 202, the target string is generated by the target string generation unit 203, related strings are generated by the related string generation unit 204, and attribute information is extracted by the attribute information extraction unit 205. As a result, attribute information is extracted for both the target data and the similar data (which may be one or more), and the attribute information extraction unit 205 can then aggregate them to obtain the final attribute information.
[0056] For example, the attribute information extraction unit 205 may use the union of attribute information corresponding to the target data and similar data as the attribute information of the target data, or it may use the attribute information extracted from the union as the attribute information of the target data. The method for extracting attribute information will be explained later in the section "About Attribute Information Extraction".
[0057] Furthermore, for example, the attribute information extraction unit 205 may use the difference set obtained by subtracting the set of attribute information corresponding to the target data from the union set of attribute information corresponding to similar data as the attribute information of the target data, or it may use the attribute information extracted from the difference set as the attribute information of the target data. This makes it possible to extract attribute information that is not directly related to user "u011" but is related to other users similar to user "u011". With this configuration, for example, it becomes possible to extract as attribute information information that user "u011" is expected to be interested in in the future, or information that may be useful when recommending products to user "u011".
[0058] (Other examples of target strings) As described above, the target string generation unit 203 can generate a target string using various strings such as the name of the target data or related words. Furthermore, if there is data that is similar to the target data based on some criteria (similar data as described above) or data that can be compared (hereinafter referred to as comparison data), the target string generation unit 203 may generate a target string using such data.
[0059] For example, the target string generation unit 203 may generate a target string using the template "The characteristics of {name of the data to be compared} when compared with {name of the data to be compared} are,". This makes it possible to extract attribute information regarding the differences between the target data and the data to be compared. For example, if table T1 shown in Figure 3 is input, the target string generation unit 203 can generate a target string such as "The characteristics of XXX when compared with YYY are," by using the above template with "YYY" as the data to be compared. Then, the related string generation unit 204 can use this target string to generate a target string such as "The characteristic of XXX when compared with YYY is the difference in average customer spending," which makes it possible to extract attribute information regarding the difference between "XXX" and "YYY," namely "average customer spending." The same applies when using the template "The advantages of {name of the data to be compared} over {name of the data to be compared} are,". Similar target strings can also be generated for similar data.
[0060] The selection method and criteria for comparison of comparison data and similar data are arbitrary. For example, the target string generation unit 203 may select data of the same genre as the target data as comparison data or similar data. Also, if the target data relates to stores or companies, the target string generation unit 203 may select data of stores or companies located in the same area as comparison data or similar data. Furthermore, the target string generation unit 203 may select data with similar numerical values as similar data. This allows, for example, if the target data relates to a store and its sales amount is known, data of stores with similar sales amounts to that store can be used as similar data.
[0061] Furthermore, if the attribute information of the data to be compared is known, the target string generation unit 203 may generate the target string using that attribute information. This increases the likelihood of extracting appropriate attribute information. For example, if the target data is the name of a store "XXX" and you want to obtain attribute information that describes the characteristics of that store, the target string generation unit 203 may generate the target string using a template such as, "The characteristic of {name of the data to be compared} is {attribute of the data to be compared}. In this case, the characteristic of {name of the target data} is,". By inputting the name of the store "XXX", the name of another store "YYY", and its attribute information "sales" into this template, the target string generation unit 203 can generate the target string "The characteristic of YYY is sales. In this case, the characteristic of XXX is,". This makes it possible to extract attribute information that describes the characteristics of the sales strategy of "XXX". Note that there may be multiple data to be compared. In this case, a template listing each data to be compared and its characteristics may be used.
[0062] Furthermore, even if the target data consists of strings not included in the corpus used to train the language model 212 (for example, neologisms, coined words, or words used only in certain regions), it is possible to generate target strings that include related words, etc., and input these into the language model 212 to extract attribute information related to the target data. For example, if the name of the target data is a combination of a personal name and a common noun, it can be expected that using the language model 212 trained on a corpus that includes the common noun part will output related strings that include attribute information related to the target data.
[0063] Furthermore, if a target string containing the target data and related words is generated, it can be expected that a related string incorporating the components of the related words will be output using the language model 212 trained on a corpus containing the related words. For example, even if the name "XXX" is not included in the corpus, if the word "supermarket" is obtained as a related word, it becomes possible to generate a target string "The supermarket called XXX is," and then generate a related string that incorporates "supermarket."
[0064] (Examples using other language models) The language model 212 described above may be trained to output a string that fits the missing part when a sentence with a missing part is input. This will be explained with reference to Figure 6. Figure 6 shows an example of extracting attribute information using a language model 212 trained to output a string that fits the missing part when a sentence with a missing part is input.
[0065] Figure 6 shows an example where table T3, containing company ID and company name, is given as input data 211, and the record in table T3 with company ID "c001" is specified as the target data.
[0066] Here, the target string generation unit 203 generates a target string consisting of at least one sentence in which the part indicating the attributes of the target data is missing. Specifically, in the example in Figure 6, the target string generation unit 203 generates the target string "{MASK} people use {company name}." by inputting the string "XXX" extracted from the target data into the template "{MASK} people use {company name}." The {MASK} part indicates the attributes of the target data. The {MASK} part may be at the beginning of the sentence, at the end, or in between. The target string generation unit 203 may also generate a target string that includes related words or words related to data to be compared with the target data.
[0067] Next, the related string generation unit 204 inputs the target string mentioned above into the language model 212 and outputs a set of strings (typically words) that fit into the {MASK} portion. Note that the number of elements in this set is one or more.
[0068] The language model 212 used here is trained to output a string that fits the missing part when a sentence with a missing portion is input. For example, such a string can be output by using a model such as BERT (Bidirectional Encoder Representations from Transformers), RoBERTa (Robustly optimized BERT approach), or ELECTRA (Efficiently Learning an Encoder that Classifies Token Replacements Accurately) as the language model 212.
[0069] In the example in Figure 6, the two words "luxury-oriented" and "wealthy" are output as related strings, along with a numerical value corresponding to each word. This numerical value is a score indicating the likelihood that the word fits in the {MASK} part. The language model 212 may output such a score along with the word that fits in the {MASK} part.
[0070] The attribute information extraction unit 205 then extracts attribute information from the related strings (a set of words in this example) generated by the related string generation unit 204. The attribute information extraction unit 205 may extract all of the related strings generated by the related string generation unit 204 as attribute information, or it may extract only a portion of the related strings generated by the related string generation unit 204 as attribute information.
[0071] When extracting a portion of related strings as attribute information, the attribute information extraction unit 205 may select related strings to be extracted as attribute information based on the score described above. In the example in Figure 6, the attribute information extraction unit 205 extracts "high-end preference," whose score is above the threshold, as attribute information.
[0072] As described above, the target string generation unit 203 may generate a target string consisting of at least one sentence in which the part indicating the attributes of the target data is missing. In this case, the related string generation unit 204 generates a related string by inputting the target string into a language model 212 that has been trained to output a string that fits the missing part when a sentence with a missing part is input.
[0073] According to the above configuration, a string corresponding to the missing part of the target string, i.e., the part indicating the attributes of the target data, can be generated as a related string. Therefore, the attribute information extraction unit 205 can extract appropriate attribute information from the related string generated in this way.
[0074] Furthermore, the target string generation unit 203 may generate a question about the attributes of the target data as the target string. In this case, the related string generation unit 204 generates the related string by inputting the target string into a language model 212 that has been trained to output a string that is the answer to the question when the question is input.
[0075] According to the above configuration, a string that answers a question about the attributes of the target data can be generated as an associated string. Since the string that answers a question about the attributes of the target data is likely to contain information indicating the attributes of the target data, the attribute information extraction unit 205 can extract appropriate attribute information from the associated string generated in this way.
[0076] For example, the target string generation unit 203 may use the template "What are the characteristics of {name of target data}?" as a template and input "XXX" extracted from the target data shown in Figure 6 to generate the question "What are the characteristics of XXX?", and use this as the target string. In this way, the target string generation unit 203 can generate a target string that is a question by using a question template. In this case, the language model 212 can be one that has been trained on the relationship between various question sentences and their answers. The question sentence may directly ask about the attributes of the target data, as in the example above, or it may be a sentence in which information indicating attributes is expected to be the answer, such as "What comes to mind when you think of {name of target data}?". Furthermore, the answer string output from the language model 212 may be one or more words, a sentence, or a text consisting of multiple sentences. If a language model 212 such as GPT (Generative Pre-trained Transformer) is used, one or more sentences can be output as the answer string for a question sentence.
[0077] (Regarding the extraction of attribute information) (Extraction from a word set) The extraction of attribute information by the attribute information extraction unit 205 will now be explained. As described above, if the target string is a set of words, the attribute information extraction unit 205 only needs to extract part or all of the target string as attribute information based on the score described above. For example, the attribute information extraction unit 205 may extract the top k words (where k is an integer of 1 or more) with the highest scores as attribute information, or it may extract words with a score above a predetermined threshold as attribute information.
[0078] (Extracted from text) On the other hand, if the target string is a sentence or part of a sentence, the attribute information extraction unit 205 may extract some or all of the words contained in the target string as attribute information. In this case, the attribute information extraction unit 205 may perform morphological analysis on the target string to extract words and use some or all of the extracted words as attribute information. When the attribute information extraction unit 205 uses some of the extracted words as attribute information, it may use words of a predetermined part of speech as attribute information. The choice of which part of speech to use as attribute information is arbitrary; for example, the attribute information extraction unit 205 may extract nouns or verbs as attribute information, or it may extract only proper nouns as attribute information.
[0079] For example, suppose the target string is "The features of XXX are its wide variety and high quality." Of this, the part at the beginning, "The features of XXX are," is the target data and the template part that accompanies it. For this reason, the attribute information extraction unit 205 may exclude the beginning part from the target of attribute information extraction and perform morphological analysis on the latter half. This will extract words such as "variety," "of," "wide," "and," and "quality." If the part of speech to be extracted is a noun, the attribute information extraction unit 205 will extract "variety," "wide," and "quality" from the above words as attribute information.
[0080] (Extraction based on frequency of occurrence) Furthermore, the attribute information extraction unit 205 may extract attribute information based on the frequency of occurrence of words extracted from multiple related strings. This will be explained with reference to Figure 7. Figure 7 is a diagram showing an example of attribute information extraction based on the frequency of occurrence of words extracted from multiple related strings. Table T4 shown in Figure 7 shows the words extracted from related strings for multiple company names such as "XXX", "YYY", and "ZZZ". The numbers in Table T4 indicate the number of times a word was extracted. For example, Table T4 shows that the word "brand" was extracted once each from the related strings "XXX" and "ZZZ", and zero times (i.e., not extracted) from the related string "YYY".
[0081] The attribute information extraction unit 205 can calculate the frequency of each word by counting the number of occurrences of the words extracted from each related string in this way, and can select words to extract as attribute information based on the calculated frequency. For example, the attribute information extraction unit 205 may extract the top k words (where k is an integer of 1 or more) with the highest frequency as attribute information, or it may extract words with a frequency above a predetermined threshold as attribute information.
[0082] Note that the language model 212 may return different outputs for the same input due to the influence of random numbers, etc. For this reason, the related string generation unit 204 may generate multiple related strings by inputting the same target string into the language model 212 multiple times. Alternatively, the related string generation unit 204 may generate multiple related strings by inputting the target string into multiple different language models 212. In these cases as well, the attribute information extraction unit 205 may select words to extract as attribute information based on the frequency of occurrence of words extracted from each related string.
[0083] (Extraction based on weighted frequency of occurrence) Furthermore, for example, the attribute information extraction unit 205 may extract attribute information based on weighted frequency. Table T5, shown in Figure 7, is similar to Table T4 in that it shows words extracted from related strings for multiple company names such as "XXX," "YYY," and "ZZZ." The numbers in Table T5 represent the weighted frequency values of each word. For example, Table T5 shows that the weighted frequency value of the word "brand," extracted from the related strings for the target data company name "XXX," is 0.5.
[0084] For example, the attribute information extraction unit 205 may calculate weighted frequencies using TF-IDF (Term Frequency-Inverse Document Frequency). TF-IDF is calculated based on the frequency of a word and the number of sentences in which that word is contained. Words that appear in many sentences will have a low TF-IDF value even if they appear frequently, while words that appear in a small number of sentences and have a high frequency of appearance in those sentences will have a high TF-IDF value.
[0085] Specifically, the weighted frequency value is obtained by multiplying the TF (Term Frequency) value by the IDF (Inverse Document Frequency) value as a weight. In the example in Figure 7, the attribute information extraction unit 205 calculates TF-IDF for a matrix (table T4) that shows the frequency with which each word is extracted from the related string. Each number shown in table T5 represents the calculation result of the TF-IDF value for each pair of words and the related string from which those words were extracted.
[0086] The TF-IDF value indicates how important each word in each sentence is within that sentence. Therefore, the attribute information extraction unit 205 can extract more important words as attribute information by calculating weighted frequencies using TF-IDF and extracting attribute information based on these values. The method for calculating weighted frequencies is not particularly limited; for example, the attribute information extraction unit 205 may calculate weighted frequencies using BM (Best Matching) 25 or the like.
[0087] By calculating the weighted frequency of each word as described above, the attribute information extraction unit 205 can extract attribute information based on the weighted frequency. For example, the attribute information extraction unit 205 may extract the top k words (where k is an integer of 1 or more) with the highest weighted frequencies as attribute information, or it may extract words with a weighted frequency above a predetermined threshold as attribute information. In the example in Figure 7, for the target data, the company name "XXX", the top three words with the highest weighted frequencies, "brand", "healthy", and "wine", are extracted as attribute information.
[0088] As described above, the related string generation unit 204 may generate multiple related strings based on at least one of the target data and other data. The attribute information extraction unit 205 may then extract one or more words as attribute information from among the words included in the related strings corresponding to the target data, based on the frequency of occurrence of each word included in the multiple related strings.
[0089] When multiple related strings are generated based on at least one of the target data and other data, the words contained in each related string may be different. The frequency of occurrence of each word in these related strings can serve as an indicator for determining the suitability of that word as attribute information. Therefore, according to the above configuration, in addition to the effects achieved by the information processing device 1 according to exemplary embodiment 1, it becomes possible to extract words with high suitability as attribute information as attribute information.
[0090] Furthermore, the criteria for extracting attribute information are not limited to frequency of occurrence. For example, the attribute information extraction unit 205 may extract one or more words randomly selected from the words contained in the related string as attribute information.
[0091] (Extraction based on analytical objectives) Furthermore, the attribute information extraction unit 205 may extract words suitable for the analysis purpose as attribute information. For example, the attribute information extraction unit 205 may extract one or more words selected from one or more words included in the related string based on their similarity to a predetermined word as attribute information. This provides the effect of being able to extract words selected based on the criterion of similarity to a predetermined word as attribute information, in addition to the effects of the information processing device 1 according to the exemplary embodiment 1. For example, it is possible to extract words with a high similarity to a predetermined word as attribute information, or to extract words with a low similarity to a predetermined word as attribute information.
[0092] The attribute information extraction unit 205 can extract words that are suitable for the analysis purpose as attribute information by extracting words that have a high similarity to keywords corresponding to the analysis purpose. For example, if the analysis purpose is to explore the needs of households raising children, the attribute information extraction unit 205 may extract words that have a high similarity to the word "child-rearing" as attribute information. This makes it possible to extract words that indicate the needs of households raising children as attribute information.
[0093] The method for calculating the similarity between words is arbitrary. For example, the attribute information extraction unit 205 may obtain vector representations of each word using a word embedding model such as Word2Vec or fastText, and calculate their cosine similarity. Alternatively, the attribute information extraction unit 205 may calculate the cosine similarity between each word in the related string and a predetermined word, and extract the words whose maximum value is greater than or equal to a predetermined threshold as attribute information. Alternatively, for example, the attribute information extraction unit 205 may extract the top k words (where k is an integer greater than or equal to 1) with the highest maximum cosine similarity as attribute information.
[0094] (Processing flow: Attribute information extraction method) The flow of the attribute information extraction method executed by the information processing device 2 will be explained with reference to Figure 8. Figure 8 is a flowchart showing the flow of the attribute information extraction method according to this exemplary embodiment. Note that Figure 8 shows the processing after the input data 211 has been input.
[0095] In S21, the target data acquisition unit 201 acquires the target data to which attribute information will be assigned. For example, the target data acquisition unit 201 may acquire data selected from the data included in the input data 211 as target data.
[0096] In S22, the related word acquisition unit 202 acquires related words for the target data acquired in S21. Related words may be, for example, data included in the target data, or data associated with the target data (for example, data that is directly or indirectly associated with the target data in the input data 211).
[0097] In S23, the target string generation unit 203 generates a target string related to the target data obtained in S21. For example, the target string generation unit 203 may generate the target string by inputting a string indicating the name of the target data obtained in S21 and related words obtained in S22 into a predetermined template.
[0098] In S24, the related string generation unit 204 uses a language model 212 that has learned the relationships between words to generate related strings from the target string generated in S23. The language model 212 used may be trained to output a sentence or part of a sentence, or it may be trained to output a string that fits into a missing part of a sentence, or it may be trained to output a question sentence.
[0099] In S23, a target string is generated in a format that conforms to the language model 212 being used. For example, if a language model 212 trained to output the latter half of a sentence in S24 is used, then in S23, the first half of the sentence is generated as the target string.
[0100] Here, the user may be allowed to choose which language model 212 to use. In this case, the user's specification of the language model 212 is accepted before S23. Then, in S23, the target string corresponding to the language model 212 selected by the user is generated, and in S24, the related string is generated using the language model 212 selected by the user.
[0101] In S25, the attribute information extraction unit 205 extracts attribute information from the related string generated in S24. The attribute information extraction unit 205 then stores the extracted attribute information in the storage unit 21, etc., and the process in Figure 8 ends. The attribute information extraction unit 205 may also output the extracted attribute information to the output unit 24, etc.
[0102] As described above, the attribute information extraction method according to this exemplary embodiment includes generating related strings from a target string relating to the target data to which attribute information is to be assigned, using a language model 212 that has learned the relationships between words (S24), and extracting attribute information from the related strings (S25). This attribute information extraction method makes it possible to assign attribute information to target data without using search queries or the like.
[0103] The processes S21 to S25 described above may be repeated while changing the target data. This will extract attribute information for each of the multiple target data. In this case, the attribute information extraction unit 205 can determine the final attribute information for each target data based on the frequency of occurrence of each word extracted as attribute information.
[0104] For example, suppose attribute information is extracted for each of the three company names "XXX", "YYY", and "ZZZ" shown in Table T1 of Figure 3. In this case, the attribute information extraction unit 205 may count the number of occurrences of each word extracted as attribute information, calculate the frequency of occurrence of each word from the counted occurrences, and determine the final attribute information based on this frequency (see Table T4 in Figure 7). Alternatively, the attribute information extraction unit 205 may determine the final attribute information based on weighted frequency (see Table T5 in Figure 7).
[0105] Furthermore, if the target data obtained in S21 contains a string, the processing in S22 and S23 can be omitted. In this case, in S24, the related string can be generated by inputting the string contained in the target data obtained in S21 as the target string into the language model 212. Alternatively, the generated related string can be repeatedly input into the language model 212 to generate a related string containing more information.
[0106] [Variation] The entity executing each process described in the above-described embodiment is arbitrary and not limited to the examples given above. In other words, the functions of the information processing device 2 can be realized by multiple information processing devices (which can also be called processors) that can communicate with each other. For example, each process described in the flowchart of Figure 8 can be divided and executed by multiple information processing devices. In other words, the entity executing the control method in the above-described embodiment may be one information processing device 2 or multiple information processing devices.
[0107] [Examples of implementation using software] Some or all of the functions of information processing devices 1 and 2 may be implemented by hardware such as integrated circuits (IC chips), or by software.
[0108] In the latter case, information processing devices 1 and 2 are implemented by a computer that executes instructions for a program, which is software that implements each function. An example of such a computer (hereinafter referred to as computer C) is shown in Figure 9. Computer C comprises at least one processor C1 and at least one memory C2. Memory C2 stores a program (attribute information extraction program) P that causes computer C to operate as information processing device 1 or 2. In computer C, the processor C1 reads program P from memory C2 and executes it, thereby implementing each function of information processing device 1 or 2.
[0109] For processor C1, for example, a CPU (Central Processing Unit), GPU (Graphic Processing Unit), DSP (Digital Signal Processor), MPU (Micro Processing Unit), FPU (Floating Point Number Processing Unit), PPU (Physics Processing Unit), TPU (Tensor Processing Unit), quantum processor, microcontroller, or a combination thereof can be used. For memory C2, for example, flash memory, HDD (Hard Disk Drive), SSD (Solid State Drive), or a combination thereof can be used.
[0110] Computer C may also be equipped with RAM (Random Access Memory) for loading program P at runtime and for temporarily storing various data. Furthermore, computer C may be equipped with communication interfaces for sending and receiving data with other devices. Additionally, computer C may be equipped with input / output interfaces for connecting input / output devices such as keyboards, mice, displays, and printers.
[0111] Furthermore, program P can be recorded on a non-temporary, tangible recording medium M that is readable by computer C. Such a recording medium M could be, for example, tape, disk, card, semiconductor memory, or programmable logic circuitry. Computer C can acquire program P via such a recording medium M. Program P can also be transmitted via a transmission medium. Such a transmission medium could be, for example, a communication network or broadcast waves. Computer C can also acquire program P via such a transmission medium.
[0112] [Additional Note 1] The present invention is not limited to the embodiments described above, and various modifications are possible within the scope of the claims. For example, embodiments obtained by appropriately combining the technical means disclosed in the embodiments described above are also included in the technical scope of the present invention.
[0113] [Additional Note 2] Some or all of the embodiments described above may also be described as follows. However, the present invention is not limited to the embodiments described below.
[0114] (Note 1) An information processing device comprising: a related string generation means that generates related strings from a target string relating to target data to which attribute information is to be assigned, using a language model that has learned the relationships between words; and an attribute information extraction means that extracts the attribute information from the related string.
[0115] (Note 2) The information processing apparatus according to Appendix 1, wherein the related string generation means generates at least one sentence containing the target string as the related string using the language model which has been trained to output at least one sentence containing the input string.
[0116] (Note 3) The information processing apparatus according to Appendix 1, comprising: a target string generation means for generating the target string, which is a sentence in which the part indicating the attributes of the target data is missing; and the related string generation means generates the related string by inputting the target string into a language model that has been trained to output a string that fits the missing part when a sentence with a missing part is input.
[0117] (Note 4) The information processing apparatus according to Appendix 1, comprising a target string generation means for generating a question about the attributes of the target data as the target string, wherein the related string generation means generates the related string by inputting the target string into a language model that has been trained to output a string that is an answer to the question when a question is input.
[0118] (Note 5) The information processing apparatus according to Appendix 1 or 2, comprising a target string generation means for generating the target string as the target string from a string representing the name of the target data.
[0119] (Note 6) The information processing apparatus according to Appendix 1 or 2, comprising: related word acquisition means for acquiring related words related to the target data; and target string generation means for generating at least one sentence containing the related words as the target string.
[0120] (Note 7) The information processing apparatus according to any one of Appendix 1 to 6, wherein the related string generation means generates a plurality of related strings targeting at least one of the target data and other data, and the attribute information extraction means extracts one or more words selected from the words contained in the related strings corresponding to the target data as attribute information based on the frequency of occurrence of each word contained in the plurality of related strings.
[0121] (Note 8) The attribute information extraction means extracts one or more words selected from among the one or more words contained in the related string based on their similarity to a predetermined word, as attribute information, according to any one of the information processing devices described in Appendix 1 to 8.
[0122] (Note 9) An attribute information extraction method comprising: at least one processor using a language model that has learned the relationships between words to generate related strings from a target string relating to target data to which attribute information is to be assigned; and extracting the attribute information from the related strings.
[0123] (Note 10) An attribute information extraction program that causes a computer to function as a related string generation means, which generates related strings from a target string relating to target data to which attribute information is to be assigned, using a language model that has learned the relationships between words, and an attribute information extraction means, which extracts the attribute information from the related string.
[0124] (Note 11) An information processing device comprising at least one processor, wherein the processor performs the following processes using a language model that has learned the relationships between words: generating related strings from target strings relating to target data to which attribute information is to be assigned; and extracting attribute information from the related strings.
[0125] Furthermore, the information processing device may also be equipped with memory, which may store the process for calculating the similarity, the process for generating related strings, the process for extracting attribute information, and an attribute information extraction program for execution by the processor. In addition, this attribute information extraction program may be recorded on a computer-readable, non-temporary, tangible recording medium. [Explanation of Symbols]
[0126] 1. Information Processing Device 11 Related String Generation Unit (Related String Generation Means) 12 Attribute information extraction unit (attribute information extraction means) 2. Information Processing Device 202 Related word acquisition unit (means for acquiring related words) 203 Target string generation unit (target string generation means) 204 Related String Generation Unit (Related String Generation Means) 205 Attribute information extraction unit (attribute information extraction means)
Claims
1. A related string generation means that uses a language model that has learned the relationships between words to generate related strings from a target string relating to target data to which attribute information is to be assigned, An attribute information extraction means for extracting the attribute information from the aforementioned related string, Related word acquisition means for acquiring related words related to the target data from a table containing the target data and tables directly or indirectly associated with the table, A target string generation means that generates at least one sentence containing the aforementioned related words as the target string, An information processing device equipped with the following features.
2. The information processing apparatus according to claim 1, wherein the related string generation means generates at least one sentence containing the target string as the related string using the language model which has been trained to output at least one sentence containing the input string.
3. The system includes a target string generation means that generates at least one sentence as the target string, in which the portion indicating the attributes of the target data is missing, The information processing apparatus according to claim 1, wherein the related string generation means generates the related string by inputting the target string into the language model which has been trained to output a string that fits the missing part when a sentence with a missing part is input.
4. The system includes a target string generation means for generating a question sentence relating to the attributes of the target data as the target string, The information processing apparatus according to claim 1, wherein the related string generation means generates the related string by inputting the target string into the language model which has been trained to output a string that is an answer to a question when a question is input.
5. The information processing apparatus according to claim 1 or 2, further comprising a target string generation means for generating the target string as the target string from a string representing the name of the target data.
6. The related string generation means generates multiple related strings targeting at least one of the target data and other data, The information processing apparatus according to any one of claims 1 to 4, wherein the attribute information extraction means extracts one or more words selected from the words contained in the related strings corresponding to the target data as attribute information based on the frequency of occurrence of each word contained in the plurality of related strings.
7. The information processing apparatus according to any one of claims 1 to 4, wherein the attribute information extraction means extracts one or more words selected from among the one or more words contained in the related string based on their similarity to a predetermined word as attribute information.
8. At least one processor, Using a language model that has learned the relationships between words, the process involves generating related strings from target strings related to target data to which attribute information is to be assigned, and Extracting the attribute information from the aforementioned related string, Obtaining related terms associated with the target data from the table containing the target data and tables directly or indirectly associated with the table, To generate at least one sentence containing the aforementioned related words as the target string, A method for extracting attribute information that includes this information.
9. Computers, A related string generation means that generates related strings from a target string relating to target data to which attribute information is to be assigned, using a language model that has learned the relationships between words. Attribute information extraction means for extracting attribute information from the aforementioned related string, Related word acquisition means for acquiring related words related to the target data from a table containing the target data and tables directly or indirectly associated with the table, and A target string generation means that generates at least one sentence containing the aforementioned related words as the target string, An attribute information extraction program that functions as such.