Calculation system, calculation method, calculation program, and calculation device
Patent Information
- Application Number
- PCT/JP2024/026238
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-08-30
- Filing Date
- 2024-07-23
- Publication Date
- 2025-03-06
Smart Images

Figure JP2024026238_06032025_PF_FP_ABST
Abstract
Description
Calculation system, calculation method, calculation program, and calculation device
[0001] The present invention relates to a computing system, a computing method, a computing program, and a computing device.
[0002] In recent years, many companies have begun to use the personal information of their customers for marketing purposes, such as analyzing purchasing trends by customer segment and using this information for sales promotions.
[0003] As a technology for utilizing customer personal information, for example, Cited Document 1 discloses a marketing device that includes a customer information collection means that collects sales information from customer POS data and creates customer aggregate data that links the collected customer sales information with the customer's personal information, and a segmentation analysis means that clusters the customers into segments based on their lifestyles using non-hierarchical clustering and hierarchical clustering based on the customer aggregate data.
[0004] JP 2014-48780 A
[0005] Since there is a limit to the amount of personal information a company can possess, there is a need to use not only the personal information it possesses, but also the personal information possessed by other companies. However, from the perspective of personal information protection, it is difficult to use personal information possessed by other companies.
[0006] The present invention has been made in view of the above-mentioned problems, and has as its object to make it possible to safely and easily use personal information owned by multiple owners.
[0007] A computing system according to one embodiment includes a first terminal device, a second terminal device, a user terminal, and a computing device, wherein the first terminal device converts first personal information including first identification information and first attribute information into first non-identifiable processed information, the second terminal device converts second personal information including second identification information and second attribute information into second non-identifiable processed information, the computing device generates matched information including third identification information and third attribute information by matching the first non-identifiable processed information and the second non-identifiable processed information, the user terminal accepts a target variable, the constraint conditions, and explanatory variables selected by a user from the third attribute information, the computing device searches for a combination of explanatory variables for which the target variable satisfies the constraint conditions from the matched information, and the user terminal displays the combination of explanatory variables.
[0008] According to one embodiment, personal information owned by multiple owners can be used safely and easily.
[0009] 1 is a diagram showing an example of the configuration of a computing system 1000. FIG. 1 is a diagram showing an example of the hardware configuration of a computing device 1. FIG. 2 is a diagram showing an example of the hardware configuration of a terminal device 2. FIG. 3 is a diagram showing an example of the hardware configuration of a user terminal 3. FIG. 4 is a diagram showing an example of the functional configuration of a computing device 1. FIG. 5 is a diagram showing an example of the functional configuration of a terminal device 2. FIG. 6 is a diagram showing an example of personal information. FIG. 7 is a diagram showing an example of anonymized processed information. FIG. 8 is a diagram showing an example of the functional configuration of a user terminal 3. A flowchart showing an example of processing executed by the computing system 1000. FIG. 9 is a diagram showing an example of matching information 122. FIG. 10 is a diagram showing an example of a search condition input screen sc1. FIG. 11 is a diagram showing an example of a search method. FIG. 12 is a diagram showing an example of a search result display screen sc2.
[0010] Hereinafter, each embodiment of the present invention will be described with reference to the accompanying drawings. Note that, in the description of the specification and drawings relating to each embodiment, components having substantially the same functional configuration are designated by the same reference numerals, and redundant description will be omitted.
[0011] <System Configuration> First, an overview of the computing system 1000 according to this embodiment will be described. The computing system 1000 is an information processing system that enables all of the personal information owned by multiple owners to be lawfully used by converting the personal information owned by multiple owners into non-identifiable processed information and then cross-checking the information.
[0012] Personal information is information about a living individual that can identify a specific individual based on the name, date of birth, and other descriptions contained in that information. Personal information includes identification information and attribute information.
[0013] Identification information is information that identifies an individual. Examples of identification information include, but are not limited to, a name, a telephone number, an email address, or a facial image. Personal information may include multiple pieces of identification information.
[0014] Attribute information is information that indicates the attributes of an individual. Examples of attribute information include, but are not limited to, age, gender, address, occupation, and purchased products. Personal information may include multiple pieces of attribute information.
[0015] De-identified processed information is information that has been de-identified from personal information, i.e., information that has been processed so that a specific individual cannot be identified unless it is at least compared with other information. De-identified processed information can be personal information or non-personal information. De-identified processed information that is personal information is, for example, pseudonymized information. De-identified processed information that is non-personal information is, for example, pseudonymized information, anonymously processed information, personal-related information, or other non-personal information.
[0016] Pseudonymized information is information about an individual that has been obtained by processing personal information so that a specific individual cannot be identified unless it is compared with other information.
[0017] Anonymously processed information is information about an individual that is obtained by processing personal information so that a specific individual cannot be identified, and the personal information cannot be restored.
[0018] Personal information refers to information about a living individual that does not fall under personal information, pseudonymized information, or anonymously processed information.
[0019] FIG. 1 is a diagram illustrating an example of the configuration of a computing system 1000. As shown in FIG. 1, the computing system 1000 includes a computing device 1, a terminal device 2A, a terminal device 2B, and a user terminal 3, which are communicatively connected to each other via a network N. Hereinafter, the terminal devices 2A and 2B may be collectively referred to as terminal devices 2. The network N may be, for example, a wired local area network (LAN), a wireless LAN, the Internet, a public line network, a mobile data communication network, or a combination thereof. In the example of FIG. 1, the computing system 1000 includes one computing device 1 and one user terminal 3, but may also include multiple computing devices 1 and one user terminal 3. In the example of FIG. 1, the computing system 1000 includes two terminal devices 2, but may also include one or three or more terminal devices.
[0020] The computing device 1 is an information processing device that performs predetermined calculations using non-identifiable processed information. The computing device 1 is, for example, but is not limited to, a personal computer (PC), a smartphone, a tablet terminal, a server device, or a microcomputer.
[0021] The terminal device 2 is an information processing device that converts personal information into non-identifiable processed information and transmits it to the computing device 1. The terminal device 2 is, for example, but is not limited to, a PC, a smartphone, a tablet terminal, a server device, or a microcomputer. The terminal device 2A corresponds to the first terminal device in the claims, and the terminal device 2B corresponds to the second terminal device in the claims.
[0022] The user terminal 3 is an information processing device used by a user of the computing system 1000. The user may or may not be the owner of personal information. The user terminal 3 is, for example, a PC, a smartphone, or a tablet terminal, but is not limited to these. The user terminal 3 may function as the terminal device 2.
[0023] <Hardware Configuration of Computing Device 1> Next, a description will be given of the hardware configuration of the computing device 1. Fig. 2 is a diagram showing an example of the hardware configuration of the computing device 1. As shown in Fig. 2, the computing device 1 includes a processor 101, a memory 102, a storage 103, a communication I / F 104, an input device 105, an output device 106, and a drive device 107, which are interconnected via a bus B1.
[0024] The processor 101 controls each component of the computing device 1 and realizes the functions of the computing device 1 by expanding into the memory 102 and executing various programs, including an OS (Operating System) and computing programs, stored in the storage 103. The processor 101 is, for example, but not limited to, a CPU, an MPU (Micro Processing Unit), a GPU (Graphics Processing Unit), an ASIC (Application Specific Integrated Circuit), or a DSP (Digital Signal Processor).
[0025] The memory 102 is, for example, a read-only memory (ROM), a random access memory (RAM), or a combination thereof. The ROM is, for example, a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a combination thereof. The RAM is, for example, but not limited to, a dynamic random access memory (DRAM) or a static random access memory (SRAM).
[0026] The storage 103 stores various programs and data, including an OS and a computing program. The storage 103 is, for example, a flash memory, a hard disk drive (HDD), a solid state drive (SSD), or a storage class memory (SCM), but is not limited to these.
[0027] The communication I / F 104 is an interface for connecting the computing device 1 to an external device via the network N and controlling communication. The communication I / F 104 is, for example, Bluetooth (registered trademark), Wi-Fi (registered trademark), ZigBee (registered trademark), or Ethernet (registered trademark), but is not limited to these.
[0028] The input device 105 is a device for inputting information to the computing device 1. The input device 105 is, for example, a mouse, a keyboard, a touch panel, a microphone, a scanner, a photographing device (camera), various sensors, or an operation button, but is not limited to these.
[0029] The output device 106 is a device for outputting information from the computing device 1. The output device 106 is, for example, a display device, a projector, a printer, a speaker, or a vibrator, but is not limited to these.
[0030] The drive device 107 is a device that reads and writes data from and to the recording medium 108. The drive device 107 is, for example, but not limited to, a magnetic disk drive, an optical disk drive, a magneto-optical disk drive, or an SD card reader. The recording medium 108 is, for example, but not limited to, a CD (Compact Disc), a DVD (Digital Versatile Disc), a FD (Floppy Disk), an MO (Magneto-Optical Disk), a BD (Blu-ray (registered trademark) Disc), a USB (registered trademark) memory, or an SD card.
[0031] In this embodiment, the calculation program may be written to memory 102 or storage 103 during the manufacturing stage of the calculation device 1, may be provided to the calculation device 1 via the network N, or may be provided to the calculation device 1 via a non-transitory computer-readable recording medium such as recording medium 108.
[0032] <Hardware Configuration of Terminal Device 2> Next, a description will be given of the hardware configuration of the terminal device 2. Fig. 3 is a diagram showing an example of the hardware configuration of the terminal device 2. As shown in Fig. 3, the terminal device 2 includes a processor 201, a memory 202, a storage 203, a communication I / F 204, an input device 205, an output device 206, and a drive device 207, which are interconnected via a bus B2.
[0033] The processor 201 controls each component of the terminal device 2 and realizes the functions of the terminal device 2 by expanding into the memory 202 and executing various programs, including an OS and a calculation program, stored in the storage 203. The processor 201 is, for example, but is not limited to, a CPU, an MPU, a GPU, an ASIC, or a DSP.
[0034] The memory 202 may be, for example, a ROM, a RAM, or a combination thereof. The ROM may be, for example, a PROM, an EPROM, an EEPROM, or a combination thereof. The RAM may be, for example, a DRAM or an SRAM, but is not limited to these.
[0035] The storage 203 stores various programs including an OS and a computing program, and data. The storage 203 is, for example, a flash memory, an HDD, an SSD, or an SCM, but is not limited to these.
[0036] The communication I / F 204 is an interface for connecting the terminal device 2 to an external device via the network N and controlling communication. The communication I / F 204 is, for example, Bluetooth (registered trademark), Wi-Fi (registered trademark), ZigBee (registered trademark), or Ethernet (registered trademark), but is not limited to these.
[0037] The input device 205 is a device for inputting information to the terminal device 2. The input device 205 is, for example, a mouse, a keyboard, a touch panel, a microphone, a scanner, a photographing device (camera), various sensors, or an operation button, but is not limited to these.
[0038] The output device 206 is a device for outputting information from the terminal device 2. The output device 206 is, for example, a display device (display), a projector, a printer, a speaker, or a vibrator, but is not limited to these.
[0039] The drive device 207 is a device that reads and writes data from and to the recording medium 208. The drive device 207 is, for example, but not limited to, a magnetic disk drive, an optical disk drive, a magneto-optical disk drive, or an SD card reader. The recording medium 208 is, for example, but not limited to, a CD, a DVD, a FD, an MO, a BD (Blu-ray (registered trademark) Disc), a USB (registered trademark), or an SD card.
[0040] In this embodiment, the calculation program may be written into memory 202 or storage 203 during the manufacturing stage of terminal device 2, or may be provided to terminal device 2 via network N, or may be provided to terminal device 2 via a non-transitory computer-readable recording medium such as recording medium 208.
[0041] <Hardware Configuration of User Terminal 3> Next, a description will be given of the hardware configuration of the user terminal 3. Fig. 4 is a diagram showing an example of the hardware configuration of the user terminal 3. As shown in Fig. 4, the user terminal 3 includes a processor 301, a memory 302, a storage 303, a communication I / F 304, an input device 305, an output device 306, and a drive device 307, which are interconnected via a bus B3.
[0042] The processor 301 controls each component of the user terminal 3 and realizes the functions of the user terminal 3 by expanding into the memory 302 and executing various programs, including the OS and calculation programs, stored in the storage 303. The processor 301 is, for example, but is not limited to, a CPU, an MPU, a GPU, an ASIC, or a DSP.
[0043] The memory 302 may be, for example, a ROM, a RAM, or a combination thereof. The ROM may be, for example, a PROM, an EPROM, an EEPROM, or a combination thereof. The RAM may be, for example, a DRAM or an SRAM, but is not limited to these.
[0044] The storage 303 stores various programs including an OS and a computing program, and data. The storage 303 is, for example, a flash memory, an HDD, an SSD, or an SCM, but is not limited to these.
[0045] The communication I / F 304 is an interface for connecting the user terminal 3 to an external device via the network N and controlling communication. The communication I / F 304 is, for example, Bluetooth (registered trademark), Wi-Fi (registered trademark), ZigBee (registered trademark), or Ethernet (registered trademark), but is not limited to these.
[0046] The input device 305 is a device for inputting information to the user terminal 3. The input device 305 is, for example, a mouse, a keyboard, a touch panel, a microphone, a scanner, a photographing device (camera), various sensors, or an operation button, but is not limited to these.
[0047] The output device 306 is a device for outputting information from the user terminal 3. The output device 306 is, for example, but is not limited to, a display device (display), a projector, a printer, a speaker, or a vibrator. The user terminal 3 includes a display device 306D as the output device 306.
[0048] The drive device 307 is a device that reads and writes data from and to the recording medium 308. The drive device 307 is, for example, but not limited to, a magnetic disk drive, an optical disk drive, a magneto-optical disk drive, or an SD card reader. The recording medium 308 is, for example, but not limited to, a CD, a DVD, a FD, an MO, a BD (Blu-ray (registered trademark) Disc), a USB (registered trademark), or an SD card.
[0049] In this embodiment, the calculation program may be written into memory 302 or storage 303 during the manufacturing stage of the user terminal 3, may be provided to the user terminal 3 via the network N, or may be provided to the user terminal 3 via a non-transitory computer-readable recording medium such as recording media 308.
[0050] <Functional Configuration of Computing Device 1> Next, a description will be given of the functional configuration of the computing device 1. Fig. 5 is a diagram showing an example of the functional configuration of the computing device 1. As shown in Fig. 5, the computing device 1 includes a communication unit 11, a storage unit 12, and a control unit 13.
[0051] The communication unit 11 is realized by the communication I / F 104. The communication unit 11 transmits and receives information between the terminal device 2 and the user terminal 3 via the network N. The communication unit 11 receives non-identifiable processed information from the terminal device 2 and transmits search results and calculation results to the user terminal 3.
[0052] The memory unit 12 is realized by a memory 102 and a storage 103. The memory unit 12 stores non-identifiable processed information 121A, 121B, matching information 122, search condition information 123, search result information 124, and calculation result information 125. Hereinafter, the non-identifiable processed information 121A, 121B may be collectively referred to as non-identifiable processed information 121.
[0053] The non-identifiable processed information 121 is non-identifiable processed information received from the terminal device 2. The non-identifiable processed information 121A is non-identifiable processed information received from the terminal device 2A, and the non-identifiable processed information 121B is non-identifiable processed information received from the terminal device 2B.
[0054] The matching information 122 is obtained by matching the non-identification processed information 121A and the non-identification processed information 121B and combining them into one. The matching information 122 includes identification information and attribute information. The identification information and attribute information included in the matching information 122 are referred to as third identification information and third attribute information, respectively.
[0055] The search condition information 123 is information indicating search conditions for searching for a set of explanatory variables from the matching information 122. The search conditions include a target variable, a constraint condition, and an explanatory variable. The constraint condition is a condition that the target variable must satisfy. The search conditions will be described in detail later.
[0056] The search result information 124 is information indicating the search results obtained by searching the matching information 122 for a combination of explanatory variables that satisfies the search conditions. The search results include combinations of explanatory variables whose objective variables satisfy predetermined conditions. The search results will be described in detail later.
[0057] The calculation result information 125 is information indicating the calculation result obtained by performing a predetermined calculation from the matching information 122. The calculation result is, for example, but not limited to, a count result for each attribute, a causal relationship between attributes, a correlation between attributes, the number of record overlaps, a statistical analysis result (sum, average, variance, median, frequency, etc.), a machine learning model (parameters) that has learned the matching information 122, or an inference result by the machine learning model.
[0058] The control unit 13 is realized by the processor 101 reading and executing a program from the memory 102 and working in cooperation with other hardware components. The control unit 13 controls the overall operation of the computing device 1. The control unit 13 includes an acquisition unit 131, a matching unit 132, a search unit 133, and a calculation unit 134.
[0059] The acquisition unit 131 acquires the non-identifiable processing information 121 from the terminal device 2 and stores it in the memory unit 12 .
[0060] The matching unit 132 matches the non-identifiable processing information 121A and 121B to generate matching information 122 and stores it in the storage unit 12.
[0061] The search unit 133 searches the matching information 122 for a set of explanatory variables that satisfies the search conditions, and stores the search results in the storage unit 12 as search result information 124 .
[0062] The calculation unit 134 executes a predetermined calculation on the matching information 122 and stores the obtained calculation result in the storage unit 12 as calculation result information 125 .
[0063] The functional configuration of the computing device 1 is not limited to the above example. For example, the computing device 1 may have functional configurations other than those described above, or some of the functional configurations may be provided in other devices.
[0064] <Functional Configuration of Terminal Devices 2A, 2B> Next, the functional configuration of terminal devices 2A, 2B will be described. Fig. 6 is a diagram showing an example of the functional configuration of terminal devices 2A, 2B. As shown in Fig. 6, terminal devices 2A, 2B each include a communication unit 21A, 21B, a storage unit 22A, 22B, and a control unit 23A, 23B. Hereinafter, the communication units 21A, 21B, the storage units 22A, 22B, and the control units 23A, 23B may be collectively referred to as the communication unit 21, the storage unit 22, and the control unit 23, respectively.
[0065] The communication unit 21 is realized by the communication I / F 204. The communication unit 21 transmits and receives information to and from the computing device 1 via the network N. The communication units 21A and 21B transmit non-identifiable processed information 222A and 222B to the computing device 1, respectively.
[0066] The storage unit 22 is realized by a memory 202 and a storage 203. The storage units 22A and 22B store personal information 221A and 221B and non-identifiable processed information 222A and 222B, respectively.
[0067] Personal information 221 includes identification information and attribute information. Personal information 221A corresponds to first personal information in the claims, and personal information 221B corresponds to second personal information in the claims. Personal information 221A and personal information 221B are personal information owned by different owners. The identification information and attribute information included in personal information 221A are referred to as first identification information and first attribute information, respectively. The identification information and attribute information included in personal information 221B are referred to as second identification information and second attribute information, respectively.
[0068] FIG. 7 is a diagram showing an example of the personal information 221A and 221B.
[0069] Personal information 221A in Figure 7 includes "name," "age," "gender," and "product" as information items. "Name" is information indicating the name of an individual. "Name" corresponds to first identification information. "Age" is information indicating the age of an individual. "Age" corresponds to first attribute information. "Gender" is information indicating the gender of an individual. "Gender" corresponds to first attribute information. "Product" is information indicating the product purchased by an individual. "Product" corresponds to first attribute information.
[0070] Personal information 221B in Figure 7 includes "name", "age", "address", and "product" as information items. "Name" is information indicating the name of an individual. "Name" corresponds to second identification information. "Age" is information indicating the age of an individual. "Age" corresponds to second attribute information. "Address" is information indicating the address of an individual. "Address" corresponds to second attribute information. "Product" is information indicating the product purchased by an individual. "Product" corresponds to second attribute information.
[0071] It should be noted that the personal information 221 is not limited to the example shown in Fig. 7. The personal information 221 may not include some of the above information items, or may include information items other than those listed above.
[0072] The non-identifiable processed information 222 is non-identifiable processed information obtained by converting the personal information 221. In the non-identifiable processed information 222, identifying information is de-identified. Methods for de-identifying identifying information in the non-identifiable processed information 222 include, but are not limited to, hashing, adding noise, or salted hashing. Furthermore, the non-identifiable processed information 222 may de-identify attribute information. Methods for de-identifying attribute information in the non-identifiable processed information 222 include, but are not limited to, deleting part of the attribute information, abstracting attribute information, superordinate conceptualization, quantification, changing granularity, top coding, bottom coding, data exchange, k-anonymization, or adding noise.
[0073] The non-identifiable processed information 222A is obtained by converting the personal information 221A, and corresponds to the first non-identifiable processed information in the claims. The non-identifiable processed information 222B is obtained by converting the personal information 221B, and corresponds to the second non-identifiable processed information in the claims. The personal information 221A and 221B are non-identifiable using the same method.
[0074] FIG. 8 is a diagram showing an example of the non-identifiable processing information 222A and 222B.
[0075] The non-identifiable processed information 222A in Figure 8 includes "name," "age," "gender," and "product" as information items. "Name" is an individual's name (first identification information) that has been non-identifiable (hashed). "Age" is an individual's age (first attribute information) that has been non-identifiable (granularity changed). "Gender" and "product" are an individual's gender and purchased product (first attribute information).
[0076] The non-identifiable processed information 222B in Figure 8 includes "Name," "Age," "Address," and "Product" as information items. "Name" is an individual's name (second identification information) that has been non-identifiable (hashed). "Age" is an individual's age (second attribute information) that has been non-identifiable (granularity changed). "Address" and "Product" are an individual's address and purchased product (second attribute information).
[0077] Since the personal information 221A and 221B are anonymized using the same method, the values of the identification information and attribute information common to the personal information 221A and 221B are also common to the anonymized processed information 222A and 222B.
[0078] The control unit 23 is realized by the processor 201 reading and executing a program from the memory 202 and working in cooperation with other hardware components. The control unit 23 controls the overall operation of the terminal device 2. The control units 23A and 23B include conversion units 231A and 231B, respectively.
[0079] The conversion units 231A and 231B convert the personal information 221A and 221B into non-identifiable processed information 222A and 222B, respectively, and store the non-identifiable processed information in the storage units 22A and 22B, respectively.
[0080] The functional configurations of the terminal devices 2A and 2B are not limited to the above examples. For example, the terminal devices 2A and 2B may have functional configurations other than those described above. Furthermore, as described above, each functional configuration of the terminal device 2 may be realized by software, or may be realized by hardware such as an IC chip, an SoC, an LSI, or a microcomputer.
[0081] <Functional Configuration of User Terminal 3> Next, a description will be given of the functional configuration of the user terminal 3. Fig. 9 is a diagram showing an example of the functional configuration of the user terminal 3. As shown in Fig. 9, the user terminal 3 includes a communication unit 31, a storage unit 32, and a control unit 33.
[0082] The communication unit 31 is realized by the communication I / F 304. The communication unit 31 transmits and receives information to and from the computing device 1 via the network N. The communication unit 31 receives search result information 124 and calculation result information 125 from the computing device 1.
[0083] The storage unit 32 is realized by a memory 302 and a storage 303. The storage unit 32 stores search condition information 321, search result information 322, and calculation result information 323.
[0084] The search condition information 321 is information indicating search conditions for searching for a set of explanatory variables from the matching information 122. The search conditions include a target variable, a constraint condition, and an explanatory variable. The search conditions will be described in detail later.
[0085] The search result information 322 is information indicating the search results obtained by searching for a combination of explanatory variables that satisfies the search conditions from the matching information 122. The search results include combinations of explanatory variables whose objective variables satisfy predetermined conditions. The search results will be described in detail later.
[0086] The calculation result information 323 is information indicating the calculation result obtained by performing a predetermined calculation from the matching information 122. The calculation result is, for example, but not limited to, a count result for each attribute, a causal relationship between attributes, a correlation between attributes, the number of record overlaps, a statistical analysis result (sum, average, variance, median, frequency, etc.), a machine learning model (parameters) that has learned the matching information 122, or an inference result by the machine learning model.
[0087] The control unit 33 is realized by the processor 301 reading and executing a program from the memory 302 and working in cooperation with other hardware components. The control unit 33 controls the overall operation of the user terminal 3. The control unit 33 includes an acquisition unit 331, a display unit 332, and a reception unit 333.
[0088] The acquisition unit 331 acquires the search result information 124 and the calculation result information 125 from the computing device 1 and stores them in the storage unit 32 as the search result information 322 and the calculation result information 323 .
[0089] The display unit 332 controls the screen displayed on the display device 306 D. The display unit 332 displays the search result information 322 and the calculation result information 323 on the display device 306 D in response to a user operation.
[0090] The receiving unit 333 receives search conditions selected by the user, and stores information indicating the received search conditions in the storage unit 32 as search condition information 321 .
[0091] The functional configuration of the user terminal 3 is not limited to the above example. For example, the user terminal 3 may have a functional configuration other than the above. Furthermore, each functional configuration of the user terminal 3 may be realized by software as described above, or may be realized by hardware such as an IC chip, an SoC, an LSI, or a microcomputer.
[0092] <Processing Executed by Computing System 1000> Next, a description will be given of processing executed by the computing system 1000. Fig. 10 is a flowchart showing an example of processing executed by the computing system 1000.
[0093] (Step S101) The conversion unit 231A of the terminal device 2A converts the personal information 221A including the first identification information and the first attribute information into non-identifiable processed information 222A, and stores the non-identifiable processed information 222A in the storage unit 22A (step S101).
[0094] (Step S102) The communication unit 21A of the terminal device 2A transmits the non-identifiable processed information 222A to the computing device 1 (Step S102). The terminal device 2A may transmit the non-identifiable processed information 222A as is, or may transmit it using encrypted communication using SSL (Secure Sockets Layer) / TLS (Transport Layer Security) or the like.
[0095] (Step S103) The conversion unit 231B of the terminal device 2B converts the personal information 221B including the second identification information and the second attribute information into non-identifiable processed information 222B, and stores the non-identifiable processed information 222B in the storage unit 22B (step S103).
[0096] (Step S104) The communication unit 21B of the terminal device 2B transmits the non-identifiable processed information 222B to the computing device 1 (Step S104). The terminal device 2B may transmit the non-identifiable processed information 222B as is, or may transmit it using encrypted communication using SSL (Secure Sockets Layer) / TLS (Transport Layer Security) or the like.
[0097] The order of steps S101 and S102 and steps S103 and S104 may be reversed. Furthermore, if the computing system 1000 includes three or more terminal devices 2, the same processing as steps S101 and S102 may be performed on each terminal device 2. This allows the computing device 1 to obtain anonymized information corresponding to personal information owned by multiple different owners.
[0098] (Step S105) The acquisition unit 131 of the computing device 1 acquires the non-identifiable processed information 222A received from the terminal device 2A and stores it in the storage unit 12 as non-identifiable processed information 121A (step S105). Similarly, the acquisition unit 131 of the computing device 1 acquires the non-identifiable processed information 222B received from the terminal device 2B and stores it in the storage unit 12 as non-identifiable processed information 121B (step S105).
[0099] (Step S106) The matching unit 132 matches the non-identifiable processed information 121A and 121B to generate matched information 122 and stores it in the memory unit 12 (step S106). As described above, the non-identifiable processed information 121A and 121B are de-identified using the same method, so the matching unit 132 can match the non-identifiable processed information 121A and 121B even if individuals cannot be identified. The matching unit 132 includes the first identification information and the second identification information included in the non-identifiable processed information 121A and 121B as third identification information. The matching unit 132 also includes the first attribute information and the second attribute information included in the non-identifiable processed information 121A and 121B as third attribute information.
[0100] FIG. 11 is a diagram showing an example of the matching information 122. The matching information 122 in FIG. 11 includes information items such as "name," "age," "address," "gender," and "product." "Name" is an anonymized version of an individual's name. "Name" corresponds to third identification information. "Age" is an anonymized version of an individual's age (with granularity changed). "Gender" and "product" are an individual's gender and purchased product. "Age," "gender," "address," and "product" correspond to third attribute information.
[0101] (Step S107) In response to a user operation, the display unit 332 of the user terminal 3 displays a search condition input screen sc1 on the display device 306D (Step S107). The search condition input screen sc1 is a screen for the user to input search conditions.
[0102] 12 is a diagram showing an example of the search condition input screen sc1. The search condition input screen sc1 in Fig. 12 includes an explanatory variable selection section sc11, an objective variable selection section sc12, an objective variable value selection section sc13, a content rate selection section sc14, an execute button sc15, and a back button sc16.
[0103] The explanatory variable selection unit sc11 is a section for allowing the user to select explanatory variables from the third attribute information included in the matching information 122. In the example of Fig. 12, the explanatory variable selection unit sc11 displays the third attribute information ("age," "gender," "address," and "product") included in the matching information 122 of Fig. 11 selectably using check boxes, and the user selects "age," "gender," and "address" as explanatory variables.
[0104] The objective variable selection unit sc12 is a section where the user selects an objective variable from the third attribute information included in the matching information 122. In the example of Fig. 12, the objective variable selection unit sc12 displays the third attribute information ("age," "gender," "address," and "product") included in the matching information 122 of Fig. 11 selectably using check boxes, and the user has selected "product" as the objective variable.
[0105] The objective variable value selection unit sc13 is a section where the user selects an objective variable value from the third attribute information included in the matching information 122. The objective variable value selected here is an example of a constraint. In the example of FIG. 12 , the objective variable value selection unit sc13 displays the values (A, B, C, and D) of the objective variable "product" selected in the objective variable selection unit sc12 in a selectable manner using check boxes, and the user has selected "A" as the objective variable value.
[0106] The content rate selection section sc14 is a section where the user selects the content rate of the matching information 122 having the value of the objective variable selected in the objective variable value selection section sc13. The content rate selected here is an example of a constraint condition. In the example of FIG. 12 , the content rate selection section sc14 displays a text box in which a numerical value can be input, and the user selects (inputs) a content rate of "70"% or more. Note that the method for selecting the content rate is not limited to text input and can be any method.
[0107] The execute button sc15 is a button for requesting the computing device 1 to execute a search for matching information 122 according to the search conditions.
[0108] The back button sc16 is a button for returning to the previous screen of the search condition input screen sc1.
[0109] The search condition input screen sc1 is not limited to the example shown in FIG. 12. The search condition input screen sc1 may be any screen on which the user can select a target variable, constraints, and explanatory variables for the search. Furthermore, the constraints are not limited to the value and content rate of the target variable. For example, the constraints may be the number of matching information 122 (number of records).
[0110] (Step S108) When the user inputs search conditions on the search condition input screen sc1 and presses the execute button sc15, the reception unit 333 receives the search conditions selected by the user and stores information indicating the received search conditions in the memory unit 32 as search condition information 321 (step S108).
[0111] (Step S109) The communication unit 31 of the user terminal 3 transmits the search condition information 321 to the computing device 1 (step S109).
[0112] (Step S110) The acquisition unit 131 of the computing device 1 acquires the search condition information 321 received from the user terminal 3, and stores it in the storage unit 12 as search condition information 123 (step S110).
[0113] (Step S111) The search unit 133 of the computing device 1 refers to the search condition information 123, searches the matching information 122 for a combination of explanatory variables that satisfies the search conditions, and stores the search result in the storage unit 12 as search result information 124 (step S111). The search result includes the combination of explanatory variables discovered by the search and the number of matching information 122 extracted by the explanatory variables. More specifically, the search unit 133 searches for a combination of explanatory variables whose objective variable satisfies the constraint condition. In the example of FIG. 12 , the search unit 133 searches for a combination (combination of values) of "age," "gender," and "address" such that 70% or more of the matching information 122 (records) have "product" as "A."
[0114] FIG. 13 is a diagram illustrating an example of a search method by the search unit 133. The search method in FIG. 13 is a decision tree algorithm. In FIG. 13, X:Y represents the number of matching information 122 that satisfy the constraint conditions, and Y represents the number of matching information 122 that do not satisfy the constraint conditions. In other words, X / (X+Y) corresponds to the content rate. Here, it is assumed that there are 100 pieces of matching information 122 (100 records), the objective variable is "product," the explanatory variables are "age," "address," and "sex," the constraint conditions are "product=A" and "content rate≧70%," and the search termination condition is X≦5. In FIG. 13, "address" and "sex" are quantified.
[0115] (Step S201) First, the search unit 133 counts the matching information 122 (40 pieces) of "product = A" and the matching information 122 (60 pieces) of "product = A" from among all the matching information 122, and calculates the content rate of the matching information 122 of "product = A" (Step S201). Since the content rate here is 40%, it does not satisfy the constraints ("product = A" and "content rate ≧ 70%)."
[0116] (Step S202) Therefore, the search unit 133 sets a threshold value (50 years old) for "age" (step S202).
[0117] (Step S203) The search unit 133 aggregates the matching information 122 (10 pieces) of "product = A" and the matching information 122 (50 pieces) of "product = A" among the matching information 122 of "age > 50", and calculates the content rate of the matching information 122 of "product = A" (step S203). Since the content rate here is approximately 17%, it does not satisfy the constraints ("product = A" and "content rate ≧ 70%).
[0118] (Step S204) Therefore, the search unit 133 sets a threshold value (8) for "address (pref)" (step S204).
[0119] (Step S205) The search unit 133 aggregates the matching information 122 (2 items) for "product = A" and the matching information 122 (30 items) for other than "product = A" among the matching information 122 for "age > 50" and "address > 8," and calculates the content rate of the matching information 122 for "product = A" (step S205). Since the content rate here is approximately 6%, it does not satisfy the constraints ("product = A" and "content rate ≧ 70%). Since X ≦ 5, the search unit 133 terminates the search for this branch.
[0120] (Step S206) The search unit 133 also aggregates the eight pieces of matching information 122 for "product = A" and the twenty pieces of matching information 122 for other than "product = A" among the pieces of matching information 122 for "age > 50" and "address ≦ 8," and calculates the content rate of the matching information 122 for "product = A" (step S206). The content rate here is approximately 29%, which does not satisfy the constraints ("product = A" and "content rate ≧ 70%)."
[0121] (Step S207) Therefore, the search unit 133 sets a threshold value (0) for "gender (sex)" (step S207).
[0122] (Step S208) The search unit 133 aggregates the matching information 122 (7 pieces) for "product = A" and the matching information 122 (1 piece) for which "product = A" is not included among the matching information 122 for "age > 50," "address ≦ 8," and "gender > 0," and calculates the content rate of the matching information 122 for "product = A" (step S208). Since the content rate here is approximately 88%, it satisfies the constraints ("product = A" and "content rate ≧ 70%).
[0123] (Step S209) As a result, "age > 50", "address ≦ 8" and "gender > 0" are found as a combination of explanatory variables for which the objective variable satisfies the constraints (step S209). Since the search unit 133 has found the combination of explanatory variables, it ends the search for this branch.
[0124] (Step S210) The search unit 133 aggregates the matching information 122 (1 item) for "product = A" and the matching information 122 (19 items) for other than "product = A" among the matching information 122 for "age > 50," "address ≦ 8," and "gender ≦ 0," and calculates the content rate of the matching information 122 for "product = A" (step S210). Since the content rate here is 5%, it does not satisfy the constraints ("product = A" and "content rate ≧ 70%). Since X ≦ 5, the search unit 133 terminates the search for this branch.
[0125] (Step S211) The search unit 133 aggregates the matching information 122 (30 pieces) of "product = A" and the matching information 122 (10 pieces) of "product = A" among the matching information 122 of "age ≦ 50", and calculates the content rate of the matching information 122 of "product = A" (step S211). Since the content rate here is 75%, it satisfies the constraints ("product = A" and "content rate ≧ 70%").
[0126] (Step S212) As a result, "age≦50" is found as a combination of explanatory variables for which the objective variable satisfies the constraint condition (step S212). Since the search unit 133 has found the combination of explanatory variables, it ends the search for this branch.
[0127] By the above method, the search results of "age > 50", "address ≦ 8" and "gender > 0" and "age ≦ 50" are found.
[0128] The search unit 133 can search for a combination of explanatory variables in which the objective variable satisfies the constraint conditions by repeatedly performing such a decision tree algorithm while changing the threshold value for each attribute information. The order of the attribute information in which the threshold values are set is arbitrary. The order of the attribute information in which the threshold values are set may be the same throughout all searches, may be changed randomly for each search, or may be changed every predetermined number of searches. The value of the threshold set for each search is also arbitrary. The value of the threshold may be set randomly for each search, or may be changed at predetermined intervals for each search. The search unit 133 may also perform a search using a decision tree algorithm other than the above, or may perform a search using a method other than a decision tree algorithm (e.g., heuristic).
[0129] Now, let us return to the description of FIG.
[0130] (Step S112) The calculation unit 134 executes a predetermined calculation on the matching information 122, and stores the obtained calculation result in the storage unit 12 as calculation result information 125 (step S112).
[0131] (Step S113) The communication unit 11 of the computing device 1 transmits the search result information 124 and the calculation result information 125 to the user terminal 3 (Step S113). The computing device 1 may transmit the search result information 124 and the calculation result information 125 directly, or may transmit them using an encrypted communication path.
[0132] (Step S114) The acquisition unit 331 of the user terminal 3 acquires the search result information 124 and the calculation result information 125 received from the computing device 1, and stores them in the storage unit 32 as search result information 322 and calculation result information 323 (step S114).
[0133] (Step S115) In response to a user operation, the display unit 332 refers to the search result information 322 and the calculation result information 323, and displays the search results and the calculation results on the display device 306D (step S115).
[0134] FIG. 14 is a diagram showing an example of a search result display screen sc2. The search result display screen sc2 is a screen that displays search results. As shown in FIG. 14, the search result display screen sc2 displays, for each pair of explanatory variables, a pair of explanatory variables sc21 and the number (volume) sc22 of matching information 122 extracted by the explanatory variables. This allows the user to easily understand how many people (segments) have attribute information that satisfies the constraints, without identifying individuals. In addition, in the example of FIG. 14, the pair of explanatory variables sc21 are displayed in descending order of the number (volume) sc22 of matching information 122 extracted by the explanatory variables. This allows the user to easily understand which segments are larger in size.
[0135] <Summary> As described above, according to the present embodiment, a computing system is realized in which the terminal device 2A, the terminal device 2B, the user terminal 3, and the computing device 1 are included in the computing system 1000. The terminal device 2A converts personal information 221A including first identification information and first attribute information into non-identifiably processed information 222A. The terminal device 2B converts personal information 221B including second identification information and second attribute information into non-identifiably processed information 222B. The computing device 1 generates matched information 122 including third identification information and third attribute information by matching the non-identifiably processed information 222A and the non-identifiably processed information 222B. The user terminal 3 accepts a target variable, a constraint condition, and an explanatory variable selected by a user from the third attribute information. The computing device 1 searches for a combination of explanatory variables in which the target variable satisfies the constraint condition from the matched information 122. The user terminal 3 displays the combination of explanatory variables.
[0136] For example, if a user who owns personal information 221A were to analyze a customer segment that purchased Product A solely from the personal information 221A owned by their own company, the analysis would not be able to take "address" into account because the personal information 221A does not include an "address" field. By using the computing system 1000, the user can access not only the personal information 221A owned by their own company but also the personal information 221B owned by other companies, enabling them to analyze the customer segment that purchased Product A while also taking "address" into account. As a result, the user can discover a customer segment (e.g., segment 2 in FIG. 14 ) that could not be discovered using only the personal information 221A owned by their own company. Furthermore, since the user has more personal information available compared to when analyzing using personal information 221A, more accurate analysis is possible. Furthermore, during analysis, the user does not access the personal information 221B owned by other companies, and uses it in a manner that does not identify individuals, allowing the user to use the personal information 221B safely. Furthermore, the user can easily use personal information because the desired results are displayed simply by selecting search conditions. As a result, computing system 1000 allows users to safely and easily access personal information owned by multiple owners.
[0137] <Additional Notes> This embodiment includes the following disclosure.
[0138] (Supplementary Note 1) A computing system comprising a first terminal device, a second terminal device, a user terminal, and a computing device, wherein the first terminal device converts first personal information including first identification information and first attribute information into first non-identifiable processed information, the second terminal device converts second personal information including second identification information and second attribute information into second non-identifiable processed information, the computing device generates matched information including third identification information and third attribute information by matching the first non-identifiable processed information and the second non-identifiable processed information, the user terminal accepts a target variable, a constraint condition, and an explanatory variable selected by a user from the third attribute information, the computing device searches for a combination of explanatory variables for which the target variable satisfies the constraint condition from the matched information, and the user terminal displays the combination of explanatory variables.
[0139] (Supplementary Note 2) The computing system according to Supplementary Note 1, wherein the user terminal displays the number of pieces of matching information extracted by the combination of explanatory variables.
[0140] (Supplementary Note 3) The computing system according to Supplementary Note 1, wherein the user terminal displays the sets of explanatory variables in descending order of the number of pieces of matching information extracted by the sets of explanatory variables.
[0141] (Supplementary Note 4) The computing system according to Supplementary Note 1, wherein the computing device searches for the set of explanatory variables using a decision tree algorithm.
[0142] (Supplementary Note 5) The computing system according to Supplementary Note 1, wherein the first terminal device and the second terminal device hash, add noise to, or salt hash the first identification information and the second identification information.
[0143] (Supplementary Note 6) The computing system according to Supplementary Note 1, wherein the first non-identifiable processed information and the second non-identifiable processed information are personal information, pseudonymized information, anonymously processed information, personally identifiable information, or non-personal information.
[0144] (Supplementary Note 7) A computing method executed by a computing system including a first terminal device, a second terminal device, a user terminal, and a computing device, wherein the first terminal device converts first personal information including first identification information and first attribute information into first non-identifiable processed information; the second terminal device converts second personal information including second identification information and second attribute information into second non-identifiable processed information; the computing device generates matched information including third identification information and third attribute information by matching the first non-identifiable processed information and the second non-identifiable processed information; the user terminal accepts a target variable, constraint conditions, and explanatory variables selected by a user from the third attribute information; the computing device searches for a combination of explanatory variables such that the target variable satisfies the constraint conditions from the matched information; and the user terminal displays the combination of explanatory variables.
[0145] (Supplementary Note 8) A computing program causing a computing system including a first terminal device, a second terminal device, a user terminal, and a computing device to execute a computing method in which the first terminal device converts first personal information including first identification information and first attribute information into first non-identifiable processed information, the second terminal device converts second personal information including second identification information and second attribute information into second non-identifiable processed information, the computing device generates matched information including third identification information and third attribute information by matching the first non-identifiable processed information and the second non-identifiable processed information, the user terminal accepts a target variable and an explanatory variable selected by a user from the third attribute information, the computing device searches for a combination of explanatory variables in which the target variable satisfies a predetermined condition from the matched information, and the user terminal displays the combination of explanatory variables.
[0146] (Supplementary Note 9) A computing device comprising: an acquisition unit that acquires first non-identifiable processed information from a first terminal device and acquires second non-identifiable processed information from a second terminal device; a matching unit that generates matching information including third identification information and third attribute information by matching the first non-identifiable processed information and the second non-identifiable processed information; and a search unit that searches the matching information for a set of explanatory variables for which the objective variable satisfies the constraint condition based on an objective variable, the constraint condition, and an explanatory variable selected by a user from the third attribute information.
[0147] The embodiments disclosed herein are illustrative in all respects and should not be considered limiting. The scope of the present invention is defined by the claims, not by the above meaning, and is intended to include all modifications within the meaning and scope of the claims. Furthermore, the present invention is not limited to the above-described embodiments, and various modifications are possible within the scope of the claims. Embodiments obtained by appropriately combining the technical means disclosed in different embodiments are also included in the technical scope of the present invention.
[0148] 1: Calculation device 2: Terminal device 3: User terminal 11: Communication unit 12: Storage unit 13: Control unit 121: Non-identifiable processed information 122: Matching information 123: Search condition information 124: Search result information 125: Calculation result information 131: Acquisition unit 132: Matching unit 133: Search unit 134: Calculation unit
Claims
1. A computing system comprising a first terminal device, a second terminal device, a user terminal, and a computing device, wherein the first terminal device converts first personal information including first identification information and first attribute information into first non-identifiable processed information, the second terminal device converts second personal information including second identification information and second attribute information into second non-identifiable processed information, the computing device generates matched information including third identification information and third attribute information by matching the first non-identifiable processed information and the second non-identifiable processed information, the user terminal accepts a target variable, a constraint condition, and an explanatory variable selected by a user from the third attribute information, the computing device searches for a combination of explanatory variables for which the target variable satisfies the constraint condition from the matched information, and the user terminal displays the combination of explanatory variables.
2. The calculation system according to claim 1, wherein the user terminal displays the number of pieces of matching information extracted by the set of explanatory variables.
3. The computation system according to claim 1, wherein the user terminal displays the sets of explanatory variables in descending order of the number of pieces of matching information extracted by the sets of explanatory variables.
4. The computing system according to claim 1, wherein the computing device searches for the set of explanatory variables using a decision tree algorithm.
5. The computing system of claim 1, wherein the first terminal device and the second terminal device hash, add noise to or salt hash the first identification information and the second identification information.
6. The computing system of claim 1, wherein the first non-identifiable processed information and the second non-identifiable processed information are personal information, pseudonymized information, anonymously processed information, personally related information or non-personal information.
7. A calculation method executed by a calculation system including a first terminal device, a second terminal device, a user terminal, and a calculation device, wherein the first terminal device converts first personal information including first identification information and first attribute information into first non-identifiable processed information; the second terminal device converts second personal information including second identification information and second attribute information into second non-identifiable processed information; the calculation device generates matched information including third identification information and third attribute information by matching the first non-identifiable processed information and the second non-identifiable processed information; the user terminal accepts a target variable, the constraint condition, and an explanatory variable selected by a user from the third attribute information; the calculation device searches for a combination of explanatory variables for which the target variable satisfies the constraint condition from the matched information; and the user terminal displays the combination of explanatory variables.
8. A computing program causing a computing system including a first terminal device, a second terminal device, a user terminal, and a computing device to execute a computing method in which the first terminal device converts first personal information including first identification information and first attribute information into first non-identifiable processed information, the second terminal device converts second personal information including second identification information and second attribute information into second non-identifiable processed information, the computing device generates matched information including third identification information and third attribute information by matching the first non-identifiable processed information and the second non-identifiable processed information, the user terminal accepts a target variable and an explanatory variable selected by a user from the third attribute information, the computing device searches for a combination of explanatory variables in which the target variable satisfies a predetermined condition from the matched information, and the user terminal displays the combination of explanatory variables.
9. A computing device comprising: an acquisition unit that acquires first non-identifiable processed information from a first terminal device and acquires second non-identifiable processed information from a second terminal device; a matching unit that generates matching information including third identification information and third attribute information by matching the first non-identifiable processed information and the second non-identifiable processed information; and a search unit that searches for a combination of explanatory variables for which the objective variable satisfies the constraint condition from the matching information based on an objective variable, the constraint condition, and an explanatory variable selected by a user from the third attribute information.
Citation Information
Patent Citations
Coordination server program, business operator server program, and data coordinated system
JP2021117679A
Privacy protection data association system
WO2022254821A1