Information processing device, information processing method, and information processing program

The information processing device improves geocoding accuracy by tokenizing address information into hierarchical categories and using machine learning to predict similarity, addressing manual tokenization errors and ensuring precise coordinate conversion.

JP2025119232AActive Publication Date: 2025-08-14RAKUTEN GROUP INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024013999
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-01
Publication Date
2025-08-14
Estimated Expiration
2044-02-01

AI Technical Summary

Technical Problem

Existing geocoding technologies face challenges in accuracy due to manual tokenization of address information, which can lead to incorrect geocoding when tokenization is based on incorrect information, and the accuracy varies with user knowledge.

Method used

An information processing device that tokenizes address information into hierarchical categories, predicts similarity using machine learning models, and identifies matching address information from a database to determine accurate latitude and longitude information.

Benefits of technology

Enables high-accuracy geocoding by automating tokenization and similarity prediction, ensuring accurate conversion of address information to geographic coordinates even with partial errors or incomplete data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025119232000001_ABST
    Figure 2025119232000001_ABST
Patent Text Reader

Abstract

To accurately perform geocoding using tokens tokenized from address information.SOLUTION: An information processing device is configured to: generate a token sequence by tokenizing target address information into a plurality of tokens corresponding to hierarchical address components; predict the similarity between the token sequence and address information included in a prescribed address information list; identify the address information with the highest similarity to the token sequence as matching address information from the list; and determine latitude and longitude information corresponding to the matching address information as latitude and longitude information of the target address information from a database storing the list and latitude and longitude information corresponding to the address information included in the list.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to techniques for geocoding. [Background technology]

[0002] Geocoding processing technologies that convert address information into latitude and longitude information have been developed. For example, Patent Document 1 discloses an address / latitude and longitude conversion device that converts address information into latitude and longitude information at high speed in real time by using a tree structure hierarchically configured by administrative districts.

[0003] Specifically, the address / latitude and longitude conversion device in this document converts address information into a tree structure, generates address tree information, and stores it in memory. Here, the address tree information is composed of the first layer (top layer) as the root node, the second layer as prefectures, the third layer as wards or cities, towns, villages, or wards, the fourth layer as cities, towns, villages, or wards, and the fifth layer and below as house numbers (block codes and house numbers) or lot numbers. Furthermore, the address tree information is configured to associate latitude and longitude information with the lowest layer node. This makes it possible to efficiently search for latitude and longitude information for given address information. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2016-091315 Summary of the Invention [Problem to be solved by the invention]

[0005] As described above, geocoding has conventionally been performed using character strings representing administrative divisions such as prefectures and municipalities separated from address information, i.e., character strings (tokens) obtained by tokenizing address information. When tokenization is performed manually, not only is the work cumbersome, but the accuracy of tokenization can vary depending on knowledge of addresses. Furthermore, if tokenization is performed based on incorrect address information, the address information in question does not actually exist, and so geocoding may not be performed accurately.

[0006] The present invention has been made in view of the above-mentioned problems, and aims to provide a technology for performing geocoding with high accuracy using tokens tokenized from address information. [Means for solving the problem]

[0007] In order to solve the above problem, one aspect of an information processing device according to the present invention has a generation unit that tokenizes target address information into a plurality of tokens corresponding to hierarchical address categories to generate a token sequence; a prediction unit that predicts the similarity between address information included in a predetermined address information list and the token sequence; an identification unit that identifies, from the list, address information that has the highest similarity to the token sequence as matching address information; and a determination unit that determines, from a database that stores the list and latitude and longitude information corresponding to the matching address information, as the latitude and longitude information of the target address information.

[0008] In order to solve the above problem, one aspect of an information processing method according to the present invention includes: tokenizing target address information into a plurality of tokens corresponding to hierarchical address categories to generate a token sequence; predicting the similarity between address information included in a predetermined list of address information and the token sequence; identifying address information from the list that has the highest similarity to the token sequence as matching address information; and determining, from a database that stores the list and latitude and longitude information corresponding to the matching address information, as the latitude and longitude information of the target address information.

[0009] In order to solve the above-mentioned problems, one aspect of the information processing program according to the present invention is an information processing program for causing a computer to execute information processing, the program causing the computer to execute processes including: a generation process for tokenizing target address information into a plurality of tokens corresponding to hierarchical address categories to generate a token sequence; a prediction process for predicting the similarity between address information included in a predetermined list of address information and the token sequence; an identification process for identifying, from the list, address information having the highest similarity to the token sequence as matching address information; and a determination process for determining, from a database storing the list and latitude and longitude information corresponding to the matching address information, as the latitude and longitude information of the target address information. [Effects of the Invention]

[0010] According to the present invention, it is possible to perform geocoding with high accuracy using tokens generated from address information. The above-mentioned objects, aspects, and advantages of the present invention, as well as other objects, aspects, and advantages of the present invention not described above, will be understood by those skilled in the art from the following detailed description of the invention by referring to the accompanying drawings and the claims. [Brief explanation of the drawings]

[0011] [Figure 1]FIG. 1 shows an example of the functional configuration of an information processing device according to an embodiment. [Figure 2] FIG. 2 shows an example of the contents stored in the address point database. [Figure 3A] FIG. 3A shows an example of a token string generated from address information. [Figure 3B] FIG. 3B shows a conceptual diagram of the procedure for generating a token string using a tokenization model. [Figure 4] FIG. 4 shows an example of the hardware configuration of an information processing device according to an embodiment. [Figure 5] FIG. 5 is a flowchart of the geocoding process executed by the information processing device. [Figure 6] FIG. 6 shows an example of a token string generated from address information according to a modified example. [Figure 7] FIG. 7 shows an example of first address information and second address information according to a modified example. [Figure 8] FIG. 8 shows an example of an address text token string and a code token string according to a modified example. DETAILED DESCRIPTION OF THE INVENTION

