図面 (/)

技術 学習モデル作成装置、判定システムおよび学習モデル作成方法

出願人 日本電信電話株式会社
発明者 熊谷充敏折原慎吾岡野靖
出願日 2014年6月4日 (5年6ヶ月経過) 出願番号 2014-116280
公開日 2015年12月21日 (4年0ヶ月経過) 公開番号 2015-230570
状態 特許登録済
技術分野 知識ベースシステム 検索装置 学習型計算機
主要キーワード 正則化パラメータ 機械学習手法 学習データ数 パーセプトロン 収束条件 学習モデル ユーザモデル 判別対象
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2015年12月21日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (11)

課題

判定精度の高い学習モデルを作成する。

解決手段

学習モデル作成装置は、複数のユーザについて、入力情報と、この入力情報に対応したラベルとを少なくとも組とする学習データを受け付ける受付部と、ユーザごとの学習データが示すユーザの特徴に基づいて、ユーザごとに、ユーザの特徴と、他のユーザの特徴との相違を示す指標値を算出する算出部と、複数のユーザの学習データに基づいて、ラベルが未知の入力データに対応したラベルを判定するための学習モデルを作成する際に、ユーザごとに算出された指標値に基づいて、他のユーザと特徴の相違が大きいユーザの学習データが学習モデルに寄与する度合いを小さくして学習モデルを作成する学習モデル作成部とを備える。

概要

背景

従来、機械学習においては、判別対象のデータの入力を受け付け、そのデータの内容の種別(これをラベルとよぶ)を判定して出力する手法として、教師つき学習と呼ばれるものがある。この教師つき学習では、複数のユーザから与えられる学習データを基に学習モデルを作成する。次いで、ラベルが未知であるデータの入力を受け付け、作成した学習モデルに基づいてそのデータのラベルを判定する。なお、学習データは、テキスト、画像、音声等のデータと、そのデータの内容の種別であるラベルとの組を複数のユーザから集めたものである。また、学習モデルは、データに対応するラベルを判定するためのパラメータである。

ラベルが未知であるデータの判定精度は元となる学習モデルによる影響が大きい。このため、学習モデルの作成においては、各ユーザからの学習データを基に、各ユーザ固有の学習モデル(ユーザモデル)を作成し、各ユーザのユーザモデルの単純平均によって、判定に用いる学習モデルを作成するものがある(非特許文献1参照)。また、ラベルの信頼度が所定の基準を満たす学習データ(エキスパートデータ)を基に、非エキスパートデータごとに信頼度を算出し、算出した信頼度を学習データに加味して学習モデルを作成するものがある(特許文献1参照)。

概要

判定精度の高い学習モデルを作成する。学習モデル作成装置は、複数のユーザについて、入力情報と、この入力情報に対応したラベルとを少なくとも組とする学習データを受け付ける受付部と、ユーザごとの学習データが示すユーザの特徴に基づいて、ユーザごとに、ユーザの特徴と、他のユーザの特徴との相違を示す指標値を算出する算出部と、複数のユーザの学習データに基づいて、ラベルが未知の入力データに対応したラベルを判定するための学習モデルを作成する際に、ユーザごとに算出された指標値に基づいて、他のユーザと特徴の相違が大きいユーザの学習データが学習モデルに寄与する度合いを小さくして学習モデルを作成する学習モデル作成部とを備える。

目的

本発明は、上記に鑑みてなされたものであって、判定精度の高い学習モデルを作成することを可能とする学習モデル作成装置、判定システムおよび学習モデル作成方法を提供する

効果

実績

技術文献被引用数
0件
牽制数
1件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

複数のユーザについて、入力情報と、当該入力情報に対応したラベルとを少なくとも組とする学習データを受け付ける受付部と、前記ユーザごとの学習データが示す当該ユーザの特徴に基づいて、前記ユーザごとに、当該ユーザの特徴と、他のユーザの特徴との相違を示す指標値を算出する算出部と、前記複数のユーザの学習データに基づいて、ラベルが未知の入力データに対応したラベルを判定するための学習モデルを作成する際に、前記ユーザごとに算出された指標値に基づいて、他のユーザと特徴の相違が大きいユーザの学習データが前記学習モデルに寄与する度合いを小さくして前記学習モデルを作成する学習モデル作成部とを備えることを特徴とする学習モデル作成装置

請求項2

