Generation device and generation method

WO2025187049A8PCT designated stage Publication Date: 2025-10-02NT T INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/009064
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-08
Publication Date
2025-10-02

AI Technical Summary

Technical Problem

Existing techniques for constructing graphs from oceanographic data using graph neural networks (GNNs) fail to adequately consider spatial and temporal characteristics, leading to increased computational costs and potential inaccuracies in predictions.

Method used

A method that calculates correlation values based on temporal changes in feature values between grid pairs to construct a graph, taking into account both spatial and temporal characteristics, thereby reducing computational requirements and improving prediction accuracy.

Benefits of technology

The method reduces computational costs and enhances prediction accuracy by generating a graph that considers spatial and temporal characteristics, allowing for improved performance in tasks using graph data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024009064_02102025_PF_FP_ABST
    Figure JP2024009064_02102025_PF_FP_ABST
Patent Text Reader

Abstract

A generation device 1: stores state variable data 11 which associates an identifier of a grid and a feature amount of the grid at a prescribed time; calculates, for each of a grid pair specifying two grids, a correlation value which depends on a change over time in each feature amount; refers to the correlation values to create edges between a plurality of node and construct a graph; and generates graph data 12 which specifies the graph.
Need to check novelty before this filing date? Find Prior Art

Description

Generating device and generating method

[0001] The present disclosure relates to a generating device and a generating method.

[0002] To predict future weather or climate, deep learning models are used to predict future conditions using actual observation data on the atmosphere or ocean and simulation data obtained from general circulation models, etc. By training such deep learning models, it is possible to speed up the process by approximating the output of general circulation models, which require a large amount of calculation, and to predict the future global environment from actual observation data.

[0003] In particular, for marine features, missing values ​​may occur due to lack of data in land areas or difficulty in obtaining observation data in areas such as the deep sea or the open ocean. The shapes of the observation points to which features are associated can be complex.

[0004] Therefore, a technique is known that applies graph neural networks (GNNs) to graph-structured data that represents the complex shape of the oceans, allowing for appropriate handling and prediction of the Earth's complex ocean shapes. GNNs are deep learning models for graph structures. In these techniques, each grid point in the grid data is represented by a node, and edges are arbitrarily drawn between the other nodes, excluding nodes that correspond to missing values. This makes it possible to represent grid data that includes missing values ​​in a natural graph structure.

[0005] Non-Patent Document 1 discloses a technique for training a GNN model that predicts the average sea surface temperature for the next month based on the average sea surface temperature data for the past 12 months distributed over all oceans on Earth. Non-Patent Document 1 generates graph data by connecting nodes when the correlation coefficient calculated for each node pair is equal to or greater than a certain threshold. Non-Patent Document 1 calculates the Pearson correlation coefficient. The Pearson correlation coefficient is a value that is invariant when the order is changed.

[0006] Non-Patent Document 2 discloses a technique for training a GNN model that predicts the Oceanic Niño Index (ONI) 1-23 months into the future based on sea surface temperatures for the past three months and the amount of heat exchange between the sea surface and the atmosphere. The ONI is a commonly used index for measuring the strength of El Niño and Southern Oscillation phenomena, which significantly affect the global climate.

[0007] Non-Patent Document 2 inputs feature quantities corresponding to each grid into a linear transformation layer with learnable parameters to generate an adjacency matrix corresponding to a graph structure. Non-Patent Document 2 applies the generated adjacency matrix to a GNN model and simultaneously optimizes the parameters of the GNN model and the parameters of the part that constructs the graph structure through a specific task such as sea surface temperature prediction.

[0008] Ding ning, Varvara Vetrova and Karin Bryan, “Graph-Based Deep Learning for Sea Surface Temperature Forecasts”, ICLR 2023 Workshop on Tackling Climate Change with Machine Learning, 2023Salva Ruhling Cachay, Arthur F. Bucker, Willa Potosnak, Ernest Pokropek, Emma Erickson, Suyash Bire, Salomey Osei, Bjorn Lutjens. “The World as a Graph: Improving El Nino Forecasts with Graph Neural Networks”, NeurIPS 2020 Tackling Climate Change with ML workshop, 2021