[0012] Hereinafter, with reference to the accompanying drawings, an embodiment for carrying out the present invention will be described in detail. Among the components disclosed below, those having the same function will be given the same reference numerals, and their description will be omitted. Note that the embodiment disclosed below is an example of a means for realizing the present invention, and should be appropriately modified or changed depending on the configuration of the device to which the present invention is applied and various conditions. The present invention is not limited to the following embodiment. Furthermore, not all of the combinations of features described in the present embodiment are necessarily essential to the solution of the present invention.

[0013] [Example of functional configuration of information processing device] 1 shows an example of the functional configuration of an information processing device 10 according to this embodiment. As an example of its functional configuration, the information processing device 10 has an address information acquisition unit 101, a token string generation unit 102, a similarity prediction unit 103, a matching address identification unit 104, a geocoding unit 105, and a learning model storage unit 110. The learning model storage unit 110 is configured to be able to store a tokenization model 111 and a similarity prediction model 112.

[0014] The information processing device 10 may be, for example, a device such as a desktop PC (Personal Computer), a notebook PC, a tablet, or a general-purpose computer. The entire information processing device 10 may not be provided in a single device, but may be provided in multiple devices. For example, at least a part of the information processing device 10 may be realized in an external server or a virtual server built in a cloud server. In this case, the functions described in this embodiment are realized by cooperation between the information processing device 10 and the server.

[0015] The information processing device 10 is configured to be able to communicate with an external address point database 120. Note that in FIG. 1, the address point database 120 is arranged separately from the information processing device 10, but the information processing device 10 may be configured to include the address point database 120. The address point database 120 is a database that stores an address information list, which is a list of address information that actually exists, and latitude and longitude information (latitude information and longitude information) corresponding to the address information included in the list.

[0016] An example of the contents stored in the address point database 120 is shown in FIG. 2. As shown in FIG. 2, the address point database 120 stores an address information list 20, which is a list of address information that actually exists, and a latitude / longitude list 21, which is a list of latitude / longitude information corresponding to the address information included in the list. In this embodiment, the address information is text information (character strings) such as "1-2-3 D-machi, ABC-ku, Tokyo," and has a hierarchical structure arranged geographically in order from major divisions (higher) to minor divisions (lower). In this embodiment, each division from the major division to the minor division is referred to as an address division. The address division in the address information may be, from the top (first), any of a metropolitan area (to), prefecture area (to), city area (to), ward area (to), county area (to), or village area (to), a town or village area (to), or a town or village area (to), or a code division representing at least one of a block code and a house number. Therefore, the address information "1-2-3 D-cho, ABC-ku, Tokyo" is composed of the address categories "Tokyo" (any of the following categories: city, ward, county, or village), "D-cho" (cho or area category), and "1-2-3" (code category).

[0017] Furthermore, the address information may include other address segments following the code segment. For example, the address information may include a building segment including a building name following the code segment. For example, in the case of address information of "XY Building, No. 2-3, 1-chome, D-machi, ABC-ku, Tokyo," "XY Building" corresponds to the building segment. In addition, in the case of address information of "XY Mansion, Room 203, 1-chome, D-machi, ABC-ku, Tokyo," "XY Mansion" and "Room 203" (or "XY Mansion, Room 203") correspond to the building segments.

[0018] The address information included in the address information list 20 is configured so that each address section is distinguished (identified). For example, the address information included in the address information list 20 may have a space inserted between each address section. In FIG. 2, "1-2-3, D-cho, ABC-ku, Tokyo" has a space inserted between each address section. That is, spaces are inserted between "Tokyo" and "ABC-ku", between "ABC-ku" and "D-cho", and between "D-cho" and "1-2-3". Furthermore, actual address information is subject to change (for example, increase or decrease) due to land readjustment by the government, construction of buildings, etc. Therefore, the address information list 20 and latitude and longitude list 21 in the address point database 120 can be updated at regular intervals.

[0019] The address information acquisition unit 101 acquires address information from which latitude and longitude information (latitude information and longitude information) is to be acquired (i.e., which is to be geocoded) from input information to the address information acquisition unit 101. The address information acquisition unit 101 acquires address information from input information input by an operator (user), for example. Alternatively, the address information acquisition unit 101 may accept input information set in advance in the information processing device 10 according to a predetermined program, and acquire address information.

[0020] The address information acquired by the address information acquisition unit 101 is composed of hierarchical address segments, similar to the address information included in the address information list 20. The address segments in the address information can be, from the top (first), any one of the following: prefecture, city, ward, county, or village; town or village; and code segments representing at least one of a block code and a house number. Thus, the address information "1-2-3, D-machi, ABC-ku, Tokyo" is composed of the following address segments from the top: "Tokyo" (any one of the prefecture, city, prefecture, or prefecture segments), "ABC-ku" (any one of the city, ward, county, or village segments), "D-machi" (town or village segment), and "1-2-3" (code segment). "1-2-3" represents "1-chome, 2-banchi, 3-go," and can also be expressed as "1-chome, 2-banchi, 3-go." The address information may also include other address segments, such as a building segment including a building name, following the code segment.

[0021] When input information to the address information acquisition unit 101 consists of only address information, the address information acquisition unit 101 acquires the input information itself as address information. When the input information includes address information and other information such as image information, the address information acquisition unit 101 may extract and acquire the address information from the input information. When the input information is audio information including address information, the address information acquisition unit 101 converts the audio information into text information (i.e., transcribes it) and acquires the converted information as address information. The conversion from audio information to text information can be performed using a known voice recognition function or the like.