前記複数のユーザの学習データに基づいて、前記ユーザごとに、当該ユーザの特徴をベクトルで示したユーザモデルを作成するユーザモデル作成部を更に備え、前記算出部は、前記ユーザごとに作成された前記ユーザモデルのベクトルが示す大きさまたは方向、あるいは大きさと方向の両方を、前記ユーザごとに、他のユーザと比較して前記指標値を算出することを特徴とする請求項1に記載の学習モデル作成装置。

請求項3

前記算出部は、前記ユーザごとに作成された前記ユーザモデルの平均のユーザモデルと、前記ユーザごとのユーザモデルとを比較して前記指標値を算出することを特徴とする請求項2に記載の学習モデル作成装置。

請求項4

前記算出部は、前記ユーザごとに、当該ユーザの学習データ数と、他のユーザの学習データ数とを比較して前記指標値を算出することを特徴とする請求項1に記載の学習モデル作成装置。

請求項5

前記学習モデル作成部は、前記ユーザごとに算出された指標値が所定の閾値を超えるか否かに基づいて、前記ユーザの学習データが前記学習モデルに寄与する度合いを変更することを特徴とする請求項1乃至4のいずれか一項に記載の学習モデル作成装置。

請求項6

前記学習モデル作成部は、前記ユーザごとに、当該ユーザの学習データが前記学習モデルに寄与する度合いを更新する処理と、当該更新された度合いをもとに前記学習モデルを更新する処理とを、所定の収束条件を満たすまで繰り返して前記学習モデルを作成することを特徴とする請求項1に記載の学習モデル作成装置。

請求項7

学習モデルを作成する学習モデル作成装置と、前記学習モデルに基づいてラベルが未知の入力データに対応したラベルを判定する判定装置とを有する判定システムであって、前記学習モデル作成装置は、複数のユーザについて、入力情報と、当該入力情報に対応したラベルとを少なくとも組とする学習データを受け付ける受付部と、前記ユーザごとの学習データが示す当該ユーザの特徴に基づいて、前記ユーザごとに、当該ユーザの特徴と、他のユーザの特徴との相違を示す指標値を算出する算出部と、前記複数のユーザの学習データに基づいて、ラベルが未知の入力データに対応したラベルを判定するための前記学習モデルを作成する際に、前記ユーザごとに算出された指標値に基づいて、他のユーザと特徴の相違が大きいユーザの学習データが前記学習モデルに寄与する度合いを小さくして前記学習モデルを作成する学習モデル作成部とを備え、前記判定装置は、前記学習モデル作成部が作成した学習モデルを格納する格納部と、前記格納された学習モデルに基づいて、前記ラベルが未知の入力データに対応したラベルを判定する判定部とを備えることを特徴とする判定システム。

請求項8

学習モデル作成装置によって実行される学習モデル作成方法であって、複数のユーザについて、入力情報と、当該入力情報に対応したラベルとを少なくとも組とする学習データを受け付けるステップと、前記ユーザごとの学習データが示す当該ユーザの特徴に基づいて、前記ユーザごとに、当該ユーザの特徴と、他のユーザの特徴との相違を示す指標値を算出するステップと、前記複数のユーザの学習データに基づいて、ラベルが未知の入力データに対応したラベルを判定するための学習モデルを作成する際に、前記ユーザごとに算出された指標値に基づいて、他のユーザと特徴の相違が大きいユーザの学習データが前記学習モデルに寄与する度合いを小さくして前記学習モデルを作成するステップとを含むことを特徴とする学習モデル作成方法。

技術分野

0001

本発明は、学習モデル作成装置判定システムおよび学習モデル作成方法に関する。

背景技術

0002

従来、機械学習においては、判別対象のデータの入力を受け付け、そのデータの内容の種別(これをラベルとよぶ)を判定して出力する手法として、教師つき学習と呼ばれるものがある。この教師つき学習では、複数のユーザから与えられる学習データを基に学習モデルを作成する。次いで、ラベルが未知であるデータの入力を受け付け、作成した学習モデルに基づいてそのデータのラベルを判定する。なお、学習データは、テキスト、画像、音声等のデータと、そのデータの内容の種別であるラベルとの組を複数のユーザから集めたものである。また、学習モデルは、データに対応するラベルを判定するためのパラメータである。

0003

ラベルが未知であるデータの判定精度は元となる学習モデルによる影響が大きい。このため、学習モデルの作成においては、各ユーザからの学習データを基に、各ユーザ固有の学習モデル(ユーザモデル)を作成し、各ユーザのユーザモデルの単純平均によって、判定に用いる学習モデルを作成するものがある(非特許文献1参照)。また、ラベルの信頼度が所定の基準を満たす学習データ(エキスパートデータ)を基に、非エキスパートデータごとに信頼度を算出し、算出した信頼度を学習データに加味して学習モデルを作成するものがある(特許文献1参照)。

