Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7804319B2 - 時系列分類装置、時系列分類プログラム及び時系列分類方法 - Google Patents
[go: Go Back, main page]

JP7804319B2 - 時系列分類装置、時系列分類プログラム及び時系列分類方法 - Google Patents

時系列分類装置、時系列分類プログラム及び時系列分類方法

Info

Publication number
JP7804319B2
JP7804319B2 JP2021214286A JP2021214286A JP7804319B2 JP 7804319 B2 JP7804319 B2 JP 7804319B2 JP 2021214286 A JP2021214286 A JP 2021214286A JP 2021214286 A JP2021214286 A JP 2021214286A JP 7804319 B2 JP7804319 B2 JP 7804319B2
Authority
JP
Japan
Prior art keywords
time series
value
fms
event
minimum
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021214286A
Other languages
English (en)
Other versions
JP2023097910A (ja
Inventor
ウダイ キラン ラゲ
有隆 渡部
ラヴィクマール ペニュゴンダ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Aizu
Original Assignee
University of Aizu
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Aizu filed Critical University of Aizu
Priority to JP2021214286A priority Critical patent/JP7804319B2/ja
Publication of JP2023097910A publication Critical patent/JP2023097910A/ja
Application granted granted Critical
Publication of JP7804319B2 publication Critical patent/JP7804319B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Complex Calculations (AREA)

Description

特許法第30条第2項適用 (1)令和3年7月11日に https://ieeexplore.ieee.org/document/9494521にて発表。 (2)令和3年7月12日に IEEE International Conference on Fuzzy Systems(FUZZ-IEEE)2021にて発表。
本発明は、時系列分類装置、時系列分類プログラム及び時系列分類方法に関する。
現実世界では様々な時系列(または時系列データ)が生成される。例えば、ECGデータ(心電図データ)などである。時系列(time series)とは、ある現象の時間的な変化を、連続的に(または一定間隔をおいて不連続に)観測して得られた値の系列(一連の値)のことをいう。例えば、統計学や信号処理で時間経過に従って計測されるデータ列であり、通常、一定のある時間間隔で測定される(Wikipediaより転載)。
このような時系列を分類することは重要なタスクである。例えば、後述する図2、図3の実際の時系列データTR_TSDBに示すとおり、16個の時系列ts1~ts16は、タイムスタンプ1~10の10個のイベント値をそれぞれ持つ。そして、16個の時系列は8個ずつ2つのクラスCL(CL=1及びCL=2)に分類される。
上記16個の時系列を訓練データとして持つ分類モデル(分類装置)が与えられた場合、時系列分類装置は、モデルの訓練データに基づいてテストの(分類対象の)時系列を2つのクラスのいずれかに分類する。前述のECGデータの場合、様々な心疾患のECGデータを訓練時系列とする分類装置が、患者のECGデータの時系列をいずれかの心疾患に分類する。
従来の時系列分類装置は、最短ユークリッド距離法、RNN、LSTM、GRU(Recurrent neural network、Long Short Term Memory、Gated recurrent unit、それぞれマシンラーニングの一つ)などがある。
Fuzzy Classification of Time Series Data, Penugonda Ravikumar, V. Susheela Devi, published on October 8, 2013, 2013 IEEE-FUZZ Weighted Feature-based Classification of Time Series Data, Penugonda Ravikumar, V. Susheela Devi, published on January 15, 2015, 2014 IEEE-CIDM A Novel Parameter-Free Energy Efficient Fuzzy Nearest Neighbor Classifier for Time Series Data, Penugonda Ravikumar, R. Uday Kiran, et.al., published July 11, 2021, 2021 FUZZ-IEEE
最短ユークリッド距離法は、テスト時系列との間のユークリッド距離が最短の訓練データを検出し、テスト時系列を検出した訓練データのクラスに分類する。
しかし、この方法では、テスト時系列の全イベント値と全訓練データの時系列の全イベント値とのユークリッド距離をそれぞれ計算する必要があるので、訓練データの時系列の数及び各時系列のイベント値の数が多いと計算量が膨大になる。また、テスト時系列のN個(前述の10個)のタイムスタンプのイベント値に最も類似するN個のイベント値を持つ訓練データを検出するので、分類精度は高くない。なぜなら、このような最短ユークリッド距離法は、訓練データの複数の時系列のイベント値の分布を考慮していないからである。
更に、マシンラーニングは、なぜその分類に決定したかを説明できないブラックボックス問題があり、パラメータが膨大で長時間の計算が必要であり、高価である。
従来の時系列分類方法は、時系列内のイベント値のファジーな性質(fuzzy nature of the items within a time series)を考慮していない。すなわち、各クラスに属する複数の時系列は各タイムスタンプにおいて異なるイベント値を持ち、各タイムスタンプの異なるイベント値は所定の範囲内または分布内の値である。従来の最短ユークリッド距離法では、訓練データの時系列が各タイムスタンプにおいて単一のイベント値を持つ。そのため、時系列分類装置の精度に限界がある。
そこで、本実施の形態の第1の側面の目的は、計算量が少なく低コストの計算方法で高精度に分類する時系列分類装置、時系列分類プログラム及び時系列分類方法を提供することにある。
本実施の形態の第1の側面は、メモリと、前記メモリにアクセスするプロセッサとを有し、
前記プロセッサは、
(1)クラスがそれぞれラベリングされた複数の時系列を有する実訓練時系列データをクラス別に分割し、
(2)前記分割した各クラスの複数の時系列をそれぞれ有する各クラスの実訓練時系列データを、前記複数の時系列の各タイムスタンプのイベント値の最小値と、最大値と、前記最小値及び最大値の間の代表値をそれぞれ有する最小値時系列と、最大値時系列と、代表値時系列を有する各クラスの代表訓練時系列データにそれぞれ圧縮し、
(3)分類対象のテスト時系列の複数のタイムスタンプのイベント値それぞれに対する複数のファジーメンバーシップ値(以下FMS値と称する。)を、前記各クラスの代表訓練時系列データに基づいて、クラス毎に算出し、
(4)前記複数のタイムスタンプのFMS値の平均値が最小のクラスを、前記テスト時系列のクラスに分類し、
前記(3)の処理で、前記テスト時系列のイベント値が、
前記最小値時系列のイベント値以下または前記最大値時系列のイベント値以上の場合、最大FMS値を、
前記代表値時系列のイベント値と等しい場合、最小FMS値を、
前記最小値時系列のイベント値から前記代表値時系列のイベント値の間の場合、前記テスト時系列のイベント値の増加に対応して前記最大FMS値及び前記最小FMS値の間の第1FMS値から最小FMS値に減少する第2FMS値を、
前記代表値時系列のイベント値から前記最大値時系列のイベント値の間の場合、前記テスト時系列のイベント値の増加に対応して前記最小FMS値から前記最小FMS値及び前記最大FMS値の間の第3FMS値に増加する第4FMS値を、
前記テスト時系列のイベント値のFMS値にそれぞれ算出する、時系列分類装置である。
第1の側面によれば、時系列の分類を計算量が少なく低コスト且つ高精度に行うことができる。
本実施の形態における時系列分類装置の構成を示す図である。 クラスラベルCL=2に対応付けられた実際の訓練時系列データTR_TSDB(CL=2)とテストデータの時系列データTST_TSDBを示す図である。 クラスラベルCL=1に対応付けられた実際の訓練時系列データTR_TSDB(CL=1)とテストデータの時系列データTST_TSDBを示す図である。 図2のクラスCL2の時系列ts1~ts8とテスト時系列tts17をプロットしたグラフを示す図である。 図3のクラスCL1の時系列データts9~ts16とテスト時系列tts17をプロットしたグラフを示す図である。 本実施の形態における時系列分類装置によるテストデータのテスト時系列の分類方法を示すフローチャート図である。 代表訓練時系列データRP_TSDBの生成処理S2の第1の例のフローチャートを示す図である。 処理S3のフローチャートを示す図である。 クラス2(cl2)の代表訓練時系列データRP_TSDB2の時系列とテスト時系列tts17の例を示す図である。 クラス1(cl1)の代表訓練時系列データRP_TSDB1の時系列とテスト時系列tts17の例を示す図である。 FMS関数μの第1の例を示す図である。 ユーザが与えるα、Δがα=0.5、Δ=0.1の場合のFMS値を算出するFMS関数μを示す図である。 テスト時系列ts17とクラスCL=2の代表訓練時系列データの5つの時系列ts_min_2, ts_β_2, ts_mean_2, ts_Γ_2, ts_max_2をプロットしたグラフの図である。 テスト時系列ts17とクラスCL=1の代表訓練時系列データの5つの時系列ts_min_2, ts_β_2, ts_mean_2, ts_Γ_2, ts_max_2をプロットしたグラフの図である。 代表訓練時系列データRP_TSDBの生成方法の第2の例のフローチャートを示す図である。 図15の第2の例におけるFMS関数μを示す図である。
図1は、本実施の形態における時系列分類装置の構成を示す図である。時系列分類装置1は、サーバ、クライアント端末、パーソナルコンピュータ、タブレット端末、スマートフォンなどのコンピュータである。時系列分類装置1は、プロセッサ10と、メインメモリ12と、ネットワークインタフェース14と、ストレージ20~26と、それらを接続するバス28を有する。ストレージには、時系列分類プログラム20、実訓練時系列データ22、クラス別の実訓練時系列データから生成された代表訓練時系列データ24、分類対象のテスト時系列データ26が格納される。ネットワークインタフェース14は、ネットワークNWを介して複数のクライアント端末装置30,32と接続可能である。
時系列分類プログラム20は、メインメモリ12内に展開され、プロセッサ10により実行される。プロセッサ10が、時系列分類プログラム20を実行することで、実訓練時系列データ22から代表訓練時系列データ24を生成し、テスト時系列データ26の各テスト時系列を分類する。
単変数の時系列tsidは、ある時間間隔で発生するイベント値の順番に収集されたものである。つまり、時系列tsidは以下のように表される。
tsid={v1, v2, ... vc}
ここで、vp (1≦p≦c)は、タイムスタンプpのイベント値を表す。時系列の長さ|tsid|は、イベント値vpの合計数cを表す。
時系列データTSDBは、複数の時系列の集合である。つまり以下のとおりである。
TSDB={ts1, ts2, ... tsk}, k≧1
時系列データのサイズ|TSDB|は、時系列データTSDB内に存在する時系列tsidの合計数kである。|TSDB|=k
以下のCLは、分類ラベル(クラスラベル)の集合である。nはクラス数である。
CL={CL1, CL2, ... CLn}, n≧1
時系列分類において、時系列データTSDBの要素である時系列tsidそれぞれは、分類ラベル(クラスラベル)clkまたはclk(1≦k≦n)に対応付けられる。
図2は、クラスラベルCL=2に対応付けられた実際の訓練時系列データTR_TSDB(CL=2)とテストデータの時系列データTST_TSDBを示す図である。図3は、クラスラベルCL=1に対応付けられた実際の訓練時系列データTR_TSDB(CL=1)とテストデータの時系列データTST_TSDBを示す図である。図2、3の訓練時系列データTR_TSDB(CL=2)、TR_TSDB(CL=1)は、図1の実訓練時系列データTR_TSDBであり、それぞれ8つの時系列ts1-ts8、ts9-ts16を有する。各時系列tsは時系列IDとして1~16が与えられる。図2、3のテストデータの時系列データTST_TSDBは1つのテスト時系列tts17のみが示される。
図2の訓練時系列データTR_TSDB(CL=2)内の先頭の時系列TS1は以下のとおりである。
ts1:{10,9,8,8,7,6.9,6,6,4,3.8}:2
ここで、ts1は時系列であり、{10,9,8,8,7,6.9,6,6,4,3.8}は昇順のタイムスタンプのイベント値列である。また、この時系列のサイズは、|tsid|=|{10,9,8,8,7,6.9,6,6,4,3.8}|=10である。つまり、図2の先頭の時系列は10個のイベント値を含む。他の時系列ts2~ts16及びテスト時系列tts17も同様である。さらに、訓練時系列データTR_TSDB(CL=2)とTR_TSDB(CL=1)のサイズは|TSDB|=16、クラスラベルの集合はCL={1,2}である。
図4は、図2のクラスCL2の時系列ts1~ts8とテスト時系列tts17をプロットしたグラフを示す図である。また、図5は、図3のクラスCL1の時系列データts9~ts16とテスト時系列tts17をプロットしたグラフを示す図である。図4、5共に、横軸がタイムスタンプ1~10に、縦軸が各タイムスタンプのイベント値にそれぞれ対応する。また、テストデータのテスト時系列tts17は破線で示され、訓練データの時系列ts1~ts16は実線で示される。図4のクラスラベルCL2の訓練時系列データの時系列ts1~ts8(実線)と、図5のクラスラベルCL1の訓練時系列データの時系列ts9~ts16(実線)とは、グラフ上にプロットすると明らかに異なる領域に現れる。そして、図4、図5内に示したとおり、テストデータのテスト時系列tts17(破線)は、クラスラベルCL2の訓練時系列データの時系列ts1~ts8(実線)に類似することが視覚的には確認される。
但し、実社会では、時系列分類モデルを構成する訓練時系列の数は膨大であり、更に、クラスラベルの数も多数である。そして、各クラスラベルに属する訓練時系列データの時系列のイベント値の領域は複雑に近似することが想定される。
前述したとおり、従来の最短ユークリッド距離法では、テストデータのテスト時系列の全イベント値と訓練時系列データの全時系列の全イベント値とのユークリッド距離をそれぞれ計算する必要があるので、訓練時系列データの時系列の数及び各時系列のイベント値の数が多いと計算量が膨大になる。
また、テストデータのテスト時系列のN個(前述の10個)のタイムスタンプのイベント値に最も類似するN個のイベント値を持つ訓練時系列を検出するので、分類精度は高くない。なぜなら、最短ユークリッド距離法は、訓練時系列データのイベント値の分布を考慮していないからである。例えば、図4では、訓練時系列データのある時系列は他の時系列のイベント値と大きく異なるイベント値を有する。その場合、全イベント値のユークリッド距離の合計または平均は、訓練時系列データの分布から大きく外れたテスト時系列のイベント値に基づいて非常に大きな値を取ることがあり、そのような場合誤った分類が行われる場合がある。
図6は、本実施の形態における時系列分類装置によるテストデータのテスト時系列の分類方法を示すフローチャート図である。図1に示したプロセッサは、時系列分類プログラム20を実行して、以下の処理を実行する。
即ち、プロセッサ10は、複数クラスに分類された実訓練時系列データTR_TSDBを取得する(S1)。実訓練時系列データTR_TSDBは、例えば図2、図3に示した時系列データTR_TSDB(CL=2)、TR_TSDB(CL=1)である。実訓練時系列データTR_TSDBは、実際に取得された時系列の集合であり、時系列分類モデルの訓練時系列データである。
次に、プロセッサ10は、各クラスの実訓練時系列データTR_TSDBを各クラスの代表訓練時系列データRP_TSDBにそれぞれ圧縮(変換)する(S2)。代表訓練時系列データRP_TSDBは、各クラスの実訓練時系列データTR_TSDBに含まれる複数の時系列のタイムスタンプのイベント値の最小値min、第1パーセンタイルβ、代表値(平均値、中央値、最頻値、ミッドレンジ等)、第2パーセンタイルΓ、最大値maxの時系列を有する時系列データである。最小値、第1パーセンタイル、代表値、第2パーセンタイル、最大値は、複数の訓練時系列の各タイムスタンプのイベント値の分布を表す。詳細は後述する。
そして、プロセッサ10は、テスト時系列データTST_TSDBのテスト時系列について、当該テスト時系列のイベント値に対するファジーメンバーシップ値(以下FMS値と称する。)を、複数クラスの代表訓練時系列データそれぞれに基づいて算出する(S3)。即ち、テスト時系列の各イベント値に対して、クラス数と同じ数のFMS値が算出される。処理S3では、更にテスト時系列の各イベント値に対するFMS値の平均値がFMS距離FMSDとしてクラス別に算出される。
具体的には、代表訓練時系列データの最小値未満、最小値、第1パーセンタイル、代表値、第2パーセンタイル、最大値、最大値超にはそれぞれのファジーメンバーシップ値FMS_Vが割り当てられる。例えば、最小値未満及び最大値超には最大FMS値、FMS_V=1.0が、代表値には最小FMS値、FMS_V=0が、最小値には最大FMS値と最小FMS値の間の第1FMS値、FMS_V=α=0.5を、最大値には最大FMS値と最小FMS値の間の第2FMS値、FMS_V=Δ=0.5などが割り当てられる。
FMS値FMS_Vは0~1.0に正規化された値が好ましいが、代表値のFMS_Vが最小FMS値、最小値未満及び最大値超のFMS_Vが最大FMS値、最小値及び最大値のFMS_Vが最小FMS値と最大FMS値の間の値であればよい。詳細は図9、10等で説明する。そして、テスト時系列のイベント値に対するFMS値FMS_Vが、代表訓練時系列データと上記割り当てられたFMS値に基づいて算出される。詳細は図8で説明する。
その後、プロセッサ10は、テスト時系列について、FMS値の平均が最小のクラスを、テスト時系列のクラスと決定する(S4)。FMS値が各タイムスタンプのイベント値の分布を考慮した値である。従って、上記のFMS値の平均値が最小のクラスと決定する方法は、実訓練時系列データのファジーな性質を考慮した方法である。
図7は、代表訓練時系列データRP_TSDBの生成処理S2の第1の例のフローチャートを示す図である。時系列分類装置のプロセッサ10は、時系列分類プログラム20を実行し、以下の代表訓練時系列データRP_TSDBの生成処理S2を行う。
プロセッサ10は、実訓練時系列データTR_TSDBを取得する(S21)。そして、プロセッサは、各クラスの実訓練時系列データTR_TSDBについて、以下の処理S23-S25を実行する(S22-S26)。
あるクラスの実訓練時系列データTR_TSDBは複数の時系列tsを含む。プロセッサは、あるクラスの複数の時系列tsについて、各タイムスタンプのイベント値vの最小値min、第1パーセンタイルβ、代表値(平均値、中央値、最頻値、ミッドレンジ等)のうち例えば平均値mean、第2パーセンタイルΓ、最大値maxを算出する(S23-S25)。平均値meanは代表値のいずれでも良い。本実施の形態では代表値の例として平均値meanを利用する。全てのクラスの実訓練時系列データについて、処理S23-S25が行われる。その結果、全てのクラスの実訓練時系列データTR_TSDBそれぞれに含まれる時系列の各タイムスタンプでのイベント値の最小値、第1パーセンタイル、平均値、第2パーセンタイル、最大値が算出される。
具体的に説明する。実訓練時系列データTR_TSDBの各クラスclkの実訓練時系列データをTSDBclkとする。以下のδを利用者が特定する統計的パラメータとする。
δ={minimum, β-percentile, mean, Γ-percentile, maximum}
プロセッサは、処理S24を実行することで、各クラスの統計的パラメータδを算出する。
プロセッサは、各クラスの統計的パラメータδを使用して、膨大な数の時系列tsをそれぞれ含む各クラスclkの実訓練時系列データTSDBclkを、小さな集合の代表訓練時系列データRP_TSDB(^TSDBclk(^はTSDBclkの上にある記号))に圧縮(または変換)する。
^TSDBclk={tsmin clk, tsβ clk, tsmean clk, tsΓ clk, tsmax clk
上記の要素tsmin clk, tsβ clk, tsmean clk, tsΓ clk, tsmax clkは、クラスclkの時系列データでそれぞれ計算したイベント毎のまたはタイムスタンプ毎のminimum, β-percentile, mean, Γ-percentile, maxをそれぞれ表す。
クラスclkの実訓練時系列データTSDBclkから代表訓練時系列データ^TSDBclkに圧縮(または変換)する数式は以下のとおりである。
ここで、tsid.viは時系列tsidのタイムスタンプiでのイベント値viを表す。また、第1パーセンタイルβ-percentileと第2パーセンタイルΓ-percentileは、利用者から与えられるパーセンタイルである。利用者はイベント値の分布に基づいて第1、第2パーセンタイルを設定する。式(1)は、最小値の時系列ts_min_clkは、クラスclkの実訓練時系列データTSDB clkに属する全ての時系列tsidのタイムスタンプiでのイベント値の最小値を、全タイムスタンプi=1~i=|tsid|について集めた集合であることを意味する。他の式(2)~(5)も同様である。
図9は、クラス2(cl2)の代表訓練時系列データRP_TSDB2の時系列とテスト時系列tts17の例を示す図である。図10は、クラス1(cl1)の代表訓練時系列データRP_TSDB1の時系列とテスト時系列tts17の例を示す図である。この2つの代表訓練時系列データは、図2、図3のクラス2の実訓練時系列データTR_TSDB(CL=2)、クラス1の実訓練時系列データTR_TSDB(CL=1)からそれぞれ算出される。
なお、図9内の時系列{ts_min_2, ts_β_2, ts_mean_2, ts_Γ_2, ts_max_2}は、クラスclk=cl2の{tsmin clk, tsβ clk, tsmean clk, tsΓ clk, tsmax clk}に対応する。図10内の時系列{ts_min_1, ts_β_1, ts_mean_1, ts_Γ_1, ts_max_1}も同様である。
例えば、図9の時系列ts_min_2のタイムスタンプ1のイベント値9.5は、図2の実訓練時系列データTR_TSDB(CL=2)の8つの時系列ts1~ts8のタイムスタンプ1のイベント値の最小値である。他のタイムスタンプ2~10も同様である。また、図9の時系列ts_β_2、ts_mean_2、ts_Γ_2、ts_max_2の各タイムスタンプ2~10のイベント値も、図2の実訓練時系列データTR_TSDB(CL=2)の8つの時系列ts1~ts8内のタイムスタンプ2~10のイベント値のそれぞれβパーセンタイル、平均値、Γパーセンタイル、最大値である。
図10内の時系列{ts_min_1, ts_β_1, ts_mean_1, ts_Γ_1, ts_max_1}の10個のイベント値も、同様に図2の実訓練時系列データTR_TSDB(CL=1)の8つの時系列ts9~ts16のタイムスタンプ1~10のイベント値から算出される。
図8は、処理S3のフローチャートを示す図である。処理S3では、プロセッサは、テスト時系列のイベント値に対するファジーメンバーシップ値を、代表訓練時系列データに基づいて算出した。つまり、プロセッサ10は、まずテスト時系列データTST_TSDB内のテスト時系列ttsを取得する(S31)。そして、プロセッサは、各クラスclkの代表訓練時系列データRP_TSDBについて(S32-S37)、当該代表訓練時系列データの各時系列ts_min_clk~ts_max_clkのイベント値に基づいて、テスト時系列の各タイムスタンプ1-10のイベント値に対するFMS値FMS_Vを算出する(S33-S35)。
さらに、プロセッサは、テスト時系列の各タイムスタンプのイベント値に対するFMS値の平均値を算出する(S36)。このFMS値の平均値が、各クラスの代表訓練時系列データに対するテスト時系列のFMS距離(ファジーメンバーシップ距離)である。プロセッサは、テスト時系列と各クラスCLの代表訓練時系列データRP_TSDBとのFMS距離をそれぞれ算出する(S36,S37)。その後、プロセッサは、図6の処理S4に示すとおり、FMS値の平均値(FMS距離)が最小のクラスを、テスト時系列ttsのクラスと決定する(S4)。
図8の処理S34で、プロセッサは、テスト時系列の各タイムスタンプのイベント値のFMS値を、代表訓練時系列データの各時系列ts_min_clk, ts_β_clk, ts_mean_clk, ts_Γ_clk, ts_max_clkに予め割り当てられたFMS値の補間演算等で算出する。
具体的には、クラスclk(1≦k≦n)を推定することが必要なテスト時系列をttsidとする。テスト時系列ttsidのイベント値と代表訓練時系列データRP_TSDBの複数のイベント値の分布との間の距離、FMS値、を決定するFMS関数μは、以下のとおりである。
ここで、μa=1、α、0、Δ、1の5個のFMS値は、(1)代表訓練時系列データRP_TSDBの時系列ts_min_clk以下のイベント値ttsid.va, (2)ts_min_clkとts_β_clkの間のイベント値ttsid.va, (3)ts_mean_clkのイベント値ttsid.va, (4)ts_Γ_clkとts_max_clkの間のイベント値ttsid.va, (5)ts_max_clk以上のイベント値ttsid.vaそれぞれに対するFMS値FMS_Vである。そして、係数Aは、テスト時系列ttsidのイベント値ttsid.vaが代表訓練時系列データRP_TSDBの時系列のイベント値ts_β_clk.va~ts_max_clk.vaにある場合にFMS値を算出する補間演算の係数である。同様に、係数Bは、テスト時系列ttsidのイベント値ttsid.vaが代表訓練時系列データRP_TSDBの時系列のイベント値ts_mean_clk.va~ts_Γ_clk.vaにある場合にFMS値を算出する補間演算の係数である。
図11は、FMS関数μの第1の例を示す図である。横軸が時系列tsidのタイムスタンプiのイベント値tsid.viであり、縦軸がFMS値(=μ)である。図11に示す太い実線は、テスト時系列ttsidのイベント値ttsid.viが代表訓練時系列データRP_TSDBの時系列ts_min_clkのイベント値以下からts_max_clkのイベント値以上までに対応するFMS値FMS_Vを示す。
図11のFMS関数μは、テスト時系列ttsidのイベント値が以下の7つの場合(a)~(g)に応じて以下のFMS値μaを算出する。
(a) ttsid.va≦ts_min_clk.vaの場合:μa=1
(b) ts_min_clk.va<ttsid.va≦ts_β_clk.vaの場合:μa
(c) ts_β_clk.va<ttsid.va<ts_mean_clk.vaの場合:μa=α×A
(d) ttsid.va=ts_mean_clk.vaの場合:μa=0
(e) ts_mean_clk.va<ttsid.va<ts_Γ_clk.vaの場合:μa=Δ×B
(f) ts_Γ_clk.va≦ttsid.va<ts_max_clk.vaの場合:μa
(g) ttsid.va≧ts_max_clk.vaの場合:μa=1
A=(ts_mean_clk.va -ttsid.va)/(ts_mean_clk.va -ts_β_clk.va )
B=(ttsid.va-ts_mean_clk.va)/(ts_Γ_clk.va -ts_mean_clk.va)
上記において、0≦α≦1、0≦Δ≦1であり、aはタイムスタンプ、βとΓは0~100の間のパーセンタイルから選択される。
特に(b)では、ts_min_clk.va<ttsid.va≦ts_β_clk.vaの場合、μa=α×A(A=1)と言える。よって、(b)と(c)とでテスト時系列のイベント値の増加に対応してFMS値=αからFMS値=0に減少する係数Aが、A=1からA=(ts_mean_clk.va -ttsid.va)/(ts_mean_clk.va -ts_β_clk.va )に変化するといえる。
同様に、(f)では、ts_Γ_clk.va≦ttsid.va<ts_max_clk.vaの場合、μa=Δ×B(B=1)と言える。よって、(f)と(e)とでテスト時系列のイベント値の増加に対応してFMS値=0からFMS値=Δに増加する係数Bが、B=(ttsid.va-ts_mean_clk.va)/(ts_Γ_clk.va -ts_mean_clk.va)からB=1に変化するといえる。
上記のFMS関数の基本的考えは次の通りである。第1に、(a)(g)のように、もしテスト時系列のあるタイムスタンプのイベント値があるクラスの時系列のイベント値の最小値以下と最大値以上なら、FMS値μに1が与えられる。第2に、もしそうでなければ((b)~(f)のように最小値と最大値の間にあるなら)、代表訓練時系列のイベント値の平均値に対する近さに応じて0から1の間のαとΔに対応する値α×A、Δ×BがFMS値μに与えられる。テスト時系列のイベント値がどのような値になるか予測できず、テスト時系列のイベント値が代表訓練時系列データの最小値よりかなり小さい値や、最大値よりかなり大きい値になった場合((a)or(g)の場合)、そのFMS値が極端に大きくなることが回避できる。つまり、テスト時系列のイベント値のノイズにより、不適切なクラスへ分類されることが抑制される。
第2に、テスト時系列のイベント値が代表訓練時系列データの最小値minと第1パーセンタイルβの間と、第2パーセンタイルΓと最大値maxの間の場合((b)(f)の場合)は、実訓練時系列データの各タイムスタンプのイベント値の分布の両端の領域(極値)に対応する。そこで、(b)(f)のように、極値に対するFMS値μは一定値αまたはΔになる。これにより、テスト時系列のイベント値が分布の代表値である平均値に近く且つ極値ではないβからΓの間の場合に、そのFMS値μにより小さい値が与えられる。その結果、テスト時系列のイベント値が分布の平均値に近い領域の場合、FMS距離が小さくなり適切なクラスへの分類が促進される。
図12は、ユーザが与えるα、Δがα=0.5、Δ=0.1の場合のFMS値を算出するFMS関数μを示す図である。図9に示したクラスCL=2の代表訓練時系列データRP_TSDB2に基づいてテスト時系列tts17のFMS値を算出する例を説明する。
(1)tts17の最初のイベント値は9.4である。この値はts_min_2=9.5よりも小さい為μ1=1.0
(2)tts17の2番目のイベント値は10.2である。この値はts_Γ_2=10.2(≒10.15)と等しくμ2=0.1
(3)tts17の3番目のイベント値は8.18である。この値はts_β_2=8とts_mean_2=8.54の間であり、μ3=α×A=0.5×(8.54-8.18)/(8.54-8)=0.33
(4)tts17の4番目のイベント値は8.3である。この値はts_mean_2=7.9とts_Γ_2=8.46の間であり、μ4=Δ×B=0.1×(8.3-7.9)/(8.46-7.9)=0.07
(5)同様の処理でtts17の残りのイベント値のFMS値の計算を繰り返して、μ5~μ10は、0.28、1、0.08、0.19、0.3、0.38となる。
テスト時系列tts17の各タイムスタンプのFMS値μ1~μ10をクラス2の代表訓練時系列データに基づいて算出した後、プロセッサは、ファジーメンバーシップ距離FMSDを算出する(図6のS4)。具体的には、FMS距離FMSDはFMS値μ1~μ10の合計をタイムスタンプ数で除算したFMS値の平均値である。上記の例では、テスト時系列tts17とクラス2の代表訓練時系列データとのFMS距離は、FMSD=0.849となる。
同様に、プロセッサは、テスト時系列tts17の各タイムスタンプのFMS値μ1~μ10をクラス1の代表訓練時系列データに基づいて算出し、その平均値を算出する。
そして、プロセッサは、テスト時系列tts17のFMS距離FMSDを残りの全てのクラスの代表訓練時系列データに基づいて算出する。テスト時系列tts17とクラスclkの代表訓練時系列データとのFMS距離は、0~1の値に正規化される。FMS距離が0に近いほどそのクラスに近く、FMS距離が1に近いほどそのクラスから遠い。よって、プロセッサは、最も小さいFMS距離FMSDに対応するクラスをテスト時系列tts17が属するクラスと決定する(図6のS4)。
代表訓練時系列データの最小値時系列のイベント値ts_min_clk.va に対するFSM値αと、最大値時系列のイベント値ts_max_clk.va に対するFSM値Δは、ユーザにより選択される。例えば、FSM値αとΔは、時系列分類方法の評価工程を繰り返して実行して、最大の精度が得られる値に選択されても良い。また、第1パーセンタイルβと第2パーセンタイルΓも同様にして最適値が選択されてもよい。
図13は、テスト時系列tts17とクラスCL=2の代表訓練時系列データの5つの時系列ts_min_2, ts_β_2, ts_mean_2, ts_Γ_2, ts_max_2をプロットしたグラフの図である。それに対して、図14は、テスト時系列tts17とクラスCL=1の代表訓練時系列データの5つの時系列ts_min_2, ts_β_2, ts_mean_2, ts_Γ_2, ts_max_2をプロットしたグラフの図である。
図13では、破線のテスト時系列tts17の各タイムスタンプのイベント値は、クラスCL=2の代表訓練時系列データの5つの時系列ts_min_2, ts_β_2, ts_mean_2, ts_Γ_2, ts_max_2による各タイムスタンプでの分布内にあり、多くのタイムスタンプで平均値の時系列ts_mean_2のイベント値に近い。一方、図14では、破線のテスト時系列tts17の各タイムスタンプのイベント値の多くは、クラスCL=1の代表訓練時系列データの5つの時系列による分布の外にある。上記の具体例では、グラフに表すとテスト時系列tts17がクラス1よりクラス2に属することは比較的容易に判別できる。
図15は、代表訓練時系列データRP_TSDBの生成方法の第2の例のフローチャートを示す図である。図15のフローチャートは、図7の第1の例のフローチャートとは処理S24_2が異なる。それ以外の処理は同じである。プロセッサは、ある分類の複数の時系列tsについて、各タイムスタンプのイベント値vの最小値min、代表値(平均値、中央値、最頻値、ミッドレンジ等)のうち例えば平均値mean、最大値maxを算出する(S23-S25)。平均値meanは代表値のいずれでも良い。つまり、図15の第2の例では、図7の第1の例の第1パーセンタイルβと第2パーセンタイルΓは算出されない。
図16は、図15の第2の例におけるFMS関数μを示す図である。図11と同様に、横軸が時系列tsidのタイムスタンプiのイベント値tsid.viであり、縦軸がFMS値(=μ)である。
図16のFMS関数μは、テスト時系列ttsidのイベント値ttsid.vaが以下の5つの場合に応じて以下のFMS値μaを算出する。
(a) ttsid.va≦ts_min_clk.vaの場合:μa=1
(c) ts_min_clk.va<ttsid.va<ts_mean_clk.vaの場合:μa=α×A
(d) ttsid.va=ts_mean_clk.vaの場合:μa=0
(e) ts_mean_clk.va<ttsid.va<ts_max_clk.vaの場合:μa=Δ×B
(g) ttsid.va≧ts_max_clk.vaの場合:μa=1
A=(ts_mean_clk.va -ttsid.va)/(ts_mean_clk.va -ts_min_clk.va )
B=(ttsid.va-ts_mean_clk.va)/(ts_max_clk.va -ts_mean_clk.va )
図16の(c)は図11の(b)(c)に対応し、図16の(e)は図11の(e)(f)に対応する。図16の第2の例では、係数AとBに変化はない。
図11に示すFMS関数は、あるクラスの複数の時系列tsのイベント値の分布が、最小値側と最大値側に極値を有するノーマルな分布のための関数である。ノーマルな分布とは大きな度数のビンが中心に位置する分布である。
また、図12に示されるFSM関数は、あるクラスの複数の時系列tsのイベント値の分布が、スキュー分布(歪分布)のための関数である。スキュー分布とは大きい度数を有するビンが中心からずれた位置にある分布である。図12の例は、大きい度数を有するビンが最大値側に偏ったスキュー分布に適するFMS関数である。
更に、図16に示すFMS関数は、あるクラスの複数の時系列tsのイベント値の分布が、最小値側と最大値側に極値を有していないノーマルな分布に適した関数である。分布の両端に極値がないので、このFMS関数は、図11、12のように、最小値minと第1パーセンタイルβの間をFMS値=α、第2パーセンタイルΓと最大値maxの間をFMS値=Δとする計算はない。図11、12に示すFMS関数は、分布の両端に極値がある分布に適した関数である。
本実施の形態における時系列のファジー最近傍分類方法(Fuzzy NNC:Fuzzy Nearest Neighbor Classification)によれば、クラス毎の実訓練時系列データTR_TSDBからそれぞれ変換されたクラス毎の代表訓練時系列データRP_TSDBを使用してテスト時系列のクラスを決定する。従って、ファジー最近傍分類方法の計算量は、クラス数nのオーダ(O(n))である。それに対して、他の時系列分類法の計算量は、訓練時系列の数mのオーダ(O(m))である。実世界の時系列データの時系列数mはクラス数nより遥かに多いので、ファジー最近傍分類法は他の時系列分類法より、メモリ容量、ランタイム時間、消費エネルギーの観点からより好ましい。
本実施の形態におけるファジー最近傍分類法は、以下の2つの段階を有する。第1の段階はオフライン段階であり、プロセッサは、与えられた各クラスの実訓練時系列データTR_TSDBを各クラスの代表訓練時系列データRP_TSDBに圧縮する。第2の段階は、オンライン段階であり、プロセッサは、テスト時系列と代表訓練時系列データとの間のFMS距離を全クラスについてそれぞれ算出する。そして、プロセッサは最小のFMS距離のクラスをテスト時系列のクラスと決定する。
以上の通り、本実施の形態によれば、少ないメモリ量、短いランタイム時間、少ない消費電力で且つ高精度に、テスト時系列を分類することができる。
1:時系列分類装置
20:時系列分類プログラム
22、TR_TSDB:実訓練時系列データ
24、RP_TSDB:代表訓練時系列データ
26、TST_TSDB:テストデータの時系列データ
tsid、tsid:時系列
TSDB:時系列データ
min:最小値
β:第1パーセンタイル
mean:平均値(代表値の一例)
Γ:第2パーセンタイル
max:最大値
FMS_V:ファジーメンバーシップ値
FMSD:ファジーメンバーシップ距離
clk、clk:クラス、分類

Claims (6)

  1. メモリと、
    前記メモリにアクセスするプロセッサとを有し、
    前記プロセッサは、
    (1)クラスがそれぞれラベリングされた複数の時系列を有する実訓練時系列データをクラス別に分割し、
    (2)前記分割した各クラスの複数の時系列をそれぞれ有する各クラスの実訓練時系列データを、前記複数の時系列の各タイムスタンプのイベント値の最小値と、最大値と、前記最小値及び最大値の間の代表値をそれぞれ有する最小値時系列と、最大値時系列と、代表値時系列を有する各クラスの代表訓練時系列データにそれぞれ圧縮し、
    (3)分類対象のテスト時系列の複数のタイムスタンプのイベント値それぞれに対する複数のファジーメンバーシップ値(以下FMS値と称する。)を、前記各クラスの代表訓練時系列データに基づいて、クラス毎に算出し、
    (4)前記複数のタイムスタンプのFMS値の平均値が最小のクラスを、前記テスト時系列のクラスに分類し、
    前記(3)の処理で、前記テスト時系列のイベント値が、
    前記最小値時系列のイベント値以下または前記最大値時系列のイベント値以上の場合、最大FMS値を、
    前記代表値時系列のイベント値と等しい場合、最小FMS値を、
    前記最小値時系列のイベント値から前記代表値時系列のイベント値の間の場合、前記テスト時系列のイベント値の増加に対応して前記最大FMS値及び前記最小FMS値の間の第1FMS値から最小FMS値に減少する第2FMS値を、
    前記代表値時系列のイベント値から前記最大値時系列のイベント値の間の場合、前記テスト時系列のイベント値の増加に対応して前記最小FMS値から前記最小FMS値及び前記最大FMS値の間の第3FMS値に増加する第4FMS値を、
    前記テスト時系列のイベント値のFMS値にそれぞれ算出する、時系列分類装置。
  2. 前記最小値時系列のイベント値と前記代表値時系列のイベント値の間の第1パーセンタイルで、前記第2FMS値が減少するための第1の係数が変化し、
    前記代表値時系列のイベント値と前記最大値時系列のイベント値の間の第2パーセンタイルで、前記第4FMS値が増加するための第2の係数が変化する、請求項1に記載の時系列分類装置。
  3. 前記最小値時系列のイベント値と前記第1パーセンタイルとの間の前記第2FMS値が減少する係数が1であり、
    前記第2パーセンタイルと前記最大値時系列のイベント値との間の前記第4FMS値が増加する係数が1である、請求項2に記載の時系列分類装置。
  4. 前記代表値は、平均値、中央値、最頻値及びミッドレンジのいずれかである、請求項1乃至3のいずれかに記載の時系列分類装置。
  5. (1)クラスがそれぞれラベリングされた複数の時系列を有する実訓練時系列データをクラス別に分割し、
    (2)前記分割した各クラスの複数の時系列をそれぞれ有する各クラスの実訓練時系列データを、前記複数の時系列の各タイムスタンプのイベント値の最小値と、最大値と、前記最小値及び最大値の間の代表値をそれぞれ有する最小値時系列と、最大値時系列と、代表値時系列を有する各クラスの代表訓練時系列データにそれぞれ圧縮し、
    (3)分類対象のテスト時系列の複数のタイムスタンプのイベント値それぞれに対する複数のファジーメンバーシップ値(以下FMS値と称する。)を、前記各クラスの代表訓練時系列データに基づいて、クラス毎に算出し、
    (4)前記複数のタイムスタンプのFMS値の平均値が最小のクラスを、前記テスト時系列のクラスに分類し、
    前記(3)の処理で、前記テスト時系列のイベント値が、
    前記最小値時系列のイベント値以下または前記最大値時系列のイベント値以上の場合、最大FMS値を、
    前記代表値時系列のイベント値と等しい場合、最小FMS値を、
    前記最小値時系列のイベント値から前記代表値時系列のイベント値の間の場合、前記テスト時系列のイベント値の増加に対応して前記最大FMS値及び前記最小FMS値の間の第1FMS値から最小FMS値に減少する第2FMS値を、
    前記代表値時系列のイベント値から前記最大値時系列のイベント値の間の場合、前記テスト時系列のイベント値の増加に対応して前記最小FMS値から前記最小FMS値及び前記最大FMS値の間の第3FMS値に増加する第4FMS値を、
    前記テスト時系列のイベント値のFMS値にそれぞれ算出する、
    処理をコンピュータに実行させるプログラムコードを有する時系列分類プログラム。
  6. (1)クラスがそれぞれラベリングされた複数の時系列を有する実訓練時系列データをクラス別に分割し、
    (2)前記分割した各クラスの複数の時系列をそれぞれ有する各クラスの実訓練時系列データを、前記複数の時系列の各タイムスタンプのイベント値の最小値と、最大値と、前記最小値及び最大値の間の代表値をそれぞれ有する最小値時系列と、最大値時系列と、代表値時系列を有する各クラスの代表訓練時系列データにそれぞれ圧縮し、
    (3)分類対象のテスト時系列の複数のタイムスタンプのイベント値それぞれに対する複数のファジーメンバーシップ値(以下FMS値と称する。)を、前記各クラスの代表訓練時系列データに基づいて、クラス毎に算出し、
    (4)前記複数のタイムスタンプのFMS値の平均値が最小のクラスを、前記テスト時系列のクラスに分類し、
    前記(3)の処理で、前記テスト時系列のイベント値が、
    前記最小値時系列のイベント値以下または前記最大値時系列のイベント値以上の場合、最大FMS値を、
    前記代表値時系列のイベント値と等しい場合、最小FMS値を、
    前記最小値時系列のイベント値から前記代表値時系列のイベント値の間の場合、前記テスト時系列のイベント値の増加に対応して前記最大FMS値及び前記最小FMS値の間の第1FMS値から最小FMS値に減少する第2FMS値を、
    前記代表値時系列のイベント値から前記最大値時系列のイベント値の間の場合、前記テスト時系列のイベント値の増加に対応して前記最小FMS値から前記最小FMS値及び前記最大FMS値の間の第3FMS値に増加する第4FMS値を、
    前記テスト時系列のイベント値のFMS値にそれぞれ算出する、
    処理をプロセッサが実行する時系列分類方法。
JP2021214286A 2021-12-28 2021-12-28 時系列分類装置、時系列分類プログラム及び時系列分類方法 Active JP7804319B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021214286A JP7804319B2 (ja) 2021-12-28 2021-12-28 時系列分類装置、時系列分類プログラム及び時系列分類方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021214286A JP7804319B2 (ja) 2021-12-28 2021-12-28 時系列分類装置、時系列分類プログラム及び時系列分類方法

Publications (2)

Publication Number Publication Date
JP2023097910A JP2023097910A (ja) 2023-07-10
JP7804319B2 true JP7804319B2 (ja) 2026-01-22

Family

ID=87071800

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021214286A Active JP7804319B2 (ja) 2021-12-28 2021-12-28 時系列分類装置、時系列分類プログラム及び時系列分類方法

Country Status (1)

Country Link
JP (1) JP7804319B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013150806A (ja) 2013-02-04 2013-08-08 Idesia Ltd 電子バイオメトリック識別認識のための方法及び装置
WO2020227525A1 (en) 2019-05-07 2020-11-12 Foursquare Labs, Inc. Visit prediction

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3500616B2 (ja) * 1993-11-25 2004-02-23 オムロン株式会社 信号波形データ比較装置およびその方法
JP3745783B2 (ja) * 1994-06-08 2006-02-15 株式会社アドイン研究所 パターン分類装置及びこの装置を利用する状態監視システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013150806A (ja) 2013-02-04 2013-08-08 Idesia Ltd 電子バイオメトリック識別認識のための方法及び装置
WO2020227525A1 (en) 2019-05-07 2020-11-12 Foursquare Labs, Inc. Visit prediction

Also Published As

Publication number Publication date
JP2023097910A (ja) 2023-07-10

Similar Documents

Publication Publication Date Title
Chan et al. Bayesian poisson regression for crowd counting
CN107065843B (zh) 基于独立子空间的多方向kica间歇过程故障监测方法
CN115051929B (zh) 基于自监督目标感知神经网络的网络故障预测方法及装置
CN111181939A (zh) 一种基于集成学习的网络入侵检测方法及装置
CN113516185B (zh) 模型训练的方法、装置、电子设备及存储介质
CN114417733B (zh) 构建功耗预测模型的方法、装置、电子设备及存储介质
JP7096431B2 (ja) ビデオ分析方法及びそれに関連するモデル訓練方法、機器、装置
JP6897749B2 (ja) 学習方法、学習システム、および学習プログラム
CN115690545A (zh) 训练目标跟踪模型和目标跟踪的方法和装置
CN115185760A (zh) 异常检测方法以及装置
Patra et al. Hierarchical class incremental learning of anatomical structures in fetal echocardiography videos
WO2018180197A1 (ja) データ解析装置、データ解析方法およびデータ解析プログラム
CN113535527A (zh) 一种面向实时流数据预测性分析的降载方法及系统
CN117079416B (zh) 基于人工智能算法的多人5d雷达跌倒检测方法及系统
JP5175754B2 (ja) 線形変換行列算出装置、その方法、及び、そのプログラム
CN117234251B (zh) 一种基于人工智能的电器压力控制方法及系统
JP7420278B2 (ja) 情報処理装置、情報処理方法、及び、記録媒体
CN108491559A (zh) 一种基于归一化互信息估计的时间序列异常检测方法
JP7211562B2 (ja) データ量十分性判定装置、データ量十分性判定方法、データ量十分性判定プログラム、学習モデル生成システム、学習済みの学習モデル生成方法、及び学習済みの学習モデル生成プログラム
JP7804319B2 (ja) 時系列分類装置、時系列分類プログラム及び時系列分類方法
JP7119901B2 (ja) 分析装置、分析方法および分析プログラム
CN116776245A (zh) 一种基于机器学习的三相逆变器设备故障诊断方法
CN115171225A (zh) 图像检测方法和图像检测模型的训练方法
US12462143B2 (en) Evaluation framework for time series data
JP7013965B2 (ja) 情報処理装置、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20220119

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20241217

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20251128

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20251202

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20251226

R150 Certificate of patent or registration of utility model

Ref document number: 7804319

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150