[0022] When the address information acquiring unit 101 acquires address information that does not include any one of the divisions "city," "region," "prefecture," or "prefecture" at the beginning, the address information acquiring unit 101 may be configured to acquire address information that includes any one of the divisions "city," "region," "prefecture," or "prefecture." For example, when the address information acquiring unit 101 acquires address information such as "ABC-ku, D-cho 1-2-3" from input information, the address information acquiring unit 101 may acquire address information such as "Tokyo" by adding "Tokyo" to the beginning. This may be performed on a rule basis using, for example, a predetermined lookup table or the like. For example, the address information acquiring unit 101 may refer to a predetermined lookup table or the address information list 20 for divisions corresponding to city, ward, county, or village and / or town or village divisions in the address information, acquire any one of the divisions "city," "region," "prefecture," or "prefecture," and assign it to the address information.

[0023] The token sequence generation unit 102 functions as a tokenizer and tokenizes (divides) the address information acquired by the address information acquisition unit 101 into multiple tokens corresponding to hierarchical address categories to generate a token sequence. In this embodiment, the token sequence generation unit 102 generates a token sequence using a tokenization model 111 stored in the learning model storage unit 110. The tokenization model 111 is a machine learning model trained for natural language processing. For example, the tokenization model 111 may be a model based on character-by-character sequence labeling using a Bi-LSTM (Bidirectional Long Short Term Memory) such as nagisa. Alternatively, the tokenization model 111 may be a model that searches for a context (morpheme path) that maximizes or minimizes the sum of a language model score for a virtual token sequence (morpheme) candidate based on a recurrent neural network language model (RNNLM) such as Juman++ and a feature score including the concatenation cost and occurrence cost of the token sequence candidate. Furthermore, the tokenization model 111 may be a model that divides an input character string (corresponding to address information) into subwords, such as a SentencePiece, or may be a model that allows reversible division of an input character string.

[0024] The token string generation unit 102 may generate a token string from address information on a rule basis (using a dictionary) using a predetermined lookup table or the like. For example, the token string generation unit 102 may be a tokenizer such as MeCab that searches for a context (morpheme path) that maximizes or minimizes the concatenation cost and occurrence cost of a token string candidate. The token string generation unit 102 may also be a tokenizer having multiple morpheme units such as Sudachi. The token string generation unit 102 may also be a tokenizer to which a predetermined dictionary or a predetermined corpus such as IPAdic or NEologd has been added or reflected. When a tokenizer such as Sudachi is used, the token sequence generation unit 102 may, for example, select a short word as a morpheme unit (for example, address division units such as "Tokyo," "ABC Ward," "D Town," or "1-2-3"), or may select a morpheme unit formed by combining a short word with an affix, a compound verb, a compound noun, or an idiom (for example, a single address information unit such as "1-2-3 D Town, ABC Ward, Tokyo"). The token sequence generation unit 102 may also generate a token sequence by combining the above-mentioned models and configurations of the tokenizer.

[0025] 3A shows an example of a token sequence generated from address information according to this embodiment. In this example, the token sequence generation unit 102 tokenizes address information 30, "abc Corporation, 1-2-3, D-machi, ABC-ku, Tokyo," into multiple tokens corresponding to hierarchical address classifications, and generates a token sequence 31. Specifically, the token sequence generation unit 102 tokenizes into multiple tokens corresponding to any of the following: a city, prefecture, or city classification (city, prefecture, prefecture tokens); a city, ward, county, or village classification (city, ward, county, or village tokens); a town or village classification (town or village tokens); a code classification representing at least one of a block code and a house number (code tokens); and a building classification (building name tokens), namely, "Tokyo," "ABC-ku," "D-machi," "1-chome, 2-banchi, 3-go," "Kaisho," and "abc," and generates a token sequence 31 arranged in this order. "Tokyo" is a token for the city, district, prefecture, "ABC Ward" is a token for the city, district, county, and village, "D Town" is a token for the town or village, "1-chome, 2-banchi, 3-go" is a code token, and "Inc." and "abc" are tokens for the building name. Note that depending on the address information, two or more tokens for the city, district, county, or village and / or two or more tokens for the town or village may be included.

[0026] FIG. 3B shows a conceptual diagram of a procedure for generating a token sequence using the tokenization model 111. The token sequence generation unit 102 generates a token sequence 31 by inputting address information 30 into the tokenization model 111. When the address information 30 is input, the tokenization model 111 is configured to output the address information 30 as a plurality of tokens and the position of each of the plurality of tokens in the address information 30. The token sequence generation unit 102 generates the token sequence 31 from the plurality of tokens and the position of each token output from the tokenization model 111. The tokenization model 111 is generated by a learning unit (not shown) of the information processing device 10 or another device learning a model using training data, and is stored in the learning model storage unit 110.

[0027] Reference address information 321 is real-world address information that starts with one of the address divisions: metropolitan area, prefecture area, or prefecture area. Reference token sequence 322 is a token sequence consisting of multiple reference tokens that have been accurately tokenized (divided) from reference address information 321 to correspond to the hierarchical address divisions. In the example of FIG. 3B, reference token sequence 322 is composed of "Tokyo," "CD Ward," "E Town," and "1-2-3," in that order from the beginning. If reference address information 321 includes a building name (building division), reference token sequence 322 has one or more tokens according to the building division. Position information 323 is information that indicates the position of each of the multiple reference tokens in reference token sequence 322 in reference address information 321. In the example of FIG. 3B, position information 323 sets the position of the first character (i.e., the leftmost character) of the first token in reference token sequence 322 to "0," and includes the first index and the last index for each token, counted per character. For example, "Tokyo" corresponds to the first to third characters in the reference token sequence 322, and the location information 323 is {0,2}. Similarly, in the reference token sequence 322, "CD-ku" corresponds to the fourth to sixth characters, and the location information 323 is {3,5}, "E-machi" corresponds to the seventh to eighth characters, and the location information 323 is {6,7}, and "1-2-3" corresponds to the ninth to thirteenth characters, and the location information 323 is {8,12}.

