Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7693375B2 - Arithmetic method, arithmetic device - Google Patents
[go: Go Back, main page]

JP7693375B2 - Arithmetic method, arithmetic device - Google Patents

Arithmetic method, arithmetic device Download PDF

Info

Publication number
JP7693375B2
JP7693375B2 JP2021070139A JP2021070139A JP7693375B2 JP 7693375 B2 JP7693375 B2 JP 7693375B2 JP 2021070139 A JP2021070139 A JP 2021070139A JP 2021070139 A JP2021070139 A JP 2021070139A JP 7693375 B2 JP7693375 B2 JP 7693375B2
Authority
JP
Japan
Prior art keywords
measurement
data
time
measurement data
mask
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2021070139A
Other languages
Japanese (ja)
Other versions
JP2022164994A (en
Inventor
斉 修
美智子 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2021070139A priority Critical patent/JP7693375B2/en
Publication of JP2022164994A publication Critical patent/JP2022164994A/en
Application granted granted Critical
Publication of JP7693375B2 publication Critical patent/JP7693375B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Description

本発明は、演算方法、および演算装置に関する。 The present invention relates to a calculation method and a calculation device.

膨大なデータを用いた演算は産業界や自然科学分野で活用されている。技術の進歩により演算装置の処理能力は向上しているが、演算リソースの節約や処理速度の向上のためには処理対象のデータサイズは小さいことが望ましい。特許文献1には、有限であるM種類のイベントからなる、イベント群の一部を時系列に示す部分順序集合であるイベント系列のリスク評価値を算出して表示する装置で実行することが可能な方法であって、イベント系列に基づきM次元の疎な順序行列を生成し、生成した疎な順序行列の要素間を補間して密な順序行列を算出するステップと、算出した密な順序行列に基づいて、イベント系列間の類似関係を、二次元空間又は三次元空間に埋め込み手法で写像する写像行列を算出するステップと、算出した写像行列を用いて、各イベント系列の二次元空間又は三次元空間上の対応点を算出し、算出した対応点を二次元空間又は三次元空間に表示出力するステップとを含む方法が開示されている。 Calculations using huge amounts of data are used in industry and the field of natural science. Although the processing power of calculation devices has improved due to technological advances, it is desirable for the size of the data to be processed to be small in order to save calculation resources and improve processing speed. Patent Document 1 discloses a method that can be executed by a device that calculates and displays a risk assessment value of an event sequence, which is a partially ordered set that indicates a part of an event group consisting of a finite number of M types of events, and includes the steps of generating an M-dimensional sparse ordering matrix based on the event sequence, interpolating between elements of the generated sparse ordering matrix to calculate a dense ordering matrix, calculating a mapping matrix that maps the similarity relationship between the event sequences into a two-dimensional space or a three-dimensional space using an embedding method based on the calculated dense ordering matrix, and using the calculated mapping matrix to calculate corresponding points in the two-dimensional space or the three-dimensional space of each event sequence, and displaying and outputting the calculated corresponding points in the two-dimensional space or the three-dimensional space.

国際公開第2013/084779号International Publication No. 2013/084779

特許文献1に記載されている発明では、データサイズが大きくなる。 The invention described in Patent Document 1 results in large data size.

本発明の第1の態様による演算方法は、演算装置が実行する演算方法であって、不統一な測定時刻および測定値の組み合わせを複数のセンサについて含む独立測定データを取得する取得ステップと、前記測定時刻ごとに、前記測定値の有無を示す数値であるマスクデータおよび前記測定値に基づく数値である測定データを作成して、全ての前記測定時刻ごとの前記複数のセンサの測定データおよび前記マスクデータを含む前処理表を作成する前処理ステップと、前記前処理表における前記測定データに対して埋め込み処理を行い、少なくとも前記測定データの類似度に基づき、複数の前記測定データを統合し、かつ複数の前記マスクデータを統合した縮小済埋込表を作成する次元削減ステップとを含む。
本発明の第2の態様による演算装置は、不統一な測定時刻および測定値の組み合わせを複数のセンサについて含む独立測定データを取得する取得部と、前記測定時刻ごとに、前記測定値の有無を示す数値であるマスクデータおよび前記測定値に基づく数値である測定データを作成して、全ての前記測定時刻ごとの前記複数のセンサの測定データおよび前記マスクデータを含む前処理表を作成する前処理部と、前記前処理表における前記測定データに対して埋め込み処理を行い、少なくとも前記測定データの類似度に基づき、複数の前記測定データを統合し、かつ複数の前記マスクデータを統合した縮小済埋込表を作成する次元削減部とを備える。
A calculation method according to a first aspect of the present invention is a calculation method executed by a calculation device, and includes an acquisition step of acquiring independent measurement data including combinations of inconsistent measurement times and measurement values for a plurality of sensors; a preprocessing step of creating, for each measurement time, mask data that is a numerical value indicating the presence or absence of the measurement value and measurement data that is a numerical value based on the measurement value, and creating a preprocessing table including the measurement data and the mask data of the plurality of sensors for all of the measurement times; and a dimensionality reduction step of performing an embedding process on the measurement data in the preprocessing table, integrating the plurality of measurement data based on at least the similarity of the measurement data, and creating a reduced embedding table that integrates the plurality of mask data.
A calculation device according to a second aspect of the present invention includes an acquisition unit that acquires independent measurement data including combinations of inconsistent measurement times and measurement values for multiple sensors, a pre-processing unit that creates, for each measurement time, mask data that is a numerical value indicating the presence or absence of the measurement value and measurement data that is a numerical value based on the measurement value, and creates a pre-processing table including the measurement data and the mask data of the multiple sensors for all of the measurement times, and a dimensionality reduction unit that performs an embedding process on the measurement data in the pre-processing table, and creates a reduced embedding table that integrates the multiple measurement data and the multiple mask data based on at least the similarity of the measurement data.

本発明によれば、類似するデータが統合されるのでデータサイズを小さくできる。 According to the present invention, similar data is integrated, thereby reducing data size.

第1の実施の形態における演算装置のハードウエア構成図1 is a hardware configuration diagram of a computing device according to a first embodiment. 第1の実施の形態における演算装置の機能構成図Functional configuration diagram of a computing device according to a first embodiment 独立測定データと前処理表の関係を示す図Diagram showing the relationship between independent measurement data and pretreatment table 第1の実施の形態における最適化処理の全体を示すフローチャート1 is a flowchart showing an overall optimization process according to the first embodiment. ユーザインタフェースが表示する画面の一例を示す図FIG. 13 is a diagram showing an example of a screen displayed by a user interface. 前処理部による前処理を示すフローチャートFlowchart showing preprocessing by the preprocessing unit パラメータ算出部による次元数算出処理を示すフローチャートA flowchart showing a process of calculating the number of dimensions by a parameter calculation unit. 図7のステップS333の具体例を示す図FIG. 8 is a diagram showing a specific example of step S333 in FIG. 7; 図7のステップS334~S336の動作を説明する図FIG. 8 is a diagram for explaining the operations in steps S334 to S336 in FIG. 7; データ利用率算出処理を示すフローチャートFlowchart showing data usage rate calculation processing タイムステップ算出処理を示すフローチャートFlowchart showing time step calculation processing 次元削減算出処理を示すフローチャートFlowchart showing dimension reduction calculation process 変形例1において前処理表を作成する第2の方法を示すフローチャート11 is a flowchart showing a second method for creating a pre-processing table in the first modification example. 変形例2において前処理表を作成する第3の方法を示すフローチャート11 is a flowchart showing a third method for creating a pre-processing table in the second modification example. 変形例3における次元削減部の処理を示すフローチャートFlowchart showing the processing of the dimensionality reduction unit in Modification 3 第2の実施の形態における演算装置の機能構成図Functional configuration diagram of a computing device according to a second embodiment 対応表18の一例を示す図FIG. 18 is a diagram showing an example of a correspondence table 18. 第2の実施の形態における最適化処理の全体を示すフローチャート1 is a flowchart showing an overall optimization process according to a second embodiment. 第2の実施の形態における画面表示例を示す図FIG. 13 is a diagram showing an example of a screen display in the second embodiment; 限定処理を示すフローチャートFlowchart showing the limitation process 第2の実施の形態における次元削減処理を示す図FIG. 13 is a diagram showing a dimensionality reduction process according to the second embodiment; 分析部による分析処理を示すフローチャート1 is a flowchart showing an analysis process performed by an analysis unit; 第2の実施の形態の変形例1における次元削減処理を示す図FIG. 13 is a diagram showing a dimensionality reduction process in a first modified example of the second embodiment;

―第1の実施の形態―
以下、図1~図12を参照して、演算装置の第1の実施の形態を説明する。
-First embodiment-
A first embodiment of a computing device will be described below with reference to FIGS.

(ハードウエア構成)
図1は、本発明に係る演算装置のハードウエア構成図である。演算装置1は、中央演算装置であるCPU2、読み出し専用の記憶装置であるROM3、および読み書き可能な記憶装置であるRAM4、記憶装置5、ユーザインタフェース6、および通信モジュール7を備える。CPU2がROM3に格納されるプログラムをRAM4に展開して実行することで後述する演算を行う。
(Hardware configuration)
1 is a hardware configuration diagram of a computing device according to the present invention. The computing device 1 includes a CPU 2 which is a central processing unit, a ROM 3 which is a read-only storage device, a RAM 4 which is a readable and writable storage device, a storage device 5, a user interface 6, and a communication module 7. The CPU 2 loads a program stored in the ROM 3 into the RAM 4 and executes it to perform computations, which will be described later.

演算装置1は、CPU2、ROM3、およびRAM4の組み合わせの代わりに書き換え可能な論理回路であるFPGA(Field Programmable Gate Array)や特定用途向け集積回路であるASIC(Application Specific Integrated Circuit)により実現されてもよい。また演算装置1は、CPU2、ROM3、およびRAM4の組み合わせの代わりに、異なる構成の組み合わせ、たとえばCPU2、ROM3、RAM4とFPGAの組み合わせにより実現されてもよい。 The arithmetic device 1 may be realized by a field programmable gate array (FPGA), which is a rewritable logic circuit, or an application specific integrated circuit (ASIC), which is an integrated circuit for a specific application, instead of the combination of the CPU 2, ROM 3, and RAM 4. The arithmetic device 1 may also be realized by a combination of different configurations, for example, a combination of the CPU 2, ROM 3, RAM 4, and an FPGA, instead of the combination of the CPU 2, ROM 3, and RAM 4.

記憶装置5は、読み書きが可能な不揮発性の記憶装置、たとえばハードディスクドライブである。ユーザインタフェース6は、演算装置1を扱う人間との情報をやり取りするインタフェース装置であり、たとえば液晶ディスプレイとポインティングディバイスが一体化されたタッチパネルである。ユーザインタフェース6は、液晶ディスプレイとポインティングの組み合わせにより実現されてもよい。通信モジュール7は、無線通信または有線通信により他の演算装置やセンサとの通信を行う。 The storage device 5 is a readable/writable non-volatile storage device, such as a hard disk drive. The user interface 6 is an interface device that exchanges information with the person using the computing device 1, and is, for example, a touch panel that integrates a liquid crystal display and a pointing device. The user interface 6 may be realized by a combination of a liquid crystal display and a pointing device. The communication module 7 communicates with other computing devices and sensors via wireless or wired communication.

(機能構成)
図2は、演算装置1の機能構成図である。演算装置1はその機能として、取得部11と、前処理部12と、対話部13と、パラメータ算出部14と、次元削減部15とを備える。また演算装置1は、RAM4および記憶装置5のいずれかに、独立測定データ16と、前処理表17Aと、時刻正規化表17Bと、埋込表17Cと、縮小済埋込表17Dとが格納される。ただし本実施の形態では、記載を簡潔にするために、上述した情報は全てRAM4に格納されるとして説明する。詳しくは後述するが、前処理表17A、時刻正規化表17B、埋込表17C、および縮小済埋込表17Dには、独立測定データ16に含まれる情報そのもの、または独立測定データ16に含まれる情報を加工した情報が含まれる。
(Functional configuration)
2 is a functional configuration diagram of the arithmetic device 1. The arithmetic device 1 includes, as its functions, an acquisition unit 11, a preprocessing unit 12, an interaction unit 13, a parameter calculation unit 14, and a dimension reduction unit 15. In addition, the arithmetic device 1 stores the independent measurement data 16, the preprocessing table 17A, the time normalization table 17B, the embedding table 17C, and the reduced embedding table 17D in either the RAM 4 or the storage device 5. However, in this embodiment, for the sake of brevity, it is assumed that all of the above information is stored in the RAM 4. As will be described in detail later, the preprocessing table 17A, the time normalization table 17B, the embedding table 17C, and the reduced embedding table 17D include information contained in the independent measurement data 16 itself, or information obtained by processing the information contained in the independent measurement data 16.

取得部11は、それぞれのセンサから測定値を取得してRAM4に独立測定データ16として格納する。なお取得部11は、センサから測定値と時刻とを受信してRAM4に格納してもよいし、取得部11はセンサから測定値を受信し、受信した際の現在時刻と受信した測定値とをRAM4に格納してもよい。なお取得部11は、図1に示した演算装置1の外部に存在するセンサの出力だけでなく、演算装置1に含まれる不図示の演算プログラムの出力も収集してよい。 The acquisition unit 11 acquires measurement values from each sensor and stores them in the RAM 4 as independent measurement data 16. The acquisition unit 11 may receive measurement values and time from the sensors and store them in the RAM 4, or the acquisition unit 11 may receive measurement values from the sensors and store the current time at the time of reception and the received measurement values in the RAM 4. The acquisition unit 11 may collect not only the output of sensors that are external to the calculation device 1 shown in FIG. 1, but also the output of a calculation program (not shown) included in the calculation device 1.

前処理部12は、独立測定データ16を読み込んで前処理表17Aを作成する。対話部13は、ユーザインタフェース6を利用してユーザに入力を促し、演算結果をユーザに提示する。パラメータ算出部14は、前処理表17Aおよびユーザが入力した2つのパラメータを読み込み、縮小済埋込表17Dの作成に必要な別の1つのパラメータを算出する。またパラメータ算出部14は、処理の過程で時刻正規化表17Bを作成する。次元削減部15は、ユーザの入力に基づき縮小済埋込表17Dを作成し、処理の過程で埋込表17Cを作成する。 The preprocessing unit 12 reads the independent measurement data 16 and creates a preprocessing table 17A. The dialogue unit 13 prompts the user for input using the user interface 6 and presents the calculation results to the user. The parameter calculation unit 14 reads the preprocessing table 17A and two parameters input by the user, and calculates another parameter required to create a reduced embedding table 17D. The parameter calculation unit 14 also creates a time normalization table 17B during the processing. The dimension reduction unit 15 creates a reduced embedding table 17D based on the user's input, and creates an embedding table 17C during the processing.

独立測定データ16には、各センサが測定した測定値と測定時刻の組合せが格納される。各センサが測定するタイミングは同期されておらずバラバラである。たとえばセンサS1の測定値が時刻t1に測定されていた場合でも、時刻t1にはセンサS2の測定値が独立測定データ16には記録されていないことがありえる。 The independent measurement data 16 stores a combination of the measurement value and measurement time taken by each sensor. The timing of measurement by each sensor is not synchronized and is different. For example, even if the measurement value of sensor S1 is taken at time t1, it is possible that the measurement value of sensor S2 is not recorded in the independent measurement data 16 at time t1.

前処理表17Aには、独立測定データ16に格納される測定値に基づく測定データと、測定値の有無を示すマスクデータとが、全ての測定時刻について格納される。マスクデータは、それぞれの測定データと1:1で対応するように作成される。前処理表17Aには、独立測定データ16に含まれる情報はすべて含まれる。たとえば演算装置1が10個のセンサからそれぞれ10の測定値を受信し、全ての測定値に紐づく測定時刻が異なる場合には、前処理表17Aは「20x100」のサイズとなる。この内訳は、測定データとマスクデータがそれぞれ「10」なので合計で「20」となり、時系列では「10」x「10」で「100」である。 In the preprocessing table 17A, measurement data based on the measurement values stored in the independent measurement data 16 and mask data indicating the presence or absence of a measurement value are stored for all measurement times. The mask data is created so that it corresponds 1:1 to each of the measurement data. The preprocessing table 17A contains all of the information contained in the independent measurement data 16. For example, if the calculation device 1 receives 10 measurement values from 10 sensors and the measurement times associated with all of the measurement values are different, the size of the preprocessing table 17A will be "20x100". The breakdown of this is that the measurement data and mask data are each "10", so the total is "20", and in time series it is "10" x "10" = "100".

時刻正規化表17Bは、パラメータ算出部14が前処理表17Aをタイムステップに従って時系列で複数のデータを統合したものである。このタイムステップは、ユーザが指定した値、またはユーザが指定した他のパラメータに基づきパラメータ算出部14が算出した値である。ただしタイムステップが非常に細かい場合には、時刻正規化表17Bは前処理表17Aと同一となる。 Time normalization table 17B is obtained by integrating multiple data in a time series according to the time step of preprocessing table 17A by parameter calculation unit 14. This time step is a value specified by the user, or a value calculated by parameter calculation unit 14 based on other parameters specified by the user. However, if the time step is very fine, time normalization table 17B will be the same as preprocessing table 17A.

埋込表17Cは、次元削減部15により埋込表17Cに基づき作成される。縮小済埋込表17Dは、次元削減部15により埋込表17Cに基づき作成される。縮小済埋込表17Dは、埋込表17Cのいくつかの測定データおよびマスクデータを統合したものである。たとえばセンサS1のセンサS2の測定データが統合される場合には、センサS1のマスクデータとセンサS2のマスクデータも統合される。縮小済埋込表17Dは、本実施の形態におけるいわゆる成果物であり、独立測定データ16の特徴を残しつつデータ量が削減されている。本実施の形態では記載しないが、縮小済埋込表17Dは様々なアプリケーションに利用でき、たとえばNeural ODE(Ricky T. Q. Chen et al., Neural Ordinary Differential Equations, 2018)で利用できる。 The embedding table 17C is created by the dimensionality reduction unit 15 based on the embedding table 17C. The reduced embedding table 17D is created by the dimensionality reduction unit 15 based on the embedding table 17C. The reduced embedding table 17D is an integration of some measurement data and mask data of the embedding table 17C. For example, when the measurement data of the sensor S1 and the sensor S2 are integrated, the mask data of the sensor S1 and the mask data of the sensor S2 are also integrated. The reduced embedding table 17D is a so-called deliverable in this embodiment, and the amount of data is reduced while retaining the characteristics of the independent measurement data 16. Although not described in this embodiment, the reduced embedding table 17D can be used for various applications, for example, in Neural ODE (Ricky T. Q. Chen et al., Neural Ordinary Differential Equations, 2018).

(前処理表)
図3は、独立測定データ16と前処理表17Aの関係を示す図である。図3の上部には独立測定データ16の一例が示され、図3の下部には前処理表17Aの一例が示されている。図3ではセンサS1とセンサS2の出力を用いて説明するが、独立測定データ16には数百、数千、数万のセンサの出力が含まれることも想定される。
(Pretreatment table)
Fig. 3 is a diagram showing the relationship between the independent measurement data 16 and the preprocessing table 17A. An example of the independent measurement data 16 is shown in the upper part of Fig. 3, and an example of the preprocessing table 17A is shown in the lower part of Fig. 3. Although Fig. 3 will be described using the outputs of sensors S1 and S2, it is also assumed that the independent measurement data 16 may include outputs from hundreds, thousands, or tens of thousands of sensors.

センサS1とセンサS2は独立して動作し、不定期に測定して測定値を出力する。ただしそれぞれを「センサ」と呼んでいるのは便宜のためにすぎず、それぞれの「センサ」がセンシングのためのハードウエアを備える必要はなく、出力する情報が測定値そのものではなく演算結果や異常検出信号であってもよい。異常検出信号を出力する場合には、異常がない場合には出力を行わず、異常が検出された場合にたとえば「1」の値を出力する仕様であってもよい。ここではセンサS1およびセンサS2の出力は+10~-10のいずれかの整数である。 Sensors S1 and S2 operate independently, measuring at irregular intervals and outputting measured values. However, they are referred to as "sensors" merely for convenience, and each "sensor" does not need to be equipped with sensing hardware, and the information output may not be the measurement value itself but a calculation result or an abnormality detection signal. When an abnormality detection signal is output, it may be designed so that no output is made if there is no abnormality, and a value of "1", for example, is output if an abnormality is detected. Here, the output of sensors S1 and S2 is an integer between +10 and -10.

図3に示す例では、センサS1が時刻t1に「5」、時刻t8に「2」を測定し、センサS2は時刻t3に「0」、時刻t8に「3」を測定した旨の独立測定データ16が示されている。独立測定データ16では、各センサの出力が独立した表として表現されているが、次にこの2つの表の統合を試みる。2つの表で時刻t8は共通しているので、統合する表の時刻はt1、t2、t8の3つである。そして、各時刻における測定値を記載すると図3の中段の表(以下、「中間表」と呼ぶ)ようになる。ただし中間表では、測定値が存在しない欄、具体的には時刻t1におけるセンサS2の値、および時刻t2におけるセンサS1の値は数値が存在しないことを示す「NaN」(Not a Number;欠損値)としている。 In the example shown in FIG. 3, the independent measurement data 16 indicates that sensor S1 measured "5" at time t1 and "2" at time t8, and sensor S2 measured "0" at time t3 and "3" at time t8. In the independent measurement data 16, the output of each sensor is expressed as an independent table, but next we will try to integrate these two tables. Since time t8 is common to both tables, the time of the table to be integrated is t1, t2, and t8. If the measured values at each time are listed, it will look like the table in the middle of FIG. 3 (hereinafter referred to as the "intermediate table"). However, in the intermediate table, columns with no measured values, specifically the value of sensor S2 at time t1 and the value of sensor S1 at time t2, are set to "NaN" (Not a Number; missing value), indicating that no numerical value exists.

中間表には測定値がそのまま記載され、測定値が存在しない欄は「NaN」を格納することで他と明確に区別されているので誤解が生じない。しかしデータ処理の観点からは何らかの数値を格納すれば、測定値の有無によらず一括の処理が可能となり扱いが容易となる。そこで本実施の形態では、測定値に対応する「測定データ」という概念を導入し、測定データが測定値そのものであるか否かを示す「マスクデータ」の概念も併せて導入する。すなわち測定データとマスクデータは1:1で存在し、それぞれの測定データは対応するマスクデータを有するともいえる。 The intermediate table lists the measured values as they are, and columns with no measured values are clearly distinguished from others by storing "NaN" to avoid any misunderstandings. However, from the perspective of data processing, storing any numerical value allows batch processing regardless of whether there is a measured value or not, making it easier to handle. Therefore, in this embodiment, the concept of "measurement data" that corresponds to the measured value is introduced, and also the concept of "mask data" that indicates whether the measurement data is the measured value itself. In other words, measurement data and mask data exist in a 1:1 ratio, and it can be said that each measurement data has corresponding mask data.

たとえば、マスクデータの「1」は対応する測定データが測定値であることを示し、マスクデータの「0」は対応する測定データが測定値ではないことを示す。図3に示す例では、センサS1に対応するマスクデータの名称を「M1」、センサS2に対応するマスクデータの名称を「M2」としている。中間表において、マスクM1の時刻t1の欄は、対応する測定値「5」が存在するので「1」が設定される。またマスクM1の時刻t2の欄は、対応する測定値が「NaN」すなわち存在しないので「0」が設定される。 For example, a "1" in the mask data indicates that the corresponding measurement data is a measured value, and a "0" in the mask data indicates that the corresponding measurement data is not a measured value. In the example shown in FIG. 3, the name of the mask data corresponding to sensor S1 is "M1", and the name of the mask data corresponding to sensor S2 is "M2". In the intermediate table, the column for time t1 of mask M1 is set to "1" because there is a corresponding measured value of "5". Also, the column for time t2 of mask M1 is set to "0" because the corresponding measured value is "NaN", i.e., does not exist.

このマスクベクトルで測定の有無を明確にしたうえで、図3の下段に示すように前処理表17Aでは中間表の「NaN」を任意の数値、ここでは「0」に置換する。この置換により全データが数値で表され、データ処理が容易となる。なおこの場合には、前処理表17Aの測定データだけを見ると、測定値が「0」であったのか、そもそも測定が行われていないのかが判別不可能であるが、対応するマスクデータを参照することでこの判別が可能となる。 After clarifying whether a measurement has been performed using this mask vector, as shown in the lower part of Figure 3, in preprocessing table 17A, the "NaN" in the intermediate table is replaced with an arbitrary numerical value, in this case "0". This replacement allows all data to be represented as numerical values, making data processing easier. In this case, it is impossible to tell if the measurement value was "0" or if no measurement was performed at all by looking only at the measurement data in preprocessing table 17A, but this can be determined by looking at the corresponding mask data.

なお図3では作図の都合により時刻を「t1」などのように非常に簡潔に記載したが、実際には「2021年2月3日04:05:06」などのように具体的な日時が記載される。また時刻の粒度は任意であり、たとえば1時間単位、1分単位、1秒単位、100分の1秒単位のいずれでもよい。また、センサごとや測定ごとに時刻の粒度が異なってもよい。また以下では、特定のセンサに対応する全ての時系列のマスクデータを「マスク情報」と呼ぶ。たとえば図3には、マスクM1のマスク情報とマスクM2のマスク情報とが含まれる。 In FIG. 3, for convenience of drawing, the time is written very simply as "t1", but in reality, a specific date and time is written, such as "February 3, 2021 04:05:06". The granularity of the time is arbitrary, and may be, for example, in units of one hour, one minute, one second, or one hundredth of a second. The granularity of the time may also differ for each sensor or measurement. In the following, all the time-series mask data corresponding to a specific sensor will be referred to as "mask information". For example, FIG. 3 includes mask information for mask M1 and mask information for mask M2.

(処理)
図4は、演算装置1による最適化処理の全体を示すフローチャートである。演算装置1は、まずステップS30において前処理部12が前処理を行い複数のセンサの出力を1つのテーブルにまとめる。前処理については後に詳述する。続くステップS31において対話部13はユーザインタフェース6を用いて画面表示を行い、ユーザからの入力を待つ。ユーザは、次元数、データ利用率、およびタイムステップの3つのうち2つを入力する。
(process)
4 is a flowchart showing the entire optimization process by the arithmetic device 1. In the arithmetic device 1, first, in step S30, the preprocessing unit 12 performs preprocessing and consolidates the outputs of multiple sensors into one table. The preprocessing will be described in detail later. In the following step S31, the dialogue unit 13 uses the user interface 6 to display a screen and waits for input from the user. The user inputs two of the three items: the number of dimensions, the data utilization rate, and the time step.

図5はステップS31においてユーザインタフェース6が表示する画面の一例を示す図である。図5には前述の3つ、すなわち次元数、データ利用率、およびタイムステップを指定する入力インタフェースを有する。ユーザがこの3つのうち2つを設定すると、パラメータ算出部14が後述するように残り1つを計算して画面に表示する。図4に戻って説明を続ける。 Figure 5 shows an example of a screen displayed by the user interface 6 in step S31. Figure 5 has an input interface for specifying the three items mentioned above, namely the number of dimensions, data utilization rate, and time step. When the user sets two of these three items, the parameter calculation unit 14 calculates the remaining item as described below and displays it on the screen. Let's return to Figure 4 to continue the explanation.

続くステップS32ではパラメータ算出部14は、ユーザの入力に基づき演算装置1が算出すべき項目を特定する。具体的にはパラメータ算出部14は、データ利用率およびタイムステップが設定されたので次元数を算出すると判断する場合はステップS33に進む。またパラメータ算出部14は、タイムステップおよび次元数が設定されたのでデータ利用率を算出すると判断する場合はステップS34に進む。さらにパラメータ算出部14は、次元数およびデータ利用率が設定されたのでタイムステップを算出すると判断する場合はステップS35に進む。 In the following step S32, the parameter calculation unit 14 identifies the items to be calculated by the calculation device 1 based on the user's input. Specifically, if the parameter calculation unit 14 determines that the number of dimensions should be calculated since the data utilization rate and time step have been set, it proceeds to step S33. Also, if the parameter calculation unit 14 determines that the data utilization rate should be calculated since the time step and number of dimensions have been set, it proceeds to step S34. Furthermore, if the parameter calculation unit 14 determines that the number of dimensions and data utilization rate should be set, it proceeds to step S35.

ステップS33ではパラメータ算出部14は、後述する次元数算出処理を実行してステップS36に進む。ステップS34ではパラメータ算出部14は、後述するデータ利用率算出処理を実行してステップS36に進む。ステップS35ではパラメータ算出部14は、後述するタイムステップ算出処理を実行してステップS36に進む。ステップS36では対話部13は、ステップS33~S35のいずれかで算出した項目をさらに画面に表示してステップS37に進む。ステップS37では次元削減部15は、後述するように次元削減処理を実行して図4に示す処理を終了する。 In step S33, the parameter calculation unit 14 executes a dimension number calculation process described below and proceeds to step S36. In step S34, the parameter calculation unit 14 executes a data utilization calculation process described below and proceeds to step S36. In step S35, the parameter calculation unit 14 executes a time step calculation process described below and proceeds to step S36. In step S36, the dialogue unit 13 further displays the items calculated in any of steps S33 to S35 on the screen and proceeds to step S37. In step S37, the dimension reduction unit 15 executes a dimension reduction process described below and ends the process shown in FIG. 4.

図6は、前処理部12による前処理を示すフローチャートであり、図4のステップS30の詳細を示す図である。演算装置1は、まずステップS301において処理対象の全データを読み込み、記載されている全ての時刻をソート、たとえば昇順にソートする。このソート処理では、全く同一の時刻が存在する場合には1つを残して削除する。たとえば図Cに示す例では、センサS1のデータには時刻t1と時刻t8が記録され、センサS2のデータには時刻t2と時刻t8が記録されているが、両者では時刻t8が重複するので一報が削除され、ソート結果はt1、t2、t8となる。 Figure 6 is a flowchart showing the preprocessing by the preprocessing unit 12, and shows details of step S30 in Figure 4. First, in step S301, the computing device 1 reads all data to be processed and sorts all the times listed, for example in ascending order. In this sorting process, if there are identical times, all but one are deleted. For example, in the example shown in Figure C, the data from sensor S1 records times t1 and t8, and the data from sensor S2 records times t2 and t8, but time t8 overlaps between the two, so one report is deleted and the sorted result becomes t1, t2, t8.

続くステップS302では演算装置1は、横幅がセンサ数の2倍、縦がユニークな時刻数であるテーブルを作成する。図Cに示す例ではセンサが「2」で、ユニークな時刻数が前述のt1、t2、t8の「3」なので、横幅が「2」の2倍の「4」で縦が「3」のテーブルが作成される。 In the next step S302, the calculation device 1 creates a table whose width is twice the number of sensors and whose height is the number of unique times. In the example shown in Figure C, there are "2" sensors and the number of unique times is "3" (t1, t2, and t8) as mentioned above, so a table whose width is "4" (twice "2") and whose height is "3" is created.

続くステップS303では演算装置1は、各センサの測定値をステップS302において作成したテーブルの左半分に転記し、測定値が存在しない欄には「NaN」を記入する。ただしテーブルの縦方向は昇順の時刻を示し、左詰めで横方向はセンサの種別を示す。続くステップS304では演算装置1は、ステップS302において作成したテーブルの右半分にマスクデータを書き込む。このとき演算装置1は、対応する測定データが「NaN」であるマスクデータを「0」に設定し、対応する測定データが「NaN」以外、すなわち何らかの測定値が存在するマスクデータを任意の値に設定する。この任意の値は「0」および「1」のいずれでもよい。 In the next step S303, the calculation device 1 transcribes the measurement values of each sensor into the left half of the table created in step S302, and writes "NaN" in any column where there is no measurement value. However, the vertical direction of the table indicates the time in ascending order, and the horizontal direction, left-justified, indicates the type of sensor. In the next step S304, the calculation device 1 writes mask data into the right half of the table created in step S302. At this time, the calculation device 1 sets mask data whose corresponding measurement data is "NaN" to "0", and sets mask data whose corresponding measurement data is other than "NaN", i.e., where some measurement value exists, to an arbitrary value. This arbitrary value may be either "0" or "1".

続くステップS305では演算装置1は、ステップS303において書き込んだ「NaN」を「0」に置換して図6に示す処理を終了する。すなわち本ステップの処理が完了すると、図Cに示す例において最下段に示す前処理表17Aが完成する。 In the next step S305, the calculation device 1 replaces the "NaN" written in step S303 with "0" and ends the process shown in FIG. 6. In other words, when the process of this step is completed, the preprocessing table 17A shown at the bottom in the example shown in FIG. C is completed.

図7は、パラメータ算出部14による次元数算出処理を示すフローチャートであり、図4のステップS33の詳細を示す図である。まずステップS331では演算装置1は、ユーザにより指定されたタイムステップとデータ利用率の値を読み込む。なお以下では、ユーザにより指定されたタイムステップを「タイムステップDS」と呼び、ユーザにより指定されたデータ利用率を「データ利用率DU」と呼ぶ。 Figure 7 is a flowchart showing the dimensionality calculation process by the parameter calculation unit 14, and shows details of step S33 in Figure 4. First, in step S331, the calculation device 1 reads the time step and data utilization rate value specified by the user. Note that hereinafter, the time step specified by the user is referred to as the "time step DS", and the data utilization rate specified by the user is referred to as the "data utilization rate DU".

続くステップS332では演算装置1は、前処理表の時刻をユーザにより指定されたタイムステップに従って修正する。具体的には、前処理表に記載されたそれぞれの時刻をタイムステップDSで除算して、四捨五入や切り捨てした結果を新たな時刻情報とする。たとえばタイムステップDSが60秒の場合には、時刻情報から秒単位の情報を削除することで対応してもよい。この場合には「2020年3月4日5時45分23秒」が「2020年3月4日5時45分」に変更される。なおこの処理により前処理表の時刻に重複が生じる場合には次のステップにより処理される。 In the next step S332, the calculation device 1 corrects the times in the preprocessing table according to the time step specified by the user. Specifically, each time listed in the preprocessing table is divided by the time step DS, and the result, which is rounded up or down, is used as new time information. For example, if the time step DS is 60 seconds, this may be handled by deleting information in seconds from the time information. In this case, "March 4, 2020, 5:45:23" is changed to "March 4, 2020, 5:45." Note that if this process results in overlapping times in the preprocessing table, the next step is performed.

続くステップS333では演算装置1は、同一時刻となった前処理表の情報同士を次のように統合する。すなわち、センサの測定値は平均値を算出し、マスクの値はビット演算であるOR演算を行う。ただし対応するマスクの値が「0」の場合には測定が行われていないので、そのセンサの測定値は無視して平均値の母数に含めなくてもよい。本ステップの処理により、前処理表の時系列データの数、すなわちテーブルの縦方向の数は維持または減少する。本ステップによる処理の具体例を、図面を参照して説明する。 In the next step S333, the calculation device 1 integrates information from the preprocessing table that has reached the same time as follows. That is, the average value of the sensor measurement values is calculated, and an OR operation, which is a bit operation, is performed on the mask values. However, if the corresponding mask value is "0", no measurement has been performed, so the sensor measurement value can be ignored and not included in the population of the average value. By the processing of this step, the number of time series data in the preprocessing table, i.e. the number of data in the vertical direction of the table, is maintained or decreased. A specific example of the processing of this step will be described with reference to the drawings.

図8は、ステップS333の具体例を示す図である。図8の上部は前処理表の一部を抜粋して記載しており、説明の便宜のために左端にレコード番号を記載している。図8に示す例では、センサS1およびセンサS2のいずれも時刻情報は1秒単位で記録している。レコード「52」は、2020年3月4日5時45分23秒の測定値であり、マスクの値からわかるように、センサS2の測定値のみが記録されている。レコード「53」は、2020年3月4日5時45分48秒の測定値であり、マスクの値からわかるように、センサS1およびセンサS2の測定値が記録されている。 Figure 8 is a diagram showing a specific example of step S333. An excerpt of a portion of the preprocessing table is shown at the top of Figure 8, and record numbers are shown on the left side for ease of explanation. In the example shown in Figure 8, time information is recorded in one-second units for both sensor S1 and sensor S2. Record "52" is a measurement value at 5:45:23 on March 4, 2020, and as can be seen from the mask value, only the measurement value of sensor S2 is recorded. Record "53" is a measurement value at 5:45:48 on March 4, 2020, and as can be seen from the mask value, the measurement values of sensors S1 and S2 are recorded.

ここで、タイムステップDSが60秒に設定されると秒単位の情報が省かれて、レコード「52」とレコード「53」が同時刻として扱われる。この場合に、レコード「52」とレコード「53」のM1の値が「0」と「1」なので、「1」に対応するS1の「2」の値がそのまま統合されたレコードのS1の値に設定される。レコード「52」とレコード「53」のM2の値はいずれも「1」なので、統合されたレコードのS2の値は「8」と「6」の平均である「7」に設定される。図7に戻って説明を続ける。 Here, if the time step DS is set to 60 seconds, the information in seconds is omitted, and records "52" and "53" are treated as having the same time. In this case, the M1 values of records "52" and "53" are "0" and "1", respectively, so the value of S1, "2", which corresponds to "1", is set as the S1 value of the merged record. The M2 values of records "52" and "53" are both "1", so the S2 value of the merged record is set to "7", which is the average of "8" and "6". Let's return to Figure 7 and continue the explanation.

続くステップS334では演算装置1は、ステップS333により加工された後の前処理表17Aを対象として、マスクデータに含まれるそれぞれの時系列の情報であるマスク情報のパターンを集計する。続くステップS335では演算装置1は、ステップS334において集計したパターンを件数が多い順にソートする。続くステップS336では演算装置1は、指定されたデータ利用率を上回る最小のパターン数Pを特定する。ここでステップS334~S336の処理を具体例とともに詳述する。 In the next step S334, the calculation device 1 counts the patterns of mask information, which is each piece of time-series information contained in the mask data, for the preprocessing table 17A processed in step S333. In the next step S335, the calculation device 1 sorts the patterns counted in step S334 in descending order of number. In the next step S336, the calculation device 1 identifies the smallest number of patterns P that exceeds the specified data utilization rate. Here, the processing of steps S334 to S336 will be described in detail with specific examples.

図9はステップS334~S336の動作を説明する図である。この具体例では、ステップS333により加工された後の前処理表の時刻情報が800個、対象とするセンサが1000個存在する場合を想定する。この場合に、各センサの出力に対応するマスク情報をベクトルデータとして扱うと800次元のベクトルデータであり、この800次元のベクトルデータはセンサと同数の1000個存在する。図9に示す表では、具体的なベクトルの値を該当数が多い順に上から並べ、「順位」の欄も設けている。さらに図9では便宜のために、その順位までの累計数を右端に記載している。 Figure 9 is a diagram explaining the operation of steps S334 to S336. In this specific example, it is assumed that there are 800 pieces of time information in the preprocessing table after processing in step S333, and 1000 target sensors. In this case, if the mask information corresponding to the output of each sensor is treated as vector data, it becomes 800-dimensional vector data, and there are 1000 of these 800-dimensional vector data, the same number as the number of sensors. In the table shown in Figure 9, the specific vector values are arranged from top to bottom in descending order of the number of hits, and a "rank" column is also provided. Furthermore, for convenience in Figure 9, the cumulative number up to that rank is listed at the right end.

上述したように、ステップS334の処理によりマスク情報のパターンが集計されるので、ステップS334が完了すると図9に示す「ベクトル」と「カウント数」とが紐づけられた状態となる。ただしこの状態ではまだ図9に示すようなソートはされていない。続くステップS335が完了すると、図9に示すようにソートがされた状態となる。ここで、ユーザにより指定されたデータ利用率が「85%」であった場合には、順位「123」までの累計は「847」件なので1000件の85%である850件には及ばない。そのため、次の順位「124」までを含めることで指定された85%を超えるため、ステップS336において特定すべき最小のパターン数Pは「124」と特定される。図7に戻って説明を続ける。 As described above, the mask information patterns are tallied by the processing of step S334, and when step S334 is completed, the "vectors" and "counts" shown in FIG. 9 are linked. However, in this state, sorting as shown in FIG. 9 has not yet been performed. When the following step S335 is completed, the data is sorted as shown in FIG. 9. If the data usage rate specified by the user is "85%", the cumulative total up to rank "123" is "847", which is less than 850, which is 85% of 1000. Therefore, since the number of patterns P to be identified in step S336 exceeds the specified 85% by including the next rank "124", the minimum number of patterns P to be identified is "124". Returning to FIG. 7, the explanation will continue.

ステップS336の次に実行されるステップS337では演算装置1は、次元数ceil(log2P)を算出して図7に示す処理を終了する。なお以下では、本ステップにおいて算出した次元数を「次元数D」と呼ぶ。関数ceilは、引数である実数の切り上げ処理を行う関数であり、引数が小数の場合は切り上げ処理をした結果を出力し、引数が整数の場合はその整数を出力する。ステップS337において算出される値が、本フローチャートが目的としている次元数である。 In step S337, which is executed after step S336, the calculation device 1 calculates the number of dimensions ceil(log2P) and ends the process shown in FIG. 7. Note that hereinafter, the number of dimensions calculated in this step will be referred to as the "number of dimensions D." The function ceil is a function that rounds up real numbers that are arguments, and outputs the result of the rounding up process if the argument is a decimal, and outputs the integer if the argument is an integer. The value calculated in step S337 is the number of dimensions targeted by this flowchart.

図10は、データ利用率算出処理を示すフローチャートであり、図4のステップS34の詳細を示す図である。図10では、図7と共通する処理には同一のステップ番号を付しており、以下ではそれらのステップの説明を省略する。まずステップS341では演算装置1は、ユーザにより指定されたタイムステップと次元数の値を読み込む。なお以下では、ユーザにより指定されたタイムステップを「タイムステップDS」と呼び、ユーザにより指定された次元数を「次元数D」と呼ぶ。 Figure 10 is a flowchart showing the data utilization calculation process, and shows details of step S34 in Figure 4. In Figure 10, the same steps as in Figure 7 are given the same step numbers, and the description of these steps will be omitted below. First, in step S341, the calculation device 1 reads the values of the time step and number of dimensions specified by the user. Note that hereinafter, the time step specified by the user will be referred to as the "time step DS", and the number of dimensions specified by the user will be referred to as the "number of dimensions D".

ステップS341の後に実行されるステップS332~S335は、ステップS341において読み込んだタイムステップDSを用いた処理であり、図7を参照して説明したとおりなのでここでは説明を省略する。続くステップS346では演算装置1は、ソートした上位2のD乗パターンの合計件数と全件との比率をデータ利用率として算出し、図10に示す処理を終了する。ステップS346において算出される値が、本フローチャートが目的としているデータ利用率である。 Steps S332 to S335 executed after step S341 are processes using the time step DS read in step S341, and as they have been explained with reference to FIG. 7, explanations will be omitted here. In the following step S346, the calculation device 1 calculates the ratio of the total number of the top two sorted D-power patterns to the total number of patterns as the data utilization rate, and ends the process shown in FIG. 10. The value calculated in step S346 is the data utilization rate targeted by this flowchart.

ここでは、指定された次元数Dが「3」、ソートしたパターン数が前述の図9のとおりの場合を例に具体的に説明する。2の3乗は「8」であり図9において上位「8」パターンの合計は「150」である。そして図9における全件は「1000」件なので、データ利用率は「15%」と算出される。 Here, we will explain in detail the case where the specified number of dimensions D is "3" and the number of sorted patterns is as shown in Figure 9 above. The cube of 2 is "8", and the total number of the top "8" patterns in Figure 9 is "150". And since the total number of items in Figure 9 is "1000", the data utilization rate is calculated to be "15%".

図11は、タイムステップ算出処理を示すフローチャートであり、図4のステップS35の詳細を示す図である。まずステップS351では演算装置1は、ユーザにより指定されたデータ利用率と次元数の値を読み込む。なお以下では、ユーザにより指定されたデータ利用率を「データ利用率DU」と呼び、ユーザにより指定された次元数を「次元数D」と呼ぶ。続くステップS352では演算装置1は、指定可能なタイムステップの上限値Tmaxと下限値Tminを読み込む。これらの情報は、他の装置から読み込んでもよいし、あらかじめ記憶装置5に格納されていた値を読み込んでもよい。 Figure 11 is a flowchart showing the time step calculation process, and shows details of step S35 in Figure 4. First, in step S351, the calculation device 1 reads the data utilization rate and number of dimensions specified by the user. In the following, the data utilization rate specified by the user is referred to as the "data utilization rate DU", and the number of dimensions specified by the user is referred to as the "number of dimensions D". In the following step S352, the calculation device 1 reads the upper limit Tmax and lower limit Tmin of the time step that can be specified. This information may be read from another device, or may be values that have been previously stored in the storage device 5.

続くステップS353では演算装置1は、TtmpをTminとTmaxの平均値に設定する。続くステップS354では演算装置1は、Tmin,Tmax,Ttmpのそれぞれと、指定された次元数Dの組み合わせでステップS34、すなわち図10に示した処理を実行してUmin、Umax、Utmpのそれぞれを算出する。換言するとステップS354では、図10に示した処理をタイムステップのパラメータだけを変更して3回実行する。次に演算装置1はステップS355に進む。 In the following step S353, the calculation device 1 sets Ttmp to the average value of Tmin and Tmax. In the following step S354, the calculation device 1 executes step S34, i.e., the process shown in FIG. 10, using a combination of each of Tmin, Tmax, and Ttmp and the specified number of dimensions D to calculate each of Umin, Umax, and Utmp. In other words, in step S354, the process shown in FIG. 10 is executed three times with only the time step parameters changed. Next, the calculation device 1 proceeds to step S355.

ステップS355では演算装置1は、算出されたUtmpの値が指定されたデータ利用率Duよりも大きいか否かを判断する。演算装置1は、算出されたUtmpの値が指定されたデータ利用率Duよりも大きいと判断する場合はステップS356に進み、算出されたUtmpの値が指定されたデータ利用率Du以下であると判断する場合はステップS357に進む。ステップS356では演算装置1は、UminにUtmpを代入し、UtmpにTtmpとTmaxの平均値を代入し、ステップS351において指定された次元数Dと本ステップにおいて更新したDtmpを用いて図10の処理を実行してUtmpを更新し、ステップS355に戻る。 In step S355, the calculation device 1 determines whether the calculated value of Utmp is greater than the specified data utilization rate Du. If the calculation device 1 determines that the calculated value of Utmp is greater than the specified data utilization rate Du, the calculation device 1 proceeds to step S356, and if the calculation device 1 determines that the calculated value of Utmp is equal to or less than the specified data utilization rate Du, the calculation device 1 proceeds to step S357. In step S356, the calculation device 1 assigns Utmp to Umin, assigns the average value of Ttmp and Tmax to Utmp, and executes the process of FIG. 10 using the number of dimensions D specified in step S351 and the Dtmp updated in this step to update Utmp, and returns to step S355.

ステップS357では演算装置1は、算出されたUtmpの値が指定されたデータ利用率Duよりも小さいか否かを判断する。演算装置1は、算出されたUtmpの値が指定されたデータ利用率Duよりも小さいと判断する場合はステップS358に進み、算出されたUtmpの値が指定されたデータ利用率Duよりも小さくない、すなわち指定されたデータ利用率Duに等しいと判断する場合はステップS359に進む。ステップS358では演算装置1は、UmaxにUtmpを代入し、UtmpにTtmpとTminの平均値を代入し、ステップS351において指定された次元数Dと本ステップにおいて更新したDtmpを用いて図10の処理を実行してUtmpを更新し、ステップS355に戻る。 In step S357, the calculation device 1 determines whether the calculated value of Utmp is smaller than the specified data utilization rate Du. If the calculation device 1 determines that the calculated value of Utmp is smaller than the specified data utilization rate Du, the calculation device 1 proceeds to step S358, and if the calculation device 1 determines that the calculated value of Utmp is not smaller than the specified data utilization rate Du, that is, equal to the specified data utilization rate Du, the calculation device 1 proceeds to step S359. In step S358, the calculation device 1 assigns Utmp to Umax, assigns the average value of Ttmp and Tmin to Utmp, and executes the process of FIG. 10 using the number of dimensions D specified in step S351 and the Dtmp updated in this step to update Utmp, and returns to step S355.

ステップS359では演算装置1は、直前に算出されたTtmpの値をタイムステップとして用いて図7に示したステップS332およびS333の処理を実行し、図11に示す処理を終了する。本ステップの処理により前処理表が更新される。本ステップにおいて用いた値が、本フローチャートが目的としているタイムステップである。図11に示した処理を概略すると、次元数を指定された値に固定してタイムステップをつぎつぎに変更し、指定されたデータ利用率に一致するタイムステップの値を探すものである。 In step S359, the calculation device 1 executes the processes of steps S332 and S333 shown in FIG. 7 using the previously calculated value of Ttmp as the time step, and ends the process shown in FIG. 11. The preprocessing table is updated by the process of this step. The value used in this step is the time step targeted by this flowchart. In summary, the process shown in FIG. 11 fixes the number of dimensions to a specified value, changes the time step successively, and searches for a time step value that matches the specified data utilization rate.

図12は、次元削減算出処理を示すフローチャートであり、図4のステップS37の詳細を示す図である。図4に示したように、ステップS37が実行される前にステップS34~35のいずれかが実行されており、どのステップが実行された場合でも、指定されたタイムステップまたは算出されたタイムステップを用いて、前処理表17Aに基づき時刻正規化表17Bが作成されている。 Figure 12 is a flowchart showing the dimensionality reduction calculation process, and shows details of step S37 in Figure 4. As shown in Figure 4, any one of steps S34 to S35 is executed before step S37 is executed, and regardless of which step is executed, a time normalization table 17B is created based on preprocessing table 17A using the specified time step or the calculated time step.

ステップS370では演算装置1は、時刻正規化表17Bの測定データを対象として次元削減を目的とする公知の埋め込み処理を行い、低次元空間のベクトルにマッピングすることで埋込表17Cを作成する。この埋め込み手法はたとえば、Wangらの手法(Jizhe Wang, et.al., Billion-scale Commodity Embedding for E-commerce Recommendation in Alibaba, 2018)、Nalmpantisらの手法(Christoforos Nalmpantis, et.al., Signal2Vec: Time Series Embedding Representation, 2019)、およびKazemiらの手法(Seyed Mehran Kazemi, et.al., Time2Vec: Learning a Vector Representation of Time, 2019)が知られている。 In step S370, the calculation device 1 performs a known embedding process for the purpose of reducing the dimension of the measurement data of the time normalization table 17B, and creates the embedding table 17C by mapping it to a vector in a low-dimensional space. Known embedding methods include the method of Wang et al. (Jizhe Wang, et.al., Billion-scale Commodity Embedding for E-commerce Recommendation in Alibaba, 2018), the method of Nalmpantis et al. (Christoforos Nalmpantis, et.al., Signal2Vec: Time Series Embedding Representation, 2019), and the method of Kazemi et al. (Seyed Mehran Kazemi, et.al., Time2Vec: Learning a Vector Representation of Time, 2019).

続くステップS371では演算装置1は、埋込表17Cにおける測定データ同士のコサイン類似度を算出してステップS372に進む。ステップS372以降では、埋込表17Cに加工を施して縮小済埋込表17Dを作成する。すなわち図12に示す処理が完了するまでは縮小済埋込表17Dは完成していないが、以下では便宜的に作成中であっても縮小済埋込表17Dと呼ぶ。縮小済埋込表17Dの初期状態は、ステップS370において作成された埋込表17Cそのものである。 In the next step S371, the calculation device 1 calculates the cosine similarity between the measurement data in the embedding table 17C and proceeds to step S372. In steps S372 and after, the embedding table 17C is processed to create the reduced embedding table 17D. That is, the reduced embedding table 17D is not complete until the processing shown in FIG. 12 is completed, but for convenience, it will be referred to as the reduced embedding table 17D below even if it is still being created. The initial state of the reduced embedding table 17D is the embedding table 17C created in step S370.

ステップS372では演算装置1は、現在の縮小済埋込表17Dにおける測定データの種別数は、指定された、または算出された次元数Dよりも大きいか否かを判断する。演算装置1は、現在の縮小済埋込表17Dにおける測定データの種別数は、指定された、または算出された次元数Dよりも大きいと判断する場合はステップS373に進む。演算装置1は、現在の縮小済埋込表17Dにおける測定データの種別数は、指定された、または算出された次元数Dよりも大きくないと判断する場合は、現在の縮小済埋込表17Dが最終的な縮小済埋込表17Dであると判断して図12に示す処理を終了する。 In step S372, the calculation device 1 determines whether the number of types of measurement data in the current reduced embedding table 17D is greater than the specified or calculated number of dimensions D. If the calculation device 1 determines that the number of types of measurement data in the current reduced embedding table 17D is greater than the specified or calculated number of dimensions D, the calculation device 1 proceeds to step S373. If the calculation device 1 determines that the number of types of measurement data in the current reduced embedding table 17D is not greater than the specified or calculated number of dimensions D, the calculation device 1 determines that the current reduced embedding table 17D is the final reduced embedding table 17D and ends the processing shown in FIG. 12.

ステップS373では演算装置1は、ステップS371において算出したコサイン類似度のうち、統合されていない測定データのうちでコサイン類似度が最も高い複数の測定データを特定してステップS374に進む。ステップS374では演算装置1は、ステップS373において特定した測定データにおいて、未処理の最も古い時刻を選択する。続くステップS375では演算装置1は、ステップS373において特定した測定データであって、ステップS374において選択した時刻の測定データに対応するマスクデータの値が「1」である数をカウントする。演算装置1は、「1」のマスクデータの値がゼロと判断する場合はステップS376に進み、「1」と判断する場合はステップS377に進み、「2」以上であると判断する場合はステップS378に進む。 In step S373, the calculation device 1 identifies a plurality of pieces of measurement data having the highest cosine similarity among the non-integrated measurement data calculated in step S371, and proceeds to step S374. In step S374, the calculation device 1 selects the oldest unprocessed time in the measurement data identified in step S373. In the following step S375, the calculation device 1 counts the number of measurement data identified in step S373 for which the mask data value corresponding to the measurement data at the time selected in step S374 is "1". If the calculation device 1 determines that the mask data value of "1" is zero, it proceeds to step S376, if it determines that the mask data value is "1", it proceeds to step S377, and if it determines that the mask data value is "2" or greater, it proceeds to step S378.

ステップS376では演算装置1は、統合する測定データの値をゼロに設定してステップS379に進む。ステップS377では演算装置1は、対応するマスクデータが「1」である測定データの値を、統合する測定データの値に設定してステップS379に進む。ステップS378では演算装置1は、対応するマスクデータが「1」である測定データの平均値、または論理和を、統合する測定データの値に設定してステップS379に進む。なおステップS376~S378のそれぞれにおいて、マスクデータは統合対象の論理和の値を用いる。 In step S376, the calculation device 1 sets the value of the measurement data to be integrated to zero, and proceeds to step S379. In step S377, the calculation device 1 sets the value of the measurement data to be integrated to the value of the measurement data whose corresponding mask data is "1", and proceeds to step S379. In step S378, the calculation device 1 sets the average value or logical sum of the measurement data whose corresponding mask data is "1" to the value of the measurement data to be integrated, and proceeds to step S379. Note that in each of steps S376 to S378, the mask data uses the value of the logical sum of the objects to be integrated.

ステップS379では演算装置1は、ステップS373において特定した複数の測定データについて、全ての時刻のデータを処理したか否かを判断し、全ての時刻のデータを処理したと判断する場合はステップS372に戻り、全ての時刻のデータの処理が完了していないと判断する場合はステップS374に戻る。以上が図12の説明である。 In step S379, the calculation device 1 determines whether or not all the data at all times has been processed for the multiple measurement data identified in step S373. If it determines that all the data at all times has been processed, the calculation device 1 returns to step S372, and if it determines that processing of all the data at all times has not been completed, the calculation device 1 returns to step S374. This concludes the explanation of FIG. 12.

上述した第1の実施の形態によれば、次の作用効果が得られる。
(1)演算装置1が実行する演算方法は、不統一な測定時刻および測定値の組み合わせを複数のセンサについて含む独立測定データを読み込む、取得部11が実行する取得ステップと、測定時刻ごとに、測定値の有無を示す数値であるマスクデータおよび測定値に基づく数値である測定データを作成して、全ての測定時刻ごとの複数のセンサの測定データおよびマスクデータを含む前処理表17Aを作成する、前処理部12が実行する前処理ステップと、前処理表17Aにおける測定データに対して埋め込み処理を行い、少なくとも測定データの類似度に基づき、複数の測定データを統合し、かつ複数のマスクデータを統合した縮小済埋込表17Dを作成する、次元削減部15が実行する次元削減ステップとを含む。そのため、次元削減部15が実行する次元削減ステップにより縮小済埋込表17Dは前処理表17Aよりも縮小されているので、データサイズが小さくなり、縮小済埋込表17Dを用いた演算は要求リソースの低減と処理負荷の向上が見込まれる。
According to the above-described first embodiment, the following advantageous effects can be obtained.
(1) The calculation method executed by the calculation device 1 includes an acquisition step executed by the acquisition unit 11, which reads independent measurement data including combinations of non-uniform measurement times and measurement values for multiple sensors, a preprocessing step executed by the preprocessing unit 12, which creates mask data, which is a numerical value indicating the presence or absence of a measurement value, and measurement data, which is a numerical value based on the measurement value, for each measurement time, to create a preprocessing table 17A including the measurement data and mask data of multiple sensors for all measurement times, and a dimension reduction step executed by the dimension reduction unit 15, which performs an embedding process on the measurement data in the preprocessing table 17A, and creates a reduced embedding table 17D that integrates multiple measurement data and multiple mask data based on at least the similarity of the measurement data. Therefore, the reduced embedding table 17D is reduced in size compared to the preprocessing table 17A by the dimension reduction step executed by the dimension reduction unit 15, and therefore the data size is reduced, and calculations using the reduced embedding table 17D are expected to reduce required resources and improve processing load.

(2)次元削減部15が実行する次元削減ステップは、測定データのコサイン類似度に基づき統合する複数の測定値を決定する。そのため、効率的に測定データを統合できる。 (2) The dimension reduction step performed by the dimension reduction unit 15 determines multiple measurement values to be integrated based on the cosine similarity of the measurement data. Therefore, the measurement data can be integrated efficiently.

(3)演算装置1が実行する演算方法は、時間幅であるタイムステップにしたがって前処理表17Aにおける異なる測定時刻に組み合わされる複数の測定値および複数のマスクデータを統合する時間統合ステップ(図7、図10、図11のS332およびS333)を含む。そのため測定データが所定のタイムステップの時間単位に整えられるので、統一的な処理が可能となる。 (3) The calculation method executed by the calculation device 1 includes a time integration step (S332 and S333 in Figs. 7, 10, and 11) that integrates multiple measurement values and multiple mask data combined at different measurement times in the preprocessing table 17A according to a time step, which is a time width. Therefore, the measurement data is arranged in time units of a predetermined time step, making it possible to perform unified processing.

(4)演算装置1が実行する演算方法は、統合する時間幅であるタイムステップ、測定データの利用率であるデータ利用率、およびデータ数である次元数の3つのうち2つの指定を受け付ける入力ステップ(図4のステップS31)と、3つのうち指定されていない1つを算出する、パラメータ算出部14によるパラメータ算出ステップと、タイムステップにしたがって前処理表17Aにおける異なる測定時刻に組み合わされる複数の測定値および複数のマスクデータを統合する時間統合ステップと、を含む。そのため、互いに関連する3つのパラメータを矛盾なく定めることができる。 (4) The calculation method executed by the calculation device 1 includes an input step (step S31 in FIG. 4) for accepting the specification of two of the three: the time step, which is the time width to be integrated; the data utilization rate, which is the utilization rate of the measurement data; and the number of dimensions, which is the number of data; a parameter calculation step by the parameter calculation unit 14 for calculating the one of the three that is not specified; and a time integration step for integrating multiple measurement values and multiple mask data that are combined at different measurement times in the preprocessing table 17A according to the time step. Therefore, the three parameters that are related to each other can be determined without contradiction.

(5)前処理ステップは、センサごとに測定値が存在しない測定時刻におけるマスクデータをゼロに設定し、存在しない測定値に対応する測定データをゼロに設定する。 (5) The preprocessing step involves setting mask data for each sensor at measurement times when no measurement values exist to zero, and setting measurement data corresponding to nonexistent measurements to zero.

(変形例1)
第1の実施の形態ではマスクデータは、測定値の有無と測定値がゼロであることを判別する目的で設定された。すなわち第1の実施の形態では、センサベクトルの値が「0」の場合に、測定値が「0」であるのか、それとも測定が行われていないかを判別するためにマスクデータが作成された。そのため測定データが「0」以外の場合にはマスクデータの値は任意に設定できた。しかし、マスクデータの設計思想が第1の実施の形態とは異なってもよい。
(Variation 1)
In the first embodiment, the mask data was set for the purpose of determining whether a measurement value is present or absent and whether the measurement value is zero. That is, in the first embodiment, when the value of the sensor vector is "0", the mask data was created to determine whether the measurement value is "0" or whether the measurement has not been performed. Therefore, when the measurement data is other than "0", the value of the mask data could be set arbitrarily. However, the design concept of the mask data may be different from that of the first embodiment.

すなわち、マスクデータを測定値の有無の判別のために用いてもよい。たとえばマスクデータの「1」は対応する測定値が存在する、すなわち測定が行われたことを示し、マスクデータの「0」は対応する測定値が存在しない、すなわち測定が行われていないことを示すようにマスクデータを作成してもよい。この場合には、マスクデータの「0」に対応するセンサデータの値は任意に設定可能である。 That is, the mask data may be used to determine whether or not a measurement value exists. For example, the mask data may be created so that a "1" in the mask data indicates that a corresponding measurement value exists, i.e., a measurement has been performed, and a "0" in the mask data indicates that a corresponding measurement value does not exist, i.e., a measurement has not been performed. In this case, the value of the sensor data corresponding to a "0" in the mask data can be set arbitrarily.

図13は、前処理表17Aを作成する第2の方法を示すフローチャートである。このフローチャートは、図2に比べてステップS304およびS305がステップS304AおよびS305Aに置き換わっている点が異なる。以下ではこの相違点を説明する。 Figure 13 is a flowchart showing a second method for creating preprocessing table 17A. This flowchart differs from Figure 2 in that steps S304 and S305 are replaced with steps S304A and S305A. This difference is explained below.

ステップS304Aでは演算装置1は、ステップS302において作成したテーブルの右半分にマスクデータを書き込む。このとき演算装置1は、対応する測定データが「NaN」であるマスクデータを「0」に設定し、対応する測定データが「NaN」以外、すなわち何らかの測定値が存在するマスクデータを「1」に設定する。続くステップS305Aでは演算装置1は、ステップS303において書き込んだ「NaN」を任意の値に置換して図6に示す処理を終了する。この任意の値は、所定の数値範囲の実数であればよく、少なくとも測定値の最小値から最大値の間の値をとることができる。 In step S304A, the calculation device 1 writes mask data into the right half of the table created in step S302. At this time, the calculation device 1 sets mask data whose corresponding measurement data is "NaN" to "0", and sets mask data whose corresponding measurement data is other than "NaN", i.e., mask data for which some measurement value exists, to "1". In the following step S305A, the calculation device 1 replaces the "NaN" written in step S303 with an arbitrary value, and ends the process shown in FIG. 6. This arbitrary value may be any real number within a specified numerical range, and can take a value at least between the minimum and maximum measurement values.

この変形例1では次の作用効果が得られる。
(6)前処理ステップは、センサごとに測定値が存在しない測定時刻におけるマスクデータをゼロに設定し、センサごとに測定値が存在する測定時刻におけるマスクデータを「1」に設定する。そのため、縮小済埋込表17Dを処理するアプリケーションにおけるマスクデータの扱いにあわせて、第1の方法の代わりに第2の方法でマスクデータを作成できる。
The following advantageous effects can be obtained in this first modified example.
(6) In the pre-processing step, the mask data at the measurement time when there is no measurement value for each sensor is set to zero, and the mask data at the measurement time when there is a measurement value for each sensor is set to 1. Therefore, the mask data can be created by the second method instead of the first method in accordance with the handling of the mask data in the application that processes the reduced embedding table 17D.

(変形例2)
第1の実施の形態において説明した第1の手法と、変形例1において説明した第2の手法は前処理表の設計思想が異なるが、両者に対応するように前処理表を作成してもよい。
(Variation 2)
Although the first technique described in the first embodiment and the second technique described in the first modified example have different design concepts for the preprocessing table, a preprocessing table may be created to accommodate both of them.

図14は、第1の方法と第2の方法の両方に対応する前処理表の作成方法を示すフローチャートである。このフローチャートは、図6に対してステップS304をステップS304Aに変更したとも言えるし、図13に対してステップS305AをステップS305に変更したとも言える。図14に示す手法で前処理表を作成することで、第1の手法と第2の手法の両方に対応する前処理表を作成できる。 Figure 14 is a flowchart showing a method for creating a preprocessing table that corresponds to both the first method and the second method. This flowchart can be said to have step S304 in Figure 6 changed to step S304A, and step S305A in Figure 13 changed to step S305. By creating a preprocessing table using the method shown in Figure 14, it is possible to create a preprocessing table that corresponds to both the first method and the second method.

(変形例3)
次元削減部15の処理を次のように変更してもよい。図15は、変形例3における次元削減部15の処理を示すフローチャートである。図15は、図12に比べてステップS370およびS371がステップS370AおよびS371Aに変更されている点が異なる。ステップS370Aでは次元削減部15は、測定データだけでなくマスクデータに対しても埋め込み処理を行う。続くステップS371Aでは次元削減部15は、それぞれの測定データとマスクデータを連結し、コサイン類似度を算出する。たとえばセンサS1の測定データと、これに対応するマスクM1のマスクデータを連結して1つのベクトルとし、センサS2の測定データとマスクM2のマスクデータを連結したベクトルとのコサイン類似度を算出する。ステップS372以降の処理は第1の実施の形態と同様なので説明を省略する。
(Variation 3)
The processing of the dimension reduction unit 15 may be changed as follows. FIG. 15 is a flowchart showing the processing of the dimension reduction unit 15 in the modified example 3. FIG. 15 is different from FIG. 12 in that steps S370 and S371 are changed to steps S370A and S371A. In step S370A, the dimension reduction unit 15 performs embedding processing not only on the measurement data but also on the mask data. In the following step S371A, the dimension reduction unit 15 concatenates each of the measurement data and the mask data, and calculates the cosine similarity. For example, the measurement data of the sensor S1 and the mask data of the corresponding mask M1 are concatenated into one vector, and the cosine similarity between the vector concatenating the measurement data of the sensor S2 and the mask data of the mask M2 is calculated. The processing from step S372 onwards is the same as that in the first embodiment, so the description will be omitted.

この変形例3によれば、次の作用効果が得られる。
(7)次元削減部15が実行する次元削減ステップは、測定データおよびマスクデータのコサイン類似度に基づき統合する複数の測定値を決定する。そのため、測定データ同士だけのコサイン類似度を算出する場合に比べて、より厳密な比較が可能となる。
According to the third modification, the following advantageous effects can be obtained.
(7) The dimension reduction step performed by the dimension reduction unit 15 determines multiple measurement values to be integrated based on the cosine similarity between the measurement data and the mask data, which allows for a more precise comparison than when the cosine similarity is calculated only between the measurement data.

(変形例4)
演算装置1は、それぞれのセンサと直接に通信を行わなくてもよい。たとえば演算装置1は、他の1または複数の装置を介してセンサと通信を行って測定値を受信してもよいし、他の装置が受信した各センサの過去の測定値を読み込んでもよい。演算装置1は、過去の測定値を通信モジュール7を介して受信してもよいし、記憶媒体に格納された過去の測定値を不図示の媒体読み取り装置を介して読み込んでもよい。すなわち取得部11の機能は、記憶媒体からのデータ読み取りでもよい。
(Variation 4)
The arithmetic device 1 does not have to communicate directly with each sensor. For example, the arithmetic device 1 may communicate with the sensor via one or more other devices to receive measurement values, or may read past measurement values of each sensor received by other devices. The arithmetic device 1 may receive past measurement values via the communication module 7, or may read past measurement values stored in a storage medium via a medium reading device (not shown). In other words, the function of the acquisition unit 11 may be to read data from a storage medium.

(変形例5)
第1の実施の形態において演算装置1が実行する処理は、複数のハードウエア装置によって実現されてもよい。すなわち、システム全体として演算装置1が備える機能を備えていればよく、機能を実現する装置の数は任意である。
(Variation 5)
In the first embodiment, the processing executed by the arithmetic device 1 may be realized by a plurality of hardware devices. In other words, the system as a whole may have the functions of the arithmetic device 1, and the number of devices that realize the functions is arbitrary.

―第2の実施の形態―
図16~図21を参照して、演算装置の第2の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、第1の実施の形態の処理に加えて分析を行う点で、第1の実施の形態と異なる。
--Second embodiment--
A second embodiment of the arithmetic device will be described with reference to Figures 16 to 21. In the following description, the same components as in the first embodiment are given the same reference numerals, and differences will be mainly described. Points that are not specifically described are the same as in the first embodiment. This embodiment differs from the first embodiment mainly in that analysis is performed in addition to the processing of the first embodiment.

図16は、第2の実施の形態における演算装置1Aの機能構成図である。演算装置1Aは、第1の実施の形態における演算装置1の構成に加えて、分析部19と対応表18とをさらに有する。分析部19は、縮小済埋込表17Dを読み込んで、目的変数に対応する説明変数を特定する。目的変数は、分析部19が動作するたびにユーザから指定されてもよいし、あらかじめ指定されていてもよい。対応表18は、前処理表17Aと縮小済埋込表17Dにおけるセンサ種別の対応が格納される。なお演算装置1Aのハードウエア構成は第1の実施の形態と同様なので説明を省略する。 Figure 16 is a functional configuration diagram of the arithmetic device 1A in the second embodiment. In addition to the configuration of the arithmetic device 1 in the first embodiment, the arithmetic device 1A further includes an analysis unit 19 and a correspondence table 18. The analysis unit 19 reads the reduced embedding table 17D and identifies explanatory variables corresponding to the objective variables. The objective variables may be specified by the user each time the analysis unit 19 operates, or may be specified in advance. The correspondence table 18 stores the correspondence between the preprocessing table 17A and the sensor types in the reduced embedding table 17D. Note that the hardware configuration of the arithmetic device 1A is the same as that of the first embodiment, so a description thereof will be omitted.

図17は、対応表18の一例を示す図である。対応表18には、次元削減処理による測定データの削減前と削減後の対応、換言すると、前処理表17Aと縮小済埋込表17Dとの対応が示されている。図17に示す例では、前処理表17Aや埋込表17Cにおけるセンサ3、センサ6、およびセンサ9が縮小済埋込表17Dでは左から3番目に統合されたことが示されている。 Figure 17 is a diagram showing an example of correspondence table 18. Correspondence table 18 shows the correspondence between measurement data before and after reduction by dimensionality reduction processing, in other words, the correspondence between preprocessing table 17A and reduced embedding table 17D. The example shown in Figure 17 shows that sensor 3, sensor 6, and sensor 9 in preprocessing table 17A and embedded table 17C have been integrated into the third sensor from the left in reduced embedding table 17D.

図18は、第2の実施の形態における演算装置1Aによる最適化処理の全体を示すフローチャートである。第11の実施の形態との相違点は、画面表示を含むステップS31がS31Aに変更されている点、ステップS41が追加されている点、および次元削減処理であるステップS37がステップS37Aに変更されている点である。これらについて詳しく説明する。 Figure 18 is a flowchart showing the overall optimization process by the computing device 1A in the second embodiment. The differences from the eleventh embodiment are that step S31, which includes screen display, has been changed to S31A, step S41 has been added, and step S37, which is a dimensionality reduction process, has been changed to step S37A. These will be described in detail.

図19は、第2の実施の形態における画面表示例を示す図である。図19では、第1の実施の形態に比べて、コンテキスト期間範囲を設定可能である点が異なる。すなわち本実施の形態では、コンテキスト期間範囲、タイムステップ、次元数、およびデータ利用率の4つのパラメータを有する。そして本実施の形態では、ユーザによるコンテキスト期間範囲の指定は必須であり、ユーザがタイムステップ、次元数、およびデータ利用率の3つのうち2つを指定する点は第1の実施の形態と同様である。 Figure 19 is a diagram showing an example of a screen display in the second embodiment. Figure 19 differs from the first embodiment in that the context period range can be set. That is, this embodiment has four parameters: context period range, time step, number of dimensions, and data utilization rate. And in this embodiment, it is essential for the user to specify the context period range, and like the first embodiment, the user specifies two of the three parameters: time step, number of dimensions, and data utilization rate.

図20は、前処理表をコンテキスト期間範囲に限定する限定処理を示すフローチャートである。ステップS411では演算装置1は、コンテキスト期間の基準となるいずれかの測定データである基準データを特定する。基準データは、ユーザによりその都度指定されてもよいし、あらかじめ指定されていてもよい。続くステップS412では演算装置1は、前処理表17Aまたは独立測定データ16を参照してステップS411において特定した基準データの発生間隔を算出する。 Figure 20 is a flowchart showing the limiting process for limiting the preprocessing table to the context period range. In step S411, the calculation device 1 identifies reference data, which is any measurement data that serves as a reference for the context period. The reference data may be specified by the user each time, or may be specified in advance. In the following step S412, the calculation device 1 refers to the preprocessing table 17A or the independent measurement data 16 to calculate the occurrence interval of the reference data identified in step S411.

続くステップS413では演算装置1は、ユーザに指定された割合を満たす時間を算出する。たとえば、基準データの発生間隔が平均で「2時間」であり、ユーザから指定されたコンテキスト期間に相当する割合が「1σ」であった場合には、「2時間」の68%である「1時間22分」が算出される。続くステップS414では演算装置1は、前処理表から不要な行、すなわち基準データの発生時刻からステップS413において算出した期間以外のデータを削除して図20に示す処理を終了する。 In the next step S413, the calculation device 1 calculates the time that satisfies the ratio specified by the user. For example, if the occurrence interval of the reference data is "2 hours" on average and the ratio corresponding to the context period specified by the user is "1σ", then "1 hour 22 minutes", which is 68% of "2 hours", is calculated. In the next step S414, the calculation device 1 deletes unnecessary rows from the preprocessing table, i.e., data other than the period calculated in step S413 from the occurrence time of the reference data, and ends the process shown in FIG. 20.

たとえば基準データがS1であり、ステップS413において算出された時間が「1時間22分」である場合には次のように削除する行を決定する。すなわち演算装置1は、前処理表17AにおいてセンサS1の測定データがゼロでない、またはセンサS1のマスクデータがゼロでない時刻のデータ、およびその時刻から「1時間22分」だけ前の時刻までのデータを残存対象とし、それ以外のデータを削除する。 For example, if the reference data is S1 and the time calculated in step S413 is "1 hour 22 minutes," the rows to be deleted are determined as follows. That is, the calculation device 1 retains data in the preprocessing table 17A at a time when the measurement data of sensor S1 is not zero or the mask data of sensor S1 is not zero, as well as data from that time up to the time "1 hour 22 minutes" before, and deletes the other data.

図21は、第2の実施の形態における次元削減処理を示す図である。図21は、第1の実施の形態における図12と比較すると、ステップS373とステップS374との間にステップS421が追加されている点が異なる。ステップS421では演算装置1は、ステップS373において特定した複数のセンサデータを対応表18に記載してステップS374に進む。具体的には演算装置1は、ステップS373において特定されたセンサデータを測定したセンサの名称と、統合後のデータの位置、たとえば左から何番目の値かを示す情報とを対応表18に追記する。ステップS374以降の処理は第1の実施の形態と同様なので説明を省略する。 Figure 21 is a diagram showing the dimension reduction process in the second embodiment. Compared to Figure 12 in the first embodiment, Figure 21 differs in that step S421 is added between step S373 and step S374. In step S421, the calculation device 1 enters the multiple sensor data identified in step S373 in the correspondence table 18 and proceeds to step S374. Specifically, the calculation device 1 adds to the correspondence table 18 the name of the sensor that measured the sensor data identified in step S373 and information indicating the position of the integrated data, for example, the number of values from the left. The process from step S374 onwards is the same as in the first embodiment, so a description will be omitted.

図22は、分析部19による分析処理を示すフローチャートである。分析部19はまずステップS431において、縮小済埋込表17Dを読み込む。続くステップS432では分析部19は、測定されていない測定データを特定する。測定されていない測定値とは、図3において「NaN」と記載されていた欄の値であり、図6に示す手法により前処理表17Aが作成された場合には、目的変数であるセンサデータが「0」かつ対応するマスクデータが「0」であるセンサデータの欄の値である。なお目的変数が他のセンサデータとともに統合されている場合には、対応表18を参照して目的変数が含まれるデータ列を特定する。 Figure 22 is a flowchart showing the analysis process by the analysis unit 19. First, in step S431, the analysis unit 19 reads the reduced embedding table 17D. In the following step S432, the analysis unit 19 identifies unmeasured measurement data. The unmeasured measurement values are the values in the columns marked "NaN" in Figure 3, and when the preprocessing table 17A is created by the method shown in Figure 6, they are the values in the column of sensor data where the sensor data, which is the objective variable, is "0" and the corresponding mask data is "0". Note that when the objective variable is integrated with other sensor data, the correspondence table 18 is referenced to identify the data string containing the objective variable.

続くステップS433では分析部19は、ステップS432において特定した測定値を推定する。この推定には、公知である様々な技術を利用でき、たとえばWord2Vecにおける補間が利用できる。続くステップS434では分析部19は、目的変数に対する説明変数を推定する。ただし縮小済埋込表17Dの作成過程でセンサデータが統合されている場合には、本ステップでは説明変数の特定には至らず、たとえば左から4番目のデータ列、という特定に留まる。 In the next step S433, the analysis unit 19 estimates the measurement value identified in step S432. This estimation can use various known techniques, for example, interpolation in Word2Vec. In the next step S434, the analysis unit 19 estimates explanatory variables for the objective variable. However, if sensor data is integrated in the process of creating the reduced embedded table 17D, this step does not identify explanatory variables, and only identifies, for example, the fourth data column from the left.

続くステップS435では分析部19は、対応表18を参照してステップS434において特定したデータ列に含まれるデータの名称を特定する。ただしステップS434において特定した説明変数が他のセンサデータと統合されていない場合には本ステップの処理は省略可能である。続くステップS436では、ステップS436において特定した変数を画面に表示して図22に示す処理を終了する。 In the following step S435, the analysis unit 19 refers to the correspondence table 18 to identify the name of the data included in the data string identified in step S434. However, if the explanatory variables identified in step S434 are not integrated with other sensor data, the processing of this step can be omitted. In the following step S436, the variables identified in step S436 are displayed on the screen, and the processing shown in FIG. 22 is terminated.

また本実施の形態では、図12に示した次元削減処理を以下のように変更する。すなわちステップS373において、特定した複数のセンサデータの名称、および統合したデータの格納位置を対応表18に格納する。 In addition, in this embodiment, the dimensionality reduction process shown in FIG. 12 is modified as follows. That is, in step S373, the names of the identified multiple sensor data and the storage location of the integrated data are stored in the correspondence table 18.

上述した第2の実施の形態によれば、次の作用効果が得られる。
(8)縮小済埋込表17Dを読み込み、所定のセンサの測定値と相関が強い他の測定値を有するセンサを特定する分析ステップを含む。分析ステップは、前処理表17Aと縮小済埋込表17Dとの対応を示す対応表18を参照して所定のセンサおよび他の測定値を有するセンサを特定する。そのため演算装置1Aは、縮小済埋込表17Dを読み込んで分析を行うので、少ないリソースでの分析が可能となる。
According to the above-described second embodiment, the following advantageous effects can be obtained.
(8) An analysis step includes reading reduced embedding table 17D and identifying sensors having other measurement values that are highly correlated with the measurement value of a predetermined sensor. The analysis step identifies the predetermined sensor and sensors having other measurement values by referring to correspondence table 18 that shows the correspondence between preprocessing table 17A and reduced embedding table 17D. Therefore, since calculation device 1A reads reduced embedding table 17D and performs analysis, analysis can be performed with fewer resources.

(第2の実施の形態の変形例1)
第2の実施の形態では、次元削減部15の処理を次のように変更してもよい。図23は、第2の実施の形態の変形例1における次元削減部15の処理を示す図である。ステップS441では次元削減部15は、埋込表17Cにおける測定データ同士の共起確率を算出する。続くステップS442では次元削減部15は、ステップS441において算出した共起確率が所定値以上である測定データ同士、およびこれらに対応するマスクデータ同士を統合対象に決定する。
(Variation 1 of the second embodiment)
In the second embodiment, the processing of the dimension reduction unit 15 may be changed as follows. Fig. 23 is a diagram showing the processing of the dimension reduction unit 15 in the first modified example of the second embodiment. In step S441, the dimension reduction unit 15 calculates the co-occurrence probability between measurement data in the embedding table 17C. In the following step S442, the dimension reduction unit 15 determines, as objects to be integrated, the measurement data whose co-occurrence probability calculated in step S441 is equal to or greater than a predetermined value, and the mask data corresponding thereto.

続くステップS443では次元削減部15は、埋込表17Cにおけるマスクデータ同士の共起確率を算出する。続くステップS444では次元削減部15は、ステップS443において算出した共起確率が所定値以上であるマスクデータ同士、およびこれらに対応する測定データ同士を統合対象に決定する。続くステップS445では次元削減部15は、統合対象となった測定データおよびマスクデータに対して、測定データの平均値とマスクデータの論理和を統合後の値とする。 In the next step S443, the dimension reduction unit 15 calculates the co-occurrence probability between mask data in the embedding table 17C. In the next step S444, the dimension reduction unit 15 determines, as objects to be integrated, the mask data whose co-occurrence probability calculated in step S443 is equal to or greater than a predetermined value, and the measurement data corresponding to these. In the next step S445, the dimension reduction unit 15 determines, for the measurement data and mask data to be integrated, the integrated value to be the average value of the measurement data and the logical sum of the mask data.

(第2の実施の形態の変形例1)
分析部19による補間処理、すなわち図22のステップS433における測定値の推定は、pythonにおけるライブラリ「pandas」の「interpolate」関数または「fillna」関数を利用してもよい。
(Variation 1 of the second embodiment)
The interpolation process by the analysis unit 19, i.e., the estimation of the measurement value in step S433 of FIG. 22, may utilize the "interpolate" function or the "fillna" function of the "pandas" library in Python.

上述した各実施の形態および変形例において、機能ブロックの構成は一例に過ぎない。別々の機能ブロックとして示したいくつかの機能構成を一体に構成してもよいし、1つの機能ブロック図で表した構成を2以上の機能に分割してもよい。また各機能ブロックが有する機能の一部を他の機能ブロックが備える構成としてもよい。 In each of the above-described embodiments and variations, the functional block configurations are merely examples. Some functional configurations shown as separate functional blocks may be configured together, or a configuration shown in a single functional block diagram may be divided into two or more functions. In addition, some of the functions of each functional block may be provided by other functional blocks.

上述した各実施の形態および変形例において、演算装置1のプログラムは不図示のROMに格納されるとしたが、プログラムは記憶装置5に格納されていてもよい。また、演算装置1が不図示の入出力インタフェースを備え、必要なときに入出力インタフェースと演算装置1が利用可能な媒体を介して、他の装置からプログラムが読み込まれてもよい。ここで媒体とは、例えば入出力インタフェースに着脱可能な記憶媒体、または通信媒体、すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号、を指す。また、プログラムにより実現される機能の一部または全部がハードウエア回路やFPGAにより実現されてもよい。 In each of the above-described embodiments and modifications, the program of the arithmetic device 1 is stored in a ROM (not shown), but the program may be stored in the storage device 5. Furthermore, the arithmetic device 1 may be provided with an input/output interface (not shown), and the program may be read from another device when necessary via the input/output interface and a medium available to the arithmetic device 1. Here, the medium refers to, for example, a storage medium that is detachable from the input/output interface, or a communication medium, i.e., a network such as a wired, wireless, or optical network, or a carrier wave or digital signal that propagates through the network. Furthermore, some or all of the functions realized by the program may be realized by a hardware circuit or an FPGA.

上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。 The above-mentioned embodiments and modifications may be combined with each other. Although various embodiments and modifications have been described above, the present invention is not limited to these. Other aspects that are conceivable within the scope of the technical concept of the present invention are also included within the scope of the present invention.

1、1A…演算装置
11…取得部
12…前処理部
13…対話部
14…パラメータ算出部
15…次元削減部
16…独立測定データ
17A…前処理表
17B…時刻正規化表
17C…埋込表
17D…縮小済埋込表
18…対応表
19…分析部
Reference Signs List 1, 1A... Calculation device 11... Acquisition unit 12... Preprocessing unit 13... Dialogue unit 14... Parameter calculation unit 15... Dimension reduction unit 16... Independent measurement data 17A... Preprocessing table 17B... Time normalization table 17C... Embedding table 17D... Reduced embedding table 18... Correspondence table 19... Analysis unit

Claims (9)

演算装置が実行する演算方法であって、
不統一な測定時刻および測定値の組み合わせを複数のセンサについて含む独立測定データを取得する取得ステップと、
前記測定時刻ごとに、前記測定値の有無を示す数値であるマスクデータおよび前記測定値に基づく数値である測定データを作成して、全ての前記測定時刻ごとの前記複数のセンサの測定データおよび前記マスクデータを含む前処理表を作成する前処理ステップと、
前記前処理表における前記測定データに対して埋め込み処理を行い、少なくとも前記測定データの類似度に基づき、複数の前記測定データを統合し、かつ複数の前記マスクデータを統合した縮小済埋込表を作成する次元削減ステップとを含む演算方法。
A computing method executed by a computing device, comprising:
acquiring independent measurement data including non-uniform measurement time and measurement value combinations for a plurality of sensors;
a pre-processing step of creating, for each of the measurement times, mask data which is a numerical value indicating the presence or absence of the measurement values and measurement data which is a numerical value based on the measurement values, and creating a pre-processing table including the measurement data and the mask data of the plurality of sensors for all of the measurement times;
and a dimensionality reduction step of performing an embedding process on the measurement data in the preprocessing table, integrating a plurality of the measurement data based on at least the similarity of the measurement data, and creating a reduced embedding table that integrates a plurality of the mask data.
請求項1に記載の演算方法において、
前記次元削減ステップは、前記測定データのコサイン類似度に基づき統合する前記複数の測定データを決定する、演算方法。
2. The method according to claim 1,
The dimension reduction step determines the plurality of measurement data to be integrated based on a cosine similarity of the measurement data.
請求項1に記載の演算方法において、
前記次元削減ステップは、前記測定データおよび前記マスクデータのコサイン類似度に基づき統合する前記複数の測定データを決定する、演算方法。
2. The method according to claim 1,
A computation method, wherein the dimensionality reduction step determines the plurality of measurement data to be integrated based on a cosine similarity between the measurement data and the mask data.
請求項1に記載の演算方法において、
時間幅であるタイムステップにしたがって前記前処理表における異なる測定時刻に組み合わされる複数の前記測定値および複数の前記マスクデータを統合する時間統合ステップをさらに含む、演算方法。
2. The method according to claim 1,
The calculation method further includes a time integration step of integrating the plurality of measurement values and the plurality of mask data combined at different measurement times in the pre-processing table according to a time step that is a time width.
請求項1に記載の演算方法において、
統合する時間幅であるタイムステップ、測定データの利用率であるデータ利用率、およびデータ数である次元数の3つのうち2つの指定を受け付ける入力ステップと、
前記3つのうち指定されていない1つを算出するパラメータ算出ステップと、
前記タイムステップにしたがって前記前処理表における異なる測定時刻に組み合わされる複数の前記測定値および複数の前記マスクデータを統合する時間統合ステップと、をさらに含む演算方法。
2. The method according to claim 1,
An input step that accepts the specification of two of the following three items: a time step, which is the time width to be integrated; a data utilization rate, which is the utilization rate of the measurement data; and a number of dimensions, which is the number of data.
a parameter calculation step of calculating one of the three parameters that is not specified;
The calculation method further includes a time integration step of integrating the plurality of measurement values and the plurality of mask data combined at different measurement times in the pre-processing table according to the time step.
請求項1に記載の演算方法において、
前記前処理ステップは、センサごとに前記測定値が存在しない前記測定時刻における前記マスクデータをゼロに設定し、存在しない前記測定値に対応する前記測定データをゼロに設定する、演算方法。
2. The method according to claim 1,
The pre-processing step sets the mask data at the measurement time when no measurement value exists for each sensor to zero, and sets the measurement data corresponding to the non-existent measurement value to zero.
請求項1に記載の演算方法において、
前記前処理ステップは、センサごとに前記測定値が存在しない前記測定時刻における前記マスクデータをゼロに設定し、センサごとに前記測定値が存在する前記測定時刻における前記マスクデータを「1」に設定する、演算方法。
2. The method according to claim 1,
The pre-processing step sets the mask data for each sensor at the measurement time when no measurement value exists to zero, and sets the mask data for each sensor at the measurement time when a measurement value exists to "1."
請求項1に記載の演算方法において、
前記縮小済埋込表を読み込み、所定のセンサの測定値と相関が強い他の測定値を有するセンサを特定する分析ステップをさらに含み、
前記分析ステップは、前記前処理表と前記縮小済埋込表との対応を示す対応表を参照して前記所定のセンサおよび前記他の測定値を有するセンサを特定する、演算方法。
2. The method according to claim 1,
further comprising an analyzing step of reading the reduced embedding table and identifying sensors having other measurements that are highly correlated with the measurements of a given sensor;
A calculation method in which the analyzing step identifies the predetermined sensor and the sensors having the other measurement values by referring to a correspondence table indicating the correspondence between the preprocessing table and the reduced embedded table.
不統一な測定時刻および測定値の組み合わせを複数のセンサについて含む独立測定データを取得する取得部と、
前記測定時刻ごとに、前記測定値の有無を示す数値であるマスクデータおよび前記測定値に基づく数値である測定データを作成して、全ての前記測定時刻ごとの前記複数のセンサの測定データおよび前記マスクデータを含む前処理表を作成する前処理部と、
前記前処理表における前記測定データに対して埋め込み処理を行い、少なくとも前記測定データの類似度に基づき、複数の前記測定データを統合し、かつ複数の前記マスクデータを統合した縮小済埋込表を作成する次元削減部とを備える演算装置。
An acquisition unit that acquires independent measurement data including combinations of non-uniform measurement times and measurement values for a plurality of sensors;
a pre-processing unit that creates, for each of the measurement times, mask data that is a numerical value indicating the presence or absence of the measurement values and measurement data that is a numerical value based on the measurement values, and creates a pre-processing table including the measurement data and the mask data of the plurality of sensors for all of the measurement times;
a dimensionality reduction unit that performs an embedding process on the measurement data in the preprocessing table, integrates a plurality of the measurement data based on at least the similarity of the measurement data, and creates a reduced embedding table that integrates a plurality of the mask data.
JP2021070139A 2021-04-19 2021-04-19 Arithmetic method, arithmetic device Active JP7693375B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021070139A JP7693375B2 (en) 2021-04-19 2021-04-19 Arithmetic method, arithmetic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021070139A JP7693375B2 (en) 2021-04-19 2021-04-19 Arithmetic method, arithmetic device

Publications (2)

Publication Number Publication Date
JP2022164994A JP2022164994A (en) 2022-10-31
JP7693375B2 true JP7693375B2 (en) 2025-06-17

Family

ID=83845859

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021070139A Active JP7693375B2 (en) 2021-04-19 2021-04-19 Arithmetic method, arithmetic device

Country Status (1)

Country Link
JP (1) JP7693375B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187293A (en) 2008-02-06 2009-08-20 Nec Corp Time-series data analysis system, method and program
JP2016039610A (en) 2014-08-11 2016-03-22 アルドネット株式会社 Data transmitter and remote monitoring system
JP2019179005A (en) 2018-03-30 2019-10-17 横河電機株式会社 Data acquisition system, input device, data acquisition device, and data synthesis device
US20200049677A1 (en) 2013-12-23 2020-02-13 Aclima Inc. Method to combine partially aggregated sensor data in a distributed sensor system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187293A (en) 2008-02-06 2009-08-20 Nec Corp Time-series data analysis system, method and program
US20200049677A1 (en) 2013-12-23 2020-02-13 Aclima Inc. Method to combine partially aggregated sensor data in a distributed sensor system
JP2016039610A (en) 2014-08-11 2016-03-22 アルドネット株式会社 Data transmitter and remote monitoring system
JP2019179005A (en) 2018-03-30 2019-10-17 横河電機株式会社 Data acquisition system, input device, data acquisition device, and data synthesis device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
竹田義聡、中村隆顕、和田貴成、郡 光則,環境情報データベース向けリアルタイムセンサデータロード方式,第73回(平成23年)全国大会講演論文集(1),日本,一般社団法人情報処理学会,2011年03月02日,pp.1-555~1-556(2C-3)

Also Published As

Publication number Publication date
JP2022164994A (en) 2022-10-31

Similar Documents

Publication Publication Date Title
EP0981098B1 (en) Method and apparatus for generating and displaying views of hierarchically clustered data
US20230137890A1 (en) Systems and Methods for 3D Data Visualization and Network Extraction
KR101959649B1 (en) Specifying and applying rules to data
JP4890806B2 (en) Prediction program and prediction device
US20200211242A1 (en) Concentric data visualization structures
KR20200086548A (en) Method for compressing and restoring time series data
JP4676498B2 (en) Method and system for extracting association rules
JP7693375B2 (en) Arithmetic method, arithmetic device
Bidarra et al. Efficiency of boundary evaluation for a cellular model
JP7310827B2 (en) LEARNING DEVICE, LEARNING METHOD, AND PROGRAM
JP6625183B1 (en) Remodeling support device and remodeling support method
US10241899B2 (en) Test input information search device and method
JPWO2008155852A1 (en) Method and apparatus for aggregating tabular data in a shared memory parallel processing system
CN113112148B (en) Evaluation method for evaluation result of recommendation system model and electronic equipment
CN117522465A (en) Method, device, equipment and storage medium for determining sales transaction reason
JP2007114896A (en) Time series data storage and extraction method and program
JP7468655B2 (en) Inconsistency determination device, method, and program
JP7097500B1 (en) Output program, output device and output method
KR102385867B1 (en) Data compression method and apparatus for data visualization
JP7649657B2 (en) Building frame estimation device and building frame estimation method
JP5535270B2 (en) Document component analysis apparatus and program
CN121116926A (en) VTK-based post-processing visualization method
JPH1040413A (en) Method and device for calculating volume data and visualizing volume data
CN120197682A (en) A data correlation mining method for big data analysis platform
Jaber et al. Towards a GPU-native adaptive mesh refinement scheme for the lattice Boltzmann method in complex geometries

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240326

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250424

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250520

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250605

R150 Certificate of patent or registration of utility model

Ref document number: 7693375

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150