[0009] While GNN models handle graphs, much of the existing oceanographic data is stored as grid data. Therefore, existing techniques involve generating graph data from grid data, with each grid representing a node. For example, a naive approach is known for generating graph data by connecting nodes corresponding to adjacent grids that are not missing values. However, this approach fails to take into account the spatial characteristics of the data being handled.

[0010] The method described in Non-Patent Document 1 determines connections between nodes from Pearson's correlation coefficient, and therefore does not take into account the temporal characteristics of the data. The method described in Non-Patent Document 2 simultaneously learns the GNN model and graph structure, which increases the computational cost during learning.

[0011] The present disclosure has been made in consideration of the above circumstances, and an object of the present disclosure is to provide a technology that can reduce the amount of calculation required to construct a graph and generate a graph that takes spatial and temporal characteristics into consideration.

[0012] A generation device according to one aspect of the present disclosure stores state variable data that associates a grid identifier with a feature value in the grid at a predetermined time, calculates a correlation value that depends on the change in each feature value over time for each grid pair that identifies two grids, and, by referring to the correlation value, constructs a graph by connecting multiple nodes and edges, and generates graph data that identifies the graph.

[0013] In one aspect of the generation method of the present disclosure, a computer stores state variable data that associates a grid identifier with a feature value in the grid at a predetermined time, calculates a correlation value that depends on the change in each feature value over time for each grid pair that identifies two grids, and, by referring to the correlation value, constructs a graph by connecting multiple nodes and edges, and generates graph data that identifies the graph.

[0014] According to the present disclosure, it is possible to provide a technology that can reduce the amount of calculation required to construct a graph and generate a graph that takes spatial and temporal characteristics into consideration.

[0015] Fig. 1 is a diagram illustrating functional blocks of a generation device according to an embodiment of the present disclosure. Fig. 2 is a diagram illustrating an example of feature quantities in a certain grid among state variable data. Fig. 3 is a flowchart illustrating generation processing in the generation device. Fig. 4 is a diagram illustrating the hardware configuration of a computer used in the generation device.

[0016] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In the description of the drawings, the same parts are designated by the same reference numerals and the description thereof will be omitted.

[0017] 1, the generation device 1 includes state variable data 11, graph data 12, and learning data 13, and functions of a construction unit 21 and a combination unit 22. Each piece of data is stored in a storage device such as a memory 902 or a storage 903. Each function is implemented in a CPU 901 or the like, and a processor executes the processing of each function.

[0018] The generation device 1 generates graph data 12 from state variable data 11, and combines the state variable data 11 and the graph data 12 to generate training data 13. The training data 13 is input to the learning device 2 and used for training the GNN model. The generation device 1 and the learning device 2 are connected to be able to communicate bidirectionally.

[0019] In the present disclosure, the generation device 1 constructs a graph structure by referring to correlation values ​​that depend on changes in each feature over time, thereby constructing a graph that takes into account the temporal characteristics of each feature. The generation device 1 can capture the correlation between the feature values ​​of each grid based on the spatiotemporal characteristics required for predicting the time evolution of a state variable. Because the generation device 1 constructs a graph structure by taking into account the spatiotemporal characteristics of the feature values ​​of each grid, improved accuracy is expected in tasks using graph data 12.

[0020] In the present disclosure, a generation device 1 generates learning data 13 by combining state variable data 11 and graph data 12. The generation device 1 inputs the learning data 13 to a learning device 2 that learns a GNN model. The learning device 2 learns the GNN model using the learning data 13 as input. In the present disclosure, by separating the generation device 1 that builds a graph structure from the learning device 2 that learns the GNN model, there is no need to build graph data and learn a task simultaneously, and the amount of calculation required when learning the GNN model is reduced.

[0021] Furthermore, since a graph independent of the learning task is constructed, the graph data 12 generated by the construction unit 21 can be used for other tasks, thereby expanding the uses of the graph data 12.