[0028] When the token sequence is generated by the token sequence generation unit 102, the similarity prediction unit 103 predicts the similarity between the token sequence and address information included in the address information list 20. As described above, the address information included in the address information list 20 is configured so that each address section is distinguished (identified), and the similarity prediction unit 103 predicts the similarity between one token sequence and one piece of address information from each token in the token sequence and each address section of the address information included in the address information list 20.

[0029] In this embodiment, the similarity prediction unit 103 predicts (derives) a similarity using a similarity prediction model 112 stored in the learning model storage unit 110. The similarity prediction model 112 is a machine-learned natural language processing model that is configured to predict and output a similarity (relationship) between two pieces of data, the first data and the second data, when the first data and the second data are input. In this embodiment, the first data is a token string, and the second data is any address information included in the address information list 20. The similarity output from the similarity prediction model 112 is expressed, for example, as a numerical value (also referred to as a similarity score). A smaller (or higher) numerical value indicates a higher similarity. The similarity prediction model 112 may be a trained model capable of evaluating the similarity between multiple token strings, or may be a trained model capable of evaluating the similarity between each of multiple token strings and a corresponding embedding vector (embedded representation, feature representation). The similarity prediction model 112 is, for example, a Siamese network / Siamese network and / or a Transformer-based natural language processing model. Alternatively, the similarity prediction model 112 may be, for example, a Transformer-based natural language processing model in which a pre-trained Bidirectional Encoder Representations from Transformers (BERT) and a network corresponding to a classifier connected to the BERT are fine-tuned.

[0030] When a Siamese network is used for the similarity prediction model 112, the first data and the second data are first coded in parallel and converted into feature representations. Then, the similarity between the first data and the second data is evaluated using the two converted feature representations by a distance function. The similarity is evaluated by, for example, Euclidean distance or cosine similarity.

[0031] The similarity prediction unit 103 may predict the similarity of the token string with all address information included in the address information list 20, but doing so would require a huge amount of calculation. Therefore, the similarity prediction unit 103 may select multiple candidates (hereinafter also referred to as matching address information candidates) from the address information list 20 based on the token string (or the address information acquired by the address information acquisition unit 101) and derive the similarity with the matching address information candidates. For example, the similarity prediction unit 103 may select, from the address information list 20, multiple pieces of address information having the same classification as the token string's classification of either metropolitan area, prefecture, city, ward, county, or village, or town or village. Then, the similarity prediction unit 103 may predict the similarity between the matching address information candidates and the token string. In this way, the similarity prediction unit 103 predicts the similarities between a plurality of pieces of address information included in the address information list 20 and the token string, and obtains a plurality of similarities.

[0032] The matching address identification unit 104 uses the multiple similarities obtained by the similarity prediction unit 103 to identify, from the address information list 20, address information that is most likely to match (can be considered to match) the token string as matching address information. That is, the matching address identification unit 104 identifies, as matching address information, address information that most closely matches the token string. For example, the matching address identification unit 104 identifies, as matching address information, address information with the highest similarity. If there are multiple pieces of address information with the highest similarity, the matching address identification unit 104 may identify any one of the address information as matching address information, for example, based on a predetermined rule.

[0033] The geocoding unit 105 queries the address point database 120 for the matched address information identified by the matched address identification unit 104, thereby identifying latitude and longitude information corresponding to the matched address information. Referring to FIG. 2, the geocoding unit 105 searches the latitude and longitude list 21 for latitude and longitude information corresponding to the matched address information in the address information list 20. The geocoding unit 105 determines the identified latitude and longitude information as the latitude and longitude information of the address information acquired by the address information acquisition unit 101. The geocoding unit 105 can output the determined latitude and longitude information to the outside.

[0034] [Hardware configuration of information processing device] 4 is a block diagram showing an example of a hardware configuration of the information processing device 10 according to this embodiment. The information processing device 10 can be implemented on a single or multiple computers, mobile devices, or any other processing platform. 4, the information processing device 10 is illustrated as being implemented in a single computer, but the information processing device 10 according to this embodiment may be implemented in a computer system including multiple computers. The multiple computers may be connected to each other via a wired or wireless network so as to be able to communicate with each other.

[0035] 4, the information processing device 10 may include a CPU (Central Processing Unit) 41, a ROM (Read Only Memory) 42, a RAM (Random Access Memory) 43, an HDD (Hard Disk Drive) 44, an input unit 45, a display unit 46, a communication I / F 47, and a system bus 48. The information processing device 10 may also include an external memory. The CPU 41 controls the overall operation of the information processing device 10, and controls each component (42 to 47) via a system bus 48, which is a data transmission path.

[0036] The ROM 42 is a non-volatile memory that stores control programs and the like required for the CPU 41 to execute processing. Note that the programs may be stored in a non-volatile memory such as the HDD 44 or an SSD (Solid State Drive) or an external memory such as a removable storage medium (not shown). The RAM 43 is a volatile memory and functions as the main memory, work area, etc. of the CPU 41. That is, when executing processing, the CPU 41 loads necessary programs, etc. from the ROM 42 into the RAM 43 and executes the programs, etc. to realize various functional operations. The learning model storage unit 110 and the address point database 120 (when the address point database 120 is provided in the information processing device 10) shown in FIG. 1 can be configured in the RAM 43.

[0037] The HDD 44 stores, for example, various data and information required when the CPU 41 performs processing using a program. The HDD 44 also stores, for example, various data and information obtained when the CPU 41 performs processing using a program. The input unit 45 is composed of a keyboard and a pointing device such as a mouse. The display unit 46 is configured by a monitor such as a liquid crystal display (LCD), etc. The display unit 46 may be configured in combination with the input unit 45 to function as a GUI (Graphical User Interface).

