WO2024100709A1 - 最適化装置、最適化方法及びプログラム - Google Patents

最適化装置、最適化方法及びプログラム Download PDF

Info

Publication number
WO2024100709A1
WO2024100709A1 PCT/JP2022/041356 JP2022041356W WO2024100709A1 WO 2024100709 A1 WO2024100709 A1 WO 2024100709A1 JP 2022041356 W JP2022041356 W JP 2022041356W WO 2024100709 A1 WO2024100709 A1 WO 2024100709A1
Authority
WO
WIPO (PCT)
Prior art keywords
graph
optimization
matrix
column
norm
Prior art date
Application number
PCT/JP2022/041356
Other languages
English (en)
French (fr)
Inventor
崇元 佐々木
幸浩 坂東
正樹 北原
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2022/041356 priority Critical patent/WO2024100709A1/ja
Publication of WO2024100709A1 publication Critical patent/WO2024100709A1/ja

Links

Images

Definitions

  • the present invention relates to an optimization device, an optimization method, and a program.
  • a calculation of the karyotype norm of an N-column matrix which is a matrix with N columns (N is an integer equal to or greater than 2), may be performed.
  • N is an integer equal to or greater than 2
  • the amount of calculation increases as N becomes larger.
  • the calculation of the karyotype norm of an N-column matrix may require a long time for optimization.
  • the present invention aims to provide a technology that shortens the time required for optimization.
  • One aspect of the present invention is an optimization device that includes a control unit that performs an optimization process that includes a process of obtaining the value of the karyotype norm of a three-column matrix, and the control unit obtains the value of the karyotype norm of the three-column matrix by calculating the sum of the karyotype norms of a two-column matrix.
  • One aspect of the present invention is an optimization method that includes a control step of performing an optimization process that includes a process of obtaining the value of the karyotype norm of a three-column matrix, and the control step obtains the value of the karyotype norm of the three-column matrix by calculating the sum of the karyotype norms of a two-column matrix.
  • One aspect of the present invention is a program for causing a computer to function as the optimization device described above.
  • the present invention makes it possible to shorten the time required for optimization.
  • FIG. 1 is a diagram showing an example of the configuration of an optimization device according to an embodiment.
  • FIG. 4 is an explanatory diagram for explaining noise contained in a graph in the embodiment.
  • FIG. 11 is a first explanatory diagram for explaining an example of variables X and ⁇ X in the embodiment, taking as an example a case where a graph to be processed is an octahedron.
  • FIG. 2 is a second explanatory diagram for explaining an example of variables X and ⁇ X in the embodiment, taking as an example a case where the graph to be processed is an octahedron.
  • FIG. 1 is a diagram showing an example of the configuration of an optimization device according to an embodiment.
  • FIG. 4 is an explanatory diagram for explaining noise contained in a graph in the embodiment.
  • FIG. 11 is a first explanatory diagram for explaining an example of variables X and ⁇ X in the embodiment, taking as an example a case where a graph to be processed is an octahedron.
  • FIG. 3 is a third explanatory diagram for explaining an example of variables X and ⁇ X in the embodiment, taking as an example a case where the graph to be processed is an octahedron.
  • FIG. 4 is a fourth explanatory diagram for explaining an example of variables X and ⁇ X in the embodiment, taking as an example a case where the graph to be processed is an octahedron.
  • FIG. 5 is a fifth explanatory diagram for explaining an example of variables X and ⁇ X in the embodiment, taking as an example a case where the graph to be processed is an octahedron.
  • 1 is a flowchart showing an example of a flow of processing executed by an optimization device in an embodiment.
  • FIG. 13 is a diagram showing an example of an experimental result in a modified example.
  • 11 is a flowchart showing an example of the flow of optimization processing including processing for obtaining a value of a kernal type norm of a 3-column matrix in an embodiment.
  • FIG. 1 is a diagram showing an example of a graph in graph theory.
  • FIG. 1 is a diagram showing an example of the configuration of an optimization apparatus 1 according to an embodiment.
  • the optimization apparatus 1 performs processing including an optimization process including a process of obtaining the value of the kernotype norm of a three-column matrix.
  • processing may be the optimization process itself including a process of obtaining the value of the kernotype norm of a three-column matrix.
  • the optimization device 1 will be described below using as an example the process of removing noise contained in a three-dimensional graph, which is a three-dimensional graph.
  • the optimization device 1 has a control unit 11 that includes a processor 91, such as a CPU (Central Processing Unit), and a memory 92 connected by a bus, and executes a program.
  • a processor 91 such as a CPU (Central Processing Unit)
  • a memory 92 connected by a bus, and executes a program.
  • the control unit 11 performs noise removal processing, which is processing of a three-dimensional graph, which is a three-dimensional graph, and is processing of removing noise contained in the processing object.
  • the object represented by the processing object is, for example, a three-dimensional point cloud.
  • the processing object is, for example, a three-dimensional graph representing a three-dimensional point cloud.
  • the noise removal process includes rank lowering processing.
  • Rank lowering processing is processing that lowers the rank of each vertex of the graph being processed based on the rank of a matrix (hereinafter referred to as a "rank determination matrix") that lists vectors (hereinafter referred to as "connection vectors") that start at that vertex and end at the vertex adjacent to that vertex.
  • connection vectors vectors that start at that vertex and end at the vertex adjacent to that vertex.
  • the rank of a matrix is the number of mutually independent vectors when each column is considered as a vector. Note that if you swap the rows and columns of a matrix, the rows become columns, so the rank of a matrix can also be the number of mutually independent vectors when each row is considered as a vector.
  • noise contained in a graph refers to factors that reduce the accuracy of the graph's representation of an object.
  • noise is the deviation of the vertex position from its true value. If the position of a vertex deviates from the true value, a bend in the edge will occur at that vertex position. Therefore, if we can evaluate the degree of bend and execute a process to search for a vertex position that reduces it, the noise in the graph can be removed.
  • bending at a vertex of interest means that multiple vectors that start or end at the vertex and are parallel to the edges are not parallel.
  • Vectors that are not parallel mean that the vectors are independent. Therefore, the degree of bending can be evaluated by the rank of a rank judgment matrix that lists the vectors that are parallel to the edges. And because noise causes bending in a graph, noise in a graph can be evaluated by the rank of the matrix.
  • FIG. 2 is an explanatory diagram explaining noise contained in graphs in an embodiment.
  • FIG. 2 shows two graphs, graph G1 and graph G2, and shows that graph G2 is the graph obtained by removing noise from graph G1.
  • graph G2 has fewer bends than graph G1.
  • the rank reduction process is, for example, a process of solving the optimization problem shown in the following equation (1).
  • P is a matrix that indicates the graph to be processed in the noise removal process. More specifically, it is a matrix that indicates the coordinate values of the vertices of the graph to be processed in the noise removal process.
  • X is a variable. Therefore, the value of variable X in the optimized state is the optimization solution. In other words, variable X in the optimized state is the result of the noise removal process. Therefore, variable X in the optimized state is a matrix that indicates the graph after noise has been removed. More specifically, variable X in the optimized state is a matrix that indicates the coordinate values of the vertices of the graph after noise has been removed.
  • B is the orientation connection matrix of the graph to be processed in the noise removal process.
  • * represents the kernel norm.
  • is a predetermined weighting coefficient.
  • k is an identifier for identifying a vertex of the graph to be processed in the noise removal process.
  • the rank of the rank determination matrix is obtained for each vertex of the graph to be processed in the noise removal process. Therefore, R shown in formula (2) represents the sum of the ranks of all vertices. Therefore, R is an amount indicating the degree of bending of the graph.
  • solving the optimization problem of equation (1) means performing optimization so as to minimize the difference between the graph after noise removal and the graph before noise removal, and the degree of bending of the graph.
  • FIG. 3 is a first explanatory diagram illustrating an example of variables X and ⁇ X in an embodiment, taking as an example a case where the graph to be processed is an octahedron.
  • FIG. 3 shows a graph of an octahedron to be processed.
  • FIG. 4 is a second explanatory diagram illustrating an example of variables X and ⁇ X in an embodiment, taking as an example a case where the graph to be processed is an octahedron.
  • FIG. 4 shows the matrix P when the graph to be processed is the one shown in FIG. 3.
  • FIG. 5 is a third explanatory diagram illustrating an example of variables X and ⁇ X in an embodiment, taking as an example a case where the graph to be processed is an octahedron.
  • FIG. 5 shows an orientation connection matrix B when the graph to be processed is the graph shown in FIG. 3.
  • FIG. 6 is a fourth explanatory diagram illustrating an example of variables X and ⁇ X in an embodiment, taking as an example a case where the graph to be processed is an octahedron.
  • FIG. 6 shows variable X when the graph to be processed is the graph shown in FIG. 3.
  • FIG. 7 is a fifth explanatory diagram for explaining an example of variables X and ⁇ X in the embodiment, taking an example of a graph to be processed as an octahedron.
  • Equation (1) The optimization problem of equation (1) is solved, for example, by sequentially executing the update equations of the following equations (3) to (5).
  • the update equations include auxiliary variables Y and Z.
  • the superscript (n) indicates the number of iterations in the sequential process.
  • K indicates the number of vertices.
  • I K indicates a unit matrix with K rows and K columns.
  • L indicates the graph Laplacian of the graph to be processed.
  • indicates the step size.
  • the optimization device 1 includes the control unit 11 and executes a program. By executing the program, the optimization device 1 functions as a device including the control unit 11, an interface unit 12, and a storage unit 13.
  • the processor 91 reads out a program stored in the storage unit 13 and stores the read out program in the memory 92.
  • the processor 91 executes the program stored in the memory 92, whereby the optimization device 1 functions as a device including a control unit 11, an interface unit 12, and a storage unit 13.
  • the control unit 11 performs, for example, noise removal processing. Therefore, since the noise removal processing includes optimization processing, the control unit 11 performs optimization processing by executing the noise removal processing.
  • the control unit 11 controls, for example, the operation of each functional unit provided in the optimization device 1.
  • the control unit 11 acquires a processing target for the noise removal processing, for example, via the interface unit 12.
  • Acquiring a processing target specifically means acquiring a matrix indicating a graph of the processing target.
  • the control unit 11 acquires, for example, information stored in the memory unit 13. The process of acquiring information stored in the memory unit 13 is, specifically, reading.
  • the interface unit 12 includes a communication interface for connecting the optimization device 1 to an external device.
  • the interface unit 12 communicates with the external device via wired or wireless communication.
  • the external device is, for example, a device that is the sender of the processing target.
  • the interface unit 12 acquires the processing target by communicating with the device that is the sender of the processing target.
  • the external device may be, for example, an output destination of the result of the noise removal processing. In such a case, the interface unit 12 outputs the result of the noise removal processing to the output destination of the result of the noise removal processing.
  • the interface unit 12 includes input devices such as a mouse, keyboard, and touch panel.
  • the interface unit 12 may be configured as an interface that connects these input devices to the optimization device 1. In this way, the interface unit 12 accepts input of various information to the optimization device 1 via the input devices, either wired or wireless.
  • the interface unit 12 outputs various types of information.
  • the interface unit 12 includes a display device such as a CRT (Cathode Ray Tube) display, a liquid crystal display, or an organic EL (Electro-Luminescence) display.
  • the interface unit 12 may be configured as an interface that connects these display devices to the optimization device 1.
  • the interface unit 12 outputs, for example, information input to the interface unit 12.
  • the storage unit 13 is configured using a computer-readable storage medium device (non-transitory computer-readable recording medium) such as a magnetic hard disk device or a semiconductor storage device.
  • the storage unit 13 stores various information related to the optimization device 1.
  • the storage unit 13 stores, for example, information necessary for noise removal processing.
  • the storage unit 13 stores, for example, various information generated by the operation of the control unit 11.
  • the storage unit 13 stores, for example, information acquired by the interface unit 12.
  • FIG. 8 is a flowchart showing an example of the flow of processing executed by the optimization device 1 in the embodiment.
  • the control unit 11 acquires a processing object (step S101).
  • the control unit 11 performs a noise removal process on the processing object (step S102). Since the noise removal process includes an optimization process, the optimization process is executed by executing step S102.
  • the optimization device 1 configured in this manner uses the rank of the matrix as a quantity indicating the bending of the three-dimensional graph to be processed, and performs processing to lower the rank. This makes it possible to reduce the bending of the graph to be processed. As described above, noise causes bending of the graph, and so graph noise can be evaluated using the rank of the matrix. Therefore, the optimization device 1 that reduces the bending of the three-dimensional graph to be processed can remove noise contained in the three-dimensional graph.
  • the three-dimensional graph to be processed is, for example, a graph showing the distribution of electroencephalograms.
  • the three-dimensional graph to be processed is, for example, a graph showing a three-dimensional point cloud.
  • Equation (7) is an equation that approximates the nucleus type norm of a three-column matrix to the sum of the nucleus type norms of a two-column matrix.
  • S in equation (7) means a three-column matrix.
  • the approximation formula of formula (7) may be applied to the above formula (4), for example, and the formula after application may be executed in the noise removal process.
  • the approximation formula of formula (7) is applied to Y in formula (4).
  • formula (4) instead of calculating the nucleus type norm of a three-column matrix, the sum of the nucleus type norms of a two-column matrix is calculated.
  • FIG. 9 is a diagram showing an example of an experimental result in the modified example.
  • the horizontal axis indicates the amount of noise added to a three-dimensional graph in the experiment.
  • the vertical axis indicates the amount of noise removed by the noise reduction process in the experiment.
  • “Optimization (23) with SVD-SVT” indicates the result when no approximation was performed in the noise reduction process.
  • “Optimization (31) with FPSVT” indicates the result when approximation was performed in the noise reduction process.
  • the optimization device 1 configured in this way calculates the sum of the kernotype norms of two-column matrices instead of the kernotype norm of a three-column matrix when obtaining the value of the kernotype norm of a three-column matrix in the noise removal process. As a result, the optimization device 1 can shorten the time required for the noise removal process.
  • the karyotype norm of a three-column matrix is approximated by the sum of matrices with a lower dimension, and the time required to obtain the value of the karyotype norm of a three-column matrix is reduced.
  • the reduction in calculation time achieved by calculating the sum of the karyotype norms of a two-column matrix instead of the calculation of the karyotype norm of a three-column matrix does not necessarily occur only in noise removal processing.
  • the calculation time can be reduced in any calculation as long as the processing involves obtaining the value of the karyotype norm of a three-column matrix.
  • the time required for optimization processing which includes, for example, obtaining the value of the karyotype norm of a three-column matrix, can be reduced by calculating the sum of the karyotype norms of two-column matrices instead of calculating the karyotype norm of a three-column matrix.
  • the noise removal process is an example of a process that includes an optimization process including a process of obtaining the value of the karyotype norm of a three-column matrix, and is executed by the optimization device 1. More specifically, the control unit 11 executes an optimization process including a process of obtaining the value of the karyotype norm of a three-column matrix, and the noise removal process is an example of such a process.
  • the calculation of the sum of the karyotype norms of a two-column matrix instead of the calculation of the karyotype norm of a three-column matrix is not limited to the noise removal process, but can also be applied to other processes including the process of obtaining the value of the karyotype norm of a three-column matrix.
  • control unit 11 obtaining the value of the karyotype norm of a three-column matrix by calculating the sum of the karyotype norms of a two-column matrix, the time required for optimization, including the process of obtaining the value of the karyotype norm of a three-column matrix, is reduced.
  • FIG. 10 is a flowchart showing an example of the flow of optimization processing including the processing of obtaining the value of the kernel type norm of a 3-column matrix in an embodiment.
  • the control unit 11 obtains an optimization target that is the target of optimization (step S201).
  • the optimization target may be, for example, an object input to the interface unit 12, or may be the result of another process executed by the control unit 11.
  • control unit 11 performs an optimization process on the optimization target, including a process of obtaining the value of the karyotype norm of the three-column matrix (step S202).
  • control unit 11 obtains the value of the karyotype norm of the three-column matrix by calculating the sum of the karyotype norms of the two-column matrix.
  • the optimization device 1 configured in this way obtains the value of the kernotype norm of a three-column matrix by adding up the kernotype norms of two-column matrices, thereby shortening the time required for optimization.
  • the optimization device 1 may be implemented using a plurality of information processing devices communicably connected via a network. In this case, each process executed by the control unit 11 may be distributed and executed by the plurality of information processing devices.
  • all or part of the functions of the optimization device 1 may be realized using hardware such as an ASIC (Application Specific Integrated Circuit), a PLD (Programmable Logic Device), or an FPGA (Field Programmable Gate Array).
  • the program may be recorded on a computer-readable recording medium. Examples of computer-readable recording media include portable media such as flexible disks, optical magnetic disks, ROMs, and CD-ROMs, and storage devices such as hard disks built into computer systems.
  • the program may be transmitted via a telecommunications line.
  • Figure 11 is a diagram showing an example of a graph in graph theory.
  • the graph shown in Figure 11 is a weighted undirected graph with four vertices, 1 to 4.
  • vertex 1 has a degree of 3
  • vertex 2 has a degree of 2
  • vertex 3 has a degree of 3
  • vertex 4 has a degree of 2.
  • the weight of the edge connecting vertices 1 and 2 is 1.0
  • the weight of the edge connecting vertices 1 and 3 is 1.5
  • the component in row 1, column 2 of the graph Laplacian matrix is -1.0
  • the component in row 1, column 3 of the graph Laplacian matrix is -1.5
  • the component in row 1, column 3 of the graph Laplacian matrix is -0.8.
  • the element in row i and column j of the graph Laplacian matrix is the negative value of the weight of the edge connecting vertex i and vertex j.
  • the element in row i and column j of the graph Laplacian matrix is 0.
  • the element in row i and column j of the graph Laplacian matrix is the sum of the weights of the edges of vertex i.
  • the graph Laplacian matrix is the result of subtracting the adjacency matrix from the degree matrix.
  • the weight of the edge connecting vertices 2 and 3 is 2.2
  • the weight of the edge connecting vertices 2 and 1 is 1.0 as described above
  • the element of row 2, column 1 of the graph Laplacian matrix is -1.0
  • the element of row 2, column 3 of the graph Laplacian matrix is -2.2
  • the element of row 2, column 4 of the graph Laplacian matrix is 0.
  • the weight of the edge connecting vertices 4 and 1 is 0.8 as described above
  • the weight of the edge connecting vertices 4 and 3 is 1.2 as described above
  • the element of row 4, column 1 of the graph Laplacian matrix is -0.8
  • the element of row 4, column 2 of the graph Laplacian matrix is 0,
  • the element of row 4, column 3 of the graph Laplacian matrix is -1.2.

