IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

特許7511997時系列のセンサデータから分散表現ベクトルを生成するプログラム、装置及び方法
<>
  • 特許-時系列のセンサデータから分散表現ベクトルを生成するプログラム、装置及び方法 図1
  • 特許-時系列のセンサデータから分散表現ベクトルを生成するプログラム、装置及び方法 図2
  • 特許-時系列のセンサデータから分散表現ベクトルを生成するプログラム、装置及び方法 図3
  • 特許-時系列のセンサデータから分散表現ベクトルを生成するプログラム、装置及び方法 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-28
(45)【発行日】2024-07-08
(54)【発明の名称】時系列のセンサデータから分散表現ベクトルを生成するプログラム、装置及び方法
(51)【国際特許分類】
   G06F 40/216 20200101AFI20240701BHJP
   G06N 20/00 20190101ALI20240701BHJP
   G16Y 20/00 20200101ALI20240701BHJP
【FI】
G06F40/216
G06N20/00 130
G16Y20/00
【請求項の数】 9
(21)【出願番号】P 2021145742
(22)【出願日】2021-09-07
(65)【公開番号】P2023038827
(43)【公開日】2023-03-17
【審査請求日】2023-07-14
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100135068
【弁理士】
【氏名又は名称】早原 茂樹
(72)【発明者】
【氏名】武田 直人
(72)【発明者】
【氏名】西村 康孝
(72)【発明者】
【氏名】南川 敦宣
【審査官】成瀬 博之
(56)【参考文献】
【文献】特表2020-518938(JP,A)
【文献】特開2019-169147(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/20-40/58
G06N 3/00-99/00
G16Y 10/00-40/60
(57)【特許請求の範囲】
【請求項1】
センサ毎に検知された時系列のセンサデータから分散表現ベクトルを生成するようにコンピュータを機能させるプログラムにおいて、
センサ種別及びセンサデータを1つの単語とし、単位時間における時系列の複数の単語からなるデータセットに区分し、
訓練段階として、教師データとしてデータセットを時系列に入力することによって事前学習し、推定段階として、対象時点のデータセットを時系列に入力して、分散表現ベクトルを出力する自然言語処理の機械学習エンジンと
してコンピュータを機能させ、
同一の単語であっても、文脈によって異なる分散表現ベクトルを出力する
ことを特徴とするプログラム。
【請求項2】
センサ種別は、当該センサが搭載された装置の種別であり、
センサデータは、数値又は状態情報である
ようにコンピュータを機能させることを特徴とする請求項1に記載のプログラム。
【請求項3】
単語は、当該センサデータが発生した時刻又は時間帯を更に含む
ようにコンピュータを機能させることを特徴とする請求項1又は2に記載のプログラム。
【請求項4】
単語は、当該センサが搭載された装置に対する属性情報を更に含む
ようにコンピュータを機能させることを特徴とする請求項1から3のいずれか1項に記載のプログラム。
【請求項5】
属性情報は、当該センサが搭載された装置を利用又は所有するユーザの属性である
ようにコンピュータを機能させることを特徴とする請求項4に記載のプログラム。
【請求項6】
機械学習エンジンは、Transformerの双方向的エンコーダに基づくものであり、推定段階について、Self-Attention機構によって、対象時点に注目された1つ以上の単語を推定する
ようにコンピュータを機能させることを特徴とする請求項1から5のいずれか1項に記載のプログラム。
【請求項7】
任意のイベントが発生した際に、複数のセンサによって時系列に検知されたセンサデータから特定の分散表現ベクトルを生成し、
運用時に、複数のセンサによって時系列に逐次に検知されたセンサデータの分散表現ベクトルから、当該特定の分散表現ベクトルとの類似度を算出することによって、当該イベントが発生したか否かを推定する
ようにコンピュータを機能させることを特徴とする請求項1から6のいずれか1項に記載のプログラム。
【請求項8】
センサ毎に検知された時系列のセンサデータから分散表現ベクトルを生成する装置において、
センサ種別及びセンサデータを1つの単語とし、単位時間における時系列の複数の単語からなるデータセットに区分し、
訓練段階として、教師データとしてデータセットを時系列に入力することによって事前学習し、推定段階として、対象時点のデータセットを時系列に入力して、分散表現ベクトルを出力する自然言語処理の機械学習エンジンを有し、
同一の単語であっても、文脈によって異なる分散表現ベクトルを出力する
ことを特徴とする装置。
【請求項9】
センサ毎に検知された時系列のセンサデータから分散表現ベクトルを生成する装置のベクトル変換方法において、
センサ種別及びセンサデータを1つの単語とし、単位時間における時系列の複数の単語からなるデータセットに区分し、
装置を、
訓練段階として、教師データとしてデータセットを時系列に入力することによって事前学習し、推定段階として、対象時点のデータセットを時系列に入力して、分散表現ベクトルを出力する自然言語処理の機械学習エンジンと
して実行させ、
同一の単語であっても、文脈によって異なる分散表現ベクトルを出力する
ことを特徴とするベクトル変換方法。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分散表現(埋め込み(embedding)表現)ベクトルを生成する技術に関する。
【背景技術】
【0002】
従来、文章のような事象情報を単語毎に分割し、ニューラルネットワークによって、各単語同士の関連性に基づいて分散表現ベクトルを出力する技術がある(例えば特許文献1参照)。このようなニューラルネットワークによれば、類似する単語同士は、距離的に近いベクトルとして表現される。ニューラルネットワークとしては、具体的にはWord2vec等の言語モデルが適用されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特許第6717555号公報
【非特許文献】
【0004】
【文献】J. Zhong and A. Lotfi, Sensor2Vec: an Embedding Learning for Heterogeneous Sensors for Activity Classification, 2020 International Symposium on Community-centric Systems (CcS), 2020, pp. 1-6
【発明の概要】
【発明が解決しようとする課題】
【0005】
これに対し、本願の発明者らは、事象情報が文章ではなく、多種多様なセンサにおける時系列のセンサデータについて適用することはできないか、と考えた。時系列のセンサデータとしては、例えば人の行動認識のために、周辺環境に設置されたIoT(Internet Of Things)センサを想定する。そのような時系列のセンサデータから分散表現ベクトルを生成できれば、その後、パターン解析のような様々な下流タスクアプリケーションで利用することができる、と考えた。
【0006】
そこで、本発明は、時系列のセンサデータから分散表現ベクトルを生成するプログラム、装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明によれば、センサ毎に検知された時系列のセンサデータから分散表現ベクトルを生成するようにコンピュータを機能させるプログラムにおいて、
センサ種別及びセンサデータを1つの単語とし、単位時間における時系列の複数の単語からなるデータセットに区分し、
訓練段階として、教師データとしてデータセットを時系列に入力することによって事前学習し、推定段階として、対象時点のデータセットを時系列に入力して、分散表現ベクトルを出力する自然言語処理の機械学習エンジンと
してコンピュータを機能させ、
同一の単語であっても、文脈によって異なる分散表現ベクトルを出力する
ことを特徴とする。
【0008】
本発明のプログラムにおける他の実施形態によれば、
センサ種別は、当該センサが搭載された装置の種別であり、
センサデータは、数値又は状態情報である
ようにコンピュータを機能させることも好ましい。
【0009】
本発明のプログラムにおける他の実施形態によれば、
単語は、当該センサデータが発生した時刻又は時間帯を更に含む
ようにコンピュータを機能させることも好ましい。
【0010】
本発明のプログラムにおける他の実施形態によれば、
単語は、当該センサが搭載された装置に対する属性情報を更に含む
ようにコンピュータを機能させることも好ましい。
【0011】
本発明のプログラムにおける他の実施形態によれば、
属性情報は、当該センサが搭載された装置を利用又は所有するユーザの属性である
ようにコンピュータを機能させることも好ましい。
【0012】
本発明のプログラムにおける他の実施形態によれば、
機械学習エンジンは、Transformerの双方向的エンコーダに基づくものであり、推定段階について、Self-Attention機構によって、対象時点に注目された1つ以上の単語を推定する
ようにコンピュータを機能させることも好ましい。
【0013】
本発明のプログラムにおける他の実施形態によれば、
任意のイベントが発生した際に、複数のセンサによって時系列に検知されたセンサデータから特定の分散表現ベクトルを生成し、
運用時に、複数のセンサによって時系列に逐次に検知されたセンサデータの分散表現ベクトルから、当該特定の分散表現ベクトルとの類似度を算出することによって、当該イベントが発生したか否かを推定する
ようにコンピュータを機能させることも好ましい。
【0014】
本発明によれば、センサ毎に検知された時系列のセンサデータから分散表現ベクトルを生成する装置において、
センサ種別及びセンサデータを1つの単語とし、単位時間における時系列の複数の単語からなるデータセットに区分し、
訓練段階として、教師データとしてデータセットを時系列に入力することによって事前学習し、推定段階として、対象時点のデータセットを時系列に入力して、分散表現ベクトルを出力する自然言語処理の機械学習エンジンを有し、
同一の単語であっても、文脈によって異なる分散表現ベクトルを出力する
ことを特徴とする。
【0015】
本発明によれば、センサ毎に検知された時系列のセンサデータから分散表現ベクトルを生成する装置のベクトル変換方法において、
センサ種別及びセンサデータを1つの単語とし、単位時間における時系列の複数の単語からなるデータセットに区分し、
装置を、
訓練段階として、教師データとしてデータセットを時系列に入力することによって事前学習し、推定段階として、対象時点のデータセットを時系列に入力して、分散表現ベクトルを出力する自然言語処理の機械学習エンジンと
して実行させ、
同一の単語であっても、文脈によって異なる分散表現ベクトルを出力する
ことを特徴とする。
【発明の効果】
【0016】
本発明のプログラム、装置及び方法によれば、時系列のセンサデータから分散表現ベクトルを生成することができる。
【図面の簡単な説明】
【0017】
図1】多種多様なセンサが配置された宅内の外観図である。
図2】本発明における学習装置の機能構成図である。
図3】本発明におけるセンサデータのデータセットを表す説明図である。
図4】本発明におけるBERTへの適用を表す説明図である。
【発明を実施するための形態】
【0018】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【0019】
図1は、多種多様なセンサが配置された宅内の外観図である。
【0020】
図1によれば、例えば室内に、多種多様なセンサが配置されている。各センサによって検知した時系列のセンサデータは、学習装置1へ収集される。センサとしては、人の空間的存在感を得るために、例えば以下のようなものが想定される。
・冷蔵庫ドアセンサ
・部屋ドアセンサ
・窓センサ
・エアコンセンサ
・温度・湿度・気圧センサ
・マイク
・人感センサ
【0021】
各センサは、例えば所定周期(例えば1秒毎)でデータを検知する。そして、そのセンサデータは、教師データとして又は現時データとして、学習装置1へ収集される。例えばこれら時系列のセンサデータは、その室内に滞在する人の日常活動データともいえる。これらセンサデータをパターン解析することによって、人間の行動認識が可能となる。
【0022】
図2は、本発明における学習装置の機能構成図である。
【0023】
図2によれば、学習装置1は、事前学習用の機械学習エンジン10を有する。この機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、学習装置の分散表現ベクトル生成方法としても理解できる。
【0024】
機械学習エンジン10は、センサ毎に検知された時系列のセンサデータから分散表現ベクトルを生成する。
分散表現ベクトルとは、機械学習のタスク実行に有用な特徴ベクトルを意味する。時系列の高次元なデータから、予測タスクを解くことで低次元な分散表現ベクトルに変換する。一般的に、機械学習の性能は、データの表現に依存するため、低次元で且つ適切な分散表現ベクトルを用いることによって、分類や回帰のタスクの精度を高めることができる。また、分散表現ベクトルは、元のデータへの相互変換も可能となると共に、ベクトル間の類似度は、元データ間の類似度と一致する。
【0025】
機械学習エンジン10は、以下の2つのステップを実行する。
<データセットの作成>
<機械学習エンジンの事前学習>
【0026】
図3は、本発明におけるセンサデータのデータセットを表す説明図である。
【0027】
<データセットの作成>
最初に、「センサ種別」及び「センサデータ」を1つの単語(s_v)として構成する。
センサ種別s :当該センサが搭載された装置の種別
センサデータv:数値又は状態情報
また、各単語は、例えばs1が「冷蔵庫ドアセンサ」で、v1が「OPEN」であれば、その時点では「冷蔵庫ドア_OPEN」ことを意味する。
【0028】
次に、単位時間(例えば30秒間)における時系列の複数の単語からなるデータセットに区分する。
データセット:{(s_v)(s_v)(s_v)(s_v)・・・}
時系列のデータセットや、1つのデータセット内の単語(センサ種別及びセンサデータ)は、自然言語処理における「文脈」と理解することができる。
具体的に、センサデータが1秒間隔で検知され、データセットが30秒間毎の単位時間に区切られている場合、1つのデータセットは、t0~t29までの30個の単語(30次元)で表現される。
【0029】
本発明によれば、単語に、以下のような周辺情報を更に含める。
時刻又は時間帯t:センサデータが発生した時刻又は時間帯
属性情報u :当該センサが搭載された装置に対する属性情報
「属性情報」とは、当該センサが搭載された装置を利用又は所有するユーザの属性である。例えば当該センサの最も近くに位置するユーザの属性であってもよい。
単語:(s_v_t_u)
データセットに、センサ種別及びセンサデータに加えて、センサが検知した時間帯や属性情報を含めることによって、分散表現ベクトルに潜在的な情報を埋め込むことができる。これによって、その分散表現ベクトルを用いたfinetuningの精度を向上させることができる。
図3によれば、教師データ及び現時データとも、複数の単語からなるデータセット毎に、センサ種別、センサデータ、時間帯及び属性情報が対応付けられている。
【0030】
例えば、冷蔵庫ドアセンサの検知は、食事時間帯に発生しやすい。窓センサの検知は、気温の変化時に発生しやすい。部屋ドアセンサや人感センサの検知は、人の移動頻度に関係する。エアコンセンサの検知は、室内に滞在する人の属性によって異なる場合もある。温度・湿度・気圧センサの検知は、昼と夜とで異なってくる。このように、センサの検知は、時間帯や、そのセンサが搭載された装置を利用又は所有するユーザの属性によって異なってくる。
【0031】
また、宅内に複数の居住者が滞在する場合、居住者(ユーザ属性)によって発生するセンサデータも異なってくることが想定される。例えば「冷蔵庫ドア_OPEN」である場合、属性情報「母親」であれば、「料理をする」という行動が認識されやすい。一方で、属性情報「息子」であれば、「飲み物を取る」という行動が認識されやすい。
【0032】
「属性情報」は、その時点で、センサに最も近いユーザに基づく情報であることが好ましい。例えばユーザがスマートフォンを常に携帯している場合、センサは、近距離無線通信(例えばBluetooth(登録商標))を介してスマートフォンと通信することができる。これによって、センサの最も近くに位置するユーザの属性を、センサデータに対応付けることができる。
「母親が14:30に冷蔵庫を開けた」場合、冷蔵庫ドアセンサが、OPENを検知し、その時刻が14:30であり、そのユーザが「母親」であることを、以下の単語によって表現することができる。
単語:(冷蔵庫_OPEN_14:30_母親)
【0033】
<機械学習エンジンの事前学習>
機械学習エンジン10は、自然言語処理用の事前学習エンジンであって、以下のように実行される。
(訓練段階)教師データとしてデータセットを時系列に入力することによって事前学習する。
(推定段階)対象時点のデータセットを時系列に入力して、分散表現ベクトルを出力する。
機械学習エンジン10は、同一の事象に出現する可能性(共起性)が高い単語同士、又は、同一の事象について近い位置に出現する可能性が高い単語同士を、ベクトル的に類似するように事前学習する。
【0034】
機械学習エンジン10は、Transformerの双方向的エンコーダに基づくものである。具体的には、BERT(Bidirectional Encoder Representations from Transformers)(登録商標)のような分散表現生成アルゴリズム(embedding)を適用する。これによって、文脈を考慮して、単語(センサ種別及びセンサデータ)に対する分散表現ベクトルを生成することができる。BERTによれば、同一の単語であっても、文脈によって異なる分散表現ベクトルを出力する。
【0035】
図4は、本発明におけるBERTへの適用を表す説明図である。
【0036】
BERTは、以下の2つの事前学習によってネットワークを学習させて、それぞれの単語について文脈を考慮した分散表現ベクトルを生成する。
MLM(Masked Language Modeling)
NSP(Next Sentence Prediction)
【0037】
尚、BERTは、潜在的に「注意機構(Attention)」を含む。注意機構は、入力系列の文章中から推定に必要な単語に重み付けをすることによって、推定の性能を向上させるようにしたものである。これによって、推定段階について、Self-Attention機構によって、対象時点に注目された1つ以上の単語(センサ種別及びセンサデータ)を推定することもできる。
【0038】
[MLM]
MLMは、データセットの中でランダムに選択された単語(センサ種別及びセンサデータ)をMASKして入力し、MASKされた単語を予測するようにネットワーク(Classification layer)を学習する。MLMは、後方の単語を単に予測するだけでなく、前方及び後方の文脈からから双方向で、マスクされている単語を予測する。
【0039】
[NSP]
NSPは、前後2つのデータセット(文)の関連性を理解できるように、2つのデータセットが連続するものか否かを予測する。
2つのデータセットA及Bについて、文の最初を示す特殊トークン[CLS]と、文の区切りを示す特殊トークン[SEP]とが付加される。NSPによれば、データセットAにデータセットBがつながるように、MLMと同じネットワークで事前学習する。訓練段階では、入力の50%は、データセットBがデータセットAの後続文であり、残り50%は教師データからランダムなデータセットが後続文として選択される。
【0040】
これによって、例えば「冷蔵庫を開けた」というデータセットが、その前に「コップを手に持った」というデータセットがある場合とない場合で、例えば「冷蔵庫」について別の分散表現ベクトルが生成される。このような分散表現ベクトルを用いることによって、下流タスクアプリケーションで、人の「飲み物を飲む」と認識することが期待できる。他方、「冷蔵庫を開けた」を常に同一の分散表現ベクトルで表現した場合、「料理をする」という行動として誤認識する可能性もある。
【0041】
尚、センサデータを、自然言語処理用の機械学習エンジンとして、Word2vecを用いた学術文献もある(例えば非特許文献1参照)。
この学術文献によれば、センサデータを、Word2vecのCBOW(Continuous Bag-of-Words Model)を学習させる。具体的には、時間tiのセンサとその状態が取り得る全てのパターン、即ちone-hotベクトルとして表現する。one-hotベクトルとは、(0,1,0,0,0,0) のように、1つの成分が1で残りの成分が全て0となるようなベクトルをいう。即ち、n×m個の入力層と、n×m(語彙数)個の出力層とで構成する。
CBOWは、現在のセンサデータを推定するように2層のニューラルネットワークを学習させるモデルをいう。これによって、隠れ層への重み行列(W1)が各センサとそのセンサデータを表現するベクトルとなる。
但し、この技術によれば、同一のセンサが同一のセンサデータ(単語)を検知した場合、同一の分散表現ベクトルとして表現される。即ち、同一の単語であっても、文脈によって異なる分散表現ベクトルを出力するようなものではない。この学術文献の技術によれば、例えばセンサデータを単語とした場合、入力文としての「We went to the river bank」と「I need to bank to make a deposit」とでは、単語「bank」は同一の分散表現ベクトルとして生成される。即ち、例えばbank(銀行)とbank(土手)とは別の意味であるが、同一の分散表現ベクトルとなる。
【0042】
これに対し、本発明によれば、センサデータを単語として、BERTのようなTransformerの双方向的エンコーダを用いることによって、前述同様の入力文であっても、それぞれのbankという単語が周辺の文脈の意味を内包した別の分散表現ベクトルとして生成される。即ち、「冷蔵庫ドアセンサ:OPEN」であっても、その時系列(文脈)によっては異なる分散表現ベクトルとして生成される。
【0043】
尚、本発明の用途として、任意のイベントが発生した際に、複数のセンサによって時系列に検知されたセンサデータから特定の分散表現ベクトルを生成するものであってもよい。運用時に、複数のセンサによって時系列に逐次に検知されたセンサデータの分散表現ベクトルから、当該特定の分散表現ベクトルとの類似度を算出することによって、当該イベントが発生したか否かを推定することができる。
【0044】
以上、詳細に説明したように、本発明のプログラム、装置及び方法によれば、時系列のセンサデータから分散表現ベクトルを生成することができる。特に、同一のセンサデータであっても、時系列によって異なる分散表現ベクトルとして出力することができる。
また、本発明によれば、自然言語処理用の機械学習エンジンを用いる際に、単語として、センサ種別及びセンサデータのみならず、時刻又は時間帯や属性情報も含める。検知された時系列のセンサデータは人の行動認識に基づくものであり、それらセンサデータの分散表現ベクトルは、パターン解析のような様々な下流タスクアプリケーション(例えばfine tuningや行動認識など)で利用することができる。
【0045】
尚、これにより、例えば「IoTのようなセンサデータの分析に基づく予測精度を高めることができる」ことから、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進するとともに、イノベーションの拡大を図る」に貢献することが可能となる。
【0046】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【0047】
1 学習装置
10 機械学習エンジン
図1
図2
図3
図4