[0038] The communication I / F 47 is an interface that controls communication between the information processing device 10 and an external device. The communication I / F 47 provides an interface with a network and executes communication with the external device via the network. Various data, parameters, and the like are transmitted and received between the information processing device 10 and the external device via the communication I / F 47. In this embodiment, the communication I / F 47 may execute communication via a wired local area network (LAN) or a dedicated line that conforms to a communication standard such as Ethernet (registered trademark). However, the network that can be used in this embodiment is not limited to this and may be configured as a wireless network. This wireless network includes wireless personal area networks (PANs) such as Bluetooth (registered trademark), ZigBee (registered trademark), and UWB (Ultra Wide Band). It also includes wireless local area networks (LANs) such as Wi-Fi (Wireless Fidelity) (registered trademark) and wireless metropolitan area networks (MANs) such as WiMAX (registered trademark). It also includes wireless wide area networks (WANs) such as 4G and 5G defined by 3GPP (Third Generation Partnership Project) (registered trademark). The network may be any network that connects devices to each other so that they can communicate with each other, and the communication standard, scale, and configuration are not limited to those described above.

[0039] At least some of the functions of the information processing device 10 shown in Fig. 1 can be realized by the CPU 21 in the information processing device 10 executing a program. However, at least some of the functions of the information processing device 10 shown in Fig. 1 may be operated as dedicated hardware. In this case, the dedicated hardware may operate under the control of the CPU 41.

[0040] [Geocoding process flow] Next, the geocoding process according to this embodiment will be described with reference to Fig. 5. Fig. 5 is a flowchart of the geocoding process executed by the information processing device 10. The process shown in Fig. 5 can be performed by the CPU 41 executing a control program stored in the information processing device 10.

[0041] In S51, the address information acquisition unit 101 acquires address information to be geocoded (hereinafter referred to as target address information). The address information acquisition unit 101 can acquire the target address information from information input by an operator (user) or a predetermined program. As described above, the target address information is composed of a plurality of hierarchical address divisions. The address divisions may include, but are not limited to, any one of a city, a province, a prefecture, a city, a ward, a county, or a village, a town or a village division, and a code division representing at least one of a block code and a house number.

[0042] In S52, the token sequence generation unit 102 generates a token sequence by tokenizing the target address information into a plurality of tokens corresponding to hierarchical address categories. As described with reference to FIG. 3A, the token sequence generation unit 102 generates a token sequence (e.g., a token sequence 31) from the target address information (e.g., address information 30). As described with reference to FIG. 3B, the token sequence generation unit 102 can generate a token sequence using a tokenization model 111 stored in the learning model storage unit 110. Specifically, the token sequence generation unit 102 inputs the target address information into the tokenization model 111 and acquires a plurality of tokens and the positions of each of the plurality of tokens in the target address information. Then, the token sequence generation unit 102 generates a token sequence from the plurality of tokens and the positions of each of the tokens. Alternatively, the token sequence generation unit 102 can generate a token sequence based on a rule.

[0043] In S53, the similarity prediction unit 103 predicts the similarity between the address information included in the address information list 20 in the address point database 120 and the token sequence generated in S52. As described above, in this embodiment, the similarity prediction unit 103 predicts the similarity between the address information included in the address information list 20 and the token sequence using the similarity prediction model 112 stored in the learning model storage unit 110, and obtains multiple similarities.

[0044] In S54, the matching address identification unit 104 uses the multiple similarities acquired by the similarity prediction unit 103 to identify, as matching address information, address information that is most likely to match (can be considered to match) the token string generated in S52 from the address information included in the address information list 20. For example, the matching address identification unit 104 identifies, from among the address information included in the address information list 20, the address information with the highest similarity acquired in S53 as matching address information.

[0045] In S55, the geocoding unit 105 determines the latitude and longitude information corresponding to the matching address information identified in S54 from the address point database 120 as the latitude and longitude information of the target address information. The geocoding unit 105 may output the determined latitude and longitude information to the outside. This output may be any output process, such as output (distribution) to an external device via a communication I / F (communication I / F 27 in FIG. 4), or display output on the display unit 46.

[0046] In this way, the information processing device 10 according to this embodiment divides target address information into multiple tokens corresponding to hierarchical address categories to generate a token sequence, and identifies address information from the address information list 20 that has the highest similarity to the token sequence. The information processing device 10 then determines the latitude and longitude information of the target address information by querying the address point database 120 for the identified address information (matching address information). Here, when the tokenization model 111 is used to generate a token sequence, it is possible to generate a token sequence more quickly and with higher accuracy than manually generating a token sequence. Furthermore, by predicting the similarity between a token sequence and address information included in the address information list 20 using the similarity prediction model 112, it is possible to predict the similarity with address information included in the address information list 20 with higher accuracy, even for a token sequence consisting of a large number of tokens or a token that includes tokens with some character errors. The matching address information identified from the predicted similarity is actually existing address information. Even if the target address information is at least partially incorrect, the address information that is most likely to match the target address information (that can be considered to match) is identified as the matching address information. The matching address information is converted into latitude and longitude information using the address point database 120. This series of processes enables highly accurate geocoding.

[0047] In this embodiment, the processing of the similarity prediction unit 103 and the matching address identification unit 104 is performed separately, but the matching address identification unit 104 may be configured to perform the processing of the similarity prediction unit 103. For example, the matching address identification unit 104 may predict the similarity between the address information included in the address information list 20 and the target address information, and identify the address information with the highest similarity from the address information list 20 as the matching address information.