Landscapes

  • Complex Calculations (AREA)

Abstract

本発明の一態様は、3列行列の核型ノルムの値の取得の処理を含む最適化の処理、を行う制御部、を備え、前記制御部は、前記3列行列の核型ノルムの値を2列行列の核型ノルムの和の演算により得る、最適化装置である。

Description

最適化装置、最適化方法及びプログラム
 本発明は、最適化装置、最適化方法及びプログラムに関する。
 最適化の技術はさまざまな場面で利用される。
Y. Shen et al., "GCN-Denoiser: Mesh Denoising with Graph Convolutional Networks," ACM Trans. Graph., vol. 41, no. 1, pp. 1-14, Feb. 2022
 最適化には、N列(Nは2以上の整数)の行列であるN列行列、の核型ノルムの演算が行われる場合がある。しかしながら、N列行列の核型ノルムの演算では、Nが大きくなるほど演算量が増大してしまう。その結果、N列行列の核型ノルムの演算に起因して、最適化に長い時間を要する場合があった。
 
 上記事情に鑑み、本発明は、最適化に要する時間を短くする技術を提供することを目的としている。
 本発明の一態様は、3列行列の核型ノルムの値の取得の処理を含む最適化の処理、を行う制御部、を備え、前記制御部は、前記3列行列の核型ノルムの値を2列行列の核型ノルムの和の演算により得る、最適化装置である。
 本発明の一態様は、3列行列の核型ノルムの値の取得の処理を含む最適化の処理、を行う制御ステップ、を有し、前記制御ステップは、前記3列行列の核型ノルムの値を2列行列の核型ノルムの和の演算により得る、最適化方法である。
 本発明の一態様は、上記の最適化装置としてコンピュータを機能させるためのプログラムである。
 本発明により、最適化に要する時間を短くすることが可能となる。
