JP6059594B2 - 重み行列更新装置、その動作方法およびコンピュータプログラム - Google Patents

重み行列更新装置、その動作方法およびコンピュータプログラム Download PDF

Info

Publication number
JP6059594B2
JP6059594B2 JP2013101922A JP2013101922A JP6059594B2 JP 6059594 B2 JP6059594 B2 JP 6059594B2 JP 2013101922 A JP2013101922 A JP 2013101922A JP 2013101922 A JP2013101922 A JP 2013101922A JP 6059594 B2 JP6059594 B2 JP 6059594B2
Authority
JP
Japan
Prior art keywords
class
record
weight matrix
weight
training data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013101922A
Other languages
English (en)
Other versions
JP2014222434A (ja
Inventor
良彦 数原
良彦 数原
浩之 戸田
浩之 戸田
西岡 秀一
秀一 西岡
鷲崎 誠司
誠司 鷲崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2013101922A priority Critical patent/JP6059594B2/ja
Publication of JP2014222434A publication Critical patent/JP2014222434A/ja
Application granted granted Critical
Publication of JP6059594B2 publication Critical patent/JP6059594B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、重み行列更新装置、その動作方法およびコンピュータプログラムに関するものである。
テキスト情報を持つ文書を予め定められた複数のカテゴリの中からひとつのカテゴリに分類する場合、予め一定量の文書に対して人手によりカテゴリラベルを付与し、教師あり機械学習の枠組みを用いて推定モデルを学習することで、マルチクラス分類の推定モデルによって未知の文書に対してカテゴリ予測が可能である。この際、テキストに出現する単語頻度を特徴として利用し、たとえば非特許文献1の方法を利用するができる。以降、本稿においてはカテゴリとクラスを同義で用いる。
マルチクラス分類の枠組みでモデルを学習する場合、しばしばクラスの訓練事例数の偏りが発生し、訓練事例数が少ないクラスに比べて訓練事例数が多いクラスに対する損失が大きく算出されてしまう。このため、あるクラスの事例に対して、訓練事例数が多いクラスと予測される誤りが発生するモデルを生成する問題があった。これにより、訓練事例数に偏りがある場合には適切に推定モデルを構築することができず、予測精度が低下する課題があった。
Crammer, K., Dekel, O., Keshet, J., Shalev-Shwartz, S. and Singer,Y., "Online Passive-Aggressive Algorithm", Journal of Machine Learning, Vol.7, pp.551-585, 2006.
本発明は、上記の課題に鑑みてなされたものであり、その目的とするところは、推定モデルを構成する重み行列を更新する訓練事例であるレコード数がクラスによって偏っている場合でも重み行列を適切に更新できる重み行列更新装置、その動作方法およびコンピュータプログラムを提供することにある。
上記の課題を解決するために、第1の本発明は、複数の文書に関する複数の特徴ならびに、前記複数の文書を複数のカテゴリに分ける場合の各カテゴリに対応するクラスが特定され、各文書につき該文書における各特徴の数を有するレコードを備える訓練データDBが設けられている場合に、1つの特徴と1つのクラスからなる組のそれぞれについての重みパラメータを有する重み行列を訓練データDBを用いて更新する重み行列更新装置であって、1つ以上のクラスを対象とし、各対象のクラス(c)につき、対象以外のクラス(i)に関する重みパラメータからなる重みベクトル(w (i))と訓練データDBの1つのレコード内の各特徴の数からなる特徴ベクトル(x)の内積から、対象のクラス(c)に関する重みパラメータ値からなる重みベクトル(w (c))と特徴ベクトルxの内積を減算して得られる最大損失を最大とするようなレコードを前記訓練データDBから選択する手段と、当該選択されたレコードを含む訓練事例集合を用いて前記重み行列を更新する手段とを有することを特徴とする。
例えば、前記選択する手段は、前記最大損失に対し、クラス(c)をクラス(i)と誤る場合の追加コストを加算し、加算後の最大損失を最大とするようなレコードを選択する。
例えば、前記選択する手段は、前記訓練データDBにおける1つのクラスについてのレコードを複数のブロックに分割し、各ブロックにおける最大損失を比較することで、当該クラスについて選択すべきレコードを検出する。
例えば、前記選択する手段は、前記最大損失が上位からk(kは予め設定されたレコード数)番目までのレコードを選択する。
第2の本発明は、複数の文書に関する複数の特徴ならびに、前記複数の文書を複数のカテゴリに分ける場合の各カテゴリに対応するクラスが特定され、各文書につき該文書における各特徴の数を有するレコードを備える訓練データDBが設けられている場合に、1つの特徴と1つのクラスからなる組のそれぞれについての重みパラメータを有する重み行列を訓練データDBを用いて更新する重み行列更新装置の動作方法であって、前記重み行列更新装置が、1つ以上のクラスを対象とし、各対象のクラス(c)につき、対象以外のクラス(i)に関する重みパラメータからなる重みベクトル(w (i))と訓練データDBの1つのレコード内の各特徴の数からなる特徴ベクトル(x)の内積から、対象のクラス(c)に関する重みパラメータ値からなる重みベクトル(w (c))と特徴ベクトルxの内積を減算して得られる最大損失を最大とするようなレコードを前記訓練データDBから選択し、前記重み行列更新装置が、当該選択されたレコードを含む訓練事例集合を用いて前記重み行列を更新することを特徴とする。
例えば、前記重み行列更新装置は、前記最大損失に対し、クラス(c)をクラス(i)と誤る場合の追加コストを加算し、加算後の最大損失を最大とするようなレコードを選択する。
例えば、前記重み行列更新装置は、前記訓練データDBにおける1つのクラスについてのレコードを複数のブロックに分割し、各ブロックにおける最大損失を比較することで、当該クラスについて選択すべきレコードを検出する。
本発明によれば、推定モデルを構成する重み行列を更新する訓練事例であるレコード数がクラスによって偏っている場合でも重み行列を適切に更新できる。
本実施の形態に係る重み行列更新装置を用いた推定モデル生成装置の構成を示す。 ラベル付きテキストDB1のデータ構造の例を示す。 訓練データDB3のデータ構造の例を示す。 訓練データ生成部2の処理の流れを示す。 推定モデルDB5ののデータ構造の例を示す。 推定モデル生成部4の処理の流れを示す。 ステップS2−2におけるデータ分割と並列処理の概略を示す。
以下、本発明の実施の形態について図面を参照して説明する。
図1に示すように、本実施の形態に係る重み行列更新装置を用いた推定モデル生成装置は、ラベル付きテキストデータベース(以下、データベースをDBと略す)1と、訓練データ生成部2と、訓練データDB3と、推定モデル生成部4と、推定モデルDB5とを備える。推定モデル生成部4は、重み行列を更新するものであり、つまり、重み行列更新装置である。
(訓練データ生成部2)
訓練データ生成部2は、ラベル付きテキストDB1を入力とし、訓練データDB3を出力とする。
(ラベル付きテキストDB1)
図2に示すように、ラベル付きテキストDB1は、文書の本文(以下、テキスト情報)に対して、文書IDと、文書のカテゴリを示すカテゴリIDなどを付与したレコードを予め格納したDBである。
(訓練データDB3)
図3に示すように、訓練データDB3は、複数のレコードを有し、レコードは、事例、訓練事例ともいう。各レコードは、文書の文書ID、カテゴリID、特徴ベクトルを含む。ここで文書ID、カテゴリIDは、ラベル付きテキストDB1の文書ID、カテゴリIDに対応する。特徴ベクトルの次元数は語彙異なり数(種類数)である。たとえばx1が東京という単語に対応し、あるレコードにおいてx1の値が2ということは、当該文書のテキスト情報に東京という単語が2つ含まれているということを表している。特徴ベクトルの要素を素性値ともいう。
(訓練データ生成部2)
図4に示すように、
(S1-1)訓練データ生成部2は、ラベル付きテキストDB1から未処理の文書IDを選択する。以下、これをdという。
(S1-2)訓練データ生成部2は、(S1-1)で選択したd(文書ID)に対応する文書のテキスト情報を単語に分割する。テキスト情報の分割には、例えば参考文献1の技術を用いることができる。
訓練データ生成部2は、訓練データDB3に文書IDがdであるレコードがない場合は、その文書IDと、該当のカテゴリIDと、全ての素性値を0とした特徴ベクトルを含むレコードを作成する。
訓練データ生成部2は、分割された各単語について、その数を、訓練データDB3の文書IDがdであるレコードの素性値に加算する。
ここで、該当する素性値に加算するとは、例えば「東京」という単語頻度をx1に加算する、というように単語に対応するxkの値に加算するという意味である。
(S1-3)訓練データ生成部2は、ラベル付きテキストDB1に未処理の文書IDがある場合には(S1-1)に戻り、未処理の文書IDがない場合には処理を終了する。
(推定モデル生成部4)
推定モデル生成部4は、訓練データDB3を入力とし、推定モデルDB5を出力する。推定モデル生成部4が行う処理に使用する最大の試行回数Tは予め設定されているものとする。
(推定モデルDB5)
図5に示すように、推定モデルDB5は、上記のように複数のクラスと複数の特徴が定義され、よって、クラスと特徴の組がクラス数と特徴の数の積の数だけ定義されている状況において、各組に対する重みパラメータを保持した重み行列である。列数は訓練データDB3に格納された特徴ベクトルと同じ次元数であり、すなわちMは語彙異なり数(種類数)と一致する。一方、行数はクラス数と一致する。この例では、クラス数を47としている。
図6に示すように、
(S2-1)推定モデル生成部4は、まず、重み行列の全ての重みパラメータを0に初期化し、試行回数を表す変数tを1に初期化する。
Wtの添え字は試行回数を表しており、Wtは、試行回数tにおける重みパラメータを意味している。
ここで重み行列は、各クラスに対してM個の重みパラメータを保持しており、
Figure 0006059594
であり、i行目がクラスiに対する重みパラメータからなる重みベクトルw(i)によって構成されている。ここでw(i)は、重み行列Wのi行目の重みベクトルを表すものとする。
(S2-2)推定モデル生成部4は、重み行列の更新に用いる訓練事例集合(図示せず、ここでは、D)を空集合として初期化し、訓練データDB3から、現在の重み行列Wtで各クラスの最大損失に対応するレコードを選択する。すなわちクラス数が47の場合には、47個のレコードが選択される。ここでクラスcの最大損失のレコードxt (c)とは、
Figure 0006059594
によって得られるレコードである。
ここで、「・」は内積を示すものであり、maxは、それ以降に記載された式の最大値(最大損失)を示すものであり、argmaxは、それ以降に記載された式(ここでは最大損失)を最大とするような対象(ここでは、訓練データDB3のレコード)を示すものである。
また、X(c)は訓練データDB3のうち、カテゴリIDがcに等しいレコードの集合を表す。また、|C|は総クラス数を表し、たとえば47カテゴリ分類の場合には、47である。
Figure 0006059594
は、クラスcをクラスiと誤る場合の追加コストで、予め設定されているものとする。なお、追加コストは、各クラスにつき、等しく0とし、つまり、特に設定しなくてもよい。
推定モデル生成部4は、得られたレコードxt (c)を、訓練事例集合Dに加える。
式(2)で計算される損失はクラスcをクラスc以外(i)と誤判別する際の確信度の最大値と、正しい予測の確信度の差と解釈することができる。式(2)においては、クラスcにおいて最大損失を与える訓練データDB3のレコードを選択している。このため、各クラスについて、全レコードと全クラスの組み合わせ分だけ損失を計算し、比較を行う必要がある。
この処理を高速に行うため、たとえばOpenMP(http://openmp.org/wp/を参照)などの並列化ライブラリを利用し、各クラスにおける最大損失の選択を並列に実行することで、並列化が可能である。しかしながら、本実施の形態においてはクラス毎に訓練データDB3のレコードの偏りがあることを想定しており、その場合にはレコード数の多いクラスについては他のクラスに比べて最大損失選択の計算コストが高くなる問題がある。
そこで、図7に示すように、レコード数が多いクラスについては複数のブロックに分割し、各ブロックにおける最大損失の値を比較することで当該クラスにおける最大損失のレコードを検出、つまり効率的に発見するという方法を用いることができる。
本実施の形態においては最大損失レコードのみを選択する方法を記載したが、例えば、同様の方法を用い、最大損失が上位からk(kは予め設定されたレコード数)番目までのレコードを選択するという方法も考えられる。
また本実施の形態においては、全クラスの最大損失のレコードを訓練事例集合Dに追加した状態で本ステップを終了する方法を記載している。すなわち|D|=|C|
(ただし、|D|は訓練事例集合Dに含まれるレコード数)である。
しかしながら、全クラスの最大損失のレコードを選択する前に、予め定めたクラス数のクラスについて、訓練事例集合Dへのレコード追加が終わった段階で本ステップを終了する方法も考えられる。その場合には、たとえば|D|に対して閾値判定する方法。前回のイテレーションで処理されなかったクラスが訓練事例集合Dに含まれるように処理する方法などが考えられる。
(S2-3)推定モデル生成部4は、(S2-2)で得られた訓練事例集合D内のレコードを用いて、重み行列W内の重みパラメータを更新し、Wt+1とする。重みパラメータの更新には、例えば、参考文献2の技術を用いることができる。
(S2-4)tをt+1とする。
(S2-5)t≦Tである場合には(S2-2)に戻り、そうでない場合には(S2-6)に進む。
(S2-6)推定モデル生成部4は、現在の重み行列Wを推定モデルDB5に出力する。
以上のように、本実施の形態により、各クラスにつき最大損失を与える訓練データDB3のレコードを選択し、パラメータ更新に用いることにより、レコード数の偏りによる損失計算の偏りの影響を排除することが可能となり、レコード数の偏りがある場合において、適切に推定モデルを構築することが可能となり、予測精度の低下を防ぐことが可能となる。
つまり、推定モデルを構成する重み行列を更新する訓練事例であるレコード数がクラスによって偏っている場合でも重み行列を適切に更新できる。
参考文献1:Takeshi Fuchi, Shinichiro Takagi: Japanese Morphological Analyzer
using Word Co-occurence - JTAG. COLING-ACL, pp.409-413, 1998.
参考文献2:Crammer, K. and Singer, Y., \Ultraconservative online algorithms
for multiclass problems", Journal of Machine Learning Research, vol.3, pp.951{991,
2003.
なお、重み行列更新装置(推定モデル生成部4)としてコンピュータを機能させるためのコンピュータプログラムは、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどのコンピュータ読み取り可能な記録媒体に記録でき、また、インターネットなどの通信網を介して伝送させて、広く流通させることができる。
1…ラベル付きテキストDB
2…訓練データ生成部
3…訓練データDB
4…推定モデル生成部
5…推定モデルDB

Claims (7)

  1. 複数の文書に関する複数の特徴ならびに、前記複数の文書を複数のクラスに分ける場合の各クラスが特定され、各文書につき該文書における各特徴の数を有するレコードを備える訓練データDBが設けられている場合に、1つの特徴と1つのクラスからなる組のそれぞれについての重みパラメータを有する重み行列を訓練データDBを用いて更新する重み行列更新装置であって、
    対象の各クラス(c)につき、対象以外のクラス(i)に関する重みパラメータからなる重みベクトル(w (i))と訓練データDBの1つのレコード内の各特徴の数からなる特徴ベクトル(x)の内積から、対象のクラス(c)に関する重みパラメータ値からなる重みベクトル(w (c))と特徴ベクトルの内積を減算して得られる最大損失を与えるレコードを前記訓練データDBから選択する手段と、
    前記対象の各クラス(c)について、それぞれ最大損失を与えるレコードが追加された訓練事例集合を用いて前記重み行列を更新する手段と
    を有することを特徴とする重み行列更新装置。
  2. 前記選択する手段は、
    前記最大損失に対し、クラス(c)をクラス(i)と誤る場合の追加コストを加算し、加算後の最大損失を最大とするようなレコードを選択する
    ことを特徴とする請求項1記載の重み行列更新装置。
  3. 前記選択する手段は、前記訓練データDBにおける1つのクラスについてのレコードを複数のブロックに分割し、各ブロックにおける最大損失を比較することで、当該クラスについて選択すべきレコードを検出する
    ことを特徴とする請求項1または2記載の重み行列更新装置。
  4. 複数の文書に関する複数の特徴ならびに、前記複数の文書を複数のクラスに分ける場合の各クラスが特定され、各文書につき該文書における各特徴の数を有するレコードを備える訓練データDBが設けられている場合に、1つの特徴と1つのクラスからなる組のそれぞれについての重みパラメータを有する重み行列を訓練データDBを用いて更新する重み行列更新装置の動作方法であって、
    前記重み行列更新装置が、対象の各クラス(c)につき、対象以外のクラス(i)に関する重みパラメータからなる重みベクトル(w (i))と訓練データDBの1つのレコード内の各特徴の数からなる特徴ベクトル(x)の内積から、対象のクラス(c)に関する重みパラメータ値からなる重みベクトル(w (c))と特徴ベクトルの内積を減算して得られる最大損失を与えるレコードを前記訓練データDBから選択し、
    前記重み行列更新装置が、前記対象のクラス(c)について、それぞれ最大損失を与えるレコードが追加された訓練事例集合を用いて前記重み行列を更新する
    ことを特徴とする重み行列更新装置の動作方法。
  5. 前記重み行列更新装置は、
    前記最大損失に対し、クラス(c)をクラス(i)と誤る場合の追加コストを加算し、加算後の最大損失を最大とするようなレコードを選択する
    ことを特徴とする請求項4記載の重み行列更新装置の動作方法。
  6. 前記重み行列更新装置は、前記訓練データDBにおける1つのクラスについてのレコードを複数のブロックに分割し、各ブロックにおける最大損失を比較することで、当該クラスについて選択すべきレコードを検出する
    ことを特徴とする請求項4または5記載の重み行列更新装置の動作方法。
  7. 請求項1ないし3のいずれかに記載の重み行列更新装置としてコンピュータを機能させるためのコンピュータプログラム。
JP2013101922A 2013-05-14 2013-05-14 重み行列更新装置、その動作方法およびコンピュータプログラム Active JP6059594B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013101922A JP6059594B2 (ja) 2013-05-14 2013-05-14 重み行列更新装置、その動作方法およびコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013101922A JP6059594B2 (ja) 2013-05-14 2013-05-14 重み行列更新装置、その動作方法およびコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2014222434A JP2014222434A (ja) 2014-11-27
JP6059594B2 true JP6059594B2 (ja) 2017-01-11

Family

ID=52121929

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013101922A Active JP6059594B2 (ja) 2013-05-14 2013-05-14 重み行列更新装置、その動作方法およびコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP6059594B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101924832B1 (ko) * 2016-12-29 2018-12-05 서울대학교 산학협력단 정점 분류 장치 및 정점 분류 방법
CN108153163A (zh) * 2018-01-30 2018-06-12 深圳源广安智能科技有限公司 一种智能家居系统
CN113283605B (zh) * 2021-07-26 2021-11-09 中国科学院自动化研究所 基于预训练模型的交叉聚焦损失的溯因推理方法

Also Published As

Publication number Publication date
JP2014222434A (ja) 2014-11-27

Similar Documents

Publication Publication Date Title
US10963783B2 (en) Technologies for optimized machine learning training
KR102039394B1 (ko) 탐색 장치 및 탐색 방법
JP5943358B2 (ja) 学習装置、処理装置、予測システム、学習方法、処理方法、およびプログラム
CN110287477A (zh) 实体情感分析方法及相关装置
Duchi et al. Randomized smoothing for (parallel) stochastic optimization
EP3474274A1 (en) Speech recognition method and apparatus
CN112633309A (zh) 基于贝叶斯优化的查询高效的黑盒对抗攻击
JP6509717B2 (ja) 事例選択装置、分類装置、方法、及びプログラム
JP2021504836A5 (ja)
Zhang et al. Quadratic optimal control of switched linear stochastic systems
US10635078B2 (en) Simulation system, simulation method, and simulation program
US20220108215A1 (en) Robust and Data-Efficient Blackbox Optimization
JP5991317B2 (ja) 情報処理システム、ネットワーク構造学習装置、リンク強度予測装置、リンク強度予測方法およびプログラム
US20150371150A1 (en) Analysis device, analysis method, and program
JP6059594B2 (ja) 重み行列更新装置、その動作方法およびコンピュータプログラム
JP2016006617A (ja) 学習装置、学習方法及び学習プログラム
Raymond et al. Genetic programming with rademacher complexity for symbolic regression
JP7267966B2 (ja) 情報処理装置及び情報処理方法
Wan et al. On regression methods for virtual metrology in semiconductor manufacturing
KR20210099795A (ko) 준 지도 학습을 위한 오토인코더 기반 그래프 설계
US20220327394A1 (en) Learning support apparatus, learning support methods, and computer-readable recording medium
US20210012247A1 (en) Information processing apparatus, information processing method, and program
JP6467893B2 (ja) 情報処理システム、情報処理方法、及び、プログラム
US11915120B2 (en) Flexible parameter sharing for multi-task learning
JP2015038709A (ja) モデルパラメータ推定方法、装置、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160726

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160926

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161209

R150 Certificate of patent or registration of utility model

Ref document number: 6059594

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150