[0048] [Variation 1] In the above embodiment, the token sequence generation unit 102 generated a token sequence using all of the address information. That is, referring to FIG. 3A , the token sequence generation unit 102 generated a token sequence 31 consisting of "Tokyo," "ABC Ward," "D Town," "1-2-3," "Inc.," and "abc" from address information 30, "1-2-3 D Town, ABC Ward, Tokyo." In this modification, the token sequence generation unit 102 deletes (omits) one or more tokens at the end of the generated token sequence to generate a corrected token sequence (an incomplete token sequence). That is, address information has a hierarchical structure, arranged in order from major divisions (higher) to minor divisions (lower), and the token sequence generation unit 102 generates a corrected token sequence by deleting the latter minor divisions from the token sequence.

[0049] FIG. 6 shows an example of a token sequence generated from address information according to this modification. As in FIG. 3A, the address information 30 is "abc Co., Ltd., 1-2-3, D-machi, ABC-ku, Tokyo," and the token sequence generation unit 102 generates a token sequence 31 including multiple tokens from the address information 30 according to the hierarchical address classification. Furthermore, the token sequence generation unit 102 deletes one or more tokens at the end of the multiple tokens included in the token sequence 31 to generate a modified token sequence 60. In this modification, the one or more tokens at the end are one or more tokens after the building classification. Therefore, in the example of FIG. 6, the token sequence generation unit 102 deletes one or more tokens after the building classification in the token sequence 31 to generate the modified token sequence 60. That is, the token sequence generation unit 102 deletes two tokens, "abc" and "abc," from the token sequence 31 to generate the modified token sequence 60 (a token sequence consisting of "Tokyo," "BC-ku," "D-machi," and "1-2-3"). In addition, when the modified token string is generated by deleting one or more tokens after the building division, if the token string does not include the building division token, the modified token string does not need to be generated.

[0050] After the token sequence generation unit 102 generates the corrected token sequence, the information processing device 10 performs the same processing as in the above embodiment using the corrected token sequence. That is, the similarity prediction unit 103 predicts the similarity between the address information included in the address information list 20 and the corrected token sequence. The similarity prediction procedure is the same as in the above embodiment, and is performed using the similarity prediction model 112 stored in the learning model storage unit 110, and multiple similarities are obtained. The matching address identification unit 104 uses the multiple similarities obtained by the similarity prediction unit 103 to identify, as matching address information, address information from the address information list 20 that is most likely to match (can be considered to match) the corrected token sequence. The geocoding unit 105 queries the address point database 120 for the matching address information identified by the matching address identification unit 104, and determines the latitude and longitude information of the matching address information as the latitude and longitude information of the target address information.

[0051] In this way, by identifying matching address information using the correction token sequence and identifying latitude and longitude information from the identified matching address information, it is possible to obtain highly accurate latitude and longitude information for the target address information even if the building name or information after the building name is incorrect in the target address information. Also, if the address list 20 in the address point database 120 stores incomplete address information in which the address after the building name has been deleted, an address with a higher degree of similarity can be identified as matching address information by using the correction token sequence.

[0052] [Variation 2] As Modification 2, an embodiment will be described in which matching address information is identified from the address information list 20 using a token sequence generated from address information and a modified token sequence generated from the token sequence according to Modification 1. The token sequence generation unit 102 generates a token sequence and a modified token sequence from the address information acquired by the address information acquisition unit 101. Referring to FIG. 6, the token sequence generation unit 102 generates a token sequence 31 and a modified token sequence 60.

[0053] Next, the similarity prediction unit 103 predicts and obtains multiple similarities for each of the token sequence and the corrected token sequence. The similarity prediction procedure is as described in the above embodiment. Next, the matching address identification unit 104 selects, from the address information list 20, address information having the highest similarity to the token sequence as first address information. Furthermore, the matching address identification unit 104 selects, from the address information list 20, address information having the highest similarity to the corrected token sequence as second address information. FIG. 7 shows examples of the first address information and the second address information based on FIG. 6. In FIG. 7, the first address information 70 is, of the address information included in the address information list 20, address information having the highest similarity to the token sequence 31. The second address information 71 is, of the address information included in the address information list 20, address information having the highest similarity to the corrected token sequence 60.

[0054] The matching address identification unit 104 then compares the first address information with the second address information, and if they match, identifies one of the address information as the matching address information. On the other hand, if the first address information and the second address information are different, the matching address identification unit 104 identifies the second address information, i.e., the address information that has the highest similarity to the corrected token sequence, as the matching address information. Alternatively, if the first address information and the second address information are different, the matching address identification unit 104 may identify the first address information, i.e., the address information that has the highest similarity to the token sequence, as the matching address information. Thereafter, the geocoding unit 105 queries the address point database 120 for the matching address information identified by the matching address identification unit 104, and determines the latitude and longitude information of the matching address information as the latitude and longitude information of the target address information.

[0055] Alternatively, if the first address information and the second address information are different, the user may identify either of the address information as the matching address information. For this purpose, for example, if the first address information and the second address information are different, the matching address identification unit 104 may output the first address information and the second address information to an external device to allow the user to identify the matching address information. As one form of output, the matching address identification unit 104 may output the target address information, the first address information, and the second address information to the display unit 46, and identify the first address information or the second address information selected based on a user operation as the matching address information. The geocoding unit 105 then queries the address point database 120 for the matching address information identified by the matching address identification unit 104, thereby determining the latitude and longitude information of the matching address information as the latitude and longitude information of the target address information.

[0056] In this manner, in this modification, the first address information and the second address information are identified from the address information list 20 using the similarities obtained for the token sequence and the corrected token sequence, and matching address information is identified from the first address information and the second address information. If the first address information and the second address information are different, either address information may be identified as the matching address information, or it may be identified by the user. By using two types of similarities, matching address information can be identified with high accuracy from the target address information.

