(57)【要約】【課題】様々な分野のデータ列をより適切にラベリングすることができるラベリング装置およびプログラムを提供する。【解決手段】ラベリング装置１０は、データ列を構成する複数のデータをラベリングする。ラベリング装置１０は、データ列に基づいて複数のデータセッションを形成する。各データセッションは、データ列において連続する２個以上のデータを含み、隣り合うデータセッションの先頭をなすデータはデータ列において互いに１個以上隔たっている。ラベリング装置１０は、各データセッションに含まれるデータに基づき各データセッションにラベルを付与し、各データセッションに付与されたラベルに基づきラベル列を形成し、同一のラベルが連続する区間の始点および終点とラベルとを出力する。【選択図】図２
2018136589.tif 000002
【特許請求の範囲】
【請求項１】
データ列を構成する複数のデータをラベリングする、ラベリング装置であって、
前記データ列に基づいて複数のデータセッションを形成する、データセッション形成機能であって、各前記データセッションは、データ列において連続するｎ１個（ただしｎ１は２以上の整数）のデータを含み、隣り合うデータセッションの先頭をなすデータはデータ列において互いにｕ１個（ただしｕ１は１以上の整数）だけ隔たっている、データセッション形成機能と、
各データセッションに含まれるデータに基づき、各データセッションにラベルを付与する、データセッションラベリング機能と、
各データセッションに付与されたラベルに基づき、ラベル列を形成する、ラベル列形成機能と、
同一のラベルが連続する区間について、当該区間の始点および終点を表す情報と、当該ラベルを表す情報とを出力する、区間出力機能と
を備える、ラベリング装置。
【請求項２】
前記ラベル列に基づいて複数のラベルセッションを形成する、ラベルセッション形成機能であって、各前記ラベルセッションは、ラベル列において連続するｎ２個のラベルを含み、隣り合うラベルセッションの先頭をなすラベルはラベル列において互いにｕ２個（ただしｕ２は１以上の整数）だけ隔たっている、ラベルセッション形成機能と、
各ラベルセッションについてラベルの確率分布を算出する、確率分布算出機能と、
前記確率分布に基づき、各ラベルセッションにラベルを付与する、ラベルセッションラベリング機能と
をさらに備える、請求項１の記載のラベリング装置。
【請求項３】
前記ラベルセッションラベリング機能によって付与されるラベルの種類の数は、前記データセッションラベリング機能によって付与されるラベルの種類の数よりも小さい、請求項２に記載のラベリング装置。
【請求項４】
前記ラベル列形成機能は、各ラベルセッションに付与されたラベルに基づき、ラベル列を形成する機能を含み、
前記ラベリング装置は、
前記ラベルセッション形成機能、前記確率分布算出機能、および、前記ラベルセッションラベリング機能を含むループを、複数回実行する機能と、
前記ループの２回目以降の実行のいずれかにおいて、ｎ２≠１またはｕ２≠１とする機能と、
をさらに備える、
請求項２または３に記載のラベリング装置。
【請求項５】
各前記データは、それぞれ異なる時刻における加速度を表す情報を含む、請求項１〜４のいずれか一項に記載のラベリング装置。
【請求項６】
ｐ個（ただしｐは２以上の整数）の物理的変量の時間的変化をそれぞれ表すデータの系列に含まれるデータを、順繰りに配置することにより前記データ列を形成する機能と、
前記データセッション形成機能におけるｕ１の値を、ｐの整数倍に決定する機能と
をさらに備える、請求項１〜５のいずれか一項に記載のラベリング装置。
【請求項７】
前記区間出力機能は、
ラベル列において同一のラベルが連続するラベル列抽出区間を特定する機能と、
データ列において、前記ラベル列抽出区間に対応するデータ列抽出区間を特定する機能と、
を備え、
前記始点および前記終点は、データ列における前記データ列抽出区間の始点および終点を表す、
請求項１〜６のいずれか一項に記載のラベリング装置。
【請求項８】
コンピュータを、請求項１〜７のいずれか一項に記載のラベリング装置として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ラベリング装置およびプログラムに関する。
【背景技術】
【０００２】
ＩｏＴ時代に突入し、様々な機器がインターネットに繋がるようになり、様々なセンサーのデータをデータ列として大量に取得することができる環境が整いつつある。このようなデータを有効に活用できれば、様々な用途において有益な結果が得られる可能性がある。
【０００３】
用途の一例はディープラーニング技術である。近年、大量のデータを教師データにして、認識・分類・予測などを高精度で行うディープラーニングが流行している。また、特許文献１および２にも、ラベル付きデータの列を用いた学習技術が記載されている。
【０００４】
しかし、大量に取得されるデータ列は、ラベルが付加されていないものが大半であり、そのままでは活用できない場合がある。たとえばディープラーニングの教師データとすることはできない。このため、データ列にラベルを付与する作業が必要となるが、そのような作業は困難な場合がある。
【０００５】
一例として、ディープラーニングに用いる教師データを作成するには、たとえばウェアラブルデバイスの加速度データ列であれば、装着者が何をしていたかを逐次メモしておくか、第三者が装着者を撮影し続ける必要がある。また後ほど加速度データ列とメモまたはビデオを照合して、手動でラベル付けを行う必要がある。これらの作業を数千〜万単位の人を対象にして行うことはコストがかかり過ぎるため現実的ではない。
【０００６】
なお、自動的にラベリングを行う技術として、隠れマルコフモデルを利用するものが公知である。たとえば特許文献３に一例が開示される。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−１１７２９３号公報
【特許文献２】特開２００６−５０１６４号公報
【特許文献３】国際公開第２００７−１３８８８５号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来の技術では、様々な分野のデータ列を適切にラベリングすることが困難であるという問題があった。
【０００９】
たとえば、特許文献３のように隠れマルコフモデルを用いた場合には、波形データのラベリングには比較的良い精度が得られる可能性があるが、波形データ以外のものに対するラベリング精度は必ずしも十分ではない場合がある。
【００１０】
この発明は、このような問題点を解決するためになされたものであり、様々な分野のデータ列をより適切にラベリングすることができるラベリング装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述の問題点を解決するため、この発明に係るラベリング装置は、データ列を構成する複数のデータをラベリングする、ラベリング装置であって、
前記データ列に基づいて複数のデータセッションを形成する、データセッション形成機能であって、各前記データセッションは、データ列において連続するｎ１個（ただしｎ１は２以上の整数）のデータを含み、隣り合うデータセッションの先頭をなすデータはデータ列において互いにｕ１個（ただしｕ１は１以上の整数）だけ隔たっている、データセッション形成機能と、
各データセッションに含まれるデータに基づき、各データセッションにラベルを付与する、データセッションラベリング機能と、
各データセッションに付与されたラベルに基づき、ラベル列を形成する、ラベル列形成機能と、
同一のラベルが連続する区間について、当該区間の始点および終点を表す情報と、当該ラベルを表す情報とを出力する、区間出力機能と
を備える。
特定の態様によれば、
前記ラベル列に基づいて複数のラベルセッションを形成する、ラベルセッション形成機能であって、各前記ラベルセッションは、ラベル列において連続するｎ２個のラベルを含み、隣り合うラベルセッションの先頭をなすラベルはラベル列において互いにｕ２個（ただしｕ２は１以上の整数）だけ隔たっている、ラベルセッション形成機能と、
各ラベルセッションについてラベルの確率分布を算出する、確率分布算出機能と、
前記確率分布に基づき、各ラベルセッションにラベルを付与する、ラベルセッションラベリング機能と
をさらに備える。
特定の態様によれば、前記ラベルセッションラベリング機能によって付与されるラベルの種類の数は、前記データセッションラベリング機能によって付与されるラベルの種類の数よりも小さい。
特定の態様によれば、
前記ラベル列形成機能は、各ラベルセッションに付与されたラベルに基づき、ラベル列を形成する機能を含み、
前記ラベリング装置は、
前記ラベルセッション形成機能、前記確率分布算出機能、および、前記ラベルセッションラベリング機能を含むループを、複数回実行する機能と、
前記ループの２回目以降の実行のいずれかにおいて、ｎ２≠１またはｕ２≠１とする機能と、
をさらに備える。
特定の態様によれば、各前記データは、それぞれ異なる時刻における加速度を表す情報を含む。
特定の態様によれば、
ｐ個（ただしｐは２以上の整数）の物理的変量の時間的変化をそれぞれ表すデータの系列に含まれるデータを、順繰りに配置することにより前記データ列を形成する機能と、
前記データセッション形成機能におけるｕ１の値を、ｐの整数倍に決定する機能と
をさらに備える。
特定の態様によれば、
前記区間出力機能は、
ラベル列において同一のラベルが連続するラベル列抽出区間を特定する機能と、
データ列において、前記ラベル列抽出区間に対応するデータ列抽出区間を特定する機能と、
を備え、
前記始点および前記終点は、データ列における前記データ列抽出区間の始点および終点を表す。
また、この発明に係るプログラムは、コンピュータを上述のラベリング装置として機能させる。
【発明の効果】
【００１２】
この発明に係るラベリング装置およびプログラムによれば、様々な分野のデータ列をより適切にラベリングすることができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態１に係るラベリング装置の構成の例を示す図である。
【図２】図１のラベリング装置が扱うデータ等に係る用語を説明する図である。
【図３】図１のラベリング装置の処理の流れの例を示すフローチャートである。
【図４】図３のステップＳ２およびＳ３で生成されるデータセッションに関する情報を示す図である。
【図５】図３のステップＳ５〜Ｓ７で生成されるラベルセッションに関する情報を示す図である。
【発明を実施するための形態】
【００１４】
以下、この発明の実施の形態を添付図面に基づいて説明する。
実施の形態１．
図１に、本発明の実施の形態１に係るラベリング装置１０の構成の例を示す。ラベリング装置１０は、データ列を構成する複数のデータをラベリングする装置である。「ラベリング」の定義は当業者に周知であるが、たとえば多数のデータを複数のクラスタに分類し、各データに、そのデータが分類されたクラスタに対応するラベルを付与する処理とすることができる。
【００１５】
ラベリング装置１０は公知のコンピュータとしての構成を備え、演算を行う演算手段１１と、情報を格納する記憶手段１２とを備える。また、とくに図示しないが、ラベリング装置１０は、使用者の操作を受け付ける入力手段と、情報を出力する出力手段とを備える。さらに、ラベリング装置１０は、外部の通信ネットワークに対し情報の入出力を行う通信手段とを備えてもよい。
【００１６】
記憶手段１２は、ラベリング処理の対象となるデータと、ラベリング処理に伴って生成されるデータとを格納する。また、記憶手段１２は、図示しないプログラムを格納する。コンピュータの演算手段１１がこのプログラムを実行することにより、そのコンピュータはラベリング装置１０として機能する。すなわち、このプログラムは、コンピュータを、本明細書に記載されるラベリング装置として機能させる。また、コンピュータは、このプログラムを実行することにより、本明細書に記載される機能を実現する。
【００１７】
図２を用いて、図１のラベリング装置１０が扱うデータ等に係る用語を説明する。複数のデータがデータ列を構成している。データ列は、所定数Ｌ個（図２の例ではＬ＝１００）のデータからなる。各データはデータ列において順序付けられている。図２の例では、先頭のデータをデータ＃０、２番目のデータをデータ＃１、…、末尾のデータをデータ＃９９として参照する。各データは、図２の例では単一の数値（スカラー量）であるが、ベクトルであってもよく、その他の形式の情報であってもよい。
【００１８】
ラベリング装置１０は、ラベリング処理の実行に伴い、データ列に基づいて複数のデータセッションを形成する。データセッションは互いに順序関係を有し、それぞれ複数のデータを含む。図２の例では、先頭のデータセッションをデータセッション＃０、２番目のデータセッションをデータセッション＃１、…、末尾のデータセッションをデータセッション＃３０として参照する。
【００１９】
各データセッションのセッション幅は所定値ｎ１（ただしｎ１は２以上の整数。図２の例ではｎ１＝１０）である。すなわち、各データセッションは、データ列において連続する所定数ｎ１個のデータを含む。図２の例では合計３１個のデータセッションが形成されており、これらのデータセッションがデータセッション列を構成する。
【００２０】
ｎ１の値は、データセッション列に含まれるすべてのデータセッションについて同一であるが、後述のように、データセッションまたはデータセッション列を形成する処理が複数回実行される場合には、その都度変化してもよい。
【００２１】
データセッションは等間隔に構成され、データセッション間隔は所定値ｕ１（ただしｕ１は１以上の整数。図２の例ではｕ１＝３）である。すなわち、隣り合うデータセッションの先頭をなすデータは、データ列において互いに所定数ｕ１個だけ隔たっている。より具体的には、データセッション＃０の先頭をなすデータ（すなわちデータ＃０）と、データセッション＃１の先頭をなすデータ（すなわちデータ＃３）とは、データ列における順序が３だけ異なっている。なお、図２の例ではｕ１＜ｎ１であるが、ｕ１＝ｎ１としてもよい。また、ｕ１＝１である場合には、隣り合うデータセッションの先頭をなすデータは、互いに隣り合うことになる。
【００２２】
ｕ１の値は、データセッション列において一定である（すべてのデータセッションが等間隔に配置される）が、後述のように、データセッションまたはデータセッション列を形成する処理が複数回実行される場合には、その都度変化してもよい。
【００２３】
ここで、形成されるデータセッションの数ｍは、（ｕ１＋Ｌ−ｎ１）／ｕ１を超えない最大の整数となる。（図２の例ではデータセッション＃０〜＃３０の合計３１個）
【００２４】
なお、図２および上記の説明から明らかなように、場合によってはいずれのデータセッションにも含まれないデータが存在してもよい。
【００２５】
ラベリング装置１０は、このようなデータ列に対し、後述のラベリング処理を行い、同一のラベルが連続する区間を抽出する。ラベルは、直接的にはデータそのものではなくデータセッション等を単位として付与されるものであるが、各ラベルに対応するデータの区間をデータ列において特定することは可能である。図２の例では、「ラベル＃２」というラベルが付与された連続区間に対応するデータと、「ラベル＃８」というラベルが付与された連続区間に対応するデータと、「ラベル＃６」というラベルが付与された連続区間に対応するデータとが、示されている。
【００２６】
実施の形態１に係るラベリング装置１０の動作を、以下に説明する。
図３は、ラベリング装置１０の処理の流れの例を示すフローチャートである。まずラベリング装置１０はデータ列を取得する（ステップＳ１）。次に、ラベリング装置１０は、データ列に基づき、複数のデータセッションを形成する（ステップＳ２、データセッション形成機能）。ここで、セッション幅ｎ１およびセッション間隔ｕ１の値は、あらかじめ指定されていてもよく、ステップＳ２の実行に関連して使用者から入力されてもよい。
【００２７】
図４に、ステップＳ２で形成されるデータセッションにおけるデータの並びの例を示す。この例は図２のデータ列に対応する。たとえばデータセッション＃０について説明すると、先頭のデータは、データ＃０すなわち「５」の値を持つデータであり、２番目のデータは、データ＃１すなわち「４」の値を持つデータである。
【００２８】
次に、ラベリング装置１０は、各データセッションに含まれるデータに基づき、各データセッションにラベルを付与する（ステップＳ３、データセッションラベリング機能）。ラベルはどのようなものを用いてもよいが、たとえば単にクラスタリング処理に用いるクラスタを識別する番号としてもよい。この場合には、図２に示すように「ラベル＃２」「ラベル＃８」等のラベルが付与されることになる。なお、説明の便宜上、図４ではアルファベットの大文字を用いてラベルを表している。
【００２９】
また、各データセッションに付与すべきラベルを決定する処理は、当業者が任意に設計することができるが、たとえば公知のクラスタリング処理を利用してもよい。たとえば、各データセッションについて、そのデータセッションに含まれる各データを成分とするｎ１次元のベクトルを形成し、ｋ−ｍｅａｎｓ法またはｋ−ｍｅａｎｓ＋＋法を用いて各ベクトルをクラスタリングしてもよい。クラスタリング処理を用いる場合には、クラスタの総数はあらかじめ指定されていてもよく、クラスタリング処理の進行に伴って動的に決定または変更されてもよく、ステップＳ３の実行に関連して使用者から入力されてもよい。
【００３０】
クラスタリング処理においては、適宜の最適化処理を行ってもよい。クラスタリング処理では、通常、計算効率を向上させるため重複するベクトルを削除するが、たとえば、データの有効桁数を決定し、四捨五入などを行い、重複するベクトルを削除してもよい。このようにすることで、集合が小さくなり、より計算効率が高くなる可能性がある。一方で、分類の粒度は低くなる可能性がある。
【００３１】
次に、ラベリング装置１０は、各データセッションに付与されたラベルに基づき、ラベル列を形成する（ステップＳ４、ラベル列形成機能）。たとえば、各データセッションに付与されたラベルを、データセッションの順に並べたものをラベル列とする。図４の例では、「Ａ，Ｂ，Ａ，Ｃ，…」という内容のラベル列が形成されることになる。
【００３２】
ラベル列の表現形式はどのようなものであってもよい。たとえば、各データセッションの先頭のデータに、そのデータセッションと同一のラベルを付与し、ラベルが付与されたデータのラベルをデータの順序に並べた列を形成すれば、上記と実質的に同内容のラベル列を得ることができる。または、すべてのデータに、そのデータを含むデータセッションのうち末尾にあるものと同一のラベルを付与し、データのラベルをデータの順序に並べた列を形成してもよい。（たとえば、図２のデータ＃４は、データセッション＃０およびデータセッション＃１の２つのデータセッションに含まれるが、このうちデータセッション＃１のラベルが、データ＃４に付与されることになる。）このようにすると、ラベルの並びがラベルごとにｎ１回だけ繰り返されるラベル列を得ることができ、図４の例では、「Ａ，Ａ，Ａ，Ｂ，Ｂ，Ｂ，Ａ，Ａ，Ａ，Ｃ，Ｃ，Ｃ，…」という内容のラベル列が形成されることになる。
【００３３】
次に、ラベリング装置１０は、ラベル列に基づき、複数のラベルセッションを形成する（ステップＳ５、ラベルセッション形成機能）。ラベル列とラベルセッションとの関係は、以下に説明するように、図２に示すデータ列とデータセッションとの関係と同一である。
【００３４】
図５に、ステップＳ５で形成されるラベルセッションにおけるラベルの並びの例を示す。この例は図４のラベル列に対応する。たとえばラベルセッション＃０について説明すると、先頭のラベルは、データセッション＃０のラベルすなわち「Ａ」であり、２番目のラベルは、データセッション＃１のラベルすなわち「Ｂ」である。
【００３５】
ラベルセッションは互いに順序関係を有し、それぞれ複数のラベルを含む。各ラベルセッションのセッション幅は所定値ｎ２（ただしｎ２＞０であり、たとえばｎ２は１以上の整数としてもよい。図５の例ではｎ２＝５）である。すなわち、各ラベルセッションは、ラベル列において連続する所定数ｎ２個のラベルを含む。なお、この例ではｎ１＞ｎ２であるが、ｎ１＝ｎ２であってもよいし、ｎ１＜ｎ２であってもよい。
【００３６】
ｎ２の値は、ラベルセッション列に含まれるすべてのラベルセッションについて同一であるが、後述のように、ラベルセッションまたはラベルセッション列を形成する処理が複数回実行される場合には、その都度変化してもよい。
【００３７】
ラベルセッションは等間隔に構成され、ラベルセッション間隔は所定値ｕ２（ただしｕ２は１以上の整数。図２の例ではｕ２＝１）である。すなわち、隣り合うラベルセッションの先頭をなすラベルは、ラベル列において互いに所定数ｕ２個だけ隔たっている。たとえばｕ２＜ｎ２であるが、ｕ２＝ｎ２としてもよい。また、図５のようにｕ２＝１である場合には、隣り合うラベルセッションの先頭をなすラベルは、互いに隣り合うことになる。
【００３８】
ｕ２の値は、ラベルセッション列において一定である（すべてのラベルセッションが等間隔に配置される）が、後述のように、ラベルセッションまたはラベルセッション列を形成する処理が複数回実行される場合には、その都度変化してもよい。
【００３９】
次に、ラベリング装置１０は、各ラベルセッションについてラベルの確率分布を算出する（ステップＳ６、確率分布算出機能）。図５には、各ラベルセッションにおけるラベルの確率分布も示されている。たとえばラベルセッション＃０では、５つのラベルのうち２つが「Ａ」であるので、「Ａ」に対応する確率は０．４となる。
【００４０】
次に、ラベリング装置１０は、ステップＳ６で算出された各ラベルセッションの確率分布に基づき、各ラベルセッションにラベルを付与する（ステップＳ７、ラベルセッションラベリング機能）。図５には、各ラベルセッションに付与されたラベルも示されている。
【００４１】
ラベルはどのようなものを用いてもよい。ステップＳ７で用いるラベル（データセッションに付与されるもの）の集合は、一般的にはステップＳ３で用いるラベル（ラベルセッションに付与されるもの）の集合とは異なるが、同一のものを用いてもよい。たとえば単にクラスタリング処理に用いるクラスタを識別する番号としてもよい。この場合には、図２に示すように「ラベル＃２」「ラベル＃８」等のラベルが付与されることになる。なお、説明の便宜上、図５ではギリシャ文字を用いてラベルを表している。
【００４２】
また、各ラベルセッションに付与すべきラベルを決定する処理は、当業者が任意に設計することができるが、たとえば公知のクラスタリング処理を利用してもよい。たとえば、各ラベルセッションについて、そのラベルセッションに含まれる各ラベルの出現確率を成分とするｎ２次元のベクトルを形成し、ｋ−ｍｅａｎｓ法またはｋ−ｍｅａｎｓ＋＋法を用いて各ベクトルをクラスタリングしてもよい。クラスタリング処理を用いる場合には、クラスタの総数はあらかじめ指定されていてもよく、クラスタリング処理の進行に伴って動的に決定または変更されてもよく、ステップＳ７の実行に関連して使用者から入力されてもよい。
【００４３】
クラスタリング処理においては、適宜の最適化処理を行ってもよい。クラスタリング処理では、通常、計算効率を向上させるため重複するベクトルを削除するが、たとえば、確率の有効桁数を決定し、四捨五入などを行い、重複するベクトルを削除してもよい。このようにすることで、集合が小さくなり、より計算効率が高くなる可能性がある。一方で、分類の粒度は低くなる可能性がある。
【００４４】
次に、ラベリング装置１０は、同一のラベルが連続する区間に関する情報を出力する（ステップＳ８、区間出力機能）。より具体的には、同一のラベルが連続する区間について、当該区間の始点および終点を表す情報と、当該ラベルを表す情報とを出力する。図５の例では、ラベルセッション＃１とラベルセッション＃２とに同一のラベル「α」が付与されているので、この部分に関する情報が出力されることになる。そのような区間が複数存在する場合には、そのそれぞれについて情報を出力してもよい。
【００４５】
ステップＳ８において出力される、区間の始点および終点を表す情報は、任意の形式であってよいが、たとえば次のように表現することができる。
【００４６】
ステップＳ８において、まずラベリング装置１０は、ラベル列において同一のラベルが連続する区間（ラベル列抽出区間）を特定する。すなわち、図５の例ではラベルセッション＃１〜＃２に対応する区間である。
【００４７】
次に、ラベリング装置１０は、データ列において、そのラベル列抽出区間に対応する区間（データ列抽出区間）を特定する。この対応関係は任意に設計可能である。たとえば、ラベル列抽出区間に含まれるすべてのラベルセッションについて、連続する所定数（たとえば先頭からｕ２個）のデータセッションを特定し、さらに、このようにして特定されたすべてのデータセッションについて、連続する所定数（たとえば先頭からｕ１個）のデータを特定し、このようにして特定されたデータからなる区間をデータ列抽出区間とする。このような対応関係を用いる場合、図４および図５の例では、ラベルセッション＃１〜＃２に対応するデータ列抽出区間はデータ＃３〜＃８となり、すなわちデータ＃３が始点となり、データ＃８が終点となる。
【００４８】
または、ラベル列抽出区間に含まれるすべてのデータセッションに含まれるすべてのデータからなる区間をデータ列抽出区間としてもよい。ラベルセッション＃１〜＃２の区間にはデータセッション＃１〜＃６が含まれ、データセッション＃１〜＃６にはデータ＃３〜＃２７が含まれるので、この場合にはデータ＃３が始点となり、データ＃２７が終点となる。なお、この場合において、先頭または末尾（あるいは双方）の所定長の部分については除外するようにしてもよい。たとえば、末尾１９個のデータを除外するようにすると、データ列抽出区間は上の例と同じくデータ＃３〜＃８となる。ここで除外すべき所定長は、ｎ１，ｎ２，ｕ１，ｕ２のうち少なくとも１つに基づいて算出されてもよい。
【００４９】
ラベリング装置１０は、ステップＳ８ではこのようにして、データ列におけるそのデータ列抽出区間の始点および終点を特定し、これらを表す情報を出力する。出力される情報の表現形式は任意に設計可能であるが、数値であってもよく（たとえば「３」および「８」）、画像内の座標であってもよい。画像内の座標とする場合には、たとえば、横軸にデータ番号、縦軸にデータの値を表すグラフとし、データ列抽出区間に対応する横方向区間を特定の色に着色することによって、情報を出力してもよい。着色を用いる場合には、データ列抽出区間とそれ以外の区間とを異なる色とし、データ列抽出区間が複数存在する場合には、それぞれラベルに応じて異なる色としてもよい（ラベル＃２の区間は赤に着色し、ラベル＃８の区間は黄色に着色する、等）。
【００５０】
以上説明するように、実施の形態１に係るラベリング装置１０によれば、様々な分野のデータ列を、より適切にラベリングすることができる。
【００５１】
たとえば、ラベルのないデータ列にパターンや特徴がある場合に、それらを自動的に認識してラベルを付与することが可能となる。また、予めデータ列に正解としてラベルが付与されている場合であっても、その適切さを検証することができる。たとえば、ある区間にわたって同一のラベルが正解として（たとえば手動で）付与されているが、実際にはその区間の前半と後半とで異なる特徴が見いだされる場合等には、本発明によるラベリング装置１０により、特徴が異なる区間に異なるラベルが付与される可能性がある。または、たとえば、よく似た特徴を示す区間に、互いに異なるラベルが正解として付与されている場合等には、本発明によるラベリング装置１０により、それらの区間に共通するラベルが付与される可能性がある。
【００５２】
ラベリングの結果は、たとえばディープラーニングに用いる教師データとして利用することが可能である。
【００５３】
データ列の内容は任意であるが、たとえば加速度の時系列データであってもよい。言い換えると、各データは、それぞれ異なる時刻における加速度を表す情報を含んでもよい。時系列データの場合には、データの並びに意味があるので、ステップＳ３のようなデータの並びに基づくラベリング処理を行うことにより、より適切なラベリングが可能となる。
【００５４】
また、ｋ−ｍｅａｎｓ法またはｋ−ｍｅａｎｓ＋＋法によるクラスタリング処理を用いる場合には、隠れマルコフモデルを用いる従来技術と比較して、より広範な種類のデータに対応可能である。たとえば、楽譜やＤＮＡ配列等からもパターン（同一のラベルが連続する区間）を抽出できる可能性がある。
【００５５】
実施の形態１において、以下のような変形を施すことができる。
実施の形態１では、１回目のラベリング処理（ステップＳ３）はデータの並びに基づき、２回目のラベリング処理（ステップＳ７）はラベルの確率分布に基づいて行われる。変形例として、ラベリング処理の回数および内容を変更してもよい。このような変形例について、以下に具体的に説明する。
【００５６】
一例として、確率分布に基づくラベリング処理を省略してもよい。たとえばステップＳ４〜Ｓ７を省略してもよい。
【００５７】
別の例として、データの並びに基づくラベリング処理を省略してもよい。たとえばステップＳ３において、各データセッションに含まれる各データの値の出現確率を成分とするｎ１次元のベクトルを形成し、ｋ−ｍｅａｎｓ法またはｋ−ｍｅａｎｓ＋＋法を用いて各ベクトルをクラスタリングしてもよい。その場合には、ステップＳ４〜Ｓ７を省略してもよい。
【００５８】
追加のラベリング処理を実行してもよい。たとえば、ステップＳ７で付与されるラベルに基づき、さらにそのラベルについてステップＳ４〜Ｓ７の処理を実行してもよい。この場合には、ステップＳ４のラベル列形成機能は、各ラベルセッションに付与されたラベルに基づき、さらに別のラベル列を形成する機能を含むことになる。
【００５９】
このようなステップＳ４〜Ｓ７の処理は、任意の回数だけループして実行させることもできる。さらに、その場合において、ｎ２の値またはｕ２の値を変化させてもよい。言い換えると、ラベリング装置１０は、ステップＳ５のラベルセッション形成機能、ステップＳ６の確率分布算出機能、および、ステップＳ７のラベルセッションラベリング機能を含むループを、複数回実行する機能をさらに備えてもよい。
【００６０】
さらに、ラベリング装置１０は、このようなループの実行（とくに２回目以降の実行）のいずれかにおいて、ｎ２≠１またはｕ２≠１としてもよい。たとえばｎ２＞１またはｕ２＞１としてもよい。
【００６１】
たとえば、２回目以降の実行のいずれかにおいて、ｎ２＝１とした場合には、１つのラベルセッションに対応する区間に含まれるデータの数は変わらないが、ｎ２＞１とした場合には、１つのラベルセッションに対応する区間に含まれるデータの数が増加することになり、より規模の大きい特徴を重視したラベリング処理が行われる可能性がある。
【００６２】
また、２回目以降の実行のいずれかにおいて、ｕ２＝１とした場合には、隣り合うラベルセッションに対応する区間に含まれるデータの重複部分が比較的大きくなるが、ｕ２＞１とした場合には、隣り合うラベルセッションに対応する区間に含まれるデータの重複部分が比較的小さくなる。これによって、たとえば計算量が減少する可能性がある。
【００６３】
このような追加のラベリング処理は、ステップＳ８の後に配置してもよい。すなわち、特定されたデータ列抽出区間に基づいて各データにラベルを付与し（データ列抽出区間に属しないデータについては、いずれのデータ列抽出区間にも属しないことを表すラベルを付与する）、そのラベルに基づいてステップＳ４〜Ｓ７の処理を実行してもよい。
【００６４】
各ラベリング処理におけるラベルの種類の数（たとえばクラスタリング処理におけるクラスタの数）は、任意に設計可能であるが、処理が進むにつれて減少するように設計してもよい。たとえば、ステップＳ７のラベルセッションラベリング機能によって付与されるラベルの種類の数は、ステップＳ３のデータセッションラベリング機能によって付与されるラベルの種類の数より小さくなるようにしてもよい。また、ステップＳ７のラベルセッションラベリング機能が複数回実行される場合には、後に実行される処理において付与されるラベルの種類の数が、先に実行される処理において付与されるラベルの種類の数より小さくなるようにしてもよい。このようにすると、小さい特徴が集合してより大きい特徴を構成するような構造のデータ列について、より適切にラベリングを行うことができる。
【００６５】
実施の形態１では、データ列は１種類であるが、２以上の異なる種類のデータの系列を混合したデータ列を扱うこともできる。たとえば、加速度の系列（ａ１，ａ２，ａ３，…）と、角速度の系列（ｂ１，ｂ２，ｂ３，…）とについて、これらを交互に配置することによりデータ列（ａ１，ｂ１，ａ２，ｂ２，ａ３，ｂ３，…）を形成する処理を実行してもよい。さらに別の物理量の系列（ｃ１，ｃ２，ｃ３，…）が存在する場合には、３つの系列のデータを順繰りに配置することにより、データ列（ａ１，ｂ１，ｃ１，ａ２，ｂ２，ｃ２，ａ３，ｂ３，ｃ３，…）を形成する処理を実行してもよい。このようなデータ列を形成する処理は、たとえばステップＳ１の後、ステップＳ２の前に挿入可能である。
【００６６】
より一般的に言い換えると、ラベリング装置１０は、ｐ個（ただしｐは２以上の整数）の物理的変量の時間的変化をそれぞれ表すデータの系列に含まれるデータを、順繰りに配置することによりデータ列を形成してもよい。ここで「順繰りに配置する」とは、たとえば、系列間で対応する位置にあるデータを、特定の順序で配置し、これを各位置について繰り返すことをいう。系列の数が２である場合には交互に配置することになる。なお、このような場合には、異なる系列の同じ位置にあるデータは、同じ時刻に対応するデータであることが好ましい。
【００６７】
なお、そのような場合には、各データセッションにおいて対応する位置のデータが同じ物理量を表すようにデータセッションを形成すると好適である。たとえば、２種類のデータの系列を用いる場合には、ｕ１を偶数とすると好適である。言い換えると、ラベリング装置１０は、データセッション形成機能におけるｕ１の値を、ｐの整数倍に決定してもよい。同様に、ｎ１も偶数とするとさらに好適である。
【００６８】
ステップＳ２およびＳ５において、一部のデータまたはラベルをセッションから除外する処理を行ってもよい。たとえば、データ列またはラベル列の一部が特定のラベルに対応することがわかっている場合には、その部分についてはセッションを形成する必要はない（その場合には、その部分について、別途ステップＳ８の出力処理を実行してもよい）。
【符号の説明】
【００６９】
１０  ラベリング装置、Ｓ２  データセッション形成機能、Ｓ３  データセッションラベリング機能、Ｓ４  ラベル列形成機能、Ｓ５  ラベルセッション形成機能、Ｓ６  確率分布算出機能、Ｓ７  ラベルセッションラベリング機能、Ｓ８  区間出力機能。
【図１】
2018136589.tif 000003
【図２】
2018136589.tif 000004
【図３】
2018136589.tif 000005
【図４】
2018136589.tif 000006
【図５】
2018136589.tif 000007
【手続補正書】
【提出日】平成29年12月25日(2017.12.25)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
上述の問題点を解決するため、この発明に係るラベリング装置は、データ列を構成する複数のデータをラベリングする、ラベリング装置であって、
前記データ列に基づいて複数のデータセッションを形成する、データセッション形成機能であって、各前記データセッションは、データ列において連続するｎ１個（ただしｎ１は２以上の整数）のデータを含み、隣り合うデータセッションの先頭をなすデータはデータ列において互いにｕ１個（ただしｕ１は１以上の整数）だけ隔たっている、データセッション形成機能と、
各データセッションに含まれるデータに基づき、各データセッションにラベルを付与する、データセッションラベリング機能と、
各データセッションに付与されたラベルに基づき、ラベル列を形成する、ラベル列形成機能と、
同一のラベルが連続する区間について、当該区間の始点および終点を表す情報と、当該ラベルを表す情報とを出力する、区間出力機能と、
前記ラベル列に基づいて複数のラベルセッションを形成する、ラベルセッション形成機能であって、各前記ラベルセッションは、ラベル列において連続するｎ２個のラベルを含み、隣り合うラベルセッションの先頭をなすラベルはラベル列において互いにｕ２個（ただしｕ２は１以上の整数）だけ隔たっている、ラベルセッション形成機能と、
各ラベルセッションについてラベルの確率分布を算出する、確率分布算出機能と、
前記確率分布に基づき、各ラベルセッションにラベルを付与する、ラベルセッションラベリング機能と
を備える。
特定の態様によれば、前記ラベルセッションラベリング機能によって付与されるラベルの種類の数は、前記データセッションラベリング機能によって付与されるラベルの種類の数よりも小さい。
特定の態様によれば、
前記ラベル列形成機能は、各ラベルセッションに付与されたラベルに基づき、ラベル列を形成する機能を含み、
前記ラベリング装置は、
前記ラベルセッション形成機能、前記確率分布算出機能、および、前記ラベルセッションラベリング機能を含むループを、複数回実行する機能と、
前記ループの２回目以降の実行のいずれかにおいて、ｎ２≠１またはｕ２≠１とする機能と、
をさらに備える。
特定の態様によれば、各前記データは、それぞれ異なる時刻における加速度を表す情報を含む。
特定の態様によれば、
ｐ個（ただしｐは２以上の整数）の物理的変量の時間的変化をそれぞれ表すデータの系列に含まれるデータを、順繰りに配置することにより前記データ列を形成する機能と、
前記データセッション形成機能におけるｕ１の値を、ｐの整数倍に決定する機能と
をさらに備える。
特定の態様によれば、
前記区間出力機能は、
ラベル列において同一のラベルが連続するラベル列抽出区間を特定する機能と、
データ列において、前記ラベル列抽出区間に対応するデータ列抽出区間を特定する機能と、
を備え、
前記始点および前記終点は、データ列における前記データ列抽出区間の始点および終点を表す。
また、この発明に係るプログラムは、コンピュータを上述のラベリング装置として機能させる。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データ列を構成する複数のデータをラベリングする、ラベリング装置であって、
前記データ列に基づいて複数のデータセッションを形成する、データセッション形成機能であって、各前記データセッションは、データ列において連続するｎ１個（ただしｎ１は２以上の整数）のデータを含み、隣り合うデータセッションの先頭をなすデータはデータ列において互いにｕ１個（ただしｕ１は１以上の整数）だけ隔たっている、データセッション形成機能と、
各データセッションに含まれるデータに基づき、各データセッションにラベルを付与する、データセッションラベリング機能と、
各データセッションに付与されたラベルに基づき、ラベル列を形成する、ラベル列形成機能と、
同一のラベルが連続する区間について、当該区間の始点および終点を表す情報と、当該ラベルを表す情報とを出力する、区間出力機能と、
前記ラベル列に基づいて複数のラベルセッションを形成する、ラベルセッション形成機能であって、各前記ラベルセッションは、ラベル列において連続するｎ２個のラベルを含み、隣り合うラベルセッションの先頭をなすラベルはラベル列において互いにｕ２個（ただしｕ２は１以上の整数）だけ隔たっている、ラベルセッション形成機能と、
各ラベルセッションについてラベルの確率分布を算出する、確率分布算出機能と、
前記確率分布に基づき、各ラベルセッションにラベルを付与する、ラベルセッションラベリング機能と
を備える、ラベリング装置。
【請求項２】
前記ラベルセッションラベリング機能によって付与されるラベルの種類の数は、前記データセッションラベリング機能によって付与されるラベルの種類の数よりも小さい、請求項１に記載のラベリング装置。
【請求項３】
前記ラベル列形成機能は、各ラベルセッションに付与されたラベルに基づき、ラベル列を形成する機能を含み、
前記ラベリング装置は、
前記ラベルセッション形成機能、前記確率分布算出機能、および、前記ラベルセッションラベリング機能を含むループを、複数回実行する機能と、
前記ループの２回目以降の実行のいずれかにおいて、ｎ２≠１またはｕ２≠１とする機能と、
をさらに備える、
請求項１または２に記載のラベリング装置。
【請求項４】
各前記データは、それぞれ異なる時刻における加速度を表す情報を含む、請求項１〜３のいずれか一項に記載のラベリング装置。
【請求項５】
ｐ個（ただしｐは２以上の整数）の物理的変量の時間的変化をそれぞれ表すデータの系列に含まれるデータを、順繰りに配置することにより前記データ列を形成する機能と、
前記データセッション形成機能におけるｕ１の値を、ｐの整数倍に決定する機能と
をさらに備える、請求項１〜４のいずれか一項に記載のラベリング装置。
【請求項６】
前記区間出力機能は、
ラベル列において同一のラベルが連続するラベル列抽出区間を特定する機能と、
データ列において、前記ラベル列抽出区間に対応するデータ列抽出区間を特定する機能と、
を備え、
前記始点および前記終点は、データ列における前記データ列抽出区間の始点および終点を表す、
請求項１〜５のいずれか一項に記載のラベリング装置。
【請求項７】
コンピュータを、請求項１〜６のいずれか一項に記載のラベリング装置として機能させるプログラム。