0004

特開2009−282686号公報

先行技術

0005

Hiroshi Kajino, Yuta Tsuboi, Hisashi Kashima, "A Convex Formulation for Learning from Crowds", Proceedings of the Twenty-Sixth AAAIConference on Artificial Intelligence

発明が解決しようとする課題

0006

しかしながら、上述した従来技術では、誤ったラベルを付与されたデータ(以後、これを誤った学習データと呼ぶ)を与えるユーザが存在した場合であっても、そのユーザのユーザモデルも単純平均によって、判定に用いる学習モデルの作成に影響を及ぼすことから、判定精度が落ちてしまう場合があった。また、エキスパートデータが少ない場合には、非エキスパートデータの信頼度を算出することが困難となる。このため、高精度な判定が可能な学習モデルの作成が困難となる場合があった。

0007

本発明は、上記に鑑みてなされたものであって、判定精度の高い学習モデルを作成することを可能とする学習モデル作成装置、判定システムおよび学習モデル作成方法を提供することを目的とする。

課題を解決するための手段

0008

上述した課題を解決し、目的を達成するために、実施形態にかかる学習モデル作成装置は、複数のユーザについて、入力情報と、当該入力情報に対応したラベルとを少なくとも組とする学習データを受け付ける受付部と、前記ユーザごとの学習データが示す当該ユーザの特徴に基づいて、前記ユーザごとに、当該ユーザの特徴と、他のユーザの特徴との相違を示す指標値を算出する算出部と、前記複数のユーザの学習データに基づいて、ラベルが未知の入力データに対応したラベルを判定するための学習モデルを作成する際に、前記ユーザごとに算出された指標値に基づいて、他のユーザと特徴の相違が大きいユーザの学習データが前記学習モデルに寄与する度合いを小さくして前記学習モデルを作成する学習モデル作成部とを備えることを特徴とする。

発明の効果

0009

本発明によれば、判定精度の高い学習モデルを作成することができる、という効果を奏する。

図面の簡単な説明

0010

図1は、第1の実施形態にかかる判定システムの構成の一例を示すブロック図である。
図2は、学習データを説明する説明図である。
図3は、ユーザモデル作成部を説明する説明図である。
図4は、異常度の算出を説明する説明図である。
図5は、異常度の算出を説明する説明図である。
図6は、異常度の算出を説明する説明図である。
図7は、第1の実施形態にかかる判定システムの処理フローを説明する説明図である。
図8は、第2の実施形態にかかる判定システムの構成の一例を示すブロック図である。
図9は、第2の実施形態にかかる学習モデル作成の処理を示すフローチャートである。
図10は、実施形態にかかる判定システムの学習モデル作成装置および判定装置における処理がコンピュータを用いて具体的に実現されることを示す図である。

実施例

0011

以下、添付図面を参照して実施形態にかかる学習モデル作成装置、判定システムおよび学習モデル作成方法を詳細に説明する。なお、以下の説明において、同様の構成要素には共通の符号を付与するとともに、重複する説明を省略する。

0012

(第1の実施形態)
図1は、第1の実施形態にかかる判定システムの構成の一例を示すブロック図である。図1に示すように、判定システム1は、複数のユーザの学習データD1を受け付けて学習モデルM1を作成する学習モデル作成装置10と、ラベルが未知であるデータD2の入力を受け付け、学習モデル作成装置10が作成した学習モデルM1に基づいてデータD2のラベルを判定する判定装置20とを有する。

0013

学習モデル作成装置10は、学習データ変換部101と、学習データ格納部102と、ユーザモデル作成部103と、異常度算出部104と、学習モデル作成部105とを有する。

0014

学習データ変換部101は、学習データD1の入力を受け付ける。学習データD1は、複数のユーザから与えられ、教師つき学習における教師データに相当するデータである。具体的には、学習データD1は、ユーザの入力情報であるテキスト、画像、音声等のデータと、そのデータの内容の種別であるラベルとを少なくとも組としたデータである。

0015

図2は、学習データD1を説明する説明図である。図2に示すように、学習データD1は、ユーザの入力情報がテキストである場合、「野球をしたい」などのテキストと、そのテキスト内容の種別を示す「スポーツ」等のラベルと、ユーザを識別するためのユーザIDとを有する。この学習データD1は、例えばコンソールからの入力の他、インターネット上の掲示板ブログ、SNS(ソーシャルネットワーキングサービス)などへのユーザの書き込みを収集したものであってもよい。