[0057] Furthermore, when the first address information and the second address information are different and matching address information is specified by the user, the similarity prediction unit 103 may predict the similarity based on the first address information or the second address information that is specified more frequently. For example, if the number of times the second address information is specified is greater than the number of times the first address information is specified among the predetermined number of times matching address information is specified by the user between the first address information and the second address information, it can be said that the reliability of the second address information is high. Therefore, in this case, for new target address information, the similarity prediction unit 103 may predict the similarity using the corrected token sequence instead of the token sequence.

[0058] [Variation 3] In the above embodiment, the similarity prediction unit 103 predicted the similarity between the entire token string or corrected token string and the address information included in the address information list 20. Alternatively, the similarity prediction unit 103 may divide the token string and predict the similarity for each divided token. The following explanation will be given using a token string as an example, but the same explanation can also be applied to a corrected token string.

[0059] As a first example of this modification, the similarity prediction unit 103 divides a token string into an address text token string including multiple tokens before the code token, and a code token string including one or more tokens after the code token. FIG. 8 shows examples of an address text token string and a code token string according to this modification. As in FIG. 3A, the token string 31 is composed of "Tokyo," "BC Ward," "D Town," "1-2-3," "Inc.", and "abc." The code token in the token string 31 is "1-2-3." Therefore, the similarity prediction unit 103 divides the token string 31 into an address text token string 80 before "1-2-3" (a token string consisting of "Tokyo," "BC Ward," and "D Town") and a code token string 81 after "1-2-3" (a token string consisting of "1-2-3," "Inc.", and "abc"). When the corrected token sequence 60 shown in FIG. 6 is used, the similarity prediction unit 103 divides the corrected token sequence 60 into an address text token sequence before "1-2-3" and a code token consisting of "1-2-3".

[0060] The similarity prediction unit 103 predicts the similarity between address information included in the address information list 20 and an address text token string as an address text similarity. Furthermore, the similarity prediction unit 103 predicts the similarity between address information included in the address information list 20 and a code token string as a code similarity. Here, since the address information included in the address information list 20 is configured so that each address segment is distinguished (identified), the address text similarity and code similarity may be predicted by dividing the address information included in the address information list 20 into address text information before the code segment and address code information after the code segment. In other words, the similarity prediction unit 103 may predict the address text similarity between the address text information and the address text token string and the code similarity between the address code information and the code token string.

[0061] Next, the matching address identification unit 104 identifies matching address information based on the address text similarity and code similarity from the address information list 20. Here, the matching address identification unit 104 may identify, as matching address information, address information with the highest text similarity and code similarity from the address information list 20. Alternatively, the matching address identification unit 104 may select, from the address information list 20, a predetermined number of address information with high text similarity, and identify, as matching address information, address information with the highest code similarity to the selected address information.

[0062] As a second example of this modification, the similarity prediction unit 103 may predict the similarity for each token included in the token sequence. For example, the similarity measurement unit 103 may use a token sequence 31 consisting of "Tokyo," "ABC Ward," "D Town," "1-2-3," "Inc.", and "abc" as shown in FIG. 3A to predict and acquire the similarity for each token in this order (hereinafter referred to as "per-token similarity"). In this case, the matching address identification unit 104 may identify matching address information based on the per-token similarity. For example, if the lower the numerical value (similarity score), the higher the similarity, the matching address identification unit 104 may identify address information with the lowest total value of per-token similarity as the matching address information.

[0063] As described above, according to this modification, the token sequence (or modified token sequence) generated by the token sequence generation unit 102 is divided, and the similarity with the address information included in the address information list 20 is predicted for each divided unit. This makes it possible to evaluate the similarity in smaller units, and to identify matching address information from the target address information with high accuracy.

[0064] Although certain embodiments have been described above, these embodiments are merely examples and are not intended to limit the scope of the present invention. The devices and methods described herein may be embodied in forms other than those described above. Furthermore, appropriate omissions, substitutions, and modifications may be made to the above-described embodiments without departing from the scope of the present invention. Such omissions, substitutions, and modifications are included within the scope of the claims and their equivalents, and belong to the technical scope of the present invention.

[0065] The disclosure of this embodiment includes the following configuration. [1] An information processing device having: a generation unit that tokenizes target address information into multiple tokens corresponding to hierarchical address classifications to generate a token sequence; a prediction unit that predicts the similarity between address information included in a list of predetermined address information and the token sequence; an identification unit that identifies address information from the list that has the highest similarity to the token sequence as matching address information; and a determination unit that determines the latitude and longitude information corresponding to the matching address information as the latitude and longitude information of the target address information from a database that stores the list and latitude and longitude information corresponding to the address information included in the list.

[0066] [2] The information processing device described in [1], wherein the generation unit generates the token sequence by inputting the target address information into a machine learning model trained for natural language processing.

[0067] [3] The information processing device described in [2], wherein the machine learning model is configured to output the plurality of tokens and the position of each of the plurality of tokens in the target address information from the target address information, and the generation unit generates the token sequence from the plurality of tokens and the position of each of the tokens.

[0068] [4] The information processing device according to any one of [1] to [3], wherein the prediction unit predicts the similarity between the address information included in the list and the token sequence using a trained machine learning model.

[0069] [5] The information processing device described in [4], wherein the prediction unit selects multiple matching address information candidates from the list based on the token sequence, predicts the similarity between the matching address information candidates and the token sequence, and the identification unit identifies the candidate among the matching address information candidates that has the highest similarity to the token sequence as the matching address information.

[0070] [6] An information processing device according to any one of [1] to [5], wherein the token sequence includes, from the beginning, tokens for prefectures, cities, wards, counties, and villages, tokens for towns or villages, and tokens for codes representing at least one of block codes and house numbers.

[0071] [7] The information processing device described in [6], wherein, when the token sequence includes a building name token following the code token, the generation unit generates a modified token sequence by deleting one or more tokens following the building name token from the token sequence, the prediction unit predicts the similarity between the address information included in the list and the modified token sequence, and the identification unit identifies, from the list, the address information that has the highest similarity to the modified token sequence as the matching address information.

