(58)【調査した分野】(Int.Cl.,DB名)
前記学習属性は、さらに、前記ラベルなしクラスタに属する各ラベルなしデータが、分類クラスの追加、分類クラスの範囲拡大、分類クラスの細分化、分類クラスの統合、のいずれの形態で分類クラスを再構築するための学習用データとして有用かを示す項目を含む、
請求項1に記載の更新支援装置。
前記評価部は、前記ラベルなしクラスタの分布を表す統計量と前記ラベルありクラスタの分布を表す統計量とを用いて算出される距離尺度により、前記重なり状態を評価する、
請求項1または2に記載の更新支援装置。
前記ラベルなしデータの集合のうち、前記学習属性により前記学習用データとして有用であることが示された前記ラベルなしデータである追加学習用データが占める割合、または、前記追加学習用データの総数が、所定の基準値を超えた場合に、前記識別辞書の更新を促す情報を提示する提示部をさらに備える、
請求項1乃至4のいずれか一項に記載の更新支援装置。
前記提示部は、さらに、前記ラベルなしデータの集合のうち前記追加学習用データが占める割合、または、前記追加学習用データの総数の経時的な変化を表す情報を提示する、
請求項5に記載の更新支援装置。
前記優先度決定部は、前記特徴空間上での前記ラベルありクラスタに対する前記追加学習用データの距離を示す確信度に基づいて、前記追加学習用データの優先度を決定する、
請求項8に記載の更新支援装置。
【発明を実施するための形態】
【0008】
以下、添付図面を参照して、実施形態の更新支援装置、更新支援方法およびプログラムを詳細に説明する。
【0009】
<実施形態の概要>
本実施形態は、センサデータを1つ以上の分類クラスに分類するための識別辞書の更新を支援するものである。更新の対象となる識別辞書は、分類クラスを示すラベルが教示されたセンサデータ(以下、「ラベルありデータ」と呼ぶ)を学習用データとして生成(学習)された既存の識別辞書である。識別辞書の更新は、例えば、既存の識別辞書ではユーザが満足する分類結果が得られず、既存の識別辞書の分類クラスを再構築することが必要とされる場合に行われる。分類クラスの再構築の形態としては、例えば、分類クラスの追加、分類クラスの範囲拡大、分類クラスの細分化、分類クラスの統合などがある。
【0010】
識別辞書の更新は、既存の識別辞書の生成に用いたラベルありデータ以外のセンサデータを学習用データに追加して識別辞書を追加学習することで実現できる。学習用データに追加するセンサデータは、例えば、実際に識別辞書を用いた識別の対象として、システムが運用される環境で収集されるラベル未教示のセンサデータ(以下、「ラベルなしデータ」と呼ぶ)である。このとき、分類クラスの再構築に寄与しないラベルなしデータ、つまり、既存の分類クラスに精度よく分類されるラベルなしデータは、学習用データとしての有用性が低い。また、分類クラスの再構築の形態のうち、分類クラスの追加、分類クラスの細分化、分類クラスの統合などに有用となるラベルなしデータは、少なくともその一部に対して、新たな分類クラスを示すラベルを教示する必要がある。しかし、こうした識別辞書の更新の必要性や、どのラベルなしデータを識別辞書の更新に利用すべきかをユーザが直感的に判断することは困難である。
【0011】
そこで、本実施形態では、識別辞書に対応する特徴空間上におけるセンサデータの分布を手掛かりとして、学習用データに追加するセンサデータの候補として収集されるラベルなしデータの学習属性を決定する。この学習属性は、少なくとも、そのラベルなしデータが識別辞書の更新のための学習用データとして有用か否かを示す項目を含む。したがって、学習属性によって識別辞書の更新のための学習用データとして有用であることが示されたラベルなしデータ(以下、「追加学習用データ」と呼ぶ)の数や割合が大きくなったときに、識別辞書の更新が必要になったと判断することができ、また、その追加学習用データを用いれば識別辞書を適切に更新できると判断することができる。その結果、既存の識別辞書の更新を効率よく行うことができる。
【0012】
以下では、センサデータから人の行動を識別する識別辞書への適用例を想定して説明するが、適用可能な識別辞書はこの例に限定されない。本実施形態は、各種のセンサデータを1つ以上の分類クラスに分類するために用いられる様々なタイプの識別辞書に対して有効に適用可能である。
【0013】
<第1実施形態>
図1は、第1実施形態に係る更新支援装置の機能的な構成例を示すブロック図である。本実施形態の更新支援装置は、
図1に示すように、取得部1と、クラスタリング部2と、評価部3と、学習属性決定部4と、を備える。
【0014】
取得部1は、センサデータと既存の識別辞書とを取得する。センサデータとしては、例えば、3軸方向の速度変化の時系列データが取得可能な加速度センサが出力する3次元データが考えられる。取得部1が取得するセンサデータは、識別辞書の分類クラスに応じて適切な長さに区切られているものとする。
【0015】
取得部1が取得するセンサデータの具体例を
図2に示す。取得部1が取得するセンサデータには、
図2に示すように、既存の識別辞書の分類クラスを示すラベルが教示されたラベルありデータと、ラベル未教示のラベルなしデータとが含まれる。本実施形態では、既存の識別辞書の分類クラスとして、行動A、行動B、行動Cの3つがあるものとする。ラベルありデータは、既存の識別辞書の生成(学習)時に学習用データとして用いられたものである。ラベルなしデータは、既存の識別辞書を更新する際に学習用データとして追加するセンサデータの候補となるものである。これらのセンサデータには、各データに固有のデータ番号が与えられる。
【0016】
クラスタリング部2は、取得部1が取得したセンサデータのうち、ラベルありデータの集合を既存の識別辞書に対応する特徴空間上でクラスタリングして、既存の識別辞書の分類クラスに対応するクラスタ(以下、「ラベルありクラスタ」と呼ぶ)を生成するとともに、ラベルなしデータの集合を同じ特徴空間上でクラスタリングして、分類クラスが明らかでないクラスタ(以下、「ラベルなしクラスタ」と呼ぶ)を生成する。
【0017】
図3は、ラベルありクラスタの一例を示す図である。クラスタリング部2は、取得部1が取得した既存の識別辞書を利用して、ラベルありデータのそれぞれを多次元ベクトルである特徴量に変換し、多次元の特徴空間上にマッピングする。なお、
図3では簡単のため、多次元の特徴空間を2次元空間として示している。そして、クラスタリング部2は、例えばK−means法やDBSCAN(Density-based spatial clustering of applications with noise)法などのクラスタリングアルゴリズムを利用して、特徴空間上にマッピングされたラベルありデータの集合をクラスタリングし、既存の識別辞書の分類クラスに対応するラベルありクラスタを生成する。
【0018】
本実施形態では、上述のように行動A、行動B、行動Cの3つの分類クラスがあるため、
図3に示すように、行動Aに対応するラベルありクラスタa、行動Bに対応するラベルありクラスタb、行動Cに対応するラベルありクラスタcの3つのラベルありクラスタが生成される。
図2に示したセンサデータのうち、分類クラスとして行動Aのラベルが教示されたラベルありデータD1はラベルありクラスタaに属し、分類クラスとして行動Bのラベルが教示されたラベルありデータはラベルありクラスタbに属する。
【0019】
図4は、ラベルなしクラスタの一例を示す図である。クラスタリング部2は、ラベルありデータの場合と同様に、ラベルなしデータのそれぞれを多次元ベクトルである特徴量に変換し、多次元の特徴空間上にマッピングする。そして、クラスタリング部2は、例えばX−means法やDBSCAN法などのクラスタリングアルゴリズムを利用して、特徴空間上にマッピングされたラベルなしデータの集合をクラスタリングし、分類クラスが明らかでないラベルなしクラスタを生成する。なお、
図4中、特徴空間上におけるラベルありクラスタa,b,cの範囲を破線で示している。
【0020】
図4では、3つのラベルありクラスタa,b,cのいずれにも重ならないラベルなしクラスタdと、ラベルありクラスタcに内包されるラベルなしクラスタeが生成された例を示している。
図2に示したセンサデータのうち、ラベルなしデータD3はラベルなしクラスタdに属し、ラベルなしデータD4はラベルなしクラスタeに属するものとする。
【0021】
評価部3は、クラスタリング部2により生成されたラベルありクラスタの特徴空間上における分布に対する、ラベルなしクラスタの特徴空間上における分布の重なり状態を評価する。クラスタ同士の分布の重なり状態は、例えば、それぞれのクラスタの分布パラメータ(統計量)を用いて算出される距離尺度を用いて評価することができる。ここで、クラスタXに属するセンサデータが正規分布で近似できると仮定すれば、クラスタXに属するセンサデータの平均μ
Xと分散σ
Xを、クラスタXの分布パラメータと設定できる。
【0022】
正規分布間の距離としては、例えばKLダイバージェンス(Kullback-Leibler divergence)などが利用できる。KLダイバージェンスは2つの確率分布の近さを表現する指標の一つであり、比較対象となる2つの分布がいずれも正規分布N
1(μ
1,σ
1)、N2(μ
2,σ
2)で表現できるならば、KLダイバージェンスは下記式(1)により算出することができ、値が小さいほど2つの分布が近いことを示している。
【数1】
この式(1)からは、2つの分布の平均μが離れるほど、また、分散σの大きさの違いが大きくなるほどKLダイバージェンスの値は大きくなり、2つの分布は異なることが分かる。
【0023】
本実施形態では、ラベルありクラスタの分布に対するラベルなしクラスタの分布の重なり状態が、以下のパターン1〜6の6つのパターンのいずれに当てはまるかを判定するものとする。
パターン1:ラベルなしクラスタの分布が、どのラベルありクラスタの分布とも重ならない。
パターン2:ラベルなしクラスタの分布が、1つのラベルありクラスタの分布に一部重なる。
パターン3:ラベルなしクラスタの分布が、複数のラベルありクラスタの分布に一部重なる。
パターン4:ラベルなしクラスタの分布が、ラベルありクラスタに内包される。
パターン5:複数のラベルなしクラスタの分布が、ラベルありクラスタの分布に内包される。
パターン6:ラベルなしクラスタの分布が、ラベルありクラスタの分布を包含する。
【0024】
評価部3は、まず、クラスタリング部2により生成されたラベルなしクラスタの分布とラベルありクラスタの分布との組み合わせのそれぞれついて、上述のKLダイバージェンスの値を算出し、得られた値を第1閾値および第2閾値と比較する。第1閾値は、2つの分布の一方が他方を包含するように重なるかどうかを判定する閾値であり、比較的低い値に設定される。第2閾値は、2つの分布が重なるか重ならないかを判定する閾値であり、第1閾値よりも高い値に設定される。KLダイバージェンスの値が第1閾値以上かつ第2閾値未満の場合は、2つの分布の一部が重なることを示している。
【0025】
ここで、すべてのラベルありクラスタとの間のKLダイバージェンスの値がいずれも第2閾値以上のラベルなしクラスタがあった場合、そのラベルなしクラスタは、上述のパターン1に当てはまると判定できる。
【0026】
また、1つのラベルありクラスタとの間のKLダイバージェンスの値が第1閾値以上かつ第2閾値未満であり、その他のラベルありクラスタとの間のKLダイバージェンスの値がいずれも第2閾値以上のラベルなしクラスタがあった場合、そのラベルなしクラスタは、上述のパターン2に当てはまると判定できる。
【0027】
また、複数のラベルありクラスタとの間のKLダイバージェンスの値がそれぞれ第1閾値以上かつ第2閾値未満であり、その他のラベルありクラスタとの間のKLダイバージェンスの値がいずれも第2閾値以上のラベルなしクラスタがあった場合、そのラベルなしクラスタは、上述のパターン3に当てはまると判定できる。
【0028】
また、1つのラベルありクラスタとの間のKLダイバージェンスの値が第1閾値未満であり、その他のラベルありクラスタとの間のKLダイバージェンスの値がいずれも第2閾値以上のラベルなしクラスタがあった場合、そのラベルなしクラスタは、上述のパターン4〜6のいずれかのパターンに当てはまると判定できる。すなわち、そのラベルなしクラスタは、1つのラベルありクラスタに内包される、あるいは、1つのラベルありクラスタを包含するように、そのラベルありクラスタと重なっていると判定できる。
【0029】
ラベルなしクラスタがラベルありクラスタに内包されるのか、あるいは、ラベルなしクラスタがラベルありクラスタを包含するのかは、例えば、ラベルなしクラスタとラベルありクラスタそれぞれの分散σの大きさを比較することで判定できる。すなわち、ラベルなしクラスタの分散σがラベルありクラスタの分散σよりも小さければ、ラベルなしクラスタがラベルありクラスタに内包されると判定できる。一方、ラベルなしクラスタの分散σがラベルありクラスタの分散σよりも大きければ、ラベルなしクラスタがラベルありクラスタを包含すると判定できる。
【0030】
なお、同じラベルありクラスタと重なるラベルなしクラスタが複数あった場合は、それらのラベルなしクラスタは共通のラベルありクラスタに内包されるので、分散σの大きさを比較することなく、それらのラベルなしクラスタは上述のパターン5に当てはまると判定できる。すなわち、共通のラベルありクラスタとの間のKLダイバージェンスの値が第1閾値未満であり、その他のラベルありクラスタとの間のKLダイバージェンスの値がいずれも第2閾値以上のラベルなしクラスタが複数あった場合、それらのラベルなしクラスタは、上述のパターン5に当てはまると判定できる。
【0031】
したがって、上述のパターン5に当てはまる場合を除いて、1つのラベルありクラスタとの間のKLダイバージェンスの値が第1閾値未満であり、その他のラベルありクラスタとの間のKLダイバージェンスの値がいずれも第2閾値以上のラベルなしクラスタがあった場合、そのラベルなしクラスタの分散σの大きさと、そのラベルなしクラスタと重なるラベルありクラスタの分散σの大きさを比較する。そして、ラベルなしクラスタの分散σが、ラベルありクラスタの分散σより小さければ、そのラベルなしクラスタは上述のパターン4に当てはまると判定できる。逆に、そのラベルなしクラスタの分散σが、そのラベルなしクラスタと重なるラベルありクラスタの分散σより大きければ、そのラベルなしクラスタは上述のパターン6に当てはまると判定できる。
【0032】
ここで、クラスタリング部2により
図3に示すラベルありクラスタa,b,cと
図4に示すラベルなしクラスタd,eが生成された場合を例に挙げて、評価部3によるクラスタの重なり状態の評価の具体例を説明する。
【0033】
図5は、クラスタごとの分布パラメータの一例を示す図であり、
図6は、
図5の分布パラメータを用いて算出したラベルなしデータとラベルありデータとの間のKLダイバージェンスの値を示す図である。例えば、上述の第1閾値として1.0の値が設定され、第2閾値として3.0の値が設定された場合、ラベルなしクラスタdは、ラベルありクラスタa,b,cのそれぞれとの間で算出されたKLダイバージェンスの値がいずれも第2閾値以上であるため、上述のパターン1に当てはまると判定される。また、ラベルなしクラスタeは、ラベルありクラスタcとの間で算出されたKLダイバージェンスの値が第1閾値未満であり、ラベルありクラスタa,bとの間で算出されたKLダイバージェンスの値がいずれも第2閾値以上であるため、ラベルありクラスタcに内包またはラベルありクラスタcを包含すると判定される。そして、ラベルなしクラスタeの分散σとラベルありクラスタcの分散σとを比較すると、ラベルなしクラスタeの分散σの方が小さいため、ラベルなしクラスタeは上述のパターン4に当てはまると判定される。
【0034】
学習属性決定部4は、それぞれのラベルなしクラスタに対して評価部3により評価されたラベルありクラスタとの重なり状態の評価結果に基づいて、それぞれのラベルなしクラスタに属する各ラベルなしデータの学習属性を決定する。学習属性は、例えば、そのラベルなしデータが識別辞書の更新のための学習用データとして有用か否かを示す「有用性」の項目と、そのラベルなしデータが、分類クラスの追加、分類クラスの範囲拡大、分類クラスの細分化、分類クラスの統合、のいずれの形態で識別辞書の分類クラスを再構築するための学習用データとして有用かを示す「再構成タイプ」の項目とを含む。「有用性」の項目の値は、「有用」または「無用」のいずれかに設定される。「再構成タイプ」の項目の値は、「追加」、「拡大」、「細分化」、「統合」のいずれかに設定される。なお、「有用性」の項目が「無用」の場合、「再構成タイプ」の項目には値が設定されない。
【0035】
ラベルありクラスタに対する重なり状態が、上述のパターン1、パターン2、パターン3、パターン5、パターン6のいずれかに当てはまるラベルなしクラスタに属するラベルなしデータは、これらを学習用データに用いて既存の識別辞書の更新を行うことで、既存の識別辞書の分類クラスの再構成に寄与する。このため、これらのラベルなしデータの学習属性の「有用性」の項目の値は、「有用」に決定される。一方、ラベルありクラスタに対する重なり状態が、上述のパターン4に当てはまるラベルなしクラスタに属するラベルなしデータは、これらを学習用データに用いて既存の識別辞書を更新しても分類クラスの再構成に寄与しないため、これらのラベルなしデータの学習属性の「有用性」の項目の値は、「無用」に決定される。
【0036】
また、ラベルありクラスタに対する重なり状態が上述のパターン1に当てはまるラベルなしクラスタに属するラベルなしデータは、識別辞書の分類クラスを追加するための学習用データとして有用である。このため、これらのラベルなしデータの学習属性の「再構成タイプ」の項目の値は、「追加」に決定される。
【0037】
また、ラベルありクラスタに対する重なり状態が上述のパターン2またはパターン6に当てはまるラベルなしクラスタに属するラベルなしデータは、識別辞書のいずれかの分類クラスの範囲を拡大するための学習用データとして有用である。このため、これらのラベルなしデータの学習属性の「再構成タイプ」の項目の値は、「拡大」に決定される。
【0038】
また、ラベルありクラスタに対する重なり状態が上述のパターン3に当てはまるラベルなしクラスタに属するラベルなしデータは、識別辞書の複数の分類クラスを統合するための学習用データとして有用である。このため、これらのラベルなしデータの学習属性の「再構成タイプ」の項目の値は、「統合」に決定される。
【0039】
また、ラベルありクラスタに対する重なり状態が上述のパターン5に当てはまるラベルなしクラスタに属するラベルなしデータは、識別辞書のいずれかの分類クラスを細分化するための学習用データとして有用である。このため、これらのラベルなしデータの学習属性の「再構成タイプ」の項目の値は、「細分化」に決定される。
【0040】
学習属性の「再構成タイプ」の項目の値が「追加」、「統合」、「細分化」のいずれかに決定されたラベルなしデータを学習用データに用いると、識別辞書に新たな分類クラスが生成されることになる。したがって、これらのラベルなしデータを学習用データに用いる場合には、新たに生成される分類クラスのラベル教示が必要となる。学習属性の「再構成タイプ」の項目は、このようにラベルなしデータにラベル教示が必要か否かを判断するためにも利用できる。
【0041】
なお、半教師あり学習により識別辞書を更新する場合は、教示されたラベルを類似のデータに伝播させることができるので、同じラベルなしクラスタに属するラベルなしデータについてはその一部にラベル教示すればよい。各々のラベルなしデータがラベル教示を必要とするセンサデータか否かを一意に判断できるように、上述の「再構成タイプ」に加え、または「再構成タイプ」の代わりに、ラベル教示が必要か否かを示す項目を学習属性に加えてもよい。
【0042】
学習属性決定部4は、以上のようにラベルなしクラスタに属する各ラベルなしデータの学習属性を決定し、例えば
図7に示すように、ラベルなしデータのデータ番号に学習属性を対応付けた情報を出力する。
図7では、
図4に示したラベルなしクラスタdに属するラベルなしデータD3には、「有用性」が「有用」、「再構成タイプ」が「追加」の学習属性が対応付けられ、
図4に示したラベルなしクラスタeに属するラベルなしデータD4には、「有用性」が「無用」の学習属性が対応付けられた例を示している。
【0043】
図8は、ラベルなしクラスタの他の例を示す図である。クラスタリング部2により
図8に示すようなラベルなしクラスタfが生成された場合は、評価部3により、このラベルなしクラスタfのラベルありクラスタa,b,cに対する重なり状態が、上述のパターン2に当てはまると判定される。この場合、学習属性決定部4により、このラベルなしクラスタfに属する各ラベルなしデータの学習属性は、「有用性」の項目の値が「有用」、「再構成タイプ」の項目の値が「拡大」に決定される。そして、これらのラベルなしデータのデータ番号と学習属性とを対応付けた情報が、学習属性決定部4から出力される。これらのラベルなしデータは、既存の識別辞書の分類クラス(行動Cの分類クラス)の範囲を拡大するために用いられるため、ラベル教示は不要である。
【0044】
図9は、ラベルなしクラスタの他の例を示す図である。クラスタリング部2により
図9に示すようなラベルなしクラスタg,h,iが生成された場合は、評価部3により、ラベルなしクラスタg,fのラベルありクラスタa,b,cに対する重なり状態は上述のパターン5に当てはまると判定され、ラベルなしクラスタiのラベルありクラスタa,b,cに対する重なり状態は上述のパターン3に当てはまると判定さる。この場合、学習属性決定部4により、ラベルなしクラスタg,hに属する各ラベルなしデータの学習属性は、「有用性」の項目の値が「有用」、「再構成タイプ」の項目の値が「細分化」に決定される。また、ラベルなしクラスタiに属する各ラベルなしデータの学習属性は、「有用性」の項目の値が「有用」、「再構成タイプ」の項目の値が「統合」に決定される。そして、これらのラベルなしデータのデータ番号と学習属性とを対応付けた情報が、学習属性決定部4から出力される。
【0045】
図10は、本実施形態の更新支援装置の動作例を示すフローチャートである。本実施形態の更新支援装置は、例えば、1日1回などの予め定めた頻度で、あるいは、ラベルなしデータが所定量蓄積された場合などの予め定めたタイミングで
図10のフローチャートで示す一連の処理を実行する。なお、
図10の各ステップの具体的な内容は上述した通りであるので、ここでは処理の流れのみを説明する。
【0046】
図10のフローチャートで示す処理が開始されると、まず、取得部1が、ラベルありデータとラベルなしデータとを含むセンサデータと、既存の識別辞書とを取得する(ステップS101)。次に、クラスタリング部2が、ステップS101で取得されたラベルありデータの集合を、ステップS101で取得された識別辞書に対応する特徴空間上でクラスタリングし、ラベルありクラスタを生成する(ステップS102)。また、クラスタリング部2は、ステップS101で取得されたラベルなしデータの集合を同じ特徴空間上でクラスタリングし、ラベルなしクラスタを生成する(ステップS103)。
【0047】
次に、評価部3が、ステップS103で生成されたラベルなしクラスタのそれぞれについて、ステップS102で生成されたラベルありクラスタの分布に対するラベルなしクラスタの分布の重なり状態を評価する(ステップS104)。そして、学習属性決定部4が、ステップS104での評価結果に基づいて、ステップS103で生成されたラベルなしクラスタに属する各ラベルなしデータの学習属性を決定し(ステップS105)、ラベルなしデータのデータ番号と学習属性とを対応付けた情報を出力する(ステップS106)。
【0048】
以上、具体的な例を挙げながら詳細に説明したように、本実施形態の更新支援装置は、既存の識別辞書を更新するための学習用データの候補となるラベルなしデータについて、そのラベルなしデータが学習用データとして有用か否かを示す「有用性」の項目と、そのラベルなしデータがどういった形態で分類クラスを再構築するために有用かを示す「再構築タイプ」の項目を持つ学習属性を決定するようにしている。したがって、ユーザは、例えば、学習属性の「有用性」の項目が「有用」であるラベルなしデータ、つまり追加学習用データの数や割合が大きくなった場合に、識別辞書の更新が必要になったと判断することができ、また、その追加学習用データを用いれば識別辞書を適切に更新できると判断することができる。さらに、追加学習用データの学習属性の「再構成タイプ」により、識別辞書を更新することで分類クラスがどのように再構成されるかを予測することができ、また、追加学習用データにラベル教示が必要かどうかを判断することができる。
【0049】
このように、本実施形態の更新支援装置は、既存の識別辞書の更新要否や学習用データに有用なセンサデータを判断するための情報をユーザに与え、識別辞書の更新を適切に支援することができる。
【0050】
なお、以上説明した例では、取得部1がラベルありデータを含むセンサデータを取得し、クラスタリング部2がラベルありクラスタを生成してラベルありクラスタの分布パラメータを求めるようにしているが、ラベルありクラスタの分布パラメータが既知であれば、ラベルありデータの取得およびラベルありクラスタの生成は不要である。この場合、クラスタリング部2は、ラベルなしクラスタのみを生成し、評価部3は、クラスタリング部2が生成したラベルなしクラスタの分布パラメータと、既知のラベルありクラスタの分布パラメータとを用いて、ラベルありクラスタの分布に対するラベルなしクラスタの分布の重なり状態を評価すればよい。
【0051】
また、以上説明した例では、ラベルありクラスタの分布に対するラベルなしクラスタの分布の重なり状態を評価するためにKLダイバージェンスの値を用いたが、分布の重なり状態を評価する方法はこれに限らない。例えば、Histogram Intersection、JSダイバージェンス、L1ノルム、L2ノルムなど、分布の関係を評価できる他の指標を用いてラベルありクラスタの分布に対するラベルなしクラスタの分布の重なり状態を評価してもよい。また、分布の重なり状態は、上述のパターン1〜6のいずれに当てはまるかを評価する例に限らず、ラベルなしデータの有用性を判断可能な様々な観点で評価してもよい。
【0052】
また、以上説明した例では、ラベルなしデータの学習属性が「有用性」と「再構成タイプ」の2つの項目を含むものとして説明したが、ラベルなしデータの学習属性は、少なくとも「有用性」の項目を含めばよく、「有用性」の項目のみを持つ学習属性であってもよいし、例えばラベル教示の要否を示す項目など、他の項目をさらに含む学習属性であってもよい。
【0053】
<第2実施形態>
次に、第2実施形態について説明する。本実施形態の更新支援装置は、上述の第1実施形態の更新支援装置に対して、学習属性決定部4が出力する情報に基づいて既存の識別辞書の更新要否を判定し、既存の識別辞書の更新が必要と判断した場合に識別辞書の更新を促す情報をユーザに提示する機能を付加したものである。なお、その他の構成および動作は上述の第1実施形態と同様であるため、以下では、第1実施形態との共通部分は同一の符号を用いて重複した説明を適宜省略し、本実施形態に特徴的な部分についてのみ説明する。
【0054】
図11は、第2実施形態に係る更新支援装置の機能的な構成例を示すブロック図である。本実施形態の更新支援装置は、
図11に示すように、上述の第1実施形態の更新支援装置(
図1参照)に対し、提示部5が追加された構成となっている。
【0055】
提示部5は、学習属性決定部4が出力する情報に基づいて、既存の識別辞書の更新要否を判定する。例えば、提示部5は、取得部1により取得された上述のラベルなしデータの集合のうち、学習属性により学習用データとして有用であることが示された追加学習用データが占める割合が所定の基準値を超えた場合に、既存の識別辞書の更新が必要と判断する。また、提示部5は、取得部1により取得された上述のラベルなしデータのうち、追加学習用データの総数が所定の基準値を超えた場合に、既存の識別辞書の更新が必要と判断してもよい。提示部5は、既存の識別辞書の更新が必要と判断した場合に、識別辞書の更新を促す情報をユーザに提示する。
【0056】
このとき、提示部5は、ラベルなしデータの集合のうちで追加学習用データが占める割合、または、追加学習用データの総数の経時的な変化を表す情報を、識別辞書の更新を促す情報と併せて提示するようにしてもよい。ラベルなしデータの集合のうちで追加学習用データが占める割合や追加学習用データの総数の経時的な変化は、例えば、学習属性決定部4が過去に出力した情報を保持しておき、学習属性決定部4が出力した最新の情報と併せてこれら過去の情報を分析することにより把握できる。
【0057】
図12は、学習属性決定部4が出力した最新の情報を過去の情報と対比して示す図であり、(a)が2ヶ月前の情報の一例、(b)が1ヶ月前の情報の一例、(c)が最新の情報の一例をそれぞれ示している。この
図12に示す例では、時間の経過とともに、学習属性の「有用性」の項目が「有用」の追加学習用データが増加していることが分かる。
【0058】
図13は、提示部5が提示する情報の一例を示す図である。提示部5は、例えば、ラベルなしデータの集合のうちで追加学習用データが占める割合が所定の基準値を超えた場合に、例えば
図13に示すUI(ユーザインタフェース)画面10を表示装置に表示させることにより、既存の識別辞書を更新する必要性をユーザに認識させることができる。
【0059】
このUI画面10は、
図13に示すように、既存の識別辞書の更新を促すメッセージ11と、追加学習用データの割合の経時的な変化を示すグラフ12とを含む。識別辞書の更新を促すメッセージ11には、「更新」ボタン13と「現状維持」ボタン14とが併せて表示される。「更新」ボタン13が押されると、追加学習用データを学習用データに追加して既存の識別辞書の更新が行われる。一方、「現状維持」ボタン14が押された場合は、識別辞書の更新は行われない。
【0060】
追加学習用データの割合の経時的な変化を示すグラフ12は、白の部分が追加学習用データを表し、黒の部分が、学習属性の「有用性」の項目が「無用」のセンサデータを表している。ユーザは、UI画面10上でこのグラフ12を確認することにより、追加学習用データの増加傾向を一目で把握することができ、追加学習用データが急激に増加している場合に「更新」ボタン13を押して既存の識別辞書の更新を行うなど、適切なタイミングで識別辞書の更新を行うことができる。
【0061】
なお、
図13に示すUI画面10では、追加学習用データの割合の経時的な変化を示すグラフ12を表示しているが、追加学習用データの総数を表すグラフを表示してもよい。また、追加学習用データの割合や総数をグラフではなく数値で表してもよい。また、追加学習用データを、学習属性の「再構成タイプ」の値ごとに分けて表示してもよい。
【0062】
以上説明したように、本実施形態の更新支援装置は、学習属性決定部4が出力する情報に基づいて既存の識別辞書の更新要否を判定し、既存の識別辞書の更新が必要と判断した場合に識別辞書の更新を促す情報をユーザに提示するようにしている。したがって、ユーザは、この情報を参照することで既存の識別辞書の更新が必要であることを容易に判断することができる。
【0063】
また、本実施形態の更新支援装置によれば、識別辞書の更新を促す情報と併せて、ラベルなしデータの集合のうちで追加学習用データが占める割合、または、追加学習用データの総数の経時的な変化を表す情報が提示されるので、ユーザは、追加学習用データの増加傾向を一目で把握することができ、適切なタイミングで識別辞書の更新を行うことができる。
【0064】
<第3実施形態>
次に、第3実施形態について説明する。本実施形態の更新支援装置は、上述の第2実施形態の更新支援装置に対して、追加学習用データの優先度を決定し、優先度が高い順に追加学習用データをユーザに提示する機能を付加したものである。学習属性の「再構成タイプ」の値によりラベル教示が必要とされる追加学習用データは、ユーザによるラベル教示を受け付け可能に提示される。なお、その他の構成および動作は上述の第1実施形態および第2実施形態と同様であるため、以下では、第1実施形態および第2実施形態との共通部分は同一の符号を用いて重複した説明を適宜省略し、本実施形態に特徴的な部分についてのみ説明する。
【0065】
図14は、第3実施形態に係る更新支援装置の機能的な構成例を示すブロック図である。本実施形態の更新支援装置は、
図14に示すように、上述の第2実施形態の更新支援装置(
図11参照)に対し、優先度決定部6が追加された構成となっている。また、学習属性決定部4が出力する情報は、優先度決定部6を介して提示部5に渡される。
【0066】
優先度決定部6は、学習属性決定部4が出力する情報を受け取り、追加学習用データの優先度を決定する。優先度は、既存の識別辞書の更新に用いる学習用データとしての有用性の高さを示す。本実施形態では、クラスタリング部2によるクラスタリングの結果を用いてラベルなしデータの確信度を求め、確信度が低いほど優先度が高いと判断するものとする。確信度は、既存の識別辞書の分類クラスに分類されることの確からしさを示すものであり、確信度が低いほど学習用データとしての有用性が高いことを示している。確信度は、例えば、既存の識別辞書に対応する特徴空間におけるラベルありクラスタの中心(セントロイド)からの距離に基づいて算出する方法などが考えられる。また、既存の識別辞書がセンサデータに対する分類結果の確信度を出力する構成であれば、既存の識別辞書が出力する確信度を用いてもよい。
【0067】
優先度決定部6は、例えば、クラスタリング部2によるクラスタリングの結果を用いて、学習属性が付与されたラベルなしデータの各々の確信度を算出する。そして、学習属性決定部4が出力する情報に対して各ラベルなしデータの確信度を追加し、確信度が低い順(つまり、優先度が高い順)にラベルなしデータをソートして、提示部5に渡す。各ラベルなしデータの確信度が付与された情報の一例を
図15に示し、確信度が低い順にラベルなしデータがソートされた情報の一例を
図16に示す。
図16の例では、学習用データとしての有用性が高い追加学習用データほど上位に配置されていることが分かる。
【0068】
本実施形態の提示部5は、例えば
図13に示したUI画面10上で「更新」ボタン13が押された場合に、優先度決定部6から渡される
図16に示すような情報に基づいて、追加学習用データを優先度が高い順にユーザに提示する。このとき提示部5は、追加学習用データの学習属性の「再構成タイプ」の項目の値からラベル教示の必要性を判断し、ラベル教示が必要とされる追加学習用データは、ユーザによるラベル教示を受け付け可能に提示する。
【0069】
図17は、提示部5が提示する情報の一例を示す図である。提示部5は、例えば、
図13に示したUI画面10上で「更新」ボタン13が押された場合に、
図17に示すような教示画面20をポップアップ表示させることで、追加学習用データを、ユーザによるラベルの教示操作を受け付け可能にユーザに提示する。なお、本実施形態では、システムの運用環境にカメラが設置され、ユーザが作業行動を実施したときの様子がカメラにより撮影されているものとする。
【0070】
この教示画面20は、追加学習用データ(センサデータ)の波形21と、そのセンサデータが出力された際に撮影された画像22と、ラベル教示用ボタン23,24とを含む。ラベル教示用ボタン23は、新規の作業行動のラベルを教示するために操作するボタンであり、ラベル教示用ボタン24は、既知の作業行動(本実施形態では、行動A、行動B、行動C)のラベルを教示するために操作するボタンである。これらは追加学習用データごとに表示され、表示の順番は優先度が高い順である。
【0071】
この教示画面20を参照したユーザは、波形21および画像22を確認しながら、ラベル教示用ボタン23,24を用いて追加学習用データのラベルを教示する操作を行うことができる。例えば、ラベル教示用ボタン23を押すとテキストボックスが表示され、このテキストボックスに新規の作業行動の名前などを入力することで、新規の作業行動に対応する新規の分類クラスのラベルを教示することができる。また、ラベル教示用ボタン24のうちのいずれかを押すと、既知の作業行動に対応する既知の分類クラスのラベルを教示することができる。そして、ラベルが教示された追加学習用データは、既存の識別辞書の更新に用いる学習データに追加される。
【0072】
なお、ラベル教示が不要とされる追加学習用データを提示する際は、ラベル教示用ボタン23,24の代わりに、その追加学習用データを既存の識別辞書の更新に用いる学習データに追加するか否かを選択するためのボタンを表示する構成とすればよい。なお、追加学習用データに対するラベル教示が必要か否かは、上述のように、学習属性の「再構成クラス」の値に基づいて判断するだけでなく、同じラベルなしクラスタに属する他の追加学習用データとの関係も用いて判断してもよい。すなわち、ラベルなしクラスタごとに、そのラベルなしクラスタに属する追加学習用データのうちでラベル教示が必要なものと必要でないものとを分けてもよい。この場合、ラベルなしクラスタの中心(セントロイド)に近い追加学習用データと、ラベルなしクラスタの境界に近い追加学習用データを、ラベル教示が必要な追加学習用データに選定するとよい。
【0073】
また、同じラベルなしクラスタに属し、距離が近い追加学習用データ同士を1つのグループにまとめ、各グループ内で1つの追加学習用データを選定してユーザに提示するようにしてもよい。そして、提示した追加学習用データに対してユーザがラベルを教示する操作または学習用データに追加する操作を行った場合に、提示した追加学習用データと同じグループに属する他の追加学習用データも、既存の識別辞書を更新するための学習用データに追加するようにしてもよい。
【0074】
以上説明したように、本実施形態の更新支援装置は、追加学習用データの優先度を決定し、優先度が高い順に追加学習用データをユーザに提示する。また、ラベル教示が必要とされる追加学習用データについては、ユーザによるラベル教示を受け付け可能に提示する。したがって、ユーザは、既存の識別辞書の更新に用いる学習用データとしての有用性が高いものから順に追加学習用データを確認し、必要に応じてその追加学習用データに対するラベル教示を行うことができ、識別辞書の更新を効率よく行うことができる。
【0075】
<補足説明>
上述した各実施形態の更新支援装置は、例えば、汎用のコンピュータ装置を基本ハードウェアとして用いることで実現することが可能である。すなわち、上述の更新支援装置の各部の機能は、汎用のコンピュータに搭載された1以上のプロセッサにプログラムを実行させることにより実現することができる。このとき、更新支援装置は、上記のプログラムをコンピュータに予めインストールすることで実現してもよいし、コンピュータ読み取り可能な記憶媒体に上記のプログラムを記憶して、あるいはネットワークを介して上記のプログラムを配布して、このプログラムをコンピュータに適宜インストールすることで実現してもよい。
【0076】
図18は、上述した各実施形態の更新支援装置のハードウェア構成例を示すブロック図である。更新支援装置は、例えば
図18に示すように、CPU(Central Processing Unit)などのプロセッサ101と、RAM(Random Access Memory)やROM(Read Only Memory)などのメモリ102と、HDD(Hard Disk Drive)やSSD(Solid State Drive)などのストレージデバイス103と、液晶パネルなどの表示装置106やキーボードやポインティングデバイスなどの入力装置107といった機器を接続するための機器I/F104と、装置外部と通信を行う通信I/F105と、これら各部を接続するバス108とを備えた一般的なコンピュータとしてのハードウェア構成を有する。
【0077】
上述した各実施形態の更新支援装置を
図18に示すハードウェア構成により実現する場合、例えば、プロセッサ101がメモリ102を利用して、ストレージデバイス103などに格納されたプログラムを読み出して実行することにより、上述の取得部1、クラスタリング部2、評価部3、学習属性決定部4、提示部5および優先度決定部6などの各部の機能を実現することができる。
【0078】
なお、上述の各実施形態の更新支援装置の各部の機能は、その一部または全部を、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などの専用のハードウェア(汎用のプロセッサではなく専用のプロセッサ)により実現することもできる。また、複数のプロセッサを用いて上述した各部の機能を実現する構成であってもよい。
【0079】
また、上述の各実施形態の更新支援装置は、複数台のコンピュータ装置を用い、上述の各部の機能を複数台のコンピュータ装置に分散して実現した更新支援システムとして構成してもよい。また、上述の各実施形態の更新支援装置は、クラウドシステム上のサーバ装置として構成してもよいし、クラウドシステム上で動作する仮想マシンであってもよい。
【0080】
以上、本発明の実施形態を説明したが、ここで説明した実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。ここで説明した新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。ここで説明した実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。