[0022] The state variable data 11 associates a grid identifier with a feature value of the grid at a given time. Specifically, the state variable data 11 is data on feature values ​​on the Earth at a fixed time interval. The feature values ​​are obtained by observation or simulation. The fixed time interval is an hourly or daily interval, and the state variable data 11 is spatiotemporal data in which the feature values ​​of each grid exist for T time steps.

[0023] The state variable data 11 may include missing values ​​in the form of NaN (Not a Number). Missing values ​​correspond to land areas in oceanographic data, for example. NaN indicates that no feature value is assigned to one or more state variables among multiple state variables. In the present disclosure, grids that are not NaN indicate grids to which features are assigned for each state variable.

[0024] The state variable data 11 may be three-dimensional data having an n×m×l (n, m, and l are natural numbers) shape, in which l environmental variables, such as ocean current speed and seawater temperature, are arranged for each point on an n×m ocean surface grid representing the entire Earth at each time step. Here, n is the number of divisions in the longitude direction, and m is the number of divisions in the latitudinal direction. The state variable data 11 may also be four-dimensional data having an n×m×k×l (n, m, k, and l are natural numbers) shape. In this case, the grid is a three-dimensional grid in which the two-dimensional grid formed on the ocean surface is extended vertically. k is the number of vertical divisions above and below the ocean surface in the n×m region.

[0025] In the present disclosure, the state variables of the state variable data 11 are basic physical variables such as ocean current speed, seawater salinity, etc. The state variables may also be marine biochemical variables such as the concentration of phytoplankton such as chlorophyll.

[0026] In this disclosure, a case will be described where the state variable data 11 is expressed by Equation (1). Here, in the sea surface grid data Xt at time step t, each row corresponds to a point on the sea surface grid, and each column corresponds to a state variable. In the following description, n represents the total number of grids, and m represents the total number of state variables.

[0027]

[0028] When the state variables are distributed on a two-dimensional grid or a three-dimensional grid, the generation device 1 may transform the state variables of the two-dimensional grid or the three-dimensional grid into one-dimensional grid data so as to conform to the form of Xt in equation (1), and generate the state variable data 11. The generation device 1 can transform the state variables of the two-dimensional grid or the three-dimensional grid into one-dimensional grid data by sorting the two-dimensional grid or the three-dimensional grid in a predetermined order, such as descending order of latitude, longitude, or vertical direction.

[0029] In this disclosure, the state variable data 11 is described as a feature quantity of a grid that is discretely arranged on the Earth, but is not limited to this. The grid may be a plurality of representative points, such as a country. The state variable data 11 is, for example, two-dimensional data in the form of an n x m matrix (n and m are natural numbers) in which m socioeconomic variables for n countries are arranged at each time step. Examples of socioeconomic variables include population and GDP (Gross Domestic Product).

[0030] The graph data 12 is data that specifies the graph to be constructed by the constructing unit 21 from the state variable data 11. The graph data 12 may be in any format as long as it can specify a graph.

[0031] The learning data 13 is input to the learning device 2. The learning data 13 is learning data for GNN model learning in the learning device 2.

[0032] The construction unit 21 calculates a correlation value that depends on the change in each feature over time for each grid pair that identifies two grids, and by referring to the correlation value, constructs multiple nodes and edges to generate a graph, thereby generating graph data 12 that identifies the graph.

[0033] The constructor 21 calculates a correlation value for each grid pair identified from grids that do not have missing values ​​by referring to the state variable data 11. The constructor 21 constructs a graph (V, E) (V: set of grids, E: set of edges) based on the calculated correlation values.

[0034] First, the construction unit 21 forms each grid pair from grids that do not have any missing values. A grid that does not have any missing values ​​is a grid to which, among the multiple state variables, there is no state variable to which a feature is not assigned, and a feature is assigned for each of the multiple state variables. The construction unit 21 excludes grids that have missing values ​​from the state variable data 11, and forms each grid pair from any two grids that do not have any missing values.

[0035] Next, the constructing unit 21 calculates a correlation value for each grid pair, and returns a correlation value matrix shown in equation (2).

[0036]