実施形態の最適化装置の構成の一例を示す図。 実施形態におけるグラフの含む雑音を説明する説明図。 実施形態における変数X及び∇Xの一例を、処理対象のグラフが八面体である場合を例に説明する第1の説明図。 実施形態における変数X及び∇Xの一例を、処理対象のグラフが八面体である場合を例に説明する第2の説明図。 実施形態における変数X及び∇Xの一例を、処理対象のグラフが八面体である場合を例に説明する第3の説明図。 実施形態における変数X及び∇Xの一例を、処理対象のグラフが八面体である場合を例に説明する第4の説明図。 実施形態における変数X及び∇Xの一例を、処理対象のグラフが八面体である場合を例に説明する第5の説明図。 実施形態における最適化装置が実行する処理の流れの一例を示すフローチャート。 変形例における実験結果の一例を示す図。 実施形態における3列行列の核型ノルムの値の取得の処理を含む最適化の処理、の流れの一例を示すフローチャート。 グラフ理論におけるグラフの一例を示す図。
 (実施形態)
 以下、グラフ理論におけるグラフに関する用語を用いて説明を行う。念のため変形例の説明の後に、グラフ理論におけるグラフに関する用語について説明を記載しておく。必要に応じて参照されたい。
 図1は、実施形態の最適化装置(Optimization Apparatus)1の構成の一例を示す図である。最適化装置1は、3列行列の核型ノルムの値の取得の処理を含む最適化の処理、を含む処理を行う。このような処理は、3列行列の核型ノルムの値の取得の処理、を含む最適化の処理、そのものであってもよい。
 以下、簡単のため、3次元のグラフである3次元グラフに含まれる雑音を除去する処理を例に、最適化装置1の説明を行う。実は3次元グラフに含まれる雑音は、後述する式(1)の最適化問題を解くことで取り除くことが可能である。すなわち、3次元グラフに含まれる雑音は、3列行列の核型ノルムの値の取得の処理を含む最適化の処理を行うことで取り除くことが可能である。
 説明に際しては、まず、後述の式(7)の近似式を用いないで雑音を除去する処理を説明することで雑音の除去に対する理解を深めた後、近似式を用いることで、演算時間が短くなることを説明する。
 最適化装置1は、バスで接続されたCPU(Central Processing Unit)等のプロセッサ91とメモリ92とを備える制御部11を備え、プログラムを実行する。
 制御部11は、3次元のグラフである3次元グラフを処理対象とする処理であって、処理対象に含まれる雑音を除去する処理である雑音除去処理を実行する。処理対象が表現する対象は、例えば、3次元点群である。すなわち、処理対象は、例えば3次元点群を表現する3次元グラフである。
 雑音除去処理は、ランク低下処理を含む。ランク低下処理は、処理対象のグラフの各頂点について、その頂点を始点としその頂点に隣接する頂点を終点とするベクトル(以下「接続ベクトル」という。)、を並べた行列(以下「ランク判定行列」という。)のランク、に基づき、ランクを下げる処理である。雑音除去処理はランク低下処理を含んでいればよいので、雑音除去処理は、ランク低下処理そのものであってもよい。
 線形代数等の代数学で周知のように、行列のランクは各列をそれぞれ1つのベクトルと見なした場合に、互いに独立なベクトルの数である。なお、行列の行と列とを入れ替えれば行は列になるので、行列のランクは各行をそれぞれ1つのベクトルと見なした場合の、互いに独立なベクトルの数であってもよい。
 ところで、グラフの含む雑音とは、グラフによる対象の表現の精度を低下させる要因を意味する。簡単のため具体例を示して雑音の概念を説明する。例えば次数が2のグラフの頂点のうちターゲットの頂点において折れ曲がりが存在するものの、グラフの表現する対象には存在しない折れ曲がりである場合、ターゲットの頂点は雑音により位置が真値から変化している状態である。このように雑音とは、頂点の位置の真値からのズレである。頂点の位置が真値からズレている場合、その頂点の位置では、辺の折れ曲がりが生じる。したがって折れ曲がりの度合を評価し、それを小さくするような頂点の位置を探索する処理を実行できれば、グラフの雑音は除去される。
 ところで、注目する頂点における折れ曲がりとは、頂点を始点又は終点とする複数のベクトルであって辺に平行な複数のベクトルが平行ではない、ことを意味する。ベクトルが平行ではない、とはベクトルが独立であることである。したがって、折れ曲がりの度合は、辺に平行なベクトルを並べたランク判定行列のランクで評価可能である。そして、雑音はグラフの折れ曲がりを生じさせるので、グラフの雑音は行列のランクで評価可能である。
 図2は、実施形態におけるグラフの含む雑音を説明する説明図である。図2はグラフG1とグラフG2との2つのグラフを示し、グラフG1から雑音を除去したグラフがグラフG2であることを示す。明らかに、グラフG2の方がグラフG1よりも折れ曲がりが少ない。
 ランク低下処理は、例えば、以下の式(1)が示す最適化問題を解く処理である。
Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-M000002
 Pは、雑音除去処理の処理対象のグラフを示す行列である。より具体的には、雑音除去処理の処理対象のグラフの頂点の各座標値を示す行列である。Xは、変数である。したがって、最適化された状態の変数Xの値が最適化の解である。すなわち、最適化された状態の変数Xは雑音除去処理の結果である。したがって、最適化された状態の変数Xは、雑音の除去後のグラフを示す行列である。より具体的には、最適化された状態の変数Xは、雑音の除去後のグラフの頂点の各座標値を示す行列である。Bは、雑音除去処理の処理対象のグラフの向き付け接続行列である。
 ||・||は核型ノルムを表す。λは所定の重み係数である。kは、雑音除去処理の処理対象のグラフの頂点を識別する識別子である。ところで、ランク判定行列のランクは雑音除去処理の処理対象のグラフの頂点ごとに得られる。そこで、式(2)が示すRは、全ての頂点のランクの総和を表す。したがって、Rは、グラフの折れ曲がりの度合を示す量である。
 したがって、式(1)の最適化問題を解くことは、雑音除去後のグラフと雑音除去前のグラフとの違いと、グラフの折れ曲がりの度合とが小さくなるように最適化を行うことを意味する。
 図3は、実施形態における変数X及び∇Xの一例を、処理対象のグラフが八面体である場合を例に説明する第1の説明図である。図3は、処理対象の八面体のグラフを示す。
 図4は、実施形態における変数X及び∇Xの一例を、処理対象のグラフが八面体である場合を例に説明する第2の説明図である。図4は、処理対象が図3に示すグラフである場合の、行列Pを示す。
 図5は、実施形態における変数X及び∇Xの一例を、処理対象のグラフが八面体である場合を例に説明する第3の説明図である。図5は、処理対象が図3に示すグラフである場合の、向き付け接続行列Bを示す。
 図6は、実施形態における変数X及び∇Xの一例を、処理対象のグラフが八面体である場合を例に説明する第4の説明図である。図6は、処理対象が図3に示すグラフである場合の、変数Xを示す。
 図7は、実施形態における変数X及び∇Xの一例を、処理対象のグラフが八面体である場合を例に説明する第5の説明図である。図7は、k=1を例として、処理対象が図3に示すグラフである場合における、∇Xを示す。
 式(1)の最適化問題は例えば、以下の式(3)~(5)の更新式を逐次的に実行することで解かれる。更新式は補助変数YとZとを含む。上付き文字(n)は、逐次処理における何回目の繰り返しであるかを示す。Kは頂点の数を示す。したがって、IΚは、行数及び列数がKの単位行列を示す。Lは、処理対象のグラフのグラフラプラシアンを示す。γはステップサイズを示す。