0016

学習データ変換部101は、入力された学習データD1について、データの特徴をn次元ベクトル表記した特徴ベクトルと、ラベルの内容を数値化した数値ラベルの組に変換する。特徴ベクトルへの変換は、機械学習で一般的に用いられている公知の手法を利用する。例えば、データがテキストの場合には、形態素解析、n−gramまたは区切り文字により特徴ベクトルへ変換する手法がある。一般に、形態素解析は日本語のテキストに、空白区切り英語のテキストに適用されることが多く、テキストの種別(日本語/英語)によって手法を変更してもよい。

0017

形態素解析の場合は、予め設定された辞書データをもとに、データを品詞に分割し、分割された要素をもとに特徴ベクトルへ変換する。例えば、「今日は、サッカーを、する」というテキストは、「今日/は/、/サッカー/を/、/する」と分割され、分割された要素をもとに特徴ベクトルに変換する。

0018

また、n−gramの場合は、データを先頭から1文字ずつずらしながらn文字の組をつくり、それらを特徴ベクトルに変換する。例えば、「今日は、サッカーを、する」というテキストは、n−gram(n=6)の場合、「今日は、サッ/日は、サッカ/…/カーを、する」という要素が作られ、これらの要素をもとに特徴ベクトルに変換する。

0019

また、区切り文字の場合は、データを予め定めた区切り文字(空白、句読点カンマ等)によって分割し、分割された要素をもとに特徴ベクトルへ変換する。例えば、「今日は、サッカーを、する」というテキストは、区切り文字(”、”)の場合、「今日は/サッカーを/する」と分割され、分割された要素をもとに特徴ベクトルへ変換する。

0020

特徴ベクトルへの変換には、各要素の出現回数をそのまま特徴ベクトルとする方式、出現回数によらず、ある要素が出現する(1)/出現しない(0)で数値化する方式等がある。ラベルに関しても所定の規則に従って数値化する。例えば、「スポーツ」/「非スポーツ」のラベルがある場合は、「スポーツ」を「1」、「非スポーツ」を「0」のように数値化する。

0021

学習データ格納部102は、学習データ変換部101による変換済の学習データD1と、ユーザIDの組を格納する。学習データ格納部102は、一般のデータベース(MySQLやPostgreSQL等)を用いてもよいし、表形式テキスト形式での格納などであってもよい。学習データ格納部102における、格納方法の種類は問わない。また、学習データ格納部102は、RAM(Random Access Memory)上に確保された作業領域で代用してもよい。

0022

ユーザモデル作成部103は、学習データ格納部102から変換済の学習データD1とユーザIDの組を取り出し、ユーザID(ユーザ)ごとに固有の学習モデルであるユーザモデルを作成する。

0023

図3は、ユーザモデル作成部103を説明する説明図である。図3に示すように、ユーザモデル作成部103は、ユーザIDごとの学習データD11、D12に対応したユーザモデルU1、U2を作成する。ユーザモデルU1、U2は、ユーザIDが「1」、「2」におけるユーザの特徴ベクトルと数値化ラベルとの組をもとに作成される、ユーザごとの学習モデルである。ユーザモデルU1、U2の作成には、一般の機械学習手法である、ロジスティック回帰サポートベクターマシンパーセプトロン等を用いてもよい。作成されたユーザモデルU1、U2は、n次元のベクトルで表記される。

0024

異常度算出部104は、ユーザごとの学習データD1が示す各ユーザの特徴に基づいて、ユーザごとに、ユーザの特徴と、他のユーザの特徴とが、どの程度相違するかを示す指標値である異常度を算出する。具体的には、各ユーザの学習データD1や、ユーザモデルU1、U2を互いに比較することで、あるユーザが他のユーザとどの程度相違するかを示す異常度を算出する。この異常度の算出方法には、大きく分けて、各ユーザの学習データD1の違いにより算出する第1の算出方法、ユーザモデルU1、U2の違いにより算出する第2の算出方法、第1の算出方法と第2の算出方法を組み合わせた第3の算出方法がある。

0025

第1の算出方法では、各ユーザの学習データD1の要素の違いを基に、各ユーザの異常度を算出する。例えば、他のユーザと比べて学習データの要素が極端に少ない、もしくは多いユーザの異常度を高く算出する。

0026