[0037] Here, Xi shown in Fig. 2 is defined for each grid in the state variable data 11 that is not NaN. Xi is data indicating changes in m state variables in the time series direction at a certain grid i in the state variable data 11. Xi includes values ​​of m state variables at each time step.

[0038] In the state variable data Xt for time step t, each row corresponds to a point on the sea surface grid, and each column corresponds to a state variable. Xi is a matrix containing feature values ​​of m state variables for each time step in a certain grid i. Xi is a T x m matrix. Xi is a matrix in which, for the elements of the row vector in the i-th row of the state variable X for each time step, the feature values ​​of each variable for the first time step, the feature values ​​of each variable for the second time step, ..., the feature values ​​of each variable for the T-th time step are arranged from the first row to the T-th row.

[0039] The constructing unit 21 calculates the correlation value Sim(i, j) between Xi and Xj for each grid pair that specifies two grids i and j that are not NaN.

[0040] In the present disclosure, the correlation value depends on the change in each feature quantity over time. The correlation value depends on the order of change in the state variable data 11 in the time series direction. The correlation value is calculated so that the correlation value changes when an operation is performed in which the values ​​of each state variable in the row direction of Xi are swapped as a group with the values ​​of each state variable in another row direction. Specifically, the correlation value calculated for Xi shown in FIG. 2 is different from the correlation value calculated for Xi' in which the elements of Xi in the row direction are swapped. Xi' is a matrix in which the values ​​of each state variable belonging to the a-th time step of Xi shown in FIG. 2 are swapped with the values ​​of each state variable belonging to the b-th time step. The constructor 21 calculates the correlation value for each state variable for a certain grid pair, and calculates the average value of the correlation values ​​of each state variable as the correlation value for that grid pair.

[0041] Here, the column vector in the k-th column of Xi (the k-th state variable) is denoted by Xik. The constructor 21 calculates the correlation value between Xik and Xjk for each k-th column of the state variables Xi and Xj of the grid pair so that it is variable when an operation to swap elements in each row, which will be described later, is performed. The constructor 21 calculates this correlation value from the first to m-th columns, and outputs the average value as the correlation value between Xi and Xj.

[0042] The Pearson correlation coefficient used in Non-Patent Document 1 and the like will be described. The value of the Pearson correlation coefficient calculated for two c pieces of sequence data (x1, ...., xa, ...., xb, ...., xc) and (y1, ...., ya, ...., yb, ...., yc) is the same as the value calculated for sequence data (x1, ...., xb, ...., xa, ...., xc) and (y1, ...., yb, ...., ya, ...., yc) in which the a-th and b-th elements are swapped. The value of the Pearson correlation coefficient is determined to be first regardless of the order of the two sequence data.

[0043] In contrast, the correlation value calculated in the present disclosure is determined depending on the order of data. The correlation value calculated takes into account the order of each time step for each state variable, in other words, the correlation value takes into account the characteristics in the time direction. By using such correlation values, the present disclosure can take into account information in the time direction.

[0044] In the present disclosure, possible methods for calculating the correlation value include (i) a method using the Pearson correlation coefficient between differenced data, and (ii) a method using the cosine similarity between coefficients obtained when performing a discrete Fourier transform on each of two data strings.

[0045] (i) A method using the Pearson correlation coefficient between differenced data will be described. In method (i), the correlation value is the Pearson correlation coefficient between a first data sequence obtained by taking the difference in the time direction of the feature amounts of the first grid of the grid pair, and a second data sequence obtained by taking the difference in the time direction of the feature amounts of the second grid of the grid pair. Taking the difference is an operation in which a data sequence (x1, x2, x3, ..., xn) becomes (x2-x1, x3-x2, ..., xn-xn-1).

[0046] (ii) A method using the cosine similarity between coefficients obtained when a discrete Fourier transform is performed on each of two data sequences will be described. In the method (ii), the correlation value is calculated from the cosine similarity between a coefficient obtained by performing a discrete Fourier transform on data indicating the time course of a feature amount of a first grid of a grid pair, and a coefficient obtained by performing a discrete Fourier transform on data indicating the time course of a feature amount of a second grid of the grid pair.