Figure JPOXMLDOC01-appb-M000003
Figure JPOXMLDOC01-appb-M000004
Figure JPOXMLDOC01-appb-M000005
Figure JPOXMLDOC01-appb-M000006
 式(4)及び(5)のfor以降の記号は、kが処理対象のグラフの頂点を識別する識別子であることを示す。式(6)のwhere以降の記号は、Yの特異値分解の表現を示す。
<ハードウェア構成の一例の説明>
 図1の説明に戻り、最適化装置1のハードウェア構成の一例を説明する。最適化装置1は、上述したように制御部11を備え、プログラムを実行する。最適化装置1は、プログラムの実行によって制御部11、インタフェース部12及び記憶部13を備える装置として機能する。
 より具体的には、プロセッサ91が記憶部13に記憶されているプログラムを読み出し、読み出したプログラムをメモリ92に記憶させる。プロセッサ91が、メモリ92に記憶させたプログラムを実行することによって、最適化装置1は、制御部11、インタフェース部12及び記憶部13を備える装置として機能する。
 制御部11は、例えば雑音除去処理を行う。したがって雑音除去処理には最適化の処理が含まれるので、制御部11は、雑音除去処理を実行することで、最適化の処理を行う。制御部11は、例えば最適化装置1が備える各機能部の動作を制御する。制御部11は、例えばインタフェース部12を介して、雑音除去処理の処理対象を取得する。処理対象を取得するとは、具体的には、処理対象のグラフを示す行列を取得することを意味する。制御部11は、例えば記憶部13の記憶する情報を取得する。記憶部13の記憶する情報を取得する処理は、具体的には、読み出しである。
 インタフェース部12は、最適化装置1を外部装置に接続するための通信インタフェースを含んで構成される。インタフェース部12は、有線又は無線を介して外部装置と通信する。外部装置は、例えば処理対象の送信元の装置である。このような場合、インタフェース部12は、処理対象の送信元の装置との通信によって処理対象を取得する。外部装置は、例えば雑音除去処理の結果の出力先であってもよい。このような場合、インタフェース部12は、雑音除去処理の結果の出力先に雑音除去処理の結果の結果を出力する。
 インタフェース部12は、マウスやキーボード、タッチパネル等の入力装置を含んで構成される。インタフェース部12は、これらの入力装置を最適化装置1に接続するインタフェースとして構成されてもよい。このように、インタフェース部12は、入力装置、有線又は無線、を介して最適化装置1に対する各種情報の入力を受け付ける。
 インタフェース部12は、各種情報を出力する。インタフェース部12は、例えばCRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイ、有機EL(Electro-Luminescence)ディスプレイ等の表示装置を含んで構成される。インタフェース部12は、これらの表示装置を最適化装置1に接続するインタフェースとして構成されてもよい。インタフェース部12は、例えばインタフェース部12に入力された情報を出力する。
 記憶部13は、磁気ハードディスク装置や半導体記憶装置などのコンピュータ読み出し可能な記憶媒体装置(non-transitory computer-readable recording medium)を用いて構成される。記憶部13は最適化装置1に関する各種情報を記憶する。記憶部13は、例えば雑音除去処理に必要な情報を記憶する。記憶部13は、例えば制御部11の動作により生じた各種情報を記憶する。記憶部13は、例えばインタフェース部12が取得した情報を記憶する。
 図8は、実施形態における最適化装置1が実行する処理の流れの一例を示すフローチャートである。制御部11が、処理対象を取得する(ステップS101)。制御部11が、処理対象に対して、雑音除去処理を行う(ステップS102)。雑音除去処理には最適化の処理が含まれるので、ステップS102の実行により、最適化の処理が実行される。
 このように構成された最適化装置1は、処理対象の3次元のグラフの折れ曲がりを示す量として行列のランクを用い、ランクを下げる処理を行う。そのため、処理対象のグラフの折れ曲がりを減らすことができる。上述したように、雑音はグラフの折れ曲がりを生じさせるので、グラフの雑音は行列のランクで評価可能である。そのため、処理対象の3次元のグラフの折れ曲がりを減らす最適化装置1は、3次元のグラフに含まれる雑音を除去することができる。
