(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023133738
(43)【公開日】2023-09-27
(54)【発明の名称】コンテンツ分類システム、教師データの追加方法、及びプログラム
(51)【国際特許分類】
G06Q 50/10 20120101AFI20230920BHJP
【FI】
G06Q50/10
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2022038892
(22)【出願日】2022-03-14
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110001678
【氏名又は名称】藤央弁理士法人
(72)【発明者】
【氏名】中川 雄一郎
(72)【発明者】
【氏名】檜 一平
(72)【発明者】
【氏名】川上 雅子
(72)【発明者】
【氏名】野尻 周平
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049CC11
(57)【要約】
【課題】文書の分類に使用する教師データを効率的かつ効果的に追加する。
【解決手段】コンテンツ分類システムは、複数の入力コンテンツを保持し、分類軸ごとに、分類軸への分類に使用する文書である教師データと、教師データに含まれ、かつ、分類において着目する着目キーワードと、を受け付ける処理と、教師データの数が閾値より少ない分類軸を追加対象分類軸として特定する処理と、追加対象分類軸の着目キーワードを含む文書を特定し、追加対象分類軸の教師データとして追加する処理と、追加対象分類軸の教師データに基づいて、複数の入力コンテンツの文書の中から追加対象分類軸に属する可能性がある候補文書を検索する処理と、追加対象分類軸の教師データに含まれるキーワード以外のキーワードを多く含む候補文書を特定する処理と、特定された候補文書を、追加対象分類軸の教師データとして追加する処理と、を実行する。
【選択図】
図5
【特許請求の範囲】
【請求項1】
複数の分類軸のいずれかに、文書を含むコンテンツを分類するコンテンツ分類システムであって、
プロセッサ、及び前記プロセッサに接続されるメモリを有する計算機を少なくとも一つ含み、
複数の入力コンテンツを保持し、
前記少なくとも一つの計算機は、
前記分類軸ごとに、前記分類軸への分類に使用する文書である教師データと、前記教師データに含まれ、かつ、分類において着目する着目キーワードと、を受け付ける第1処理と、
前記教師データの数が閾値より少ない前記分類軸を追加対象分類軸として特定する第2処理と、
前記複数の入力コンテンツの前記文書の中から、前記追加対象分類軸の前記着目キーワードを含む文書を特定し、前記追加対象分類軸の前記教師データとして追加する第3処理と、
前記追加対象分類軸の前記教師データに基づいて、前記複数の入力コンテンツの前記文書の中から前記追加対象分類軸に属する可能性がある候補文書を検索する第4処理と、
前記追加対象分類軸の前記教師データに含まれるキーワード以外のキーワードを多く含む前記候補文書を特定する第5処理と、
特定された前記候補文書を、前記追加対象分類軸の前記教師データとして追加する第6処理と、を実行することを特徴とするコンテンツ分類システム。
【請求項2】
請求項1に記載のコンテンツ分類システムであって、
前記コンテンツは、当該コンテンツを特徴付ける特徴項目を含み、
前記第4処理では、前記少なくとも一つの計算機は、前記教師データ及び前記特徴項目に基づいて前記候補文書を検索することを特徴とするコンテンツ分類システム。
【請求項3】
請求項1に記載のコンテンツ分類システムであって、
前記分類軸を特定するデータと、前記分類軸に属するか否かを判定するための判定閾値とを対応づけを管理するための情報を保持し、
前記少なくとも一つの計算機は、前記第2処理の実行後、
前記分類軸の前記教師データ及び前記入力コンテンツの前記文書を用いて、前記入力コンテンツが前記分類軸に属する可能性を示す指標を算出し、当該分類軸の前記判定閾値及び前記指標に基づいて、当該入力コンテンツが当該分類軸に属するか否かを判定する第7の処理と、
いずれの前記分類軸にも分類されない前記入力コンテンツを除去する第8の処理と、を実行することを特徴とするコンテンツ分類システム。
【請求項4】
請求項3に記載のコンテンツ分類システムであって、
前記第8の処理では、前記少なくとも一つの計算機は、いずれの前記分類軸にも分類されない前記入力コンテンツの前記文書が、前記追加対象分類軸の前記教師データに含まれるキーワードを所定数以上含まない場合、当該入力コンテンツを除去しないように制御することを特徴とするコンテンツ分類システム。
【請求項5】
請求項3に記載のコンテンツ分類システムであって、
前記指標は、前記文書の特徴量を表すベクトル間の距離であって、
前記追加対象分類軸の前記判定閾値は、前記教師データの数が閾値より多い前記分類軸の前記判定閾値より十分大きい値が設定されることを特徴とするコンテンツ分類システム。
【請求項6】
複数の分類軸のいずれかに、文書を含むコンテンツを分類するコンテンツ分類システムが実行する教師データの追加方法であって、
前記コンテンツ分類システムは、
プロセッサ、及び前記プロセッサに接続されるメモリを有する計算機を少なくとも一つ含み、
複数の入力コンテンツを保持し、
前記教師データの追加方法は、
前記少なくとも一つの計算機が、前記分類軸ごとに、前記分類軸への分類に使用する文書である教師データと、前記教師データに含まれ、かつ、分類において着目する着目キーワードと、を受け付ける第1のステップと、
前記少なくとも一つの計算機が、前記教師データの数が閾値より少ない前記分類軸を追加対象分類軸として特定する第2のステップと、
前記少なくとも一つの計算機が、前記複数の入力コンテンツの前記文書の中から、前記追加対象分類軸の前記着目キーワードを含む文書を特定し、前記追加対象分類軸の前記教師データとして追加する第3のステップと、
前記少なくとも一つの計算機が、前記追加対象分類軸の前記教師データに基づいて、前記複数の入力コンテンツの前記文書の中から前記追加対象分類軸に属する可能性がある候補文書を検索する第4のステップと、
前記少なくとも一つの計算機が、前記追加対象分類軸の前記教師データに含まれるキーワード以外のキーワードを多く含む前記候補文書を特定する第5のステップと、
前記少なくとも一つの計算機が、特定された前記候補文書を、前記追加対象分類軸の前記教師データとして追加する第6のステップと、を含むことを特徴とする教師データの追加方法。
【請求項7】
請求項6に記載の教師データの追加方法であって、
前記コンテンツは、当該コンテンツを特徴付ける特徴項目を含み、
前記第4のステップは、前記少なくとも一つの計算機が、前記教師データ及び前記特徴項目に基づいて前記候補文書を検索するステップを含むことを特徴とする教師データの追加方法。
【請求項8】
請求項6に記載の教師データの追加方法であって、
前記コンテンツ分類システムは、前記分類軸を特定するデータと、前記分類軸に属するか否かを判定するための判定閾値とを対応づけを管理するための情報を保持し、
前記教師データの追加方法は、前記第2のステップの実行後に、
前記少なくとも一つの計算機が、前記分類軸の前記教師データ及び前記入力コンテンツの前記文書を用いて、前記入力コンテンツが前記分類軸に属する可能性を示す指標を算出し、当該分類軸の前記判定閾値及び前記指標に基づいて、当該入力コンテンツが当該分類軸に属するか否かを判定する第7のステップと、
前記少なくとも一つの計算機が、いずれの前記分類軸にも分類されない前記入力コンテンツを除去する第8のステップと、を含むことを特徴とする教師データの追加方法。
【請求項9】
請求項8に記載の教師データの追加方法であって、
前記第8のステップは、前記少なくとも一つの計算機が、いずれの前記分類軸にも分類されない前記入力コンテンツの前記文書が、前記追加対象分類軸の前記教師データに含まれるキーワードを所定数以上含まない場合、当該入力コンテンツを除去しないように制御するステップを含むことを特徴とする教師データの追加方法。
【請求項10】
請求項8に記載の教師データの追加方法であって、
前記指標は、前記文書の特徴量を表すベクトル間の距離であって、
前記追加対象分類軸の前記判定閾値は、前記教師データの数が閾値より多い前記分類軸の前記判定閾値より十分大きい値が設定されることを特徴とする教師データの追加方法。
【請求項11】
複数の分類軸のいずれかに、文書を含むコンテンツを分類する計算機に実行させるためのプログラムであって、
前記計算機は、複数の入力コンテンツを保持し、
前記プログラムは、
前記分類軸ごとに、前記分類軸への分類に使用する文書である教師データと、前記教師データに含まれ、かつ、分類において着目する着目キーワードと、を受け付ける第1の手順と、
前記教師データの数が閾値より少ない前記分類軸を追加対象分類軸として特定する第2の手順と、
前記複数の入力コンテンツの前記文書の中から、前記追加対象分類軸の前記着目キーワードを含む文書を特定し、前記追加対象分類軸の前記教師データとして追加する第3の手順と、
前記追加対象分類軸の前記教師データに基づいて、前記複数の入力コンテンツの前記文書の中から前記追加対象分類軸に属する可能性がある候補文書を検索する第4の手順と、
前記追加対象分類軸の前記教師データに含まれるキーワード以外のキーワードを多く含む前記候補文書を特定する第5の手順と、
特定された前記候補文書を、前記追加対象分類軸の前記教師データとして追加する第6の手順と、を前記計算機に実行させることを特徴とするプログラム。
【請求項12】
請求項11に記載のプログラムであって、
前記コンテンツは、当該コンテンツを特徴付ける特徴項目を含み、
前記第4の手順は、前記教師データ及び前記特徴項目に基づいて前記候補文書を検索させる手順を含むことを特徴とするプログラム。
【請求項13】
請求項11に記載のプログラムであって、
前記計算機は、前記分類軸を特定するデータと、前記分類軸に属するか否かを判定するための判定閾値とを対応づけを管理するための情報を保持し、
前記プログラムは、前記第2の手順の実行後に、
前記分類軸の前記教師データ及び前記入力コンテンツの前記文書を用いて、前記入力コンテンツが前記分類軸に属する可能性を示す指標を算出し、当該分類軸の前記判定閾値及び前記指標に基づいて、当該入力コンテンツが当該分類軸に属するか否かを判定する第7の手順と、
いずれの前記分類軸にも分類されない前記入力コンテンツを除去する第8の手順と、を実行させることを特徴とするプログラム。
【請求項14】
請求項13に記載のプログラムであって、
前記第8の手順は、いずれの前記分類軸にも分類されない前記入力コンテンツの前記文書が、前記追加対象分類軸の前記教師データに含まれるキーワードを所定数以上含まない場合、当該入力コンテンツを除去しないように制御させる手順を含むことを特徴とするプログラム。
【請求項15】
請求項13に記載のプログラムであって、
前記指標は、前記文書の特徴量を表すベクトル間の距離であって、
前記追加対象分類軸の前記判定閾値は、前記教師データの数が閾値より多い前記分類軸の前記判定閾値より十分大きい値が設定されることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書の分類技術に関する。
【背景技術】
【0002】
企業が新しい事業やサービスを検討する際に、特許情報分析等、様々な情報を基に文書を分類し、自他社の事業動向やサービスを客観的に把握するために用いられることがある。文書の分類で使われる方法として、特許文献1、2がある。
【0003】
特許文献1には、予め分類された教師データに対して形態素解析を行い、教師データとして分類された文書において使用されている単語を抽出することが記載されている。
【0004】
また、特許文献2には、文書間を語句ベクトルを用いた類似度に基づいて文書を分類することが記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2010-026923号公報
【特許文献2】特開平08-263514号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
これら特許文献1、2に記載の技術を用いれば、例えば1000件の文献について、分類軸A、B、Cごとに一定数以上(例えば各分類軸100件×3分類軸=300件)の教師データを人手で準備すれば、残りの700件は自動的に分類することができる。つまり、人手で分類する工数を、1000件全てを人手で分類する工数に比して、教師データ300件のみに抑えることが可能となり得る。
【0007】
しかし上記例で言えば、実際の分類作業を行う場合、最初の教師データ300件については人手にて作業をすることとなるが、この際、当該300件は無作為に抽出されているため、A~Cそれぞれに100件ずつ分類されるわけではなく、例えば「分類軸A:200件、分類軸B:80件、分類軸C:20件」といったように、教師データの数にばらつきが生じる。そのため、特許文献1、2の構成のみでは、教師データの多い分類軸Aと教師データの少ない分類軸Cとの間で、残りの文献の分類精度に大きな差が生じ、分類軸Aに比して分類軸Cの分類精度は著しく低くなる可能性がある。
【0008】
さらに、ここで注意したいのは、新しい事業及びサービスの創生を議論することを目的に文献を分類する場合、例えば、特許文献を分類して特許情報の分析データを作成する場合、単に各社の事業動向や技術動向を「見える化」しただけでは左記の目的は達成されない点である。作成した分析データを用いて、例えば分類軸Cに該当するような特許件数が極端に少ない分類軸の情報をさらに考察して他社が未注力でホワイトスペースとなっているような事業課題を把握したり自社及び他社のサービスの優位性等を客観的に検討することができて初めて上記目的は達成される。
【0009】
すなわち、上記目的達成のためには、該当する文献数の少ない分類軸Cのような分類軸に該当する文献こそ、分類軸Aと同等かそれ以上の精度で取得しなければ上記目的は達成することができないところ、従来技術では教師データが少ない分類軸ほど文献の分類精度が低いことが課題であった。
【課題を解決するための手段】
【0010】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、複数の分類軸のいずれかに、文書を含むコンテンツを分類するコンテンツ分類システムであって、プロセッサ、及び前記プロセッサに接続されるメモリを有する計算機を少なくとも一つ含み、複数の入力コンテンツを保持し、前記少なくとも一つの計算機は、前記分類軸ごとに、前記分類軸への分類に使用する文書である教師データと、前記教師データに含まれ、かつ、分類において着目する着目キーワードと、を受け付ける第1処理と、前記教師データの数が閾値より少ない前記分類軸を追加対象分類軸として特定する第2処理と、前記複数の入力コンテンツの前記文書の中から、前記追加対象分類軸の前記着目キーワードを含む文書を特定し、前記追加対象分類軸の前記教師データとして追加する第3処理と、前記追加対象分類軸の前記教師データに基づいて、前記複数の入力コンテンツの前記文書の中から前記追加対象分類軸に属する可能性がある候補文書を検索する第4処理と、前記追加対象分類軸の前記教師データに含まれるキーワード以外のキーワードを多く含む前記候補文書を特定する第5処理と、特定された前記候補文書を、前記追加対象分類軸の前記教師データとして追加する第6処理と、を実行する。
【発明の効果】
【0011】
本発明によれば、新しい事業及びサービスの創生を議論するために特に重要となる文献の情報を高い精度にて取得することが可能となる。上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【0012】
【
図1】実施例1の分類システムの構成例を示す図である。
【
図2】実施例1の分類システムを構成する計算機の構成例を示す図である。
【
図3】実施例1のコンテンツ情報のデータ構造の一例を示す図である。
【
図4A】実施例1の制御情報のデータ構造の一例を示す図である。
【
図4B】実施例1の制御情報のデータ構造の一例を示す図である。
【
図5】実施例1の分類システムの処理の概要を説明するフローチャートである。
【
図6A】実施例1の分類システムが提示する画面の一例を示す図である。
【
図6B】実施例1の分類システムが提示する画面の一例を示す図である。
【
図7】実施例1の分類システムが実行する教師データ設定処理の一例を説明するフローチャートである。
【
図8】実施例1の分類システムが提示する画面の一例を示す図である。
【
図9】実施例1の分類システムが実行する教師データ追加処理の一例を説明するフローチャートである。
【
図10A】実施例2の分類システムの処理の概要を説明するフローチャートである。
【
図10B】実施例2の分類システムの処理の概要を説明するフローチャートである。
【発明を実施するための形態】
【0013】
以下、本発明の実施例を、図面を用いて説明する。ただし、本発明は以下に示す実施例の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。以下に説明する発明の構成において、同一又は類似する構成又は機能には同一の符号を付し、重複する説明は省略する。本明細書等における「第1」、「第2」、「第3」等の表記は、構成要素を識別するために付するものであり、必ずしも、数又は順序を限定するものではない。
【実施例0014】
図1は、実施例1の分類システムの構成例を示す図である。
図2は、実施例1の分類システムを構成する計算機の構成例を示す図である。
【0015】
分類システム100は、少なくとも一つの計算機200から構成される。計算機200は、プロセッサ201、主記憶装置202、副記憶装置203、及びネットワークインタフェース204を有する。なお、計算機200は、入力装置及び出力装置を有してもよい。
【0016】
プロセッサ201は、主記憶装置202に格納されるプログラムを実行する。プロセッサ201がプログラムにしたがって処理を実行することによって、特定の機能を実現する機能部(モジュール)として動作する。以下の説明では、機能部を主語に処理を説明する場合、プロセッサ201が当該機能部を実現するプログラムを実行していることを示す。主記憶装置202は、メモリ等であり、プロセッサ201が実行するプログラム及びプログラムが使用するデータを格納する。副記憶装置203は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等であり、データを永続的に格納する。主記憶装置202に格納されるプログラム及びデータは、副記憶装置203に格納されてもよい。この場合、プロセッサ201が副記憶装置203からプログラム及びデータを読み出し、主記憶装置202にロードする。ネットワークインタフェース204は、ネットワークを介して他の装置と通信する。
【0017】
分類システム100は、分類対象のコンテンツ及び各分類軸の教師データの入力を受け付け、教師データに基づいてコンテンツを分類する。また、分類システム100は、分類軸の教師データの追加及びノイズとなるコンテンツの除去を行う。ノイズとなるコンテンツの除去については実施例2で説明する。
【0018】
ここで、コンテンツは分類に使用する文書を含むコンテンツである。例えば、特許文献、論文、及びマニュアル等である。コンテンツが論文である場合、アブストラクト等が分類に使用する文書として指定可能である。また、コンテンツが特許文献である場合、要約書等が分類に使用する文書として指定可能である。文書の特定の箇所の指定の仕方は、一部、複数箇所、文書全体等、目的等に応じてユーザが決めればよい。本発明は、様々なコンテンツの分類に適用することができる。
【0019】
分類システム100は、機能部として、入出力部110、教師データ抽出部111、教師データ追加部112、ノイズコンテンツ抽出部113、及び分類部114を有する。また、分類システム100は、コンテンツ情報120及び制御情報121を保持する。
【0020】
コンテンツ情報120は、コンテンツを管理するための情報である。コンテンツ情報120の詳細は
図3を用いて説明する。制御情報121は、分類システム100の各種処理を制御するための情報である。制御情報121の詳細は
図4A及び
図4Bを用いて説明する。
【0021】
入出力部110は、外部からの入力及び外部への出力を制御する。教師データ抽出部111は、教師データとなりうる文書を抽出する。教師データ追加部112は、特定の条件を満たす分類軸の教師データの追加を制御する。ノイズコンテンツ抽出部113は、いずれの分類軸にも属しない、ノイズとなるコンテンツを抽出する。分類部114は、各分類軸の教師データを用いてコンテンツの分類を行う。例えば、分類部114は分類軸に属する確率、又は、文書間の類似度に基づいて分類を行う。
【0022】
なお、分類システム100が有する各機能部については、複数の機能部を一つの機能部にまとめてもよいし、一つの機能部を機能毎に複数の機能部に分けてもよい。
【0023】
図3は、実施例1のコンテンツ情報120のデータ構造の一例を示す図である。
【0024】
コンテンツ情報120は、コンテンツ301、ステータス302、分類軸(設定)303、キーワード304、及び分類軸(結果)305を含むエントリを格納する。一つのエントリが一つのコンテンツに対応する。なお、エントリに含まれるフィールドは前述したものに限定されない。前述したフィールドのいずれかを含まなくてもよいし、また、他のフィールドを含んでもよい。
【0025】
コンテンツ301は、コンテンツを格納するフィールドである。コンテンツ301には、コンテンツそのものが格納されてもよいし、コンテンツの格納場所を示すパスが格納されてもよい。
【0026】
ステータス302は、コンテンツの文書のステータスを示す値を格納するフィールドである。本実施例では、教師データであることを示す「1」、教師データの候補であることを示す「2」、及び教師データとして選択されていないことを示す「0」のいずれかが格納される。
【0027】
分類軸(設定)303は、教師データが属する分類軸を格納するフィールドである。教師データである文書を含むコンテンツ以外のエントリの分類軸(設定)303は空欄である。キーワード304は、教師データとして分類軸を決定するときに着目したキーワードを格納するフィールドである。教師データである文書を含むコンテンツ以外のエントリのキーワード304は空欄である。
【0028】
分類軸(結果)305は、分類部114による分類の結果を格納するフィールドである。分類部114による分類が実行されていないコンテンツの分類軸(結果)305は空欄である。
【0029】
図4A及び
図4Bは、実施例1の制御情報121のデータ構造の一例を示す図である。
【0030】
制御情報121には、テーブル400及びテーブル410が含まれる。テーブル400は、各種処理で使用する閾値を管理するためのテーブルである。テーブル410は、文書間の類否判定の条件を管理するための情報である。
【0031】
テーブル400は、閾値種別401及び閾値402を含むエントリを格納する。一つのエントリが一つの閾値に対応する。なお、エントリに含まれるフィールドは前述したものに限定されない。前述したフィールドのいずれかを含まなくてもよいし、また、他のフィールドを含んでもよい。
【0032】
閾値種別401は、閾値の種別に関する情報を格納するフィールドである。閾値402は、閾値を格納するフィールドである。
【0033】
閾値種別401が「抽出(1回目)」及び「抽出(2回目)」であるエントリには、母集団コンテンツから抽出する教師データの数が設定される。以下の説明では「抽出(1回目)」及び「抽出(2回目)」であるエントリに設定された閾値を閾値「A」及び閾値「B」と記載する。閾値種別401が「追加対象分類軸」であるエントリには、教師データの数が少ない分類軸を特定するための教師データの数が格納される。以下の説明では、「追加対象分類軸」であるエントリに設定された閾値を閾値「C」と記載する。閾値種別401が「ノイズコンテンツ除去」であるエントリには、ノイズとなるコンテンツを除去の要否を判定するための、未分類の教師データの数が格納される。以下の説明では、閾値種別401が「ノイズコンテンツ除去」であるエントリに設定された閾値を閾値「D」と記載する。閾値種別401が「キーワード数(追加)」であるエントリには、教師データを特定するために用いるキーワード数が格納される。以下の説明では、閾値種別401が「キーワード数(追加)」であるエントリに設定された閾値を閾値「G」と記載する。閾値種別401が「キーワード数(ノイズ)」であるエントリには、ノイズコンテンツとして扱わないコンテンツを特定するために用いるキーワード数が格納される。以下の説明では、閾値種別401が「キーワード数(ノイズ)」であるエントリに設定された閾値を閾値「H」と記載する。
【0034】
テーブル410は、条件411及び閾値412を含むエントリを格納する。条件及び閾値の組合せに対して一つのエントリが存在する。
【0035】
条件411は、閾値を適用する分類軸を指定するための条件を格納するフィールドである。閾値412は、分類軸に属するコンテンツを抽出するために用いる閾値を格納するフィールドである。
【0036】
図5は、実施例1の分類システム100の処理の概要を説明するフローチャートである。
図6A及び
図6Bは、実施例1の分類システム100が提示する画面の一例を示す図である。
【0037】
分類システム100は、開始指示を受け付けた場合、以下で説明する処理を実行する。なお、処理の実行タイミングはこれに限定されない。
【0038】
分類システム100の入出力部110は、コンテンツ母集団(コンテンツ群)及び制御情報121の入力を受け付ける(ステップS101)。例えば、入出力部110は、
図6Aに示すような画面600を提示してコンテンツ母集団の入力を受け付け、
図6Bに示すような画面610を提示して制御情報121の入力を受け付ける。なお、文書間の類似度を用いてコンテンツを分類する場合、教師データの数が少ない分類軸の類似度の閾値は、教師データの数が多い分類軸の類似度の閾値より大きく設定される。これによって、教師データの数が少ない分類軸に属する可能性があるコンテンツがノイズとして除去されないように制御できる。
【0039】
画面600は、一つ以上のコンテンツを格納するファイルのパスを入力する欄及び登録ボタンを含む。画面610は、閾値及び条件等を入力する欄を含む。
【0040】
次に、分類システム100は、教師データ設定処理を実行する(ステップS102)。教師データ設定処理の詳細は
図7を用いて説明する。
【0041】
次に、分類システム100は、教師データの数が少ない分類軸が存在するか否かを判定する(ステップS103)。具体的には、分類システム100の教師データ抽出部111が、教師データの数が閾値「C」より小さい分類軸が存在するか否かを判定する。以下の説明では、教師データの数が閾値「C」より小さい分類軸を「追加対象分類軸」とも記載する。
【0042】
追加対象分類軸が存在しないと判定された場合、分類システム100の分類部114は、各分類軸の教師データを用いてコンテンツを分類する(ステップS105)。その後、分類システム100は処理を終了する。
【0043】
具体的には、分類部114は、教師データを用いて、コンテンツが各分類軸に属するか否か判定するための指標を算出する。
【0044】
例えば、分類部114は、一つの分類軸の教師データを用いて、当該分類軸に属する確率を算出する分類器を生成し、当該分類器を用いてコンテンツを分類する方法が考えられる。また、分類部114は、各分類軸の教師データを用いて、各分類軸に属する確率を算出する分類器を生成し、当該分類器を用いてコンテンツを分類する。
【0045】
例えば、分類部114は、特許文献2に記載の文書間の類似度に基づいて文書を分類してもよい。分類システム100は、分類軸の教師データと、コンテンツの文書との間の類似度を算出し、類似度及び閾値の比較結果に基づいてコンテンツが分類軸に属するか否かを判定する。
【0046】
なお、前述の指標の算出方法は一例であってこれに限定されない。
【0047】
分類部114は、画面を介して分類の結果を提示してもよいし、分類結果を格納するファイルを出力してもよい。
【0048】
追加対象分類軸が存在すると判定された場合、分類システム100は、教師データ追加処理を実行し(ステップS104)、その後、ステップS105に進む。教師データ追加処理の詳細は
図9を用いて説明する。
【0049】
図7は、実施例1の分類システム100が実行する教師データ設定処理の一例を説明するフローチャートである。
図8は、実施例1の分類システム100が提示する画面の一例を示す図である。
【0050】
教師データ抽出部111は、コンテンツ情報120に登録されているコンテンツの中から閾値「A」だけ分類対象コンテンツをランダムに抽出する(ステップS201)。
【0051】
入出力部110は、ユーザに対して、分類対象コンテンツの分類を依頼する画面を提示する(ステップS202)。例えば、入出力部110は、
図8に示すような画面を提示する。画面800には、コンテンツ情報120が表示されている。分類対象コンテンツのエントリが強調表示されてもよい。また、分類対象コンテンツのエントリのみが表示されてもよい。ユーザは、画面800を介して、分類対象コンテンツが属する分類軸及び着目したキーワード等を入力する。
【0052】
入出力部110は、ユーザが入力した情報に基づいてコンテンツ情報120を更新する(ステップS203)。
【0053】
具体的には、入出力部110は、分類対象コンテンツに対応するエントリのステータス302に「1」を設定し、分類軸(設定)303にユーザが入力した分類軸を設定し、キーワード304にユーザが入力したキーワードを設定する。
【0054】
教師データ抽出部111は、コンテンツ情報120に登録されているコンテンツの中から閾値「B」だけ分類対象コンテンツを抽出する(ステップS204)。ここでは、(ルール1)及び(ルール2)の少なくともいずれかを満たす文書を含むコンテンツが抽出される。
(ルール1)分類軸のキーワードを含む文書は除外する。
(ルール2)分類軸のキーワード以外のキーワードを多く含む文書を優先的に抽出する。なお、キーワードは品詞を限定してもよい。
【0055】
入出力部110は、ユーザに対して、分類対象コンテンツの分類を依頼する画面を提示する(ステップS205)。また、入出力部110は、ユーザが入力した情報に基づいてコンテンツ情報120を更新する(ステップS206)。ステップS205及びステップS206の処理はステップS202及びステップS203の処理と同様である。
【0056】
なお、ステップS204からステップS206の処理は実行しなくてもよい。なお、ステップS101では閾値「A」及び閾値「B」のみを設定し、教師データ設定処理が終了した後に条件及び閾値の組合せを受け付けるようにしてもよい。この場合、ノイズコンテンツを判定するための設定としては、分類軸及び文書間類似度の閾値の組合せを設定する方法が考えられる。
【0057】
図9は、実施例1の分類システム100が実行する教師データ追加処理の一例を説明するフローチャートである。
【0058】
教師データ追加部112は、分類されていないコンテンツの文書の中から、追加対象分類軸のキーワードを含む文書を検索する(ステップS301)。ここで、追加対象分類軸のキーワードは、追加対象分類軸の教師データである文書を含むコンテンツに対応するエントリのキーワード304に格納されるキーワードである。
【0059】
教師データ追加部112は、検索された文書を、追加対象分類軸の教師データとして登録する(ステップS302)。
【0060】
具体的には、教師データ追加部112は、コンテンツ情報120の検索されたコンテンツのエントリを以下のように更新する。教師データ追加部112は、ステータス302に「1」を設定し、分類軸(設定)303に追加対象分類軸を設定し、キーワード304に追加対象分類軸のキーワードを設定する。
【0061】
教師データ追加部112は、分類されていないコンテンツの文書の中から、候補文書を検索する(ステップS303)。具体的には、以下のような処理が実行される。
【0062】
(S303-1)教師データ追加部112は、分類部114に追加対象分類軸に関する分類を指示する。分類部114は、追加対象分類軸の教師データを用いて、分類されていないコンテンツを分類し、分類結果を教師データ追加部112に出力する。
【0063】
なお、追加対象分類軸に属するコンテンツの分類において、コンテンツに含まれる一部の情報(例えば、メタデータ)を用いてもよい。コンテンツが特許文献の場合、教師データと、出願人及び発明者等の特徴項目とに基づいて特許文献を分類する方法が考えられる。また、コンテンツに含まれる一部の情報のみを用いて分類が行われてもよい。出願人及び発明者等の特徴項目が同じ特許文献は、同じ分類軸に属する可能性が高いためである。
【0064】
(S303-2)教師データ追加部112は、追加対象分類軸として分類されたコンテンツの文書に含まれるキーワードを抽出する。このとき、キーワードは品詞を限定してもよい。教師データ追加部112は、抽出されたキーワードから、追加対象分類軸の教師データであるコンテンツの文書に含まれるキーワードを除外する。教師データ追加部112は、残ったキーワードの数が閾値「G」より大きい文書を候補文書に決定する。このとき、教師データ追加部112は、候補文書を含むコンテンツのエントリを以下のように更新する。教師データ追加部112は、ステータス302に「2」を設定し、分類軸(設定)303に追加対象分類軸を設定する。
【0065】
なお、追加対象分類軸として分類された文書が複数存在する場合、各文書に対してS303-2の処理が実行される。以上がステップS303の処理の説明である。
【0066】
教師データ追加部112は、入出力部110を介して、ユーザに候補文書を含むコンテンツの分類を依頼する画面を提示する(ステップS304)。ステップS304の処理はステップS202の処理と同様の処理である。
【0067】
教師データ追加部112は、ユーザが入力した情報に基づいてコンテンツ情報120を更新する(ステップS305)。ステップS305の処理はステップS203の処理と同様の処理である。
【0068】
なお、教師データ追加部112は、ユーザへの分類の依頼を行わず、候補文書を教師データとして登録してもよい。この場合、キーワード304には、追加対象分類軸のキーワードを除くキーワードを設定する方法が考えられる。
【0069】
このように、追加対象分類軸のキーワードに含まれないキーワードを含む文書を教師データとして追加することによって、分類の精度を効率的に向上させることができる。
【0070】
実施例1によれば、教師データが少ない分類軸について、効率的かつ効果的に教師データを追加することができる。特に、現在登録されているキーワード以外のキーワードを含む教師データを追加することによって、分類漏れを低減できるため、分類の精度を向上させることができる。
上述したように、新しい事業及びサービスの創生を議論することを目的に文献を分類する場合、例えば分類軸A~Cのうち、該当する文献数の少ない分類軸Cに該当する文献こそ、分類軸Aと同等かそれ以上の精度で取得しなければ上記目的は達成することができない。ここで、文献の母集団によっては、分類軸A~Cのいずれにも該当しない、所謂「ノイズ」データの方が、分類軸A~Cに該当する文献数よりも明らかに多い場合がある。この場合、例えば1000件の母集団のうち、教師データ作りのために人手で分類した300件のほとんどがノイズである場合等は、人による工数の手間は勿論のこと、残りの700件もほとんどがノイズである可能性が統計的に高いため、分類軸A~Cにノイズデータが多く分類されてしまい分類精度が下がってしまうことが課題となる。実施例2では、当該課題を解決するべく、ノイズデータを積極的に排除して分類精度や人的コストを改善する一例について説明する。
実施例2の分類システム100は、入力されたコンテンツ母集団の中からいずれの分類軸にも属しないコンテンツをノイズとして除去する。教師データを追加する場合に、いずれの分類軸にも属しないコンテンツを予め除去することによって、分類軸の教師データの数のばらつきを抑制し、また、教師データの選択のコストを削減できる。
教師データを用いてコンテンツを分類し、いずれの分類軸にも属しないコンテンツを除去する方法が考えられる。しかし、当該方法を用いた場合、追加対象分類軸は教師データが少ないため類似判定の精度が低く、追加対象分類軸に分類すべき文書を含むコンテンツを削除してしまう可能性がある。
実施例2では、前述のような問題点を考慮したノイズコンテンツの除去方法を説明する。実施例2の分類システム100の構成及びデータの構成は、実施例1と同一であるため説明は省略する。
ステップS401及びステップS402の処理は、ステップS101及びステップS102の処理と同一である。なお、ステップS203及びステップS206では、入出力部110は、分類対象コンテンツのうち、いずれの分類軸にも属さないコンテンツの数をカウントする。
具体的には、分類システム100は、いずれの分類軸にも属さない分類対象コンテンツの数が閾値「D」より大きいか否かを判定する。閾値としては全体の何パーセントかといった情報を用いることができる。
いずれの分類軸にも属さない分類対象コンテンツの数が少ない場合、分類システム100はステップS404に進む。ステップS404からステップS406の処理は、ステップS103からステップS105の処理と同様である。
いずれの分類軸にも属さない分類対象コンテンツの数が多い場合、分類システム100は、未分類のコンテンツの中からノイズコンテンツを特定する(ステップS407)。具体的には、以下のような処理が実行される。
(S407-3)ノイズコンテンツ抽出部113は、分類部114にコンテンツの分類を指示する。分類部114は、選択したコンテンツが選択した分類軸に属するか否かを判定するための指標を算出し、ノイズコンテンツ抽出部113に出力する。指標は、例えば、確率値又は文書間の距離(類似度)等である。ここでは、類似度を扱うものとする。
なお、分類軸の教師データが複数存在する場合、各教師データに対する類似度が算出される。この場合、ノイズコンテンツ抽出部113は、最も大きい類似度を、選択した分類軸に対する選択したコンテンツの類似度に決定する。
(S407-4)ノイズコンテンツ抽出部113は、未分類の全てのコンテンツについて処理が完了したか否かを判定する。未分類の全てのコンテンツについて処理が完了していない場合、ノイズコンテンツ抽出部113は、S407-2に戻り、同様の処理を実行する。
(S407-5)ノイズコンテンツ抽出部113は、全ての分類軸について処理が完了したか否かを判定する。全ての分類軸について処理が完了していない場合、ノイズコンテンツ抽出部113は、S407-1に戻り、同様の処理を実行する。
(S407-7)ノイズコンテンツ抽出部113は、選択したコンテンツの各分類軸の類似度に基づいて、コンテンツが属する分類軸を決定する。選択したコンテンツがいずれの分類軸にも属さない場合、ノイズコンテンツ抽出部113は、当該コンテンツをノイズコンテンツとしてノイズコンテンツリストに登録する。
具体的には、ノイズコンテンツ抽出部113は、分類軸の教師データの数に基づいて、テーブル410から類似閾値を取得し、類似閾値と類似度とを比較することによって分類軸に属するか否かを判定する。例えば、ノイズコンテンツ抽出部113は、類似度が類似閾値より大きい分類軸を、当該コンテンツが属する分類軸に決定する。類似度が類似閾値より大きい分類軸が複数存在する場合、ノイズコンテンツ抽出部113は、類似度が最も大きい分類軸を、当該コンテンツが属する分類軸に決定する。
(S407-8)ノイズコンテンツ抽出部113は、未分類の全てのコンテンツについて処理が完了したか否かを判定する。未分類の全てのコンテンツについて処理が完了していない場合、ノイズコンテンツ抽出部113は、S407-6に戻り、同様の処理を実行する。未分類の全てのコンテンツについて処理が完了した場合、ノイズコンテンツ抽出部113は、ステップS407の処理を終了する。以上が、ステップS407の処理の説明である。
追加対象分類軸が存在する場合、分類システム100は、ステップS407において特定されたノイズコンテンツ群の中から、追加対象分類軸に分類される可能性があるノイズコンテンツを取り除き(ステップS409)、その後、ステップS410に進む。具体的には、以下のような処理が実行される。
(S409-1)ノイズコンテンツ抽出部113は、追加対象分類軸の教師データに含まれるキーワードを抽出する。ノイズコンテンツ抽出部113は、キーワードリストを生成する。
(S409-5)ノイズコンテンツ抽出部113は、ノイズコンテンツの文書に含まれるキーワードとキーワードリストに登録されているキーワードに基づいて、ノイズコンテンツが追加対象分類軸に分類される可能性があるか否かを判定する。例えば、ノイズコンテンツが含む文書が(条件1)及び(条件2)のいずれか一方を満たすか否かが判定される。(条件1)及び(条件2)のいずれか一方を満たす場合、ノイズコンテンツは追加対象分類軸に分類される可能性があると判定される。
(条件1)ノイズコンテンツの文書がキーワードリストに登録されているキーワードを全く含まない。
(条件2)ノイズコンテンツの文書に含まれる、キーワードリストに登録されているキーワードの数が閾値より小さい。
(S409-6)ノイズコンテンツが追加対象分類軸に分類される可能性がある場合、ノイズコンテンツ抽出部113は、ノイズコンテンツリストから当該コンテンツを削除し、その後、S409-7に進む。
(S409-7)ノイズコンテンツ抽出部113は、ノイズコンテンツリストの全てのノイズコンテンツについて処理が完了したか否かを判定する。ノイズコンテンツリストの全てのノイズコンテンツについて処理が完了していない場合、ノイズコンテンツ抽出部113は、S409-4に戻り、同様の処理を実行する。ノイズコンテンツリストの全てのノイズコンテンツについて処理が完了した場合、ノイズコンテンツ抽出部113はステップS409の処理を終了する。以上がステップS409の処理の説明である。
ステップS410では、分類システム100のノイズコンテンツ抽出部113は、ノイズコンテンツリストに基づいてコンテンツ母集合からノイズコンテンツを除去し(ステップS410)、その後、ステップS404に進む。
具体的には、ノイズコンテンツ抽出部113は、ノイズコンテンツに対応するエントリの分類軸(設定)303にノイズであることを示す値を設定する。ステップS104及びステップS105ではノイズコンテンツは処理対象コンテンツして扱われない。
実施例2によれば、追加対象分類軸に分類される可能性があるコンテンツを残し、ノイズとなるコンテンツを削除することができる。これによって、分類の精度を向上させることができ、追加対象分類軸に分類されるコンテンツの漏れを削減できる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD-ROM、DVD-ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD-R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Python、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD-RW、CD-R等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。