図4は、異常度の算出を説明する説明図であり、より具体的には、第1の算出方法による異常度の算出を説明する図である。図4に示すように、第1の算出方法の具体例としては、全てのユーザの学習データ数の平均(図示例では「40」)を算出し、算出した平均と各ユーザの学習データ数との差を、各ユーザの異常度と定義する方法がある。また、全てのユーザの学習データ数の中央値(図示例では「30」)と、各ユーザの学習データ数の差を、各ユーザの異常度と定義する方法がある。なお、第1の算出方法は、図4の例に限定するものではなく、各ユーザの学習データD1の要素を互いに比較する方法であれば他の方法を用いてもよい。

0027

第2の算出方法では、ユーザモデルU1、U2を表すベクトルの大きさや方向の違いを基に、各ユーザの異常度を算出する。例えば、ユーザモデルU1、U2を表すベクトルの大きさや方向が、他とは異なるユーザの異常度を高く算出する。

0028

図5図6は、異常度の算出を説明する説明図であり、より具体的には、第2の算出方法による異常度の算出を説明する図である。ここで、図5図6におけるV1、V2およびV3はユーザIDが「1」、「2」、「3」のユーザモデルを2次元のベクトルとして表記したものである。また、図5におけるVaは、V1、V2およびV3の平均のベクトルである。また、図6におけるV1n、V2nおよびV3nは、V1、V2およびV3を正規化したベクトルである。また、図6におけるVanは、V1n、V2nおよびV3nの平均のベクトルである。

0029

図5に示すように、第2の算出方法としては、各ユーザのユーザモデルであるV1、V2およびV3の平均をとり、平均とV1、V2およびV3との距離D1、D2、D3をユーザごとの異常度と定義する方法がある。この場合、Vaと、V1、V2およびV3との距離D1、D2、D3が大きくなるほど、異常度は高くなる。

0030

また、図6に示すように、第2の算出方法としては、各ユーザのユーザモデルであるV1、V2およびV3について正規化し、正規化したV1n、V2nおよびV3nの平均をとる。そして、平均したVanと、V1、V2およびV3とのなす角度をユーザごとの異常度と定義する方法がある。この場合、Vanと、V1、V2およびV3とのなす角度が大きくなるほど、異常度は高くなる。なお、第2の算出方法は、図5、6の例に限定するものではなく、各ユーザのユーザモデルU1、U2をもとに比較を行う方法であれば他の方法を用いてもよい。

0031

第3の算出方法としては、例えば、(第1の算出方法で算出された異常度)+(第2の算出方法で算出された異常度)と算出する方法がある。なお、第1の算出方法および第2の算出方法の組み合わせは、上述した単純加算以外に乗算を用いてもよく、特に限定しない。

0032

学習モデル作成部105は、入力された学習データD1に基づいて、判定装置20がデータD2に対応したラベルを判定するための学習モデルM1を作成する。具体的には、学習モデル作成部105は、ユーザモデル作成部103が作成した各ユーザのユーザモデルを統合した学習モデルM1を作成し、判定装置20へ出力する。この学習モデルM1の作成に際し、学習モデル作成部105は、異常度算出部104が算出した各ユーザの異常度に基づいて、他のユーザと特徴の相違が大きい、すなわち異常度の大きいユーザのユーザモデルが学習モデルM1に寄与する度合いを小さくして、学習モデルM1を作成する。異常度に応じてユーザの学習データD1の寄与を変更する方法としては、異常度から各ユーザモデルの重みを定義し、その重み付き平均により学習モデルを作成する方法、所定の閾値未満の重みに対応するユーザモデルを排除した上で学習モデルを作成する方法などがある。

0033

重み付き平均により学習モデルを作成する方法において、ユーザモデルの重みの定め方としては、例えば異常度の逆数を重みとする方法がある。異常度の逆数を重みとする場合、異常度が0の時には、逆数の計算ができないため、予め設定しておいた数値を重みとする等の例外処理を行う。なお、重要度から重みを定める方法は上記に限定しない。

0034

例えば、wiをユーザID=iのユーザモデルとし、λiをユーザモデルwiの重み、Kをユーザの総数としたとき、学習モデルw0は以下の式(1)で算出してもよい。

0035

0036

式(1)を用いる方法では、異常度の高いユーザモデルwiは、学習モデルw0への寄与が小さくなる。

0037

所定の閾値未満の重みに対応するユーザモデルを排除した上で学習モデルを作成する方法としては、重みλiがある所定の閾値を下回っているユーザモデルwiは用いずに学習モデルw0を作成する方法がある。この閾値の設定方法は、ユーザがコンソール等より予め定める方法、重みλiの平均を閾値とする方法があるが、それらに限定しない。

0038

例えば、所定の閾値をaとした場合の学習モデルw0は、以下の式(2)で算出してもよい。