(適用例)
 処理対象の3次元のグラフは、例えば脳波の分布を示すグラフである。処理対象の3次元のグラフは、例えば3次元点群を示すグラフである。
<近似式を用いる雑音除去処理>
 ところで、雑音除去処理の処理対象は3次元のグラフであるため、雑音除去処理では3列行列が現れるが、3列行列を、より次元の低い行列の和で近似できれば雑音除去処理に要する演算時間を短くすることが可能である。なおN列行列(Nは1以上の整数)とは、列がN個の行列である。そこで、雑音除去処理では、例えば以下の近似式(7)を用いて表現された式を解いてもよい。式(7)は、3列行列の核型ノルムを、2列行列の核型ノルムの和に近似する式である。なお式(7)のSは3列行列を意味する。s、s、sは、3列行列Yの1列目、2列目、3列目をそれぞれ表す。
Figure JPOXMLDOC01-appb-M000007
Figure JPOXMLDOC01-appb-M000008
 3次元の行列が2次元の行列の和で表されるので、近似前の式に代えて式(7)の近似式を実行すれば、雑音除去処理をより短い演算時間で実行することが可能である。
 なお、式(7)の近似式は、例えば、上述の式(4)に適用され、適用後の式が雑音除去処理で実行されてもよい。式(4)への式(7)の近似式の適用では、式(4)のYに対して式(7)の近似式が適用される。このような場合、式(4)において、3列行列の核型ノルムの演算に代えて、2列行列の核型ノルムの和の演算が実行される。
 (実験結果)
 上記式(7)の近似式を用いた近似の精度の高さを評価する実験を行った。
 図9は、変形例における実験結果の一例を示す図である。横軸は、実験において3次元のグラフに加えられた雑音の量を示す。縦軸は、実験において雑音除去処理により除かれた雑音の量を示す。“Optimization (23) with SVD-SVT”は、雑音除去処理において近似を行わなかった場合の結果を示す。”Optimization (31) with FPSVT”は、雑音除去処理において近似を行った場合の結果を示す。
 図9の実験結果は、式(7)の近似を用いた雑音除去処理であっても、近似を用いない場合と略同一の雑音の除去の精度を有することを示す。このように、3列行列の核型ノルムを2列行列の核型ノルムの和に近似することは、精度の低下をほとんど引き起こすことなく、演算時間を短縮することを可能にする。
 このように構成された最適化装置1は、雑音除去処理における3列行列の核型ノルムの値の取得に際して、3列行列の核型ノルムの演算に代えて2列行列の核型ノルムの和の演算を行う。そのため、最適化装置1は、雑音除去処理に要する時間を短くすることができる。
 ところで、ここまで説明してきたように、3列行列の核型ノルムの演算に代えて2列行列の核型ノルムの和の演算が行われれば、3列行列の核型ノルムがより次元の低い行列の和で近似されるので、3列行列の核型ノルムの値の取得に要する時間が短くなる。
 したがって、3列行列の核型ノルムの演算に代えて2列行列の核型ノルムの和の演算を行うことによる演算時間の短縮は、必ずしも雑音の除去の処理だけで生じることではない。3列行列の核型ノルムの値の取得を含む処理であれば、どのような演算においても演算時間を短縮することができる。
 そのため、例えば3列行列の核型ノルムの値の取得の処理を含む最適化の処理に要する時間も、3列行列の核型ノルムの演算に代えて2列行列の核型ノルムの和の演算が行われることで短縮される。
 ところで上述したように雑音除去処理は、3列行列の核型ノルムの値の取得の処理を含む最適化の処理を含む処理であって最適化装置1が実行する処理、の一例である。より具体的には、制御部11は3列行列の核型ノルムの値の取得の処理を含む最適化の処理を実行するものであり、雑音除去処理はその一例である。そして、3列行列の核型ノルムの演算に代えて2列行列の核型ノルムの和の演算を行うことは雑音除去処理に限らず、3列行列の核型ノルムの値の取得の処理を含む他の処理にも適用可能である。
 したがって、制御部11が3列行列の核型ノルムの値を2列行列の核型ノルムの和の演算により得ることで、3列行列の核型ノルムの値の取得の処理を含む最適化に要する時間が短縮される。
 図10は、実施形態における3列行列の核型ノルムの値の取得の処理を含む最適化の処理、の流れの一例を示すフローチャートである。制御部11が最適化の対象である最適化対象を取得する(ステップS201)。最適化対象は、例えばインタフェース部12に入力された対象であってもよいし、制御部11が実行した他の処理の結果であってもよい。
 次に、制御部11が、最適化対象に対して、3列行列の核型ノルムの値の取得の処理を含む最適化の処理、を行う(ステップS202)。ステップS202において制御部11は、3列行列の核型ノルムの値を2列行列の核型ノルムの和の演算により得る。
 このように構成された最適化装置1は、3列行列の核型ノルムの値の取得を2列行列の核型ノルムの和によって行うので、最適化に要する時間を短くすることができる。
