特許第6846369号(P6846369)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ KDDI株式会社の特許一覧

特許6846369未知の複数次元のベクトルデータ群をクラス分類するプログラム、装置及び方法
<>
  • 特許6846369-未知の複数次元のベクトルデータ群をクラス分類するプログラム、装置及び方法 図000006
  • 特許6846369-未知の複数次元のベクトルデータ群をクラス分類するプログラム、装置及び方法 図000007
  • 特許6846369-未知の複数次元のベクトルデータ群をクラス分類するプログラム、装置及び方法 図000008
  • 特許6846369-未知の複数次元のベクトルデータ群をクラス分類するプログラム、装置及び方法 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6846369
(24)【登録日】2021年3月3日
(45)【発行日】2021年3月24日
(54)【発明の名称】未知の複数次元のベクトルデータ群をクラス分類するプログラム、装置及び方法
(51)【国際特許分類】
   G06F 16/906 20190101AFI20210315BHJP
   G06N 20/00 20190101ALI20210315BHJP
【FI】
   G06F16/906
   G06N20/00 160
【請求項の数】8
【全頁数】10
(21)【出願番号】特願2018-24404(P2018-24404)
(22)【出願日】2018年2月14日
(65)【公開番号】特開2019-139651(P2019-139651A)
(43)【公開日】2019年8月22日
【審査請求日】2019年12月18日
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100135068
【弁理士】
【氏名又は名称】早原 茂樹
(72)【発明者】
【氏名】山口 修平
(72)【発明者】
【氏名】関口 直紀
(72)【発明者】
【氏名】宇都宮 栄二
【審査官】 早川 学
(56)【参考文献】
【文献】 特開平04−337406(JP,A)
【文献】 特開2017−058877(JP,A)
【文献】 米国特許出願公開第2017/0076200(US,A1)
【文献】 康本健史ほか,ニューラルネットワークを用いたトラヒックフローの分類,電気学会研究会資料,一般社団法人電気学会,2018年 1月11日,Vol.CMN−18−001〜009,pp.15〜18
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00−16/958
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
複数次元のベクトルデータ群をクラス分類する装置に搭載されたコンピュータを機能させるプログラムであって、
複数次元のベクトルデータ群をクラスタリングすることによって、クラスタ数kを推定するクラスタ数推定手段と、
複数次元のベクトルデータを、出力層をクラスタ数kとするニューラルネットワークに入力し、k個のクラス毎の分類確率を出力するクラス分類手段と
前記クラス分類手段によって最も高い分類確率となるクラスのラベルを、当該複数次元のベクトルデータに付与することによって、教師データを生成する教師データ生成手段と
してコンピュータを機能させることを特徴とするプログラム。
【請求項2】
前記クラスタ数推定手段は、DBSCAN(Density-Based Spatial Clustering of Applications with Noise)に基づくものである
ようにコンピュータを機能させることを特徴とする請求項1に記載のプログラム。
【請求項3】
前記クラス分類手段は、前記ニューラルネットワークにおける出力層の活性化関数として、ソフトマックス関数を用いて、合計確率1とするクラス毎の分類確率を出力する
ようにコンピュータを機能させることを特徴とする請求項1又は2に記載のプログラム。
【請求項4】
前記クラスタ数推定手段の前段にあって、複数次元のベクトルデータ群を次元圧縮する次元圧縮手段を更に有し、
前記次元圧縮手段から出力された低次元ベクトルデータ群を、前記クラスタ数推定手段へ入力する
ようにコンピュータを機能させることを特徴とする請求項1から3のいずれか1項に記載のプログラム。
【請求項5】
前記次元圧縮手段は、t−SNE(t-Distributed Stochastic Neighbor Embedding)に基づくものであり、
前記低次元ベクトルデータ群は、2次元又は3次元のベクトルデータ群である
ようにコンピュータを機能させることを特徴とする請求項4に記載のプログラム。
【請求項6】
複数次元のベクトルデータ群は、複数のセンサから出力されたベクトルデータを混在させたものである
ようにコンピュータを機能させることを特徴とする請求項1から5のいずれか1項に記載のプログラム。
【請求項7】
複数次元のベクトルデータ群をクラス分類する装置であって、
複数次元のベクトルデータ群をクラスタリングすることによって、クラスタ数kを推定するクラスタ数推定手段と、
複数次元のベクトルデータを、出力層をクラスタ数kとするニューラルネットワークに入力し、k個のクラス毎の分類確率を出力するクラス分類手段と
前記クラス分類手段によって最も高い分類確率となるクラスのラベルを、当該複数次元のベクトルデータに付与することによって、教師データを生成する教師データ生成手段と
を有することを特徴とする装置。
【請求項8】
複数次元のベクトルデータ群を入力する装置のクラス分類方法であって、
前記装置は、
複数次元のベクトルデータ群をクラスタリングすることによって、クラスタ数kを推定する第1のステップと、
複数次元のベクトルデータを、出力層をクラスタ数kとするニューラルネットワークに入力し、k個のクラス毎の分類確率を出力する第2のステップと
第2のステップによって最も高い分類確率となるクラスのラベルを、当該複数次元のベクトルデータに付与することによって、教師データを生成する第3のステップと
を実行することを特徴とする装置のクラス分類方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数次元のベクトルデータ群をクラス分類する技術に関する。
【背景技術】
【0002】
近年、IoT(Internet of Things)用のセンサの小型化及び高精度化に伴って、サーバは、ネットワークを介して大量のセンサデータを収集することができる。また、ニューラルネットワークの普及に伴って、それらビッグデータも容易に分析することができる。更に、これまで人手に基づく各種モニタリング業務も、システムによって自動化され、一元的に管理されてきている。例えば人の行き来が困難な地域(山間部や、インフラ設備(橋や鉄塔、柵等)、野生動物監視)であっても、環境センサを配置することによって、遠隔からのリモート監視も可能となってきている。
【0003】
一方で、ビッグデータの分析という観点からは、センサデータ自体が統一的なフォーマットで構成されていない。そのために、ニューラルネットワークを用いたとしても、分析結果の信頼性の確保が難しく、データの共有化が進みにくいという問題もある。特に、センサデータが多種多様且つ大量になってくるほど、多数次元のベクトルデータを正常状態と異常状態とに分類することは難しくなる。
【0004】
従来、機械設備に設置されたセンサからセンサデータを取得し、異常予兆の有無を診断する技術がある(例えば特許文献1参照)。この技術によれば、正常期間のセンサデータの時系列的な波形から正常モデルを学習し、運転期間のセンサデータを正常モデルと比較して、機械設備の異常予兆の有無を診断する。正常モデルは、統計的分類手法のクラスタリングによって、正常期間のセンサデータから生成されたクラスタによって構成される。クラスタとは、多次元ベクトル空間における中心及び半径で特定される領域である。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2017−033470号公報
【非特許文献】
【0006】
【非特許文献1】「t-SNE を用いた次元圧縮方法のご紹介」、[online]、[平成29年12月9日検索]、インターネット<URL:https://blog.albert2005.co.jp/2015/12/02/tsne/>
【発明の概要】
【発明が解決しようとする課題】
【0007】
図1は、未知のビッグデータの分析における課題を表す説明図である。
【0008】
図1によれば、特許文献1に記載の技術も同様に、正常期間におけるセンサデータから事前学習を必要するものである。そのために、多種多様且つ大量であって未知の多数次元のベクトルデータを、事前学習なしに分類することは困難であった。
また、クラスタリングによってクラスタに分類して学習しているが、クラスタ数を予め指定しなければならない。このクラスタ数は、学習モデルの精度にも影響を与えるものであるために、未知のデータに対して予めクラスタ数を決定することは極めて難しい。
【0009】
そこで、本発明は、事前学習なしに、未知の複数次元のベクトルデータ群をクラス分類することができるプログラム、装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明によれば、複数次元のベクトルデータ群をクラス分類する装置に搭載されたコンピュータを機能させるプログラムであって、
複数次元のベクトルデータ群をクラスタリングすることによって、クラスタ数kを推定するクラスタ数推定手段と、
複数次元のベクトルデータを、出力層をクラスタ数kとするニューラルネットワークに入力し、k個のクラス毎の分類確率を出力するクラス分類手段と
クラス分類手段によって最も高い分類確率となるクラスのラベルを、当該複数次元のベクトルデータに付与することによって、教師データを生成する教師データ生成手段と
してコンピュータを機能させることを特徴とする。
【0011】
本発明のプログラムにおける他の実施形態によれば、
クラスタ数推定手段は、DBSCAN(Density-Based Spatial Clustering of Applications with Noise)に基づくものである
ようにコンピュータを機能させることも好ましい。
【0012】
本発明のプログラムにおける他の実施形態によれば、
クラス分類手段は、ニューラルネットワークにおける出力層の活性化関数として、ソフトマックス関数を用いて、合計確率1とするクラス毎の分類確率を出力する
ようにコンピュータを機能させることも好ましい。
【0013】
本発明のプログラムにおける他の実施形態によれば、
クラスタ数推定手段の前段にあって、複数次元のベクトルデータ群を次元圧縮する次元圧縮手段を更に有し、
次元圧縮手段から出力された低次元ベクトルデータ群を、クラスタ数推定手段へ入力する
ようにコンピュータを機能させることも好ましい。
【0014】
本発明のプログラムにおける他の実施形態によれば、
次元圧縮手段は、t−SNE(t-Distributed Stochastic Neighbor Embedding)に基づくものであり、
低次元ベクトルデータ群は、2次元又は3次元のベクトルデータ群である
ようにコンピュータを機能させることも好ましい。
【0015】
本発明のプログラムにおける他の実施形態によれば、
複数次元のベクトルデータ群は、複数のセンサから出力されたベクトルデータを混在させたものである
ようにコンピュータを機能させることも好ましい。
【0017】
本発明によれば、複数次元のベクトルデータ群をクラス分類する装置であって、
複数次元のベクトルデータ群をクラスタリングすることによって、クラスタ数kを推定するクラスタ数推定手段と、
複数次元のベクトルデータを、出力層をクラスタ数kとするニューラルネットワークに入力し、k個のクラス毎の分類確率を出力するクラス分類手段と
クラス分類手段によって最も高い分類確率となるクラスのラベルを、当該複数次元のベクトルデータに付与することによって、教師データを生成する教師データ生成手段と
を有することを特徴とする。
【0018】
本発明によれば、複数次元のベクトルデータ群を入力する装置のクラス分類方法であって、
装置は、
複数次元のベクトルデータ群をクラスタリングすることによって、クラスタ数kを推定する第1のステップと、
複数次元のベクトルデータを、出力層をクラスタ数kとするニューラルネットワークに入力し、k個のクラス毎の分類確率を出力する第2のステップと
第2のステップによって最も高い分類確率となるクラスのラベルを、当該複数次元のベクトルデータに付与することによって、教師データを生成する第3のステップと
を実行することを特徴とする。
【発明の効果】
【0019】
本発明のプログラム、装置及び方法によれば、事前学習なしに、未知の複数次元のベクトルデータ群をクラス分類することができる。
【図面の簡単な説明】
【0020】
図1】未知のビッグデータの分析における課題を表す説明図である。
図2】本発明における分析装置の機能構成図である。
図3】次元圧縮部を表す説明図である。
図4】クラスタ推定部及びクラス分類部を表す説明図である。
【発明を実施するための形態】
【0021】
以下では、本発明の実施の形態について、図面を用いて詳細に説明する。
【0022】
図2は、本発明における分析装置の機能構成図である。
【0023】
分析装置1は、未知の複数次元のベクトルデータ群をクラス分類するものである。図2によれば、分析装置1は、ベクトルデータ群蓄積部100と、次元圧縮部101と、クラスタ数推定部11と、クラス分類部12と、教師データ生成部13とを有する。これら機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、ベクトルデータ群のクラス分類方法としても理解できる。
【0024】
[ベクトルデータ群蓄積部100]
ベクトルデータ群蓄積部100は、未知の複数次元のベクトルデータ群を蓄積している。「複数次元」とは、複数のセンサから出力されたベクトルデータを混在させたものであることを意味する。
複数次元のベクトルデータ群としては、例えば動体センサ(加速度センサや地磁気センサなど)、生体センサ(心拍センサなど)、環境センサ(温湿度センサ、気圧センサ、圧力センサなど)、光センサ(超音波センサや赤外線センサなど)、音響センサのような様々なベクトルデータを混在させることができる。本発明によれば、それらベクトルデータ群を時系列に取得することができれば、正常時と異常時とを大まかに判定することができる。
【0025】
[次元圧縮部101]
次元圧縮部101は、オプション的なものであって、クラスタ数推定部11の前段にあって、複数次元のベクトルデータ群を次元圧縮する。次元圧縮部101は、次元圧縮した低次元ベクトルデータ群を、クラスタ数推定部11へ出力する。ここでの低次元ベクトルデータ群とは、2〜3次元程度のベクトルデータ群を意味する。
【0026】
図3は、次元圧縮部を表す説明図である。
【0027】
次元圧縮部101は、t−SNE(t-Distributed Stochastic Neighbor Embedding)に基づくものである(例えば非特許文献1参照)。これは、2点間の「近さ」を確率分布で表現する手法である。
【数1】
ij:xiからxjの近さを表す同時分布
j|i:平均xiに従うガウス分布についてxjが抽出される確率密度
σi2:平均xiのガウス分布の分散(異なる2点の類似度のみを表す)
i|i=0
【数2】
次元削減後も元のデータ構造を完全に再現できていれば、pij=qijとなる。そのために、t−SNEでは、pijとqijとの誤差がなるべく小さくなるように次元削減を目指す。
t−SNEでは、分布間の距離を測る指標として、カルバック・ライブラー・ダイバージェンス(Kullback-Leibler-divergence)を用いる。
【数3】
t−SNEでは、pjiとqjiとを用いて目的関数Cを最小化する。解析的に最小解を求めることができないので、勾配法を用いる。
【数4】
収束した後のY={y1,y2,・・・,yn}が、出力される。次元圧縮により、高次元データを人間が視覚的に把握することができる。
【0028】
図4は、クラスタ推定部及びクラス分類部を表す説明図である。
【0029】
[クラスタ数推定部11]
クラスタ数推定部11は、複数次元のベクトルデータ群をクラスタリングすることによって、クラスタ数kを推定する。
クラスタ数推定部11は、DBSCAN(Density-Based Spatial Clustering of Applications with Noise)に基づくものである。DBSCANは、クラスタ数を予め設定する必要がないために、クラスタ数を未知として、ベクトルデータ群の分類が可能となる。
【0030】
DBSCANは、密度ベースのクラスタリング方法であり、以下の2つのパラメータを用いる。
距離の閾値 :ε(Eps-neighborhood of a point)
対象個数の閾値:minPts(a minimum number of points)
データの点を、以下の3つの種類に分類する。
コア点 :半径ε以内に少なくともminPts個の隣接点を持つ点
到達可能点:半径ε以内にminPts個ほどは隣接点がないが、
半径ε以内にCore pointsを持つ点
外れ値 :半径ε以内に隣接点がない点
コア点の集まりからクラスタを作成し、到達可能点を各クラスタに割り当てる。
即ち、DBSCANは、ある空間に点集合が与えられたとき、高い密度領域にある点同士をグループとしてまとめて、低い密度領域にある点を外れ値とする。
そして、クラスタ数推定部11は、DBSCANによって、最適なクラスタ数kを推定し、それをクラス分類部12へ出力する。
【0031】
[クラス分類部12]
クラス分類部12は、複数次元のベクトルデータを、出力層をクラスタ数kとするニューラルネットワークに入力し、k個のクラス毎の分類確率を出力する。クラスタ数kは、クラスタ数推定部11によって推定されたものである。
【0032】
クラス分類部12は、全結合型のニューラルネットワークにおける出力層の活性化関数として、ソフトマックス関数を用いて、合計確率1とするクラス毎の分類確率を出力する。
【0033】
ニューラルネットワークとは、生体の脳における特性を計算機上のシミュレーションによって表現することを目指した数学モデルをいう。シナプスの結合によってネットワークを形成した人工ニューロン(ユニット)が、学習によってシナプスの結合強度を変化させ、問題解決能力を持つようなモデル全般をいう。
【0034】
図4によれば、順伝播型の畳み込みニューラルネットワーク(Convolutional Neural Network, CNN)として、入力層(input layer)と、中間層(hidden layer)と、出力層(output layer)との3つの層から構成され、入力層から出力層へ向けて一方向に伝播する。中間層は、グラフ状に複数の層から構成するものであってもよい。各層は、複数のユニット(ニューロン)を持ち、前方層のユニットから後方層のユニットへつなぐ関数のパラメータを、「重み(weight)」と称す。学習とは、この関数のパラメータとして、適切な「重み」を算出することにある。
【0035】
本発明のニューラルネットワークは、分類問題(データがどのクラスに属するかを判別)としてソフトマックス関数を適用する。出力層が全部でk個あるとして、m番目の出力ymを、以下のように表す。
m=exp(xm)/Σi=1kexp(xi)
exp(x):eを表す指数関数(eは2.7182・・・のネイピア数)
m:入力信号
【0036】
ソフトマックス関数の出力は、全ての入力信号から矢印による結びつきがある。出力の各ニューロンが全ての入力信号xmから影響を受ける。
また、ソフトマックス関数の出力の総和は1となり、その性質によりソフトマックス関数の出力を「確率」として解釈することができる。この確率の結果から、どのクラスに属するかと判断することができる。
ソフトマックス関数により判別されたクラスは、未知の複数センサデータのクラスとなる。
【0037】
但し、本発明によれば、クラス分類手法として、教師有り学習のサポートベクターマシン(Support Vector Machine)のようなパターン認識モデルは使用しない。本発明によれば、教師無し学習としてクラス分類するためである。
【0038】
[教師データ生成部13]
教師データ生成部13は、クラス分類部12によって最も高い分類確率となるクラスのラベルを、当該複数次元のベクトルデータに付与することによって、教師データを生成する。その教師データは、教師データ蓄積部に蓄積することによって、教師有り学習モデルへ適用することもできる。
【0039】
以上、詳細に説明したように、本発明のプログラム、装置及び方法によれば、事前学習なしに、未知の複数次元のベクトルデータ群をクラス分類することができる。
【0040】
本発明によれば、汎用的に、多種多様且つ大量であって未知の多数次元のベクトルデータを、事前学習なしに分類することができる。また、クラスタリングの際に、学習モデルの精度にも影響を与えるクラスタ数kを予め指定する必要もない。この点も、未知の多数次元のベクトルデータに対する分類に適する。
【0041】
更に、本発明によれば、未知の複数次元のベクトルデータ群をクラス分類することができるので、多種多様なセンサデータを混在させることもできる。
例えば動体センサをインフラ設備(例えば橋や鉄塔、柵等)に設置して、そのセンサデータ群を、例えば正常状態と異常状態とに大まかに分類することもできる。
また、例えば動体センサや生体センサを人や動物に装着することによって、そのセンサデータ群を、例えば人や動物の行動把握(走る、歩く、静止等)に分類することもできる。
更に、例えば環境センサや光センサ、音響センサを、既存の機械設備に装着することによって、そのセンサデータ群を、例えば正常状態と異常状態とに大まかに分類することもできる。
【0042】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【0043】
1 分析装置
100 ベクトルデータ群蓄積部
101 次元圧縮部
11 クラスタ数推定部
12 クラス分類部
13 教師データ生成部
図1
図2
図3
図4