[0047] The coefficients obtained when a discrete Fourier transform is performed on the data sequence (x1, . . . , xn) are shown in equation (3).

[0048]

[0049] Here, since x is a real value, the construction unit 21 takes into consideration the symmetry with respect to the coefficients and calculates the cosine similarity between the real part and the imaginary part of the discrete Fourier transform coefficient obtained for y for the real part and the imaginary part of the coefficient of the discrete Fourier transform obtained for y. The construction unit 21 calculates the average value of the cosine similarity calculated for the real part and the cosine similarity calculated for the imaginary part as the final correlation value between the two data strings x and y.

[0050]

[0051] The calculation method of the correlation value shown here is an example and is not limited to this. The constructing unit 21 may calculate the correlation value in any way as long as it can calculate a correlation value that depends on the change in each feature amount over time.

[0052] After calculating the correlation value for each grid pair, the constructing unit 21 references the correlation value, constructs a graph by connecting a plurality of nodes and edges, and generates graph data 12 that specifies the graph.

[0053] The constructor 21 references the correlation value matrix Sim, extends edges, and returns the graph G=(V, E). The constructor 21 references the correlation values ​​calculated for each grid pair, and preferentially extends edges to grid pairs with high correlation values ​​to create a graph. The constructor 21 may extend edges to two nodes that are two grids in the top K grid pairs with the highest correlation values. Alternatively, the constructor 21 may extend edges to two nodes that are two grids in grid pairs with correlation values ​​equal to or greater than a predetermined threshold.

[0054] In the present disclosure, the graph constructed is a connected graph. By generating a connected graph, it becomes possible to spread information about a certain node to the entire graph by a convolution operation using a GNN model. In contrast, in Non-Patent Document 1 or Non-Patent Document 2, there is a possibility that the graph constructed will be disconnected. If the graph is disconnected, even if a convolution operation using a GNN model is performed, it will not be possible to spread information about a certain node to the entire graph, and there is a possibility that accuracy will deteriorate.

[0055] In this disclosure, we propose two methods to forcibly construct a connected graph: (i) a method using supernodes, and (ii) a method that adapts Kruskal's algorithm.

[0056] (i) A method using a supernode will be described. The construction unit 21 prepares one supernode and extends edges from all nodes to that node. Since each node in the constructed graph is guaranteed to be connected to the supernode, a connected graph is constructed.

[0057] (ii) A method using the Kruskal algorithm will be described. The Kruskal algorithm is a graph algorithm for constructing a maximum spanning tree. The construction unit 21 sorts grid pairs in descending order of correlation value. The construction unit 21 adds edges connecting grid pairs as edges to the graph to be constructed in the sorted order. This repeats the process of adding grid pairs as edges until each node corresponding to each grid is connected and a predetermined condition is satisfied. Here, the predetermined condition is that each grid has K edges, or the addition of edges is stopped when the maximum correlation value of grid pairs that have not been added is less than a predetermined value.

[0058] Methods other than (i) and (ii) may be employed to generate a connected graph. The constructor 21 may also construct a disconnected graph.

[0059] The combining unit 22 combines the state variable data 11 and the graph data 12 to generate learning data 13. The combining unit 22 combines the graph G=(V, E) obtained by the constructing unit 21 with X of the state variable data 11 to obtain learning data (X, G).

[0060] The combining unit 22 may also combine additional information here. For example, when predicting a variable or label that is not included in the state variable data 11, the combining unit 22 may combine the variable or label to be predicted as correct answer data in a format corresponding to the state variable data 11. The combining unit 22 can handle various simulation settings by combining, for example, simulation parameters.

[0061] The training data 13 generated in this manner is input to the training device 2. The training device 2 uses the training data 13 as input to train a GNN model.

[0062] The learning device 2 performs general supervised learning by referring to a GNN with an appropriate network structure and initial values ​​set in advance according to a desired task and the learning data 13, to obtain a trained GNN model. Specific tasks include, for example, node-level tasks and graph-level tasks. Node-level tasks are disclosed in, for example, Non-Patent Document 1. Graph-level tasks are disclosed in, for example, Non-Patent Document 2.