(変形例)
 なお、最適化装置1は、ネットワークを介して通信可能に接続された複数台の情報処理装置を用いて実装されてもよい。この場合、制御部11の実行する各処理は、複数の情報処理装置が分散して実行してもよい。
 なお、最適化装置1の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されてもよい。プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。プログラムは、電気通信回線を介して送信されてもよい。
<グラフ理論におけるグラフに関する説明>
 グラフラプラシアン行列等のグラフ理論おけるグラフについて、具体例を用いて説明を行う。
 図11は、グラフ理論におけるグラフの一例を示す図である。図11に示すグラフは1~4の4つの頂点を有する重み付き無向グラフである。図11に示すグラフの頂点1の次数は3であり、頂点2の次数は2であり、頂点3の次数は3であり、頂点4の次数は2である。
 図11に示すグラフは、頂点1と頂点2とを結ぶ辺の重みが1.0であり、頂点1と頂点3とを結ぶ辺の重みが1.5であり、頂点1と頂点4とを結ぶ辺の重みが0.8である。したがって、グラフラプラシアン行列の1行1列の成分は1.0+1.5+0.8=3.3であり、グラフラプラシアン行列の1行2列の成分は-1.0であり、グラフラプラシアン行列の1行3列の成分は-1.5であり、グラフラプラシアン行列の1行3列の成分は-0.8である。
 このように、グラフラプラシアン行列のi行j列の成分は、iとjとが異なる場合、頂点iと頂点jとを結ぶ辺の重みに負号を付けた値である。なお、頂点iと頂点jとが結ばれていない場合、グラフラプラシアン行列のi行j列の成分は0である。一方、iとjとが同じ場合(すなわちi=jの場合)、グラフラプラシアン行列のi行j列の成分は、頂点iの辺の重みの和である。すなわち、グラフラプラシアン行列は、次数行列から隣接行列を引き算した結果である。
 図11に示すグラフでは、頂点2と頂点3とを結ぶ辺の重みが2.2であり、頂点2と頂点1とを結ぶ辺の重みが上述したように1.0であり、頂点2と頂点4とは結ばれていない。したがってグラフラプラシアン行列の対角成分のうち2行2列の成分は2.2+1.0=3.2であり、グラフラプラシアン行列の2行1列の成分は-1.0であり、グラフラプラシアン行列の2行3列の成分は-2.2であり、グラフラプラシアン行列の2行4列の成分は0である。
 図11に示すグラフでは、頂点3と頂点2とを結ぶ辺の重みが上述したように2.2であり、頂点3と頂点1とを結ぶ辺の重みが上述したように1.5であり、頂点3と頂点4とを結ぶ辺の重みが1.2である。したがってグラフラプラシアン行列の対角成分のうち3行3列の成分は、2.2+1.5+1.2=4.9であり、グラフラプラシアン行列の3行1列の成分は-1.5であり、グラフラプラシアン行列の3行2列の成分は-2.2であり、グラフラプラシアン行列の3行4列の成分は-1.2である。
 図11に示すグラフでは、頂点4と頂点1とを結ぶ辺の重みが上述したように0.8であり、頂点4と頂点3とを結ぶ辺の重みが上述したように1.2であり、頂点4と頂点2とは結ばれていない。したがってグラフラプラシアン行列の対角成分のうち4行4列の成分は0.8+1.2=2.0であり、グラフラプラシアン行列の4行1列の成分は-0.8であり、グラフラプラシアン行列の4行2列の成分は0であり、グラフラプラシアン行列の4行3列の成分は-1.2である。
 以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
 1…最適化装置、 11…制御部、 12…インタフェース部、 13…記憶部、 91…プロセッサ、 92…メモリ