0039

0040

また、重みが閾値a以上となるユーザモデルwiは、すべて均等に扱って学習モデルw0を算出してもよい。この場合、学習モデルw0は、以下の式(3)で与えられる。

0041

0042

なお、すべてのユーザモデルの重みλiが閾値aを下回った場合は、学習モデルw0は0ベクトルとしてもよい。

0043

判定装置20は、データ変換部201と、判定部202と、学習モデル格納部203と、判定結果出力部204とを有する。

0044

データ変換部201は、ラベルが未知であるデータD2を入力として受け付ける。このデータD2は、例えばコンソールからの入力の他、例えば、入力がテキストの場合には、インターネット上の掲示板、ブログ、SNSなどへの任意の書き込みを収集したものであってもよい。データ変換部201は、学習データ変換部101と同様、受け付けたデータD2を特徴ベクトルに変換する。特徴ベクトルに変換されたデータD2は判定部202へ出力される。

0045

判定部202は、特徴ベクトルに変換されたデータD2を受け取ると、学習モデル格納部203に格納されている学習モデルM1を参照し、データD2に対応するラベルを判定する。具体的には、特徴ベクトルと学習モデルM1との内積が0より大きければ数値化ラベル=1、0より小さければ数値化ラベル=0、0であれば数値化ラベル=−1(「−1」は「判定不能」を示す)のように、判定部202は、特徴ベクトルと学習モデルM1との内積の値をもとにラベル判定を行う。

0046

学習モデル格納部203は、学習モデル作成装置10にて作成された学習モデルM1を格納する。学習モデル格納部203は、一般のデータベース(MySQLやPostgreSQL等)を用いてもよいし、表形式やテキスト形式での格納などであってもよい。学習モデル格納部203における、格納方法の種類は問わない。

0047

判定結果出力部204は、判定部202で得られた判定結果(数値化ラベル)を、数値化ラベルとラベル表記との対応テーブルなどを参照し、数値化する前のラベルに変換する。そして、判定結果出力部204は、変換したラベルをユーザに識別可能な判定結果R1として出力する。ただし、判定部202で得られた判定結果が「−1」の場合には、「判定不能」などの文字列を判定結果R1として出力する。ここで、判定結果出力部204が行う判定結果R1の出力は、ディスプレイへの表示出力、HDD(Hard Disk Drive)等の記憶媒体へ書き込み、ネットワーク上の他の情報処理装置(例えばPC(Personal Computer)等)への送信などであってよい。

0048

図7は、第1の実施形態にかかる判定システム1の処理フローを説明する説明図である。図7に示すように、学習モデル作成装置10は、複数のユーザについて、入力情報と、その入力情報に対応したラベルとを少なくとも組とする学習データD11、D12、D13…を受け付ける。そして、学習モデル作成装置10は、学習データ変換部101において、ユーザごとの学習データD11、D12、D13が示す特徴ベクトルへの変換等の学習データ変換の処理を行う(S1)。

0049

次いで、学習モデル作成装置10は、ユーザモデル作成部103において、変換後のデータをもとにユーザモデルを作成し、異常度算出部104において、ユーザごとに、このユーザの特徴と、他のユーザの特徴との相違を示す異常度を算出する。そして、学習モデル作成装置10は、学習モデル作成部105において、算出した異常度と、ユーザモデルとに基づいて学習モデルM1を作成する処理(S2)を行う。このS2では、ユーザごとに算出された異常度に基づいて、他のユーザと特徴の相違が大きいユーザのユーザモデルが学習モデルM1に寄与する度合いを小さくする。

0050

判定装置20は、ラベルが未知のデータD2の入力を受け付ける。そして、判定装置20は、データ変換部201において、受け付けたデータD2の特徴ベクトルへの変換等のデータ変換の処理を行う(S3)。次いで、判定装置20は、判定部202において、データ変換後のデータD2を受け取り、S2で作成された学習モデルM1を参照し、データD2に対応するラベルを判定する(S4)。そして、判定装置20は、判定したラベル(図示例では「スポーツ」)を判定結果R1として出力する。

0051

以上のように、学習モデル作成装置10は、複数のユーザについて、入力情報と、その入力情報に対応したラベルとを少なくとも組とする学習データD1を受け付ける。そして、学習モデル作成装置10は、ユーザごとの学習データD1が示す特徴に基づいて、ユーザごとに、このユーザの特徴と、他のユーザの特徴との相違を示す異常度を算出する。そして、学習モデル作成装置10は、判定装置20がデータD2に対応したラベルを判定するための学習モデルM1を学習データD1に基づいて作成する際に、ユーザごとに算出された異常度に基づいて、他のユーザと特徴の相違が大きいユーザの学習データD1が学習モデルM1に寄与する度合いを小さくする。

