(57)【要約】【課題】文書集合から文の意味内容を考慮して話題を分類することが可能な話題分類装置を提供する。【解決手段】話題分類装置１は、マップ学習用文書集合から単語ごとの分散表現ベクトルを生成する分散表現ベクトル生成手段１１と、分散表現ベクトルから文書集合の文ごとの特徴ベクトルを生成する特徴ベクトル生成手段１２と、マップ学習用文書集合から生成される文ごとの特徴ベクトルにより自己組織化マップを学習するマップ学習手段１３と、分類用文書集合から生成される文ごとの特徴ベクトルと当該文に含まれる少なくとも名詞を含む予め定めた品詞の単語とから、マップ内の配列位置における文の頻度と予め定めた品詞の単語の頻度とを計数するマップ内データ計数手段１４と、マップ内の配列位置に予め定めた品詞の単語をラベルとして割り当てるラベル付与手段１５と、を備える。【選択図】図１
2018112853.tif 000002
【特許請求の範囲】
【請求項１】
学習用文書集合における話題の特徴を学習し、その学習結果に基づいて、話題を分類する対象となる分類用文書集合から話題を分類する話題分類装置であって、
前記学習用文書集合から、分散の特徴が近い単語を近いベクトルに対応させた分散表現ベクトルを単語ごとに生成する分散表現ベクトル生成手段と、
前記話題の特徴を学習する段階において前記学習用文書集合を入力とし、前記話題を分類する段階において前記分類用文書集合を入力として、それぞれの文書集合から、文ごとに、当該文に含まれる単語に対応する前記分散表現ベクトルを加算し、当該文に含まれる単語数で除算することで前記文ごとの特徴ベクトルを生成する特徴ベクトル生成手段と、
前記学習用文書集合から生成される特徴ベクトルを、互いに類似する特徴ベクトルほど近い位置に配置するように、予め定めた大きさのマップ内の配列位置ごとの代表ベクトルを学習するマップ学習手段と、
前記分類用文書集合から生成される特徴ベクトルと当該文に含まれる少なくとも名詞を含む予め定めた品詞の単語とから、当該特徴ベクトルに最も類似する前記代表ベクトルに対応する配列位置における文の頻度と前記予め定めた品詞の単語の頻度とを計数するマップ内データ計数手段と、
前記マップ内の配列位置で計数された前記予め定めた品詞の単語の頻度に基づいて、前記配列位置に、前記予め定めた品詞の単語を話題のラベルとして割り当てるラベル付与手段と、
を備えることを特徴とする話題分類装置。
【請求項２】
前記マップ内データ計数手段は、前記マップ内の複数の配列位置からなるブロック単位で文の頻度および前記予め定めた品詞の単語の頻度を計数し、
前記ラベル付与手段は、前記ブロック単位で前記ラベルを割り当てることを特徴とする請求項１に記載の話題分類装置。
【請求項３】
前記ラベルに当該ラベルを総括するカテゴリを割り当てるカテゴリ付与手段をさらに備え、
前記カテゴリを学習する段階として、
前記特徴ベクトル生成手段は、前記カテゴリを学習するためのカテゴリが既知のカテゴリ学習用文書集合から、文ごとの特徴ベクトルを生成し、
前記マップ内データ計数手段は、前記カテゴリ学習用文書集合から生成される文ごとの特徴ベクトルから、当該特徴ベクトルに最も類似する前記代表ベクトルに対応する配列位置における文の頻度を計数し、
前記カテゴリ付与手段が、前記配列位置における文の頻度が予め定めた閾値よりも多い配列位置に、前記カテゴリ学習用文書集合として既知のカテゴリを割り当てることを特徴とする請求項１または請求項２に記載の話題分類装置。
【請求項４】
コンピュータを、請求項１から請求項３のいずれか一項に記載の話題分類装置の各手段として機能させるための話題分類プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の文書から話題を分類する話題分類装置およびそのプログラムに関する。
【背景技術】
【０００２】
近年、ブログサービスの一種であるマイクロブログや、ＳＮＳ（Social Networking Service）で総称されるインターネット上の発言、ニュース等で、どのような話題の情報が多く発信されているかを調べ、例えば、ランキング形式で提示するサービスが登場している。
【０００３】
このようなマイクロブログ等の大量の文書集合から、話題を分類し、検出する手法が種々提案されている（例えば、非特許文献１等）。
非特許文献１に記載の手法（以下、従来手法）は、ブログ記事、ニュース記事等の文書を文単位に分割し、各文から名詞を抽出する。そして、従来手法は、文書ごとに、名詞の種類数を次元数とする特徴ベクトルを生成し、特徴ベクトル群に対してクラスタリングを行うことで文書の分類を行う。そして、従来手法は、クラスタリングされた文書の数に応じてランキング付けを行う。また、従来手法は、クラスタリングされた文書の特徴ベクトルの重心ベクトルに最も近い文書を代表文書として抽出する。
これによって、従来手法は、多量のブログ記事、ニュース記事等を、自動で分類し、ランキング付けすることができ、代表となる文書を提示することができる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】木村淳，吉冨康成，田伏正佳，“単語頻度を用いた文書分類と代表文書の抽出”，第１２回情報科学技術フォーラム（ＦＩＴ２０１３），Ｄ−０１５，第２分冊ｐｐ．１１７−１２０，２０１３年９月
【発明の概要】
【発明が解決しようとする課題】
【０００５】
非特許文献１に記載の手法は、単語（名詞）の頻度により文書を分類している。
このように、従来は、単語単位で文書を分類する手法が一般的であるが、名詞のような固有の単語単位では分類を行うための粒度が細かすぎる。また、名詞は文書全体に占める割合が限定される。そのため、名詞のような限定した単語のみで文書を分類しても、必ずしも意味内容を正しく反映して分類することができないという問題がある。
また、従来の手法は、文書を分類し、数の多い文書から代表文書を抽出しているが、その文書がどのような話題の内容なのかは、人がその文書を読んで初めて認識できるものである。すなわち、従来の手法では、文書集合でどのような話題が多く発信されているのかを、直感的に認識することができないという問題がある。
【０００６】
そこで、本発明は、文書集合内の文から、意味内容を考慮して、話題を分類することが可能な話題分類装置およびそのプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００７】
前記課題を解決するため、本発明に係る話題分類装置は、学習用文書集合における話題の特徴を学習し、その学習結果に基づいて、話題を分類する対象となる分類用文書集合から話題を分類する話題分類装置であって、分散表現ベクトル生成手段と、特徴ベクトル生成手段と、マップ学習手段と、マップ内データ計数手段と、ラベル付与手段と、を備える構成とした。
【０００８】
かかる構成において、話題分類装置は、分散表現ベクトル生成手段によって、学習用文書集合から、分散の特徴が近い単語を近いベクトルに対応させた、単語を予め定めた次元数の数値ベクトルで表現した分散表現ベクトルを生成する。この分散表現ベクトルは、文書集合における単語の分布から、近似する意味内容を示す単語ほど、近い数値ベクトルを与えたものである。
【０００９】
そして、話題分類装置は、特徴ベクトル生成手段によって、文書集合から、文ごとに、当該文に含まれる単語に対応する分散表現ベクトルを加算し、当該文に含まれる単語数で除算することで文ごとの正規化した特徴ベクトルを生成する。このように、分散表現ベクトルにより、同じ意味内容を示す単語について近似するベクトルが与えられていることから、特徴ベクトル生成手段は、文ごとに単語数分の分散表現ベクトルを加算することで、文そのものの意味内容を加味したベクトルを生成することができる。また、特徴ベクトル生成手段は、特徴ベクトルを正規化することで、単語数に依存せずに、すべての文を同じ次元の特徴ベクトルで表すことができる。
【００１０】
なお、話題分類装置は、話題の特徴を学習する段階においては、特徴ベクトル生成手段によって、学習用文書集合から特徴ベクトルを生成する。また、話題分類装置は、新たな文書集合から話題を分類する段階においては、特徴ベクトル生成手段によって、話題を分類する対象となる分類用文書集合から特徴ベクトルを生成する。
【００１１】
そして、話題分類装置は、マップ学習手段によって、学習用文書集合から生成される特徴ベクトルを、互いに類似する特徴ベクトルほど近い位置に配置するように、予め定めた大きさのマップ内の配列位置ごとの代表ベクトルを学習する。これによって、マップ学習手段は、意味内容が類似する文の特徴ベクトルが近い位置に配置可能なマップを生成することができる。
【００１２】
そして、話題分類装置は、マップ内データ計数手段によって、分類用文書集合から生成される特徴ベクトルと当該文に含まれる少なくとも名詞を含む予め定めた品詞の単語とから、当該特徴ベクトルに最も類似する代表ベクトルに対応する配列位置における文の頻度と予め定めた品詞の単語の頻度とを計数する。これによって、意味内容が類似する文や予め定めた品詞の単語が、マップの配列位置に対応して計数されることになる。
【００１３】
そして、話題分類装置は、ラベル付与手段によって、マップ内の配列位置で計数された頻度の最も多い、あるいは、予め定めた閾値より多い予め定めた品詞の単語を、その配列位置に対応するラベルとして割り当てる。
これによって、意味内容が類似する文に対して、ラベルを付与して、どのような話題であるのかを特定することができる。
なお、話題分類装置は、コンピュータを、前記した各手段として機能させるための話題分類プログラムで動作させることができる。
【発明の効果】
【００１４】
本発明は、以下に示す優れた効果を奏するものである。
本発明によれば、学習用文書集合によって、文ごとの特徴ベクトルでマップを学習するため、文をその意味内容である話題に応じて分類可能なマップを学習することができる。
また、本発明によれば、学習したマップを用いて、特徴が類似する文をマップ上に分類するため、その文が表している話題を精度よく分類することができる。
また、本発明によれば、マップの配列位置に、頻度の多い名詞等の予め定めた品詞の単語をラベルとして付与するため、どのような話題が出現しているのかを検出することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１実施形態に係る話題分類装置の構成を示すブロック構成図である。
【図２】特徴ベクトル生成手段の処理内容を説明するための図であって、（ａ）は文を単語に分割する例、（ｂ）は単語の分散表現ベクトルから特徴ベクトルを算出する例をそれぞれ説明するための説明図である。
【図３】２次元のマップ（自己組織化マップ）の構造の例を示す構造図である。
【図４】マップ学習手段によるマップの学習を模式的に示す図であって、（ａ），（ｂ），（ｃ）の順に学習が進む様子を示す模式図である。
【図５】マップ内データ計数手段が計数するデータを管理するテーブルの構造図であって、（ａ）はマップ上の文の頻度を示すテーブル、（ｂ）はマップ上の単語およびその頻度を示すテーブルである。
【図６】マップ内データ計数手段が計数するマップ上の単位を示す図であって、（ａ）はマップの配列単位で計数する例を示し、（ｂ）はマップの配列を所定のブロック単位で計数する例を示す。
【図７】ラベル付与手段が付与するマップ内のラベルを管理するテーブルの構造図である。
【図８】分類結果出力手段が出力する分類結果を示す画面例を示す図である。
【図９】本発明の第１実施形態に係る話題分類装置のマップ学習モードの動作を示すフローチャートである。
【図１０】本発明の第１実施形態に係る話題分類装置の分類モードの動作を示すフローチャートである。
【図１１】本発明の第２実施形態に係る話題分類装置の構成を示すブロック構成図である。
【図１２】カテゴリ付与手段が付与するマップ内のカテゴリを管理するテーブルの構造図である。
【図１３】分類結果出力手段が出力する分類結果を示す画面例を示す図である。
【図１４】本発明の第２実施形態に係る話題分類装置のカテゴリ学習モードの動作を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態について図面を参照して説明する。
≪第１実施形態≫
［話題分類装置の構成］
最初に、図１を参照して、本発明の第１実施形態に係る話題分類装置１の構成について説明する。
【００１７】
話題分類装置１は、制御部１０と記憶部２０とで構成される。話題分類装置１は、インターネット上の発言、ニュース等で発信された複数の文書（文書集合）から、類似する話題を分類するものである。
【００１８】
制御部１０は、図１に示すように、分散表現ベクトル生成手段１１と、特徴ベクトル生成手段１２と、マップ学習手段１３と、マップ内データ計数手段１４と、ラベル付与手段１５と、分類結果出力手段１６と、を備える。
制御部１０は、話題分類装置１の動作を制御するものである。制御部１０は、２つの動作モードで動作する。動作モードの１つは、文を特徴ベクトルで表したときに特徴ベクトルが類似する文（話題が類似する文）を分類するためのマップ（特徴ベクトルマップ）を話題の特徴として学習する学習モード（マップ学習モード）であり、もう１つは、学習したマップを用いて、分類対象となる文書集合から、話題を分類する分類モードである。なお、特徴ベクトルおよびマップについては、後で詳細に説明する。
【００１９】
制御部１０は、マップ学習モードで、分類を行う対象となるブログ記事、ニュース記事等の複数の文書（マップ学習用文書集合）を入力し、マップを学習する。
また、制御部１０は、分類モードで、話題を分類する対象となる複数の文書（分類用文書集合；マップ学習用文書集合でもよい）を入力し、話題を分類する。
以下、これらの動作モードで動作する制御部１０の各手段について説明する。
【００２０】
分散表現ベクトル生成手段１１は、マップ学習用文書集合に含まれる単語の分散表現ベクトルを生成するものである。なお、分散表現ベクトルとは、文書集合において、意味が近い（分散の特徴が近い）単語を近いベクトルに対応させて、単語を有限の高次元（例えば、２００次元）の数値ベクトルで表現したものである。
分散表現ベクトル生成手段１１は、マップ学習用文書集合を形態素（単語）に分割し、マップ学習用文書集合全体の形態素に分割した単語を対象に分散表現ベクトルを生成する。なお、分散表現ベクトルの生成の手法は既知であり、例えば、ｗｏｒｄ２ｖｅｃ、ＧｌｏＶｅ（Global Vectors for Word Representation）等の一般的な手法を参照されたい。ここでは、分散表現ベクトルの生成の詳細な説明は省略する。
【００２１】
この分散表現ベクトル生成手段１１は、生成した分散表現ベクトルを、単語に対応付けて分散表現ベクトル記憶手段２１に記憶する。また、分散表現ベクトル生成手段１１は、マップ学習用文書集合に含まれる単語の分散表現ベクトルをすべて生成した段階で、その旨を特徴ベクトル生成手段１２に通知する。
なお、この分散表現ベクトル生成手段１１は、マップ学習モードにおいて動作する。
【００２２】
特徴ベクトル生成手段１２は、文書集合（マップ学習用文書集合、分類用文書集合）に含まれる文ごとの特徴ベクトルを生成するものである。ここでは、特徴ベクトル生成手段１２は、単語別ベクトル加算手段１２ａと、特徴ベクトル正規化手段１２ｂと、を備える。
【００２３】
単語別ベクトル加算手段１２ａは、文書集合に含まれる文ごとに、当該文を構成する単語に対応する分散表現ベクトルを加算するものである。
この単語別ベクトル加算手段１２ａは、文書集合を文ごとに入力する。例えば、文書集合として予め一文を一行で記載したテキストデータを用いる場合、単語別ベクトル加算手段１２ａは、行単位で文を入力する。また、例えば、文書集合として複数の文が連続して記載されているテキストデータを用いる場合、単語別ベクトル加算手段１２ａは、句点等によって一文を検出し、検出した文を入力する。
【００２４】
そして、単語別ベクトル加算手段１２ａは、入力した一文を形態素解析により単語に分割し、分散表現ベクトル記憶手段２１からその単語に対応する分散表現ベクトルを読み出し、文書集合に含まれる文ごとに加算する。
この単語別ベクトル加算手段１２ａは、文ごとに、加算した分散表現ベクトルと、当該文に含まれる単語数とを、文ごとに特徴ベクトル正規化手段１２ｂに出力する。
【００２５】
特徴ベクトル正規化手段１２ｂは、単語別ベクトル加算手段１２ａで加算された分散表現ベクトルを正規化するものである。
具体的には、特徴ベクトル正規化手段１２ｂは、単語別ベクトル加算手段１２ａで加算された文ごとの分散表現ベクトルの各要素の値を、当該文に含まれる単語数で除算することで、文に対応する特徴ベクトルを生成する。これによって、一文に含まれる単語数の多少に関わらず、文間で類似判定が可能な特徴ベクトルを生成することができる。
【００２６】
ここで、図２を参照（適宜図１参照）して、特徴ベクトル生成手段１２が生成する文の特徴ベクトルについて説明する。
図２（ａ）に示すように、文の一例を「今日は株が急騰しました。」とした場合、単語別ベクトル加算手段１２ａは、当該文を「今日／は／株／が／急騰／し／まし／た／。」と分割する。
【００２７】
そして、単語別ベクトル加算手段１２ａは、分割した単語ごとに、対応する分散表現ベクトルを分散表現ベクトル記憶手段２１から読み出す。例えば、図２（ｂ）の例では、単語「今日」に対応する分散表現ベクトル「０．１，０．３，０．４，０．１，０．８，０．９，０．２，…，０．９」を読み出す。このように、単語別ベクトル加算手段１２ａは、個々の単語に対応する分散表現ベクトルを読み出す。
そして、単語別ベクトル加算手段１２ａは、文を構成する単語数だけ分散表現ベクトルを加算して、全単語合計（図２（ｂ）の例では、「１．８，０．９，２．７，１．８，１．８，７．２，０．９，…，６．３」）を算出する。
【００２８】
その後、特徴ベクトル正規化手段１２ｂは、分散表現ベクトルの全単語合計を、文を構成する単語数（図２の例では、９個）で除算することで、特徴ベクトル（図２（ｂ）の例では、「０．２，０．１，０．３，０．２，０．２，０．８，０．１，…，０．７」）を算出する。
これによって、特徴ベクトル生成手段１２は、文ごとの特徴ベクトルを生成することができる。
図１に戻って、話題分類装置１の構成について説明を続ける。
【００２９】
特徴ベクトル生成手段１２は、外部から設定されるモード（マップ学習モード、分類モード）によって、生成した文の特徴ベクトルの出力先を切り替える。
特徴ベクトル生成手段１２は、マップ学習モードにおいて、特徴ベクトルをマップ学習手段１３に出力する。また、特徴ベクトル生成手段１２は、分類モードにおいて、特徴ベクトルと、当該特徴ベクトルを生成した文に含まれる語の予め定めた品詞の単語とを、マップ内データ計数手段１４に出力する。ここで、予め定めた品詞は、文の意味内容を端的に表す単語の品詞が好まく、例えば、名詞である。もちろん、名詞とともに、動詞、形容詞等の他の品詞を含んでも構わない。なお、品詞は、単語別ベクトル加算手段１２ａにおいて、形態素解析を行った際に得られるものである。
【００３０】
マップ学習手段１３は、特徴ベクトル生成手段１２で生成される類似する特徴ベクトルをマップ上でより近い配列位置に対応付けるために、マップの配列位置ごとにその配列位置に割り当てる特徴ベクトルと類似するベクトルを代表ベクトルとして学習するとともに、代表ベクトル間の距離が近いほど代表ベクトルを近くの配列位置に割り当てたマップ（特徴ベクトルマップ）を学習するものである。マップ学習手段１３が生成するマップには、自己組織化マップ（ＳＯＭ：Self-Organizing Map）を用いることができる。自己組織化マップは、教師なし学習によって高次元のデータをその位相関係を保持しつつ、低次元（１〜３次元程度）へ写像したものである。マップ学習手段１３は、２次元のＳＯＭを用いた例で説明する。なお、ＳＯＭの学習手法は一般的なものであるため、詳細な説明は省略する。
【００３１】
以下、図３，図４を参照（適宜図１参照）して、マップ学習手段１３のＳＯＭの学習手法について、その概要を説明する。
まず、マップ学習手段１３は、図３に示すような予め定めた要素数（ここでは、ｎ×ｎ個）で構成される２次元配列のマップＭ内で、各配列要素に特徴ベクトルと同次元のベクトル（代表ベクトル）を割り当て、疑似乱数によって、各代表ベクトルの要素を初期化する。図４（ａ）では、マップＭ内の各配列要素の特徴ベクトルを異なるパターンで模式的に表している。なお、図４中、同一のパターンは、厳密には異なるベクトルであって、類似するベクトルを示している。
【００３２】
そして、マップ学習手段１３は、特徴ベクトル生成手段１２で生成された特徴ベクトルに最も類似するマップ内の代表ベクトルを検索する。ここで、ベクトル同士が最も類似するとは、例えば、ユークリッド距離が最も近いことを意味する。図４（ａ）では、例として、特徴ベクトルが配列Ａ１，２の代表ベクトルに最も近いとする。
【００３３】
そして、マップ学習手段１３は、マップＭ内で、特徴ベクトルに最も類似する代表ベクトルが対応付けられている配列位置（ここでは、Ａ１，２）を中心に、予め定めた近傍範囲の配列位置に対応付けられた代表ベクトルを近傍関数（ガウシアン関数）により演算し、代表ベクトルを更新する。マップ学習手段１３は、図４（ｂ）に示すように、配列Ａ１，２に特徴ベクトルを割り当て、特徴ベクトルに最も類似する代表ベクトルを配置している配列位置を中心とする近傍範囲に対応付けられているその周辺の配列要素の代表ベクトルを、ガウシアン分布に伴って特徴ベクトルに近づく方向に更新する。
【００３４】
このマップ学習手段１３は、順次、特徴ベクトルを入力し、マップＭ内の代表ベクトルを更新し、図４（ｃ）に示すように、類似する代表ベクトルほど、配列位置が近い位置に分類したマップＭを生成する。
図１に戻って、話題分類装置１の構成について説明を続ける。
マップ学習手段１３は、順次学習したマップ（特徴ベクトルマップ）Ｍを、特徴ベクトルマップ記憶手段２２に記憶する。
【００３５】
マップ内データ計数手段１４は、特徴ベクトル生成手段１２で生成される特徴ベクトルに最も類似する代表ベクトルを、特徴ベクトルマップ記憶手段２２に記憶されているマップ上で探索し、対応するマップ内の配列の頻度を計数するものである。なお、最も類似するとは、例えば、ユークリッド距離が最も近いことを意味する。
例えば、マップ内データ計数手段１４は、図５（ａ）に示す特徴ベクトル頻度テーブルＴ１において、文ごとの特徴ベクトルを入力するたびに、特徴ベクトルに最も類似する代表ベクトルに対応するマップＭ（図３）の配列の頻度に“１”を加算する。
【００３６】
また、マップ内データ計数手段１４は、マップ内の配列の頻度を計数するとともに、特徴ベクトル生成手段１２から出力される予め定めた品詞の単語を同じ配列内で単語ごとに計数する。例えば、マップ内データ計数手段１４は、図５（ｂ）に示す単語頻度テーブルＴ２において、特徴ベクトルに対応する１以上の単語を入力するたびに、図５（ａ）の特徴ベクトル頻度テーブルＴ１で頻度を加算した同じ配列で、単語の頻度を計数する。
【００３７】
これによって、マップ内データ計数手段１４は、マップ（特徴ベクトルマップ）Ｍ（図３）に対応して、文の特徴ベクトルが類似する話題が類似する配列ごとに、文の頻度を計数し、その話題に対応する単語を計数する。
【００３８】
なお、ここでは、マップ内データ計数手段１４は、図６（ａ）に示すように、マップＭの配列要素ごとにデータ（特徴ベクトル、単語）の計数を行った。しかし、計数を行う単位は、図６（ｂ）に示すように、マップＭを予め定めた数で分割し、複数の配列要素からなるブロックＢ単位で行うこととしてもよい。
【００３９】
このマップ内データ計数手段１４は、この話題ごとの計数結果（図５に示す特徴ベクトル頻度テーブルＴ１、単語頻度テーブルＴ２）を分類結果記憶手段２３に記憶する。また、マップ内データ計数手段１４は、文書集合のすべての文について計数が完了した時点で、その旨をラベル付与手段１５に通知する。
【００４０】
ラベル付与手段１５は、マップＭ（図３）の配列ごとに、割り当てられた特徴ベクトルの意味内容（話題）を示すラベルを付与するものである。
このラベル付与手段１５は、マップ内データ計数手段１４で計数された配列ごとの単語の頻度に基づいて、頻度の最も多い単語、あるいは、頻度の多い方から予め定めた数の単語を、当該配列の話題に対応するラベルとする。
【００４１】
ラベル付与手段１５は、分類結果記憶手段２３に記憶されている図５（ｂ）に示した単語頻度テーブルＴ２を参照して、図７に示すように、頻度の多い単語をラベルとして配列に対応付けたラベルテーブルＬＴを生成する。
なお、ここでは、ラベル付与手段１５は、図６（ａ）に示すように、マップＭの配列位置ごとにラベルを付与した。しかし、ラベルを付与する単位は、図６（ｂ）に示すように、マップＭを予め定めた数で分割し、複数の配列位置からなるブロックＢ単位で行うこととしてもよい。
【００４２】
このラベル付与手段１５は、このラベル付与結果（ラベルテーブルＬＴ）を分類結果記憶手段２３に記憶する。また、ラベル付与手段１５は、話題のラベル付けが完了した時点で、ラベル付けが完了したことを分類結果出力手段１６に通知する。
【００４３】
分類結果出力手段１６は、分類した話題の結果を出力するものである。分類結果出力手段１６は、ラベル付与手段１５で分類のラベル付けが完了した段階で、分類結果記憶手段２３に記憶されている分類結果を参照して、頻度に応じた話題の分類結果を出力する。例えば、分類結果出力手段１６は、図５（ａ）に示した特徴ベクトル頻度テーブルＴ１における配列の頻度順に、図７に示したラベルテーブルＬＴにおいて対応する配列のラベルを図示しない表示装置に出力する。
これによって、操作者は、文書集合において、ラベルで表される話題が、どのような頻度で発信されているのかを判断することができる。
【００４４】
分類結果出力手段１６は、配列ごとの細分化された分類結果ではなく、図６（ｂ）に示すブロックＢ単位で、話題の頻度順にラベルを出力することとしてもよい。
また、分類結果出力手段１６は、話題の頻度の度合いを視覚的に分かりやすくするため、頻度が多いほど濃い色で、配列（あるいはブロック）を表したヒートマップを生成し、表示してもよい。例えば、分類結果出力手段１６は、図８の表示画面の例に示すように、マップＭの配列ごと（図６（ａ））、あるいは、マップＭの所定のブロックＢごと（図６（ｂ））の分類結果として、話題の頻度が多い配列（ブロック）ほど、色を濃く（輝度を暗く）したヒートマップを表示する。また、分類結果出力手段１６は、例えば、マウス等（不図示）の入力手段で、図８の配列（ブロック）を選択されることで、当該配列（ブロック）に対応するマップのラベル、頻度を表示することとしてもよい。
【００４５】
記憶部２０は、分散表現ベクトル記憶手段２１と、特徴ベクトルマップ記憶手段２２と、分類結果記憶手段２３と、を備える。記憶部２０は、話題分類装置１の動作で生成する各種データを記憶するものである。
これら各記憶手段は、ハードディスク、半導体メモリ等の一般的な記憶装置で構成することができる。なお、ここでは、記憶部２０において、各記憶手段を個別に設けているが、１つの記憶装置の記憶領域を複数に区分して各記憶手段としてもよい。また、記憶部２０を外部記憶装置として、話題分類装置１の構成から省いてもよい。
【００４６】
分散表現ベクトル記憶手段２１は、分散表現ベクトル生成手段１１で生成される分散表現ベクトルを単語に対応付けて記憶するものである。
特徴ベクトルマップ記憶手段２２は、マップ学習手段１３による学習で生成されるマップ（特徴ベクトルマップ）を記憶するものである。
分類結果記憶手段２３は、マップ内データ計数手段１４で計数された、話題に対応するマップ内の配列の頻度、単語の頻度、ならびに、ラベル付与手段１５で付与されるラベルを記憶するものである。
なお、話題分類装置１は、一般的なコンピュータを、前記した制御部１０の各手段として機能させるプログラム（話題分類プログラム）で動作させることができる。
【００４７】
以上説明したように話題分類装置１を構成することで、話題分類装置１は、ブログ記事、ニュース記事等のマップ学習用文書集合から、文ごとの特徴を表す特徴ベクトルのマップを生成し、新規の文書集合から、マップ上において話題を分類することができる。また、話題分類装置１は、マップ上に分類される文の頻度、予め定めた品詞の単語の頻度を計数することで、文書集合でどのような話題が多く発信されているのかを検出することができる。
【００４８】
［話題分類装置の動作］
次に、図９，図１０を参照して、本発明の第１実施形態に係る話題分類装置１の動作について説明する。ここでは、話題分類装置１の動作を、マップ学習モードと分類モードとに分けて説明する。
【００４９】
（マップ学習モード）
まず、図９を参照（構成については適宜図１参照）して、話題分類装置１のマップ学習モードの動作について説明する。
ステップＳ１において、話題分類装置１の分散表現ベクトル生成手段１１は、ブログ記事、ニュース記事等の複数の文書（マップ学習用文書集合）に含まれる単語の分散表現ベクトルを生成する。この単語ごとの分散表現ベクトルは、分散表現ベクトル記憶手段２１に記憶される。
【００５０】
そして、ステップＳ２において、話題分類装置１のマップ学習手段１３は、特徴ベクトルマップ記憶手段２２において、マップ（特徴ベクトルマップ）内の各配列要素に特徴ベクトルと同次元のベクトル（代表ベクトル）を割り当て、疑似乱数によって、予め学習対象である各代表ベクトルの要素を初期化する。
【００５１】
ステップＳ３において、話題分類装置１の特徴ベクトル生成手段１２は、マップ学習用文書集合を文ごとに入力する。
そして、ステップＳ４において、話題分類装置１の単語別ベクトル加算手段１２ａは、ステップＳ３で入力した文に含まれる単語に対応するステップＳ１で生成された分散表現ベクトルを単語数分だけ加算する。
【００５２】
さらに、ステップＳ５において、話題分類装置１の特徴ベクトル正規化手段１２ｂは、ステップＳ４で加算された分散表現ベクトルを、一文に含まれる単語数で除算することで、文ごとの正規化した特徴ベクトルを生成する。
【００５３】
そして、ステップＳ６において、話題分類装置１のマップ学習手段１３は、ステップＳ５で生成された文ごとの特徴ベクトルに最も類似する代表ベクトルの配列位置をマップ内で探索し、その配列位置およびその周辺の配列位置の代表ベクトルを特徴ベクトルに近づける方向に更新することで、代表ベクトルの要素を学習する。
【００５４】
ここで、ステップＳ７において、話題分類装置１の特徴ベクトル生成手段１２は、マップ学習用文書集合の入力が終了した否か、すなわち、マップの学習が終了したか否かを判定し、マップの学習が終了していないと判定した場合（ステップＳ７でＮｏ）、話題分類装置１は、ステップＳ３に戻って、マップの学習を継続する。
一方、マップの学習が終了したと判定した場合（ステップＳ７でＹｅｓ）、話題分類装置１は、マップの学習動作を終了する。
以上の動作によって、話題分類装置１は、マップ学習用文書集合から、文ごとの特徴を学習した特徴ベクトルマップを生成することができる。
【００５５】
（分類モード）
次に、図１０を参照（構成については適宜図１参照）して、話題分類装置１の分類モードの動作について説明する。この分類モードの動作は、図９で説明したマップ学習モードの動作の後に行われる。
ステップＳ１０において、話題分類装置１の特徴ベクトル生成手段１２は、話題を分類する対象となる文書集合（分類用文書集合；マップ学習用文書集合でもよい）を文ごとに入力する。
【００５６】
そして、ステップＳ１１において、話題分類装置１の単語別ベクトル加算手段１２ａは、ステップＳ１０で入力した文に含まれる単語に対応する分散表現ベクトルを分散表現ベクトル記憶手段２１から読み出し、単語数分だけ加算する。
【００５７】
さらに、ステップＳ１２において、話題分類装置１の特徴ベクトル正規化手段１２ｂは、ステップＳ１１で加算された分散表現ベクトルを、一文に含まれる単語数で除算することで、文ごとの正規化した特徴ベクトルを生成する。
【００５８】
そして、ステップＳ１３において、話題分類装置１のマップ内データ計数手段１４は、ステップＳ１２で生成された文ごとの特徴ベクトルに最も類似する代表ベクトルの配列位置をマップ内で探索する。
【００５９】
そして、ステップＳ１４において、話題分類装置１のマップ内データ計数手段１４は、ステップＳ１３で探索した配列位置において、文の頻度を“１”加算し、図５（ａ）に示す特徴ベクトル頻度テーブルＴ１を更新する。
【００６０】
さらに、ステップＳ１５において、話題分類装置１のマップ内データ計数手段１４は、ステップＳ１３で探索した配列位置において、ステップＳ１０で入力した文に含まれる単語のうちで、予め定めた品詞（例えば、名詞、動詞、形容詞等）の単語の頻度を、その単語数分だけ加算し、図５（ｂ）に示す単語頻度テーブルＴ２を更新する。
【００６１】
ここで、ステップＳ１６において、話題分類装置１の特徴ベクトル生成手段１２は、分類用文書集合の入力が終了したか否かを判定する。そして、分類用文書集合の入力が終了していない場合（ステップＳ１６でＮｏ）、話題分類装置１は、ステップＳ１０に戻って、マップ内の頻度の計数を継続する。
一方、分類用文書集合の入力が終了した場合（ステップＳ１６でＹｅｓ）、話題分類装置１は、ステップＳ１７に動作を進める。
【００６２】
その後、ステップＳ１７において、話題分類装置１のラベル付与手段１５は、マップの配列ごとに、頻度上位（頻度の最も多い単語、あるいは、頻度の多い方から予め定めた数の単語）を、当該配列の話題に対応するラベルとして設定し、図７に示すラベルテーブルＬＴを生成する。
【００６３】
そして、ステップＳ１８において、話題分類装置１の分類結果出力手段１６は、頻度に応じた話題の分類結果を出力する。例えば、分類結果出力手段１６は、マップ内の配列ごとに計数した文の頻度が多い順に、話題の内容となるラベルとともに出力する。また、例えば、分類結果出力手段１６は、マップ内の配列ごとに計数した頻度を、話題の分布としてヒートマップにより出力してもよい。
以上の動作によって、話題分類装置１は、ブログ記事、ニュース記事等の複数の文書から、話題を分類し、その話題が発信されている頻度を計数することができる。
【００６４】
≪第２実施形態≫
［話題分類装置の構成］
第１実施形態における話題分類装置１は、分類した話題ごとに頻出単語のラベルを付与したが、話題を総括する上位のカテゴリ（ジャンル）を付与することとしてもよい。例えば、話題を総括するカテゴリとして、スポーツ、ニュース、音楽等である。
【００６５】
ここで、図１１を参照して、本発明の第２実施形態として、複数の文書（文書集合）から、類似する話題をカテゴリごとに分類する話題分類装置１Ｂの構成について説明する。
図１１に示すように、話題分類装置１Ｂは、制御部１０Ｂとして、分散表現ベクトル生成手段１１と、特徴ベクトル生成手段１２Ｂと、マップ学習手段１３と、マップ内データ計数手段１４Ｂと、ラベル付与手段１５と、分類結果出力手段１６Ｂと、カテゴリ付与手段１７と、を備える。また、記憶部２０Ｂとして、分散表現ベクトル記憶手段２１と、特徴ベクトルマップ記憶手段２２と、分類結果記憶手段２３Ｂと、を備える。
【００６６】
図１で説明した制御部１０は、動作モードとして、マップ学習モードおよび分類モードが動作する。一方、制御部１０Ｂは、マップ学習モードおよび分類モードの間で、さらに、カテゴリ学習モードが動作する。
【００６７】
カテゴリ学習モードでは、制御部１０Ｂは、予めカテゴリが既知のブログ記事、ニュース記事等の複数の文書（カテゴリ学習用文書集合）を入力し、カテゴリに対応するマップの配列位置を学習する。なお、制御部１０Ｂは、カテゴリ学習モードで動作する場合、カテゴリ学習用文書集合と、当該文書集合に対応する既知のカテゴリ（カテゴリ名）とを入力する。以下、制御部１０Ｂの各手段について説明する。
【００６８】
特徴ベクトル生成手段１２Ｂ、マップ内データ計数手段１４Ｂ、分類結果出力手段１６Ｂ、カテゴリ付与手段１７および分類結果記憶手段２３Ｂ以外の構成は、図１で説明した話題分類装置１と同じ構成であるため、同一の符号を付して説明を省略する。
特徴ベクトル生成手段１２Ｂは、文書集合（マップ学習用文書集合、カテゴリ学習用文書集合、分類用文書集合）に含まれる文ごとの特徴ベクトルを生成するもので、図１で説明した特徴ベクトル生成手段１２と同じものである。ただし、特徴ベクトル生成手段１２Ｂは、カテゴリ学習モードにおいて、特徴ベクトルと既知のカテゴリ（カテゴリ名）とをマップ内データ計数手段１４Ｂに出力する。
【００６９】
マップ内データ計数手段１４Ｂは、特徴ベクトル生成手段１２Ｂで生成される特徴ベクトルに最も類似する代表ベクトルを、特徴ベクトルマップ記憶手段２２に記憶されているマップ上で探索し、対応するマップ内の配列の頻度を計数するものである。マップ内データ計数手段１４Ｂは、基本的に、図１で説明したマップ内データ計数手段１４と同じものであるが、カテゴリ学習モードにおいて、図５（ａ）と同様の特徴ベクトル頻度テーブルＴ１を別途生成し、分類結果記憶手段２３Ｂに記憶する。
なお、新たなカテゴリを学習する場合、マップ内データ計数手段１４Ｂは、予め特徴ベクトル頻度テーブルＴ１を初期化することとする。
【００７０】
これによって、特徴ベクトル頻度テーブルＴ１において、既知のカテゴリの文の特徴ベクトルに類似する代表ベクトルに対応する配列の頻度が上昇する。
このマップ内データ計数手段１４Ｂは、文書集合のすべての文について計数が完了した時点で、その旨およびカテゴリ名をカテゴリ付与手段１７に通知する。
【００７１】
カテゴリ付与手段１７は、マップＭ（図３）の配列において、マップ内データ計数手段１４Ｂで計数された配列ごとの頻度が、予め定めた閾値よりも多い配列に対して、カテゴリを付与するものである。
【００７２】
カテゴリ付与手段１７は、マップ内データ計数手段１４Ｂで生成され、分類結果記憶手段２３Ｂに記憶されている図５（ａ）に示した特徴ベクトル頻度テーブルＴ１を参照して、図１２に示すように、頻度が閾値よりも多い配列に対して、カテゴリ（カテゴリ名）を配列に対応付けたカテゴリテーブルＣＴを生成する。
【００７３】
図１２では、カテゴリ学習用文書集合として、ニュースに関連する既知の文書集合を入力されて学習した結果として、配列Ａ０，０にカテゴリとして「ニュース」が設定された状態を示している。また、図１２では、さらに、カテゴリ学習用文書集合として、スポーツに関連する既知の文書集合を入力されて学習した結果として、配列Ａ２，０にカテゴリとして「スポーツ」が設定された状態を示している。
なお、カテゴリ付与手段１７は、配列単位ではなく、複数の配列からなるブロック単位で、カテゴリを付与することとしてもよい。
このカテゴリ付与手段１７は、このカテゴリテーブルＣＴを分類結果記憶手段２３Ｂに記憶する。
【００７４】
分類結果出力手段１６Ｂは、分類した話題の分類結果を出力するものである。この分類結果出力手段１６Ｂは、ラベル付与手段１５で分類のラベル付けが完了した段階で、分類結果記憶手段２３Ｂに記憶されている分類結果を参照して、頻度に応じた話題の分類結果をカテゴリとともに出力する。例えば、図１３に示すように、図８で説明した表示画面に加え、カテゴリを表示する。
また、分類結果出力手段１６Ｂは、外部からカテゴリを指定されることで、指定されたカテゴリに対応する話題のみの分類結果を抽出して出力することとしてもよい。
【００７５】
なお、話題分類装置１Ｂは、一般的なコンピュータを、前記した制御部１０Ｂの各手段として機能させるプログラム（話題分類プログラム）で動作させることができる。
以上説明したように話題分類装置１Ｂを構成することで、話題分類装置１の効果に加え、話題が属するカテゴリを、人手を介さずに付与することができる。
【００７６】
［話題分類装置の動作］
次に、図１４を参照（構成については適宜図１１参照）して、本発明の第２実施形態に係る話題分類装置１Ｂの動作について説明する。ここでは、話題分類装置１Ｂの動作として、カテゴリ学習モードの動作について説明する。このカテゴリ学習モードの動作は、図９，図１０で説明したマップ学習モードの動作と分類モードの動作と間に行われる。
ステップＳ２０において、話題分類装置１Ｂの特徴ベクトル生成手段１２Ｂは、カテゴリ学習用文書集合を文ごとに入力する。
【００７７】
そして、ステップＳ２１において、話題分類装置１Ｂの単語別ベクトル加算手段１２ａは、ステップＳ２０で入力した文に含まれる単語に対応する分散表現ベクトルを分散表現ベクトル記憶手段２１から読み出し、単語数分だけ加算する。
【００７８】
さらに、ステップＳ２２において、話題分類装置１Ｂの特徴ベクトル正規化手段１２ｂは、ステップＳ２１で加算された分散表現ベクトルを、一文に含まれる単語数で除算することで、文ごとの正規化した特徴ベクトルを生成する。
【００７９】
そして、ステップＳ２３において、話題分類装置１Ｂのマップ内データ計数手段１４Ｂは、ステップＳ２２で生成された文ごとの特徴ベクトルに最も類似する代表ベクトルの配列位置をマップ内で探索する。
【００８０】
そして、ステップＳ２４において、話題分類装置１Ｂのマップ内データ計数手段１４Ｂは、ステップＳ２３で探索した配列位置において、文の頻度を“１”加算し、図５（ａ）に示す特徴ベクトル頻度テーブルＴ１を更新する。
【００８１】
ここで、ステップＳ２５において、話題分類装置１Ｂの特徴ベクトル生成手段１２Ｂは、カテゴリ学習用文書集合の入力が終了したか否かを判定する。そして、カテゴリ学習用文書集合の入力が終了していない場合（ステップＳ２５でＮｏ）、話題分類装置１Ｂは、ステップＳ２０に戻って、マップ内の頻度の計数を継続する。
一方、カテゴリ学習用文書集合の入力が終了した場合（ステップＳ２５でＹｅｓ）、話題分類装置１Ｂは、ステップＳ２６に動作を進める。
【００８２】
その後、ステップＳ２６において、話題分類装置１Ｂのカテゴリ付与手段１７は、マップの配列ごとに、頻度が、予め定めた閾値よりも多い配列に対して、予め設定された既知のカテゴリを付与し、図１２に示すカテゴリテーブルＣＴを生成する。
【００８３】
以上の動作によって、話題分類装置１Ｂは、マップの配列がどのカテゴリに対応するものであるのかを学習することができる。
なお、話題分類装置１Ｂは、このカテゴリ学習モードの動作を、学習させたいカテゴリごとに準備したカテゴリ学習用文書集合を用いて動作させることで、複数のカテゴリを学習することができる。そして、話題分類装置１Ｂは、図１０で説明した分類モードの動作のステップＳ１８において、マップ内の配列ごとに計数した文の頻度が多い順に、話題の内容となるラベルとともに、カテゴリを出力することとする。
【符号の説明】
【００８４】
１，１Ｂ      話題分類装置
１１          分散表現ベクトル生成手段
１２，１２Ｂ  特徴ベクトル生成手段
１２ａ        単語別ベクトル加算手段
１２ｂ        特徴ベクトル正規化手段
１３          マップ学習手段
１４，１４Ｂ  マップ内データ計数手段
１５          ラベル付与手段
１６，１６Ｂ  分類結果出力手段
１７          カテゴリ付与手段
２１          分散表現ベクトル記憶手段
２２          特徴ベクトルマップ記憶手段
２３，２３Ｂ  分類結果記憶手段
【図１】
2018112853.tif 000003
【図２】
2018112853.tif 000004
【図３】
2018112853.tif 000005
【図４】
2018112853.tif 000006
【図５】
2018112853.tif 000007
【図６】
2018112853.tif 000008
【図７】
2018112853.tif 000009
【図８】
2018112853.tif 000010
【図９】
2018112853.tif 000011
【図１０】
2018112853.tif 000012
【図１１】
2018112853.tif 000013
【図１２】
2018112853.tif 000014
【図１３】
2018112853.tif 000015
【図１４】
2018112853.tif 000016