Claims (4)

  1.  3列行列の核型ノルムの値の取得の処理を含む最適化の処理、を行う制御部、
     を備え、
     前記制御部は、前記3列行列の核型ノルムの値を2列行列の核型ノルムの和の演算により得る、
     最適化装置。
  2.  前記制御部は、前記最適化の処理を含む処理であって3次元のグラフである3次元グラフの雑音の除去を行う処理である雑音除去処理、を行い、
     前記最適化の処理は、前記3次元グラフを処理対象とする処理であり、前記処理対象のグラフの各頂点について、前記頂点を始点とし前記頂点に隣接する頂点を終点とするベクトルである接続ベクトル、を並べた行列であるランク判定行列のランク、に基づく処理であり、前記処理対象の全ての頂点のランクの総和が前記処理対象の折れ曲がりの度合を示す量として用いられる処理であり、雑音除去後のグラフと雑音除去前のグラフとの違いと、グラフの折れ曲がりの度合とが小さくなるように最適化を行う処理、である、
     請求項1に記載の最適化装置。
  3.  3列行列の核型ノルムの値の取得の処理を含む最適化の処理、を行う制御ステップ、
     を有し、
     前記制御ステップは、前記3列行列の核型ノルムの値を2列行列の核型ノルムの和の演算により得る、
     最適化方法。
  4.  請求項1又は2に記載の最適化装置としてコンピュータを機能させるためのプログラム。