0052

このため、学習モデル作成装置10は、誤った学習データD1を与えるユーザが存在した場合であっても、そのユーザの学習データD1が学習モデルM1に寄与する度合いを小さくすることができ、判定精度の高い学習モデルM1を作成することができる。例えば、誤った学習データD1を与えるユーザが少数の場合には、それらのユーザが与える学習データD1やユーザモデルは多数のユーザのものと大きく異なるものとなる。したがって、誤った学習データD1を与えるユーザは異常度が高くなる。異常度の高いユーザの学習データD1は学習モデルM1へ寄与する度合いが小さくなるため、エキスパードデータなどで信頼度を加味することなく、判定精度の高い学習モデルM1の作成が可能となる。また、判定装置20では、学習モデル作成装置10で作成された学習モデルM1を参照してデータD2のラベル判定を行うことから、誤った学習データD1を与えるユーザの影響を抑えた、精度の高い判定を行うことが可能となる。

0053

(第2の実施形態)
次に、第2の実施形態について説明する。上述した第1の実施形態では、各ユーザのユーザモデルを作成した後、ユーザごとの異常度を求め、求めた異常度を重みに変換する。そして、ユーザモデルと重みを用いて学習モデルM1を作成する。すなわち、第1の実施形態では、上述した処理を順次行って学習モデルM1を作成する順次法を例示した。第2の実施形態では、学習モデル(ユーザごとのユーザモデルおよびそれらを統合した学習モデル)と、ユーザごとの重みの更新を繰り返し、所定の収束条件を満たしたところで学習モデルとして出力する繰り返し法を例示する。

0054

図8は、第2の実施形態にかかる判定システム1aの構成の一例を示すブロック図である。図8に示すように、判定システム1aの学習モデル作成装置10aは、初期化部111、学習モデル更新部112及びパラメータ更新部113を有する学習モデル作成部110としているところが判定システム1と異なっている。

0055

初期化部111は、学習データ格納部102から学習データD1を受け取ると、各ユーザ(任意のユーザID=kをユーザkとする)のユーザモデルwk、学習モデルw0、重みλk、正則化パラメータη(実数)を予め定めておいた値で初期化する。次いで、初期化部111は、ユーザモデルwk、学習モデルw0および学習データD1を学習モデル更新部112に出力し、重みλk、正則化パラメータηをパラメータ更新部113へ出力する。

0056

学習モデル更新部112は、各ユーザのユーザモデルwkと学習モデルw0を更新する。ここで、学習モデル更新部112における更新処理の詳細について説明する。先ず、ユーザID=kのユーザkが与えたi番目の学習データD1を(xki,yki)で表す。ここで、xkiはn次元の特徴ベクトル、ykiはラベルを表し、このラベルは0または1の値をとるものとする。なお、特徴ベクトルxkiは列ベクトルである。

0057

また、ユーザkの与えた学習データD1の要素の総数をIkとしたとき、Ik個の特徴ベクトルの転置を縦に並べて作ったIk×n行列を次の式(4)のXkで表す。

0058

0059

ここで、xTkiはxkiの転置を表す。また、行列Aの逆行列はA−1と表記する。

0060

学習モデル更新部112は、各ユーザのユーザモデルwkと学習モデルw0を次の式(5)に従って更新する。なお、式(5)におけるwkは更新前のユーザモデル、wnewkは更新後のユーザモデルを示す。また、w0は更新前の学習モデル、wnew0は更新後の学習モデルを示す。

0061

0062

ここで、βは予め定めておく必要がある正の実数であり、Hとgは次の式(6)で与えられる。

0063

0064

Bkは、(i,i)成分が(1−σ(wTkxki))σ(wTkxki)のIk次対角行列である。また、Dkは、i成分がyki−σ(wTkxki)のIk次列ベクトルである。また、Iはn次単位行列である。ここで、σは次の式(7)で与えられる関数シグモイド関数)である。

0065

0066

学習モデル更新部112における更新は、所定の終了条件(収束条件)が満たされるまで実施される。ここで、終了条件としては、更新の回数予定の数を超えた場合、更新の前後における学習モデルの変化が所定の値以下である場合などがある。

0067

パラメータ更新部113は、各ユーザのユーザモデルにおける重みλkと、正則化パラメータηを次の式(8)に従って更新する。この重みλkは、他のユーザとの相違を示す指標値である。