[0072] [8] An information processing device as described in [7], further comprising a first selection unit that selects, from the list, address information that has the highest similarity to the token sequence as first address information, and a second selection unit that selects, from the list, address information that has the highest similarity to the corrected token sequence as second address information, wherein the identification unit identifies the second address information as the matching address information when the first address information and the second address information are different.

[0073] [9] An information processing device as described in [7], further comprising a first selection unit that selects, from the list, address information that has the highest similarity to the token sequence as first address information, and a second selection unit that selects, from the list, address information that has the highest similarity to the corrected token sequence as second address information, wherein the identification unit identifies the first address information or the second address information selected by the user as the matching address information when the first address information and the second address information are different.

[0074]

[10] The information processing device described in [6], further comprising a splitting unit that splits the token string into an address text token string including multiple tokens before the code token and a code token string including one or more tokens after the code token, wherein the prediction unit predicts the similarity between each piece of address information in the list and the address text token string and the code token as address text similarity and code similarity, respectively, and the identification unit identifies the matching address information from the list based on the address text similarity and the code similarity.

[0075]

[11] The information processing device according to

[10] , wherein the identification unit identifies, from the list, address information having the highest address text similarity and code similarity as the matching address information. [Explanation of symbols]

[0076] 10: Information processing device, 101: Address information acquisition unit, 102: Token string generation unit, 103: Similarity prediction unit, 104: Matching address identification unit, 105: Geocoding unit, 110: Learning model storage unit, 111: Tokenization model, 112: Similarity prediction model, 120: Address point database

Claims

1. a generation unit that generates a token string by tokenizing the target address information into a plurality of tokens corresponding to hierarchical address categories; a prediction unit that predicts a similarity between address information included in a predetermined address information list and the token sequence; an identifying unit that identifies, from the list, address information that has the highest similarity to the token sequence as matching address information; a determination unit that determines, from a database that stores the list and latitude and longitude information corresponding to the address information included in the list, the latitude and longitude information corresponding to the matched address information as the latitude and longitude information of the target address information; An information processing device having the above.

2. The information processing device according to claim 1 , wherein the generating unit generates the token sequence by inputting the target address information into a machine learning model trained for natural language processing.

3. the machine learning model is configured to output, from the target address information, the plurality of tokens and a position of each of the plurality of tokens in the target address information; the generating unit generates the token sequence from the plurality of tokens and the positions of the respective tokens. The information processing device according to claim 2 .

4. The information processing device according to claim 1 , wherein the prediction unit predicts the similarity between the address information included in the list and the token sequence using a trained machine learning model.

5. the prediction unit selects a plurality of matching address information candidates from the list based on the token sequence, and predicts a similarity between the matching address information candidates and the token sequence; The information processing apparatus according to claim 4 , wherein the specifying unit specifies, from among the matching address information candidates, a candidate having the highest similarity to the token sequence as the matching address information.

6. 2. The information processing device according to claim 1, wherein the token string includes, from the beginning, tokens for prefectures, cities, wards, counties, and villages, tokens for towns or villages, and tokens for codes representing at least one of block codes and house numbers.

7. When the token string includes a building name token following the code token, the generation unit generates a modified token string by deleting one or more tokens following the building name token from the token string, the prediction unit predicts a similarity between the address information included in the list and the corrected token sequence; The information processing apparatus according to claim 6 , wherein the identifying unit identifies, from the list, address information having the highest similarity to the corrected token sequence as the matching address information.

8. a first selection unit that selects, from the list, address information having the highest similarity to the token sequence as first address information; a second selection unit that selects, from the list, address information having the highest similarity to the corrected token sequence as second address information; The information processing device according to claim 7 , wherein the specifying unit specifies the second address information as the matching address information when the first address information and the second address information are different.

9. a first selection unit that selects, from the list, address information having the highest similarity to the token sequence as first address information; a second selection unit that selects, from the list, address information having the highest similarity to the corrected token sequence as second address information; 8. The information processing device according to claim 7, wherein the identification unit identifies the first address information or the second address information selected by the user as the matching address information when the first address information and the second address information are different.

10. a dividing unit that divides the token string into an address text token string including a plurality of tokens before the code token and a code token string including one or more tokens after the code token, the prediction unit predicts a similarity between each piece of address information in the list and the address text token string and a similarity between each piece of address information and the code token as an address text similarity and a code similarity, respectively; The information processing device according to claim 6 , wherein the identifying unit identifies the matching address information from the list based on the address text similarity and the code similarity.

11. The information processing device according to claim 10 , wherein the specifying unit specifies, from the list, address information having the highest address text similarity and the highest code similarity as the matching address information.

12. An information processing method executed by an information processing device, tokenizing the target address information into a plurality of tokens corresponding to hierarchical address segments to generate a token sequence; predicting a similarity between address information included in a predetermined list of address information and the token sequence; Identifying, from the list, address information having the highest similarity to the token string as matching address information; determining, from a database storing the list and latitude and longitude information corresponding to the address information included in the list, the latitude and longitude information corresponding to the matched address information as the latitude and longitude information of the target address information; An information processing method, including:

13. An information processing program for causing a computer to execute information processing, the program including: a generation process of tokenizing the target address information into a plurality of tokens corresponding to hierarchical address categories to generate a token string; a prediction process for predicting a similarity between address information included in a predetermined address information list and the token sequence; a process of identifying, from the list, address information having the highest similarity to the token sequence as matching address information; and a determination process of determining, from a database storing the list and latitude and longitude information corresponding to the matched address information, as the latitude and longitude information of the target address information, Information processing program.

Citation Information

Patent Citations

  • Address-latitude / longitude conversion apparatus and geographical information system using the same

    JP2016091315A