PCT/JP2022/041356 2022-11-07 2022-11-07 最適化装置、最適化方法及びプログラム WO2024100709A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/041356 WO2024100709A1 (ja) 2022-11-07 2022-11-07 最適化装置、最適化方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/041356 WO2024100709A1 (ja) 2022-11-07 2022-11-07 最適化装置、最適化方法及びプログラム

Publications (1)

Publication Number Publication Date
WO2024100709A1 true WO2024100709A1 (ja) 2024-05-16

Family

ID=91032334

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/041356 WO2024100709A1 (ja) 2022-11-07 2022-11-07 最適化装置、最適化方法及びプログラム

Country Status (1)

Country Link
WO (1) WO2024100709A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015162188A (ja) * 2014-02-28 2015-09-07 国立研究開発法人情報通信研究機構 データ解析装置及び方法
CN106683178A (zh) * 2016-12-30 2017-05-17 天津大学 基于图论的低秩矩阵恢复三维骨架方法
JP2018136797A (ja) * 2017-02-22 2018-08-30 日本電信電話株式会社 埋め込みグラフ単純化装置、埋め込みグラフ単純化方法、及びコンピュータプログラム
JP2019046196A (ja) * 2017-09-01 2019-03-22 日本電信電話株式会社 行列単純化装置、プログラム、および行列単純化方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015162188A (ja) * 2014-02-28 2015-09-07 国立研究開発法人情報通信研究機構 データ解析装置及び方法
CN106683178A (zh) * 2016-12-30 2017-05-17 天津大学 基于图论的低秩矩阵恢复三维骨架方法
JP2018136797A (ja) * 2017-02-22 2018-08-30 日本電信電話株式会社 埋め込みグラフ単純化装置、埋め込みグラフ単純化方法、及びコンピュータプログラム
JP2019046196A (ja) * 2017-09-01 2019-03-22 日本電信電話株式会社 行列単純化装置、プログラム、および行列単純化方法

Similar Documents

Publication Publication Date Title
US11144828B2 (en) Training task optimization system, training task optimization method and non-transitory computer readable medium for operating the same
JP7325158B2 (ja) ニューラル・ネットワーク・コアにおける動的精度のためのデータ表現
JP6083300B2 (ja) プログラム、並列演算方法および情報処理装置
CN109946680B (zh) 探测系统的外参数标定方法、装置、存储介质及标定系统
US20170206089A1 (en) Information processing apparatus and computational method
US20220076123A1 (en) Neural network optimization method, electronic device and processor
US10642622B2 (en) Arithmetic processing device and control method of the arithmetic processing device
JP6956796B2 (ja) 演算回路、演算方法、およびプログラム
JP2018124867A (ja) 演算処理装置及び演算処理装置の制御方法
US11822900B2 (en) Filter processing device and method of performing convolution operation at filter processing device
US10867008B2 (en) Hierarchical Jacobi methods and systems implementing a dense symmetric eigenvalue solver
JP4945532B2 (ja) 劣化画像復元方法、劣化画像復元装置、及び、プログラム
WO2017112087A1 (en) Reconstruction of signals using a gramian matrix
JP2017068577A (ja) 演算装置、方法及びプログラム
WO2024100709A1 (ja) 最適化装置、最適化方法及びプログラム
WO2024100707A1 (ja) 雑音除去装置、雑音除去方法及びプログラム
CN116452861A (zh) 目标模型训练方法、装置及电子设备
CN111062883A (zh) 图像处理方法及装置、计算机可读介质和电子设备
US20180349321A1 (en) Parallel processing apparatus, parallel operation method, and parallel operation program
US20220019491A1 (en) Method of determining split scheme, determining device, and computing system
CN113875228B (zh) 视频插帧方法及装置、计算机可读存储介质
JP7297286B2 (ja) 最適化方法、最適化プログラム、推論方法、および推論プログラム
CN110084759B (zh) 一种图像填补方法、终端设备及存储介质
JP2023009904A (ja) プログラム、推論方法および情報処理装置
CN113468469A (zh) 由计算机执行的特征图的卷积处理方法、装置和电子设备