0068

0069

ここで、Tr[A]は行列Aのトレースを示す。なお、異常度の定め方としては、例えば重みの逆数を異常度とする方法が考えられるが、この方法以外であってもよく、特に限定しない。

0070

上述した、学習モデル更新部112による学習モデル(ユーザごとのユーザモデルおよびそれらを統合した学習モデル)の更新と、パラメータ更新部113によるユーザごとの重みの更新を繰り返すことで得られる学習モデルw0は、式(5)より以下の式(9)となる。

0071

0072

上記の式(9)より、学習モデルw0は、各ユーザモデルwkの重み付き平均の定数倍で与えられることがわかる。なお、第1の実施形態における、所定の閾値未満を切り捨てる場合と同様、ある閾値aを定め、重みが閾値aを下回っているユーザモデルは上記の式で用いずに学習モデルw0を作成してもよい。

0073

図9は、第2の実施形態にかかる学習モデル作成の処理を示すフローチャートである。図9に示すように、学習モデル作成部110における処理が開始されると、初期化部111は、ユーザモデルwk、学習モデルw0、重みλk、正則化パラメータη(実数)を初期化する(S11)。次いで、学習モデル更新部112は、初期化されたユーザモデルwkと学習モデルw0を更新する(S12)。

0074

次いで、パラメータ更新部113は、ユーザモデルにおける重みλkと、正則化パラメータηを更新する(S13)。次いで、学習モデル更新部112は、S13で更新された重みλkと、正則化パラメータηをもとに、ユーザモデルwkと学習モデルw0を更新する(S14)。次いで、学習モデル作成部110は、更新の回数が予定の数を超えたか否か、更新の前後における学習モデルの変化が所定の値以下であるか否かなど、所定の収束条件を満たすか否かを判定する(S15)。

0075

所定の収束条件を満たさない場合(S15:NO)、学習モデル作成部110はS13へ処理を戻す。これにより、所定の収束条件を満たさない間は、ユーザモデルにおける重みλkおよび正則化パラメータηの更新と、ユーザモデルwkおよび学習モデルw0の更新とが交互に繰り返し実施されることとなる。

0076

所定の収束条件を満たす場合(S15:YES)、学習モデル作成部110は処理を終了し、収束条件を満たすまでに演算された学習モデルw0を判定装置20へ出力する。

0077

また、上述した実施形態において説明した学習モデル作成装置10および判定装置20が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上述した実施形態にかかる学習モデル作成装置10および判定装置20における処理と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上述した実施形態と同様の処理を実現してもよい。以下に、上述したプログラムを実行するコンピュータの一例を説明する。

0078

図10は、実施形態にかかる判定システム1の学習モデル作成装置10および判定装置20における処理がコンピュータを用いて具体的に実現されることを示す図である。図10に例示するように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有し、これらの各部はバス1080によって接続される。

0079

メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1031に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1041に接続される。例えば磁気ディスク光ディスク等の着脱可能な記憶媒体が、ディスクドライブに挿入される。シリアルポートインタフェース1050は、例えばマウス1051、キーボード1052に接続される。ビデオアダプタ1060は、例えばディスプレイ1061に接続される。

0080

ハードディスクドライブ1031は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記のプログラムは、コンピュータ1000によって実行される指令が記述されたプログラムモジュール1093として、例えばハードディスクドライブ1031に記憶される。例えば、図1に例示した学習モデル作成装置10の機能構成(学習データ変換部101、学習データ格納部102、ユーザモデル作成部103、異常度算出部104、学習モデル作成部105)や判定装置20の機能構成(データ変換部201、判定部202、判定結果出力部204、学習モデル格納部203)と同様の情報処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1031に記憶される。

0081

また、上述したプログラムを実行する際の作業領域などは、RAM1012に確保される。処理に必要な設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1031に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。

0082

なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093やプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。また、学習モデル作成装置10および判定装置20を備える判定システム1は、上述した一つのコンピュータで実現されるものであってよいことは言うまでもないことである。

0083

1、1a…判定システム
10、10a…学習モデル作成装置
20…判定装置
101…学習データ変換部
102…学習データ格納部
103…ユーザモデル作成部
104…異常度算出部
105、110…学習モデル作成部
111…初期化部
112…学習モデル更新部
113…パラメータ更新部
201…データ変換部
202…判定部
203…学習モデル格納部
204…判定結果出力部
D1、D11、D12、D13…学習データ
D2…データ
M1…学習モデル
U1、U2…ユーザモデル
R1…判定結果
1000…コンピュータ

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