JP7457994B1 - Program, method, information processing device, and system - Google Patents
Program, method, information processing device, and system Download PDFInfo
- Publication number
- JP7457994B1 JP7457994B1 JP2023191370A JP2023191370A JP7457994B1 JP 7457994 B1 JP7457994 B1 JP 7457994B1 JP 2023191370 A JP2023191370 A JP 2023191370A JP 2023191370 A JP2023191370 A JP 2023191370A JP 7457994 B1 JP7457994 B1 JP 7457994B1
- Authority
- JP
- Japan
- Prior art keywords
- data
- candidate
- learning
- period
- control unit
- 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
Links
- 238000000034 method Methods 0.000 title claims description 54
- 230000010365 information processing Effects 0.000 title claims description 18
- 238000003860 storage Methods 0.000 claims abstract description 40
- 230000007704 transition Effects 0.000 claims abstract description 3
- 238000000605 extraction Methods 0.000 claims description 22
- 230000000737 periodic effect Effects 0.000 claims description 9
- 230000015654 memory Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 abstract description 26
- 230000008569 process Effects 0.000 description 42
- 238000012545 processing Methods 0.000 description 25
- 239000000284 extract Substances 0.000 description 23
- 238000012549 training Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 12
- 238000013136 deep learning model Methods 0.000 description 9
- 238000010801 machine learning Methods 0.000 description 8
- 238000005457 optimization Methods 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000007774 longterm Effects 0.000 description 4
- 239000000047 product Substances 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000000714 time series forecasting Methods 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000001364 causal effect Effects 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000003442 weekly effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013434 data augmentation Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 239000004570 mortar (masonry) Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007790 scraping Methods 0.000 description 1
- 230000001932 seasonal effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】学習データの期間範囲を延長できていないという課題がある。
【解決手段】プロセッサと、記憶部とを備えるコンピュータに実行させるためのプログラムであって、プロセッサが、時系列データである第1データを取得する第1データ取得ステップと、第1データ取得ステップにおいて取得した第1データに基づき、複数の時系列データから時系列推移が第1データと類似する第2データを取得する第2データ取得ステップと、第1データの時間方向において前方および後方の少なくともいずれかに第2データを結合することにより結合データを作成する結合ステップと、結合ステップにおいて作成した結合データに基づき学習モデルを学習させる学習ステップと、を実行するプログラム。
【選択図】 図11
[Problem] There is a problem that the period range of learning data cannot be extended.
[Solution] A program for causing a computer including a processor and a storage unit to execute the program, wherein the processor acquires first data that is time series data; a second data acquisition step of acquiring second data whose time-series transition is similar to the first data from a plurality of time-series data based on the acquired first data; and at least one of forward and backward in the time direction of the first data. A program that executes a combining step of creating combined data by combining second data, and a learning step of learning a learning model based on the combined data created in the combining step.
[Selection diagram] Figure 11
Description
本開示は、プログラム、方法、情報処理装置、システムに関する。 The present disclosure relates to a program, a method, an information processing device, and a system.
時系列データに基づき時系列予測モデルを学習させる技術が知られている。
特許文献1には、複数の転移元データの中から転移先モデルで使用するデータの選択に要する工数を削減でき、転移元モデルを転移できるか否かを適切に判定することが開示されている。
特許文献2には、作業者ごとの収集データの傾向に応じた作業者ごとの最適な学習モデルを生成することが開示されている。
Techniques for learning time-series prediction models based on time-series data are known.
Patent Document 1 discloses that it is possible to reduce the man-hours required for selecting data to be used in a transfer destination model from among a plurality of transfer source data, and to appropriately determine whether or not the transfer source model can be transferred. .
Patent Document 2 discloses generating an optimal learning model for each worker according to the tendency of collected data for each worker.
学習データの期間範囲を延長できていないという課題がある。
そこで、本開示は、上記課題を解決すべくなされたものであって、その目的は、学習データの期間範囲を延長する技術を提供することである。
There is a problem in that the period range of learning data cannot be extended.
Therefore, the present disclosure has been made to solve the above problems, and its purpose is to provide a technique for extending the period range of learning data.
プロセッサと、記憶部とを備えるコンピュータに実行させるためのプログラムであって、プロセッサが、時系列データである第1データを取得する第1データ取得ステップと、第1データ取得ステップにおいて取得した第1データに基づき、複数の時系列データから時系列推移が第1データと類似する第2データを取得する第2データ取得ステップと、第1データの時間方向において前方および後方の少なくともいずれかに第2データを結合することにより結合データを作成する結合ステップと、結合ステップにおいて作成した結合データに基づき学習モデルを学習させる学習ステップと、を実行するプログラム。 A program to be executed by a computer having a processor and a storage unit, the program executing a first data acquisition step in which the processor acquires first data, which is time-series data; a second data acquisition step in which, based on the first data acquired in the first data acquisition step, second data having a time-series progression similar to that of the first data from a plurality of time-series data; a combining step in which the second data is combined with at least one of the first data forward and backward in the time direction to create combined data; and a learning step in which a learning model is trained based on the combined data created in the combining step.
本開示によれば、学習データの期間範囲を延長することができる。 According to the present disclosure, the period range of learning data can be extended.
以下、本開示の実施形態について図面を参照して説明する。実施形態を説明する全図において、共通の構成要素には同一の符号を付し、繰り返しの説明を省略する。なお、以下の実施形態は、特許請求の範囲に記載された本開示の内容を不当に限定するものではない。また、実施形態に示される構成要素のすべてが、本開示の必須の構成要素であるとは限らない。また、各図は模式図であり、必ずしも厳密に図示されたものではない。 Embodiments of the present disclosure will be described below with reference to the drawings. In all the figures explaining the embodiments, common components are given the same reference numerals and repeated explanations will be omitted. Note that the following embodiments do not unduly limit the content of the present disclosure described in the claims. Furthermore, not all components shown in the embodiments are essential components of the present disclosure. Furthermore, each figure is a schematic diagram and is not necessarily strictly illustrated.
<システム1の構成>
本開示におけるシステム1は、時系列データに基づく時系列予測モデルを学習する情報処理サービスを提供可能な情報処理システムである。
システム1は、ネットワークNを介して接続された、サーバ10、ユーザ端末20の情報処理装置を備える。
図1は、システム1の機能構成を示すブロック図である。
図2は、サーバ10の機能構成を示すブロック図である。
図3は、ユーザ端末20の機能構成を示すブロック図である。
<System 1 configuration>
A system 1 in the present disclosure is an information processing system that can provide an information processing service that learns a time-series prediction model based on time-series data.
The system 1 includes information processing devices such as a server 10 and a user terminal 20, which are connected via a network N.
FIG. 1 is a block diagram showing the functional configuration of the system 1. As shown in FIG.
FIG. 2 is a block diagram showing the functional configuration of the server 10.
FIG. 3 is a block diagram showing the functional configuration of the user terminal 20.
各情報処理装置は演算装置と記憶装置とを備えたコンピュータにより構成されている。コンピュータの基本ハードウェア構成および、当該ハードウェア構成により実現されるコンピュータの基本機能構成は後述する。サーバ10、ユーザ端末20のそれぞれについて、後述するコンピュータの基本ハードウェア構成およびコンピュータの基本機能構成と重複する説明は省略する。 Each information processing device is composed of a computer including an arithmetic unit and a storage device. The basic hardware configuration of the computer and the basic functional configuration of the computer realized by the hardware configuration will be described later. Regarding each of the server 10 and the user terminal 20, explanations that overlap with the basic hardware configuration of the computer and the basic functional configuration of the computer, which will be described later, will be omitted.
<サーバ10の構成>
サーバ10は、時系列データに基づく時系列予測モデルを学習する情報処理サービスを提供する情報処理装置である。
サーバ10は、記憶部101、制御部104を備える。
<Configuration of server 10>
The server 10 is an information processing device that provides an information processing service for learning a time series prediction model based on time series data.
The server 10 includes a storage section 101 and a control section 104.
<サーバ10の記憶部101の構成>
サーバ10の記憶部101は、アプリケーションプログラム1011、ユーザテーブル1012、主テーブル1013、補助テーブル1014、候補テーブル1015、モデルテーブル1021を備える。
<Configuration of storage unit 101 of server 10>
The storage unit 101 of the server 10 includes an application program 1011, a user table 1012, a main table 1013, an auxiliary table 1014, a candidate table 1015, and a model table 1021.
アプリケーションプログラム1011は、サーバ10の制御部104を各機能ユニットとして機能させるためのプログラムである。
アプリケーションプログラム1011は、ウェブブラウザアプリケーションなどのアプリケーションを含む。
The application program 1011 is a program for causing the control unit 104 of the server 10 to function as each functional unit.
Application programs 1011 include applications such as web browser applications.
ユーザテーブル1012は、サービスを利用する会員ユーザ(以下、ユーザ)の情報を記憶し管理するテーブルである。ユーザは、サービスの利用登録を行うことで、当該ユーザの情報がユーザテーブル1012の新しいレコードに記憶される。これにより、ユーザは本開示にかかるサービスを利用できるようになる。
ユーザテーブル1012は、ユーザIDを主キーとして、ユーザID、ユーザ名のカラムを有するテーブルである。
図4は、ユーザテーブル1012のデータ構造を示す図である。
The user table 1012 is a table that stores and manages information about member users (hereinafter referred to as users) who use the service. When a user registers to use a service, the user's information is stored in a new record in the user table 1012. This allows the user to use the service according to the present disclosure.
The user table 1012 is a table that uses the user ID as a primary key and has columns of user ID and user name.
FIG. 4 is a diagram showing the data structure of the user table 1012.
ユーザIDは、ユーザを識別するためのユーザ識別情報を記憶する項目である。ユーザ識別情報は、ユーザごとにユニークな値が設定されている項目である。
ユーザ名は、ユーザの氏名を記憶する項目である。ユーザ名は、氏名ではなく、ニックネームなど任意の文字列を設定しても良い。
The user ID is an item that stores user identification information for identifying a user. The user identification information is an item in which a unique value is set for each user.
The user name is an item that stores the user's name. The user name may be any character string such as a nickname instead of a full name.
主テーブル1013は、主データに関する情報(主データ情報)を記憶し管理するためのテーブルである。
主テーブル1013は、主データIDを主キーとして、主データID、ユーザID、主データ、属性データのカラムを有するテーブルである。
図5は、主テーブル1013のデータ構造を示す図である。
The main table 1013 is a table for storing and managing information regarding main data (main data information).
The main table 1013 is a table having main data ID as a main key and columns of main data ID, user ID, main data, and attribute data.
FIG. 5 is a diagram showing the data structure of the main table 1013.
主データIDは、主データを識別するための主データ識別情報を記憶する項目である。主データIDは、主データごとにユニークな値が記憶される。
ユーザIDは、ユーザを識別するためのユーザ識別情報を記憶する項目である。
主データは、学習モデル(時系列予測モデル)を学習する際に用いる時系列データを記憶する項目である。時系列データは、一連の時間点または時間間隔にわたって順序付けられたデータポイントを示す。これは、特定の時間間隔(例: 毎日、毎週、毎月など)で収集されたデータから構成される。時系列データは、各データポイントが時間的に連続している点と、その順序がデータの意味を形成する。
例えば、主データは、特定の期間における株の終値を示す株価の時系列データを含む。このデータは日次、週次、月次などの頻度で収集される。
また、主データは、自動車やその他の商品の価格相場推移の時系列データを含む。このデータは、特定のモデルやブランドの車の平均販売価格の変動を時間の経過とともに追跡するデータが含まれる。
なお、本開示における時系列データは、一つの系列(指標)の時系列データである必要はなく複数の系列(指標)を含むデータセットを含む。例えば、株取引の時系列データは、株価の時系列データと、株価の出来高(株の売買の数量)との複数の系列(指標)を含むデータセットである。このようなデータセットも本開示における時系列データに含まれる。
属性データは、主データの内容に関するメタデータを記憶する項目である。属性データは、主データを理解し、解釈し、利用する際に用いられる情報である。具体的に、属性データは、以下の情報を含む。
・データの種類:例えば、気温、湿度、株価、売上高など、時系列データが何を示すのかの基本的な情報。
・データの源泉:どの組織や機関がデータを提供しているのか、またはどのような手段や方法でデータが収集されたのかを示す情報。
・収集周期:データが毎日収集されているのか、毎時なのか、それとも別の周期なのかを示す情報。
・地理的情報:データが特定の場所や地域に関連している場合、その場所や地域の情報。
・単位:データの数値が示す単位。例えば、気温ならば摂氏や華氏、株価ならば通貨の単位などの情報。
The main data ID is an item for storing main data identification information for identifying main data, and a unique value is stored for each main data.
The user ID is an item for storing user identification information for identifying a user.
The primary data is an item that stores the time series data used to train the learning model (time series forecasting model). Time series data represents data points ordered over a series of time points or time intervals. It consists of data collected at specific time intervals (e.g. daily, weekly, monthly, etc.). Time series data is characterized by the fact that each data point is consecutive in time, and the order of the data forms the meaning of the data.
For example, the primary data may include stock price time series data indicating the closing prices of a stock over a particular period of time, the data being collected on a daily, weekly, monthly, etc. basis.
The primary data also includes time series data on the price movements of automobiles and other goods, including data tracking changes in the average selling price of a particular model or brand of automobile over time.
In addition, the time series data in the present disclosure does not necessarily have to be time series data of one series (index), but includes a data set including multiple series (indexes). For example, time series data of stock trading is a data set including multiple series (indexes) such as time series data of stock prices and stock price volume (amount of stocks bought and sold). Such a data set is also included in the time series data in the present disclosure.
Attribute data is an item that stores metadata about the contents of the main data. Attribute data is information that is used to understand, interpret, and use the main data. Specifically, attribute data includes the following information:
- Type of data: Basic information about what the time series data indicates, such as temperature, humidity, stock prices, sales, etc.
- Data origin: information indicating which organization or institution is providing the data or the means or method by which the data was collected.
Collection frequency: Information indicating whether data is collected daily, hourly, or at another frequency.
Geographic information: if the data relates to a specific place or region, information about that place or region.
・Unit: The unit the data value is expressed in. For example, Celsius or Fahrenheit for temperature, or currency units for stock prices.
補助テーブル1014は、補助データに関する情報(補助データ情報)を記憶し管理するためのテーブルである。
補助テーブル1014は、補助データIDを主キーとして、補助データID、ユーザID、補助データ、属性データのカラムを有するテーブルである。
図6は、補助テーブル1014のデータ構造を示す図である。
The auxiliary table 1014 is a table for storing and managing information regarding auxiliary data (auxiliary data information).
The auxiliary table 1014 is a table having auxiliary data ID as a primary key and columns of auxiliary data ID, user ID, auxiliary data, and attribute data.
FIG. 6 is a diagram showing the data structure of the auxiliary table 1014.
補助データIDは、補助データを識別するための補助データ識別情報を記憶する項目である。補助データIDは、補助データごとにユニークな値が記憶される。
ユーザIDは、ユーザを識別するためのユーザ識別情報を記憶する項目である。
補助データは、主データを補完または拡張するために用いられる時系列データを記憶する項目である。なお、時系列データについては、主テーブル1013の主データの項目と同様である。
補助データは、主データを用いた機械学習モデル等の学習において、機械学習モデルの品質を向上させたり、解析精度の向上、また主データの被覆範囲(カバレッジ)を拡張するために用いる任意のデータを含む。
補助データは、主データとは異なるデータソースから取得したデータを含む。
補助データは、政府機関、政府関連組織等が収集・公開している人口統計、経済指標、健康情報等の政府統計に関する情報を含む。
補助データは、外部情報サービス、プラットフォームサービス等が提供するAPI(Application Programing Interface)等を介して取得しても良いし、任意のウェブページからスクレイピングなどの手法を用いて自動的に収集しても良い。
属性データは、補助データの内容に関するメタデータを記憶する項目である。メタデータの説明は、主テーブル1013の属性データの項目と同様であるため説明を省略する。
The auxiliary data ID is an item for storing auxiliary data identification information for identifying auxiliary data, and a unique value is stored for each auxiliary data.
The user ID is an item for storing user identification information for identifying a user.
The auxiliary data is an item for storing time-series data used to supplement or extend the main data. Note that the time-series data is similar to the main data item of the main table 1013.
Auxiliary data includes any data used in learning a machine learning model using main data to improve the quality of the machine learning model, improve the accuracy of analysis, and extend the coverage of the main data.
Ancillary data includes data obtained from a data source different from the primary data.
Ancillary data includes information on government statistics, such as demographics, economic indicators, and health information, that are collected and published by government agencies, government-related organizations, etc.
The auxiliary data may be acquired via an API (Application Programming Interface) provided by an external information service, a platform service, or the like, or may be automatically collected from an arbitrary web page using a technique such as scraping.
The attribute data is an item for storing metadata related to the contents of the auxiliary data. The description of the metadata is the same as that of the attribute data item in the main table 1013, and therefore will not be repeated.
候補テーブル1015は、候補に関する情報(候補情報)を記憶し管理するためのテーブルである。
候補テーブル1015は、候補データIDを主キーとして、候補データID、補助データID、候補データ、抽出条件のカラムを有するテーブルである。
図7は、候補テーブル1015のデータ構造を示す図である。
The candidate table 1015 is a table for storing and managing information relating to candidates (candidate information).
The candidate table 1015 is a table having a candidate data ID as a primary key, and columns of candidate data ID, auxiliary data ID, candidate data, and extraction condition.
FIG. 7 is a diagram showing the data structure of the candidate table 1015. As shown in FIG.
候補データIDは、候補データを識別するための候補データ識別情報を記憶する項目である。候補データIDは、候補データごとにユニークな値が記憶される。
補助データIDは、補助データを識別するための補助データ識別情報を記憶する項目である。
候補データは、補助データの一部であり、主データを補完または拡張するために用いられる時系列データを記憶する項目である。なお、時系列データについては、主テーブル1013の主データの項目と同様である。
抽出条件は、補助データ識別情報により特定される補助データから、候補データを抽出する際の抽出条件を記憶する項目である。例えば、抽出条件は、補助データから候補データを抽出する際の開始位置(開始行)と終了位置(終了行)に関する情報を記憶する。
The candidate data ID is an item that stores candidate data identification information for identifying candidate data. For the candidate data ID, a unique value is stored for each candidate data.
The auxiliary data ID is an item that stores auxiliary data identification information for identifying auxiliary data.
Candidate data is part of auxiliary data, and is an item that stores time-series data used to complement or expand main data. Note that the time series data is the same as the main data items of the main table 1013.
The extraction condition is an item that stores extraction conditions for extracting candidate data from the auxiliary data specified by the auxiliary data identification information. For example, the extraction condition stores information regarding the start position (start line) and end position (end line) when extracting candidate data from auxiliary data.
モデルテーブル1021は、学習モデルに関する情報(学習モデル情報)を記憶し管理するためのテーブルである。
モデルテーブル1021は、モデルIDを主キーとして、モデルID、学習モデル、初期パラメータ、学習後パラメータ、主データID、候補データID、拡張条件のカラムを有するテーブルである。
図8は、モデルテーブル1021のデータ構造を示す図である。
The model table 1021 is a table for storing and managing information regarding learning models (learning model information).
The model table 1021 is a table having columns of model ID, learning model, initial parameter, post-learning parameter, main data ID, candidate data ID, and expansion condition, with model ID as the primary key.
FIG. 8 is a diagram showing the data structure of the model table 1021.
モデルIDは、学習モデルを識別するためのモデル識別情報を記憶する項目である。
学習モデルは、時系列予測モデルに関する学習モデルを記憶する項目である。時系列予測モデルは、RNN(Recurrent Neural Network)、LSTM(Long Short-Term Memory)、GRU(Gated Recurrent Units)などの任意の時系列深層学習モデルを含む。
時系列予測モデルは、時系列データを入力データとして、未来の指数を出力(推論)する推論モデルである。例えば、時系列予測モデルは、過去の販売データや気候データなどのデータを入力データとして、未来の売上高や気温の指数を出力(推論)する推論モデルである。
入力データは、季節性や特定のイベント(セールなど)に関する情報を含んでも良い。
出力データは、確信度や分布の範囲に関する情報を含んでも良い。
時系列予測モデルの学習処理は、後述する。
時系列予測モデルは、例えば機械学習、人工知能、深層学習モデルなどの一種である。
時系列予測モデルは、単一の学習モデルである必要はなく、商品カテゴリーや地域情報ごとに複数の独立した学習モデルを切り替えて実現しても良い。
時系列予測モデルの一例として、深層学習におけるディープニューラルネットワークによる深層学習モデルを説明する。時系列予測モデルは、深層学習モデルである必要は必ずしもなく、任意の機械学習、人工知能モデルでも良い。
商品の売上履歴や気温の変動情報を入力データとして、時系列予測モデルを適用することにより、未来の市場動向や気温のトレンドが推計される。つまり、本開示にかかるサービスのユーザは、実際に、実店舗を訪れるや気象情報を調べることなしに、未来の売上や気温を推計することができる。
初期パラメータは、学習モデルを学習する際の学習開始時のパラメータを記憶する項目である。
例えば、深層学習モデルにおいては学習の品質や速度は、初期パラメータの選び方に大きく依存することが一般的である。不適切な初期パラメータを選択してしまうと、学習が遅くなったり、局所的な最適解に収束してしまう場合がある。
なお、初期パラメータは、複数の初期パラメータを、学習モデルの品質を示す指標(各種誤差、精度、適合率など)や、学習プロセスの品質を示す指標(収束速度、学習曲線など)と関連付けて記憶しても良い。また、初期パラメータは、複数の初期パラメータを、初期パラメータの優劣を示す指標(優先度)等の情報と関連付けて記憶しても良い。
学習後パラメータは、学習処理を通じて最適化されたパラメータである。初期パラメータは損失関数を最小化するようにパラメータが調整される。
主データIDは、学習モデルを学習する際の学習データとして用いる主データの主データ識別情報を記憶する項目である。
候補データIDは、学習モデルを学習する際の学習データとして用いる候補データの候補データ識別情報を記憶する項目である。本開示においては、主データは候補データによりデータ拡張(Data Augumentation)が行われ、学習モデルの学習に用いられる。
拡張条件は、主データを候補データによりデータ拡張する際の拡張条件を記憶する項目である。具体的に、拡張条件に記憶された情報に基づき、主データに候補データを結合する。
The model ID is an item that stores model identification information for identifying a learning model.
The learning model is an item that stores a learning model related to a time series prediction model. The time series prediction model includes any time series deep learning model such as a recurrent neural network (RNN), a long short-term memory (LSTM), or a gated recurrent unit (GRU).
A time series forecasting model is an inference model that takes time series data as input data and outputs (infers) future indices. For example, a time series forecasting model is an inference model that takes past sales data, weather data, and other data as input data and outputs (infers) future sales figures and temperature indices.
The input data may include information regarding seasonality and specific events (such as sales).
The output data may include information regarding the confidence levels and ranges of the distribution.
The learning process of the time series prediction model will be described later.
A time series forecasting model is, for example, a type of machine learning, artificial intelligence, or deep learning model.
The time series prediction model does not need to be a single learning model, but may be realized by switching between multiple independent learning models for each product category or regional information.
As an example of a time series prediction model, a deep learning model using a deep neural network in deep learning will be described. The time series prediction model does not necessarily have to be a deep learning model, and may be any machine learning or artificial intelligence model.
Future market trends and temperature trends are estimated by applying a time series prediction model to product sales history and temperature fluctuation information as input data. In other words, users of the service according to the present disclosure can estimate future sales and temperatures without actually visiting a brick-and-mortar store or looking up weather information.
The initial parameters are items that store parameters at the start of learning when learning a learning model.
For example, in deep learning models, the quality and speed of learning generally depend heavily on the selection of initial parameters. If inappropriate initial parameters are selected, learning may become slow or converge to a local optimum.
The initial parameters may be stored in association with indices indicating the quality of the learning model (various errors, accuracy, conformance rate, etc.) or indices indicating the quality of the learning process (convergence speed, learning curve, etc.). The initial parameters may be stored in association with information such as indices indicating the superiority or inferiority of the initial parameters (priority).
The post-training parameters are the parameters that have been optimized through the training process. The initial parameters are adjusted to minimize the loss function.
The main data ID is an item for storing main data identification information of the main data used as learning data when learning a learning model.
The candidate data ID is an item for storing candidate data identification information of the candidate data used as learning data when learning the learning model. In the present disclosure, the main data is subjected to data augmentation by the candidate data and used for learning the learning model.
The extension condition is an item for storing an extension condition when the main data is extended by the candidate data. Specifically, the candidate data is combined with the main data based on the information stored in the extension condition.
<サーバ10の制御部104の構成>
サーバ10の制御部104は、ユーザ登録制御部1041、学習部1042を備える。制御部104は、記憶部101に記憶されたアプリケーションプログラム1011を実行することにより、各機能ユニットが実現される。
<Configuration of control unit 104 of server 10>
The control unit 104 of the server 10 includes a user registration control unit 1041 and a learning unit 1042. The control unit 104 executes an application program 1011 stored in the storage unit 101, thereby realizing each functional unit.
ユーザ登録制御部1041は、本開示に係るサービスの利用を希望するユーザの情報をユーザテーブル1012に記憶する処理を行う。
ユーザテーブル1012に記憶される情報は、ユーザが任意の情報処理端末からサービス提供者が運営するウェブページなどを開き、所定の入力フォームに情報を入力しサーバ10へ送信する。ユーザ登録制御部1041は、受信した情報をユーザテーブル1012の新しいレコードに記憶し、ユーザ登録が完了する。これにより、ユーザテーブル1012に記憶されたユーザはサービスを利用することができるようになる。
ユーザ登録制御部1041によるユーザ情報のユーザテーブル1012への登録に先立ち、サービス提供者は所定の審査を行いユーザによるサービス利用可否を制限しても良い。
ユーザIDは、ユーザを識別できる任意の文字列または数字で良く、ユーザが希望する任意の文字列または数字、もしくはユーザ登録制御部1041が自動的に任意の文字列または数字を設定しても良い。
The user registration control unit 1041 performs a process of storing information of users who wish to use the service according to the present disclosure in the user table 1012.
Information stored in the user table 1012 is transmitted to the server 10 by a user opening a web page operated by a service provider from any information processing terminal, inputting information into a predetermined input form, and transmitting the information to the server 10 . The user registration control unit 1041 stores the received information in a new record of the user table 1012, and the user registration is completed. This allows the users stored in the user table 1012 to use the service.
Prior to the registration of user information in the user table 1012 by the user registration control unit 1041, the service provider may perform a predetermined examination to restrict whether or not the user can use the service.
The user ID may be any character string or number that can identify the user, and may be any character string or number desired by the user, or may be automatically set by the user registration control unit 1041. .
学習部1042は、学習処理を実行する。本開示における、学習部1042は、結合ステップにおいて作成した結合データに基づき学習モデルを学習させる学習ステップを実行することができる。 The learning unit 1042 executes learning processing. In the present disclosure, the learning unit 1042 can perform a learning step of learning a learning model based on the combined data created in the combining step.
<ユーザ端末20の構成>
ユーザ端末20は、サービスを利用するユーザが操作する情報処理装置である。ユーザ端末20は、例えば、スマートフォン、タブレット等の携帯端末でもよいし、据え置き型のPC(Personal Computer)、ラップトップPCであってもよい。また、HMD(Head Mount Display)、腕時計型端末等のウェアラブル端末であってもよい。
ユーザ端末20は、記憶部201、制御部204、入力装置206、出力装置208を備える。
<Configuration of user terminal 20>
The user terminal 20 is an information processing device operated by a user who uses the service. The user terminal 20 may be, for example, a mobile terminal such as a smartphone or a tablet, a stationary PC (Personal Computer), or a laptop PC. Further, it may be a wearable terminal such as an HMD (Head Mount Display) or a wristwatch type terminal.
The user terminal 20 includes a storage section 201, a control section 204, an input device 206, and an output device 208.
<ユーザ端末20の記憶部201の構成>
ユーザ端末20の記憶部201は、ユーザID2011、アプリケーションプログラム2012を備える。
<Configuration of storage unit 201 of user terminal 20>
The storage unit 201 of the user terminal 20 includes a user ID 2011 and an application program 2012.
ユーザID2011はユーザのアカウントIDである。ユーザは、ユーザ端末20からユーザID2011を、サーバ10へ送信する。サーバ10は、ユーザID2011に基づきユーザを識別し、本開示にかかるサービスをユーザに対して提供する。なお、ユーザID2011には、ユーザ端末20を利用しているユーザを識別するにあたりサーバ10から一時的に付与されるセッションIDなどの情報を含む。 User ID 2011 is the user's account ID. The user transmits the user ID 2011 from the user terminal 20 to the server 10. The server 10 identifies the user based on the user ID 2011 and provides the service according to the present disclosure to the user. Note that the user ID 2011 includes information such as a session ID temporarily given by the server 10 to identify the user using the user terminal 20.
アプリケーションプログラム2012は、記憶部201に予め記憶されていても良いし、通信IFを介してサービス提供者が運営するウェブサーバ等からダウンロードする構成としても良い。
アプリケーションプログラム2012は、ウェブブラウザアプリケーションなどのアプリケーションを含む。
アプリケーションプログラム2012は、ユーザ端末20に記憶されているウェブブラウザアプリケーション上で実行されるJavaScript(登録商標)などのインタープリター型プログラミング言語を含む。
The application program 2012 may be pre-stored in the storage unit 201, or may be configured to be downloaded from a web server operated by a service provider via a communication IF.
The application programs 2012 include applications such as a web browser application.
The application programs 2012 include an interpreted programming language such as JavaScript (registered trademark) that runs on a web browser application stored on the user terminal 20 .
<ユーザ端末20の制御部204の構成>
ユーザ端末20の制御部204は、入力制御部2041、出力制御部2042を備える。制御部204は、記憶部201に記憶されたアプリケーションプログラム2012を実行することにより、各機能ユニットが実現される。
<Configuration of control unit 204 of user terminal 20>
The control unit 204 of the user terminal 20 includes an input control unit 2041 and an output control unit 2042. The control unit 204 realizes each functional unit by executing the application program 2012 stored in the storage unit 201.
<ユーザ端末20の入力装置206の構成>
ユーザ端末20の入力装置206は、カメラ2061、マイク2062、位置情報センサ2063、モーションセンサ2064、タッチデバイス2065を備える。
<Configuration of input device 206 of user terminal 20>
The input device 206 of the user terminal 20 includes a camera 2061, a microphone 2062, a position information sensor 2063, a motion sensor 2064, and a touch device 2065.
<ユーザ端末20の出力装置208の構成>
ユーザ端末20の出力装置208は、ディスプレイ2081、スピーカ2082を備える。
<Configuration of output device 208 of user terminal 20>
The output device 208 of the user terminal 20 includes a display 2081 and a speaker 2082.
<システム1の動作>
以下、システム1の各処理について説明する。
図9は、データ拡張処理の動作を示すフローチャートである。
図10は、初期パラメータ設定処理の動作を示すフローチャートである。
図11は、データ拡張処理の概念を説明する第一概念図である。
図12は、データ拡張処理の概念を説明する第二概念図である。
<Operation of System 1>
Each process of the system 1 will be described below.
FIG. 9 is a flowchart showing the operation of the data extension process.
FIG. 10 is a flowchart showing the operation of the initial parameter setting process.
FIG. 11 is a first conceptual diagram illustrating the concept of the data extension process.
FIG. 12 is a second conceptual diagram illustrating the concept of the data extension process.
<データ拡張処理>
データ拡張処理は、主データを補助データにより拡張するための処理である
<Data expansion processing>
Data expansion processing is a process for expanding main data with auxiliary data.
<データ拡張処理の概要>
データ拡張処理は、データ拡張の対象となる主データの選択を受け付け、当該主データのデータ拡張に用いる補助データを選択し、補助データから1または複数の候補データを抽出し、1または複数の候補データから所定の候補データを選択し、主データと候補データとを結合することにより結合データを作成する一連の処理である。
本開示において、第1データ、第2データ、第3データは、1または複数の系列を有する時系列データである。
<Overview of data expansion processing>
The data expansion process accepts the selection of main data to be data expanded, selects auxiliary data to be used for data expansion of the main data, extracts one or more candidate data from the auxiliary data, and extracts one or more candidate data from the auxiliary data. This is a series of processes that select predetermined candidate data from data and create combined data by combining main data and candidate data.
In the present disclosure, the first data, the second data, and the third data are time series data having one or more series.
<データ拡張処理の詳細>
以下に、データ拡張処理の詳細を説明する。
<Details of data expansion processing>
The details of the data expansion process will be explained below.
ステップS101において、サーバ10の制御部104は、時系列データである第1データを取得する第1データ取得ステップを実行する。
具体的に、ユーザは、ユーザ端末20の入力装置206を操作し、ブラウザアプリケーション等を実行し、データ拡張処理を実行するためのウェブページ(データ拡張ページ)のURL等を入力することによりデータ拡張ページD1を開く。ユーザ端末20の制御部204は、データ拡張ページを開くためのユーザID2011を含むリクエストをサーバ10へ送信する。
In step S101, the control unit 104 of the server 10 executes a first data acquisition step of acquiring first data, which is time-series data.
Specifically, the user operates the input device 206 of the user terminal 20 to execute a browser application or the like, and opens the data expansion page D1 by inputting the URL or the like of a web page (data expansion page) for executing the data expansion process. The control unit 204 of the user terminal 20 transmits a request including a user ID 2011 for opening the data expansion page to the server 10.
サーバ10は、リクエストを受信するとデータ拡張ページを生成しユーザ端末20へ送信する。ユーザ端末20の制御部204は、データ拡張ページをユーザ端末20のディスプレイ2081に表示し、提示する。
サーバ10の制御部104は、主テーブル1013に記憶された1または複数の主データ情報をユーザ端末20へ送信し、ユーザ端末20の制御部204は、受信した1または複数の主データ情報に基づき、1または複数の主データ情報を選択可能な態様でデータ拡張ページに一覧表示しても良い。
同様に、サーバ10の制御部104は、補助テーブル1014に記憶された1または複数の補助データ情報をユーザ端末20へ送信し、ユーザ端末20の制御部204は、受信した1または複数の補助データに基づき、1または複数の補助データを選択可能な態様でデータ拡張ページに一覧表示しても良い。
When the server 10 receives the request, it generates a data expansion page and transmits it to the user terminal 20. The control unit 204 of the user terminal 20 displays and presents the data expansion page on the display 2081 of the user terminal 20.
The control unit 104 of the server 10 transmits one or more pieces of main data information stored in the main table 1013 to the user terminal 20, and the control unit 204 of the user terminal 20 may list the one or more pieces of main data information on the data expansion page in a selectable manner based on the one or more pieces of main data information received.
Similarly, the control unit 104 of the server 10 may transmit one or more auxiliary data information stored in the auxiliary table 1014 to the user terminal 20, and the control unit 204 of the user terminal 20 may list one or more auxiliary data on the data expansion page in a selectable manner based on the received one or more auxiliary data.
ユーザは、ユーザ端末20の入力装置206を操作することにより、データ拡張ページに一覧表示された主データを選択する。ユーザ端末20の制御部204は、選択された主データの主データIDをサーバ10へ送信する。サーバ10の制御部104は、主データIDを受信する。
サーバ10の制御部104は、主データIDに基づき、主テーブル1013の主データIDの項目を検索し、主データ(第1データ)を取得し、受け付ける。なお、サーバ10の制御部104は、複数の主データ(第1データ)を取得し、受け付けても良い。
The user selects main data listed on the data expansion page by operating the input device 206 of the user terminal 20. The control unit 204 of the user terminal 20 transmits the main data ID of the selected main data to the server 10. The control unit 104 of the server 10 receives the main data ID.
The control unit 104 of the server 10 searches the main table 1013 for the main data ID item based on the main data ID, obtains the main data (first data), and accepts the main data. Note that the control unit 104 of the server 10 may acquire and accept a plurality of main data (first data).
ステップS102において、サーバ10の制御部104は、第1データ取得ステップにおいて取得した第1データの第1期間範囲よりも長い第3期間範囲を有する時系列データである第3データを取得する第3データ取得ステップを実行する。
具体的に、ユーザは、ユーザ端末20の入力装置206を操作することにより、データ拡張ページに一覧表示された補助データを選択する。ユーザ端末20の制御部204は、選択された補助データの補助データIDをサーバ10へ送信する。サーバ10の制御部104は、補助データIDを受信する。
サーバ10の制御部104は、補助データIDに基づき、補助テーブル1014の補助データIDの項目を検索し、補助データ(第3データ)を取得し、受け付ける。
In step S102, the control unit 104 of the server 10 performs a third data acquisition process that acquires third data that is time series data having a third period range that is longer than the first period range of the first data acquired in the first data acquisition step. Perform data acquisition steps.
Specifically, the user selects the auxiliary data listed on the data expansion page by operating the input device 206 of the user terminal 20. The control unit 204 of the user terminal 20 transmits the auxiliary data ID of the selected auxiliary data to the server 10. The control unit 104 of the server 10 receives the auxiliary data ID.
The control unit 104 of the server 10 searches the auxiliary data ID item in the auxiliary table 1014 based on the auxiliary data ID, acquires and receives the auxiliary data (third data).
なお、サーバ10の制御部104は、ユーザからの選択操作を受け付けることなく、補助データを取得しても良い。
例えば、サーバ10の制御部104は、ステップS101において取得した第1データ、第1データに関連付けて記憶されたメタデータ(属性データ)等の情報に基づき、第1データを拡張するために好適な第3データを補助テーブル1014から検索し、取得し、受け付けても良い。
サーバ10の制御部104は、補助テーブル1014に記憶されたすべて、または一部の任意の補助データを取得し、受け付ける構成としても構わない。サーバ10の制御部104は、複数の補助データ(第3データ)を取得し、受け付けても良い。
サーバ10の制御部104は、第1データ、第1データに関連付けて記憶されたメタデータ(属性データ)等の情報を入力データとして、第3データを特定するための情報(第3データID)を出力する機械学習モデル、深層学習モデル、その他、任意の人工知能モデル等を用いることにより第3データを特定しても良い。
Note that the control unit 104 of the server 10 may acquire the auxiliary data without accepting a selection operation from the user.
For example, the control unit 104 of the server 10 performs a process suitable for expanding the first data based on information such as the first data acquired in step S101 and metadata (attribute data) stored in association with the first data. The third data may be searched for from the auxiliary table 1014, acquired, and accepted.
The control unit 104 of the server 10 may be configured to acquire and accept all or some of the arbitrary auxiliary data stored in the auxiliary table 1014. The control unit 104 of the server 10 may acquire and accept a plurality of auxiliary data (third data).
The control unit 104 of the server 10 uses information such as the first data and metadata (attribute data) stored in association with the first data as input data, and inputs information for identifying the third data (third data ID). The third data may be specified by using a machine learning model, a deep learning model, or any other artificial intelligence model that outputs.
ステップS103において、サーバ10の制御部104は、第3データ取得ステップにおいて取得した第3データの一部であり、第3期間範囲に含まれる複数の時系列データである複数の候補データを抽出する候補抽出ステップを実行する。
具体的に、サーバ10の制御部104は、取得した補助データから、当該補助データの期間範囲の一部に含まれる1または複数の候補データを抽出する。具体的に、サーバ10の制御部104は、取得した補助データの期間範囲の一部を切り出して候補データとして抽出しても良いし、補助データの期間範囲の一部を除外して候補データとして抽出しても良い。
サーバ10の制御部104は、補助データに含まれる複数の系列のうち一部の系列を取り出して候補データとして抽出しても良いし、系列のうち一部の系列を除外して候補データとして抽出しても良い。
In step S103, the control unit 104 of the server 10 extracts a plurality of candidate data that is a part of the third data acquired in the third data acquisition step and is a plurality of time series data included in the third period range. Execute candidate extraction step.
Specifically, the control unit 104 of the server 10 extracts one or more candidate data included in a part of the period range of the auxiliary data from the acquired auxiliary data. Specifically, the control unit 104 of the server 10 may extract a part of the period range of the acquired auxiliary data and extract it as candidate data, or may exclude a part of the period range of the auxiliary data and extract it as candidate data. You can also extract it.
The control unit 104 of the server 10 may extract some of the sequences included in the auxiliary data and extract them as candidate data, or may exclude some of the sequences and extract them as candidate data. You may do so.
ステップS103において、候補抽出ステップは、第1期間範囲と略同一の期間範囲を有する複数の候補データを抽出するステップを実行する。
具体的に、サーバ10の制御部104は、取得した補助データから、ステップS101において選択した主データの期間範囲(第1期間範囲)と略同一の期間範囲を有する1または複数の候補データを抽出することが好適である。
なお、主データと候補データとの間で期間範囲が略同一であったとしても、時間方向のデータ数が主データと候補データとの間で相違する場合がある。つまり、主データと、候補データ(補助データ)との時間方向のデータ数の密度(単位時間当たりのデータ数)が相違する場合がある。この場合、サーバ10の制御部104は、任意の補完処理を主データ、候補データ(補助データ)に対して適用することにより、主データと、候補データ(補助データ)とのデータ数を揃える。補完処理は、主データではなく、候補データ(補助データ)に適用することが好適である。
補完処理は、複数の連続する時系列データの間の、欠損値や不足しているデータを埋めるための手法であり様々な手法が知られている。補完処理は、前方補完、後方補完、線形補完、平均値補完、中央値補完、最近傍補完、機械学習モデル、深層学習モデル等を用いた補完など任意の補完処理を適用することができる。
In step S103, the candidate extraction step executes a step of extracting a plurality of candidate data having substantially the same period range as the first period range.
Specifically, the control unit 104 of the server 10 extracts one or more candidate data having substantially the same period range as the period range (first period range) of the main data selected in step S101 from the acquired auxiliary data. It is preferable to do so.
Note that even if the period ranges are substantially the same between the main data and the candidate data, the number of data in the time direction may be different between the main data and the candidate data. That is, the density of the number of data in the time direction (the number of data per unit time) may be different between the main data and the candidate data (auxiliary data). In this case, the control unit 104 of the server 10 applies arbitrary complementation processing to the main data and the candidate data (auxiliary data) to equalize the data numbers of the main data and the candidate data (auxiliary data). It is preferable to apply the complementation process to candidate data (auxiliary data) rather than to main data.
Completion processing is a method for filling in missing values or missing data between multiple pieces of continuous time-series data, and various methods are known. As the complementation process, arbitrary complementation processes such as forward complementation, backward complementation, linear complementation, average value complementation, median value complementation, nearest neighbor complementation, complementation using a machine learning model, a deep learning model, etc. can be applied.
ステップS103において、候補抽出ステップは、第3期間範囲よりも短い所定期間範囲の第1候補データを抽出するステップと、第1候補データから、第3データの時間方向において前方または後方に所定の周期期間ずつ逐次的にずらすことにより所定期間範囲に含まれる複数の候補データを抽出するステップと、を含む。
具体的に、サーバ10の制御部104は、補助データのうち、時間方向において最も古い位置(開始位置)から時間方向において第1期間範囲までの期間範囲を切り出して第1候補データとして抽出する。サーバ10の制御部104は、補助データのうち、時間方向において開始位置から所定の周期期間だけずらした位置(第2位置)から時間方向において第1期間範囲までの期間範囲を切り出して第2候補データとして抽出する。サーバ10の制御部104は、補助データのうち、時間方向において第2位置から所定の周期期間だけずらした位置(第3位置)から時間方向において第1期間範囲までの期間範囲を切り出して第3候補データとして抽出する。サーバ10の制御部104は、このように期間範囲の切り出し開始位置を所定の周期期間ごとに逐次的にずらすことにより複数の候補データを抽出する。周期期間は、1日、1週間、1ヶ月、1年など任意の期間を用いることができる。
なお、候補データの切り出しは、補助データの時間方向において最も古い位置から行う必要はなく、最も新しい位置または第3期間範囲に含まれる任意の位置から切り出しても良い。
In step S103, the candidate extraction step includes a step of extracting first candidate data in a predetermined period range shorter than the third period range, and a predetermined cycle forward or backward in the time direction of the third data from the first candidate data. The method includes the step of extracting a plurality of candidate data included in a predetermined period range by sequentially shifting each period.
Specifically, the control unit 104 of the server 10 cuts out a period range from the oldest position (start position) in the time direction to the first period range in the time direction from the auxiliary data and extracts it as first candidate data. The control unit 104 of the server 10 cuts out a period range from the auxiliary data from a position (second position) shifted by a predetermined period period from the start position in the time direction to the first period range in the time direction, and selects the period range as a second candidate. Extract as data. The control unit 104 of the server 10 cuts out a period range from the auxiliary data from a position (third position) shifted by a predetermined period period from the second position in the time direction to the first period range in the time direction, and displays the third period range. Extract as candidate data. In this way, the control unit 104 of the server 10 extracts a plurality of candidate data by sequentially shifting the cutting start position of the period range every predetermined cycle period. Any period such as one day, one week, one month, or one year can be used as the cycle period.
Note that the candidate data need not be cut out from the oldest position in the time direction of the auxiliary data, but may be cut out from the newest position or any position included in the third period range.
ステップS103において、候補抽出ステップは、第3データ取得ステップにおいて取得した第3データのうち、第1期間範囲よりも時間方向において前方または後方のデータを除外するステップと、除外した第3データから複数の候補データを抽出するステップと、を含む。
具体的に、サーバ10の制御部104は、第1期間範囲よりも時間方向において第1期間範囲よりも時間方向において後方の期間範囲に含まれないように1または複数の候補データを抽出する。具体的に、サーバ10の制御部104は、補助データのうち、第3期間範囲において時間方向において第1期間範囲よりも時間方向において後方の期間範囲を除外して、当該除外した補助データから候補データを抽出する構成としても良い。
第1データに基づき第1期間範囲よりも後方(未来)の事象を予測するための時系列予測モデルを構築する場合には、第3データのうち第1データの期間範囲よりも時間方向において後方(未来)のデータを学習データとして用いることは因果関係を考慮すると好適ではない。
なお、第1データに基づき第1期間範囲よりも前方(過去)の事象を推論するための時系列予測モデルを構築する場合も同様である。この場合、サーバ10の制御部104は、第1期間範囲よりも時間方向において第1期間範囲よりも時間方向において前方の期間範囲に含まれないように1または複数の候補データを抽出する。
In step S103, the candidate extraction step includes a step of excluding data that is earlier or later than the first period range in the time direction from among the third data acquired in the third data acquisition step, and a plurality of data from the excluded third data. extracting candidate data.
Specifically, the control unit 104 of the server 10 extracts one or more candidate data so that it is not included in a time range that is later than the first time range in the time direction than the first time range. Specifically, the control unit 104 of the server 10 excludes, from among the auxiliary data, a period range that is later in the time direction than the first period range in the third period range, and selects candidates from the excluded auxiliary data. It may also be configured to extract data.
When constructing a time series prediction model for predicting events later (future) than the first period range based on the first data, the third data must be Using (future) data as learning data is not suitable in consideration of causal relationships.
Note that the same applies when constructing a time-series prediction model for inferring events ahead (past) of the first period range based on the first data. In this case, the control unit 104 of the server 10 extracts one or more candidate data so that it is not included in a time range that is earlier than the first time range in the time direction than the first time range.
ステップS103において、サーバ10の制御部104は、ユーザから、所定の周期期間の入力を受け付ける周期入力ステップを実行する。
具体的に、周期期間は、データ拡張ページに設けられた周期期間入力欄等にユーザから入力された値に基づき周期期間の入力を受け付けても良い。
この場合、候補抽出ステップは、周期入力ステップにおいて入力を受け付けた周期期間に基づき、複数の候補データを抽出するステップを実行することになる。
In step S103, the control unit 104 of the server 10 executes a cycle input step of accepting input of a predetermined cycle period from the user.
Specifically, the periodic period may be input based on a value input by the user into a periodic period input field provided on the data expansion page.
In this case, the candidate extraction step executes a step of extracting a plurality of candidate data based on the cycle period inputted in the cycle input step.
ステップS103において、候補抽出ステップは、ユーザから周期期間の入力を受けることなしに、第1データに基づき特定される周期期間に基づき、複数の候補データを抽出するステップを実行する。
具体的に、サーバ10の制御部104は、ステップS101において取得した第1データ、第1データに関連付けて記憶されたメタデータ(属性データ)等の情報に基づき、第1データを拡張する際の補助データを切り出すのに好適な周期期間を、ユーザからの入力を受け付けることなしに自動的に特定しても良い。
例えば、第1データが所定の周期で変動するデータである場合は、第1データの主成分の周期に基づき、当該主成分の周期よりも短いまたは長い周期期間を特定しても良い。その他、第1データのデータの種類、内容等(人口動態、季節性の変動要因とうの周期的な要因が影響するデータ等)に応じて定まる周期に基づき特定しても良い。
サーバ10の制御部104は、第1データ、第1データに関連付けて記憶されたメタデータ(属性データ)等の情報を入力データとして、周期期間を出力する機械学習モデル、深層学習モデル、その他、任意の人工知能モデル等を用いることにより周期期間を特定しても良い。
In step S103, the candidate extraction step executes a step of extracting a plurality of candidate data based on the cycle period specified based on the first data without receiving input of the cycle period from the user.
Specifically, the control unit 104 of the server 10 performs a process when expanding the first data based on information such as the first data acquired in step S101 and metadata (attribute data) stored in association with the first data. A cycle period suitable for cutting out auxiliary data may be automatically specified without receiving input from the user.
For example, when the first data is data that fluctuates at a predetermined period, based on the period of the main component of the first data, a period shorter or longer than the period of the main component may be specified. Alternatively, the data may be specified based on a period determined depending on the data type, content, etc. of the first data (data affected by periodic factors such as population dynamics, seasonal fluctuation factors, etc.).
The control unit 104 of the server 10 uses information such as first data and metadata (attribute data) stored in association with the first data as input data, and generates a machine learning model, a deep learning model, etc., which outputs a period period. The cycle period may be specified by using any artificial intelligence model or the like.
図11は、データ拡張処理の概念を説明する第一概念図である。第1データD100(3.5年分、42行のデータ)を、補助データD110(20年分、240行のデータ)におけるデータ拡張処理を説明する。サーバ10の制御部104は、補助データD110のうち、第1データD10の時間方向において後方のデータD112(2年分、24行のデータ)を除外して補助データD111(18年分、216行のデータ)として特定する。
サーバ10の制御部104は、第1候補データの時間方向において最も新しい位置D13(開始位置)から、時間方向において第1期間範囲である3.5年分の期間範囲を切り出して第1候補データD121(3.5年分、42行のデータ)として特定する。サーバ10の制御部104は、位置D13から周期期間12ヶ月だけ時間方向にずらした位置(第2位置)から、時間方向において第1期間範囲である3.5年分の期間範囲を切り出して第2候補データD122(3.5年分、42行のデータ)として特定する。同様に、サーバ10の制御部104は、第2位置から周期期間12ヶ月だけ時間方向にずらした位置(第3位置)から、時間方向において第1期間範囲である3.5年分の期間範囲を切り出して第3候補データD123(3.5年分、42行のデータ)として特定する。このように、サーバ10の制御部104は、周期期間ずつ逐次的にずらすことにより、補助データD111から14個の候補データを抽出することができる。
11 is a first conceptual diagram for explaining the concept of data extension processing. The data extension processing of the first data D100 (3.5 years, 42 rows of data) in the auxiliary data D110 (20 years, 240 rows of data) is explained. The control unit 104 of the server 10 excludes data D112 (2 years, 24 rows of data) that is later in the time direction of the first data D10 from the auxiliary data D110, and specifies it as the auxiliary data D111 (18 years, 216 rows of data).
The control unit 104 of the server 10 extracts a period range of 3.5 years, which is the first period range, in the time direction from the latest position D13 (start position) in the time direction of the first candidate data, and specifies it as the first candidate data D121 (3.5 years, 42 rows of data). The control unit 104 of the server 10 extracts a period range of 3.5 years, which is the first period range, in the time direction from a position (second position) shifted in the time direction by a periodic period of 12 months from the position D13, and specifies it as the second candidate data D122 (3.5 years, 42 rows of data). Similarly, the control unit 104 of the server 10 extracts a period range of 3.5 years, which is the first period range, in the time direction from a position (third position) shifted in the time direction by a periodic period of 12 months from the second position, and specifies it as the third candidate data D123 (3.5 years, 42 rows of data). In this way, the control unit 104 of the server 10 can extract 14 candidate data from the auxiliary data D111 by sequentially shifting the period.
ステップS104において、サーバ10の制御部104は、第1データ取得ステップにおいて取得した第1データに基づき、複数の時系列データから時系列推移が第1データと類似する第2データを取得する第2データ取得ステップを実行する。第2データ取得ステップは、第1データと、複数の候補データとの類似度に応じて、複数の候補データから第2データを取得するステップを実行する。
第2データ取得ステップは、第1データと、複数の候補データとの間のマンハッタン距離、ユークリッド距離、コサイン類似度および相関係数の少なくともいずれか1つの距離を算定するステップと、算定された距離に基づく類似度に応じて第2データを取得するステップと、を含む。
具体的に、サーバ10の制御部104は、第1データの開始位置からi個目(データのインデックスがi)のデータの値をxiとして、j番目の候補データの開始位置からのi個目の(データのインデックスがi)のデータの値をyijとして、xiとyijとの差(xij-yij)や積(xij*yij)等の距離要素を算定する(なお、候補データは既に補完処理が実行されているものとする)。すべてのiについて距離要素を積算することにより第1データとj番目の候補データとの距離を算定することができる。距離は、マンハッタン距離(L1ノルム)、ユークリッド距離(L2ノルム)、コサイン類似度、相関係数等の距離を用いることができる。
サーバ10の制御部104は、複数の候補データについて算定した距離のうち、最も距離が小さい候補データを第2データとして特定し、取得する。なお、必ずしも、最も距離が近い候補データを第2データとして特定する必要はなく、例えば距離に基づき算定される類似度(距離の逆数等により定まる)が所定値以上の複数の候補データから所定の候補データを第2データとして選択しても良い。また、サーバ10の制御部104は、複数の候補データを複数の第2データとして選択しても良い。
In step S104, the control unit 104 of the server 10 executes a second data acquisition step of acquiring second data, the second data having a time series trend similar to that of the first data, from the plurality of time series data based on the first data acquired in the first data acquisition step. The second data acquisition step executes a step of acquiring second data from the plurality of candidate data according to the similarity between the first data and the plurality of candidate data.
The second data acquisition step includes a step of calculating at least one of a Manhattan distance, a Euclidean distance, a cosine similarity, and a correlation coefficient between the first data and a plurality of candidate data, and a step of acquiring the second data according to the similarity based on the calculated distance.
Specifically, the control unit 104 of the server 10 calculates distance elements such as the difference (xij-yij) or product (xij*yij) between xi and yij, where xi is the value of the i-th data (data index is i) from the start position of the first data, and yij is the value of the i-th data (data index is i) from the start position of the j-th candidate data (note that it is assumed that the candidate data has already been subjected to the complementation process). The distance between the first data and the j-th candidate data can be calculated by accumulating the distance elements for all i. The distance can be calculated using distances such as Manhattan distance (L1 norm), Euclidean distance (L2 norm), cosine similarity, and correlation coefficient.
The control unit 104 of the server 10 identifies and acquires the candidate data with the smallest distance as the second data among the distances calculated for the multiple candidate data. It is not necessary to identify the candidate data with the shortest distance as the second data, and for example, a predetermined candidate data may be selected as the second data from multiple candidate data whose similarity calculated based on the distance (determined by the inverse of the distance, etc.) is equal to or greater than a predetermined value. The control unit 104 of the server 10 may also select multiple candidate data as multiple second data.
ステップS104において、第2データ取得ステップは、第1データに含まれるそれぞれの系列の時系列データと、複数の候補データに含まれるそれぞれの系列の時系列データとの類似度に応じて、複数の候補データから第2データを取得するステップを実行する。
具体的に、第1データ、候補データが複数の系列からなる時系列データである場合には、各系列に対して上述したマンハッタン距離(L1ノルム)、ユークリッド距離(L2ノルム)、コサイン類似度、相関係数等の距離を計算し、系列に対して計算したこれらの距離の組み合わせにより第1データおよび候補データとの類似度を算定する。
例えば、それぞれの系列に対して算出した距離や類似度の平均(平均値、中央値等)、重み付き平均、最大値および最小値の少なくともいずれかを、第1データおよび候補データとの類似度としても良い。
サーバ10の制御部104は、複数の候補データについて算定した類似度のうち、最も類似度が大きい候補データを第2データとして特定し、取得する。なお、必ずしも、最も類似度が大きい候補データを第2データとして特定する必要はなく、例えば類似度が所定値以上の複数の候補データから所定の候補データを第2データとして選択しても良い。また、サーバ10の制御部104は、複数の候補データを複数の第2データとして選択しても良い。
In step S104, the second data acquisition step selects a plurality of time series data according to the degree of similarity between each series of time series data included in the first data and each series of time series data included in the plurality of candidate data. A step of obtaining second data from the candidate data is executed.
Specifically, when the first data and candidate data are time series data consisting of multiple series, the above-mentioned Manhattan distance (L1 norm), Euclidean distance (L2 norm), cosine similarity, Distances such as correlation coefficients are calculated, and the degree of similarity between the first data and the candidate data is calculated based on a combination of these distances calculated for the series.
For example, the similarity between the first data and the candidate data can be calculated using at least one of the distance, average similarity (average value, median, etc.), weighted average, maximum value, and minimum value calculated for each series. It's good as well.
The control unit 104 of the server 10 identifies and acquires candidate data with the highest degree of similarity among the degrees of similarity calculated for the plurality of candidate data as second data. Note that it is not necessarily necessary to specify the candidate data with the highest degree of similarity as the second data, and, for example, predetermined candidate data may be selected as the second data from a plurality of candidate data having a degree of similarity greater than or equal to a predetermined value. Further, the control unit 104 of the server 10 may select a plurality of candidate data as a plurality of second data.
ステップS104において、第2データ取得ステップは、第1データと、複数の候補データとの類似する系列の個数に応じて、複数の候補データから第2データを取得するステップを実行する。
具体的に、第1データ、候補データが第1系列、第2系列、第3系列の3つの系列を有する時系列データであるとする。この場合、複数の候補データについて、第1系列、第2系列、第3系列のそれぞれの系列ごとに距離(類似度)を算定する。複数の候補データのそれぞれについて、第1データと複数の候補データが有する系列のうち最も類似する系列の個数をカウントする。
例えば、第1候補データ、第2候補データ、第3候補データ、第4候補データ、第5候補データの5つの候補データがあるとする。第1候補データは、第1系列、第2系列、第3系列のそれぞれについて第1データと最も類似する系列の個数は0個とする。同様に、第2候補データは0個、第3候補データは2個、第4候補データは0個、第5候補データは1個である場合において、最も類似する候補データである第3候補データが第2データとして特定し、取得される。
In step S104, the second data acquisition step executes a step of acquiring second data from the plurality of candidate data according to the number of similar sequences between the first data and the plurality of candidate data.
Specifically, it is assumed that the first data and candidate data are time series data having three series: a first series, a second series, and a third series. In this case, the distance (similarity) is calculated for each of the first series, second series, and third series for the plurality of candidate data. For each of the plurality of candidate data, the number of most similar sequences among the sequences included in the first data and the plurality of candidate data is counted.
For example, assume that there are five candidate data: first candidate data, second candidate data, third candidate data, fourth candidate data, and fifth candidate data. In the first candidate data, the number of sequences most similar to the first data is zero for each of the first sequence, second sequence, and third sequence. Similarly, in a case where there are 0 pieces of second candidate data, 2 pieces of third candidate data, 0 pieces of fourth candidate data, and 1 piece of fifth candidate data, the third candidate data that is the most similar candidate data is specified as the second data and acquired.
ステップS105において、サーバ10の制御部104は、第1データの時間方向において前方および後方の少なくともいずれかに第2データを結合することにより結合データを作成する結合ステップを実行する。
結合ステップは、第1データの時間方向において前方に1または複数の第2データを結合することにより結合データを作成するステップを実行しても良い。
具体的に、サーバ10の制御部104は、ステップS101において選択した主データ(第1データ)の時間方向において前方に、ステップS104において選択した候補データ(第2データ)を結合する。具体的に、時系列データである第1データの時間方向において最も前方のデータの前に、第2データの時間方向において最も後方のデータを結合する。これにより、時間方向において第2データ、第1データの順番に連続する時系列データ(結合データ)を作成することができる。
In step S105, the control unit 104 of the server 10 executes a combining step of creating combined data by combining the second data with at least one of the forward and backward parts of the first data in the time direction.
The combining step may be a step of creating combined data by combining one or more pieces of second data ahead of the first data in the time direction.
Specifically, the control unit 104 of the server 10 combines the candidate data (second data) selected in step S104 forward in the time direction of the main data (first data) selected in step S101. Specifically, the rearmost data of the second data in the time direction is combined before the data of the first data, which is time series data, which is the most forward in the time direction. Thereby, it is possible to create time-series data (combined data) in which the second data and the first data are continuous in the order of time.
結合ステップは、第1データの時間方向において後方に1または複数の第2データを結合することにより結合データを作成するステップを実行しても良い。
同様に、サーバ10の制御部104は、ステップS101において選択した主データ(第1データ)の時間方向において後方に、ステップS104において選択した候補データ(第2データ)を結合しても良い。具体的に、時系列データである第1データの時間方向において最も後方のデータの後に、第2データの時間方向において最も前方のデータを結合する。これにより、時間方向において第1データ、第2データの順番に連続する時系列データ(結合データ)を作成することができる。
The combining step may be a step of creating combined data by combining one or more pieces of second data backward in the time direction of the first data.
Similarly, the control unit 104 of the server 10 may combine the candidate data (second data) selected in step S104 after the main data (first data) selected in step S101 in the time direction. Specifically, after the rearmost data in the time direction of the first data, which is time series data, the most forward data in the time direction of the second data is combined. Thereby, it is possible to create time-series data (combined data) in which the first data and the second data are continuous in the order of time.
ステップS105において、サーバ10の制御部104は、ユーザから、第1データ取得ステップにおいて取得した第1データに対する拡張期間を受け付ける拡張期間受付ステップを実行する。
結合ステップは、結合データの期間範囲が拡張期間に達するまで第1データの時間方向において前方および後方の少なくともいずれかに1または複数の第2データを結合するステップを実行する。
具体的に、ユーザは、データ拡張ページに表示された拡張期間入力欄に、第1データの拡張を希望する第1期間範囲よりも長い期間(拡張期間)を入力可能な構成としても良い。この場合、サーバ10の制御部104は、ユーザから受け付けた拡張期間に応じて、第1データの時間方向の前方に1または複数の第2データを結合させる。具体的に、結合データの期間範囲が拡張期間になるように所定個数の第2データを結合させる。なお、((拡張期間-第1期間範囲)÷第1期間範囲)個の第2データを、第1データの時間方向の前方に結合させることにより、結合データの期間範囲を拡張期間とすることができる。
なお、結合データを拡張期間とするのに必要な所定個数の第2データが、ステップS104において選択できていない場合は、ステップS104において選択した第2データを反復して第1データに結合させることにより、第1データの期間範囲を拡張しても良い。
In step S105, the control unit 104 of the server 10 executes an extended period acceptance step of accepting an extended period for the first data acquired in the first data acquisition step from the user.
The combining step is performed by combining one or more pieces of second data in at least one of the forward and backward directions of the first data in the time direction until the period range of the combined data reaches an extended period.
Specifically, the configuration may be such that the user can input a period (extension period) longer than the first period range in which the first data is desired to be expanded into the expansion period input field displayed on the data expansion page. In this case, the control unit 104 of the server 10 combines one or more pieces of second data ahead of the first data in the time direction, depending on the extended period received from the user. Specifically, a predetermined number of pieces of second data are combined so that the period range of the combined data becomes an extended period. Note that by combining ((extended period - first period range) ÷ first period range) pieces of second data in front of the first data in the time direction, the period range of the combined data can be made into an extended period. Can be done.
Note that if the predetermined number of second data necessary for making the combined data into an extended period has not been selected in step S104, the second data selected in step S104 may be repeatedly combined with the first data. Accordingly, the period range of the first data may be expanded.
なお、同様に、サーバ10の制御部104は、ユーザから受け付けた拡張期間に応じて、第1データの時間方向の後方に1または複数の第2データを結合させることにより、拡張期間を有する結合データを作成しても良い。 Similarly, the control unit 104 of the server 10 creates a combination having an extended period by combining one or more pieces of second data after the first data in the time direction according to the extended period received from the user. You can also create data.
サーバ10の制御部104は、第1データと1または複数の第2データとを結合することにより作成した結合データの期間範囲が拡張期間を超過した場合には、第2データのうち超過した期間範囲を除外することにより、結合データの期間範囲を拡張期間となるように処理を実行しても良い。 If the period range of the combined data created by combining the first data and one or more pieces of second data exceeds the extended period, the control unit 104 of the server 10 controls the period range of the second data that exceeds the extended period. By excluding the range, processing may be executed so that the period range of the combined data becomes an extended period.
図12は、データ拡張処理の概念を説明する第二概念図である。
サーバ10の制御部104は、主データである第1データD211(3.5年分、42行のデータ)を、補助データから抽出した2つの第2候補データD212、D213(3.5年分、42行のデータ)を結合することにより、拡張期間10.5年分、126行の第1結合データD221(10.5年分、126行のデータ)を作成する。なお、第2候補データD212、D213は一例として同じデータを結合する例を説明したが、必ずしも同じ候補データを結合する必要はない。
次に、サーバ10の制御部104は、第1結合データD221を新たな主データ(第1データ)として、データ拡張処理を実行する。具体的に、第1結合データD221を新たな主データとして、補助データから第A候補データD222(10.5年分、126行のデータ)、・・・、第Z候補データD229(10.5年分、126行のデータ)を抽出する。なお、第A候補データD222、・・・、第Z候補データD229も、他の主データおよび候補データの結合により作成した結合データであっても良い。本開示においては、サーバ10の制御部104は、拡張期間である210年分、2520行の結合データを得るために、第1結合データD221に対して、19個の第A候補データD222、・・・、第Z候補データD229を結合し、第2結合データ(210年分、2520行のデータ)を作成する。
このように、サーバ10の制御部104は、一度のデータ拡張処理により主データ(第1データ)を補助データにより結合データを作成することができる。さらに、サーバ10の制御部104は、作成した結合データを主データまたは補助データとして扱い、逐次的にデータ拡張処理を実行することにより任意の期間(拡張期間)の結合データを作成することができる。
このようにして、手元にある事象に関する限定的な期間の時系列データしかない場合においても、データ拡張処理により品質の優れた長期的な時系列データを新たに作成することができる。長期的な事象に関して、長期的な学習データに基づき、品質良く学習モデルを学習させることができる。
FIG. 12 is a second conceptual diagram explaining the concept of data expansion processing.
The control unit 104 of the server 10 converts the first data D211 (3.5 years worth of data, 42 lines of data) which is the main data into two second candidate data D212 and D213 (3.5 years worth of data) extracted from the auxiliary data. , 42 rows of data) to create the first combined data D221 (10.5 years of data, 126 rows of data) of 126 rows for an extended period of 10.5 years. Although an example has been described in which the same second candidate data D212 and D213 are combined, it is not always necessary to combine the same candidate data.
Next, the control unit 104 of the server 10 executes data expansion processing using the first combined data D221 as new main data (first data). Specifically, using the first combined data D221 as new main data, the A-th candidate data D222 (10.5 years worth of data, 126 rows of data), ..., the Z-th candidate data D229 (10.5 years' worth of data) are extracted from the auxiliary data. Extract 126 rows of data for the year. Note that the A-th candidate data D222, . . . , Z-th candidate data D229 may also be combined data created by combining other main data and candidate data. In the present disclosure, in order to obtain 2520 lines of combined data for an extended period of 210 years, the control unit 104 of the server 10 adds 19 A-th candidate data D222, ..., the Z-th candidate data D229 are combined to create second combined data (210 years of data, 2520 rows of data).
In this way, the control unit 104 of the server 10 can create combined data of main data (first data) and auxiliary data through a single data expansion process. Furthermore, the control unit 104 of the server 10 can create combined data for any period (extension period) by handling the created combined data as main data or auxiliary data and sequentially performing data expansion processing. .
In this way, even when there is only time-series data for a limited period regarding an event at hand, it is possible to newly create high-quality long-term time-series data through data expansion processing. Regarding long-term events, a learning model can be trained with good quality based on long-term learning data.
<初期パラメータ設定処理>
初期パラメータ設定処理は、学習モデルを学習する際の初期パラメータを設定するための処理である
<Initial parameter setting process>
The initial parameter setting process is a process for setting initial parameters when learning a learning model.
<初期パラメータ設定処理の概要>
初期パラメータ設定処理は、学習モデルの選択を受け付け、当該学習モデルを学習させるための学習データを取得し、当該取得した学習データに基づき初期パラメータを検索し、検索により特定した初期パラメータを学習モデルの初期パラメータとして設定する一連の処理である
<Overview of initial parameter setting process>
The initial parameter setting process is a series of processes that accept the selection of a learning model, acquire learning data for training the learning model, search for initial parameters based on the acquired learning data, and set the initial parameters identified by the search as the initial parameters of the learning model.
<初期パラメータ設定処理の詳細>
以下に、初期パラメータ設定処理の詳細を説明する。
なお、初期パラメータ設定処理に先立ち、サーバ10の制御部104は、複数の時系列予測モデルと、当該複数の時系列予測モデルの学習に用いられる時系列データである学習データと、当該複数の時系列予測モデルの学習パラメータと、をそれぞれ関連付けて記憶する記憶ステップを実行する。
記憶ステップは、複数の時系列予測モデルと、当該複数の時系列予測モデルの最適化後パラメータと、をそれぞれ関連付けて記憶するステップである。
記憶ステップは、複数の時系列予測モデルと、当該複数の時系列予測モデルの初期パラメータと、をそれぞれ関連付けて記憶するステップである。
具体的に、サーバ10の制御部104は、モデルテーブル1021に記憶された1または複数の学習モデルについて、主データまたは結合データを用いて、初期パラメータに基づく学習処理を実行し、最適化後の学習後パラメータを算出する。サーバ10の制御部104は、学習モデル、初期パラメータ、学習後パラメータをそれぞれ、モデルテーブル1021の学習モデル、初期パラメータ、学習後パラメータの項目に関連付けて記憶しておくものとする。
<Details of initial parameter setting process>
The details of the initial parameter setting process will be explained below.
Note that, prior to the initial parameter setting process, the control unit 104 of the server 10 stores a plurality of time-series prediction models, learning data that is time-series data used for learning the plurality of time-series prediction models, and the plurality of time-series prediction models. A storage step is executed in which the learning parameters of the sequence prediction model are stored in association with each other.
The storing step is a step of storing a plurality of time-series prediction models and the post-optimization parameters of the plurality of time-series prediction models in association with each other.
The storing step is a step of storing a plurality of time-series prediction models and initial parameters of the plurality of time-series prediction models in association with each other.
Specifically, the control unit 104 of the server 10 executes learning processing based on initial parameters using main data or combined data for one or more learning models stored in the model table 1021, and Calculate the parameters after learning. The control unit 104 of the server 10 stores learning models, initial parameters, and post-learning parameters in association with the learning model, initial parameters, and post-learning parameters of the model table 1021, respectively.
ステップS301において、サーバ10の制御部は、学習モデルの選択を受け付ける学習モデル選択ステップを実行する。
ユーザは、ユーザ端末20の入力装置206を操作し、ブラウザアプリケーション等を実行し、初期パラメータ設定処理を実行するためのウェブページ(初期パラメータ設定ページ)のURL等を入力することにより初期パラメータ設定ページD3を開く。ユーザ端末20の制御部204は、初期パラメータ設定ページを開くためのユーザID2011を含むリクエストをサーバ10へ送信する。
In step S301, the control unit of the server 10 executes a learning model selection step that accepts selection of a learning model.
The user operates the input device 206 of the user terminal 20, executes a browser application, etc., and enters the URL of a web page (initial parameter setting page) for executing the initial parameter setting process, thereby displaying the initial parameter setting page. Open D3. The control unit 204 of the user terminal 20 transmits a request including the user ID 2011 for opening the initial parameter setting page to the server 10.
サーバ10は、リクエストを受信すると初期パラメータ設定ページを生成しユーザ端末20へ送信する。ユーザ端末20の制御部204は、初期パラメータ設定ページをユーザ端末20のディスプレイ2081に表示し、提示する。
サーバ10の制御部104は、モデルテーブル1021に記憶された1または複数の学習モデル情報をユーザ端末20へ送信し、ユーザ端末20の制御部204は、受信した1または複数の学習モデル情報に基づき、1または複数の学習モデル情報を選択可能な態様で初期パラメータ設定ページに一覧表示しても良い。
ユーザは、ユーザ端末20の入力装置206を操作することにより、初期パラメータ設定ページに一覧表示された学習モデルを選択する。ユーザ端末20の制御部204は、選択された学習モデルのモデルIDをサーバ10へ送信する。サーバ10の制御部104は、モデルIDを受信し、受け付ける。
Upon receiving the request, the server 10 generates an initial parameter setting page and sends it to the user terminal 20. The control unit 204 of the user terminal 20 displays and presents the initial parameter setting page on the display 2081 of the user terminal 20.
The control unit 104 of the server 10 transmits one or more learning model information stored in the model table 1021 to the user terminal 20, and the control unit 204 of the user terminal 20 transmits the one or more learning model information stored in the model table 1021 based on the received one or more learning model information. , one or more pieces of learning model information may be displayed as a list on the initial parameter setting page in a selectable manner.
The user selects a learning model listed on the initial parameter setting page by operating the input device 206 of the user terminal 20. The control unit 204 of the user terminal 20 transmits the model ID of the selected learning model to the server 10. The control unit 104 of the server 10 receives and accepts the model ID.
ステップS302において、サーバ10の制御部104は、時系列データである第1学習データを取得する第1学習データ取得ステップを実行する。
具体的に、サーバ10の制御部104は、受信したモデルIDに基づき、モデルテーブル021のモデルIDの項目を検索し、主データID、候補データID、拡張条件の項目を取得する。サーバ10の制御部104は、取得した主データIDに基づき、主テーブル1013の主データIDの項目を検索し、主データを取得する。サーバ10の制御部104は、取得した候補データIDに基づき、候補テーブル1015の候補データIDの項目を検索し、候補データを取得する。
初期パラメータ設定処理において、第1学習データは、学習モデルに関連付けて記憶された主データ、補助データ、候補データ、結合データなどの任意のデータを含む。例えば、第1学習データは、取得した主データを含む。第1学習データは、取得した主データおよび候補データをデータ拡張処理のステップS105において結合した結合データを含む。
In step S302, the control unit 104 of the server 10 executes a first learning data acquisition step of acquiring first learning data, which is time-series data.
Specifically, the control unit 104 of the server 10 searches the model ID field in the model table 021 based on the received model ID, and acquires the main data ID, candidate data ID, and extension condition fields. The control unit 104 of the server 10 searches the main data ID field in the main table 1013 based on the acquired main data ID, and acquires the main data. The control unit 104 of the server 10 searches the candidate data ID field in the candidate table 1015 based on the acquired candidate data ID, and acquires the candidate data.
In the initial parameter setting process, the first learning data includes any data such as main data, auxiliary data, candidate data, and combined data stored in association with the learning model. For example, the first learning data includes the acquired main data. The first learning data includes combined data obtained by combining the acquired main data and candidate data in step S105 of the data expansion process.
また、サーバ10の制御部104は、主テーブル1013に記憶された1または複数の主データ情報をユーザ端末20へ送信し、ユーザ端末20の制御部204は、受信した1または複数の主データ情報に基づき、1または複数の主データ情報を選択可能な態様で初期パラメータ設定ページに一覧表示しても良い。
ユーザは、ユーザ端末20の入力装置206を操作することにより、初期パラメータを設定ページに一覧表示された主データを選択する。ユーザ端末20の制御部204は、選択された主データの主データIDをサーバ10へ送信する。サーバ10の制御部104は、主データIDを受信する。
サーバ10の制御部104は、主データIDに基づき、主テーブル1013の主データIDの項目を検索し、主データ(第1学習データ)を取得し、受け付ける。なお、サーバ10の制御部104は、複数の主データ(第1学習データ)を取得し、受け付けても良い。
このように、サーバ10の制御部104は、複数の学習モデルに対するユーザからの選択に応じて、当該選択された学習モデルに関連付けられた主データを特定し取得しても良いし、複数の主データに対するユーザからの直接的な選択に応じて、当該選択された主データを特定し取得しても構わない。
同様に、サーバ10の制御部104は、複数の学習モデルに対するユーザからの選択に応じて、当該選択された学習モデルに関連付けられた結合データを特定し取得しても良いし、複数の結合データに対するユーザからの直接的な選択に応じて、当該選択された結合データを特定し取得しても構わない。
Further, the control unit 104 of the server 10 transmits one or more main data information stored in the main table 1013 to the user terminal 20, and the control unit 204 of the user terminal 20 transmits the received one or more main data information. Based on this, one or more pieces of main data information may be displayed as a list on the initial parameter setting page in a selectable manner.
The user selects main data listed on the initial parameter setting page by operating the input device 206 of the user terminal 20. The control unit 204 of the user terminal 20 transmits the main data ID of the selected main data to the server 10. The control unit 104 of the server 10 receives the main data ID.
The control unit 104 of the server 10 searches the main table 1013 for the main data ID item based on the main data ID, obtains the main data (first learning data), and accepts the main data. Note that the control unit 104 of the server 10 may acquire and accept a plurality of main data (first learning data).
In this way, the control unit 104 of the server 10 may specify and acquire the main data associated with the selected learning model in response to the user's selection of a plurality of learning models, or may specify and acquire the main data associated with the selected learning model. In response to a user's direct selection of data, the selected main data may be identified and acquired.
Similarly, in response to a user's selection of a plurality of learning models, the control unit 104 of the server 10 may specify and acquire the combined data associated with the selected learning model, or may specify and acquire the combined data associated with the selected learning model. The selected combined data may be specified and acquired in response to a direct selection from the user.
ステップS303において、サーバ10の制御部104は、第1学習データ取得ステップにおいて取得した第1学習データに基づき、記憶ステップにおいて記憶した複数の学習データのうち、時系列推移が第1学習データと類似する第2学習データを特定するデータ特定ステップを実行する。
データ特定ステップは、第1学習データと、複数の学習データとの間のマンハッタン距離、ユークリッド距離、コサイン類似度および相関係数の少なくともいずれか1つの距離を算定するステップと、算定された距離に基づく類似度に応じて第2学習データを特定するステップと、を含む。
具体的に、サーバ10の制御部104は、第1学習データと、モデルテーブル1021に記憶された主データIDに基づき特定される主データ、候補データIDに基づき特定される候補データ、取得した主データおよび候補データをデータ拡張処理のステップS105において結合した結合データの少なくともいずれか1つと対比し、類似度を算定する。第1学習データが、主データ、候補データ、結合データのいずれかである場合は、対比対象も主データ、候補データ、結合データのいずれかであることが好適である。
具体的に、サーバ10の制御部104は、第1学習データの期間範囲と略同一の期間範囲を有する主データ、候補データ、結合データの少なくともいずれか1つ(以下、対象データとよぶ)と対比し類似度を算定しても良い(主データは主データと、候補データは候補データと、結合データは結合データと対比される)。サーバ10の制御部104は、モデルテーブル1021を参照して、複数の学習モデル、初期パラメータ、学習後パラメータと関連付けて記憶された複数の対象データを取得する。
具体的に、サーバ10の制御部104は、第1学習データの開始位置からi個目(データのインデックスがi)のデータの値をxiとして、j番目の対象データの開始位置からのi個目の(データのインデックスがi)のデータの値をyijとして、xiとyijとの差(xij-yij)や積(xij*yij)等の距離要素を算定する(なお、候補データは既に補完処理が実行されているものとする)。すべてのiについて距離要素を積算することにより第1データとj番目の対象データとの距離を算定することができる。距離は、マンハッタン距離(L1ノルム)、ユークリッド距離(L2ノルム)、コサイン類似度、相関係数等の距離を用いることができる。
サーバ10の制御部104は、複数の対象データについて算定した距離のうち、最も距離が小さい対象データを第2学習データとして特定し、取得する。なお、必ずしも、最も距離が近い対象データを第2データとして特定する必要はなく、例えば距離に基づき算定される類似度(距離の逆数等により定まる)が所定値以上の複数の対象データから所定の対象データを第2データとして選択しても良い。また、サーバ10の制御部104は、複数の対象データを複数の第2データとして選択しても良い。
In step S303, the control unit 104 of the server 10 determines, based on the first learning data acquired in the first learning data acquisition step, that among the plurality of learning data stored in the storage step, the time series transition is similar to the first learning data. A data specifying step of specifying second learning data to be used is executed.
The data identification step includes a step of calculating at least one of Manhattan distance, Euclidean distance, cosine similarity, and correlation coefficient between the first learning data and the plurality of learning data; identifying the second learning data according to the based similarity.
Specifically, the control unit 104 of the server 10 controls the first learning data, the main data specified based on the main data ID stored in the model table 1021, the candidate data specified based on the candidate data ID, and the acquired main data. The data and candidate data are compared with at least one of the combined data combined in step S105 of the data expansion process, and the degree of similarity is calculated. When the first learning data is main data, candidate data, or combined data, it is preferable that the comparison target is also main data, candidate data, or combined data.
Specifically, the control unit 104 of the server 10 selects at least one of main data, candidate data, and combined data (hereinafter referred to as target data) having a period range that is substantially the same as the period range of the first learning data. Similarity may be calculated by comparing (main data is compared with main data, candidate data is compared with candidate data, and combined data is compared with combined data). The control unit 104 of the server 10 refers to the model table 1021 and acquires a plurality of target data stored in association with a plurality of learning models, initial parameters, and post-learning parameters.
Specifically, the control unit 104 of the server 10 sets the value of the i-th data (data index is i) from the start position of the first learning data to xi, and sets the value of the i-th data from the start position of the j-th target data to xi. The value of the data of the eye (data index is i) is set as yij, and distance elements such as the difference (xij - yij) and product (xij * yij) between xi and yij are calculated (note that the candidate data has already been complemented). ). The distance between the first data and the j-th target data can be calculated by integrating the distance elements for all i. As the distance, distances such as Manhattan distance (L1 norm), Euclidean distance (L2 norm), cosine similarity, and correlation coefficient can be used.
The control unit 104 of the server 10 identifies and acquires the target data with the smallest distance among the distances calculated for the plurality of target data as second learning data. Note that it is not necessarily necessary to specify the closest target data as the second data; for example, it is not necessary to specify the closest target data as the second data. The target data may be selected as the second data. Further, the control unit 104 of the server 10 may select a plurality of target data as a plurality of second data.
データ特定ステップは、第1学習データ取得ステップにおいて取得した第1学習データの目的変数と、記憶ステップにおいて記憶した複数の学習データの目的変数と、に基づき算定される類似度に基づき第2学習データを特定するステップを実行する。データ特定ステップは、第1学習データ取得ステップにおいて取得した第1学習データの説明変数と、記憶ステップにおいて記憶した複数の学習データの説明変数と、に基づき類似度を算定しないステップを実行する。
具体的に、サーバ10の制御部104は、第1学習データと1または複数の対象データとの間の距離を算定する際に、第1学習データおよび対象データの説明変数を考慮せずに、目的変数のみを考慮して距離を計算しても良い。
一般に、学習データの説明変数は高次元のデータ構造であるのに対して、目的変数は1次元または小数次元のデータ構造である。これにより、より短い処理時間、より低コストで第2学習データを特定することができる。
The data specifying step includes determining the second learning data based on the similarity calculated based on the objective variable of the first learning data acquired in the first learning data acquisition step and the objective variable of the plurality of learning data stored in the storing step. Take steps to identify. The data specifying step executes a step of not calculating the degree of similarity based on the explanatory variables of the first learning data acquired in the first learning data acquiring step and the explanatory variables of the plurality of learning data stored in the storing step.
Specifically, when calculating the distance between the first learning data and one or more target data, the control unit 104 of the server 10 calculates the distance between the first learning data and one or more target data without considering the explanatory variables of the first learning data and the target data. The distance may be calculated by considering only the objective variable.
Generally, explanatory variables of training data have a high-dimensional data structure, whereas objective variables have a one-dimensional or decimal-dimensional data structure. Thereby, the second learning data can be specified with shorter processing time and lower cost.
データ特定ステップは、第1学習データ取得ステップにおいて取得した第1学習データの目的変数と、記憶ステップにおいて記憶した複数の学習データの目的変数と、に基づき算定される類似度に基づき複数の第2学習データ候補を特定する第1ステップと、第1学習データ取得ステップにおいて取得した第1学習データの説明変数と、複数の第2学習データ候補の説明変数と、に基づき算定される類似度に基づき第2学習データを特定する第2ステップと、を含む。
具体的に、サーバ10の制御部104は、具体的に、サーバ10の制御部104は、第1学習データと1または複数の対象データとの間の距離を算定する際に、第1学習データおよび対象データの説明変数を考慮せずに、目的変数のみを考慮して距離を計算し、当該計算した距離が所定値以下の複数の対象データを特定する。つまり、サーバ10の制御部104は、第1学習データと複数の対象データとを説明変数について対比し、複数の対象データから比較的類似する複数の対象データを第2学習データの候補(第2学習データ候補)として絞り込む。
次に、サーバ10の制御部104は、第1学習データと1または複数の第2学習データ候補との間の距離を算定する際に、第1学習データおよび第2学習データ候補の説明変数を考慮して距離を計算し、最も距離が小さい第2学習データ候補を第2学習データとして特定し、取得する。なお、サーバ10の制御部104は、第1学習データおよび第2学習データ候補の目的変数および説明変数を考慮して距離を計算しても良い。
一般に、学習データの説明変数は高次元のデータ構造であるのに対して、目的変数は1次元または小数次元のデータ構造である。これにより、より短い処理時間、より低コストで第2学習データを絞り込みつつ、少数の第2データ学習データ候補については説明変数も考慮して類似度を計算することにより、精度高く好適な第2学習データを特定できる。
The data identifying step includes a first step of identifying a plurality of second learning data candidates based on a similarity calculated based on an objective variable of the first learning data acquired in the first learning data acquiring step and objective variables of the plurality of learning data stored in the storing step, and a second step of identifying the second learning data based on a similarity calculated based on an explanatory variable of the first learning data acquired in the first learning data acquiring step and explanatory variables of the plurality of second learning data candidates.
Specifically, when calculating the distance between the first learning data and one or more target data, the control unit 104 of the server 10 calculates the distance by considering only the objective variable without considering the explanatory variables of the first learning data and the target data, and identifies multiple target data for which the calculated distance is equal to or less than a predetermined value. In other words, the control unit 104 of the server 10 compares the first learning data and the multiple target data with respect to the explanatory variables, and narrows down the multiple target data to multiple target data that are relatively similar as candidates for the second learning data (second learning data candidates).
Next, when calculating the distance between the first learning data and one or more second learning data candidates, the control unit 104 of the server 10 calculates the distance taking into consideration the explanatory variables of the first learning data and the second learning data candidates, and identifies and acquires the second learning data candidate with the smallest distance as the second learning data. Note that the control unit 104 of the server 10 may calculate the distance taking into consideration the objective variables and explanatory variables of the first learning data and the second learning data candidates.
In general, explanatory variables of learning data have a high-dimensional data structure, whereas objective variables have a one-dimensional or decimal-dimensional data structure. This makes it possible to narrow down the second learning data in a shorter processing time and at a lower cost, while calculating the similarity for a small number of second learning data candidates while taking explanatory variables into account, thereby making it possible to identify suitable second learning data with high accuracy.
ステップS303において、データ特定ステップは、第1学習データ取得ステップにおいて取得した第1学習データの目的変数を入力データとして、モデル記憶ステップにおいて記憶した第2学習モデルに適用することにより出力される目的変数に基づき、第2学習データを特定するステップを実行する。
また、サーバ10の制御部104は、目的変数を入力データとして第2学習データを特定可能な機械学習モデル、深層学習モデル、人工知能モデル等を用いて、第1学習データの目的変数を入力データとして第2学習データを特定する構成とすることもできる。
これにより、より短い処理時間、より低コストで第2学習データを特定することができる。
In step S303, the data specifying step includes using the objective variables of the first learning data acquired in the first learning data acquisition step as input data, and applying them to the second learning model stored in the model storage step to output a target variable. The step of specifying the second learning data is executed based on the step of identifying the second learning data.
In addition, the control unit 104 of the server 10 uses a machine learning model, a deep learning model, an artificial intelligence model, etc. that can specify the second learning data using the objective variable as input data, and converts the objective variable of the first learning data into input data. It is also possible to have a configuration in which the second learning data is specified as the second learning data.
Thereby, the second learning data can be specified with shorter processing time and lower cost.
サーバ10の制御部104は、記憶ステップにおいて、データ特定ステップにおいて特定した第2学習データと関連付けて記憶した第2学習パラメータ(第2最適化後パラメータ、第2初期パラメータ)を取得するパラメータ取得ステップを実行する。
具体的に、サーバ10の制御部104は、モデルテーブル1021において第2データと関連付けて記憶(同じレコードに記憶)された初期パラメータ、学習パラメータの少なくともいずれか1つを取得する。
サーバ10の制御部104は、取得した第2初期パラメータ、第2最適化後パラメータのそれぞれを、モデルテーブル1021のステップS301において選択されたモデルIDに基づき特定されるレコードの初期パラメータ、学習後パラメータの項目に記憶する。
In the storage step, the control unit 104 of the server 10 performs a parameter acquisition step of acquiring second learning parameters (second post-optimization parameters, second initial parameters) stored in association with the second learning data specified in the data identification step. Execute.
Specifically, the control unit 104 of the server 10 acquires at least one of the initial parameters and learning parameters stored in association with the second data in the model table 1021 (stored in the same record).
The control unit 104 of the server 10 converts the acquired second initial parameters and second post-optimization parameters into the initial parameters and post-learning parameters of the record specified based on the model ID selected in step S301 of the model table 1021. Stored in the item.
ステップS304において、サーバ10の制御部104は、第1学習データに基づき、パラメータ取得ステップにおいて取得した第2学習パラメータ(第2最適化後パラメータまたは第2初期パラメータ)に基づく初期パラメータを用いて学習モデルを学習させる学習ステップを実行する。
具体的に、サーバ10の制御部104は、ステップS301において選択を受け付けたモデルIDに基づき、モデルテーブル1021のモデルIDの項目を検索し、主データ、候補データ、拡張条件、初期パラメータ(第2初期パラメータ)、学習パラメータ(第2最適化後パラメータ)を取得する。
サーバ10の制御部104は、取得した主データおよび候補データに基づき、データ拡張処理のステップS105における処理に従い結合した結合データを作成する。
In step S304, the control unit 104 of the server 10 executes a learning step in which a learning model is trained based on the first learning data using initial parameters based on the second learning parameters (second optimized parameters or second initial parameters) acquired in the parameter acquisition step.
Specifically, the control unit 104 of the server 10 searches the model ID item in the model table 1021 based on the model ID selected in step S301, and obtains the main data, candidate data, extension conditions, initial parameters (second initial parameters), and learning parameters (second optimized parameters).
The control unit 104 of the server 10 creates combined data by combining the acquired main data and candidate data in accordance with the process in step S105 of the data extension process.
サーバ10の制御部104は、学習モデルに含まれるディープニューラルネットワークの学習パラメータを深層学習による学習処理を実行する。
サーバ10の制御部104は、結合データを学習データとし、初期パラメータとして第2初期パラメータまたは第2最適化後パラメータを用いて学習モデルを学習させる。
サーバ10の制御部104は、結合データに基づき、学習モデルのディープニューラルネットワークを学習させるための訓練データ、テストデータ、検証データなどのデータセットを作成する。サーバ10の学習部1051は、作成したデータセットに基づき学習モデルに含まれるディープニューラルネットワークの学習パラメータを深層学習により学習させる。
The control unit 104 of the server 10 executes a learning process by deep learning on the learning parameters of the deep neural network included in the learning model.
The control unit 104 of the server 10 uses the combined data as learning data and causes the learning model to learn using the second initial parameter or the second post-optimization parameter as the initial parameter.
The control unit 104 of the server 10 creates datasets such as training data, test data, and verification data for learning the deep neural network of the learning model based on the combined data. The learning unit 1051 of the server 10 uses deep learning to learn the learning parameters of the deep neural network included in the learning model based on the created data set.
なお、本開示において一例として、結合データによる学習モデルの学習の際の初期パラメータの設定において、当該結合データと類似する結合データにより学習された学習モデルの最適化後パラメータ、初期パラメータを、当該学習モデルを学習させる際の初期パラメータとして用いる例を説明したがこれに限られない。
例えば、主データによる学習モデルの学習の際の初期パラメータの設定において、当該主データと類似する主データにより学習された学習モデルの最適化後パラメータ、初期パラメータを、当該学習モデルを学習させる際の初期パラメータとして用いても良い。
In addition, as an example in this disclosure, in setting initial parameters when learning a learning model using combined data, post-optimization parameters and initial parameters of a learning model trained using combined data similar to the combined data are set for the learning model using combined data. Although an example has been described in which the parameters are used as initial parameters when learning a model, the present invention is not limited to this.
For example, when setting initial parameters when training a learning model using main data, the post-optimization parameters and initial parameters of a learning model trained using main data similar to the main data are set when the learning model is trained. It may also be used as an initial parameter.
ステップS304において、サーバ10の制御部104は、第1学習データ取得ステップにおいて取得した第1学習データと、データ特定ステップにおいて特定した第2学習データとの類似度に基づき、パラメータ取得ステップにおいて取得した第2学習パラメータを修正する修正ステップを実行する。
修正ステップは、第1学習データと第2学習データとの類似度に応じて定まる範囲の乱数に基づき、第2学習パラメータを修正するステップを実行する。
具体的に、サーバ10の制御部104は、取得した第2学習パラメータの値に対して、ステップS104において候補データを選択する際に算出した第1学習データとの類似度(距離)に応じた処理を適用しても良い。
具体的に、類似度に応じた大きさを有する乱数を、第2学習パラメータに対して加えたり引いても良い。例えば、類似度をSとして、-Sから+Sまでの範囲を有する乱数値を、第2学習パラメータに加える。
第2学習パラメータが多次元量である場合には、各次元ごとに生成した異なる乱数値を第2学習パラメータに加えても良い。
これにより、第1学習データと第2学習データとが類似している場合には、第2学習パラメータに類似したパラメータを、第1学習データの学習処理に用いる。
一方、第1学習データと第2学習データとが類似していない場合には、第2学習パラメータに乱数の影響を加えたパラメータを、第1学習データの学習処理に用いる。
これにより、第1学習データと第2学習データとの類似度に応じて、第2学習パラメータが修正される。第1学習データと第2学習データとの類似度に応じて、学習プロセスの際の第2学習パラメータが影響を与える寄与割合を制御することができる。
In step S304, the control unit 104 of the server 10 selects the first learning data acquired in the parameter acquisition step based on the similarity between the first learning data acquired in the first learning data acquisition step and the second learning data specified in the data identification step. A modification step is performed to modify the second learning parameter.
The modification step is a step of modifying the second learning parameter based on a random number in a range determined according to the degree of similarity between the first learning data and the second learning data.
Specifically, the control unit 104 of the server 10 controls the obtained second learning parameter value according to the similarity (distance) with the first learning data calculated when selecting candidate data in step S104. Processing may also be applied.
Specifically, a random number having a size depending on the degree of similarity may be added to or subtracted from the second learning parameter. For example, assuming that the similarity is S, a random value having a range from -S to +S is added to the second learning parameter.
When the second learning parameter is a multidimensional quantity, different random values generated for each dimension may be added to the second learning parameter.
Thereby, when the first learning data and the second learning data are similar, a parameter similar to the second learning parameter is used in the learning process of the first learning data.
On the other hand, if the first learning data and the second learning data are not similar, a parameter obtained by adding the influence of a random number to the second learning parameter is used in the learning process of the first learning data.
Thereby, the second learning parameter is corrected according to the degree of similarity between the first learning data and the second learning data. Depending on the degree of similarity between the first learning data and the second learning data, it is possible to control the contribution ratio that the second learning parameter influences during the learning process.
学習ステップは、修正ステップにおいて修正した第2学習パラメータに基づき初期パラメータを用いて学習モデルを学習させるステップを実行する。サーバ10の制御部104は、第2学習パラメータを初期パラメータとして学習モデルの学習処理を実行する。 In the learning step, a learning model is trained using initial parameters based on the second learning parameters modified in the modification step. The control unit 104 of the server 10 executes the learning process of the learning model using the second learning parameter as the initial parameter.
<コンピュータの基本ハードウェア構成>
図13は、コンピュータ90の基本的なハードウェア構成を示すブロック図である。コンピュータ90は、プロセッサ901、主記憶装置902、補助記憶装置903、通信IF991(インタフェース、Interface)を少なくとも備える。これらは通信バス921により相互に電気的に接続される。
<Basic hardware configuration of the computer>
FIG. 13 is a block diagram showing the basic hardware configuration of the computer 90. The computer 90 includes at least a processor 901, a main storage device 902, an auxiliary storage device 903, and a communication IF 991 (interface). These are electrically connected to each other by a communication bus 921.
プロセッサ901とは、プログラムに記述された命令セットを実行するためのハードウェアである。プロセッサ901は、演算装置、レジスタ、周辺回路等から構成される。 The processor 901 is hardware for executing an instruction set written in a program. The processor 901 includes an arithmetic unit, registers, peripheral circuits, and the like.
主記憶装置902とは、プログラム、及びプログラム等で処理されるデータ等を一時的に記憶するためのものである。例えば、DRAM(Dynamic Random Access Memory)等の揮発性のメモリである。 The main storage device 902 is for temporarily storing programs, data processed by the programs, and the like. For example, it is a volatile memory such as DRAM (Dynamic Random Access Memory).
補助記憶装置903とは、データ及びプログラムを保存するための記憶装置である。例えば、フラッシュメモリ、HDD(Hard Disc Drive)、光磁気ディスク、CD-ROM、DVD-ROM、半導体メモリ等である。 The auxiliary storage device 903 is a storage device for saving data and programs. For example, it is a flash memory, a hard disk drive (HDD), a magneto-optical disk, a CD-ROM, a DVD-ROM, a semiconductor memory, etc.
通信IF991とは、有線又は無線の通信規格を用いて、他のコンピュータとネットワークを介して通信するための信号を入出力するためのインタフェースである。
ネットワークは、インターネット、LAN、無線基地局等によって構築される各種移動通信システム等で構成される。例えば、ネットワークには、3G、4G、5G移動通信システム、LTE(Long Term Evolution)、所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(例えばWi-Fi(登録商標))等が含まれる。無線で接続する場合、通信プロトコルとして例えば、Z-Wave(登録商標)、ZigBee(登録商標)、Bluetooth(登録商標)等が含まれる。有線で接続する場合は、ネットワークには、USB(Universal Serial Bus)ケーブル等により直接接続するものも含む。
The communication IF 991 is an interface for inputting and outputting signals for communicating with other computers via a network using a wired or wireless communication standard.
The network is composed of various mobile communication systems constructed using the Internet, LAN, wireless base stations, and the like. For example, the network includes 3G, 4G, 5G mobile communication systems, LTE (Long Term Evolution), a wireless network (for example, Wi-Fi (registered trademark)) that can be connected to the Internet through a predetermined access point, and the like. When connecting wirelessly, communication protocols include, for example, Z-Wave (registered trademark), ZigBee (registered trademark), Bluetooth (registered trademark), and the like. In the case of a wired connection, the network includes a network that is directly connected using a USB (Universal Serial Bus) cable or the like.
なお、各ハードウェア構成の全部または一部を複数のコンピュータ90に分散して設け、ネットワークを介して相互に接続することによりコンピュータ90を仮想的に実現することができる。このように、コンピュータ90は、単一の筐体、ケースに収納されたコンピュータ90だけでなく、仮想化されたコンピュータシステムも含む概念である。 The computers 90 can be virtually realized by distributing all or part of each hardware configuration across multiple computers 90 and connecting them together via a network. In this way, the concept of computer 90 includes not only a computer 90 housed in a single housing or case, but also a virtualized computer system.
<コンピュータ90の基本機能構成>
コンピュータ90の基本ハードウェア構成(図13)により実現されるコンピュータの機能構成を説明する。コンピュータは、制御部、記憶部、通信部の機能ユニットを少なくとも備える。
<Basic functional configuration of computer 90>
The functional configuration of the computer realized by the basic hardware configuration (FIG. 13) of the computer 90 will be explained. The computer includes at least functional units of a control section, a storage section, and a communication section.
なお、コンピュータ90が備える機能ユニットは、それぞれの機能ユニットの全部または一部を、ネットワークで相互に接続された複数のコンピュータ90に分散して設けても実現することができる。コンピュータ90は、単一のコンピュータ90だけでなく、仮想化されたコンピュータシステムも含む概念である。 Note that the functional units included in the computer 90 can also be implemented by distributing all or part of each functional unit to a plurality of computers 90 interconnected via a network. The computer 90 is a concept that includes not only a single computer 90 but also a virtualized computer system.
制御部は、プロセッサ901が補助記憶装置903に記憶された各種プログラムを読み出して主記憶装置902に展開し、当該プログラムに従って処理を実行することにより実現される。制御部は、プログラムの種類に応じて様々な情報処理を行う機能ユニットを実現することができる。これにより、コンピュータは情報処理を行う情報処理装置として実現される。 The control unit is realized by the processor 901 reading various programs stored in the auxiliary storage device 903, loading them into the main storage device 902, and executing processing according to the programs. The control unit can implement a functional unit that performs various information processing depending on the type of program. Thereby, the computer is realized as an information processing device that performs information processing.
記憶部は、主記憶装置902、補助記憶装置903により実現される。記憶部は、データ、各種プログラム、各種データベースを記憶する。また、プロセッサ901は、プログラムに従って記憶部に対応する記憶領域を主記憶装置902または補助記憶装置903に確保することができる。また、制御部は、各種プログラムに従ってプロセッサ901に、記憶部に記憶されたデータの追加、更新、削除処理を実行させることができる。 The storage unit is realized by a main storage device 902 and an auxiliary storage device 903. The storage unit stores data, various programs, and various databases. Further, the processor 901 can secure a storage area corresponding to the storage unit in the main storage device 902 or the auxiliary storage device 903 according to the program. Further, the control unit can cause the processor 901 to execute processing for adding, updating, and deleting data stored in the storage unit according to various programs.
データベースは、リレーショナルデータベースを指し、行と列によって構造的に規定された表形式のテーブル、マスタと呼ばれるデータ集合を、互いに関連づけて管理するためのものである。データベースでは、表をテーブル、マスタ、表の列をカラム、表の行をレコードと呼ぶ。リレーショナルデータベースでは、テーブル、マスタ同士の関係を設定し、関連づけることができる。
通常、各テーブル、各マスタにはレコードを一意に特定するための主キーとなるカラムが設定されるが、カラムへの主キーの設定は必須ではない。制御部は、各種プログラムに従ってプロセッサ901に、記憶部に記憶された特定のテーブル、マスタにレコードを追加、削除、更新を実行させることができる。
また、記憶部に、データ、各種プログラム、各種データベースを記憶させることにより、本開示にかかる情報処理装置、情報処理システムが製造されたものとして捉えることができる。
A database refers to a relational database, which is used to manage a data set called a master, which is a tabular table whose structure is defined by rows and columns, in relation to each other. In a database, a table is called a table or a master, a table column is called a column, and a table row is called a record. In a relational database, you can set and associate relationships between tables and masters.
Usually, each table and each master is set with a column that serves as a primary key to uniquely identify a record, but it is not essential to set a primary key on a column. The control unit can cause the processor 901 to add, delete, or update records to a specific table or master stored in the storage unit according to various programs.
Further, by storing data, various programs, and various databases in the storage unit, the information processing device and the information processing system according to the present disclosure can be considered as manufactured.
なお、本開示におけるデータベース、マスタは、情報が構造的に規定された任意のデータ構造体(リスト、辞書、連想配列、オブジェクトなど)を含み得る。データ構造体には、データと、任意のプログラミング言語により記述された関数、クラス、メソッドなどを組み合わせることにより、データ構造体と見なし得るデータも含むものとする。 Note that the database and master in the present disclosure may include any data structure (list, dictionary, associative array, object, etc.) in which information is structurally defined. Data structures include data that can be considered as a data structure by combining data with functions, classes, methods, etc. written in any programming language.
通信部は、通信IF991により実現される。通信部は、ネットワークを介して他のコンピュータ90と通信を行う機能を実現する。通信部は、他のコンピュータ90から送信された情報を受信し、制御部へ入力することができる。制御部は、各種プログラムに従ってプロセッサ901に、受信した情報に対する情報処理を実行させることができる。また、通信部は、制御部から出力された情報を他のコンピュータ90へ送信することができる。 The communication unit is realized by a communication IF 991. The communication unit realizes a function of communicating with other computers 90 via a network. The communication unit can receive information transmitted from other computers 90 and input it to the control unit. The control unit can cause the processor 901 to execute information processing on the received information according to various programs. Further, the communication unit can transmit information output from the control unit to another computer 90.
<付記>
以上の各実施形態で説明した事項を以下に付記する。
<Additional notes>
The matters explained in each of the above embodiments are additionally described below.
(付記1)
プロセッサと、記憶部とを備えるコンピュータに実行させるためのプログラムであって、プロセッサが、時系列データである第1データを取得する第1データ取得ステップ(S101)と、第1データ取得ステップにおいて取得した第1データに基づき、複数の時系列データから時系列推移が第1データと類似する第2データを取得する第2データ取得ステップ(S104)と、第1データの時間方向において前方および後方の少なくともいずれかに第2データを結合することにより結合データを作成する結合ステップ(S105)と、結合ステップにおいて作成した結合データに基づき学習モデルを学習させる学習ステップと、を実行するプログラム。
これにより、時系列予測モデルである学習モデルを学習させる際の学習データ(結合データ)の期間範囲を第1データの期間範囲から延長することができる。より品質が高い学習モデルを作成することができる。
(Additional note 1)
A program for causing a computer comprising a processor and a storage unit to execute the program, wherein the processor acquires first data that is time series data (S101); and a first data acquisition step in which the processor acquires first data that is time series data. a second data acquisition step (S104) of acquiring second data whose time-series trends are similar to the first data from a plurality of time-series data based on the first data that has been acquired; A program that executes a combining step (S105) of creating combined data by combining second data with at least one of them, and a learning step of learning a learning model based on the combined data created in the combining step.
Thereby, the period range of learning data (combined data) when learning a learning model that is a time-series prediction model can be extended from the period range of the first data. It is possible to create learning models with higher quality.
(付記2)
プロセッサが、第1データ取得ステップにおいて取得した第1データの第1期間範囲よりも長い第3期間範囲を有する時系列データである第3データを取得する第3データ取得ステップ(S102)と、第3データ取得ステップにおいて取得した第3データの一部であり、第3期間範囲に含まれる複数の時系列データである複数の候補データを抽出する候補抽出ステップ(S103)と、を実行し、第2データ取得ステップ(S104)は、第1データと、複数の候補データとの類似度に応じて、複数の候補データから第2データを取得するステップである、付記1記載のプログラム。
これにより、第1データよりも期間範囲が長い第3期間の一部に含まれる、第1データに類似する第2データに基づき、学習モデルを学習させる際の学習データ(結合データ)の期間範囲を第1データの期間範囲から延長することができる。より品質が高い学習モデルを作成することができる。
(Additional note 2)
a third data acquisition step (S102) in which the processor acquires third data that is time series data having a third period range longer than the first period range of the first data acquired in the first data acquisition step; 3. A candidate extraction step (S103) for extracting a plurality of candidate data that is a plurality of time series data that is part of the third data acquired in the third data acquisition step and included in the third period range. The program according to supplementary note 1, wherein the second data acquisition step (S104) is a step of acquiring the second data from the plurality of candidate data according to the degree of similarity between the first data and the plurality of candidate data.
As a result, the period range of the learning data (combined data) when training the learning model based on the second data similar to the first data, which is included in a part of the third period whose period range is longer than the first data. can be extended from the period range of the first data. It is possible to create learning models with higher quality.
(付記3)
候補抽出ステップ(S103)は、第1期間範囲と略同一の期間範囲を有する複数の候補データを抽出するステップである、付記2記載のプログラム。
これにより、第1データと略同一の期間範囲を有する第2データに基づき、学習モデルを学習させる際の学習データ(結合データ)の期間範囲を第1データの期間範囲から延長することができる。より品質が高い学習モデルを作成することができる。
なお、略同一とは複数の候補データの時間方向の期間範囲が、当該候補データと第1データとの類似度を算定する程度の期間範囲であることを示し、必ずしも期間範囲が一致する必要はない。
(Appendix 3)
The program according to claim 2, wherein the candidate extraction step (S103) is a step of extracting a plurality of candidate data having a period range substantially the same as the first period range.
This makes it possible to extend the period range of the training data (combined data) from the period range of the first data when training a training model based on the second data having substantially the same period range as the first data, thereby creating a training model of higher quality.
Note that "substantially the same" refers to the time range of the multiple candidate data being a period range sufficient to calculate the similarity between the candidate data and the first data, and the period ranges do not necessarily have to be the same.
(付記4)
第2データ取得ステップ(S104)は、第1データと、複数の候補データとの間のマンハッタン距離、ユークリッド距離、コサイン類似度および相関係数の少なくともいずれか1つの距離を算定するステップと、算定された距離に基づく類似度に応じて第2データを取得するステップと、を含む、付記2記載のプログラム。
これにより、時系列予測モデルである学習モデルを学習させる際の学習データ(結合データ)の期間範囲を第1データの期間範囲から延長することができる。より品質が高い学習モデルを作成することができる。
(Additional note 4)
The second data acquisition step (S104) includes a step of calculating at least one of Manhattan distance, Euclidean distance, cosine similarity, and correlation coefficient between the first data and the plurality of candidate data; and acquiring the second data according to the degree of similarity based on the determined distance.
Thereby, the period range of learning data (combined data) when learning a learning model that is a time-series prediction model can be extended from the period range of the first data. It is possible to create learning models with higher quality.
(付記5)
候補抽出ステップ(S103)は、第3期間範囲よりも短い所定期間範囲の第1候補データを抽出するステップと、第1候補データから、第3データの時間方向において前方または後方に所定の周期期間ずつ逐次的にずらすことにより所定期間範囲に含まれる複数の候補データを抽出するステップと、を含む、付記2記載のプログラム。
これにより、第1データよりも期間範囲が長い第3期間の一部に含まれる、周期期間ごとに逐次的にずらすことにより切り出された複数の候補データのうち、第1データとより類似する第2データを取得することができる。
(Appendix 5)
The candidate extraction step (S103) includes a step of extracting first candidate data in a predetermined period range shorter than the third period range, and a predetermined cycle period forward or backward in the time direction of the third data from the first candidate data. The program according to supplementary note 2, comprising the step of extracting a plurality of candidate data included in a predetermined period range by sequentially shifting the data.
As a result, among the plurality of candidate data extracted by sequentially shifting each cycle period and included in a part of the third period having a longer period range than the first data, the candidate data that is more similar to the first data is selected. 2 data can be obtained.
(付記6)
プロセッサが、ユーザから、所定の周期期間の入力を受け付ける周期入力ステップ(S103)と、を実行し、候補抽出ステップ(S103)は、周期入力ステップにおいて入力を受け付けた周期期間に基づき、複数の候補データを抽出するステップである、付記5記載のプログラム。
これにより、ユーザは第1データのデータの種類に応じて適した周期期間(1日、1週間、1ヶ月など)に応じて、周期期間ごとに逐次的にずらして切り出された複数の候補データを抽出することができる。
(Appendix 6)
The processor executes a cycle input step (S103) in which the processor receives an input of a predetermined cycle period from the user, and a candidate extraction step (S103) selects a plurality of candidates based on the cycle period input in the cycle input step. The program according to appendix 5, which is a step of extracting data.
As a result, the user can select multiple candidate data that are sequentially shifted and cut out for each cycle period according to the cycle period (one day, one week, one month, etc.) suitable for the data type of the first data. can be extracted.
(付記7)
候補抽出ステップ(S103)は、ユーザから周期期間の入力を受けることなしに、第1データに基づき特定される周期期間に基づき、複数の候補データを抽出するステップである、付記5記載のプログラム。
これにより、ユーザから入力を受け付けることなく、第1データの特徴量等に基づき自動的に特定される周期期間(1日、1週間、1ヶ月など)に応じて、周期期間ごとに逐次的にずらして切り出された複数の候補データを抽出することができる。
(Appendix 7)
The program according to claim 5, wherein the candidate extraction step (S103) is a step of extracting a plurality of candidate data based on a periodic period specified based on the first data, without receiving input of the periodic period from a user.
This makes it possible to extract multiple candidate data that are sequentially shifted for each cyclical period (one day, one week, one month, etc.) according to a cyclical period that is automatically identified based on the features of the first data, without accepting input from the user.
(付記8)
候補抽出ステップ(S103)は、第3データ取得ステップにおいて取得した第3データのうち、第1期間範囲よりも時間方向において前方または後方のデータを除外するステップと、当該除外した第3データから複数の候補データを抽出するステップと、を含む、付記2記載のプログラム。
これにより、第3データのうち、第1データの期間範囲よりも時間方向において前方または後方のデータを含まない第2データに基づき、時系列予測モデルである学習モデルを学習させる際の学習データ(結合データ)の期間範囲を第1データの期間範囲から延長することができる。より品質が高い学習モデルを作成することができる。
例えば、第1データに基づき第1期間範囲よりも後方(未来)の事象を予測するための時系列予測モデルを構築する場合には、第3データのうち第1データの期間範囲よりも時間方向において後方(未来)のデータを学習データとして用いることは因果関係を考慮すると好適ではない。なお、第1データに基づき第1期間範囲よりも前方(過去)の事象を推論するための時系列予測モデルを構築する場合も同様である。
(Appendix 8)
The candidate extraction step (S103) includes a step of excluding data that is earlier or later in the time direction than the first period range from among the third data acquired in the third data acquisition step, and a step of excluding data that is earlier or later in the time direction than the first period range, and extracting a plurality of data from the excluded third data. The program according to supplementary note 2, including the step of extracting candidate data of.
As a result, the learning data ( The period range of the combined data) can be extended from the period range of the first data. It is possible to create learning models with higher quality.
For example, when constructing a time-series prediction model for predicting events later (future) than the first period range based on the first data, if It is not suitable to use backward (future) data as learning data in consideration of causal relationships. Note that the same applies when constructing a time-series prediction model for inferring events ahead (past) of the first period range based on the first data.
(付記9)
第1データ、第2データおよび第3データは、複数の系列を有する時系列データであり、第2データ取得ステップ(S104)は、第1データに含まれるそれぞれの系列の時系列データと、複数の候補データに含まれるそれぞれの系列の時系列データとの類似度に応じて、複数の候補データから第2データを取得するステップである、付記2記載のプログラム。
これにより、第1データ、第2データ、第3データが複数の系列を有する時系列データである場合には、系列ごとの類似度に応じて第2データを取得することができる。より品質が高い学習モデルを作成することができる。
(Appendix 9)
The program according to claim 2, wherein the first data, the second data and the third data are time series data having a plurality of series, and the second data acquisition step (S104) is a step of acquiring the second data from the plurality of candidate data according to a similarity between the time series data of each series included in the first data and the time series data of each series included in the plurality of candidate data.
As a result, when the first data, the second data, and the third data are time-series data having a plurality of series, the second data can be acquired according to the similarity of each series, thereby enabling the creation of a higher quality learning model.
(付記10)
第2データ取得ステップ(S104)は、第1データと、複数の候補データとの類似する系列の個数に応じて、複数の候補データから第2データを取得するステップである、付記9記載のプログラム。
これにより、第1データ、第2データ、第3データが複数の系列を有する時系列データである場合には、系列ごとの類似度に応じて最も類似する系列の個数が多い候補データを第2データとして取得することができる。より品質が高い学習モデルを作成することができる。
(Appendix 10)
The program according to claim 9, wherein the second data acquisition step (S104) is a step of acquiring second data from the plurality of candidate data according to the number of similar series between the first data and the plurality of candidate data.
As a result, when the first data, the second data, and the third data are time-series data having a plurality of series, the candidate data having the largest number of series similar to each other according to the similarity of each series can be obtained as the second data, and a learning model of higher quality can be created.
(付記11)
プロセッサが、ユーザから、第1データ取得ステップにおいて取得した第1データに対する拡張期間を受け付ける拡張期間受付ステップ(S105)と、を実行し、結合ステップ(S105)は、結合データの期間範囲が拡張期間に達するまで第1データの時間方向において前方および後方の少なくともいずれかに1または複数の第2データを結合するステップである、付記1記載のプログラム。
これにより、時系列予測モデルである学習モデルを学習させる際の学習データ(結合データ)の期間範囲を第1データの期間範囲から延長することができる。より品質が高い学習モデルを作成することができる。
(Appendix 11)
The processor executes an extended period acceptance step (S105) in which the processor receives an extended period for the first data acquired in the first data acquisition step from the user, and in the combining step (S105), the period range of the combined data is the extended period. The program according to supplementary note 1, which is a step of combining one or more pieces of second data at least either forward or backward in the time direction of the first data until the first data reaches .
Thereby, the period range of learning data (combined data) when learning a learning model that is a time-series prediction model can be extended from the period range of the first data. It is possible to create learning models with higher quality.
(付記12)
結合ステップ(S105)は、第1データの時間方向において前方に1または複数の第2データを結合することにより結合データを作成するステップである、付記1記載のプログラム。
これにより、時系列予測モデルである学習モデルを学習させる際の学習データ(結合データ)の期間範囲を第1データの期間範囲から延長することができる。より品質が高い学習モデルを作成することができる。
(Appendix 12)
The program according to supplementary note 1, wherein the combining step (S105) is a step of creating combined data by combining one or more pieces of second data forward in the time direction of the first data.
Thereby, the period range of learning data (combined data) when learning a learning model that is a time-series prediction model can be extended from the period range of the first data. It is possible to create learning models with higher quality.
(付記13)
結合ステップ(S105)は、第1データの時間方向において後方に1または複数の第2データを結合することにより結合データを作成するステップである、付記1記載のプログラム。
これにより、時系列予測モデルである学習モデルを学習させる際の学習データ(結合データ)の期間範囲を第1データの期間範囲から延長することができる。より品質が高い学習モデルを作成することができる。
(Appendix 13)
The program according to claim 1, wherein the combining step (S105) is a step of creating combined data by combining one or more second data items subsequent to the first data item in the time direction.
This makes it possible to extend the period range of the training data (combined data) when training a training model, which is a time-series prediction model, from the period range of the first data, thereby creating a training model of higher quality.
(付記14)
プロセッサと、メモリとを備えるコンピュータに実行される方法であって、プロセッサが、付記1から付記13のいずれかに係る発明において実行される全てのステップを実行する方法。
これにより、時系列予測モデルである学習モデルを学習させる際の学習データ(結合データ)の期間範囲を第1データの期間範囲から延長することができる。より品質が高い学習モデルを作成することができる。
(Appendix 14)
A method executed by a computer comprising a processor and a memory, wherein the processor executes all steps performed in the invention according to any one of appendices 1 to 13.
Thereby, the period range of learning data (combined data) when learning a learning model that is a time-series prediction model can be extended from the period range of the first data. It is possible to create learning models with higher quality.
(付記15)
制御部と、記憶部とを備える情報処理装置であって、制御部が、付記1から付記13のいずれかに係る発明において実行される全てのステップを実行する情報処理装置。
これにより、時系列予測モデルである学習モデルを学習させる際の学習データ(結合データ)の期間範囲を第1データの期間範囲から延長することができる。より品質が高い学習モデルを作成することができる。
(Appendix 15)
An information processing device comprising a control unit and a memory unit, wherein the control unit executes all of the steps executed in the invention according to any one of Supplementary Note 1 to Supplementary Note 13.
This makes it possible to extend the period range of the training data (combined data) when training a training model, which is a time-series prediction model, from the period range of the first data, thereby creating a training model of higher quality.
(付記16)
付記1から付記13のいずれかに係る発明において実行される全てのステップを実行する手段を備えるシステム。
これにより、時系列予測モデルである学習モデルを学習させる際の学習データ(結合データ)の期間範囲を第1データの期間範囲から延長することができる。より品質が高い学習モデルを作成することができる。
(Appendix 16)
A system comprising means for executing all steps performed in the invention according to any one of appendices 1 to 13.
Thereby, the period range of learning data (combined data) when learning a learning model that is a time-series prediction model can be extended from the period range of the first data. It is possible to create learning models with higher quality.
1 システム、10 サーバ、101 記憶部、104 制御部、106 入力装置、108 出力装置、20 ユーザ端末、201 記憶部、204 制御部、206 入力装置、208 出力装置
Reference Signs List 1 system, 10 server, 101 storage unit, 104 control unit, 106 input device, 108 output device, 20 user terminal, 201 storage unit, 204 control unit, 206 input device, 208 output device
Claims (16)
前記プロセッサが、
時系列データである第1データを取得する第1データ取得ステップと、
前記第1データ取得ステップにおいて取得した前記第1データに基づき、複数の時系列データから時系列推移が前記第1データと類似する第2データを取得する第2データ取得ステップと、
前記第1データの時間方向において前方および後方の少なくともいずれかに前記第2データを結合することにより結合データを作成する結合ステップと、
前記結合ステップにおいて作成した前記結合データに基づき学習モデルを学習させる学習ステップと、
を実行するプログラム。 A program to be executed by a computer having a processor and a storage unit,
The processor,
A first data acquisition step of acquiring first data which is time series data;
a second data acquiring step of acquiring second data having a time series transition similar to that of the first data from a plurality of time series data based on the first data acquired in the first data acquiring step;
a combining step of generating combined data by combining the second data with at least one of a forward and a backward time direction of the first data;
a learning step of learning a learning model based on the combined data created in the combining step;
A program that executes.
前記第1データ取得ステップにおいて取得した前記第1データの第1期間範囲よりも長い第3期間範囲を有する時系列データである第3データを取得する第3データ取得ステップと、
前記第3データ取得ステップにおいて取得した前記第3データの一部であり、前記第3期間範囲に含まれる複数の時系列データである複数の候補データを抽出する候補抽出ステップと、
を実行し、
前記第2データ取得ステップは、前記第1データと、前記複数の候補データとの類似度に応じて、前記複数の候補データから前記第2データを取得するステップである、
請求項1記載のプログラム。 The processor,
a third data acquisition step of acquiring third data that is time series data having a third period range that is longer than the first period range of the first data acquired in the first data acquisition step;
a candidate extraction step of extracting a plurality of candidate data that is part of the third data acquired in the third data acquisition step and is a plurality of time series data included in the third period range;
Run
The second data acquisition step is a step of acquiring the second data from the plurality of candidate data according to the degree of similarity between the first data and the plurality of candidate data.
The program according to claim 1.
請求項2記載のプログラム。 The candidate extraction step is a step of extracting the plurality of candidate data having substantially the same period range as the first period range,
The program according to claim 2.
前記第1データと、前記複数の候補データとの間のマンハッタン距離、ユークリッド距離、コサイン類似度および相関係数の少なくともいずれか1つの値を算定するステップと、
前記算定された値に基づく類似度に応じて前記第2データを取得するステップと、
を含む、
請求項2記載のプログラム。 The second data acquisition step includes:
Calculating at least one value of Manhattan distance, Euclidean distance, cosine similarity, and correlation coefficient between the first data and the plurality of candidate data;
acquiring the second data according to the degree of similarity based on the calculated value ;
including,
The program according to claim 2.
前記第3期間範囲よりも短い所定期間範囲の第1候補データを抽出するステップと、
前記第1候補データから、前記第3データの時間方向において前方または後方に所定の周期期間ずつ逐次的にずらすことにより前記所定期間範囲に含まれる複数の候補データを抽出するステップと、
を含む、
請求項2記載のプログラム。 The candidate extraction step includes:
extracting first candidate data in a predetermined period range shorter than the third period range;
extracting a plurality of candidate data included in the predetermined period range from the first candidate data by sequentially shifting the third data forward or backward by a predetermined period period in the time direction;
including,
The program according to claim 2.
ユーザから、前記所定の周期期間の入力を受け付ける周期入力ステップと、
を実行し、
前記候補抽出ステップは、前記周期入力ステップにおいて入力を受け付けた前記周期期間に基づき、前記複数の候補データを抽出するステップである、
請求項5記載のプログラム。 The processor,
a cycle input step of receiving an input of the predetermined cycle period from a user;
Run
the candidate extraction step is a step of extracting the plurality of candidate data based on the periodic period inputted in the periodic input step;
The program according to claim 5.
請求項5記載のプログラム。 The candidate extraction step is a step of extracting the plurality of candidate data based on the cycle period specified based on the first data without receiving input of the cycle period from the user.
The program according to claim 5.
前記第3データ取得ステップにおいて取得した前記第3データのうち、前記第1期間範囲よりも時間方向において前方または後方のデータを除外するステップと、
当該除外した第3データから複数の候補データを抽出するステップと、
を含む、
請求項2記載のプログラム。 The candidate extraction step includes:
excluding data that is before or after the first period range in a time direction from the third data acquired in the third data acquisition step;
extracting a plurality of candidate data from the excluded third data;
including,
The program according to claim 2.
前記第2データ取得ステップは、前記第1データに含まれるそれぞれの系列の時系列データと、前記複数の候補データに含まれるそれぞれの系列の時系列データとの類似度に応じて、前記複数の候補データから前記第2データを取得するステップである、
請求項2記載のプログラム。 The first data, the second data, and the third data are time series data having multiple series,
The second data acquisition step includes acquiring the plurality of data according to the degree of similarity between the time series data of each series included in the first data and the time series data of each series included in the plurality of candidate data. a step of acquiring the second data from candidate data;
The program according to claim 2.
請求項9記載のプログラム。 The second data acquisition step is a step of acquiring the second data from the plurality of candidate data according to the number of similar sequences between the first data and the plurality of candidate data.
The program according to claim 9.
ユーザから、前記第1データ取得ステップにおいて取得した前記第1データに対する拡張期間を受け付ける拡張期間受付ステップと、
を実行し、
前記結合ステップは、前記結合データの期間範囲が前記拡張期間に達するまで前記第1データの時間方向において前方および後方の少なくともいずれかに1または複数の前記第2データを結合するステップである、
請求項1記載のプログラム。 The processor,
an extension period receiving step of receiving, from a user, an extension period for the first data acquired in the first data acquiring step;
Run
The combining step is a step of combining one or more of the second data with at least one of a front and a rear in a time direction of the first data until a period range of the combined data reaches the extended period.
The program according to claim 1.
請求項1記載のプログラム。 The combining step is a step of creating the combined data by combining one or more pieces of the second data forward in the time direction of the first data.
The program according to claim 1.
請求項1記載のプログラム。 The combining step is a step of creating the combined data by combining one or more pieces of the second data backward in the time direction of the first data.
The program according to claim 1.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023191370A JP7457994B1 (en) | 2023-11-09 | 2023-11-09 | Program, method, information processing device, and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023191370A JP7457994B1 (en) | 2023-11-09 | 2023-11-09 | Program, method, information processing device, and system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP7457994B1 true JP7457994B1 (en) | 2024-03-29 |
Family
ID=90417694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023191370A Active JP7457994B1 (en) | 2023-11-09 | 2023-11-09 | Program, method, information processing device, and system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7457994B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014149840A (en) | 2014-03-12 | 2014-08-21 | Hitachi Ltd | Abnormality detection method and system therefor |
-
2023
- 2023-11-09 JP JP2023191370A patent/JP7457994B1/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014149840A (en) | 2014-03-12 | 2014-08-21 | Hitachi Ltd | Abnormality detection method and system therefor |
Non-Patent Citations (1)
Title |
---|
挺屋 友幹 ほか,Transformerモデルを用いた人流の時系列予測,「マルチメディア,分散,協調とモバイル(DICOMO2021)シンポジウム」論文集,一般社団法人情報処理学会,2021年,第1号,900-908頁 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210256047A1 (en) | System and method for providing technology assisted data review with optimizing features | |
US10997221B2 (en) | Intelligent question answering using machine reading comprehension | |
US10180979B2 (en) | System and method for generating suggestions by a search engine in response to search queries | |
CN110941764A (en) | Object recommendation method and device, computer equipment and storage medium | |
WO2019015631A1 (en) | Method for generating combined features for machine learning samples and system | |
US11194848B2 (en) | Method of and system for building search index using machine learning algorithm | |
US11694165B2 (en) | Key-value memory network for predicting time-series metrics of target entities | |
US20220051143A1 (en) | Machine learning system | |
JP7069029B2 (en) | Automatic prediction system, automatic prediction method and automatic prediction program | |
CN111581923A (en) | Method, device and equipment for generating file and computer readable storage medium | |
WO2018232331A1 (en) | Systems and methods for optimizing and simulating webpage ranking and traffic | |
CN105760443A (en) | Project recommending system, device and method | |
US11501334B2 (en) | Methods and apparatuses for selecting advertisements using semantic matching | |
US20220171873A1 (en) | Apparatuses, methods, and computer program products for privacy-preserving personalized data searching and privacy-preserving personalized data search training | |
US20220171874A1 (en) | Apparatuses, methods, and computer program products for privacy-preserving personalized data searching and privacy-preserving personalized data search training | |
WO2020065611A1 (en) | Recommendation method and system and method and system for improving a machine learning system | |
KR102263691B1 (en) | Method, apparatus and computer program for selecting promising content | |
US10146876B2 (en) | Predicting real-time change in organic search ranking of a website | |
CN108563648B (en) | Data display method and device, storage medium and electronic device | |
JP7457994B1 (en) | Program, method, information processing device, and system | |
JP7462254B1 (en) | Program, method, information processing device, and system | |
CN115017200B (en) | Method and device for sorting search results, electronic equipment and storage medium | |
US20240005170A1 (en) | Recommendation method, apparatus, electronic device, and storage medium | |
US20210231449A1 (en) | Deep User Modeling by Behavior | |
CN114707510A (en) | Resource recommendation information pushing method and device, computer equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20231109 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20231109 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231215 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231219 |
|
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: 20240219 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240306 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7457994 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |