(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023036503
(43)【公開日】2023-03-14
(54)【発明の名称】学習装置、ラベル推定装置及びプログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20230307BHJP
G06F 16/383 20190101ALI20230307BHJP
【FI】
G06N20/00 130
G06F16/383
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2021192928
(22)【出願日】2021-11-29
(31)【優先権主張番号】P 2021143490
(32)【優先日】2021-09-02
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】100141139
【弁理士】
【氏名又は名称】及川 周
(74)【代理人】
【識別番号】100171446
【弁理士】
【氏名又は名称】高田 尚幸
(74)【代理人】
【識別番号】100114937
【弁理士】
【氏名又は名称】松本 裕幸
(74)【代理人】
【識別番号】100171930
【弁理士】
【氏名又は名称】木下 郁一郎
(72)【発明者】
【氏名】安田 有希
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175FA01
5B175FB02
5B175FB04
(57)【要約】
【課題】ラベルの推定する作業に要する労力の増大を抑制すること。
【解決手段】文章を示す文章情報と前記文章に付与されるラベルの候補として予め定められた複数のラベルについて前記文章のラベルとして適切である度合を示すラベル適正情報とを含むモデル学習用データを用いた機械学習の方法により、入力された文章情報が示す文章に付与されるべきラベルを推定する数理モデルであるラベル推定モデルを更新するモデル学習部、を備え、 前記ラベル適正情報は、前記モデル学習用データの示す文章に対して付与される確率の高さに関する所定の条件を満たすラベルを示す正否情報と、前記文章に付与されるラベルの候補として予め定められた複数の各ラベルのうちの任意の2つの間の共起の確率 を示す情報であるラベル共起情報と、に基づいて得られた情報である、学習装置。
【選択図】
図1
【特許請求の範囲】
【請求項1】
文章を示す文章情報と前記文章に付与されるラベルの候補として予め定められた複数のラベルについて前記文章のラベルとして適切である度合を示すラベル適正情報とを含むモデル学習用データを用いた機械学習の方法により、入力された文章情報が示す文章に付与されるべきラベルを推定する数理モデルであるラベル推定モデルを更新するモデル学習部、
を備え、
前記ラベル適正情報は、前記モデル学習用データの示す文章に対して付与される確率の高さに関する所定の条件を満たすラベルを示す正否情報と、前記文章に付与されるラベルの候補として予め定められた複数の各ラベルのうちの任意の2つの間の共起の確率を示す情報であるラベル共起情報と、に基づいて得られた情報である、
学習装置。
【請求項2】
前記所定の条件は、モデル学習用データの示す文章に対して付与される確率が最も高い、という条件である、
請求項1に記載の学習装置。
【請求項3】
処理対象の文章を示す情報である対象情報を取得する対象取得部と、
文章を示す文章情報と前記文章に付与されるラベルの候補として予め定められた複数のラベルについて前記文章のラベルとして適切である度合を示すラベル適正情報とを含むモデル学習用データを用いた機械学習の方法により、入力された文章情報が示す文章に付与されるべきラベルを推定する数理モデルであるラベル推定モデルを更新するモデル学習部、を備え、前記ラベル適正情報は、前記モデル学習用データの示す文章に対して付与される確率の高さに関する所定の条件を満たすラベルを示す正否情報と、前記文章に付与されるラベルの候補として予め定められた複数の各ラベルのうちの任意の2つの間の共起の確率を示す情報であるラベル共起情報と、に基づいて得られた情報である学習装置が得た、学習済みのラベル推定モデルを用いて、前記対象取得部の取得した対象情報が示す文章に付与されるべきラベルを推定する、推定部と、
を備えるラベル推定装置。
【請求項4】
請求項1又は2に記載の学習装置としてコンピュータを機能させるためのプログラム。
【請求項5】
請求項3に記載のラベル推定装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、学習装置、ラベル推定装置及びプログラムに関する。
【背景技術】
【0002】
検索を容易にする等の理由から、ニュースなどの文章にその文章に関連するラベルを付与することが望ましい場合がある。例えば、感染症の影響で株価が変動した会社のニュースであれば、感染症や、株価、ビジネスなどの用語がラベルとして付与される。
【先行技術文献】
【特許文献】
【0003】
【非特許文献】
【0004】
【非特許文献1】Grigorios, Tsoumakas, Ioannis Katakis, “Multi-Label Classification: An Overview”
【非特許文献2】Ankit Pal, Muru Selvakumar and Malaikannan Sankarasubbu,“MAGNET: Multi-Label Text Classification using Attention-based Graph Neural Network” arXiv:2003.11644v1
【非特許文献3】Ashutosh Adhikari, Achyudh Ram, Raphael Tang, and Jimmy Lin,“Rethinking Complex Neural Network Architectures for Document Classification” Proceedings of NAACL-HLT 2019, pages 4046-4051
【発明の概要】
【発明が解決しようとする課題】
【0005】
ラベルは1つの文章に1つが付与されれば充分な場合もあるが、文章は複数の言葉で構成される場合が多いので、付与されるラベルが1つでは不十分な場合もある。すなわち、上述の例に示したような、1つの文章に複数のラベルを付与することが望ましい場合もある。しかしながら、文章に付与すべきラベルの数が増えれば増えるほど、ラベルの推定の作業に要する労力は増大してしまう。
【0006】
上記事情に鑑み、本発明は、ラベルの推定する作業に要する労力の増大を抑制する技術を提供することを目的としている。
【課題を解決するための手段】
【0007】
本発明の一態様は、文章を示す文章情報と前記文章に付与されるラベルの候補として予め定められた複数のラベルについて前記文章のラベルとして適切である度合を示すラベル適正情報とを含むモデル学習用データを用いた機械学習の方法により、入力された文章情報が示す文章に付与されるべきラベルを推定する数理モデルであるラベル推定モデルを更新するモデル学習部、を備え、前記ラベル適正情報は、前記モデル学習用データの示す文章に対して付与される確率の高さに関する所定の条件を満たすラベルを示す正否情報と、前記文章に付与されるラベルの候補として予め定められた複数の各ラベルのうちの任意の2つの間の共起の確率を示す情報であるラベル共起情報と、に基づいて得られた情報である、学習装置である。
【0008】
本発明の一態様は、処理対象の文章を示す情報である対象情報を取得する対象取得部と、
文章を示す文章情報と前記文章に付与されるラベルの候補として予め定められた複数のラベルについて前記文章のラベルとして適切である度合を示すラベル適正情報とを含むモデル学習用データを用いた機械学習の方法により、入力された文章情報が示す文章に付与されるべきラベルを推定する数理モデルであるラベル推定モデルを更新するモデル学習部、を備え、前記ラベル適正情報は、前記モデル学習用データの示す文章に対して付与される確率の高さに関する所定の条件を満たすラベルを示す正否情報と、前記文章に付与されるラベルの候補として予め定められた複数の各ラベルのうちの任意の2つの間の共起の確率を示す情報であるラベル共起情報と、に基づいて得られた情報である学習装置が得た、学習済みのラベル推定モデルを用いて、前記文章取得部の取得した対象情報が示す文章に付与されるべきラベルを推定する、推定部と、を備えるラベル推定装置である。
【0009】
本発明の一態様は、上記の学習装置としてコンピュータを機能させるためのプログラムである。
【0010】
本発明の一態様は、上記のラベル推定装置としてコンピュータを機能させるためのプログラムである。
【発明の効果】
【0011】
本発明により、ラベルの推定する作業に要する労力の増大を抑制する技術を提供することが可能となる。
【図面の簡単な説明】
【0012】
【
図1】実施形態のラベル推定システムを説明する説明図。
【
図2】実施形態におけるラベル共起情報の一例を示す図。
【
図3】実施形態におけるラベル適正情報生成処理の一例を説明する図。
【
図4】実施形態における学習装置1のハードウェア構成の一例を示す図。
【
図5】実施形態における制御部11の構成の一例を示す図。
【
図6】実施形態における学習装置1が実行する処理の流れの一例を示すフローチャート。
【
図7】実施形態におけるラベル推定装置2のハードウェア構成の一例を示す図。
【
図8】実施形態における制御部21の構成の一例を示す図。
【
図9】実施形態におけるラベル推定装置2が実行する処理の流れの一例を示すフローチャート。
【
図10】実施形態のラベル推定システムを用いた実験結果の一例を示す第1の図。
【
図11】実施形態のラベル推定システムを用いた実験結果の一例を示す第2の図。
【
図12】実施形態のラベル推定システムを用いた実験結果の一例を示す第3の図。
【
図13】変形例における制御部の構成の一例を示す図。
【発明を実施するための形態】
【0013】
(実施形態)
図1は、実施形態のラベル推定システム100を説明する説明図である。ラベル推定システム100は、文章に付与されるべきラベルを推定するシステムである。ラベル推定システム100は、文章に付与されるべきラベルを推定する数理モデルを機械学習の方法により得る。ラベル推定システム100は、取得した数理モデルを用いて、入力された文章に付与されるべきラベルを推定する。
【0014】
より具体的には、数理モデルの取得を終えたラベル推定システム100は、文章情報が入力された際に、取得した数理モデルを用い、文章情報に基づき文章情報が示す文章に付与されるべきラベルを推定する。文章情報は、文章を示す情報である。より具体的にラベル推定システム100を説明する。ラベル推定システム100は、学習装置1とラベル推定装置2とを備える。
【0015】
学習装置1は、機械学習の方法によりラベル推定モデルを更新することで学習済みラベル推定モデルを得る。ラベル推定モデルは、入力された文章情報に基づき入力された文章情報が示す文章(以下「対象文章」という。)に付与されるべきラベルを推定する数理モデルであって学習に関する所定の終了条件が満たされる前の数理モデルである。
【0016】
より具体的にはラベル推定モデルが推定する結果は、ラベル適正情報である。ラベル適正情報は、ラベル適正度を、ラベル候補それぞれについて示す情報である。ラベル適正度は、ラベルが対象文章のラベルとして適切である度合である。ラベル候補は、対象文章に付与されるラベルの候補として予め定められた複数の各ラベルである。ラベル候補は、例えば“感染症”、“ビジネス”、“スポーツ”、“株価”等の対象文章に関連付けられ得る用語である。
【0017】
学習済みラベル推定モデルは、学習に関する所定の終了条件(以下「学習終了条件」という。)が満たされた時点のラベル推定モデルである。学習終了条件は、例えば、学習によるラベル推定モデルの変化が所定の変化より小さいという条件である。学習終了条件は、例えば、学習の回数が所定の回数に達した、という条件であってもよい。
【0018】
以下、学習装置1が学習済みラベル推定モデルを得る処理をモデル学習処理という。機械学習の方法は、学習済みラベル推定モデルを得ることができればどのような方法であってもよい。機械学習の方法は、例えばCNN(Convolutional Neural Networks)を用いる方法であってもよいし、LSTM(Long short-term memory)を用いる方法であってもよいし、BERT(Bidirectional Encoder Representations from Transformers)を用いる方法であってもよい。
【0019】
学習済みラベル推定モデルを得るための機械学習の方法では、文章情報を説明変数として有するデータが用いられる。説明変数に対応する目的変数は、ラベル適正情報を示す。以下、説明変数として文章情報を有し、目的変数としてラベル適正情報を有するデータを、モデル学習用データという。モデル学習用データは学習済みラベル推定モデルの取得に用いられるデータである。すなわちモデル学習用データはラベル推定モデルの学習に用いられるデータである。以下、モデル学習用データの有するラベル適正情報を教師データという。
【0020】
<ラベル適正情報の表現の具体例>
ラベル適正情報の表現の具体例を説明する。ラベル候補がN個(Nは自然数)であるとき、ラベル適正情報は、例えばN次元のベクトルで表現される。N次元ベクトルの各要素はN個のラベル候補のいずれか1つに対応付けられており、インデックスnの異なる要素は異なるラベル候補に対応付けられている。nは1以上N以下の自然数である。なお、インデクッスnは、ラベル候補を区別する指標であり、なおかつ、N次元ベクトルのn番目の要素を示す指標である。以下、説明の簡単のため、ラベル候補がN個である場合を例にラベル推定システム100を説明する。
【0021】
ラベル適正情報を表現するN次元ベクトルの各要素は、対応する各ラベル候補のラベル適正度を示す。ラベル適正度は、例えば0以上1以下の値で示される。このような場合、ラベル適正情報を表現するN次元のベクトルの各要素の値は、例えば0に近いほど対応するラベル候補が文章情報の示す文章のラベルとして不適切であることを示す。一方、ラベル適正情報を表現するN次元のベクトルの各要素は、例えば値が1に近いほど対応するラベル候補が文章情報の示す文章のラベルとして適切であることを示す。
【0022】
<モデル学習処理と損失関数とについて>
モデル学習処理についてより詳細に説明する。モデル学習処理は、上述したように、モデル学習用データを用いた機械学習の方法により、学習終了条件が満たされるまでラベル推定モデルを更新する処理である。モデル学習処理では、損失関数を用いて計算された損失を小さくするようにラベル推定モデルの更新が行われる。なお損失関数を用いて計算された損失とは損失関数の値であり、例えばラベル推定モデルの出力と教師データとの不一致度を表す値である。
【0023】
損失関数は、教師データとラベル推定モデルの推定結果との一致度と不一致度とを用いて表現される指標である。損失関数は、例えば以下の式(1)で定義されるバイナリクロスエントロピーであってもよい。
【0024】
【0025】
ynは、教師データが示すラベル適正度であってインデクッスnのラベル候補のラベル適正度を示す。y{^}nは、ラベル推定モデルによって推定されたラベル適正度であってインデクッスnのラベル候補のラベル適正度を示す。なお、A{^}は、記号Aにサーカムフレックスが付与された記号を示す。したがって、y{^}nは、記号yにサーカムフレックスが付与された記号に下付き文字nが付与された記号を意味する。より具体的にはy{^}nは以下の式(2)の記号を意味する。
【0026】
【0027】
式(1)における以下の式(3)で表現される項は、ラベル推定モデルの推定結果と教師データとが定性的に一致する場合におけるラベル推定モデルの推定結果と教師データとの間の定量的な違いを示す。
【0028】
【0029】
式(1)における以下の式(4)で表現される項は、ラベル推定モデルの推定結果と教師データとが定性的に不一致である場合におけるラベル推定モデルの推定結果と教師データとの間の定量的な違いを示す。
【0030】
【0031】
なお、損失関数を小さくするよう更新の具体的な一例は、式(1)が示す損失関数を用いて、ラベル推定モデルが不正解ラベル情報を推定する確率を増大させないようにラベル推定モデルを更新する処理である。不正解ラベル情報は、定性的に教師データと不一致なラベル適正情報である。
【0032】
ラベル推定装置2は、学習装置1が取得した学習済みラベル推定モデルを用いて、入力された文章情報が示す対象文章に付与されるべきラベルを推定する。より具体的には、ラベル推定装置2は、学習装置1が取得した学習済みラベル推定モデルを用いて、入力された文章情報が示す対象文章に対するラベル候補それぞれのラベル適正度を推定する。
【0033】
<モデル学習用データが含むラベル適正情報の生成について>
モデル学習用データが含むラベル適正情報を生成する方法の一例について説明する。ラベル適正情報は、例えば人手又は装置により、正否情報とラベル共起情報とに基づいて生成される。
【0034】
正否情報は、モデル学習用データが含む文章情報の示す文章に対して付与される確率の高さに関する所定の条件を満たすラベルを示す情報である。すなわち、正否情報は、モデル学習用データの示す文章に対するラベル適正度の高さに関する所定の条件を満たすラベルを示す情報である。ラベル適正度の高さに関する所定の条件(以下「ラベル適正条件」という。)は、例えば、ラベル適正度が最も高い、という条件である。正否情報は、ラベル適正条件を満たすラベルが複数である場合には、複数のラベルを示してもよい。正否情報は、例えば、付与される確率の最も高いラベルに対応する要素の値のみ1であり、他の要素の値が0である、N次元のベクトルで表現される。以下、説明の簡単のためラベル適正条件が、ラベル適正度が最も高い、という条件である場合を例に、ラベル推定システム100を説明する。
【0035】
ラベル共起情報は、N個のラベル候補のうちの任意の2つのラベル候補の間の共起の確率を示す情報である。共起の確率とは、具体的には、一方のラベル候補が文章中に出現する場合に、他方のラベル候補が文章中に出現する確率である。なお、ラベル共起情報は、同一のラベル候補間の共起の確率を示してもよい。同一のラベル候補間の共起の確率とは自己相関のことなので、同一のラベル候補間の共起の確率は1である。なお、ラベル共起情報は必ずしも同一のラベル候補間の共起の確率を示す必要は無く、このような場合にはラベル共起情報が示す同一のラベル候補間の共起の確率は、例えば0である。
【0036】
図2は、実施形態におけるラベル共起情報の一例を示す図である。ラベル共起情報は、例えば要素の値が0以上1以下の正定値行列で表現される。
図2の例では、縦と横はそれぞれラベル候補を示し、対角成分は自己相関を示す。
【0037】
図2のラベル共起情報は、より具体的には、ラベル候補の同士のPPMI(Positive Pointwise Mutual Information)スコアを示す行列である。なお、PPMIスコアは以下の式(5)で定義される。
【0038】
【0039】
式(5)において、lnはインデックスnのラベル候補を示し、lmはインデックスmのラベル候補を示す。なお、mは、1以上N以下の整数である。mはnと同じ値であってもよいし異なってもよい。C(ln)は、予め用意された複数の所定の文章の集合(以下「事前文章集合」という。)におけるインデクッスnのラベル候補の出現回数を示す。C(lm)は、事前文章集合におけるインデクッスmのラベル候補の出現回数を示す。C(ln、lm)は、事前文章集合におけるインデックスnのラベル候補とインデクッスmのラベル候補との共起回数を示す。
【0040】
以下、正否情報とラベル共起情報とに基づきラベル適正情報を生成する処理を、ラベル適正情報生成処理という。ラベル適正情報生成処理では、例えば、正否情報を表現するベクトルの要素の値が1であるラベル候補について、他のラベル候補が共起する確率がラベル共起情報を用いて取得される処理が実行される。正否情報を表現するベクトルの要素の値が1のラベル候補が複数の場合には、例えば、要素の値が1の複数のラベル候補について他のラベル候補が共起する確率を取得し、他のラベル候補ごとに共起する確率の和が算出される。ラベル適正情報生成処理では次に、シグモイド関数等の独立変数の値を0以上1以下の所定の値に制限する関数を用いて、他のラベル候補の共起する確率を0以上1以下の値に変換する処理が実行される。
【0041】
ラベル適正情報生成処理では、正否情報を表現するベクトルについて、正否情報を表現するベクトルの値が0であった要素の値が、変換後の値に置き換えられる処理(以下「置き換え処理」という。)が実行される。置き換え処理によって要素の値が変更された正否情報が、ラベル適正情報である。
【0042】
図3は、実施形態におけるラベル適正情報生成処理の一例を説明する図である。より具体的には、
図3は、ラベル共起情報がラベル候補の同士のPPMIスコアを示す行列(以下「PPMI行列」という。)である場合を例に、ラベル適正情報生成処理の一例を説明する説明図である。
【0043】
図3は画像G1~G5を示す。画像G1は、正否情報の一例を示す。画像G1の正否情報は、ラベル候補として、“スポーツ”、“ビジネス”、”健康”、“ワクチン”及び“感染症”の5つを示す。画像G1は、”ビジネス”と”感染症”とのラベル適正度が最も高いことを示す。
図3において、”ビジネス”と”感染症”とは、ラベル適正条件を満たすラベル候補である。
【0044】
画像G2は、PPMI行列の一例を示す。画像G3は、シグモイド関数を示す。画像G4は、PPMI行列の行のうち、ラベル適正条件を満たす行のベクトル和を得る処理を表す。具体的には、ラベル候補が”ビジネス”のラベル候補と共起する確率を示す行と、ラベル候補が”感染症”のラベル候補と共起する確率を示す行と、のベクトル和を得る処理を表す。画像G5は、ラベル適正情報の一例を示す。
【0045】
ラベル適正情報生成処理では、画像G4が示すように、PPMI行列における正解ラベルとラベル候補との間の共起の確率を示す行(以下「主共起行」という。)を足し合わせる処理が実行される。以下、PPMI行列における主共起行を足し合わせる処理を、足し合わせ処理という。
図3の例では、”ビジネス”と“感染症”とがそれぞれ正解ラベルであり、”ビジネス”の行と”感染症”の行とを足し合わせる処理が足し合わせ処理である。正解ラベルとは、正否情報を示すN次元ベクトルの要素に対応するラベル候補のうち値が1の要素に対応するラベル候補である。すなわち、正解ラベルとは、ラベル適正条件を満たすラベル候補である。
【0046】
足し合わせ処理の実行により、正解ラベルと共起しやすい不正解ラベルのPPMIスコアを不正解ラベルごとに足し合わせることが行われる。足し合わせの結果得られる情報は、例えばN次元のベクトルで表現される。
図3の例あれば、“ビジネス”と共起しやすい不正解ラベルのPPMIスコアと”感染症”と共起しやすい不正解ラベルのPPMIスコアとを足し合わせることが、足し合わせ処理により行われる。
【0047】
不正解ラベルは、正否情報を示すN次元ベクトルの要素に対応するラベル候補のうち値が0の要素に対応するラベル候補である。すなわち、不正解ラベルとは、ラベル候補のうち正解ラベルではないラベル候補である。
図3の例では、”スポーツ”、“健康”、”ワクチン”である。
【0048】
ラベル適正情報生成処理では、次に、足し合わせ処理の実行により得られたN次元のベクトル(以下「足し合わせ結果ベクトル」という。)を画像G3に示すシグモイド関数に入力することにより、足し合わせ結果ベクトルの各要素の値を0以上1以下の値に正規化する処理が実行される。以下、足し合わせ結果ベクトルをシグモイド関数に入力することにより、足し合わせ結果ベクトルの各要素の値を0~1に正規化する処理を、第1正規化処理という。第1正規化処理は以下の式(6)によって定義される。
【0049】
【0050】
PnmはPPMI行列を意味する。σ(・)は、シグモイド関数を表す。
【0051】
ラベル適正情報生成処理では第1正規化処理の実行後に、得られたスコアSnとベクトルynとを足し合わせる処理(以下「平滑化処理」という。)が実行される。ラベル適正情報生成処理では、第1正規化処理の実行後に、以下の式(7)及び(8)によって示される正規化の処理(以下「第2正規化処理」という。)も実行される。
【0052】
【0053】
【0054】
p´nmはPPMI行列P´におけるn行m列目の要素を意味する。ymは、インデックスがmの正解ラベルとラベル候補との間の共起の確率を示す行を示すベクトルである。snは、ベクトルである。αは、平滑化の強度を意味するハイパーパラメータ(0以上1以下の係数)である。αは例えば、スケーリングレートと呼称される0以上1以下の係数である。このように、置き換え処理は、足し合わせ処理、第1正規化処理、平滑化処理及び第2正規化処理を含む。このようにして得られたyn´がラベル適正情報の一例である。
【0055】
図4は、実施形態における学習装置1のハードウェア構成の一例を示す図である。学習装置1は、バスで接続されたCPU(Central Processing Unit)等のプロセッサ91とメモリ92とを備える制御部11を備え、プログラムを実行する。学習装置1は、プログラムの実行によって制御部11、入力部12、通信部13、記憶部14及び出力部15を備える装置として機能する。
【0056】
より具体的には、プロセッサ91が記憶部14に記憶されているプログラムを読み出し、読み出したプログラムをメモリ92に記憶させる。プロセッサ91が、メモリ92に記憶させたプログラムを実行することによって、学習装置1は、制御部11、入力部12、通信部13、記憶部14及び出力部15を備える装置として機能する。
【0057】
制御部11は、学習装置1が備える各種機能部の動作を制御する。制御部11は、例えばモデル学習処理を実行する。制御部11は、例えばラベル適正情報生成処理を実行してもよい。上述したようにラベル適正情報生成処理は、人手で行われてもよいが、装置が実行してもよい。以下、学習装置1がラベル適正情報生成処理を実行する場合を例に、ラベル推定システム100を説明する。
【0058】
制御部11は、例えば出力部15の動作を制御する。制御部11は、例えばモデル学習処理の実行により生じた各種情報を記憶部14に記録する。制御部11は、例えば得られたラベル適正情報を記憶部14に記録する。
【0059】
入力部12は、マウスやキーボード、タッチパネル等の入力装置を含んで構成される。入力部12は、これらの入力装置を学習装置1に接続するインタフェースとして構成されてもよい。入力部12は、学習装置1に対する各種情報の入力を受け付ける。
【0060】
通信部13は、学習装置1を外部装置に接続するための通信インタフェースを含んで構成される。通信部13は、有線又は無線を介して外部装置と通信する。外部装置は、例えば正否情報の送信元の装置である。外部装置は、例えばラベル共起情報の送信元の装置である。外部装置は、例えばモデル学習用データの送信元の装置である。外部装置は、例えばラベル推定装置2である。なお、正否情報、ラベル共起情報及びモデル学習用データのそれぞれは、必ずしも通信部13を介して入力される必要は無く、入力部12に入力されてもよい。
【0061】
記憶部14は、磁気ハードディスク装置や半導体記憶装置などのコンピュータ読み出し可能な記憶媒体装置を用いて構成される。記憶部14は学習装置1に関する各種情報を記憶する。記憶部14は、例えば入力部12又は通信部13を介して入力された情報を記憶する。記憶部14は、例えばモデル学習処理の実行により生じた各種情報を記憶する。記憶部14は、例えばラベル適正情報を記憶する。記憶部14は、予めラベル推定モデルを記憶する。記憶部14は、得られた学習済みラベル推定モデルを記憶してもよい。
【0062】
出力部15は、各種情報を出力する。出力部15は、例えばCRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイ、有機EL(Electro-Luminescence)ディスプレイ等の表示装置を含んで構成される。出力部15は、これらの表示装置を学習装置1に接続するインタフェースとして構成されてもよい。出力部15は、例えば入力部12に入力された情報を出力する。出力部15は、例えばモデル学習処理の実行結果を表示してもよい。出力部15は、例えばラベル適正情報を表示してもよい。
【0063】
図5は、実施形態における制御部11の構成の一例を示す図である。制御部11は、ラベル適正情報取得部110、モデル学習部120、記憶制御部130、通信制御部140及び出力制御部150を備える。
【0064】
ラベル適正情報取得部110は、ラベル適正情報を取得する。ラベル適正情報取得部110は、入力部12又は通信部13に入力された正否情報及びラベル共起情報に基づき、ラベル適正情報生成処理を実行することでラベル適正情報を取得する。
【0065】
モデル学習部120は、ラベル適正情報と、入力部12又は通信部13に入力されたモデル学習用データとを用いて、学習終了条件が満たされるまでラベル推定モデルを更新する。すなわち、モデル学習部120は、ラベル適正情報と入力部12又は通信部13に入力されたモデル学習用データとを用いてモデル学習処理を実行することで学習済みラベル推定モデルを得る。
【0066】
記憶制御部130は、記憶部14に各種情報を記録する。通信制御部140は通信部13の動作を制御する。出力制御部150は、出力部15の動作を制御する。
【0067】
図6は、実施形態における学習装置1が実行する処理の流れの一例を示すフローチャートである。ラベル適正情報取得部110がラベル適正情報を取得する(ステップS101)。次に、入力部又は通信部13にモデル学習用データが入力される(ステップS102)。次に、モデル学習部120が、モデル学習用データが示す文章情報をラベル推定モデルに入力することで、ラベル適正情報を推定する(ステップS103)。次にモデル学習部120が、モデル学習用データの含むラベル適正情報と、ステップS103の推定結果とに基づき、ラベル推定モデルを更新する(ステップS104)。次に、モデル学習部120が、学習終了条件が満たされたか否かを判定する(ステップS105)。学習終了条件が満たされた場合(ステップS105:YES)、処理が終了する。一方、学習終了条件が満たされない場合(ステップS105:NO)、ステップS102の処理に戻る。
【0068】
学習終了条件が満たされるまで繰り返される、ステップS102からステップS105までの処理が、モデル学習処理の一例である。
【0069】
図7は、実施形態におけるラベル推定装置2のハードウェア構成の一例を示す図である。ラベル推定装置2は、バスで接続されたCPU等のプロセッサ93とメモリ94とを備える制御部21を備え、プログラムを実行する。ラベル推定装置2は、プログラムの実行によって制御部21、入力部22、通信部23、記憶部24及び出力部25を備える装置として機能する。
【0070】
より具体的には、プロセッサ93が記憶部24に記憶されているプログラムを読み出し、読み出したプログラムをメモリ94に記憶させる。プロセッサ93が、メモリ94に記憶させたプログラムを実行することによって、ラベル推定装置2は、制御部21、入力部22、通信部23、記憶部24及び出力部25を備える装置として機能する。
【0071】
制御部21は、ラベル推定装置2が備える各種機能部の動作を制御する。制御部21は、例えば学習済みラベル推定モデルを実行する。制御部21は、例えば出力部25の動作を制御する。制御部21は、例えば学習済みラベル推定モデルの実行により生じた各種情報を記憶部24に記録する。
【0072】
入力部22は、マウスやキーボード、タッチパネル等の入力装置を含んで構成される。入力部22は、これらの入力装置をラベル推定装置2に接続するインタフェースとして構成されてもよい。入力部22は、ラベル推定装置2に対する各種情報の入力を受け付ける。
【0073】
通信部23は、ラベル推定装置2を外部装置に接続するための通信インタフェースを含んで構成される。通信部23は、有線又は無線を介して外部装置と通信する。外部装置は、例えば文章情報の送信元の装置である。外部装置は、例えば学習装置1である。通信部23は、学習装置1との通信により、学習済みラベル推定モデルを取得する。なお、文章情報は、必ずしも通信部23に入力される必要は無く、入力部22に入力されてもよい。
【0074】
記憶部24は、磁気ハードディスク装置や半導体記憶装置などのコンピュータ読み出し可能な記憶媒体装置を用いて構成される。記憶部24はラベル推定装置2に関する各種情報を記憶する。記憶部24は、例えば入力部22又は通信部23を介して入力された情報を記憶する。記憶部24は、例えば学習済みラベル推定モデルの実行により生じた各種情報を記憶する。記憶部24は、学習済みラベル推定モデルを記憶する。
【0075】
出力部25は、各種情報を出力する。出力部25は、例えばCRTディスプレイや液晶ディスプレイ、有機ELディスプレイ等の表示装置を含んで構成される。出力部25は、これらの表示装置をラベル推定装置2に接続するインタフェースとして構成されてもよい。出力部25は、例えば入力部22に入力された情報を出力する。出力部25は、例えば学習済みラベル推定モデルの実行結果を表示してもよい。
【0076】
図8は、実施形態における制御部21の構成の一例を示す図である。制御部21は、対象取得部210、推定部220、記憶制御部230、通信制御部240及び出力制御部250を備える。対象取得部210は、入力部22又は通信部23に入力された文章情報を取得する。
【0077】
推定部220は、対象取得部210の取得した文章情報に対して学習済みラベル推定モデルを実行する。推定部220は、学習済みラベル推定モデルの実行により、対象取得部210の取得した文章情報に対するラベル適正情報を推定する。
【0078】
記憶制御部230は、記憶部24に各種情報を記録する。通信制御部240は通信部23の動作を制御する。出力制御部250は、出力部25の動作を制御する。
【0079】
図9は、実施形態におけるラベル推定装置2が実行する処理の流れの一例を示すフローチャートである。対象取得部210が、入力部22又は通信部23に入力された文章情報を取得する(ステップS201)。次に推定部220が、学習済みラベル推定モデルを実行することで、対象取得部210の取得した文章情報に対するラベル適正情報を推定する(ステップS202)。次に出力制御部250が出力部25の動作を制御して、取得されたラベル適正情報を出力部25に出力させる(ステップS203)。
【0080】
(実験結果)
ここで、ラベル推定システム100を用いた実験の結果について説明する。実験では、データセットとしてマルチラベル分類で用いられるベンチマークが使用された。具体的には、Reuters-21578と、Arxiv Academic Paper Dataset(AAPD)と、20Newsgroupsと、の3つが用いられた。実験では、機械学習のモデルとして自然言語処理で用いられる機械学習のモデルが用いられた。具体的には、BERT(Bidirectional Encoder Representations from Transformers)と、Bi-LSTM(Long Short Term Memory)と、CNN(Convolution Neural Network)とが用いられた。実験では、評価指標として、Micro-f1と、Macro-f1とが用いられた。
【0081】
図10は、実施形態のラベル推定システム100を用いた実験結果の一例を示す第1の図である。
図10における“Method”の欄が“BERT w/ALS”、”LSTM w/ALS”、”CNN w/ALS”である各行は、ラベル推定システム100を用いた結果を示す。“Method”の欄が”BERT only”、”LSTM only”、”CNN only”である各行は、ラベル適正情報を用いず正否情報を用いて得られた学習済みラベル推定モデルによる推定の結果を示す。
【0082】
なお、“BERT w/ALS”及び”BERT only”における”BERT”は、実験で用いられた機械学習のモデルがBERTであったことを示す。なお、“LSTM w/ALS”及び”LSTM only”における”LSTM”は、実験で用いられた機械学習のモデルがBi-LSTMであったことを示す。なお、“CNN w/ALS”及び”CNN only”における”CNN”は、実験で用いられた機械学習のモデルがCNNであったことを示す。
【0083】
”Rueters-21578”の“Macro-f1”は、用いられたデータセットがReuters-21578の場合におけるMacor-f1の値を示す。”Rueters-21578”の“Micro-f1”は、用いられたデータセットがReuters-21578の場合におけるMicor-f1の値を示す。”AAPD”の“Macro-f1”は、用いられたデータセットがAAPDの場合におけるMacor-f1の値を示す。”AAPD”の“Micro-f1”は、用いられたデータセットがAAPDの場合におけるMicor-f1の値を示す。”20Newsgroups”の”Macro-f1”は、用いられたデータセットが20Newsgroupsの場合におけるMacor-f1の値を示す。”20Newsgroups”の”Micro-f1”は、用いられたデータセットが20Newsgroupsの場合におけるMicor-f1の値を示す。
【0084】
図10の結果は、異なるランダムシードで5回実験が行われた結果を示す。
図10における、かっこ内の数値は標準偏差を示す。
図10の結果は、CNNやBi-LSTM等の特定の機械学習のモデルによらずラベル推定システム100が高い精度でラベルを推定可能であることを示す。
【0085】
図11は、実施形態のラベル推定システム100を用いた実験結果の一例を示す第2の図である。より具体的には、
図11は、低頻度のラベル候補の推定の精度を実験で評価した結果を示す。なお
図10は、低頻度のラベル候補と低頻度ではないラベル候補との両者の推定の精度を実験で評価した結果を示す。なお、低頻度のラベル候補とは、複数のラベル候補のうち、データセット内の出現回数の順位が中央より下の順位のラベル候補を意味する。
【0086】
図11における“Method”の欄が“BERT w/ALS”、”LSTM w/ALS”、”CNN w/ALS”である各行は、ラベル推定システム100を用いた結果を示す。“Method”の欄が”BERT only”、”LSTM only”、”CNN only”である各行は、ラベル適正情報を用いず正否情報を用いて得られた学習済みラベル推定モデルによる推定の結果を示す。
【0087】
なお、“BERT w/ALS”及び”BERT only”における”BERT”は、実験で用いられた機械学習のモデルがBERTであったことを示す。なお、“LSTM w/ALS”及び”LSTM only”における”LSTM”は、実験で用いられた機械学習のモデルがBi-LSTMであったことを示す。なお、“CNN w/ALS”及び”CNN only”における”CNN”は、実験で用いられた機械学習のモデルがCNNであったことを示す。
【0088】
”Rueters-21578”の“Macro-f1”は、用いられたデータセットがReuters-21578の場合におけるMacor-f1の値を示す。”Rueters-21578”の“Micro-f1”は、用いられたデータセットがReuters-21578の場合におけるMicor-f1の値を示す。”AAPD”の“Macro-f1”は、用いられたデータセットがAAPDの場合におけるMacor-f1の値を示す。”AAPD”の“Micro-f1”は、用いられたデータセットがAAPDの場合におけるMicor-f1の値を示す。”20Newsgroups”の”Macro-f1”は、用いられたデータセットが20Newsgroupsの場合におけるMacor-f1の値を示す。”20Newsgroups”の”Micro-f1”は、用いられたデータセットが20Newsgroupsの場合におけるMicor-f1の値を示す。
【0089】
図11の結果は、異なるランダムシードで5回実験が行われた結果を示す。
図11における、かっこ内の数値は標準偏差を示す。
図11の結果は、CNNやBi-LSTM等の特定の機械学習のモデルによらず、低頻度のラベル候補の推定についても、ラベル推定システム100が高い精度で推定可能であることを示す。
【0090】
図12は、実施形態のラベル推定システム100を用いた実験結果の一例を示す第3の図である。
図12の横軸は、学習回数を示す。
図12の縦軸は、Micro-f1の値を示す。”CNN only(train)”は、ラベル適正情報を用いず正否情報を用いて得られた学習済みラベル推定モデルによる学習データの推定の結果を示す。”CNN only(valid)”は、ラベル適正情報を用いず正否情報を用いて得られた学習済みラベル推定モデルによる開発データの推定の結果を示す。”CNN with ALS(train)”は、ラベル推定システム100を用いた学習データの推定の結果を示す。”CNN with ALS(valid)”は、ラベル推定システム100を用いた開発データの推定の結果を示す。なお、開発データとは、1回の学習ごとのラベル推定システム100の推定の精度を測定するための実験における学習で用いられる学習データである。
【0091】
図12の結果は、ラベル適正情報を用いず正否情報を用いた学習よりも、ラベル推定システム100の学習の方が、学習の初期段階で過学習を抑制可能であることを示す。
【0092】
このように構成された実施形態における学習装置1は、ラベル適正情報を用いて学習済みラベル推定モデルを得る。そのため、ラベル適正情報ではなく正否情報だけに基づいて学習済みラベル推定モデルを得る装置よりも多くの付与されるべきラベルを高い精度で推定する数理モデルを得ることができる。その結果、学習装置1は、ラベルの推定する作業に要する労力の増大を抑制することができる。
【0093】
また、このように構成された実施形態におけるラベル推定装置2は、ラベル適正情報を用いて得られた学習済みラベル推定モデルを用いて、文章に付与されるべきラベルを推定する。そのため、ラベル適正情報ではなく正否情報だけに基づいて得られた学習済みラベル推定モデルを得る装置と比べて、より多くの付与されるべきラベルを高い精度で推定することができる。その結果、ラベル推定装置2は、ラベルの推定する作業に要する労力の増大を抑制することができる。
【0094】
(変形例)
なお、上述したように、ラベル適正情報は、人手で生成されてもよい。このような場合、入力部12又は通信部13には、正否情報及びラベル共起情報に代えてラベル適正情報が入力される。このような場合、ラベル適正情報取得部110は、正否情報及びラベル共起情報に基づいてラベル適正情報を取得することに代えて、入力部12又は通信部13に入力されたラベル適正情報を取得することを実行する。
【0095】
出力制御部250は、推定部220は推定結果のラベル適正情報のうち、予め定められたラベルをジャンルとして出力部25に出力してもよい。
【0096】
上述したようにラベル適正情報の示すラベル適正度は、一例として、例えば0以上1以下の値で示される。しかしながらラベル適正度は、必ずしも0以上1以下の値で示される必要は無い。したがって、ラベル適正情報を表現するN次元のベクトルの各要素の値は、負の値を含んでもよい。上段の記載でラベル適正情報生成処理の一例を説明したが、そこではシグモイド関数等の独立変数の値を0以上1以下の所定の値に制限する関数を用いる処理を一例として説明した。これは、ラベル適正度が0以上1以下の値で示される場合を例にした処理の一例である。したがって、ラベル適正度が0以上1以下の値でなくてもよい場合には、シグモイド関数等の独立変数の値を0以上1以下の所定の値に制限する関数を用いる処理が行われる必要は無い。
【0097】
制御部21は、更に文章類似度推定部260と重要語句抽出部270とのいずれか一方又は両方を備えてもよい。以下、文章類似度推定部260と重要語句抽出部270とを備える制御部21を制御部21aという。
図13は、変形例における制御部21aの構成の一例を示す図である。制御部21aは、文章類似度推定部260と重要語句抽出部270とを備える点で、制御部21と異なる。
【0098】
文章類似度推定部260は、2つの文章情報の類似の度合(以下「文章類似度」という。)を推定する。2つの文章情報は少なくとも一方が、対象取得部210の取得した文章情報である。したがって、2つの文章情報は、どちらも対象取得部210の取得した文章情報であってもよいし、一方が対象取得部210の取得した文章情報であって他方が予め記憶部24に記憶済みの文章情報であってもよい。文章類似度推定部260は、2つの文章情報をそれぞれ推定部220に入力し、推定部220にどちらについてもラベル適正情報を推定させる。文章類似度推定部260は、推定部220の推定した2つのラベル適正情報に基づき、ラベル適正情報の一致の度合を2つの文章情報の文章類似度として取得する。文章類似度推定部260は、例えば、2つのラベル適正情報それぞれに対応する各ベクトルの内積の値を文章類似度として取得する。
【0099】
文章類似度推定部260は、取得した文章類似度が所定の度合以上である場合に、2つの文章情報を類似した文章情報であると判定してもよい。このような場合、出力制御部250は、文章類似度推定部260によって類似した文章情報であると判定された2つの文章情報の一方又は両方を出力部25に出力させてもよい。
【0100】
重要語句抽出部270は、日本語自然言語処理オープンソースライブラリのGiNZAを用いて、文章情報の示す文章中の重要語句を取得する。出力制御部250は、重要語句抽出部270の取得した重要語句を出力部25に出力させてもよい。
【0101】
なお、学習装置1は、ネットワークを介して通信可能に接続された複数台の情報処理装置を用いて実装されてもよい。この場合、学習装置1が備える各機能部は、複数の情報処理装置に分散して実装されてもよい。
【0102】
なお、ラベル推定装置2は、ネットワークを介して通信可能に接続された複数台の情報処理装置を用いて実装されてもよい。この場合、ラベル推定装置2が備える各機能部は、複数の情報処理装置に分散して実装されてもよい。
【0103】
なお、学習装置1と、ラベル推定装置2と、の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されてもよい。プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。プログラムは、電気通信回線を介して送信されてもよい。
【0104】
なお、対象取得部210の取得する文章情報は対象情報の一例である。対象取得部210の取得した文章情報の示す文章は処理対象の一例である。
【0105】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【0106】
100…ラベル推定システム、 1…学習装置、 2…ラベル推定装置、 11…制御部、 12…入力部、 13…通信部、 14…記憶部、 15…出力部、 110…ラベル適正情報取得部、 120…モデル学習部、 130…記憶制御部、 140…通信制御部、 150…出力制御部、 21…制御部、 22…入力部、 23…通信部、 24…記憶部、 25…出力部、 210…対象取得部、 220…推定部、 230…記憶制御部、 240…通信制御部、 250…出力制御部、 91…プロセッサ、 92…メモリ、 93…プロセッサ、 94…メモリ、 21a…制御部、 260…文章類似度推定部、 270…重要語句抽出部