WO2021187506A1 - データ処理装置、データ処理方法およびデータ処理プログラム - Google Patents
データ処理装置、データ処理方法およびデータ処理プログラム Download PDFInfo
- Publication number
- WO2021187506A1 WO2021187506A1 PCT/JP2021/010736 JP2021010736W WO2021187506A1 WO 2021187506 A1 WO2021187506 A1 WO 2021187506A1 JP 2021010736 W JP2021010736 W JP 2021010736W WO 2021187506 A1 WO2021187506 A1 WO 2021187506A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- noise
- distribution
- added
- processing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
- G06F21/6254—Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
Definitions
- This technology relates to data processing equipment, data processing methods and data processing programs.
- Patent Document 1 While such personal data of the user has high utility value, there is a problem that the privacy of the user is infringed due to data leakage, data handling method, and the like. Therefore, a technique called differential privacy is used to prevent invasion of privacy (Patent Document 1).
- Differential privacy is a technology that makes it possible to use the data itself while preventing the user, etc., who is the subject of the data, from being identified by adding noise to the collected data. Statistical confidence can not be given to the hypothesis that "a certain data belongs to a specific user". Since it is mathematically safe against attacks by arbitrary background knowledge, it has the characteristic of being able to quantitatively evaluate the impact on privacy. By using differential privacy, it is possible to prevent invasion of the user's privacy even when data is collected without the consent of the user. Differential privacy includes output-type differential privacy and local-type differential privacy.
- Output-type differential privacy collects raw data from devices and manages it in a database built on the cloud.
- a data user accesses a database and utilizes the data, the privacy of the user is protected by adding noise to the data and publishing it.
- the business operator that provides the cloud service manages the raw data, there are concerns about the psychological barrier of the user to the collection of the raw data and the business risk of the business operator when it is leaked.
- Local differential privacy is a method of adding noise on the user's device and collecting anonymized data in the cloud.
- it is possible to obtain statistical values with noise removed from the cloud. Since the data is collected in an anonymized state, the psychological barrier of the user is low, and the business risk of the business operator when it is leaked is also small.
- differential privacy is more accurate when there is a large amount of data to be collected, so it is usually assumed that there is a large amount of data to be collected.
- This technology was made in view of these points, and by adding noise to the data to increase the amount of data, it is possible to reduce the error in the statistical results even with a small amount of data. And to provide a data processing program.
- the first technique includes a noise distribution prediction unit that predicts the distribution of noise in the noise addition data generated by adding noise to the original data in an external noise addition device, and a noise distribution prediction unit. It is a data processing apparatus including an augmentation processing unit that performs augmentation processing on noise-added data based on a distribution prediction result.
- the second technique predicts the noise distribution in the noise-added data generated by adding noise to the original data in an external noise-adding device, and augments the noise-added data based on the prediction result of the noise distribution.
- This is a data processing method that performs mentation processing.
- the third technique predicts the noise distribution in the noise-added data generated by adding noise to the original data in an external noise-adding device, and augments the noise-added data based on the prediction result of the noise distribution. It is a data processing program that causes a computer to execute a data processing method that performs mentation processing.
- FIG. 3A to 3E are graphs showing the relationship between the data distribution and the error
- FIG. 3F is a graph showing the relative error of the data distribution. It is a graph which shows the relationship between the distribution of data and a privacy index. It is a graph which shows the relationship between the coefficient of variation and a relative error. It is explanatory drawing of a sample size and noise.
- FIG. 24A is a comparison graph of the original data and the noise-added data
- FIG. 24B is a comparison graph of variable noise and noise with a uniform distribution
- FIG. 24C is a comparison graph of the original data and augmented data. ..
- differential privacy is a technology that makes it possible to use the data itself while preventing the user or the like who is the subject of the data from being identified by adding noise to the collected data.
- noise is added by the device at the user's hand (corresponding to the terminal device 100 of the embodiment), and anonymized data is collected in the cloud (corresponding to the server device 300 of the embodiment).
- Local differential privacy Is used.
- the local-type differential privacy generates data v 1 'obtained by adding the noise in accordance with the random variable that encoding technique to generate a bit sequence v 1 encodes the data on the device, the bit sequence v 1
- Noise addition technology, aggregation technology that collects noise-added data, noise removal technology that removes noise from the aggregated data aggregation technology and noise removal technology are often executed at the same time, and are collectively called decoding technology. It consists of data analysis technology that performs visualization processing according to the use case of analysis.
- sample size "sample size”, “dictionary size”, and “privacy index” are used as the main parameters.
- the sample size indicates the total number of data collected in the cloud.
- the sample size can be defined as "the number of users who have the device x the number of data transmitted from the device to the cloud”.
- the dictionary size indicates the total number of data types included in the dictionary.
- a dictionary is a set of data that summarizes data for each data type that indicates the classification of data, and corresponds to a data set within the scope of claims.
- GPS Global Positioning System
- the privacy index indicates the degree of privacy protection in differential privacy. The smaller the value of the privacy index, the higher the degree of privacy protection, and the greater the amount of noise added to the data. On the other hand, the larger the value of the privacy index, the lower the degree of privacy protection and the smaller the amount of noise added to the data.
- FIG. 2 is a group of graphs showing the relationship between the sample size, the dictionary size, and the error when the privacy index is a predetermined value.
- the error is the difference between the measured value of the data without noise (hereinafter referred to as the correct answer value) and the measured value of the data with noise added by differential privacy (referred to as the measured value with noise). ..
- the right side shows the measured value (correct answer value) of the data without noise
- the left side shows the measured value of the data with noise added by differential privacy. (Measured value with noise) is shown.
- the sample size of the vertically arranged graphs A, F, and K is 10,000. Further, the vertically arranged graphs B, G, and L have a sample size of 100,000. Further, the vertically arranged graphs C, H, and M have a sample size of 1 million. Further, the vertically arranged graphs D, I, and N have a sample size of 10 million. Further, the vertically arranged graphs E, J, and P have a sample size of 100 million. It is assumed that the privacy index of all graphs is the same.
- the value shown in the upper right of each graph is the error between the correct answer value and the measured value with noise in that graph.
- FIGS. 3A to 3E are a group of graphs showing the relationship between the distribution of data and the error between the correct answer value and the measured value with noise
- FIG. 3F is a graph showing the relative error in each distribution. It is assumed that the graphs of FIGS. 3A to 3E have the same sample size, the same dictionary size, and the same privacy index. As can be seen from FIG. 3F, even if the sample size, dictionary size, and privacy index are the same, the relative error differs depending on the data distribution.
- FIG. 4 is a graph showing the relationship between each type of data distribution shown in FIGS. 3A to 3E and the value of the privacy index. As can be seen from FIG. 4, even if the distribution is different, if the privacy index is made small, the amount of noise added to the data becomes large, and the error also becomes large. On the other hand, when the privacy index is increased, the amount of noise added to the data becomes smaller and the error becomes smaller.
- sample size, dictionary size, and privacy index have the following trade-off relationships.
- the dictionary size is small, the error will be small even if the sample size is small.
- the dictionary size is large, the error becomes large even if the sample size is large.
- the error increases when the privacy index is reduced, and the error decreases when the privacy index is increased. Therefore, it is necessary to increase the sample size in order to increase the privacy strength and the reliability.
- the error which is the difference between the correct answer value and the statistical result of the measured value with noise, is used as an evaluation index. Therefore, when the sample size is the same and the dictionary size is the same, it is good local differential privacy that the error does not change even if the amount of noise is increased to improve the subtlety. Further, when the dictionary size is the same and the privacy index is the same, it is good local differential privacy that the error does not change even if the sample size is reduced. This is because, in general, a large number of measured values (data) must be obtained in order to increase the sample size, which is costly.
- the coefficient of variation is used as the reliability for comparison between different data types.
- the coefficient of variation is an index for relatively evaluating the relationship between the measured value (data) and the variation with respect to the average value, and can be obtained from the following equation 1.
- FIG. 5 is a graph showing the relationship between the coefficient of variation and the relative error, with the vertical axis representing the coefficient of variation and the relative error of the relative error, and the horizontal axis representing the data type (serial number starting from 1).
- the coefficient of variation calculated from the measured value with noise has a correlation with the relative error. Therefore, the coefficient of variation can be used as an indicator of the effectiveness of differential privacy. Therefore, the coefficient of variation is used as the reliability as an index of the effectiveness of differential privacy.
- the coefficient of variation is low and there are few errors, so the reliability is high. On the other hand, since there are many errors with a high coefficient of variation, the reliability is low.
- data augmentation technology that increases data is used to reduce the error between the result of applying differential privacy with a small sample size and the result of not applying differential privacy. It is possible to increase the amount of data by dividing the noise addition into the device and the cloud and performing it multiple times, but the simple method should improve the error caused by the variation of the noise added by the device. I can't.
- the horizontal axis is the dictionary size and the vertical axis is the sample size.
- the sample size of the original data is large as shown in FIG. 6A
- noise having a uniform distribution is added by differential privacy in the device as shown in FIG. 6B.
- the data is aggregated in the cloud, the data increases by the amount of uniform noise as shown in FIG. 6C.
- FIG. 6D when the original data is obtained by removing the noise, the noise is removed assuming that the noise is uniform, so that the error between the original data and the data to which the noise is added by the differential privacy is small.
- the variation in noise distribution due to the device is predicted in the cloud, and the variation in noise is corrected in the cloud and noise is added so that the noise distribution becomes uniform.
- Perform augmentation processing to increase the data The details of the data hierarchical structure and augmentation processing will be described later.
- Embodiment> [2-1. Configuration of data processing system 10] Next, the configuration of the data processing system 10 that uses the differential privacy described above will be described. In this embodiment, the present technology will be described with an example of using differential privacy in data collection using a regional mesh. In this embodiment, by transmitting the position information from the terminal device 100 to the server device 300, data indicating that the terminal device 100 exists in a specific area mesh is collected in the server device 300, and the distribution of the terminal device 100 is determined. That is, the distribution of users who own the terminal device 100 is grasped.
- the data processing system 10 is composed of a plurality of terminal devices 100 and a server device 300.
- the plurality of terminal devices 100 and the server device 300 are connected to each other via a network 1000 such as the Internet.
- a network 1000 such as the Internet.
- seven terminal devices 100 are described for convenience of description and drawings, there may be more terminal devices 100 connected to the server device 300.
- the server device 300 is a device operated by, for example, a manufacturer of the terminal device 100, for collecting data from the terminal device 100 and obtaining statistical results by using differential privacy.
- the server device 300 corresponds to the cloud in the above description of differential privacy.
- the terminal device 100 is a smartphone or the like having at least a position information acquisition function and a communication function.
- the terminal device 100 transmits a log including its own position information to the server device 300 at regular intervals or at a predetermined timing.
- a regional mesh is a mesh in which regions are divided into meshes of approximately the same size based on latitude / longitude for use in statistics.
- the code for identifying each of the meshes is the regional mesh code.
- Regional meshes are classified into primary meshes, secondary meshes, and tertiary meshes according to the size of the mesh.
- the primary mesh is one unit of one leaf section of the 1 / 200,000 topographic map, with a latitude difference of 40 minutes, a longitude difference of 1 degree, and a side length of about 80 km.
- the secondary mesh is an area formed by dividing the secondary mesh into eight equal parts in the latitude and longitude directions, and corresponds to the section of one leaf of the 1 / 25,000 topographic map.
- the latitude difference is 5 minutes
- the longitude difference is 7 minutes and 30 seconds
- the length of one side is about 10 km.
- the tertiary mesh is an area formed by dividing the secondary mesh into 10 equal parts in the latitude and longitude directions.
- the latitude difference is 30 seconds, the longitude difference is 45 seconds, and the length of one side is about 1 km.
- the number of area meshes be the data types that make up the dictionary, and let the number of data types be the dictionary size.
- FIG. 8 is a diagram showing a state in which the entire area of Japan is covered using a primary mesh.
- Each of the rectangles superimposed on the Japanese map is a primary mesh. Since the primary mesh can cover the entire area of Japan with 176 meshes, when only the primary mesh is used, the number of data types constituting the dictionary is 176, and the dictionary size is 176. If the entire area of Japan is covered with the primary mesh, remote islands, depopulated areas, mountainous areas, etc. will be included in the mesh, which is wasteful.
- the secondary mesh can cover the entire area of Japan with 4862 meshes, when only the secondary mesh is used, the number of data types constituting the dictionary is 4862, and the dictionary size is 4862. Like the primary mesh, the secondary mesh also includes remote islands, depopulated areas, mountainous areas, etc., which is wasteful.
- the tertiary mesh can cover the entire area of Japan with 387286 meshes, when only the tertiary mesh is used, the number of data types constituting the dictionary is 387286 and the dictionary size is 387286.
- the terminal device 100 includes a control unit 101, a communication unit 102, a storage unit 103, a position information acquisition unit 104, a display unit 105, an input unit 106, and a noise addition device 200.
- the noise adding device 200 corresponds to an external noise adding device within the scope of claims.
- the control unit 101 is composed of a CPU (Central Processing Unit), a RAM (Random Access Memory), a ROM (Read Only Memory), and the like.
- the ROM stores a program or the like that is read and operated by the CPU.
- the RAM is used as the work memory of the CPU.
- the CPU controls the entire terminal device 100 by executing various processes according to the program stored in the ROM and issuing commands.
- the communication unit 102 is a communication module that communicates with the server device 300 and the Internet according to a predetermined communication standard.
- wireless LAN Local Area Network
- Wi-Fi Wireless Fidelity
- 4G fourth generation mobile communication system
- 5G fifth generation mobile communication system
- Bluetooth registered trademark
- the storage unit 103 is a storage medium composed of, for example, an HDD (Hard Disc Drive), a semiconductor memory, an SSD (solid state drive), and the like, and includes content data such as image data, moving image data, audio data, and text data. , Applications, programs, etc. are stored.
- HDD Hard Disc Drive
- SSD solid state drive
- the position information acquisition unit 104 is a GPS (Global Positioning System) module for acquiring the position information of the terminal device 100.
- the position information indicating the current position of the terminal device 100 acquired by the position information acquisition unit 104 is converted into lower-level data as the original data.
- the lower data corresponds to the original data in the claims.
- the display unit 105 is a display device for displaying contents such as images and videos, a user interface, and the like.
- the display device for example, there is a device configured by an LCD (Liquid Crystal Display), a PDP (Plasma Display Panel), an organic EL (Electro Luminescence) panel, or the like.
- the input unit 106 is various input devices for the user to input instructions to the terminal device 100.
- the input unit 106 includes a button, a touch screen integrally configured with the display unit 105, and the like.
- a control signal corresponding to the input is generated and output to the control unit 101 and the noise addition device 200.
- the noise addition device 200 is a processing device configured by the terminal device 100 executing a program.
- the program may be installed in the terminal device 100, or may be distributed by download, storage medium, or the like so that the user can install the program by himself / herself.
- the noise addition device 200 may be realized not only by a program but also by combining a dedicated device, a circuit, or the like by hardware having the function.
- the noise adding device 200 includes a dictionary storage unit 201, a lower data conversion unit 202, a higher data conversion unit 203, a lower encoding unit 204, a higher encoding unit 205, and a log generation unit 206. ..
- the noise addition device 200 is a device for adding noise in differential privacy to the data transmitted to the data processing device 400 of the server device 300.
- the dictionary storage unit 201 is a storage processing unit that stores the dictionary transmitted from the server device 300 in the storage unit 103.
- the dictionary to be stored is a dictionary generated by the dictionary generation unit 401 of the data processing device 400. Therefore, the dictionaries of the noise addition device 200 and the data processing device 400 are common.
- the area mesh corresponding to the lower data is the data type, and the dictionary is configured by the data type. Therefore, as shown in FIG. 11, it can be said that the dictionary shows the entire area composed of a plurality of regional meshes (data types) for which data is collected.
- the area mesh of the lower hierarchy in the entire area for which data is collected is the dictionary size.
- the lower data conversion unit 202 converts the position information acquired by the position information acquisition unit 104 into lower data as the original data.
- the lower data is configured as a bit string indicating where the position indicated by the position information exists in the region mesh in a predetermined region determined by 0 and 1.
- the hierarchy of the regional mesh that composes this lower level data is defined as the lower level. This bit value is called a true value to distinguish it from noise.
- a bit value of "1" is assigned to the area mesh including the position indicated by the position information, that is, the area mesh in which the terminal device 100 exists, and a bit value of "0" is assigned to the area mesh in which the terminal device 100 does not exist. Therefore, the bit value "1" indicates that there is one user who is the owner of the terminal device 100 in the area mesh.
- the upper-level data conversion unit 203 generates upper-level data, which is upper-level data, from lower-level data, which is lower-level data in the data hierarchy.
- the hierarchical structure of the data is composed of the lower data of the lower hierarchy and the upper data of the upper hierarchy generated from the lower data.
- the lower data is the original data obtained by converting the position information into the bit string data
- the upper data is the bit string data generated from the lower data. Since the present technology predicts the distribution of the noise added by the noise adding device 200 of the terminal device 100 by using the hierarchical structure of the data, the noise distribution cannot be predicted only by the lower data which is the original data. .. Therefore, it is necessary to generate upper data from lower data in order to form a hierarchical structure of data.
- a region mesh of a specific size (for example, a tertiary mesh) is set as a lower layer.
- the area mesh of the lower layer is included, and the upper area mesh (primary mesh or secondary mesh) having a larger mesh size than the area mesh of the lower layer is set as the upper layer.
- the secondary mesh may be a lower layer, and the primary mesh may be an upper layer.
- the four meshes M1, M2, M3, and M4 shown in FIG. 11B are higher layers corresponding to higher data. Further, the 16 meshes shown in FIG. 11A are lower layers corresponding to lower data.
- M1-1, M1-2, M1-3, M1-4 are lower layer meshes included in the upper layer mesh M1.
- M2-1, M2-2, M2-3, and M2-4 are lower layer meshes included in the upper layer mesh M2.
- M3-1, M3-2, M3-3, and M3-4 are lower layer meshes included in the upper layer mesh M3.
- M4-1, M4-2, M4-3, and M4-4 are lower layer meshes included in the upper layer mesh M4.
- a bit value "1" is set by the lower data conversion unit 202 in the regional mesh including the position indicated by the position information. Further, a bit value "0" is set by the lower data conversion unit 202 in the area mesh that does not include the position indicated by the position information. In this way, the position information is converted into a bit string as lower data.
- the upper data conversion unit 203 generates a bit string which is upper data by reflecting the bit value of each area mesh of the lower layer in the area mesh of the upper layer including the area mesh of the lower layer.
- the bit value "1” is set in the regional mesh M4-3.
- the area mesh M4 of the upper layer also includes the position indicated by the position information. Therefore, as shown in FIG. 11B, a bit value “1” is also set in the regional mesh M4 in the upper layer.
- the bit values "0" are given to the four regional meshes. Is set up. Then, as shown in FIG. 11B, it means that the area mesh M3 in the upper layer does not include the position indicated by the position information, and the bit value "0" is also set in the area mesh M3 in the upper layer. This also applies to the regional meshes M1 and M2 in the upper hierarchy. In this way, the upper data of the upper layer can be generated from the lower data of the lower layer.
- the lower encoding unit 204 performs encoding processing and noise addition processing on a bit string which is lower data to be transmitted to the server device 300 to generate lower noise addition data.
- the amount of added noise is determined according to the privacy index and probability distribution. Therefore, it is unknown what kind of distribution of noise is added until the noise is added.
- FIG. 12A For example, when noise is added to the lower data shown in FIG. 11A, it becomes as shown in FIG. 12A.
- a bit value "1" indicating that the position indicated by the position information exists in the regional mesh is added as noise in the plurality of regional meshes.
- the number of bit values "1" is increasing.
- (n) is added to the bit value “1” which is noise in order to distinguish between the true value and noise.
- the high-level encoding unit 205 performs encoding processing and noise addition processing on a bit string which is high-level data to be transmitted to the server device 300 to generate high-level noise addition data.
- the amount of added noise is determined according to the privacy index and probability distribution. Therefore, it is unknown what kind of distribution of noise is added until the noise is added.
- noise when noise is added to the upper data shown in FIG. 11B, it becomes as shown in FIG. 12B.
- a bit value "1" indicating that the position indicated by the position information exists in the area mesh is added as noise in the area mesh.
- the number of bit values "1" is increasing.
- (n) is added to the noise bit value “1”, which is noise, in order to distinguish between the true value and the noise. Since noise is added to the lower data and the upper data by different processing, noise is also added to the upper layer regional mesh including the lower layer regional mesh to which the noise is added in the lower data. Not necessarily.
- the number of all area meshes corresponding to the lower data that is the original data corresponds to the dictionary size.
- the log generation unit 206 generates a log to be transmitted to the server device 300, including the upper noise addition data and the lower noise addition data.
- the log includes a time stamp as header information, a higher privacy index and a lower privacy index which are parameter information of differential privacy, a number of upper bits, a number of lower bits, an identification information (ID) of the terminal device 100, and the like.
- the generated log is transmitted to the server device 300 via the network 1000 by communication by the communication unit 102. It should be noted that the immutable information such as the privacy index and the identification information does not need to be included in the log if it is shared in advance between the terminal device 100 and the server device 300.
- the terminal device 100 and the noise addition device 200 are configured as described above.
- the server device 300 includes a control unit 301, a communication unit 302, a storage unit 303, and a data processing device 400.
- the control unit 301 is composed of a CPU, RAM, ROM, and the like.
- the CPU controls the entire server device 300 by executing various processes according to the program stored in the ROM and issuing commands.
- the communication unit 302 is a communication module that communicates with the terminal device 100 and the Internet according to a predetermined communication standard. Communication methods include wireless LAN such as Wi-Fi, 4G, 5G, broadband, Bluetooth (registered trademark) and the like.
- the storage unit 303 is, for example, a storage medium composed of an HDD, a semiconductor memory, an SSD, or the like, and stores an application, a program, a log transmitted from the terminal device 100, data, and the like.
- the data processing device 400 is a processing unit configured by the server device 300 executing a program.
- the program may be installed in the server device 300, or may be distributed by download, storage medium, or the like so that the user can install the program by himself / herself.
- the data processing device 400 is not only realized by a program, but may also be realized by combining a dedicated device, a circuit, or the like by hardware having the function.
- the data processing device 400 includes a dictionary generation unit 401, a dictionary storage unit 402, a lower decoding unit 403, an upper decoding unit 404, a data expansion unit 405, a noise distribution prediction unit 406, and an augmentation processing unit 407. It is configured to include a decoding unit 408 and a statistical analysis unit 409.
- the dictionary generation unit 401 generates a dictionary as a data set.
- the area mesh corresponding to the lower data is the data type, and the dictionary is configured by the data type. Therefore, as shown in FIG. 11, it can be said that the dictionary shows the entire area composed of a plurality of regional meshes (data types) for which data is collected.
- the area mesh of the lower hierarchy in the entire area for which data is collected is the dictionary size.
- the dictionary data generated by the dictionary generation unit 401 is stored in the storage unit 303 by the dictionary storage unit 402, and is also transmitted to the terminal device 100 and stored in the dictionary storage unit 201 in the terminal device 100 as well.
- the dictionary storage unit 402 is a storage processing unit that stores the dictionary generated by the dictionary generation unit 401 in the storage unit 303.
- the lower decoding unit 403 aggregates the lower noise addition data from the plurality of logs received by the server device 300, and performs decoding processing and noise removal processing on the lower noise addition data to obtain the lower data.
- the lower decoding unit 403 corresponds to the noise removing unit in the claims.
- the upper decoding unit 404 aggregates the upper noise addition data from the plurality of logs received by the server device 300, and performs decoding processing and noise removal processing on the lower noise addition data to obtain the upper data.
- the low-level data from which noise has been removed is supplied to the noise distribution prediction unit 406.
- High-order noise addition data is supplied to the data expansion unit 405.
- the data expansion unit 405 performs a process of expanding the upper data according to the bit length of the lower data for the noise distribution prediction process by the noise distribution prediction unit 406.
- the high-order noise addition data that has undergone the extended processing is supplied to the noise distribution prediction unit 406.
- the extended upper noise addition data and lower noise addition data are supplied to the noise distribution prediction unit 406.
- the noise distribution prediction unit 406 predicts the noise distribution in the lower noise addition data by using the upper noise addition data and the lower noise addition data.
- the noise distribution prediction result is supplied to the augmentation processing unit 407. Since the data processing device 400 receives the data to which noise has already been added by the noise addition device 200, the noise distribution is predicted in order to grasp what kind of noise has been added by the noise addition device 200. There is a need.
- the augmented processing unit 407 further adds noise to the lower noise addition data so that the noise distribution approaches uniformly based on the predicted noise distribution, and generates augmented data.
- the amount of data can be increased and the sample size can be increased.
- the decoding unit 408 aggregates a plurality of generated augmented data in which augmented data is applied to the data transmitted from the plurality of terminal devices 100, and performs noise removal processing on the plurality of augmented data. And generate multiple original data (lower data).
- the decoding unit 408 corresponds to the noise removing unit in the claims.
- the data type (lower layer) in the area (dictionary) for which data is collected is based on the lower data aggregated from the logs transmitted from the plurality of terminal devices 100.
- the count value (sample size) for each area mesh) can be obtained.
- the count value is the number of times the position information is transmitted to the server device 300 in the regional mesh for each regional mesh in the lower layer.
- the count value is the number of times the position information is transmitted from within the regional mesh for each lower layer regional mesh within a predetermined time.
- the number of transmissions of this position information is the sample size, and the number of transmissions for each regional mesh is the sample size for each data type. This is not the number of times transmitted from one terminal device 100, but the total number of times transmitted from all the terminal devices 100 connected to the server device 300 and transmitting data to the server device 300.
- count values can be obtained from multiple augmented data.
- the count value obtained from the augmented data will be described later.
- the statistical analysis unit 409 creates a heat map to visualize the statistical analysis results, reliability, and the like.
- the statistical analysis unit 409 is not an essential configuration in the present technology.
- the server device 300 and the data processing device 400 are configured as described above.
- step S11 the data to be transmitted to the data processing device 400 is determined.
- This transmission data is the position information of the terminal device 100 acquired by the position information acquisition unit 104 of the terminal device 100.
- the timing of data transmission by data determination may be determined by the user of the terminal device 100, or may be automatically determined by a predetermined algorithm or the like.
- the lower data conversion unit 202 generates lower data that is the original data from the transmission data.
- the lower data is configured as a bit string consisting of bit values set for each region mesh as described above, and indicates from 0 and 1 where in the region mesh the position information is transmitted in a predetermined range defined in advance. ..
- the upper data conversion unit 203 generates upper data from the lower data.
- the upper data is configured as a bit string consisting of bit values set for each regional mesh, and 0 and 1 indicate where in the regional mesh the user's terminal device 100 exists in a predetermined range. It is a thing.
- the upper data is composed of the upper regional mesh whose mesh size is larger than the lower layer regional mesh, and the bit value of the lower layer is reflected in the upper layer regional mesh including the lower layer regional mesh. ..
- the present technology predicts the distribution of noise added by the data processing device 400 of the terminal device 100 by using the hierarchical structure of the data, therefore, the original data is subordinated in order to form the hierarchical structure of the data. And it is necessary to generate higher data from lower data.
- step S14 the lower encoding unit 204 performs encoding processing and noise addition processing on the lower data to generate lower noise addition data.
- step S15 the upper encoding unit 205 performs an encoding process and a noise addition process on the upper data to generate the upper noise addition data.
- step S16 the log generation unit 206 includes the upper noise addition data and the lower noise addition data, and generates a log to be transmitted to the data processing device 400.
- step S17 the log is transmitted to the server device 300 via the communication unit 102 of the terminal device 100.
- the header information unique to the terminal device 100 required for the transmission is added to the log.
- the terminal device 100 performs this process periodically or at a predetermined timing.
- step S21 the logs transmitted from all the terminal devices 100 connected to the server device 300 are received.
- step S22 the lower decoding unit 403 extracts the lower noise addition data from the log and aggregates it. Further, in step S23, the upper decoding unit 404 extracts the upper noise addition data from the log and aggregates it.
- step S24 the lower decoding unit 403 performs decoding processing and noise removal processing on the lower noise addition data to obtain lower data. Further, in step S25, the upper decoding unit 404 performs decoding processing and noise removal processing on the upper noise addition data to obtain the upper data.
- step S26 the data expansion unit 405 expands the upper data according to the bit length of the lower data.
- step S27 the noise distribution prediction unit 406 predicts the distribution of the noise added by the device from the upper data and the lower data.
- Noise distribution prediction is performed using a hierarchical structure of data called upper noise addition data and lower noise addition data.
- FIG. 18A A table showing the correspondence between the lower noise addition data and the bit string of the upper noise addition data shown in FIG. 12 is as shown in FIG. 18A. Then, when the bit string of the upper noise addition data is expanded by the data expansion unit 405 according to the bit length of the lower noise addition data, it becomes as shown in FIG. 18B.
- the extension is to match the same bit value as the bit value of the upper noise addition data with the number of digits of the bit string of the lower noise addition data as shown in FIG. 18B.
- bit value is likely to be a true value.
- bit value is likely to be noise. to decide.
- bit value of the lower layer regional mesh M4-3 is 1, and the bit value of the upper layer regional mesh M4 including the regional mesh M4-3 is also 1, so the bit value of M4-3 is true. It can be predicted that the probability of being a value is high. This also applies to the lower layer regional mesh M1-1 and the upper layer regional mesh M1.
- the bit value of the lower layer regional mesh M2-2 is 1, and the bit value of the upper layer regional mesh M2 including the regional mesh M2-2 is 0.
- the bit value of the area mesh M2-2 in the lower layer that does not match in the lower layer and the upper layer has a low probability of being a true value (a high probability of being noise).
- This also applies to the lower layer regional mesh M2-3 and the upper layer regional mesh M2, and the same applies to the lower layer regional mesh M3-4 and the upper layer regional mesh M3.
- the probability value that is a true value takes a value from 0 to 1.0. If it is 1.0, the probability that it is a true value is 100%, and if it is 0, the probability that it is a true value is 0%. ..
- the true value probability value indicating that the probability of being a true value is high is 0.8
- the true value probability value indicating that the probability of being a true value is low is 0.2.
- the reason why the true value probability value indicating that the probability of being a true value is high is 0.8 instead of 1.0 is that if the bit values of the upper layer and the lower layer are both 1, is it the true value? This is because it does not distinguish whether it is noise or not. Note that this true value probability value is just an example, and the present technology is not limited to this value.
- the horizontal axis is the dictionary size
- the vertical axis is the amount of noise, which is the noise distribution prediction result for each data type constituting the dictionary.
- step S28 the augmentation processing unit 407 performs augmentation processing on the lower noise addition data based on the calculated noise distribution prediction, and further noise is added to the lower noise addition data so that the noise distribution becomes uniform. Add.
- step S41 one region mesh (data type) to be targeted for augmentation processing is selected from the dictionary.
- step S42 noise is further added to the selected area mesh to generate noise addition data.
- step S43 the coefficient of variation (CV: Coefficient of Variation) is calculated for the noise addition data.
- step S44 the coefficient of variation calculated in step S43 is compared with the coefficient of variation calculated in the previous process for the same area mesh as the area mesh for which the coefficient of variation was calculated, and whether or not the coefficient of variation is improved.
- the coefficient of variation has improved means that the value of the coefficient of variation is small, and that the small coefficient of variation means that the variation in noise is small. Therefore, it is desirable that the coefficient of variation is small in order to eliminate the variation in noise and make the noise uniform by further adding noise to the noise-added data.
- step S43 If the coefficient of variation calculated in step S43 is the first coefficient of variation, it may be compared with a preset default coefficient of variation, or the process may proceed to step S45 without performing the comparison process.
- step S45 the noise addition data generated by adding noise in step S42 is adopted as augmented data.
- step S46 the coefficient of variation calculated in step S42 is updated as a coefficient of variation to be compared with a new coefficient of variation in the processing.
- step S47 it is determined whether or not the sample size has reached a predetermined number.
- the sample size reaches a predetermined number, it is considered that the augmentation process is successful and the process ends (Yes in step S47).
- step S41 if the sample size does not reach the predetermined number, the process proceeds to step S41, and steps S41 to S47 are repeated (No in step S47).
- step S44 the coefficient of variation calculated in step S43 is compared with the coefficient of variation calculated in the previous process, and if the coefficient of variation deteriorates (has not improved), the process proceeds to step S48 (No in step S44). .
- the fact that the coefficient of variation has deteriorated means that the value of the coefficient of variation has increased
- the fact that the coefficient of variation has increased means that the variation in noise has increased.
- step S48 it is determined whether or not the number of times it is determined that the coefficient of variation has deteriorated for one coefficient of variation has reached a predetermined number. If the number of times it is determined that the coefficient of variation has deteriorated has not reached a predetermined number, the process proceeds to step S42 (No in step S48).
- step S42 noise is newly added to the data selected in step S41, and the coefficient of variation is calculated for the newly added noise added noise in step S43. Then, if the coefficient of variation is improved as compared with the coefficient of variation of the previous process, the process proceeds to step S45 (Yes in step S44), and if the coefficient of variation is deteriorated, the process proceeds to step S48 (step S44). No).
- steps S42 to S45 and step S48 are repeated until the number of times it is determined that the coefficient of variation has deteriorated reaches a predetermined number.
- step S48 When the number of times it is determined that the coefficient of variation has deteriorated in step S48 reaches a predetermined number, the process proceeds to step S47 (Yes in step S48). In this case, the process proceeds to step S47, and if the sample size does not reach the predetermined value, processing is performed on another dictionary.
- Augmentation processing is performed as described above. According to this augmentation process, noise is additionally added only to the regional mesh (data type) where the coefficient of variation is improved, so noise is added only to the regional mesh where it is necessary to increase the data due to noise, and the noise distribution. Can be made uniform.
- step S29 the decoding unit 410 aggregates the augmented data generated from the logs received from the plurality of terminal devices 100 and supplies the augmented data to the decoding unit 408.
- step S30 the decoding unit 408 performs decoding processing and noise removal processing on the augmented data, and acquires the number of times of data transmission as a count value (sample size) for each region mesh (data type) constituting the dictionary. do.
- the noise distribution as shown in FIG. 22 is obtained by the noise addition in the noise addition device 200 and the augmentation in the data processing device 400. Noise is added so that it is uniform. In FIG. 22, the noise distribution is uniform, and an average of 300 noises are further added to the lower noise addition data in FIG.
- the noise addition data generated by adding noise by the augmentation process can obtain a larger count value (sample size) by adding noise than the original data.
- noise is not added to the data once, but noise is added once on the device side (noise addition device 200), and the variation of the added noise is corrected on the cloud side (data processing device). Further noise is added in 400). Therefore, it is possible to finally generate noise-added data with little variation in noise distribution, and increase the data by noise in a state where there is little error before and after noise addition.
- FIG. 24 is an explanatory diagram showing that the error is reduced by the augmentation process.
- the horizontal axis is the dictionary size and the vertical axis is the count value, and the original data and the noise-added data are compared.
- FIG. 24B shows the distribution of noise added by the noise addition device 200 with the horizontal axis representing the dictionary size and the vertical axis representing the amount of noise, and an ideal uniform noise distribution.
- FIG. 24C compares the original data and the augmented data with the horizontal axis representing the dictionary size and the vertical axis representing the count value.
- the distribution of the noise added by the noise adding device 200 is not uniform, so that a large error occurs between the original data and the noise adding data as shown in FIG. 24A.
- FIG. 24C by adding noise having a uniform distribution by augmentation processing, the error between the original data and the augmented data becomes small.
- the terminal device 100 has been described as a smartphone, but the terminal device 100 includes a personal computer, a tablet terminal, a camera, a wearable device, a smart speaker, a game device, a server device 300, and a pet capable of connecting to the Internet, in addition to the smartphone.
- a personal computer a tablet terminal
- a camera a wearable device
- a smart speaker a game device
- server device 300 a pet capable of connecting to the Internet
- Any type / humanoid robot, various sensor devices, various IoT (Internet of Things) devices, and anything that can transmit information to the outside may be used.
- a regional mesh was used, but this technology is not limited to that.
- any data that can be handled as statistical data such as the frequency of use of pictograms used by the user for character input in the terminal device 100, the frequency of use of applications running in the terminal device 100, and measured values of local temperature. It is also applicable to such things.
- the upper data is generated from the lower data using the bit value set in the area mesh, but when the lower data is the latitude / longitude information of GPS, the last multiple digits of the numerical value of the latitude / longitude information are deleted. This makes it possible to generate latitude / longitude information as higher-level data.
- the upper data is classified by the upper concept such as people, animals, marks, food, etc. Can be generated.
- the data is numerical data such as temperature
- the lower data may be a value after the decimal point (37.1, 38.2, etc.) and the upper data may be an integer value (37, 38, etc.).
- the data is age
- the lower data should be the age including the last digit (35 years old, 47 years old, etc.)
- the upper data should be the age not including the last digit (30s, 40s, etc.). Is also possible.
- the hierarchical structure of the data is two layers, but the data may have a hierarchical structure of three or more layers.
- the present technology can also have the following configurations.
- a noise distribution prediction unit that predicts the distribution of the noise in the noise addition data generated by adding noise to the original data in an external noise addition device, and A data processing apparatus including an augmentation processing unit that performs augmentation processing on the noise-added data based on a prediction result of the noise distribution.
- the data processing device according to (1) wherein in the noise adding device, the noise is added to the lower layer data of the lower layer which is the original data and the upper data which is the data of the upper layer than the lower layer.
- the upper data is generated from the lower data in the external device.
- the upper noise addition data in which noise is added to the upper data and the lower noise addition data in which noise is added to the lower data are composed of a bit string, whichever is one of (1) to (3).
- the data processing apparatus described in. (5) The noise distribution prediction unit compares the upper noise addition data with the lower noise addition data, and determines whether the bits constituting the bit string of the lower noise addition data are noise, thereby making noise in the lower noise addition data.
- the data processing apparatus according to any one of (1) to (4) for predicting distribution.
- the distribution of the noise in the noise addition data generated by adding noise to the original data in the external noise addition device is predicted.
- the distribution of the noise in the noise addition data generated by adding noise to the original data in the external noise addition device is predicted.
- Noise addition device 405 ... Data expansion unit 406 .
- Noise distribution prediction unit 407 ... Augmentation processing unit 400 .
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおける前記ノイズの分布を予測するノイズ分布予測部と、ノイズの分布の予測結果に基づいてノイズ付加データにオーグメンテーション処理を行うオーグメンテーション処理部とを備えるデータ処理装置である。
Description
本技術は、データ処理装置、データ処理方法およびデータ処理プログラムに関する。
近年、インターネットの発達、インターネットに接続可能なデバイスの普及に伴い、デバイスにおける様々なデータがインターネットサービスを提供する会社、デバイスを開発知る会社などによって収集されサービスの向上、製品開発などに利用されている。そのようなデータの中で有用なデータの一つは、デバイスを使用するユーザ個人についてのデータである。ユーザ個人についてのデータとしては、デバイスの使用方法、デバイスを介したインターネット上のサービスの利用状況など様々なものがある。
そのようなユーザ個人のデータは利用価値が高い反面、データの漏洩、データの取り扱い方法などによりユーザのプライバシーを侵害してしまうという問題がある。そこで、プライバシーの侵害を防ぐために差分プライバシーと称される技術が用いられている(特許文献1)。
差分プライバシーとは、収集するデータにノイズを加えることにより、データの主体であるユーザ等を特定することを防ぎつつ、データ自体を使用することをできるようにする技術である。「あるデータが特定ユーザのものである」という仮説に統計的な信頼を一定以上与えないことができる。任意の背景知識による攻撃に対しても、数学的な安全性が与えられるため、プライバシーへの影響を定量的に評価できる特徴を持っている。差分プライバシーを使用することにより、ユーザの同意を得ずにデータを収集した場合でもユーザのプライバシー侵害を防止することができる。差分プライバシーには、出力型差分プライバシーとローカル型差分プライバシーがある。
出力型差分プライバシーはデバイスから生のデータを収集してクラウド上に構築したデータベースで管理する。データ利用者がデータベースにアクセスしてデータを利活用する際にデータにノイズを付加して公開することによりユーザのプライバシーを保護する。クラウドサービスを提供する事業者が生データを管理するため、生データを収集されることに対するユーザの心理的障壁や、それが漏洩した際の事業者のビジネスリスクなどが懸念される。
ローカル型差分プライバシーはユーザの手元のデバイスでノイズを付加し、匿名化されたデータをクラウドで収集する方法である。データ利活用時にはクラウドからノイズを除去した統計値を得ることが可能となる。匿名化された状態でデータを収集するためユーザの心理的障壁は低く、それが漏洩した際の事業者のビジネスリスクも小さい。
そのような差分プライバシーは、収集するデータが大量に存在するほうが精度が高くなるので、通常、収集するデータが大量に存在することを前提としている。しかし、データの種類によって大量のデータを収集することができないものもあり、そのようなデータの場合には差分プライバシーを適切に利用できないという問題がある。
本技術はこのような点に鑑みなされたものであり、データにノイズを付加してデータ量を増やすことにより、少ないデータ量でも統計結果の誤差を小さくすることができるデータ処理装置、データ処理方法およびデータ処理プログラムを提供することを目的とする。
上述した課題を解決するために、第1の技術は、外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおけるノイズの分布を予測するノイズ分布予測部と、ノイズの分布の予測結果に基づいてノイズ付加データにオーグメンテーション処理を行うオーグメンテーション処理部とを備えるデータ処理装置である。
また、第2の技術は、外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおけるノイズの分布を予測し、ノイズの分布の予測結果に基づいてノイズ付加データにオーグメンテーション処理を行うデータ処理方法である。
また、第3の技術は、外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおけるノイズの分布を予測し、ノイズの分布の予測結果に基づいてノイズ付加データにオーグメンテーション処理を行うデータ処理方法をコンピュータに実行させるデータ処理プログラムである。
以下、本技術の実施の形態について図面を参照しながら説明する。なお、説明は以下の順序で行う。
<1.差分プライバシーの説明>
<2.実施の形態>
[2-1.データ処理システム10の構成]
[2-2.地域メッシュの説明]
[2-3.端末装置100とノイズ付加装置200の構成]
[2-4.サーバ装置300とデータ処理装置400の構成]
[2-5.ノイズ付加装置200における処理]
[2-6.データ処理装置400における処理]
<3.変形例>
<1.差分プライバシーの説明>
<2.実施の形態>
[2-1.データ処理システム10の構成]
[2-2.地域メッシュの説明]
[2-3.端末装置100とノイズ付加装置200の構成]
[2-4.サーバ装置300とデータ処理装置400の構成]
[2-5.ノイズ付加装置200における処理]
[2-6.データ処理装置400における処理]
<3.変形例>
<1.差分プライバシーの説明>
まず本技術の実施の形態の説明の前に本技術で使用する差分プライバシーについて説明する。差分プライバシーとは、収集するデータにノイズを加えることにより、データの主体であるユーザ等を特定することを防ぎつつ、データ自体を使用することをできるようにする技術である。本技術ではユーザの手元のデバイス(実施の形態の端末装置100に相当)でノイズを付加し、匿名化されたデータをクラウド(実施の形態のサーバ装置300に相当)で収集するローカル型差分プライバシーを用いる。
まず本技術の実施の形態の説明の前に本技術で使用する差分プライバシーについて説明する。差分プライバシーとは、収集するデータにノイズを加えることにより、データの主体であるユーザ等を特定することを防ぎつつ、データ自体を使用することをできるようにする技術である。本技術ではユーザの手元のデバイス(実施の形態の端末装置100に相当)でノイズを付加し、匿名化されたデータをクラウド(実施の形態のサーバ装置300に相当)で収集するローカル型差分プライバシーを用いる。
図1の概要図に示すように、ローカル型差分プライバシーはデバイスでデータをエンコードしてビット列v1を生成するエンコード技術、ビット列v1にある確率変数に従いノイズを付加したデータv1’を生成するノイズ付加技術、ノイズが付加されたデータを収集する集約技術、集約したデータからノイズを除去するノイズ除去技術(集約技術とノイズ除去技術は同時に実行されることも多く、合わせてデコード技術と呼ぶこともある)、分析のユースケースに従って可視化処理を行うデータ分析技術から構成されるものである。
本技術では差分プライバシーを用いるにあたり、主要なパラメータとして「サンプルサイズ」、「辞書サイズ」、「プライバシー指標」を用いる。
サンプルサイズとは、クラウドで収集するデータの総数を示すものである。サンプルサイズは、「デバイスを有するユーザ数×デバイスからクラウドに送信されるデータ数」として規定することができる。
辞書サイズとは、辞書に含まれるデータ種別の総数を示すものである。辞書はデータの分類を示すデータ種別ごとにデータまとめたデータの集合であり、特許請求の範囲におけるデータ集合に相当するものである。
辞書サイズはデータ種別の数により決定される。例えば、ISO5218で定義されている性別のカテゴリーは男性、女性、不明、適用不能の4種類であるため、データ種別は4であり、この場合、辞書サイズ=4となる。また、例えばスマートフォンなどにおける文字入力で使用される絵文字の場合はその数は現在約2600種類であり、データ種別数は約2600であり、この場合、辞書サイズ=約2600となる。また、GPS(Global Positioning System)の位置情報を1km2の地域メッシュにマッピングする場合、メッシュの数は約38万種になるため、データ種別数は約38万であり、辞書サイズ=約38万となる。
プライバシー指標とは、差分プライバシーにおけるプライバシー保護の度合いを示すものである。プライバシー指標の値が小さくなるほどプライバシー保護の度合いが高くなり、データに付加するノイズの量が多くなる。一方、プライバシー指標の値が大きくなるほど、プライバシー保護の度合いが低くなり、データに付加するノイズの量が少なくなる。
プライバシー指標の値は扱うデータの機微性によって所定の値に決定される。例えば、スマートフォンなどにおける文字入力で使用される絵文字にノイズを付加して匿名化したい場合にはプライバシー指標=4とし、脈拍などのヘルスケア情報の場合にはプライバシー指標=2、とする、などである。なお、これらのプライバシー指標の具体的値はあくまで例示に過ぎず本技術がその値に限定されるものではない。
図2はプライバシー指標が所定の値である場合におけるサンプルサイズ、辞書サイズ、誤差の関係を示すグラフ群である。誤差とは、ノイズを付加していないデータの計測値(以下、正解値と称する。)と、差分プライバシーによりノイズを付加したデータの計測値(ノイズ付計測値と称する。)との差である。図2のグラフにおいては、2本ずつ並んでいる各棒グラフのうち、右側がノイズを付加していないデータの計測値(正解値)を示し、左側が差分プライバシーによりノイズを付加したデータの計測値(ノイズ付計測値)を示す。
図2は上段のグラフA乃至Eは辞書サイズが10であり、中段のグラフF乃至Jは辞書サイズが100であり、下段のグラフK乃至Pは辞書サイズが1000であるとする。
縦に並ぶグラフA、F、Kはサンプルサイズが1万である。また、縦に並ぶグラフB、G、Lはサンプルサイズが10万である。また、縦に並ぶグラフC、H、Mはサンプルサイズが100万である。また、縦に並ぶグラフD、I、Nはサンプルサイズが1000万である。さらに縦に並ぶグラフE、J、Pはサンプルサイズが一億である。なお、全てのグラフのプライバシー指標は同一であるものとする。
各グラフの右上に記載した値がそのグラフにおける正解値とノイズ付計測値との誤差である。
図2のグラフ群からわかるように、サンプルサイズが同じグラフ同士を比較すると、辞書サイズが小さければ小さいほど誤差が小さくなることがわかる。また、辞書サイズが同じグラフ同士を比較すると、サンプルサイズが大きければ大きいほど誤差が小さくなることがわかる。差分プライバシーにおいては正解値とノイズ付計測値との誤差が小さければ小さいほどデータのプライバシーを保護しつつ、信頼度が高いデータを取得できるということであり、好ましい。
図3A乃至図3Eはデータの分布と、正解値とノイズ付測定値の誤差、の関係を示すグラフ群であり、図3Fが各分布における相対誤差を示すグラフである。図3A乃至図3Eの各グラフはサンプルサイズが同一、辞書サイズが同一、プライバシー指標が同一であるものとする。図3Fからわかるようにサンプルサイズ、辞書サイズ、プライバシー指標が同一であってもデータの分布によって相対誤差が異なっている。
図4は、図3A乃至図3Eに示したデータの分布の各種類とプライバシー指標の値の関係を示すグラフである。図4からわかるように分布が異なっていてもプライバシー指標を小さくするとデータに付加するノイズの量は大きくなり、誤差も大きくなる。一方、プライバシー指標を大きくするとデータに付加するノイズの量は小さくなり、誤差も小さくなる。
このようなサンプルサイズ、辞書サイズ、プライバシー指標の関係から、サンプルサイズ、辞書サイズ、プライバシー指標には以下のようなトレード・オフの関係があることがわかる。
辞書サイズが一定であり、かつ、プライバシー指標が一定である場合、サンプルサイズが小さいほど誤差が大きくなる。
また、辞書サイズが小さい場合、サンプルサイズが小さくても誤差は小さいものとなる。一方、辞書サイズが大きい場合、サンプルサイズが大きくても誤差が大きくなる。
さらに、サンプルサイズが一定であり、かつ、辞書サイズが一定である場合、プライバシー指標を小さくすると誤差が大きくなり、プライバシー指標を大きくすると誤差は小さくなる。よって、プライバシー強度を高めて、信頼度を高めるためにはよりサンプルサイズを大きくする必要がある。
ローカル型差分プライバシーにおいては、正解値とノイズ付計測値の統計結果の差である誤差が評価指標として使われている。よって、サンプルサイズが同一、かつ、辞書サイズが同一の場合で、ノイズ量を多くして機微性を高めたとしても、誤差が変わらないのは良いローカル型差分プライバシーである。また、辞書サイズが同一、かつ、プライバシー指標が同一の場合で、サンプルサイズを小さくしても、誤差が変わらないのは良いローカル型差分プライバシーである。一般的にサンプルサイズを大きくするには多くの計測値(データ)を得なければならず、コストがかかるためである。
なお、実際に差分プライバシーを用いたシステムの運用時はノイズを付加していない正解値を得ることができないため誤差を算出することはできない。そのため、本技術では誤差に代えて、差分プライバシーの有効性の指標として信頼度を定義する。
辞書を構成するデータ種別ごとに、複数回のデータの集計結果のバラつきを評価する。異なるデータ種別間で比較するために変動係数を信頼度とする。変動係数とは平均値に対する計測値(データ)とばらつきの関係を相対的に評価する指標であり、下記の式1から求めることができる。
[式1]
変動係数=標準偏差/平均
変動係数=標準偏差/平均
図5は縦軸を変動係数および相対誤差の相対誤差とし、横軸をデータ種別(1から始める通し番号)として、変動係数と相対誤差の関係を示すグラフである。図5に示すように、ノイズ付計測値から算出する変動係数には相対誤差との相関関係がある。よって変動係数は差分プライバシーの有効性の指標として使用することができる。よって変動係数を信頼度として差分プライバシーの有効性の指標として用いる。変動係数が低い誤差も少ないため信頼度は高くなる。一方、変動係数が高い誤差も多いため、信頼度は低くなる。
少ないサンプルサイズで差分プライバシーを適用した結果と差分プライバシーを適用しない結果の誤差を小さくするには辞書サイズを小さくする必要がある。
また、少ないサンプルサイズで差分プライバシーを適用した結果と差分プライバシーを適用しない結果の誤差を小さくするために、データを増やすデータオーグメンテーション技術が利用されている。ノイズ付加をデバイスとクラウドに分割して複数回実施することにより、データ量を増やすことが可能となるが、単純な方法ではデバイスで付加されたノイズのバラつきに起因する誤差を下回って改善することができない。
この点について図6を参照して説明する。図6A乃至図6Hは全て横軸を辞書サイズとし、縦軸をサンプルサイズとしたものである。図6Aに示すように元データのサンプルサイズが大きい場合、図6Bに示すようにデバイスにおいて差分プライバシーにより一様な分布であるノイズが付加される。そしてクラウドにおいてデータを集計した場合、図6Cに示すように一様なノイズの分だけデータが増える。そして図6Dに示すようにノイズを除去して元データを得る場合、ノイズが一様なものとしてノイズ除去を行うため、元データと、差分プライバシーでノイズを付加したデータとの誤差は小さい。
一方、図6Eに示すように元データのサンプルサイズが小さい場合、デバイスにおいては差分プライバシーにより一様な分布ではないばらつきがあるノイズが付加される。そうすると、クラウドにおいてデータを集計した場合、図6Gに示すように分布がばらついているノイズでデータが増えたため、データもばらついた分布となる。しかし、クラウドにおいてはノイズが一様なものとしてノイズ除去を行うため、図6Hに示すように、ノイズを付加していないデータと、差分プライバシーによりノイズを付加したデータとの誤差は大きくなってしまう。サンプルサイズが少ない場合、このように一様に分布しないノイズが誤差の原因となる。
そこで本技術では、データの階層構造を利用して、デバイス起因によるノイズ分布のバラつきをクラウドで予測し、クラウドでノイズのバラつきを補正してノイズ分布が一様になるようにノイズを付加してデータを増加させるオーグメンテーション処理を行う。データの階層構造、オーグメンテーション処理の詳細は後述する。
<2.実施の形態>
[2-1.データ処理システム10の構成]
次に、上述の差分プライバシーを使用するデータ処理システム10の構成について説明する。この実施の形態では地域メッシュを用いたデータの収集において差分プライバシーを使用する例で本技術の説明を行う。この実施の形態では端末装置100から位置情報をサーバ装置300に送信することにより、サーバ装置300に特定の地域メッシュに端末装置100が存在することを示すデータを集めて、端末装置100の分布、すなわち端末装置100を所有するユーザの分布を把握するものである。
[2-1.データ処理システム10の構成]
次に、上述の差分プライバシーを使用するデータ処理システム10の構成について説明する。この実施の形態では地域メッシュを用いたデータの収集において差分プライバシーを使用する例で本技術の説明を行う。この実施の形態では端末装置100から位置情報をサーバ装置300に送信することにより、サーバ装置300に特定の地域メッシュに端末装置100が存在することを示すデータを集めて、端末装置100の分布、すなわち端末装置100を所有するユーザの分布を把握するものである。
図7に示すように、データ処理システム10は複数の端末装置100とサーバ装置300とから構成されている。複数の端末装置100とサーバ装置300はインターネットなどのネットワーク1000を介して接続されている。なお、説明および図面の便宜上、端末装置100は7つ記載されているが、サーバ装置300に接続されている端末装置100はそれ以上に多数存在してもよい。
サーバ装置300は、例えば端末装置100を製造するメーカーなどが運用する、差分プライバシーを利用して端末装置100からデータを収集して統計結果を得るための装置である。サーバ装置300は上述の差分プライバシーの説明におけるクラウドに相当するものである。
端末装置100は、少なくとも位置情報取得機能と通信機能を備えるスマートフォンなどである。端末装置100は定期的または所定のタイミングで自己の位置情報を含むログをサーバ装置300に送信する。
[2-2.地域メッシュの説明]
ここで、特定の端末装置100を使用しているユーザの分布を把握するために使用する地域メッシュについて説明する。地域メッシュとは、統計に利用するために緯度/経度に基づいて地域をほぼ同じ大きさの網の目(メッシュ)に分けたものである。メッシュのそれぞれを識別するためのコードが地域メッシュコードである。
ここで、特定の端末装置100を使用しているユーザの分布を把握するために使用する地域メッシュについて説明する。地域メッシュとは、統計に利用するために緯度/経度に基づいて地域をほぼ同じ大きさの網の目(メッシュ)に分けたものである。メッシュのそれぞれを識別するためのコードが地域メッシュコードである。
地域メッシュはメッシュの大きさに応じて1次メッシュ、2次メッシュ、3次メッシュに分類される。1次メッシュは20万分の1地勢図の1図葉の区画を1単位区画としたもので、緯度差は40分、経度差は1度で、辺の長さは約80kmである。2次メッシュは2次メッシュを緯線方向及び経線方向に8等分してできる区域で、2万5千分の1地形図の1図葉の区画に対応する。緯度差は5分、経度差は7分30秒で、1辺の長さは約10kmである。3次メッシュは2次メッシュを緯線方向及び経線方向に10等分してできる区域である。緯度差は30秒、経度差は45秒で、1辺の長さは約1kmである。
多数の端末装置100からそれぞれの位置情報を収集することにより端末装置100のユーザの日本全域における分布を把握することができる。地域メッシュの数を辞書を構成するデータ種別とし、そのデータ種別数を辞書サイズとする。
図8は1次メッシュを用いて日本全域をカバーした状態を示す図である。日本地図に重畳された矩形の一つ一つが1次メッシュである。1次メッシュは176個のメッシュで日本全域をカバーすることできるため、1次メッシュのみを使用した場合、辞書を構成するデータ種別数は176となり、辞書サイズは176となる。1次メッシュで日本全域をカバーするとメッシュ内に離島や過疎地域、山岳地域などが含まれることになり無駄が多い。
2次メッシュは4862個のメッシュで日本全域をカバーすることができるため、2次メッシュのみを使用した場合、辞書を構成するデータ種別数は4862となり、辞書サイズが4862となる。2次メッシュも1次メッシュと同様にメッシュ内に離島や過疎地域、山岳地域などが含まれることになり無駄が多い。
3次メッシュは387286個のメッシュで日本全域をカバーすることができるため、3次メッシュのみを使用した場合、辞書を構成するデータ種別数は387286となり、辞書サイズが387286となる。
また、1次メッシュ、2次メッシュ、3次メッシュの具体的な値は参照するインターネット上のメッシュについての情報により変動があるため、本技術は上述の具体的なメッシュ数により何かしらの限定を受けるものではない。
[2-3.端末装置100とノイズ付加装置200の構成]
次に図9を参照して端末装置100の構成について説明する。端末装置100は、制御部101、通信部102、記憶部103、位置情報取得部104、表示部105、入力部106およびノイズ付加装置200を備えて構成されている。ノイズ付加装置200は特許請求の範囲における外部のノイズ付加装置に相当するものである。なお、サーバ装置300に接続されている端末装置100は多数存在するが、説明および図面の便宜上、端末装置100の詳細は一つのみを示している。
次に図9を参照して端末装置100の構成について説明する。端末装置100は、制御部101、通信部102、記憶部103、位置情報取得部104、表示部105、入力部106およびノイズ付加装置200を備えて構成されている。ノイズ付加装置200は特許請求の範囲における外部のノイズ付加装置に相当するものである。なお、サーバ装置300に接続されている端末装置100は多数存在するが、説明および図面の便宜上、端末装置100の詳細は一つのみを示している。
制御部101は、CPU(Central Processing Unit)、RAM(Random Access Memory)およびROM(Read Only Memory)などから構成されている。ROMには、CPUにより読み込まれ動作されるプログラムなどが記憶されている。RAMは、CPUのワークメモリとして用いられる。CPUは、ROMに記憶されたプログラムに従い様々な処理を実行してコマンドの発行を行うことによって端末装置100全体の制御を行う。
通信部102は、所定の通信規格によりサーバ装置300やインターネットと通信する通信モジュールである。通信方法としては、Wi-Fi(Wireless Fidelity)などの無線LAN(Local Area Network)、4G(第4世代移動通信システム)、5G(第5世代移動通信システム)、ブロードバンド、Bluetooth(登録商標)、などがある。
記憶部103は、例えば、HDD(Hard Disc Drive)、半導体メモリ、SSD(solid state drive)などにより構成された記憶媒体であり、画像データ、動画データ、音声データ、テキストデータなどのコンテンツデータの他、アプリケーション、プログラムなどのデータを保存するものである。
位置情報取得部104は端末装置100の位置情報を得るためのGPS(Global Positioning System)モジュールである。本実施の形態においては位置情報取得部104で取得される端末装置100の現在位置を示す位置情報が元データとしての下位データに変換される。下位データが特許請求の範囲における元データに相当するものである。
表示部105は、画像や映像などのコンテンツ、ユーザインターフェースなどを表示するための表示デバイスである。表示デバイスとしては、例えば、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、有機EL(Electro Luminescence)パネルなどにより構成されたものがある。
入力部106は、ユーザが端末装置100に対して指示を入力するための各種入力デバイスである。入力部106としては、ボタン、表示部105と一体に構成されたタッチスクリーンなどがある。入力部106に対して入力がなされると、その入力に応じた制御信号が生成されて制御部101やノイズ付加装置200に出力される。
ノイズ付加装置200は、端末装置100がプログラムを実行することにより構成される処理装置である。プログラムは端末装置100内にインストールされていてもよいし、ダウンロード、記憶媒体などで配布されて、ユーザが自らインストールするようにしてもよい。なお、ノイズ付加装置200は、プログラムによって実現されるのみでなく、その機能を有するハードウェアによる専用の装置、回路などを組み合わせて実現されてもよい。
図10に示すようにノイズ付加装置200は、辞書格納部201、下位データ変換部202、上位データ変換部203、下位エンコード部204、上位エンコード部205、ログ生成部206を備えて構成されている。ノイズ付加装置200はサーバ装置300のデータ処理装置400に送信するデータに差分プライバシーにおけるノイズを付加するための装置である。
辞書格納部201は、サーバ装置300から送信された辞書を記憶部103に格納させる記憶処理部である。格納する辞書はデータ処理装置400の辞書生成部401が生成した辞書である。よって、ノイズ付加装置200とデータ処理装置400が有する辞書は共通のものとなる。本実施の形態では、下位データに対応した地域メッシュがデータ種別であり、そのデータ種別により辞書が構成される。よって辞書は、図11に示すように、データ収集の対象となる複数の地域メッシュ(データ種別)により構成される領域全体を示したものであるといえる。データ収集の対象となる領域全体における下位階層の地域メッシュが辞書サイズとなる。
下位データ変換部202は、位置情報取得部104が取得した位置情報を元データとしての下位データに変換するものである。下位データは図11Aに示すように、予め定めた所定の領域における地域メッシュのどこに位置情報が示す位置が存在するかを0と1で示したビット列として構成される。この下位データを構成する地域メッシュの階層を下位階層とする。このビット値はノイズと区別するために真値と称する。
位置情報が示す位置を含む地域メッシュ、すなわち端末装置100が存在する地域メッシュには「1」のビット値を割り当て、端末装置100が存在しない地域メッシュは「0」のビット値を割り当てる。よってビット値「1」はその地域メッシュに端末装置100の所有者である一のユーザが存在することを示している。
予め定めた所定の領域における複数の地域メッシュが辞書を構成するデータ種別である。また、所定時間内における、地域メッシュ内からの複数の端末装置100からサーバ装置300へのデータ(ログ)の送信回数の合計が地域メッシュごとのカウント値(サンプルサイズ)である。送信回数の合計はデータ処理装置400で集計される。
上位データ変換部203は、データの階層構造における下位階層のデータである下位データから上位階層のデータである上位データを生成するものである。
データの階層構造は、下位階層の下位データと、その下位データから生成する上位階層の上位データで構成されるものである。下位データは、位置情報をビット列のデータに変換した元データであり、上位データは下位データから生成したビット列のデータである。本技術はデータの階層構造を利用して端末装置100のノイズ付加装置200で付加されたノイズの分布を予測するものであるため、元データである下位データだけではノイズ分布を予測することができない。よって、データの階層構造を構成するために下位データから上位データを生成する必要がある。
本実施の形態においては図11Aに示すように、まず特定のサイズの地域メッシュ(例えば3次メッシュ)を下位階層とする。そして、下位階層の地域メッシュを包含し、下位階層の地域メッシュよりもメッシュのサイズが大きい上位の地域メッシュ(1次メッシュまたは2次メッシュ)を上位階層とする。なお、2次メッシュを下位階層とし、1次メッシュを上位階層としてもよい。
図11Bに示す4個のメッシュであるM1、M2、M3、M4が上位データに対応する上位階層である。また、図11Aに示す16個のメッシュが下位データに対応する下位階層である。
M1-1、M1-2、M1-3、M1-4が上位階層のメッシュM1に含まれる下位階層のメッシュである。また、M2-1、M2-2、M2-3、M2-4が上位階層のメッシュM2に含まれる下位階層のメッシュである。また、M3-1、M3-2、M3-3、M3-4が上位階層のメッシュM3に含まれる下位階層のメッシュである。さらに、M4-1、M4-2、M4-3、M4-4が上位階層のメッシュM4に含まれる下位階層のメッシュである。
下位階層の複数の地域メッシュにおいて、位置情報が示す位置を含む地域メッシュには下位データ変換部202によりビット値「1」が立てられる。また、位置情報が示す位置を含まない地域メッシュには下位データ変換部202によりビット値「0」が立てられる。このようにして位置情報が下位データとしてのビット列に変換される。
そして、上位データ変換部203は、下位階層の各地域メッシュのビット値をその下位階層の地域メッシュを包含する上位階層の地域メッシュに反映させることにより、上位データであるビット列を生成する。
例えば、図11Aに示すように下位階層の地域メッシュM4-3が位置情報が示す位置を含んでいる場合、地域メッシュM4-3にビット値「1」が立てられる。そして、それは上位階層の地域メッシュM4も位置情報が示す位置を含んでいるとうことである。よって図11Bに示すように、上位階層の地域メッシュM4にもビット値「1」が立てられる。
図11Aに示すように、下位階層の地域メッシュM3-1、M3-2、M3-3、M3-4は位置情報が示す位置を含んでいない場合、それら4つの地域メッシュにはビット値「0」が立てられる。そして、図11Bに示すように、それは上位階層の地域メッシュM3も位置情報が示す位置を含んでいないということであり、上位階層の地域メッシュM3にもビット値「0」が立てられる。これは上位階層の地域メッシュM1、M2においても同様である。このようにして下位階層の下位データから上位階層の上位データを生成することができる。
ノイズ付加装置200の説明に戻る。下位エンコード部204は、サーバ装置300に送信する下位データであるビット列にエンコード処理とノイズ付加処理を施し、下位ノイズ付加データを生成するものである。付加するノイズの量はプライバシー指標と確率分布に従って決定される。よって、ノイズを付加するまでどのような分布のノイズが付加されるかはわからない。
例えば、図11Aに示した下位データにノイズを付加すると図12Aに示すようになる。位置情報に示す位置が地域メッシュ内に存在することを示すビット値である「1」が複数の地域メッシュにおいてノイズとして付加されている。これによりビット値「1」の数が増加している。図12Aにおいて真値とノイズとを区別するためにノイズであるビット値「1」には(n)を付けている。
上位エンコード部205は、サーバ装置300に送信する上位データであるビット列にエンコード処理とノイズ付加処理を施し、上位ノイズ付加データを生成するものである。付加するノイズの量はプライバシー指標と確率分布に従って決定される。よって、ノイズを付加するまでどのような分布のノイズが付加されるかはわからない。
例えば、図11Bに示した上位データにノイズを付加すると図12Bに示すようになる。位置情報が示す位置が地域メッシュ内に存在することを示すビット値である「1」が地域メッシュにおいてノイズとして付加されている。これによりビット値「1」の数が増加している。図12Bにおいて真値とノイズとを区別するためにノイズであるビット値「1」にはノイズには(n)を付けている。なお、下位データと上位データにはそれぞれ別の処理でノイズを付加するため、下位データにおいてノイズが付加されている下位階層の地域メッシュを包含する上位階層の地域メッシュにもノイズが付加されているとは限らない。
元データである下位データに対応する全地域メッシュの数が辞書サイズに相当する。
ログ生成部206は、上位ノイズ付加データと下位ノイズ付加データを含む、サーバ装置300へ送信するログを生成するものである。ログはヘッダー情報としてタイムスタンプ、差分プライバシーのパラメータ情報である上位プライバシー指標および下位プライバシー指標、上位ビット数、下位ビット数、端末装置100の識別情報(ID)などを含むものである。生成されたログは、通信部102による通信でネットワーク1000を介してサーバ装置300に送信される。なお、プライバシー指標や識別情報など不変の情報については予め端末装置100とサーバ装置300で共有していればログに含める必要はない。
端末装置100とノイズ付加装置200は以上のように構成されている。
[2-4.サーバ装置300とデータ処理装置400の構成]
次に図13を参照してサーバ装置300の構成について説明する。サーバ装置300は制御部301、通信部302、記憶部303、データ処理装置400とから構成されている。
次に図13を参照してサーバ装置300の構成について説明する。サーバ装置300は制御部301、通信部302、記憶部303、データ処理装置400とから構成されている。
制御部301は、CPU、RAMおよびROMなどから構成されている。CPUは、ROMに記憶されたプログラムに従い様々な処理を実行してコマンドの発行を行うことによってサーバ装置300全体の制御を行う。
通信部302は、所定の通信規格により端末装置100やインターネットと通信する通信モジュールである。通信方法としては、Wi-Fiなどの無線LAN、4G、5G、ブロードバンド、Bluetooth(登録商標)などがある。
記憶部303は、例えば、HDD、半導体メモリ、SSDなどにより構成された記憶媒体であり、アプリケーション、プログラム、端末装置100から送信されたログ、データなどを保存するものである。
データ処理装置400は、サーバ装置300がプログラムを実行することにより構成される処理部である。プログラムはサーバ装置300内にインストールされていてもよいし、ダウンロード、記憶媒体などで配布されて、ユーザが自らインストールするようにしてもよい。なお、データ処理装置400は、プログラムによって実現されるのみでなく、その機能を有するハードウェアによる専用の装置、回路などを組み合わせて実現されてもよい。
図14に示すようにデータ処理装置400は、辞書生成部401、辞書格納部402、下位デコード部403、上位デコード部404、データ拡張部405、ノイズ分布予測部406、オーグメンテーション処理部407、デコード部408、統計分析部409を備えて構成されている。
辞書生成部401は、データ集合として辞書の生成するものである。本実施の形態においては下位データに対応した地域メッシュがデータ種別であり、そのデータ種別により辞書が構成される。よって辞書は、図11に示すように、データ収集の対象となる複数の地域メッシュ(データ種別)により構成される領域全体を示したものであるといえる。データ収集の対象となる領域全体における下位階層の地域メッシュが辞書サイズとなる。
辞書生成部401により生成された辞書のデータは辞書格納部402により記憶部303に格納されるとともに、端末装置100に送信されて端末装置100においても辞書格納部201により格納される。
辞書格納部402は、辞書生成部401が生成した辞書を記憶部303に格納する記憶処理部である。
下位デコード部403は、サーバ装置300が受信した複数のログから下位ノイズ付加データを集約するとともに、下位ノイズ付加データにデコード処理とノイズ除去処理を施して下位データを得る。下位デコード部403は特許請求の範囲におけるノイズ除去部に相当するものである。
上位デコード部404は、サーバ装置300が受信した複数ログから上位ノイズ付加データを集約するとともに、下位ノイズ付加データにデコード処理とノイズ除去処理を施して上位データを得る。ノイズが除去された下位データはノイズ分布予測部406に供給される。
データ拡張部405には上位ノイズ付加データが供給される。データ拡張部405はノイズ分布予測部406によるノイズ分布予測処理のために、下位データのビット長に合わせて上位データを拡張させる処理を行う。拡張処理が施された上位ノイズ付加データはノイズ分布予測部406に供給される。
ノイズ分布予測部406には拡張された上位ノイズ付加データと、下位ノイズ付加データが供給される。ノイズ分布予測部406は、上位ノイズ付加データと下位ノイズ付加データを用いて下位ノイズ付加データにおけるノイズの分布を予測する。ノイズ分布予測結果はオーグメンテーション処理部407に供給される。データ処理装置400が受信するのはノイズ付加装置200ですでにノイズが付加されたデータであるため、ノイズ付加装置200でどのようなノイズが付加されたかを把握するためにはノイズ分布を予測する必要がある。
オーグメンテーション処理部407は、予測したノイズ分布に基づいてノイズ分布が一様に近づくように下位ノイズ付加データにさらにノイズを付加し、オーグメンテッドデータ(augmented data)を生成する。このオーグメンテーション処理でノイズを付加することによりデータ量を多くしてサンプルサイズを増やすことができる。
デコード部408は、複数の端末装置100からそれぞれ送信されたデータにオーグメンテーション処理が施された生成された複数のオーグメンテッドデータを集約するとともに、複数のオーグメンテッドデータにノイズ除去処理を行い、複数の元データ(下位データ)を生成する。デコード部408は特許請求の範囲におけるノイズ除去部に相当するものである。
下位データはノイズが付加されていないデータであるため、複数の端末装置100から送信されたログから集約した下位データに基づいて、データ収集の対象となる領域(辞書)におけるデータ種別(下位階層の地域メッシュ)ごとのカウント値(サンプルサイズ)を得ることができる。カウント値とは、下位階層の地域メッシュごとに地域メッシュ内において位置情報がサーバ装置300に送信された回数である。これにより、統計結果として、データ収集の対象となる領域(辞書)において端末装置100を所有するユーザがどこにどれだけ存在するかを把握することができる。
カウント値は例えば図15に示すように、所定時間内における下位階層の地域メッシュごとのその地域メッシュ内から位置情報が送信された回数である。この位置情報の送信回数がサンプルサイズであり、地域メッシュごとの送信回数がデータ種別ごとのサンプルサイズとなる。これは1つの端末装置100から送信された回数ではなく、サーバ装置300に接続され、サーバ装置300にデータを送信する全ての端末装置100から送信された送信回数の合計である。
また、複数のオーグメンテッドデータからもカウント値を得ることができる。オーグメンテッドデータから得られるカウント値については後述する。
統計分析部409は、統計分析結果、信頼度などを可視化するためにヒートマップを作成するものである。なお、統計分析部409は本技術において必須の構成ではない。
サーバ装置300とデータ処理装置400は以上のように構成されている。
[2-5.ノイズ付加装置200における処理]
次に図16にフローチャートを参照してノイズ付加装置200における処理について説明する。まずステップS11で、データ処理装置400に送信するデータを決定する。この送信データは端末装置100の位置情報取得部104で取得された端末装置100の位置情報である。データ決定によるデータ送信のタイミングは端末装置100のユーザが決定してもよいし、予め定めたアルゴリズムなどにより自動で決定してもよい。
次に図16にフローチャートを参照してノイズ付加装置200における処理について説明する。まずステップS11で、データ処理装置400に送信するデータを決定する。この送信データは端末装置100の位置情報取得部104で取得された端末装置100の位置情報である。データ決定によるデータ送信のタイミングは端末装置100のユーザが決定してもよいし、予め定めたアルゴリズムなどにより自動で決定してもよい。
次にステップS12で、下位データ変換部202は送信データから元データとなる下位データを生成する。下位データは上述したように地域メッシュごとに立てられたビット値からなるビット列として構成され、予め定めた所定の範囲における地域メッシュのどこから位置情報が送信されたかを0と1で示したものである。
次にステップS13で、上位データ変換部203は下位データから上位データを生成する。上述したように、上位データは地域メッシュごとに立てられたビット値からなるビット列として構成され、予め定めた所定の範囲における地域メッシュのどこにユーザの端末装置100が存在するかを0と1で示したものである。上位データは下位階層の地域メッシュよりもメッシュのサイズが大きい上位の地域メッシュで構成され、下位階層のビット値をその下位階層の地域メッシュを包含する上位階層の地域メッシュに反映させたものである。
本技術はデータの階層構造を利用して端末装置100のデータ処理装置400で付加されるノイズの分布を予測するものであるため、よって、データの階層構造を構成するために元データを下位データとし、さらに下位データから上位データを生成する必要がある。
次にステップS14で、下位エンコード部204は下位データにエンコード処理とノイズ付加処理を施し、下位ノイズ付加データを生成する。またステップS15で、上位エンコード部205は上位データにエンコード処理とノイズ付加処理を施し、上位ノイズ付加データを生成する。なお、ステップS12とステップS13、ステップS14とステップS15は説明の便宜上順序をつけて説明しているが、並列的に同時に行ってもよい。
次にステップS16で、ログ生成部206は上位ノイズ付加データと下位ノイズ付加データを含み、データ処理装置400に送信するログを生成する。
そしてステップS17で、端末装置100の通信部102を介してサーバ装置300にログを送信する。なお、ログをサーバ装置300に送信する際には送信に必要な端末装置100固有のヘッダー情報をログに付加する。
端末装置100はこの処理を定期的に、または予め定められたタイミングで行う。
[2-6.データ処理装置400における処理]
次に図17のフローチャートを参照してデータ処理装置400における処理について説明する。まずステップS21で、サーバ装置300に接続されている全ての端末装置100から送信されるログを受信する。
次に図17のフローチャートを参照してデータ処理装置400における処理について説明する。まずステップS21で、サーバ装置300に接続されている全ての端末装置100から送信されるログを受信する。
次にステップS22で下位デコード部403が、ログから下位ノイズ付加データを取り出して集約する。また、ステップS23で上位デコード部404が、ログから上位ノイズ付加データを取り出して集約する。
次にステップS24で、下位デコード部403が下位ノイズ付加データにデコード処理とノイズ除去処理を施して下位データを得る。また、ステップS25で、上位デコード部404が上位ノイズ付加データにデコード処理とノイズ除去処理を施し、上位データを得る。
次にステップS26で、データ拡張部405は上位データを下位データのビット長に合わせて拡張する。
次にステップS27で、ノイズ分布予測部406で上位データおよび下位データからデバイスで付加されたノイズの分布を予測する。
ここで、ステップ26のデータ拡張とステップS27のノイズ分布予測について図12に示した下位ノイズ付加データと上位ノイズ付加データを参照して説明する。ノイズ分布予測は上位ノイズ付加データと下位ノイズ付加データというデータの階層構造を利用して行う。
図12に示す下位ノイズ付加データと上位ノイズ付加データのビット列の対応関係を表にすると図18Aのようになる。そして、上位ノイズ付加データのビット列をデータ拡張部405により下位ノイズ付加データのビット長に合わせて拡張すると図18Bに示すようになる。拡張とは、図18Bに示すように上位ノイズ付加データのビット値と同じビット値を下位ノイズ付加データのビット列の桁数に合わせるようにすることである。
下位階層の一の地域メッシュと、その一の地域メッシュを包含する上位階層の地域メッシュの両方にビットが立てられている場合、そのビット値は真値である可能性が高いと判断する。一方、下位階層の一の地域メッシュとその一の地域メッシュを包含する上位階層の地域メッシュのいずれか一方にだけビット値が立てられている場合、そのビット値はノイズである可能性が高いと判断する。
例えば、下位階層の地域メッシュM4-3のビット値は1であり、地域メッシュM4-3を包含する上階階層の地域メッシュM4のビット値も1であるため、M4-3のビット値は真値である確率が高いと予測できる。これは下位階層の地域メッシュM1-1と上位階層の地域メッシュM1においても同様である。
一方、下位階層の地域メッシュM2-2のビット値は1であり、地域メッシュM2-2を包含する上階階層の地域メッシュM2のビット値は0である。このように、下位階層と上位階層で一致しない下位階層の地域メッシュM2-2のビット値は真値である確率が低い(ノイズである確率が高い)と予測できる。これは、下位階層の地域メッシュM2-3と上位階層の地域メッシュM2においても同様であり、下位階層の地域メッシュM3-4と上位階層の地域メッシュM3においても同様である。
このように下位階層においてビット値1が付されている全ての地域メッシュについてそれが真値である確率が高いか低いかを確認し、真値である確率が高いビット値には真値である確率が高いことを示す真値確率値をかける。一方、真値である確率が低いビット値には真値である確率が低いことを示す真値確率値をかける。そうすると下位ノイズ付加データのビット値1が真値である確率値は図19に示すようになる。
真値である確率値は0から1.0の値をとり、1.0の場合には真値である確率が100%であり、0の場合には真値である確率が0%である。例えば、真値である確率が高いことを示す真値確率値は0.8とし、真値である確率が低いことを示す真値確率値は0.2とする。真値である確率が高いことを示す真値確率値を1.0ではなく0.8としているのは、上位階層と下位階層のビット値が共に1である場合、それが真値であるかノイズであるかの区別を行っていないからである。なお、この真値確率値はあくまで一例であり、本技術がこの値に限定されるものではない。
このようにして下位ノイズ付加データであるビット列について真値であるかノイズであるかの確率を得ることができる。そしてこの真値確率に基づいて図20に示すような辞書についてのノイズの分布予測を得ることができる。図20のグラフは横軸を辞書サイズとし、縦軸をノイズ量として辞書を構成するデータ種別ごとのノイズの分布予測結果である。
図17のフローチャートの説明に戻る。次にステップS28で、算出したノイズ分布予測に基づいてオーグメンテーション処理部407が下位ノイズ付加データにオーグメンテーション処理を行い、ノイズ分布が一様になるように下位ノイズ付加データにさらにノイズを付加する。
ここで図21のフローチャートを参照してオーグメンテーション処理について説明する。
まずステップS41で、辞書からオーグメンテーション処理の対象とする地域メッシュ(データ種別)を1つ選択する。
次にステップS42で、選択した地域メッシュにおいてさらにノイズを付加し、ノイズ追加データを生成する。次にステップS43でノイズ追加データについて変動係数(CV:Coefficient of Variation)を算出する。
次にステップS44で、ステップS43で算出した変動係数と、その変動係数を算出した地域メッシュと同じ地域メッシュについて前回の処理で算出した変動係数とを比較し、変動係数が改善しているか否かを判定する。ここで、「変動係数が改善した」とは、変動係数の値が小さくっていることであり、変動係数が小さくなるということはノイズのばらつきが小さくなっているということを表している。したがって、ノイズ付加データにさらにノイズを付加することによりノイズのばらつきがなくなりノイズが一様になるためには、変動係数が小さくなることが望ましい。
なお、ステップS43で算出した変動係数が1つ目の変動係数である場合には予め設定したデフォルトの変動係数と比較してもよいし、比較処理は行わずにステップS45に進むようにしてもよい。
変動係数が改善している場合、処理はステップS45に進む(ステップS44のYes)。次にステップS45で、ステップS42でノイズを追加して生成したノイズ追加データをオーグメンテッドデータとして採用する。
そしてステップS46で、ステップS42で算出した変動係数を次に処理における新たな変動係数と比較する変動係数として更新する。
そしてステップS47でサンプルサイズが予め定めた所定数に達したか否かを判定する。サンプルサイズが所定数に達した場合、オーグメンテーション処理が成功したとして処理は終了となる(ステップS47のYes)。
一方、サンプルサイズが所定数に達していない場合、処理はステップS41に進み、ステップS41乃至ステップS47が繰り返される(ステップS47のNo)。
説明はステップS44に戻る。ステップS44で、ステップS43で算出した変動係数と前回の処理で算出した変動係数とを比較し、変動係数が悪化した(改善していない)場合、処理はステップS48に進む(ステップS44のNo)。ここで、変動係数が悪化した、とは、変動係数の値が大きくなっていることであり、変動係数が大きくなるということはノイズのばらつきが大きくなっているということを表している。
次にステップS48で、一の変動係数について変動係数が悪化したと判定した回数が所定数に達したか否かを判定する。変動係数が悪化したと判定した回数が所定数に達していない場合処理はステップS42に進む(ステップS48のNo)。
そしてステップS42で、ステップS41で選択したデータに新たにノイズを付加し、ステップS43でその新たにノイズを付加したノイズ付加データについて変動係数を算出する。そして、その変動係数が前回の処理の変動係数と比較して改善している場合は処理はステップS45に進み(ステップS44のYes)、悪化している場合処理はステップS48に進む(ステップS44のNo)。
変動係数が悪化している場合、変動係数が悪化したと判定した回数が所定数に達するまで、ステップS42乃至ステップS45、およびステップS48が繰り返される。
ステップS48で変動係数が悪化したと判定した回数が所定数に達した場合、処理はステップS47に進む(ステップS48のYes)。この場合、ステップS47に進み、サンプルサイズが所定値に達していない場合他の辞書に対する処理を行う。
以上のようにしてオーグメンテーション処理が行われる。このオーグメンテーション処理によれば、変動係数が改善する地域メッシュ(データ種別)にのみノイズが追加で付加されるため、ノイズによりデータを増やす必要がある地域メッシュにのみノイズを付加してノイズ分布を一様にすることができる。
図17のフローチャートの説明に戻る。次にステップS29で、デコード部410が複数の端末装置100から受信したログから生成されたオーグメンテッドデータを集約して、デコード部408に供給する。
次にステップS30で、デコード部408でオーグメンテッドデータにデコード処理とノイズ除去処理を施し、辞書を構成する地域メッシュ(データ種別)ごとのカウント値(サンプルサイズ)としてのデータの送信回数を取得する。
オーグメンテーション処理により、例えば下位階層の地域メッシュにおけるデータが図15に示すような場合、ノイズ付加装置200におけるノイズ付加とデータ処理装置400におけるオーグメンテーションにより図22に示すようなノイズの分布が一様になるようにノイズが付加される。図22ではノイズ分布が一様であり、図15の下位ノイズ付加データにさらに平均300のノイズが付加されている。
図23のグラフに示すように、オーグメンテーション処理によりノイズが追加されて生成されたノイズ追加データは元データと比べて、ノイズを追加した分大きなカウント値(サンプルサイズ)を得ることができる。
そして300のノイズを、辞書を構成する全てのデータ種別(地域メッシュ)から一様に減算することにより、元データの状態にして正しい統計値を得ることができる。
本技術により処理は以上のように行われる。本技術によれば、サンプルサイズが小さいことにより差分プライバシーとして付加するノイズが一様に分布せずにばらつく場合でも、そのノイズのばらつきを予測して分布が一様になるようにノイズを付加することができる。このノイズ付加により擬似的にデータ量(サンプルサイズ)を増やすことができる。差分プライバシーでは辞書サイズが同じ場合、サンプルサイズが大きければ大きいほど誤差が小さくなるため、ノイズを付加してデータ量を増やす(サンプルサイズを大きくする)ことにより、少ないデータ量でも統計結果の誤差を小さくすることができ、差分プライバシーの精度を高めることができる。
また、本技術ではデータにノイズを一度付加するのではなく、デバイス側(ノイズ付加装置200)で一度ノイズを付加し、その付加されたノイズのばらつきを補正するようにさらにクラウド側(データ処理装置400)でさらにノイズを付加する。よって、最終的にノイズの分布のばらつきが少ないノイズ付加データを生成して、ノイズ付加前後で誤差が少ない状態でノイズによりデータを増やすことができる。
図24はオーグメンテーション処理により誤差が小さくなることの説明図である。図24Aは横軸を辞書サイズ、縦軸をカウント値として元データとノイズ付加データを比較したものである。図24Bは横軸を辞書サイズ、縦軸をノイズ量としてノイズ付加装置200で付加されるノイズの分布と、理想とする一様なノイズ分布を示したものである。図24Cは横軸を辞書サイズ、縦軸をカウント値として元データとオーグメンテッドデータを比較したものである。
図24Bに示すようにノイズ付加装置200で付加されるノイズの分布が一様でないことにより、図24Aに示すように元データとノイズ付加データとで大きな誤差が生じている。それに対し、図24Cに示すように分布が一様なノイズをオーグメンテーション処理で付加することにより元データとオーグメンテッドデータでは誤差が小さくなる。
<3.変形例>
以上、本技術の実施の形態について具体的に説明したが、本技術は上述の実施の形態に限定されるものではなく、本技術の技術的思想に基づく各種の変形が可能である。
以上、本技術の実施の形態について具体的に説明したが、本技術は上述の実施の形態に限定されるものではなく、本技術の技術的思想に基づく各種の変形が可能である。
実施の形態では端末装置100をスマートフォンとして説明を行ったが、端末装置100はスマートフォンの他、パーソナルコンピュータ、タブレット端末、カメラ、ウェアラブル機器、スマートスピーカ、ゲーム機器、サーバ装置300、インターネット接続可能なペット型/人型ロボット、各種センサ装置、各種IoT(Internet of Things)機器、情報を外部に送信することができるものであればなんでもよい。
実施の形態では、地域メッシュを使用したが本技術はそれに限られるものではない。例えば、端末装置100における文字入力でユーザが使用する絵文字の使用頻度、端末装置100において動作するアプリケーションの使用頻度、地域の温度の計測値、など、統計データとして扱えることができるものであればどのようなものでも適用可能である。
実施の形態では地域メッシュに立てられたビット値を用いて下位データから上位データを生成したが、下位データがGPSの緯度経度情報である場合、その緯度経度情報の数値の下複数桁を削除することにより、上位データとしての緯度経度情報を生成することができる。
また、下位データがスマートフォンなどにおける文字入力で使用される絵文字の全種類である場合、その絵文字の種類の分類を例えば、人、動物、マーク、食べ物のなどの上位概念で分類することにより上位データを生成することができる。また、データが温度などの数値データである場合、下位データを小数点以下の値(37.1、38.2など)とし、上位データを整数値(37、38など)とすることもできる。さらに、データが年齢である場合、下位データを下一桁も含めた年齢とし(35歳、47歳など)、上位データを下一桁を含まない年代(30代、40代など)とすることも可能である。
実施の形態ではデータの階層構造は2階層としたが、データは3階層以上の階層構造であってもよい。
本技術は以下のような構成も取ることができる。
(1)
外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおける前記ノイズの分布を予測するノイズ分布予測部と、
前記ノイズの分布の予測結果に基づいて前記ノイズ付加データにオーグメンテーション処理を行うオーグメンテーション処理部とを備えるデータ処理装置。
(2)
前記ノイズ付加装置において、前記ノイズは、前記元データである下位階層の下位データと、前記下位階層よりも上位階層のデータである上位データにそれぞれ付加される(1)に記載のデータ処理装置。
(3)
前記上位データは前記外部装置において前記下位データから生成される(2)に記載のデータ処理装置。
(4)
前記ノイズ付加装置において前記上位データにノイズが付加された上位ノイズ付加データと、前記下位データにノイズが付加された下位ノイズ付加データはビット列で構成されている(1)から(3)のいずれかに記載のデータ処理装置。
(5)
前記ノイズ分布予測部は、前記上位ノイズ付加データと前記下位ノイズ付加データを比較し、前記下位ノイズ付加データのビット列を構成するビットがノイズであるかを判定することにより前記下位ノイズ付加データにおけるノイズ分布を予測する(1)から(4)のいずれかに記載のデータ処理装置。
(6)
前記上位ノイズ付加データと前記下位ノイズ付加データとを比較するために前記上位ノイズ付加データの拡張処理を行うデータ拡張部を備える(5)に記載のデータ処理装置。
(7)
前記データ拡張部は、前記上位ノイズ付加データのビット列の桁数を前記下位ノイズ付加データのビット列の桁数に一致させるように前記上位ノイズ付加データのビット列を拡張する(6)に記載のデータ処理装置。
(8)
前記オーグメンテーション処理部は、前記ノイズ付加データにノイズを付加してデータ量を増やす(1)から(7)のいずれかに記載のデータ処理装置。
(9)
前記オーグメンテーション処理部は、前記ノイズの分布のばらつきを示す変動係数が小さくなるように前記ノイズ付加データにノイズを付加する(8)に記載のデータ処理装置。
(10)
前記オーグメンテーション処理部により前記元データに付加された前記ノイズを除去するノイズ除去部を備える(9)に記載のデータ処理装置。
(11)
外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおける前記ノイズの分布を予測し、
前記ノイズの分布の予測結果に基づいて前記ノイズ付加データにオーグメンテーション処理を行うデータ処理方法。
(12)
外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおける前記ノイズの分布を予測し、
前記ノイズの分布の予測結果に基づいて前記ノイズ付加データにオーグメンテーション処理を行うデータ処理方法をコンピュータに実行させるデータ処理プログラム。
(1)
外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおける前記ノイズの分布を予測するノイズ分布予測部と、
前記ノイズの分布の予測結果に基づいて前記ノイズ付加データにオーグメンテーション処理を行うオーグメンテーション処理部とを備えるデータ処理装置。
(2)
前記ノイズ付加装置において、前記ノイズは、前記元データである下位階層の下位データと、前記下位階層よりも上位階層のデータである上位データにそれぞれ付加される(1)に記載のデータ処理装置。
(3)
前記上位データは前記外部装置において前記下位データから生成される(2)に記載のデータ処理装置。
(4)
前記ノイズ付加装置において前記上位データにノイズが付加された上位ノイズ付加データと、前記下位データにノイズが付加された下位ノイズ付加データはビット列で構成されている(1)から(3)のいずれかに記載のデータ処理装置。
(5)
前記ノイズ分布予測部は、前記上位ノイズ付加データと前記下位ノイズ付加データを比較し、前記下位ノイズ付加データのビット列を構成するビットがノイズであるかを判定することにより前記下位ノイズ付加データにおけるノイズ分布を予測する(1)から(4)のいずれかに記載のデータ処理装置。
(6)
前記上位ノイズ付加データと前記下位ノイズ付加データとを比較するために前記上位ノイズ付加データの拡張処理を行うデータ拡張部を備える(5)に記載のデータ処理装置。
(7)
前記データ拡張部は、前記上位ノイズ付加データのビット列の桁数を前記下位ノイズ付加データのビット列の桁数に一致させるように前記上位ノイズ付加データのビット列を拡張する(6)に記載のデータ処理装置。
(8)
前記オーグメンテーション処理部は、前記ノイズ付加データにノイズを付加してデータ量を増やす(1)から(7)のいずれかに記載のデータ処理装置。
(9)
前記オーグメンテーション処理部は、前記ノイズの分布のばらつきを示す変動係数が小さくなるように前記ノイズ付加データにノイズを付加する(8)に記載のデータ処理装置。
(10)
前記オーグメンテーション処理部により前記元データに付加された前記ノイズを除去するノイズ除去部を備える(9)に記載のデータ処理装置。
(11)
外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおける前記ノイズの分布を予測し、
前記ノイズの分布の予測結果に基づいて前記ノイズ付加データにオーグメンテーション処理を行うデータ処理方法。
(12)
外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおける前記ノイズの分布を予測し、
前記ノイズの分布の予測結果に基づいて前記ノイズ付加データにオーグメンテーション処理を行うデータ処理方法をコンピュータに実行させるデータ処理プログラム。
200・・・ノイズ付加装置
405・・・データ拡張部
406・・・ノイズ分布予測部
407・・・オーグメンテーション処理部
400・・・データ処理装置
405・・・データ拡張部
406・・・ノイズ分布予測部
407・・・オーグメンテーション処理部
400・・・データ処理装置
Claims (12)
- 外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおける前記ノイズの分布を予測するノイズ分布予測部と、
前記ノイズの分布の予測結果に基づいて前記ノイズ付加データにオーグメンテーション処理を行うオーグメンテーション処理部と
を備えるデータ処理装置。 - 前記ノイズ付加装置において、前記ノイズは、前記元データである下位階層の下位データと、前記下位階層よりも上位階層のデータである上位データにそれぞれ付加される
請求項1に記載のデータ処理装置。 - 前記上位データは前記外部装置において前記下位データから生成される
請求項2に記載のデータ処理装置。 - 前記ノイズ付加装置において前記上位データにノイズが付加された上位ノイズ付加データと、前記下位データにノイズが付加された下位ノイズ付加データはビット列で構成されている
請求項1に記載のデータ処理装置。 - 前記ノイズ分布予測部は、前記上位ノイズ付加データと前記下位ノイズ付加データを比較し、前記下位ノイズ付加データのビット列を構成するビットがノイズであるかを判定することにより前記下位ノイズ付加データにおけるノイズ分布を予測する
請求項1に記載のデータ処理装置。 - 前記上位ノイズ付加データと前記下位ノイズ付加データとを比較するために前記上位ノイズ付加データの拡張処理を行うデータ拡張部を備える
請求項5に記載のデータ処理装置。 - 前記データ拡張部は、前記上位ノイズ付加データのビット列の桁数を前記下位ノイズ付加データのビット列の桁数に一致させるように前記上位ノイズ付加データのビット列を拡張する
請求項6に記載のデータ処理装置。 - 前記オーグメンテーション処理部は、前記ノイズ付加データにノイズを付加してデータ量を増やす
請求項1に記載のデータ処理装置。 - 前記オーグメンテーション処理部は、前記ノイズの分布のばらつきを示す変動係数が小さくなるように前記ノイズ付加データにノイズを付加する
請求項8に記載のデータ処理装置。 - 前記オーグメンテーション処理部により前記元データに付加された前記ノイズを除去するノイズ除去部を備える
請求項9に記載のデータ処理装置。 - 外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおける前記ノイズの分布を予測し、
前記ノイズの分布の予測結果に基づいて前記ノイズ付加データにオーグメンテーション処理を行う
データ処理方法。 - 外部のノイズ付加装置において元データにノイズを付加して生成されたノイズ付加データにおける前記ノイズの分布を予測し、
前記ノイズの分布の予測結果に基づいて前記ノイズ付加データにオーグメンテーション処理を行う
データ処理方法をコンピュータに実行させるデータ処理プログラム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21772151.3A EP4123491A4 (en) | 2020-03-19 | 2021-03-17 | DATA PROCESSING DEVICE, DATA PROCESSING METHOD AND DATA PROCESSING PROGRAM |
US17/798,725 US20230101532A1 (en) | 2020-03-19 | 2021-03-17 | Data processing device, data processing method, and data processing program |
CN202180020400.7A CN115280315A (zh) | 2020-03-19 | 2021-03-17 | 数据处理装置、数据处理方法和数据处理程序 |
JP2022508395A JPWO2021187506A1 (ja) | 2020-03-19 | 2021-03-17 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020-049031 | 2020-03-19 | ||
JP2020049031 | 2020-03-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021187506A1 true WO2021187506A1 (ja) | 2021-09-23 |
Family
ID=77771061
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2021/010736 WO2021187506A1 (ja) | 2020-03-19 | 2021-03-17 | データ処理装置、データ処理方法およびデータ処理プログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230101532A1 (ja) |
EP (1) | EP4123491A4 (ja) |
JP (1) | JPWO2021187506A1 (ja) |
CN (1) | CN115280315A (ja) |
WO (1) | WO2021187506A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024041275A1 (zh) * | 2022-08-23 | 2024-02-29 | 杭州睿胜软件有限公司 | 物种分布数据聚合方法、系统及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012128389A1 (ja) * | 2011-03-23 | 2012-09-27 | 日本電気株式会社 | 許可証発行装置及び許可証発行方法 |
WO2012165518A1 (ja) * | 2011-06-02 | 2012-12-06 | 日本電気株式会社 | 分散匿名化システム、分散匿名化装置及び分散匿名化方法 |
WO2013008653A1 (ja) * | 2011-07-14 | 2013-01-17 | 株式会社エヌ・ティ・ティ・ドコモ | オブジェクト表示装置、オブジェクト表示方法及びオブジェクト表示プログラム |
JP2017055244A (ja) * | 2015-09-09 | 2017-03-16 | 株式会社東芝 | 固体撮像装置 |
JP2018169880A (ja) * | 2017-03-30 | 2018-11-01 | トヨタ自動車株式会社 | 車両捜索システム、ナンバープレート情報蓄積装置、および方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100630112B1 (ko) * | 2002-07-09 | 2006-09-27 | 삼성전자주식회사 | 이동통신시스템의 적응형 채널 추정장치 및 방법 |
DE602004023397D1 (de) * | 2003-07-29 | 2009-11-12 | Panasonic Corp | Audiosignalband-expansionsvorrichtung und verfahren |
US8627488B2 (en) * | 2011-12-05 | 2014-01-07 | At&T Intellectual Property I, L.P. | Methods and apparatus to anonymize a dataset of spatial data |
-
2021
- 2021-03-17 EP EP21772151.3A patent/EP4123491A4/en active Pending
- 2021-03-17 US US17/798,725 patent/US20230101532A1/en active Pending
- 2021-03-17 CN CN202180020400.7A patent/CN115280315A/zh active Pending
- 2021-03-17 JP JP2022508395A patent/JPWO2021187506A1/ja active Pending
- 2021-03-17 WO PCT/JP2021/010736 patent/WO2021187506A1/ja unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012128389A1 (ja) * | 2011-03-23 | 2012-09-27 | 日本電気株式会社 | 許可証発行装置及び許可証発行方法 |
WO2012165518A1 (ja) * | 2011-06-02 | 2012-12-06 | 日本電気株式会社 | 分散匿名化システム、分散匿名化装置及び分散匿名化方法 |
WO2013008653A1 (ja) * | 2011-07-14 | 2013-01-17 | 株式会社エヌ・ティ・ティ・ドコモ | オブジェクト表示装置、オブジェクト表示方法及びオブジェクト表示プログラム |
JP2017055244A (ja) * | 2015-09-09 | 2017-03-16 | 株式会社東芝 | 固体撮像装置 |
JP2018169880A (ja) * | 2017-03-30 | 2018-11-01 | トヨタ自動車株式会社 | 車両捜索システム、ナンバープレート情報蓄積装置、および方法 |
Non-Patent Citations (1)
Title |
---|
See also references of EP4123491A4 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024041275A1 (zh) * | 2022-08-23 | 2024-02-29 | 杭州睿胜软件有限公司 | 物种分布数据聚合方法、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2021187506A1 (ja) | 2021-09-23 |
US20230101532A1 (en) | 2023-03-30 |
CN115280315A (zh) | 2022-11-01 |
EP4123491A4 (en) | 2023-08-09 |
EP4123491A1 (en) | 2023-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mohan et al. | An approach to forecast impact of Covid‐19 using supervised machine learning model | |
Seoane et al. | Effect of expert opinion on the predictive ability of environmental models of bird distribution | |
Fitterer et al. | Predictive crime mapping | |
Francis et al. | Bayesian belief networks for predicting drinking water distribution system pipe breaks | |
CN113159615B (zh) | 一种工业控制系统信息安全风险智能测定系统及方法 | |
US8924332B2 (en) | Forecasting hotspots using predictive visual analytics approach | |
Barnaghi et al. | Computing perception from sensor data | |
CN109241223B (zh) | 行为行踪识别方法及系统 | |
US10268963B2 (en) | System, method, and program for supporting intervention action decisions in hazard scenarios | |
JPWO2018207878A1 (ja) | 需要予測装置 | |
Smolak et al. | The impact of human mobility data scales and processing on movement predictability | |
WO2021187506A1 (ja) | データ処理装置、データ処理方法およびデータ処理プログラム | |
CN115662627A (zh) | 学生心理健康风险预警模型构建预警方法及其应用 | |
Cai et al. | Discovering regions of anomalous spatial co-locations | |
Jiang et al. | COVINet: A deep learning-based and interpretable prediction model for the county-wise trajectories of COVID-19 in the United States | |
CN117595504A (zh) | 一种电网运行状态的智能监测预警方法 | |
CN117633592B (zh) | 一种新能源电站智能监盘系统 | |
Cao et al. | ConTPL: controlling temporal privacy leakage in differentially private continuous data release | |
Cao et al. | Cluster-based correlation of severe driving events with time and location | |
CN117726162A (zh) | 一种基于多模态数据融合的社区风险等级评估方法及系统 | |
WO2020149141A1 (ja) | データ処理装置、データ処理方法、データ処理プログラム、端末装置およびデータ処理システム | |
Zhang et al. | ARIMA Model‐Based Fire Rescue Prediction | |
Islam et al. | Predictive modelling of fuel shortages during hurricane evacuation: An epidemiological approach | |
CN115134102B (zh) | 异常访问检测方法、装置、存储介质及电子设备 | |
Hewett et al. | Using extreme value theory to evaluate the leading pedestrian interval road safety intervention |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21772151 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2022508395 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2021772151 Country of ref document: EP Effective date: 20221019 |