(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024003634
(43)【公開日】2024-01-15
(54)【発明の名称】文書データセット解析装置及び文書データセット解析方法
(51)【国際特許分類】
G06F 16/33 20190101AFI20240105BHJP
【FI】
G06F16/33
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022102911
(22)【出願日】2022-06-27
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り ・ウェブサイトのアドレス https://proceedings-of-deim.github.io/DEIM2022/papers/D23-3.pdf 掲載日 令和4年2月18日 ・研究集会名 第14回データ工学と情報マネジメントに関するフォーラム 開催場所 ウェブ開催 開催日 令和4年2月28日
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成28年度、国立研究開発法人科学技術振興機構、戦略的創造研究推進事業「CyborgCrowdにおける人と計算機の高度連携方式およびミドルウェア」委託研究、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】504171134
【氏名又は名称】国立大学法人 筑波大学
(71)【出願人】
【識別番号】000001317
【氏名又は名称】株式会社熊谷組
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】伊藤 寛祥
(72)【発明者】
【氏名】平澤 嶺
(72)【発明者】
【氏名】森嶋 厚行
(72)【発明者】
【氏名】松原 正樹
(72)【発明者】
【氏名】大本 晋士郎
(72)【発明者】
【氏名】伊藤 達也
(72)【発明者】
【氏名】山田 一郎
(72)【発明者】
【氏名】白井 公人
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175HB03
(57)【要約】
【課題】2つの文書データセットに共通の特徴、一方の文書データセットに固有の特徴、及び、他方の文書データセットに固有の特徴を、各文書データが有する時間情報を考慮して解析する。
【解決手段】文書データセットD1から生成した三次元非負テンソルT1を、二次元行列U1,V1,W1に因子分解すると共に、文書データセットD2から生成した三次元非負テンソルT2を、二次元行列U1,V1,W1に因子分解する。二次元行列U1は、文書データセットD1,D2に共通のトピックに対応する部分行列U1cと、文書データセットD1に固有のトピックに対応する部分行列U1dとにより構成されており、二次元行列U2は、文書データセットD1,D2とに共通のトピックに対応する部分行列U2cと、文書データセットD2に固有のトピックに対応する部分行列U2dと、により構成されている。
【選択図】
図3
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサを備え、
前記プロセッサは、
時間情報を有する文書データからなる文書データセットD1から、文書データ、単語、及び時間の次元を持つ三次元非負テンソルであって、各時間に対応する各文書データにおける各単語の出現頻度を要素とする三次元非負テンソルX1を生成すると共に、時間情報を有する文書データからなる文書データセットD2から、文書データ、単語、及び時間の次元を持つ三次元非負テンソルであって、各時間に対応する各文書データにおける各単語の出現頻度を要素とする三次元非負テンソルX2を生成する生成処理と、
三次元非負テンソルX1を、トピック及び単語の次元を持つ二次元行列であって、各トピックにおける各単語の出現頻度を要素とする二次元行列U1と、文書データ及びトピックの次元を持つ二次元行列であって、各文書データにおける各トピックの重みを要素とする二次元行列V1と、時間及びトピックの次元を持つ二次元行列であって、各時間における各トピックの重みを要素とする二次元行列W1とに因子分解すると共に、三次元非負テンソルX2を、トピック及び単語の次元を持つ二次元行列であって、各トピックにおける各単語の出現頻度を要素とする二次元行列U2と、文書データ及びトピックの次元を持つ二次元行列であって、各文書データにおける各トピックの重みを要素とする二次元行列V2と、時間及びトピックの次元を持つ二次元行列であって、各時間における各トピックの重みを要素とする二次元行列W2とに因子分解する分解処理と、を実行し、
二次元行列U1は、文書データセットD1,D2に共通のトピックに対応する部分行列U1cと、文書データセットD1に固有のトピックに対応する部分行列U1dとにより構成されており、二次元行列U2は、文書データセットD1,D2とに共通のトピックに対応する部分行列U2cと、文書データセットD2に固有のトピックに対応する部分行列U2dと、により構成されている、
ことを特徴とする文書データセット解析装置。
【請求項2】
前記分解処理において、前記プロセッサは、部分行列U1cと部分行列U2cとが類似するほど値が大きくなり、部分行列U1dと部分行列U2dとが類似するほど値が小さくなる損失関数を最小化するように、二次元行列U1,U2,V1,V2,W1,W2の要素の値を決定する、
ことを特徴とする請求項1に記載の文書データセット解析装置。
【請求項3】
前記プロセッサは、文書データセットD1,D2に共通の各トピックについて、単語を部分行列U1cが示す出現頻度順に並べたテーブルT1c、文書データセットD1に固有の各トピックについて、単語を部分行列U1dが示す出現頻度順に並べたテーブルT1d、文書データセットD1,D2に共通の各トピックについて、単語を部分行列U2cが示す出願頻度順に並べたテーブルT2c、及び、文書データセットD2に固有の各トピックについて、単語を部分行列U2dが示す出現頻度順に並べたテーブルT2dを出力する出力処理を更に実行する、
ことを特徴とする請求項1に記載の文書データセット解析装置。
【請求項4】
前記プロセッサは、文書データセットD1,D2に共通の各トピック、及び、文書データセットD1に固有の各トピックについて、行列W1が示す重みの時間変化を表すグラフG1、及び、文書データセットD1,D2に共通の各トピック、及び、文書データセットD2に固有の各トピックについて、行列W2が示す重みの時間変化を表すグラフG2を出力する出力処理を更に実行する、
ことを特徴とする請求項1に記載の文書データセット解析装置。
【請求項5】
少なくとも1つのプロセッサが、時間情報を有する文書データからなる文書データセットD1から、文書データ、単語、及び時間の次元を持つ三次元非負テンソルであって、各時間に対応する各文書データにおける各単語の出現頻度を要素とする三次元非負テンソルX1を生成すると共に、時間情報を有する文書データからなる文書データセットD2から、文書データ、単語、及び時間の次元を持つ三次元非負テンソルであって、各時間に対応する各文書データにおける各単語の出現頻度を要素とする三次元非負テンソルX2を生成する生成処理と、
前記プロセッサが、三次元非負テンソルX1を、トピック及び単語の次元を持つ二次元行列であって、各トピックにおける各単語の出現頻度を要素とする二次元行列U1と、文書データ及びトピックの次元を持つ二次元行列であって、各文書データにおける各トピックの重みを要素とする二次元行列V1と、時間及びトピックの次元を持つ二次元行列であって、各時間における各トピックの重みを要素とする二次元行列W1とに因子分解すると共に、三次元非負テンソルX2を、トピック及び単語の次元を持つ二次元行列であって、各トピックにおける各単語の出現頻度を要素とする二次元行列U2と、文書データ及びトピックの次元を持つ二次元行列であって、各文書データにおける各トピックの重みを要素とする二次元行列V2と、時間及びトピックの次元を持つ二次元行列であって、各時間における各トピックの重みを要素とする二次元行列W2とに因子分解する分解処理と、を含み、
二次元行列U1は、文書データセットD1,D2に共通のトピックに対応する部分行列U1cと、文書データセットD1に固有のトピックに対応する部分行列U1dとにより構成されており、二次元行列U2は、文書データセットD1,D2とに共通のトピックに対応する部分行列U2cと、文書データセットD2に固有のトピックに対応する部分行列U2dと、により構成されている、
ことを特徴とする文書データセット解析方法。
【請求項6】
コンピュータを請求項1~4の何れか一項に記載の文書データセット解析装置として動作させるためのブログラムであって、前記コンピュータに前記各処理を実行させる、
ことを特徴とする文書データセット解析プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書データセットを解析する文書データセット解析装置、文書データセット解析方法、及び文書データセット解析プログラムに関する。
【背景技術】
【0002】
文書データからトピックを抽出し、その文書データの内容を把握する技術として、確率モデルに基づくLDA(Latent Dirichlet Allocation)法が知られている(非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】David M Blei, Andrew Y Ng, and Michael I Jordan. Latent dirichlet allocation. the Journal of machine Learning research, Vol. 3, pp. 993-1022, 2003.
【非特許文献2】Hannah Kim, Jaegul Choo, Jingu Kim, Chandan K. Reddy, and Haesun Park. Simultaneous discovery of common and discriminative topics via joint nonnegative matrix factorization. In Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD ’15, p. 567-576, New York, NY, USA, 2015. Association for Computing Machinery.
【発明の概要】
【発明が解決しようとする課題】
【0004】
2つの文書データセットの比較検討においては、2つの文書データセットに共通の特徴、一方の文書データセットに固有の特徴、及び、他方の文書データセットに固有の特徴を知ることが重要である。特に、各文書データが時間情報を有している場合、これら3つの特徴の時間変化を知ることもまた重要である。
【0005】
このような文書データセットの一例として、例えば、出願日や登録日などの時間情報を有する特許文献からなる文書データセットが挙げられる。A社の特許文献からなる文書データセットとB社の特許文献からなる文書データセットとの比較においては、これらの3つの特徴の時間変化が、両社の技術トレンドの推移を知るうえで貴重な情報となる。しかしながら、非特許文献1に記載のLDA法では、このようなニーズに応えることができない。受理日や公開日などの時間情報を有する学術論文、発行日や発刊日などの時間情報を有するニュース記事についても、同様のことが言える。
【0006】
なお、2つの文書データセットを比較する手法として、ジョイントNMF(Joint Non-negative Matrix Factorization)法が知られている(非特許文献2参照)。しかしながら、ジョイントNMF法では、文書データが有する時間情報を考慮した解析を行うことができない。したがって、ジョイントNMFでもやはり、十分に上記のニーズに応えることはできない。
【0007】
本発明の一態様は、上記の問題に鑑みてなされたものであり、その目的は、2つの文書データセットに共通の特徴、一方の文書データセットに固有の特徴、及び、他方の文書データセットに固有の特徴を、各文書データが有する時間情報を考慮して解析することが可能な文書データセット解析技術を実現することにある。
【課題を解決するための手段】
【0008】
本発明の態様1に係る文書データセット解析装置は、少なくとも1つのプロセッサを備えている。前記プロセッサは、生成処理と、分解処理とを実行する。
【0009】
ここで、生成処理は、時間情報を有する文書データからなる文書データセットD1から、文書データ、単語、及び時間の次元を持つ三次元非負テンソルであって、各時間に対応する各文書データにおける各単語の出現頻度を要素とする三次元非負テンソルX1を生成すると共に、時間情報を有する文書データからなる文書データセットD2から、文書データ、単語、及び時間の次元を持つ三次元非負テンソルであって、各時間に対応する各文書データにおける各単語の出現頻度を要素とする三次元非負テンソルX2を生成する処理である。
【0010】
また、分解処理は、三次元非負テンソルX1を、トピック及び単語の次元を持つ二次元行列であって、各トピックにおける各単語の出現頻度を要素とする二次元行列U1と、文書データ及びトピックの次元を持つ二次元行列であって、各文書データにおける各トピックの重みを要素とする二次元行列V1と、時間及びトピックの次元を持つ二次元行列であって、各時間における各トピックの重みを要素とする二次元行列W1とに因子分解すると共に、三次元非負テンソルX2を、トピック及び単語の次元を持つ二次元行列であって、各トピックにおける各単語の出現頻度を要素とする二次元行列U2と、文書データ及びトピックの次元を持つ二次元行列であって、各文書データにおける各トピックの重みを要素とする二次元行列V2と、時間及びトピックの次元を持つ二次元行列であって、各時間における各トピックの重みを要素とする二次元行列W2とに因子分解する処理である。
【0011】
ここで、二次元行列U1は、文書データセットD1,D2に共通のトピックに対応する部分行列U1cと、文書データセットD1に固有のトピックに対応する部分行列U1dとにより構成されており、二次元行列U2は、文書データセットD1,D2とに共通のトピックに対応する部分行列U2cと、文書データセットD2に固有のトピックに対応する部分行列U2dと、により構成されている。
【0012】
上記の構成によれば、文書データセットD1,D2に共通の特徴、文書データセットD1に固有の特徴、及び、文書データセットD2に固有の特徴を、各文書データが有する時間情報を考慮して解析することができる。具体的には、文書データセットD1,D2に共通の各トピック、及び、文書データセットD1に固有の各トピックについて、文書データセットD1における各単語の出現頻度を示す行列U1を得ることができる。同様に、文書データセットD1,D2に共通の各トピック、及び、文書データセットD2に固有の各トピックについて、文書データセットD2における各単語の出現頻度を示す行列U2を得ることができる。また、文書データセットD1,D2に共通の各トピック、及び、文書データセットD1に固有の各トピックについて、文書データセットD1における文書データ毎の重みを示す行列V1を得ることができる。同様に、文書データセットD1,D2に共通の各トピック、及び、文書データセットD2に固有の各トピックについて、文書データセットD2における文書データ毎の重みを示す行列V2を得ることができる。また、文書データセットD1,D2に共通の各トピック、及び、文書データセットD1に固有の各トピックについて、文書データセットD1における時間毎の重みを示す行列W1を得ることができる。同様に、文書データセットD1,D2に共通の各トピック、及び、文書データセットD2に固有の各トピックについて、文書データセットD2における時間毎の重みを示す行列W2を得ることができる。
【0013】
本発明の態様2に係る文書データセット解析装置においては、本発明の態様1に係る文書データセット解析装置の構成に加えて、以下の構成が採用されている。すなわち、前記分解処理において、前記プロセッサは、部分行列U1cと部分行列U2cとが類似するほど値が大きくなり、部分行列U1dと部分行列U2dとが類似するほど値が小さくなる損失関数を最小化するように、二次元行列U1,U2,V1,V2,W1,W2の要素の値を決定する、という構成が採用されている。
【0014】
上記の構成によれば、二次元行列U1,U2,V1,V2,W1,W2の要素の値を、効率的に決定することができる。
【0015】
本発明の態様3に係る文書データセット解析装置においては、本発明の態様1~2の何れかに係る文書データセット解析装置の構成に加えて、以下の構成が採用されている。すなわち、前記プロセッサは、文書データセットD1,D2に共通の各トピックについて、単語を部分行列U1cが示す出現頻度順に並べたテーブルT1c、文書データセットD1に固有の各トピックについて、単語を部分行列U1dが示す出現頻度順に並べたテーブルT1d、文書データセットD1,D2に共通の各トピックについて、単語を部分行列U2cが示す出願頻度順に並べたテーブルT2c、及び、文書データセットD2に固有の各トピックについて、単語を部分行列U2dが示す出現頻度順に並べたテーブルT2dを出力する出力処理を更に実行する、という構成が採用されている。
【0016】
上記の構成によれば、文書データセットD1,D2に共通の各トピック、及び、文書データセットD1に固有の各トピックについて、文書データセットD1における各単語の出現頻度をユーザに知得させることができる。同様に、文書データセットD1,D2に共通の各トピック、及び、文書データセットD2に固有の各トピックについて、文書データセットD2における各単語の出現頻度をユーザに知得させることができる。
【0017】
本発明の態様4に係る文書データセット解析装置においては、本発明の態様1~3の何れかに係る文書データセット解析装置の構成に加えて、以下の構成が採用されている。すなわち、前記プロセッサは、文書データセットD1,D2に共通の各トピック、及び、文書データセットD1に固有の各トピックについて、行列W1が示す重みの時間変化を表すグラフG1、及び、文書データセットD1,D2に共通の各トピック、及び、文書データセットD2に固有の各トピックについて、行列W2が示す重みの時間変化を表すグラフG2を出力する出力処理を更に実行する、という構成が採用されている。
【0018】
上記の構成によれば、文書データセットD1,D2に共通の各トピック、及び、文書データセットD1に固有の各トピックについて、文書データセットD1における重みの時間変化をユーザに知得させることができる。同様に、文書データセットD1,D2に共通の各トピック、及び、文書データセットD2に固有の各トピックについて、文書データセットD2における重みの時間変化をユーザに知得させることができる。
【0019】
本発明の態様5に係る文書データセット解析方法においては、少なくとも1つのプロセッサが実行する生成処理と、前記プロセッサが実行する分解処理と、を含んでいる。
【0020】
ここで、生成処理は、時間情報を有する文書データからなる文書データセットD1から、文書データ、単語、及び時間の次元を持つ三次元非負テンソルであって、各時間に対応する各文書データにおける各単語の出現頻度を要素とする三次元非負テンソルX1を生成すると共に、時間情報を有する文書データからなる文書データセットD2から、文書データ、単語、及び時間の次元を持つ三次元非負テンソルであって、各時間に対応する各文書データにおける各単語の出現頻度を要素とする三次元非負テンソルX2を生成する処理である。
【0021】
また、分解処理は、三次元非負テンソルX1を、トピック及び単語の次元を持つ二次元行列であって、各トピックにおける各単語の出現頻度を要素とする二次元行列U1と、文書データ及びトピックの次元を持つ二次元行列であって、各文書データにおける各トピックの重みを要素とする二次元行列V1と、時間及びトピックの次元を持つ二次元行列であって、各時間における各トピックの重みを要素とする二次元行列W1とに因子分解すると共に、三次元非負テンソルX2を、トピック及び単語の次元を持つ二次元行列であって、各トピックにおける各単語の出現頻度を要素とする二次元行列U2と、文書データ及びトピックの次元を持つ二次元行列であって、各文書データにおける各トピックの重みを要素とする二次元行列V2と、時間及びトピックの次元を持つ二次元行列であって、各時間における各トピックの重みを要素とする二次元行列W2とに因子分解する処理である。
【0022】
ここで、二次元行列U1は、文書データセットD1,D2に共通のトピックに対応する部分行列U1cと、文書データセットD1に固有のトピックに対応する部分行列U1dとにより構成されており、二次元行列U2は、文書データセットD1,D2とに共通のトピックに対応する部分行列U2cと、文書データセットD2に固有のトピックに対応する部分行列U2dと、により構成されている。
【0023】
上記の構成によれば、本発明の態様1に係る文書データセット解析装置と同様、文書データセットD1,D2に共通の特徴、文書データセットD1に固有の特徴、及び、文書データセットD2に固有の特徴を、各文書データが有する時間情報を考慮して解析することができるという効果を奏する。
【0024】
本発明の態様6に係る文書データセット解析プログラムは、コンピュータを態様1~4の何れかに係る文書データセット解析装置として動作させるためのプログラムであり、前記コンピュータに前記各処理(生成処理、分解処理、出力処理)を実行させる。
【0025】
上記の構成によれば、本発明の態様1に係る文書データセット解析装置と同様、文書データセットD1,D2に共通の特徴、文書データセットD1に固有の特徴、及び、文書データセットD2に固有の特徴を、各文書データが有する時間情報を考慮して解析することができるという効果を奏する。
【発明の効果】
【0026】
本発明の一態様によれば、2つの文書データセットに共通の特徴、一方の文書データセットに固有の特徴、及び、他方の文書データセットに固有の特徴を、各文書データが有する時間情報を考慮して解析することができる。
【図面の簡単な説明】
【0027】
【
図1】本発明の一実施形態に係る文書データセット解析装置の構成を示すブロック図である。
【
図2】本発明の一実施形態に係る文書データセット解析方法の流れを示すフロー図である。
【
図3】
図2に示す文書データセット解析方法により生成される各種データの構造を模式的に示す図である。
【
図4】本発明の一実施例を示す図である。(a)は、両社に共通のトピック1~9の各々について、部分行列U1cが示す出現頻度順に上位10個の単語を並べたテーブルを示す。(b)は、A社に固有のトピック10~18について、部分行列U1dが示す出現頻度順に上位10個の単語を並べたテーブルを示す。
【
図5】本発明の一実施例を示す図である。(a)は、両社に共通のトピック1~9の各々について、部分行列U2cが示す出現頻度順に上位10個の単語を並べたテーブルを示す。(b)は、B社に固有のトピック10~18について、部分行列U2dが示す出現頻度順に上位10個の単語を並べたテーブルを示す。
【
図6】本発明の一実施例を示す図である。(a)は、両社に共通のトピック1~9、及び、A社に固有のトピック10~18について、行列W1が示す重みの時間変化を示す積み上げ折れ線グラフを示す。(b)は、両社に共通のトピック1~9、及び、B社に固有のトピック10~18について、行列W1が示す重みの時間変化を示す積み上げ折れ線グラフを示す。
【発明を実施するための形態】
【0028】
(文書データセット解析装置の構成)
本発明の一実施形態に係る文書データセット解析装置1の構成について、
図1を参照して説明する。
図1は、文書データセット解析装置1の構成を示すブロック図である。
【0029】
文書データセット解析装置1は、汎用的なコンピュータを用いて実現されており、
図1に示すように、プロセッサ11と、一次メモリ12と、二次メモリ13と、入出力インタフェース14と、バス15と、を備えている。プロセッサ11、一次メモリ12、二次メモリ13、及び入出力インタフェース14は、バス15を介して相互に接続されている。
【0030】
二次メモリ13には、文書データセット解析プログラムP1と、文書データセットD1,D2と、が格納されている。文書データセット解析プログラムP1は、後述する文書データセット解析方法S1をコンピュータに実行させるためのプログラムである。文書データセットD1,D2は、それぞれ、時間情報を有する複数の文書データの集合である。文書データが有する時間情報は、その文書データに対応する時間を表す情報であればよく、例えば、その文書データが作成された時間を表す情報であってもよいし、その文書データが公開された時間を表す時間情報であってもよい。また、時間情報の精度は、任意であり、年精度であってもよいし、月精度であってもよいし、日精度であってもよいし、それ以上の精度(時精度、分精度、秒精度など)であってもよい。
【0031】
プロセッサ11は、二次メモリ13に格納されている文書データセット解析プログラムP1を一次メモリ12上に展開する。そして、プロセッサ11は、一次メモリ12上に展開された文書データセット解析プログラムP1に含まれる命令に従って、後述する文書データセット解析方法S1に含まれる各ステップを実行する。この際、プロセッサ11は、二次メモリ13に格納された文書データセットD1,D2を参照する。
【0032】
プロセッサ11として利用可能なデバイスとしては、例えば、CPU(Central Processing Unit)やGPU(Graphical Processing Unit)などを挙げることができる。また、一次メモリ12として利用可能なデバイスとしては、例えば、半導体RAM(Random Access Memory)を挙げることができる。また、二次メモリ13として利用可能なデバイスとしては、例えば、HDD(Hard Disk Drive)を挙げることができる。
【0033】
入出力インタフェース14には、入力デバイス及び/又は出力デバイスが接続される。入出力インタフェース14に接続される入力デバイスとしては、例えば、キーボードが挙げられる。また、入出力インタフェース14に接続される出力デバイスとしては、例えば、ディスプレイが挙げられる。ディスプレイは、後述する文書データセット解析方法S1を実行することにより得られる各種画面を出力するために利用される。
【0034】
入出力インタフェース14として利用可能なインタフェースとしては、例えば、PCI(Peripheral Component Interconnect)インタフェースやUSB(Universal Serial Bus)インタフェースなどを挙げることができる。
【0035】
なお、文書データセット解析プログラムP1は、コンピュータ読み取り可能な記録媒体、例えば、一時的でない有形の記録媒体に記録され得る。このような記録媒体としては、上述した二次メモリ13の他に、テープ、ディスク、カード、半導体メモリ、プログラマブル論理回路などが挙げられる。
【0036】
(文書データセット解析方法の流れ)
本発明の一実施形態に係る文書データセット解析方法S1の流れについて、
図2及び
図3を参照して説明する。
図2は、文書データセット解析方法S1の流れを示すフロー図である。
図3は、文書データセット解析方法S1により生成される各種データの構造を示す模式図である。
【0037】
以下の説明においては、対象とするR個の単語のうち、r番目の単語を「単語r」と記載する。また、文書データセットD1に含まれるS1個の文書データのうち、s番目の文書データを「文書データs∈D1」と記載する。また、文書データセットD2に含まれるS2個の文書データのうち、s番目の文書データを「文書データs∈D2」と記載する。また、対象とするT個の時間のうち、t番目の時間を「時間t」と記載する。
【0038】
文書データセット解析方法S1は、
図2に示すように、生成処理S11と、分解処理S12と、第1出力処理S13と、第2出力処理S14と、を含んでいる。生成処理S11、分解処理S12、第1出力処理S13、及び第2出力処理S14は、それぞれ、一次メモリ12上に展開された文書データセット解析プログラムP1に含まれる命令に従って、プロセッサ11が実行する。
【0039】
生成処理S11は、文書データセットD1から三次元非負テンソルX1を生成すると共に、文書データセットD2から三次元非負テンソルX2を生成する処理である。ここで、三次元非負テンソルX1は、単語、文書データ、及び時間の次元を持つ三次元非負テンソルである。三次元非負テンソルX1の要素X1(r,s,t)は、時間tに対応する文書データs∈D1における単語rの出現頻度(例えば、tf-idf値)により与えられる。なお、時間tに対応する文書データsが文書データセットD1に存在しない場合、要素X1(r,s,t)は0とする。また、三次元非負テンソルX2の要素X2(r,s,t)は、時間tに対応する文書データs∈D2における単語rの出現頻度(例えば、tf-idf値)により与えられる。なお、時間tに対応する文書データsが文書データセットD2に存在しない場合、要素X2(r,s,t)は0とする。
【0040】
分解処理S12は、三次元非負テンソルX1を2次元行列U1、V1、W1に因子分解すると共に、三次元非負テンソルX2を2次元行列U2、V2、W2に因子分解する処理である。ここで、二次元行列U1及び二次元行列U2は、それぞれ、トピック及び単語の次元を持つR行K列の二次元行列である。二次元行列U1の要素U1(r,k)及び二次元行列U2の要素U2(r,k)は、それぞれ、トピックkにおける単語rの出現頻度を表す。また、二次元行列V1は、文書データ及びトピックの次元を持つK行S1列の二次元行列である。二次元行列V1の要素V1(s,k)は、文書データs∈D1におけるトピックkの重みを表す。また、二次元行列V2は、文書データ及びトピックの次元を持つK行S2列の二次元行列である。二次元行列V2の要素V(s,k)は、文書データs∈D2におけるトピックkの重みを表す。また、二次元行列W1及び二次元行列W2は、それぞれ、時間及びトピックの次元を持つK行T列の二次元行列である。二次元行列W1の要素W1(t,k)及び二次元行列W2の要素W2(t,k)は、それぞれ、時間tにおけるトピックkの重みを表す。
【0041】
二次元行列U1は、文書データセットD1と文書データセットD2とに共通のKc個のトピックに対応するR行Kc列の部分行列U1cと、文書データセットD1に固有のKd(=K-Kc)個のトピックに対応するR行Kd列の部分行列U1dと、により構成されている。また、二次元行列U2は、文書データセットD1と文書データセットD2とに共通のKc個のトピックに対応するR行Kc列部分行列U2cと、文書データセットD2に固有のKd個のトピックに対応するR行Kd列の部分行列U2dと、により構成されている。以下、文書データセットD1と文書データセットD2とに共通のKc個のトピックのことを、「共通トピック」とも記載する。また、文書データセットD1に固有のKd個のトピックのことを、「文書データセットD1の固有トピック」とも記載し、文書データセットD2に固有のKd個のトピックのことを、「文書データセットD2の固有トピック」とも記載する。
【0042】
分解処理S12において、プロセッサ11は、部分行列U1cと部分行列U2cとが類似するほど値が小さくなり、部分行列U1dと部分行列U2dとが類似するほど値が大きくなる損失関数Lを最小化するように、二次元行列U1,U2,V1,V2,W1,W2の要素の値を決める。このような損失関数Lは、例えば、以下の式により与えられる。
【数1】
【0043】
ここで、||・||
2は、ユークリッドノルムを表し、||・||
Fは、フロベニウスノルムを表し、||・||
1は、マンハッタン距離を表す。また、αは、部分行列U1cと部分行列U2cとの類似性の影響度を調節するためのハイパーパラメータであり、βは、部分行列U1dと部分行列U2dとの類似性の影響度を調節するためのハイパーパラメータである。また、損失関数Lを最小化する二次元行列U1,U2,V1,V2,W1,W2の要素の値は、以下の正規化条件を満たすように決められる。
【数2】
【0044】
第1出力処理S13は、部分行列U1c,U1d,U2c,U2dのそれぞれに対応するテーブルT1c,T1d,T2c,T2dをディスプレイ等に出力する処理である。ここで、テーブルT1cは、文書データセットD1,D2の各共通トピックについて、単語を部分行列U1cが示す出現頻度順に並べたテーブルである。テーブルT1dは、文書データセットD1の各固有トピックについて、単語を部分行列U1dが示す出現頻度順に並べたテーブルである。テーブルT2cは、文書データセットD1,D2の各共通トピックについて、単語を部分行列U2cが示す出現頻度順に並べたテーブルである。テーブルT2dは、文書データセットD1の各固有トピックについて、単語を部分行列U2dが示す出現頻度順に並べたテーブルである。ディスプレイ等に出力されるテーブルT1c,T1d,T2c,T2dの具体例については、実施例において説明する。
【0045】
第2出力処理S14は、行列W1,W2のそれぞれに対応するグラフG1,G2をディスプレイ等に出力する処理である。ここで、グラフG1は、文書データセットD1,D2の各共通トピック、及び、文書データセットD1の各固有トピックについて、行列W1が示す重みの時間変化を示すグラフである。グラフG2は、文書データセットD1,D2の各共通トピック、及び、文書データセットD2の各固有トピックについて、行列W2が示す重みの時間変化を示すグラフである。ディスプレイ等に出力されるグラフG1,G2の具体例については、実施例において説明する。
【0046】
なお、文書データセット解析方法S1は、行列V1,V2のそれぞれに対応するグラフH1,H2をディスプレイ等に出力する第3出力処理を更に含んでいてもよい。ここで、グラフH1は、文書データセットD1,D2の各共通トピック、及び、文書データセットD1の各固有トピックについて、行列W1が示す重みの分布(文書データセットD1上の分布)を示すグラフである。グラフH2は、文書データセットD1,D2の各共通トピック、及び、文書データセットD2の各固有トピックについて、行列W2が示す重みの分布(文書データセットD2上の分布)を示すグラフである。
【0047】
(実施例)
発明者らは、2001年から2021年に出願されたA社の1650件の特許文献からなる文書データセットD1、及び、2001年から2021年に出願されたB社の1277件の特許文献からなる文書データセットD2に対して、上述した文書データセット解析方法S1を実行した。ここで、対象とする単語は、2つ以上の名詞が連結した複合語であって、文書全体における頻度が5以上1000以下の複合語とした。また、対象とする時間は、出願年とした。対象とする時間の個数Tは、T=21であった。また、共通トピックの個数Kc及び固有トピックの個数Kdは、Kc=Kd=10とした。また、損失関数Lに含まれるハイパーパラメータα及びβは、α=β=1とした。
【0048】
文書データセット解析方法S1を実行することによって、ディスプレイに出力されたテーブルT1c,T1d,T2c,T2dを
図4及び
図5に示す。
【0049】
図4の(a)は、両社に共通のトピック1~9の各々について、部分行列U1cが示す出現頻度順に上位10個の単語を並べたテーブルT1cを示し、
図4の(b)は、A社に固有のトピック10~18について、部分行列U1dが示す出現頻度順に上位10個の単語を並べたテーブルT1dを示す。これらのテーブルを参照することによって、ユーザは、A社の技術動向のトレンドを示すキーワードを、B社と共通なトピックとA社に固有のトピックとに分けて、それぞれ把握することができる。
【0050】
図5の(c)は、両社に共通のトピック1~9の各々について、部分行列U2cが示す出現頻度順に上位10個の単語を並べたテーブルT2cを示し、
図5の(b)は、B社に固有のトピック10~18について、部分行列U2dが示す出現頻度順に上位10個の単語を並べたテーブルT2dを示す。これらのテーブルを参照することによって、ユーザは、B社の技術動向のトレンドを示すキーワードを、A社と共通なトピックとB社に固有のトピックとに分けて、それぞれ把握することができる。
【0051】
文書データセット解析方法S1を実行することによって、ディスプレイに出力されたグラフG1,G2を
図6に示す。
【0052】
図6の(a)は、両社に共通のトピック1~9、及び、A社に固有のトピック10~18について、行列W1が示す重みの時間変化を示す積み上げ折れ線グラフを示す。このグラフを参照することによって、ユーザは、それぞれのトピックの重要性がA社において時間と共にどのように変化していくのかを、つぶさに把握することができる。
【0053】
図6の(b)は、両社に共通のトピック1~9、及び、B社に固有のトピック10~18について、行列W2が示す重みの時間変化を示す積み上げ折れ線グラフを示す。このグラフを参照することによって、ユーザは、それぞれのトピックの重要性がB社において時間と共にどのように変化していくのかを、つぶさに把握することができる。
【0054】
(付記事項)
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、上述した実施形態に開示された各技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【0055】
1 文書データセット解析装置
11 プロセッサ
12 1次メモリ
13 2次メモリ
14 入出力インタフェース
15 バス
S1 文書データセット解析方法
S11 生成処理
S12 分解処理
S13 第1出力処理
S14 第2出力処理