[0063] The learning device 2 performs learning using a general stochastic gradient descent method, using a loss function such as the mean square error between predicted values ​​and actual state variable values. The parameter update process for the GNN model is repeated until the comparison result satisfies a predetermined criterion. The predetermined criterion may be, for example, that the number of repetitions reaches a predetermined number, or that the comparison result falls below a certain value.

[0064] The trained GNN model obtained by the learning device 2 is used for prediction. A prediction result is obtained from the trained GNN model and inference data prepared in accordance with a desired task. The inference data is data in the same format as the training data 13.

[0065] (Generation Method) A generation method according to the present disclosure will be described with reference to FIG.

[0066] The generating device 1 performs the process of step S1 for each grid pair of the state variable data 11. In step S1, the generating device 1 calculates a correlation value that depends on the passage of time between each feature amount of each of the two grids of the grid pair being processed. When the process of step S1 for each grid pair is completed, the process proceeds to step S2.

[0067] In step S2, the generating device 1 constructs a graph by drawing edges with reference to the correlation values ​​of each grid pair calculated in step S1. The generating device 1 generates graph data 12 that specifies the constructed graph, and then ends the process.

[0068] The generation device 1 according to the present disclosure can reduce the amount of calculation required to construct a graph and generate a graph that takes spatial and temporal characteristics into consideration.

[0069] Although the present disclosure has described an example of generating graph data 12 for an ocean simulation, the present disclosure is not limited to this. The generation device 1 according to the present disclosure may also be applied to simulation data output from a simulator that performs a global-scale simulation and global-scale observation data. The generation device 1 according to the present disclosure is not limited to the Earth, and may also be applied to simulation data and observation data for other planets, such as general circulation models for other spherical celestial bodies such as Mars and Venus.

[0070] Furthermore, the generating device 1 according to the present disclosure can also be applied to an integrated assessment model (IAM) that simulates social or economic activities on a global scale.

[0071] The generation device 1 according to the present disclosure described above uses, for example, a general-purpose computer system including a CPU (Central Processing Unit, processor) 901, a memory 902, a storage 903 (HDD: Hard Disk Drive, SSD: Solid State Drive), a communication device 904, an input device 905, and an output device 906. In this computer system, the CPU 901 executes a program loaded on the memory 902, thereby realizing each function of the generation device 1.

[0072] The generating device 1 may be implemented by one computer or by multiple computers, or may be a virtual machine implemented on a computer.

[0073] The program of the generation device 1 can be stored in a computer-readable recording medium such as a HDD, SSD, USB (Universal Serial Bus) memory, CD (Compact Disc), or DVD (Digital Versatile Disc), or can be distributed via a network. The computer-readable recording medium is, for example, a non-transitory recording medium.

[0074] The present disclosure is not limited to the above-described embodiments, and various modifications are possible within the scope of the present disclosure.

[0075] REFERENCE SIGNS LIST 1 Generation device 2 Learning device 11 State variable data 12 Graph data 13 Learning data 21 Construction unit 22 Combination unit 901 CPU 902 Memory 903 Storage 904 Communication device 905 Input device 906 Output device

Claims

1. A generation device that stores state variable data that associates a grid identifier with a feature value in said grid at a predetermined time, calculates a correlation value that depends on the change in each feature value over time for each grid pair that identifies two grids, and references the correlation value to construct a graph by connecting multiple nodes and edges, and generates graph data that identifies said graph.

2. The generating device according to claim 1, wherein the graph is a connected graph.

3. The generating device according to claim 1, wherein the generating device generates training data by combining the state variable data and the graph data, and inputs the training data to a learning device that trains a GNN model.

4. A generation method in which a computer stores state variable data that associates a grid identifier with a feature value in said grid at a predetermined time, calculates a correlation value that depends on the change in each feature value over time for each grid pair that identifies two grids, and references the correlation value to construct a graph by connecting multiple nodes and edges, and generates graph data that identifies said graph.