(57)【要約】【課題】時系列データの分析についての説明容易化を実現すること。【解決手段】時系列データ分析装置は、第１特徴量データ群と第１内部パラメータと第１学習パラメータとに基づいて第１内部データを生成し、第１内部データと第２学習パラメータとに基づいて特徴量空間上の位置を変換し、第１変換結果と第１特徴量データ群とに基づいて第１特徴量データを再配置し、再配置結果と第３学習パラメータとに基づいて第１予測値を算出し、目的変数と第１予測値とに基づいて統計的勾配法で第１〜第３学習パラメータを最適化し、第２特徴量データ群と第２内部パラメータと最適化された第１学習パラメータとに基づいて第２内部データを生成し、第２内部データと最適化された第２学習パラメータとに基づいて特徴量空間上の位置を変換し、第２変換結果と最適化された第３学習パラメータとに基づいて第２特徴量データの重要度データを算出する。【選択図】図３
2020042645.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有し、データベースにアクセス可能な時系列データ分析装置であって、
前記データベースは、複数の特徴量を含む第１特徴量データが時系列に存在する第１特徴量データ群と、第１特徴量データ群の各々の第１特徴量データに対応する目的変数と、を、それぞれ所定数有する訓練データ集合を記憶しており、
前記プロセッサは、
前記第１特徴量データ群と、前記第１特徴量データの時刻以前の時刻の他の第１特徴量データの少なくとも一部である第１内部パラメータと、第１学習パラメータと、に基づいて、前記第１特徴量データの時刻に基づく第１内部データを前記第１特徴量データごとに生成する第１生成処理と、
前記第１生成処理によって前記第１特徴量データごとに生成された複数の第１内部データと、第２学習パラメータと、に基づいて、前記第１特徴量データの特徴量空間上での位置を変換する第１変換処理と、
前記第１変換処理による前記第１内部データごとの時系列な第１変換結果と、前記第１特徴量データ群と、に基づいて、前記第１特徴量データの各々を、前記特徴量空間での変換先の位置に再配置する再配置処理と、
前記再配置処理による再配置結果と、第３学習パラメータと、に基づいて、前記第１特徴量データ群に対応する第１予測値を算出する第１算出処理と、
前記目的変数と、前記第１算出処理によって算出された前記第１予測値と、に基づいて、統計的勾配法により、前記第１学習パラメータ、前記第２学習パラメータ、および前記第３学習パラメータを最適化する最適化処理と、
複数の特徴量を含む第２特徴量データが時系列に存在する第２特徴量データ群と、前記第２特徴量データの時刻以前の時刻の特徴量データの少なくとも一部である第２内部パラメータと、前記最適化処理によって最適化された第１学習パラメータと、に基づいて、前記第２特徴量データの時刻に基づく第２内部データを前記第２特徴量データごとに生成する第２生成処理と、
前記第２生成処理によって前記第２特徴量データごとに生成された複数の第２内部データと、前記最適化処理によって最適化された第２学習パラメータと、に基づいて、前記第２特徴量データの前記特徴量空間上での位置を変換する第２変換処理と、
前記第２変換処理による前記第２内部データごとの時系列な第２変換結果と、前記最適化処理によって最適化された第３学習パラメータと、に基づいて、前記第２特徴量データの各々についての重要度を示す重要度データを算出する重要度算出処理と、
を実行することを特徴とする時系列データ分析装置。
【請求項２】
請求項１に記載の時系列データ分析装置であって、
前記プロセッサは、リカレントニューラルネットワークを用いて、前記第１生成処理および前記第２生成処理を実行することを特徴とする時系列データ分析装置。
【請求項３】
請求項１に記載の時系列データ分析装置であって、
前記プロセッサは、
畳み込みニューラルネットワークを用いて、前記第１生成処理および前記第２生成処理を実行することを特徴とする時系列データ分析装置。
【請求項４】
請求項１に記載の時系列データ分析装置であって、
前記プロセッサは、
前記第１特徴量データ群の識別演算として、前記第１算出処理を実行することを特徴とする時系列データ分析装置。
【請求項５】
請求項１に記載の時系列データ分析装置であって、
前記プロセッサは、
前記第１特徴量データ群の回帰演算として、前記第１算出処理を実行することを特徴とする時系列データ分析装置。
【請求項６】
請求項１に記載の時系列データ分析装置であって、
前記プロセッサは、
前記重要度算出処理によって算出された重要度データと、前記第２特徴量データ群と、に基づいて、前記第２特徴量データ群に対応する第２予測値を算出する第２算出処理を実行することを特徴とする時系列データ分析装置。
【請求項７】
請求項６に記載の時系列データ分析装置であって、
前記プロセッサは、
前記第２特徴量データと前記重要度データとを関連付けて出力する出力処理を実行することを特徴とする時系列データ分析装置。
【請求項８】
プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有し、データベースにアクセス可能な時系列データ分析装置による時系列データ分析方法であって、
前記データベースは、複数の特徴量を含む第１特徴量データが時系列に存在する第１特徴量データ群と、第１特徴量データ群の各々の第１特徴量データに対応する目的変数と、を、それぞれ所定数有する訓練データ集合を記憶しており、
前記プロセッサは、
前記第１特徴量データと、前記第１特徴量データの時刻以前の時刻の他の第１特徴量データの少なくとも一部である第１内部パラメータと、第１学習パラメータと、に基づいて、前記第１特徴量データの時刻に基づく第１内部データを前記第１特徴量データごとに生成する第１生成処理と、
前記第１生成処理によって前記第１特徴量データごとに生成された複数の第１内部データと、第２学習パラメータと、に基づいて、前記第１特徴量データの特徴量空間上での位置を変換する第１変換処理と、
前記第１変換処理による前記第１内部データごとの時系列な第１変換結果と、前記第１特徴量データ群と、に基づいて、前記第１特徴量データの各々を、前記特徴量空間での変換先の位置に再配置する再配置処理と、
前記再配置処理による再配置結果と、第３学習パラメータと、に基づいて、前記第１特徴量データ群に対応する第１予測値を算出する第１算出処理と、
前記目的変数と、前記第１算出処理によって算出された前記第１予測値と、に基づいて、統計的勾配法により、前記第１学習パラメータ、前記第２学習パラメータ、および前記第３学習パラメータを最適化する最適化処理と、
複数の特徴量を含む第２特徴量データが時系列に存在する第２特徴量データ群と、前記第２特徴量データの時刻以前の時刻の特徴量データの少なくとも一部である第２内部パラメータと、前記最適化処理によって最適化された第１学習パラメータと、に基づいて、前記第２特徴量データの時刻に基づく第２内部データを前記第２特徴量データごとに生成する第２生成処理と、
前記第２生成処理によって前記第２特徴量データごとに生成された複数の第２内部データと、前記最適化処理によって最適化された第２学習パラメータと、に基づいて、前記第２特徴量データの前記特徴量空間上での位置を変換する第２変換処理と、
前記第２変換処理による前記第２内部データごとの時系列な第２変換結果と、前記最適化処理によって最適化された第３学習パラメータと、に基づいて、前記第２特徴量データの各々についての重要度を示す重要度データを算出する重要度算出処理と、
を実行することを特徴とする時系列データ分析方法。
【請求項９】
データベースにアクセス可能なプロセッサに実行させる時系列データ分析プログラムであって、
前記データベースは、複数の特徴量を含む第１特徴量データが時系列に存在する第１特徴量データ群と、第１特徴量データ群の各々の第１特徴量データに対応する目的変数と、を、それぞれ所定数有する訓練データ集合を記憶しており、
前記プロセッサに、
前記第１特徴量データと、前記第１特徴量データの時刻以前の時刻の他の第１特徴量データの少なくとも一部である第１内部パラメータと、第１学習パラメータと、に基づいて、前記第１特徴量データの時刻に基づく第１内部データを前記第１特徴量データごとに生成する第１生成処理と、
前記第１生成処理によって前記第１特徴量データごとに生成された複数の第１内部データと、第２学習パラメータと、に基づいて、前記第１特徴量データの特徴量空間上での位置を変換する第１変換処理と、
前記第１変換処理による前記第１内部データごとの時系列な第１変換結果と、前記第１特徴量データ群と、に基づいて、前記第１特徴量データの各々を、前記特徴量空間での変換先の位置に再配置する再配置処理と、
前記再配置処理による再配置結果と、第３学習パラメータと、に基づいて、前記第１特徴量データ群に対応する第１予測値を算出する第１算出処理と、
前記目的変数と、前記第１算出処理によって算出された前記第１予測値と、に基づいて、統計的勾配法により、前記第１学習パラメータ、前記第２学習パラメータ、および前記第３学習パラメータを最適化する最適化処理と、
複数の特徴量を含む第２特徴量データが時系列に存在する第２特徴量データ群と、前記第２特徴量データの時刻以前の時刻の特徴量データの少なくとも一部である第２内部パラメータと、前記最適化処理によって最適化された第１学習パラメータと、に基づいて、前記第２特徴量データの時刻に基づく第２内部データを前記第２特徴量データごとに生成する第２生成処理と、
前記第２生成処理によって前記第２特徴量データごとに生成された複数の第２内部データと、前記最適化処理によって最適化された第２学習パラメータと、に基づいて、前記第２特徴量データの前記特徴量空間上での位置を変換する第２変換処理と、
前記第２変換処理による前記第２内部データごとの時系列な第２変換結果と、前記最適化処理によって最適化された第３学習パラメータと、に基づいて、前記第２特徴量データの各々についての重要度を示す重要度データを算出する重要度算出処理と、
を実行させることを特徴とする時系列データ分析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時系列データを分析する時系列データ分析装置、時系列データ分析方法、および時系列データ分析プログラムに関する。
【背景技術】
【０００２】
ＡＩ（Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ）を実現する技術の１つである機械学習では、特徴量ベクトルから得られた予測値と実際の値（真値）の誤差が最小となるように、学習パラメータ（パーセプトロンにおける重みベクトル等）を計算することを学習と呼ぶ。学習のプロセスが完了すると、学習に用いなかったデータ（以降、テストデータと呼ぶ）から新しい予測値を計算することができる。パーセプトロンでは、重みベクトルの各要素値の大きさが、予測に寄与した因子の重要度として用いられている。
【０００３】
一方、ｄｅｅｐ  ｌｅａｒｎｉｎｇを含むニューラルネットワークは高い予測精度を実現できるが、特徴量ベクトルの各要素は複数のパーセプトロンを通過するたびに、他の要素と重み付き積和演算が実施されることから、各要素単体での重要度を知ることは原理的に困難である。このことは、医療現場においてｄｅｅｐ  ｌｅａｒｎｉｎｇを用いる場合には致命的な欠点となる。
【０００４】
ある患者を退院させるかどうかの判断に、医師がＡＩを用いることを例に説明すると、ｄｅｅｐ  ｌｅａｒｎｉｎｇを用いたＡＩは、ある患者に対して「再入院しやすい」という診断結果と共に、再入院すると判断するに至った要因を出力することができない。もし、ＡＩがその判断要因まで出力できれば、医師は、患者に対して適切な治療をおこなうことがきる。
【０００５】
下記非特許文献１の手法は特徴量の重要度を算出する機能を持たないｄｅｅｐ  ｌｅａｒｎｉｎｇなどの機械学習手法の識別結果を説明できるように、新たに線形回帰もしくはロジスティック回帰を学習させる手法である。また、ロジスティック回帰はパーセプトロンと等価な機械学習モデルであり、あらゆる分野で最も広く用いられている。たとえば、下記非特許文献２の１１９ページに示されるロジスティック回帰は、データサンプル全体について特徴量の重要度を算出する機能を持つ。非特許文献３は、３５１２次元の特徴量を構成して分析を実施する機械学習モデルを開示する。非特許文献４のＴｒａｎｓｆｏｒｍｅｒは、時系列データを扱うことのできるニューラルネットワークの１つである。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Ribeiro, Marco Tulio, Sameer Singh, and Carlos Guestrin. "Why should I trust you?: Explaining the predictions of any classifier." Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM, 2016.
【非特許文献２】Friedman J, Trevor H, Robert T. The elements of statistical learning. second edition. New York: Springer series in statistics, 2001.
【非特許文献３】Golas, Sara Bersche, et al. "A machine learning model to predict the risk of 30-day readmissions in patients with heart failure: a retrospective analysis of electronic medical records data." BMC medical informatics and decision making 18.1 (2018): 44. 22 Jun 2018
【非特許文献４】Ashish Vaswani, et al. "Attention is all you need." Advances in Neural Information Processing Systems, 2017.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
非特許文献１の手法は、時系列データ向けのｄｅｅｐ  ｌｅａｒｎｉｎｇであるＲＮＮ（ｒｅｃｕｒｒｅｎｔ  ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）に適用することができない。たとえば、入院患者の容体は日々変遷することから、時系列情報を加味せずに処理を行った場合、現実に起きる結果と予測結果が大きく乖離する可能性がある。
【０００８】
また、過去に遡って予測結果を左右した要因を明らかにすることができなければ、医師は今後の治療を改善することができない。さらに、非特許文献１の手法は線形回帰で後付け的に説明を試みているにすぎず、通常の全結合タイプのｄｅｅｐ  ｌｅａｒｎｉｎｇの説明を試みる場合でさえも、ｄｅｅｐ  ｌｅａｒｎｉｎｇが予測する際に利用している特徴量の重要度を完全に算出できる数学的な保証はない。仮に、完全に線形回帰がｄｅｅｐ  ｌｅａｒｎｉｎｇと同一の予測精度を達成できるならば、もはや、最初のｄｅｅｐ  ｌｅａｒｎｉｎｇ自体が必要ではない。非特許文献１の手法は構成概念には矛盾がある。
【０００９】
本発明は上記に鑑みてなされたものであって、時系列データについての説明の容易化を実現することを目的とする。
【課題を解決するための手段】
【００１０】
本願において開示される発明の一側面となる時系列データ分析装置は、プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有し、データベースにアクセス可能な時系列データ分析装置であって、前記データベースは、複数の特徴量を含む第１特徴量データが時系列に存在する第１特徴量データ群と、第１特徴量データ群の各々の第１特徴量データに対応する目的変数と、を、それぞれ所定数有する訓練データ集合を記憶しており、前記プロセッサは、前記第１特徴量データ群と、前記第１特徴量データの時刻以前の時刻の他の第１特徴量データの少なくとも一部である第１内部パラメータと、第１学習パラメータと、に基づいて、前記第１特徴量データの時刻に基づく第１内部データを前記第１特徴量データごとに生成する第１生成処理と、前記第１生成処理によって前記第１特徴量データごとに生成された複数の第１内部データと、第２学習パラメータと、に基づいて、前記第１特徴量データの特徴量空間上での位置を変換する第１変換処理と、前記第１変換処理による前記第１内部データごとの時系列な第１変換結果と、前記第１特徴量データ群と、に基づいて、前記第１特徴量データの各々を、前記特徴量空間での変換先の位置に再配置する再配置処理と、前記再配置処理による再配置結果と、第３学習パラメータと、に基づいて、前記第１特徴量データ群に対応する第１予測値を算出する第１算出処理と、前記目的変数と、前記第１算出処理によって算出された前記第１予測値と、に基づいて、統計的勾配法により、前記第１学習パラメータ、前記第２学習パラメータ、および前記第３学習パラメータを最適化する最適化処理と、複数の特徴量を含む第２特徴量データが時系列に存在する第２特徴量データ群と、前記第２特徴量データの時刻以前の時刻の特徴量データの少なくとも一部である第２内部パラメータと、前記最適化処理によって最適化された第１学習パラメータと、に基づいて、前記第２特徴量データの時刻に基づく第２内部データを前記第２特徴量データごとに生成する第２生成処理と、前記第２生成処理によって前記第２特徴量データごとに生成された複数の第２内部データと、前記最適化処理によって最適化された第２学習パラメータと、に基づいて、前記第２特徴量データの前記特徴量空間上での位置を変換する第２変換処理と、前記第２変換処理による前記第２内部データごとの時系列な第２変換結果と、前記最適化処理によって最適化された第３学習パラメータと、に基づいて、前記第２特徴量データの各々についての重要度を示す重要度データを算出する重要度算出処理と、を実行することを特徴とする。
【発明の効果】
【００１１】
本発明の代表的な実施の形態によれば、時系列データの分析についての説明の容易化を実現することができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１２】
【図１】図１は、時系列特徴量ベクトルと識別境界の関係を示す説明図である。
【図２】図２は、時系列データ分析システムのシステム構成例を示すブロック図である。
【図３】図３は、実施例１にかかるニューラルネットワークの構造例を示す説明図である。
【図４】図４は、時系列データ分析装置による学習および予測処理手順例を示すフローチャートである。
【図５】図５は、ニューラルネットワークの設定画面例を示す説明図である。
【図６】図６は、アウトプットパネルの表示例を示す説明図である。
【図７】図７は、Ｔｒａｎｓｆｏｒｍｅｒ（非特許文献４）に基づく識別器と実施例１にかかる時系列データ分析装置との実験結果を示す図表である。
【発明を実施するための形態】
【実施例１】
【００１３】
実施例１では、心不全で入院した患者が再入院するか否かを退院時に予測する共に再入院に寄与する因子を出力する時系列データ分析装置を例として説明する。実施例１にかかる時系列データ分析装置が出力する因子により、医師は個々の患者に適した予後指導が可能となる。このことは患者の迅速な回復、医療の質の向上に貢献すると共に加速度的に増大する国の医療費削減につながる。
【００１４】
＜時空間における特徴量ベクトルと識別面＞
図１は、時系列特徴量ベクトルと識別境界の関係を示す説明図である。図１は時刻を表す次元を１つの軸とし、他の複数の特徴（たとえば、日々の血圧）を表す次元が張る特徴量空間に患者を図示している。境界面１００は将来において再入院する患者１０１と、歳入院しない患者１０２を隔てる真の識別境界面である。ＲＮＮは境界面１００を計算できうる能力を持つが、一般に境界面１００は高次元の複雑な曲面となり、人の能力では理解することができない。
【００１５】
その一方で、境界面１００のように複雑な高次元曲面であったとしても、局所的には平面１０３であるとみなすことができる場合がある。無数のパーセプトロン（もしくはｌｏｇｉｓｔｉｃ  ｒｅｇｒｅｓｓｉｏｎ（実施例２を参照。））を使って個々の患者ごとに局所平面１０３の計算が可能であれば、それらの線形モデルの学習パラメータ（平面の傾き）の各要素値の大きさとして、予測に寄与した因子を知ることができる。実施例１にかかる時系列データ分析装置は、時系列データを処理可能なｄｅｅｐ  ｌｅａｒｎｉｎｇを用いて、個々の患者ごとに線形モデルを生成する。
【００１６】
＜システム構成例＞
図２は、時系列データ分析システムのシステム構成例を示すブロック図である。図２では、サーバ−クライアント型の時系列データ分析システム２を例に挙げて説明するが、スタンドアロン型でもよい。（Ａ）は、時系列データ分析システム２のハードウェア構成例を示すブロック図であり、（Ｂ）は、時系列データ分析システム２の機能的構成例を示すブロック図である。（Ａ）および（Ｂ）において同一構成には同一符号を付す。
【００１７】
時系列データ分析システム２は、クライアント端末２００とサーバである時系列データ分析装置２２０とがネットワーク２１０で通信可能に接続される構成である。
【００１８】
（Ａ）において、クライアント端末２００は、補助記憶装置であるＨＤＤ（ｈａｒｄ  ｄｉｓｋ  ｄｒｉｖｅ）２０１、主記憶装置であるメモリ２０２、プロセッサ２０３、キーボードやマウスである入力装置２０４、モニタ２０５を有する。時系列データ分析装置２２０は、補助記憶装置であるＨＤＤ２２１、主記憶装置であるメモリ２２２、プロセッサ２２３、キーボードやマウスである入力装置２２４、モニタ２２５を有する。なお、主記憶装置、補助記憶装置、および、図示しない可搬型の記憶媒体を総称して、記憶デバイスと称す。記憶デバイスは、ニューラルネットワーク３００およびこれらの学習パラメータを記憶する。
【００１９】
（Ｂ）において、クライアント端末２００は、クライアントデータベース（ＤＢ）２５１を有する。クライアントＤＢ２５１は、ＨＤＤ２０１やメモリ２０２などの記憶デバイスに格納される。クライアントＤＢ２５１には、テストデータ集合２５２と、予測結果２５３と、が格納される。テストデータ集合２５２は、テストデータの集合である。予測結果２５３は、予測部２６２からネットワーク２１０経由で得られたデータである。なお、サーバ−クライアント型の場合、クライアント端末２００は１台以上存在する。
【００２０】
時系列データ分析装置２２０は、学習部２６１と、予測部２６２と、サーバデータベース（ＤＢ）２６３と、を有する。学習部２６１は、ニューラルネットワーク３００を用いて、学習パラメータ２６５を出力する機能部である。
【００２１】
予測部２６２は、学習パラメータ２６５を用いて、ニューラルネットワーク３００を構築し、ニューラルネットワーク３００にテストデータが与えられることで、予測処理を実行し、予測結果２５３をクライアント端末２００に出力する機能部である。学習部２６１および予測部２６２は、ＨＤＤ２２１、メモリ２２２などの記憶デバイスに記憶されたプログラムをプロセッサ２２３に実行させることによりその機能を実現する。
【００２２】
サーバＤＢ２６３は、訓練データ集合２６４と、学習パラメータ２６５と、を格納する。訓練データ集合２６４は、時系列特徴量ベクトルｘ（ｔ、ｎ）と、目的変数Ｙ（ｎ）との組み合わせ｛ｘ（ｔ、ｎ），Ｙ（ｎ）｝により構成される訓練データの集合である。ｎは、ｎ＝｛１，２，…，Ｎ｝であり、たとえば、患者データを指定するためのインデックスである。実施例１ではＮ＝３０，０００とする。
【００２３】
ｔは、ｔ＝｛０，１，…，Ｔｎ−１｝であり、たとえば、ｎ番の患者データの取得時刻（たとえば、入院日からの週数）を表す。取得時刻の間隔は、１人の患者データで必ずしも一定間隔である必要はない。また、他の患者データと同一間隔である必要もない。取得時刻の単位（秒単位、分単位、時単位、日単位、週単位、月単位、年単位など）が異なる際には、ある１つの単位（たとえば、最小単位）に揃えた後に患者データが入力される。
【００２４】
時系列特徴量ベクトルｘ（ｔ、ｎ）∈ＲＤ（ＲＤはＤ次元の実数。Ｄは１以上の整数。）は、Ｄ次元の実数値ベクトルであり、年齢、性別、取得時刻ｔにおける投薬情報、取得時刻ｔにおける検査値などの情報を含んでいる。非特許文献３によれば、Ｄ＝３５１２次元の特徴量を構成して分析が実施されている。時系列データ分析装置２２０は、非特許文献３と同様の時系列特徴量ベクトルｘ（ｔ、ｎ）を入力にとることできる。
【００２５】
ただし、実施例１の理解の容易さを高めるため、以下のように、時系列特徴量ベクトルｘ（ｔ、ｎ）を｛年齢、性別、週ごとの白血球数［ｍｉｌｌｉｏｎ  ｃｅｌｌｓ／μｌ］｝（Ｄ＝３次元）として説明する。なお、テストデータ集合２５２は、時系列特徴量ベクトルｘ（ｔ、ｎ）として用いられなかった他の時系列特徴量ベクトルであるテストデータの集合である。テストデータとなる他の時系列特徴量を、時系列特徴量ベクトルｘ´（ｔ、ｎ）と表記する。
【００２６】
目的変数Ｙ（ｎ）は０または１の値をとる。実施例１では、たとえば、Ｙ（ｎ）がＹ（ｎ）＝１であれば、そのｎ番の患者データの患者は再入院しており、Ｙ（ｎ）がＹ（ｎ）＝０であれば再入院していないことを意味する。なお、以下の説明で、インデックスｎを区別しない場合、ｎを省略して、「時系列特徴量ベクトルｘ（ｔ）」、「目的変数Ｙ」と表記する場合がある。同様に、「時系列特徴量ベクトルｘ（ｔ、ｎ）、ｘ´（ｔ、ｎ）」を用いて算出される算出結果についても、ｎが省略される。以下、Ｄ＝３次元の時系列特徴量ベクトルｘ（１）〜ｘ（Ｔ）の行列表現を以下に例示する。
【００２７】
【数１】
2020042645.tif 000003
【００２８】
上記のように、時系列特徴量ベクトルｘ（１）〜ｘ（Ｔ）の集合は、Ｔ行Ｄ列の行列として表現される。このように時系列特徴量ベクトルｘ（１）〜ｘ（Ｔ）をまとめた行列を時系列特徴量ベクトルｘと表記する。このように、Ｔ次元の特徴量（本例では白血球数）をある１つの次元の特徴量にまとめることができ、計算効率が向上する。
【００２９】
学習パラメータ２６５は学習部２６１からの出力データであり、後述する学習パラメータ｛ＲＷｓ，Ｗ，ｗ｝を含む。学習パラメータ２６５が設定されたニューラルネットワーク３００を予測モデルと称す。
【００３０】
なお、時系列データ分析装置２２０は複数台で構成されてもよい。たとえば、負荷分散のため、時系列データ分析装置２２０が複数存在してもよい。また、時系列データ分析装置２２０は、機能ごとに複数台で構成されてもよい。たとえば、時系列データ分析装置２２０は、学習部２６１およびサーバＤＢ２６３を含む第１のサーバと、予測部２６２およびサーバＤＢ２６３を含む第２のサーバとで構成されてもよい。また、時系列データ分析装置２２０は、学習部２６１および予測部２６２を含む第１の時系列データ分析装置と、サーバＤＢ２６３を含む第２の時系列データ分析装置とで構成されてもよい。また、時系列データ分析装置２２０は、学習部２６１を含む第１のサーバと、予測部２６２を含む第２の時系列データ分析装置と、サーバＤＢ２６３を含む第３の時系列データ分析装置とで構成されてもよい。
【００３１】
＜ニューラルネットワークの構造例＞
図３は、実施例１にかかるニューラルネットワーク３００の構造例を示す説明図である。ニューラルネットワーク３００は、学習部２６１および予測部２６２で用いられる。ニューラルネットワーク３００は、時系列データ向けニューロン群３０２と、トランスフォームユニット群３０３と、リアロケーションユニット３０４と、ディシジョンユニット３０５と、インポータンスユニット３０６と、を有する。また、入力データとなる時系列特徴量ベクトルｘ（１）〜ｘ（Ｔ）の集合を入力ユニット３０１として図示した。
【００３２】
時系列データ向けニューロン群３０２は、Ｔ個の時系列データ向けニューロン３０２（１）〜３０２（Ｔ）の集合である。学習部２６１による学習時においては、時系列データ向けニューロン３０２（ｔ）は、訓練データ集合２６４の一部である時系列特徴量ベクトルｘ（ｔ）の入力を受け付ける。そして、時系列データ向けニューロン３０２（ｔ）は、下記式（１）に示すように、時系列特徴量ベクトルｘ（ｔ）と内部状態パラメータｃ（ｔ−１）とに基づいて、内部ベクトルｈ（ｔ）および内部状態パラメータｃ（ｔ）を算出する。
【００３３】
【数２】
2020042645.tif 000004
【００３４】
右辺のＲＮＮ関数は、時系列特徴量ベクトルｘ（ｔ）とともに、取得時刻（ｔ−１）以前の時系列データ向けニューロン３０２（ｔ−１）に入力された時系列特徴量ベクトルｘ（０）〜ｘ（ｔ−１）から集約された特徴量を再帰的に入力して、内部ベクトルｈ（ｔ）および内部状態パラメータｃ（ｔ）を算出する関数である。ＲＮＮ関数は、重みとなる学習パラメータＲＷｓを保持する。
【００３５】
学習パラメータＲＷｓは、取得時刻ｔ毎の時系列データ向けニューロン３０２（ｔ）に存在する学習パラメータＲＷの集合である。学習時において、学習パラメータＲＷｓの初期値はランダムに決定される。学習パラメータＲＷｓは、学習時において、時系列特徴量ベクトルｘ（ｔ）が時系列データ向けニューロン３０２（ｔ）に入力される都度更新される。学習パラメータＲＷｓは、後述する下記式（６）で最適化される。
【００３６】
内部ベクトルｈ（ｔ）∈ＲＤ´（ＲＤ´はＤ´次元の実数。Ｄ´は１以上の整数。）は、時系列特徴量ベクトルｘ（ｔ）で特定される情報に、取得時刻ｔよりも１取得時刻前の取得時刻（ｔ−１）における内部状態パラメータｃ（ｔ−１）∈ＲＤ´´（ＲＤ´´はＤ´´次元の実数。Ｄ´´は１以上の整数。）と内部状態パラメータを反映した情報である。ただし、内部状態パラメータｃ（０）は、ゼロや乱数で初期化された値である。内部ベクトルｈ（ｔ）は、後段のトランスフォームユニット群３０３に出力される。
【００３７】
一方、内部状態パラメータｃ（ｔ）は、次の取得時刻（ｔ＋１）の時系列データ向けニューロン３０２（ｔ＋１）に出力される。ただし、時系列データ向けニューロン３０２（Ｔ）は、内部状態パラメータｃ（Ｔ）を出力しない。内部状態パラメータｃ（ｔ）は、取得時刻ｔよりも１取得時刻前の取得時刻（ｔ−１）以前の時系列特徴量ベクトルｘ（１）〜ｘ（ｔ−１）までの特徴量（年齢、性別、週ごとの白血球数）の情報がＲＮＮ関数により集約されたパラメータ（ベクトル）である。内部状態パラメータｃ（ｔ）は、暗号化されたキャッシュ情報のように人間には理解不能なベクトルである。
【００３８】
なお、時系列データ向けニューロン３０２（ｔ）におけるＲＮＮ関数の演算は、ＬＳＴＭ（ｌｏｎｇ  ｓｈｏｒｔ‐ｔｅｒｍ  ｍｅｍｏｒｙ）、ＧＲＵ（Ｇａｔｅｄ  Ｒｅｃｕｒｒｅｎｔ  Ｕｎｉｔ）、Ｔｒａｎｓｆｏｒｍｅｒ（非特許文献４）、ＣＮＮ（ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）などの時系列データを扱うことのできるニューラルネットワークの演算を用いることができる。また、それらの時系列ニューラルネットワークを多層化して用いた構成をとることができる。また、時系列データ向けニューロン３０２（ｔ）の種類（Ｃｏｒｅ  ｌａｙｅｒ）と層数（Ｉｎｎｅｒ  ｌａｙｅｒ  Ｎｕｍｂｅｒ）、内部ベクトルの次元数Ｄ´は、ユーザ操作で自由に設定可能である（図５を参照。）。
【００３９】
また、予測部２６２による予測時においても、時系列データ向けニューロン３０２（ｔ）は、学習時と同様に実行可能である。なお、以降において予測時に用いる各情報には時系列特徴量ベクトルｘ´（ｔ）と同様に「´」を付す。予測時では、時系列データ向けニューロン３０２（１）〜３０２（Ｔ）はそれぞれ、テストデータ集合２５２である時系列特徴量ベクトルｘ´（１）〜ｘ´（Ｔ）の入力を受け付ける。
【００４０】
そして、時系列データ向けニューロン３０２（ｔ）は、時系列特徴量ベクトルｘ´（ｔ）と、内部状態パラメータｃ´（ｔ−１）と、学習時に得られた学習パラメータＲＷｓとを、ＲＮＮ関数に与えて、上記式（１）により、内部ベクトルｈ´（ｔ）および内部状態パラメータｃ´（ｔ）を算出する。内部ベクトルｈ´（ｔ）は、後段のトランスフォームユニット群３０３に出力される。
【００４１】
トランスフォームユニット群３０３は、Ｔ個のトランスフォームユニット３０３（１）〜３０３（Ｔ）の集合である。学習部２６１による学習時においては、トランスフォームユニット３０３（ｔ）は、下記式（２）により、内部ベクトルｈ（ｔ）の入力を受け付けて、トランスフォームベクトルｖα（ｔ）を算出する。トランスフォームベクトルｖα（ｔ）は、後段のリアロケーションユニット３０４に出力される。
【００４２】
【数３】
2020042645.tif 000005
【００４３】
上記式（２）では、アインシュタインの縮約記法を用いた。たとえば、Ｚα＝Ｘαβ・Ｙβにおいて、Ｘはα行β列の行列であり、Ｙはβ行の行列であり、Ｚはα行１列の行列（ベクトル）であることを示す。以降、演算を説明する際の式では、アインシュタインの縮約記法を用いる。また、α、βを省略する場合もある。
【００４４】
Ｗ∈ＲＤ×Ｄ´（ＲＤ×Ｄ´はＤ×Ｄ´次元の実数。）は学習パラメータであり、取得時刻ｔ毎に存在する。学習時において、学習パラメータＷの初期値はランダムに決定される。学習パラメータＷは、学習時において、内部ベクトルｈ（ｔ）がトランスフォームユニット３０３（ｔ）に入力される都度更新される。トランスフォームベクトルｖ（ｔ）は、取得時刻ｔの特徴量空間に存在する時系列特徴量ベクトルｘ（ｔ）の位置を、その目的変数Ｙの値（０，１）を区別しやすい位置に変換するためのベクトルである。
【００４５】
また、予測部２６２による予測時においても、トランスフォームユニット３０３（ｔ）は、学習時と同様に実行可能である。予測時では、トランスフォームユニット３０３（１）〜３０３（Ｔ）はそれぞれ、内部ベクトルｈ´（１）〜ｈ´（Ｔ）の入力を受け付ける。そして、トランスフォームユニット３０３（ｔ）は、内部ベクトルｈ´（ｔ）と、後述する下記式（６）で最適化された学習パラメータＷとを、上記式（２）に与えて、トランスフォームベクトルｖ´（ｔ）を算出する。トランスフォームベクトルｖ´（ｔ）は、後段のリアロケーションユニット３０４に出力される。
【００４６】
リアロケーションユニット３０４は、時系列特徴量ベクトル群をその特徴量空間において再配置する。リアロケーションユニット３０４の演算を説明するために、２つの時系列ベクトルｕ（ｔ＝１,…,Ｔ）とｖ（ｔ＝１,…,Ｔ）との間のアダマール積の計算方法を式（３）により定義する。
【００４７】
【数４】
2020042645.tif 000006
【００４８】
学習部２６１による学習時においては、リアロケーションユニット３０４は、下記式（４）により、時系列特徴量ベクトルｘ（１）〜ｘ（Ｔ）とトランスフォームベクトルｖ（１）〜ｖ（Ｔ）との入力を受け付けて、リアロケーションベクトルＲα∈ＲＤを算出する。リアロケーションベクトルＲαは、後段のディシジョンユニット３０５と、インポータンスユニット３０６と、に出力される。なお、右辺のｒα（ｔ）は、取得時刻ｔでのリアロケーションベクトルであり、トランスフォームベクトルｖ（ｔ）と時系列特徴量ベクトルｘ（ｔ）とのアダマール積である。リアロケーションベクトルＲαは、リアロケーションベクトルｒα（１）〜ｒα（Ｔ）の平均値である。
【００４９】
【数５】
2020042645.tif 000007
【００５０】
また、予測部２６２による予測時においても、リアロケーションユニット３０４は、学習時と同様に実行可能である。予測時では、リアロケーションユニット３０４は、時系列特徴量ベクトルｘ´（１）〜ｘ´（Ｔ）とトランスフォームベクトルｖ´（ｔ）〜ｖ´（ｔ）との入力を受け付ける。そして、リアロケーションユニット３０４は、時系列特徴量ベクトルｘ´（１）〜ｘ´（Ｔ）とトランスフォームベクトルｖ´（ｔ）〜ｖ´（ｔ）とを、上記式（４）に与えて、リアロケーションベクトルＲ´α∈ＲＤを算出する。リアロケーションベクトルＲ´αは、後段のディシジョンユニット３０５と、インポータンスユニット３０６と、に出力される。
【００５１】
ディシジョンユニット３０５は、学習部２６１による学習時においては、下記式（５）により、目的変数Ｙ（ｎ）に対応する予測値ｙ（ｎ）を算出する。
【００５２】
【数６】
2020042645.tif 000008
【００５３】
上記式（５）において、σはシグモイド関数、ｗ∈ＲＤは学習パラメータ、予測値ｙ（ｎ）は、再入院確率値である。学習時において、学習パラメータｗの初期値はランダムに決定される。学習パラメータｗは、学習時において、リアロケーションベクトルＲαがリアロケーションユニット３０４に入力される都度更新される。なお、複数クラスの識別タスクを解く場合には、シグモイド関数σの代わりにｓｏｆｔｍａｘ関数が用いられる。
【００５４】
また、学習部２６１は、統計的勾配法を用いて、目的変数Ｙ（ｎ）と予測値ｙ（ｎ）を、下記式（６）に与え、そのクロスエントロピーが最小化するように、学習パラメータ２６５である｛ＲＷｓ,Ｗ,ｗ｝を計算する。これにより、｛ＲＷｓ,Ｗ,ｗ｝が最適化される。学習部２６１は、最適化された｛ＲＷｓ,Ｗ,ｗ｝をサーバＤＢ２６３に格納する。最適化された｛ＲＷｓ,Ｗ,ｗ｝をニューラルネットワーク３００に適用すると学習モデルとなる。
【００５５】
【数７】
2020042645.tif 000009
【００５６】
インポータンスユニット３０６は、予測部２６２による予測時において、重要度ベクトルを算出する。インポータンスユニット３０６の演算を説明するために、ベクトルｗと時系列ベクトルｕ（ｔ＝１,…,Ｔ）との間のアダマール積の計算方法を式（７）により定義する。
【００５７】
【数８】
2020042645.tif 000010
【００５８】
インポータンスユニット３０６は、最適化された学習パラメータｗとトランスフォームベクトルｖ´（ｔ）の入力を受け付けて、上記式（７）を反映した下記式（８）により、時系列特徴量ベクトルｘ´の重要度ベクトルξα，（ｔ）（ｘ´）を算出する。重要度ベクトルξα，（ｔ）（ｘ´）の各要素が、ある取得時刻ｔにおいて、テストデータ集合２５２内のｎ番の患者データ（時系列特徴量ベクトルｘ´）における再入院予測に寄与した重要度を表す。予測部２６２は、重要度ベクトルξα，（ｔ）（ｘ´）を予測結果２５３としてクライアントＤＢ２５１に保存する。予測部２６２は、下記式（８）により、取得時刻ｔごとにロジスティックリグレッションを実行する。
【００５９】
【数９】
2020042645.tif 000011
【００６０】
上記式（８）において、トランスフォームベクトルｖ´（ｔ）は、上記式（２）のように、最適化された学習パラメータＷと内部ベクトルｈ´（ｔ）との内積により算出される。内部ベクトルｈ´（ｔ）は、上記式（１）のように、最適化された学習パラメータＲＷｓが適用されたＲＮＮ関数に、時系列特徴量ベクトルｘ´（ｔ）と１取得時刻前の内部状態パラメータｃ（ｔ−１）とを与えることにより得られる。
【００６１】
すなわち、ＲＮＮ関数は、時系列特徴量ベクトルｘ´（ｔ）とともに、取得時刻（ｔ−１）以前の時系列データ向けニューロン３０２（ｔ−１）に入力された時系列特徴量ベクトルｘ´（０）〜ｘ´（ｔ−１）から集約された特徴量を再帰的に入力して、内部ベクトルｈ´（ｔ）および内部状態パラメータｃ´（ｔ）を算出する。
【００６２】
ディシジョンユニット３０５は、予測部２６２による予測時において、式（７）で求めた重要度ベクトルξα，（ｔ）（ｘ´）を用いて、下記式（９）により、時系列特徴量ベクトルｘ´についての未知の予測値ｙ´（ｎ）を算出する。
【００６３】
【数１０】
2020042645.tif 000012
【００６４】
上記式（９）には、最適化された学習パラメータｗとトランスフォームベクトルｖ´（ｔ）とのアダマール積により算出された重要度ベクトルξα，（ｔ）（ｘ´）が用いられている。したがって、ディシジョンユニット３０５は、上記式（９）に、テストデータである時系列特徴量ベクトルｘ´（１）〜ｘ´（Ｔ）を与えることにより、最適化された学習パラメータ２６５｛ＲＷｓ，Ｗ，ｗ｝が反映されたニューラルネットワーク３００により、時系列特徴量ベクトルｘ´（１）〜ｘ´（Ｔ）についての未知の予測値ｙ´（ｎ）を算出する。
【００６５】
上記式（９）において、重要度ベクトルξα，（ｔ）（ｘ´（ｎ））は、時系列特徴量ベクトルｘ´（ｔ，ｎ）を識別する局所平面１０３のパラメータに対応する。予測部２６２は、たとえば、予測値ｙ´（ｎ）を、重要度ベクトルξα，（ｔ）（ｘ´（ｎ））と関連付けて、予測結果２５３としてクライアントＤＢ２５１に保存する。
【００６６】
＜学習および予測処理手順例＞
図４は、時系列データ分析装置による学習および予測処理手順例を示すフローチャートである。ステップＳ４０１、Ｓ４０２が学習部２６１が実行する学習フェーズであり、ステップＳ４０３〜Ｓ４０７が予測部２６２が実行する予測フェーズである。まず、学習部２６１は、サーバＤＢ２６３から訓練データ集合を読み込み（ステップＳ４０１）、学習パラメータ生成処理を実行する（ステップＳ４０２）。
【００６７】
学習パラメータ生成処理を実行する（ステップＳ４０２）では、学習部２６１は、上述したように、訓練データ集合２６４の一部である時系列特徴量ベクトルｘ（ｔ、ｎ）をニューラルネットワーク３００に与えることで、上記式（１）で内部ベクトルｈ（ｔ）および内部状態パラメータｃ（ｔ）を計算する（ステップＳ４２１）。
【００６８】
つぎに、学習部２６１は、上記式（２）でトランスフォームベクトルｖα（ｔ）を計算する（ステップＳ４２２）。つぎに、学習部２６１は、上記式（４）でリアロケーションベクトルＲαを計算する（ステップＳ４２３）。つぎに、学習部２６１は、上記式（５）で目的変数Ｙ（ｎ）に対応する予測値ｙ（ｎ）を計算する（ステップＳ４２４）。
【００６９】
そして、学習部２６１は、上記式（５）で算出された予測値ｙ（ｎ）と訓練データ集合２６４の一部である目的変数Ｙ（ｎ）とを上記式（６）に与えることで、学習パラメータ２６５である｛ＲＷｓ，Ｗ，ｗ｝を最適化する（ステップＳ４２５）。これにより、最適化された学習パラメータ｛ＲＷｓ，Ｗ，ｗ｝が生成される。そして、学習部２６１は、生成した学習パラメータ２６５をサーバＤＢ２６３に保存する（ステップＳ４２６）。
【００７０】
つぎに、予測部２６２は、クライアントＤＢ２５１からテストデータ集合２５２である時系列特徴量ベクトルｘ´（ｔ、ｎ）を読み込む（ステップＳ４０３）。つぎに、予測部２６２は、特徴量の重要度を算出する（ステップＳ４０４）。具体的には、たとえば、予測部２６２は、インポータンスユニット３０６により、最適化された学習パラメータｗとトランスフォームベクトルｖ´（ｔ）を上記式（８）に与えて、時系列特徴量ベクトルｘ´の重要度ベクトルξα，（ｔ）（ｘ´）を算出する。
【００７１】
つぎに、予測部２６２は、ディシジョンユニット３０５により、時系列特徴量ベクトルｘ´（ｔ、ｎ）と、式（７）で求めた重要度ベクトルξα，（ｔ）（ｘ´）とを、上記式（９）に与えて、未知の予測値ｙ´（ｎ）を算出する（ステップＳ４０６）。そして、予測部２６２は、算出した予測値ｙ´（ｎ）と重要度ベクトルξα，（ｔ）（ｘ´）との組み合わせを予測結果２５３として、クライアントＤＢ２５１に保存する（ステップＳ４０６）。このあと、クライアント端末２００は、予測結果２５３をモニタ２２５に表示する（ステップＳ４０７）。
【００７２】
なお、ステップＳ４０６では、時系列データ分析装置２２０は、予測結果２５３をサーバＤＢ２６３に保存してもよい。また、ステップＳ４０７では、時系列データ分析装置２２０は、予測結果２５３をクライアント端末２００に送信することで、クライアント端末２００が、予測結果２５３をモニタ２２５に表示することとしてもよい。
【００７３】
＜ニューラルネットワークの設定画面例＞
図５は、ニューラルネットワークの設定画面例を示す説明図である。ニューラルネットワークの設定画面５００は、モニタ２０５，２２５で表示可能である。設定画面５００がモニタ２０５で表示される場合には、クライアント端末２００でニューラルネットワークを設定可能であり、設定画面５００がモニタ２２５で表示される場合には、時系列データ分析装置２２０でニューラルネットワークを設定可能である。
【００７４】
ユーザは、アトリビュートパネル５０１でニューラルネットワークの詳細な設定を編集する。アトリビュートパネル５０１の「Ｉｎｎｅｒ  Ｌａｙｅｒ  Ｎｕｍｂｅｒ」は、時系列データ向けニューロン群３０２の層数である。図示したニューラルネットワーク３００では、時系列データ向けニューロン群３０２の層数は１層である。総数が増加すると、時系列データ向けニューロン群３０２が、入力ユニット３０１とトランスフォームユニット群３０３との間で、縦方向に時系列データ向けニューロン群３０２が追加される。
【００７５】
アトリビュートパネル５０１の「Ｃｏｒｅ  ｌａｙｅｒ」は、時系列データ向けニューロン群３０２の種類である。図５では、「ＲＮＮ」が設定されている。また、「Ｎｕｍｂｅｒ  ｏｆ  ｎｅｕｒｏｎｓ」は、内部ベクトルの次元数Ｄ´である。
【００７６】
ユーザは、ファイル挿入ボタン５０２を押下することで、ファイル群のリストから分析対象ファイルを選択する。これにより、訓練データ集合２６４がサーバＤＢ２６３に設定され、テストデータ集合２５２がクライアントＤＢ２５１に設定される。ユーザは、演算開始ボタン５０３を押下することで、図４に示した学習処理および予測処理が実行される。アウトプットパネル５０４は、図４に示した予測処理の予測結果２５３を表示する。
【００７７】
＜アウトプットパネル５０４の表示例＞
図６は、アウトプットパネル５０４の表示例を示す説明図である。表示画面６００は、アウトプットパネル５０４において、予測結果２５３を表示する。図６中、「Ｐｒｏｂａｂｉｌｉｔｙ」の「５７％」が予測値ｙ´（ｎ）である。ｘ１〜ｘ９は、テストデータ集合２５２である時系列特徴量ベクトルｘ´（ｔ、ｎ）を構成するＤ＝９次元の特徴量である。特徴量ｘ１〜ｘ９のパーセンテージは、重要度ベクトルξα，（ｔ）（ｘ´）の値を正規化して百分率であらわした数値である。
【００７８】
＜実験例＞
ここで、患者の日々の生化学的な検査値情報から翌日の検査値の状態を予測する例を想定する。模擬データを用いて実施例１にかかる時系列データ分析装置２２０の動作確認を行うこととする。模擬データとは、患者データの数ＮはＮ＝３８４サンプル、次元数Ｄは、Ｄ＝１１２９次元、患者データの取得時刻（たとえば、入院日からの週数）ｔの最大値ＴをＴ＝１０とする時系列特徴量ベクトルである。
【００７９】
通常、検査値情報は高々１００次元程度であるが、予測性能を確認するために約１０倍の次元数とした。各次元の特徴量は互いに相関を持ち、１次元目の特徴量は他の特徴量の平均値である。また、取得時刻Ｔにおける１次元目の特徴量が、取得時刻ｔ＝０，…，Ｔ−１までの１次元目の特徴量の平均値より高ければ１、低ければ０として目的変数Ｙを生成した。
【００８０】
図７は、Ｔｒａｎｓｆｏｒｍｅｒ（非特許文献４）に基づく識別器と実施例１にかかる時系列データ分析装置２２０との実験結果を示す図表である。図表７００において、実験は、ＡＵＣ（Ａｒｅａ  ｕｎｄｅｒ  ｃｕｒｖｅ）の尺度で１０−ｆｏｌｄ  ｃｒｏｓｓ  ｖａｌｉｄａｔｉｏｎを用いて実施された。
【００８１】
Ｔｒａｎｓｆｏｒｍｅｒ（非特許文献４）は０．７８３±０．０２７、実施例１にかかる時系列データ分析装置２２０は、０．７９０±０．０５４となった。実施例１にかかる時系列データ分析装置２２０は従来法であるＴｒａｎｓｆｏｒｍｅｒ（非特許文献４）を上回る性能を達成した。
【００８２】
このように、実施例１によれば、患者の時系列データの場合でありながら、個々の患者において、すべての取得時刻における各特徴量の重要度を算出可能となる。したがって、実施例１にかかる時系列データ分析装置２２０は、説明の容易化を高精度かつ効率的に実現することができる。
【実施例２】
【００８３】
実施例２では、回帰に分類される手法を扱うことが可能な時系列データ分析装置２２０について説明する。実施例２では、心不全で入院した患者の次の日の血圧を予測するとともに、血圧に寄与する因子を出力する例を説明する。実施例２に基づく時系列データ分析装置２２０が出力する因子により、医師は個々の患者に適した予後指導が可能となる。このことは、患者の迅速な回復に貢献するとともに、国の医療および保健費の削減につながる。なお、実施例２では実施例１との相違点に着目して説明するため、実施例１と同一内容については同一符号を付し、その説明を省略する場合がある。
【００８４】
訓練データ集合２６４は、時系列特徴量ベクトルｘ（ｔ、ｎ）と、目的変数Ｙ（ｎ）との組み合わせ｛ｘ（ｔ、ｎ），Ｙ（ｎ）｝により構成される訓練データの集合である。ｎは、ｎ＝｛１，２，…，Ｎ｝であり、たとえば、患者データを指定するためのインデックスである。実施例１ではＮ＝３０，０００とする。ｔは、ｔ＝｛０，１，…，Ｔｎ−１｝であり、たとえば、ｎ番の患者データの取得時刻（たとえば、入院日からの週数）を表す。取得時刻の間隔は、１人の患者データで必ずしも一定間隔である必要はない。また、他の患者データと同一間隔である必要もない。
【００８５】
時系列特徴量ベクトルｘ（ｔ、ｎ）∈ＲＤ（ＲＤはＤ次元の実数。Ｄは１以上の整数。）は、Ｄ次元の実数値ベクトルであり、年齢、性別、時刻ｔにおける投薬情報、時刻ｔにおける検査値などの情報を含んでいる。非特許文献３によれば、Ｄ＝３，５１２次元の特徴量を構成して分析が実施されている。実施例２は、非特許文献３と同様の時系列特徴量ベクトルｘ（ｔ、ｎ）を入力にとることできる。
【００８６】
ただし、実施例２に対する理解の容易さを高めるため、以下のように、時系列特徴量ベクトルｘ（ｔ、ｎ）を｛年齢、性別、週ごとの血圧［ｍｍＨｇ］｝（Ｄ＝３次元）として説明する。目的変数Ｙ（Ｔ，ｎ）はＴ週目の血圧である。なお、テストデータ集合２５２は、時系列特徴量ベクトルｘ（ｔ、ｎ）として用いられなかった他の時系列特徴量ベクトルであるテストデータの集合である。テストデータとなる他の時系列特徴量を、時系列特徴量ベクトルｘ´（ｔ、ｎ）と表記する。
【００８７】
実施例２にかかる時系列データ分析装置２２０は、学習フェーズおよび予測フェーズで実施例１と同様な計算を実行するが、実施例２では、ディシジョンユニット３０５は、上記式（５）に代わり、下記式（１０）を計算して、予測値ｙを求める。予測値ｙは、患者の血圧である。
【００８８】
【数１１】
2020042645.tif 000013
【００８９】
また、実施例２において、学習部２６１は、統計的勾配法を用いて、目的変数Ｙ（ｎ）と予測値ｙ（ｎ）を、下記式（６）に代わり下記式（１１）与え、そのクロスエントロピーが最小化するように、学習パラメータ２６５である｛ＲＷｓ,Ｗ,ｗ｝を計算する。これにより、｛ＲＷｓ,Ｗ,ｗ｝が最適化される。学習部２６１は、最適化された｛ＲＷｓ,Ｗ,ｗ｝をサーバＤＢ２６３に格納する。
【００９０】
【数１２】
2020042645.tif 000014
【００９１】
［１］このように、上述した実施例１および実施例２にかかる時系列データ分析装置２２０は、サーバＤＢ２６３にアクセス可能である。サーバＤＢ２６３は、複数（Ｄ個）の特徴量を含む第１特徴量データ（時系列特徴量ベクトルｘ（ｔ））が時系列（ｔ＝０〜Ｔ−１）に存在する第１特徴量データ群（ｘ（１）〜ｘ（Ｔ））と、第１特徴量データ群の各々の第１特徴量データに対応する目的変数（Ｙ）と、を、それぞれ所定数（Ｎ）有する訓練データ集合２６４を記憶する。
【００９２】
時系列データ分析装置２２０は、第１特徴量データと、第１特徴量データの時刻以前の時刻の特徴量データの少なくとも一部である第１内部パラメータ（ｃ（ｔ−１））と、第１学習パラメータ（ＲＷ）と、に基づいて、第１特徴量データの時刻に基づく第１内部データ（ｈ（ｔ））を第１特徴量データごとに生成する第１生成処理（時系列データ向けニューロン群３０２、式（１）、ステップＳ４２１）を実行する。
【００９３】
時系列データ分析装置２２０は、第１生成処理によって第１特徴量データごとに生成された複数の第１内部データ（ｈ（ｔ））と、第２学習パラメータ（Ｗ）と、に基づいて、第１特徴量データの特徴量空間上での位置を変換する第１変換処理（トランスフォームユニット群３０３、式（２）、ステップＳ４２２）を実行する。
【００９４】
時系列データ分析装置２２０は、第１変換処理による第１内部データごとの時系列な第１変換結果（トランスフォームベクトルｖ（ｔ））と、第１特徴量データ群（ｘ（１）〜ｘ（Ｔ））と、に基づいて、第１特徴量データの各々を、特徴量空間での変換先の位置に再配置する再配置処理（リアロケーションユニット３０４、式（４）、ステップＳ４２３）を実行する。
【００９５】
時系列データ分析装置２２０は、再配置処理による再配置結果（リアロケーションベクトルＲ）と、第３学習パラメータ（ｗ）と、に基づいて、第１特徴量データ群に対応する第１予測値（ｙ）を算出する第１算出処理（ディシジョンユニット３０５、（式（５）、ステップＳ４２４）を実行する。
【００９６】
時系列データ分析装置２２０は、目的変数（Ｙ）と、第１算出処理によって算出された第１予測値（ｙ）と、に基づいて、統計的勾配法により、第１学習パラメータ（ＲＷ）、第２学習パラメータ（Ｗ）、および第３学習パラメータ（ｗ）を最適化する最適化処理（式（６）、ステップＳ４２５）を実行する。
【００９７】
時系列データ分析装置２２０は、複数（Ｄ個）の特徴量を含む第２特徴量データが時系列（ｔ＝０〜Ｔ−１）に存在する第２特徴量データ群（ｘ´（１）〜ｘ´（Ｔ））と、第２特徴量データの時刻以前の時刻の特徴量データの少なくとも一部である第２内部パラメータ（ｃ´（ｔ−１））と、最適化処理によって最適化された第１学習パラメータ（ＲＷ）と、に基づいて、第２特徴量データの時刻に基づく第２内部データ（ｈ´（ｔ））を第２特徴量データごとに生成する第２生成処理（時系列データ向けニューロン群３０２、式（１）、ステップＳ４０４）を実行する。
【００９８】
時系列データ分析装置２２０は、第２生成処理によって第２特徴量データごとに生成された複数の第２内部データ（ｈ´（ｔ））と、最適化処理によって最適化された第２学習パラメータ（Ｗ）と、に基づいて、第２特徴量データの特徴量空間上での位置を変換する第２変換処理（３０３、式（２）、ステップＳ４０４）を実行する。
【００９９】
時系列データ分析装置２２０は、第２変換処理による第２内部データごとの時系列な第２変換結果（トランスフォームベクトルｖ´（ｔ））と、最適化処理によって最適化された第３学習パラメータ（ｗ）と、に基づいて、第２特徴量データの各々についての重要度を示す重要度データ（ξ）を算出する重要度算出処理（３０６、式（８）、ステップＳ４０４）を実行する。
【０１００】
これにより、第２特徴量データごとの重要度を特定することができる。したがって、どの特徴量がどの時点でどの程度重要であるという説明が可能となる。このように、説明の容易化を実現することができる。また、特徴量空間において識別可能な境界面１００が複雑な高次元曲面であったとしても、局所的には平面１０３であるとみなすことにより、説明の容易化を高精度かつ効率的に実現することができる。
【０１０１】
［２］上記［１］の時系列データ分析装置２２０は、リカレントニューラルネットワークを用いて、第１生成処理および第２生成処理を実行してもよい。
【０１０２】
これにより、リカレントニューラルネットワークは、一般に人の能力では理解することができない高次元の複雑な境界面１００を計算することができ、説明の容易化を高精度かつ効率的に実現することができる。
【０１０３】
［３］上記［１］の時系列データ分析装置２２０は、畳み込みニューラルネットワークを用いて、第１生成処理および第２生成処理を実行してもよい。
【０１０４】
これにより、既存のニューラルネットワークを活用して第２特徴量データごとの重要度を特定することができる。したがって、時系列データ分析装置２２０の構築が容易となる。
【０１０５】
［４］上記［１］の時系列データ分析装置２２０は、第１特徴量データ群の識別演算として、第１算出処理を実行してもよい。
【０１０６】
これにより、テストデータの時系列を考慮してテストデータを分類することができる。たとえば、テストデータで特定される患者が再入院するか否か、または、再入院するとすればいつなのかといった予測精度が向上し、医師は個々の患者に適した予後指導が可能となる。
【０１０７】
［５］上記［１］の時系列データ分析装置２２０は、第１特徴量データ群の回帰演算として、第１算出処理を実行してもよい。
【０１０８】
これにより、テストデータの経時的な変化を予測することができる。たとえば、テストデータで特定される患者の血圧が将来どの時点でどの程度の値となるかといった予測精度が向上し、医師は個々の患者に適した予後指導が可能となる。
【０１０９】
［６］上記［１］の時系列データ分析装置２２０は、重要度算出処理によって算出された重要度データ（ξ）と、第２特徴量データ群と、に基づいて、第２特徴量データ群に対応する第２予測値（ｙ´）を算出する第２算出処理（３０５、（式（９））を実行してもよい。
【０１１０】
これにより、第２特徴量データ群の各第２特徴量データに寄与した重要度がどのくらいであるかを相対的に特定することができる。したがって、時系列データ分析装置２２０は、どの第２特徴量データが原因でそのような予測結果（第２予測値）がいつごろ発生するかを予測することができる。たとえば、白血球数の重要度が他の第２特徴量データよりも高い時点で再入院との予測結果が初めて出現した場合、再入院に寄与した特徴量が白血球数であることがわかる。したがって、医師は、当該時点までに白血球数が低下するような予後指導や処理を事前に施すことが可能となる。また、重要度データを用いることで、第２算出処理の演算効率の向上を図ることができる。
【０１１１】
［７］上記［６］の時系列データ分析装置２２０は、第２特徴量データと重要度データとを関連付けて出力する出力処理を実行してもよい。これにより、医師は、どの第２特徴量データが第２予測値に影響を与えているかを確認することができる。
【０１１２】
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。たとえば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。
【０１１３】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、たとえば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
【０１１４】
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置、又は、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カード、ＳＤカード、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）の記録媒体に格納することができる。
【０１１５】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
【符号の説明】
【０１１６】
ＲＷｓ，Ｗ，ｗ，２６５  学習パラメータ
２  時系列データ分析システム
１００  境界面
２００  クライアント端末
２２０  時系列データ分析装置
２５１  クライアントＤＢ
２５２  テストデータ集合
２５３  予測結果
２６１  学習部
２６２  予測部
２６３  サーバＤＢ
２６４  訓練データ集合
３００  ニューラルネットワーク
３０１  入力ユニット
３０２  時系列データ向けニューロン群
３０３  トランスフォームユニット群
３０４  リアロケーションユニット
３０５  ディシジョンユニット
３０６  インポータンスユニット
【図１】
2020042645.tif 000015
【図２】
2020042645.tif 000016
【図３】
2020042645.tif 000017
【図４】
2020042645.tif 000018
【図５】
2020042645.tif 000019
【図６】
2020042645.tif 000020
【図７】
2020042645.tif 000021