(57)【要約】【課題】情報の不正確性を考慮して、質問に対する回答を検索することができる。【解決手段】時系列に記録された、日時を示す日時情報付きのテキストからなるテキスト群であって、予め時系列の一部で区切られたテキスト群の部分群であるセグメントごとに分割されたテキスト群に基づいて、セグメントごとに、テキストに含まれる、入力された質問に対する部分文字列である回答箇所を検索する。回答箇所が検索されたセグメントについて、検索された回答箇所に対する他の回答候補をテキストの各々から抽出し、回答候補の各々を推定する。回答箇所が検索されたセグメントについて推定された回答候補の各々から、日時情報に応じて質問に対する回答を同定する。【選択図】図１
2020003889.tif 000002
【特許請求の範囲】
【請求項１】
時系列に記録された、日時を示す日時情報付きのテキストからなるテキスト群であって、予め時系列の一部で区切られたテキスト群の部分群であるセグメントごとに分割されたテキスト群に基づいて、前記セグメントごとに、前記テキストに含まれる、入力された質問に対する部分文字列である回答箇所を検索するテキスト検索部と、
前記回答箇所が検索された前記セグメントについて、検索された前記回答箇所に対する他の回答候補を前記テキストの各々から抽出し、回答候補の各々を推定する回答候補推定部と、
前記回答箇所が検索された前記セグメントについて推定された回答候補の各々から、前記日時情報に応じて前記質問に対する回答を同定する回答同定部と、
を含む情報検索装置。
【請求項２】
前記回答同定部は、前記回答候補の各々のうち、前記日時情報が最新の前記テキストから抽出された前記回答候補を前記質問に対する回答として同定する請求項１に記載の情報検索装置。
【請求項３】
前記テキスト検索部は、前記セグメントごとに、前記回答箇所としての尤もらしさを表すスコアを算出して前記回答箇所を検索し、
前記回答候補推定部は、前記スコアが上位の前記回答箇所が検索された前記セグメントの各々について、検索された前記回答箇所に対する他の回答候補を前記テキストの各々から抽出し、回答候補の各々を推定し、
前記回答同定部は、前記スコアが上位の前記回答箇所が検索された前記セグメントの各々について推定された回答候補の各々から、前記日時情報に応じて前記質問に対する回答を同定する請求項１又は請求項２に記載の情報検索装置。
【請求項４】
時系列に記録された前記日時情報付きのテキストからなるテキスト群を入力とし、テキストの話題に応じて、前記テキスト群をセグメントに分割するテキストセグメンテーション部を更に含み、
前記テキスト検索部は、前記テキストセグメンテーション部による分割結果に基づいて、前記セグメントごとに、前記テキストに含まれる、入力された質問に対する部分文字列である回答箇所を検索する請求項１〜請求項３の何れか１項に記載の情報検索装置。
【請求項５】
テキスト検索部が、時系列に記録された、日時を示す日時情報付きのテキストからなるテキスト群であって、予め時系列の一部で区切られたテキスト群の部分群であるセグメントごとに分割されたテキスト群に基づいて、前記セグメントごとに、前記テキストに含まれる、入力された質問に対する部分文字列である回答箇所を検索するステップと、
回答候補推定部が、前記回答箇所が検索された前記セグメントについて、検索された前記回答箇所に対する他の回答候補を前記テキストの各々から抽出し、回答候補の各々を推定するステップと、
回答同定部が、前記回答箇所が検索された前記セグメントについて推定された回答候補の各々から、前記日時情報に応じて前記質問に対する回答を同定するステップと、
を含む情報検索方法。
【請求項６】
コンピュータを、請求項１〜請求項４のいずれか１項に記載の情報検索装置の各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報検索装置、方法、及びプログラムに係り、特に、時系列に記録されたテキスト群から情報を検索するための情報検索装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
近年のＡＩ（Artificial Intelligence）技術の隆盛に伴い、ＡＩ技術を使ったオフィス内の業務の効率化が注目されている。ＡＩ技術を用いて社内に蓄積されたノウハウやマニュアルといった知識源へのアクセスビリティを向上させることで、社内問い合わせを効率化し、自動化したり、過去のノウハウが埋没してしまうのを防ぐ事が期待されている。
【０００３】
一方で、Ｒｅｄｍｉｎｅに代表されるタスク管理ツールの利用が近年盛んである。タスク管理ツールはチーム内で連携して業務を進めるにあたり、タスクを「チケット」と呼ばれるページ単位で管理する。通常、１タスクを１チケットとして管理する。チケット内において、タスクの進捗状況や課題、その解決方法等がチケット参加者によって記載される。最終的に、タスクが修了するとチケットは役目を終え「クローズ」される。開発のようなチーム業務を行うような場合は、タスク管理ツールを利用することで、タスクの漏れを無くしたり、課題をチーム内に素早く共有したりすることが可能となる。これらチケットの集まりは、ナレッジベースとしてみなすこともでき、実際にタスク管理ツールに対して過去のチケットや課題解決までの経過等を検索したいというニーズが高まっている。
【０００４】
チケット内での情報のやり取りは一種の対話データとみなすことが可能である。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Seo, M.; Kembhavi, A.; Farhadi, A.; and Hajishirzi, H. 2017. Bidirectional attention flow for machine comprehension. In ICLR.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
もっとも、マニュアルやＦＡＱのような「間違いのない情報」からなるテキストとは異なり、Ｒｅｄｍｉｎｅのようなタスク管理ツールに記載される情報には誤りも多く含まれる。そのような不正確性を伴うテキストに対して従来技術を適用して回答を抽出しようとしても、誤った情報を返してしまうリスクがある。このため、不正確性を考慮した新しい検索アルゴリズムを考える必要がある。
【０００７】
チケットにおける情報は、これまでの記載内容に新たに追加する形式で更新されていく。そのような場合において、検索の手掛かりとなるワードと回答となるワードとが、テキストとして離れて存在してしまうケースが多く存在する。その場合、質問文に対して正しく回答箇所を抽出することが難しくなってしまう、という問題があった。
【０００８】
本発明は、上記問題点を解決するために成されたものであり、情報の不正確性を考慮して、質問に対する回答を検索することができる情報検索装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、第１の発明に係る情報検索装置は、時系列に記録された、日時を示す日時情報付きのテキストからなるテキスト群であって、予め時系列の一部で区切られたテキスト群の部分群であるセグメントごとに分割されたテキスト群に基づいて、前記セグメントごとに、前記テキストに含まれる、入力された質問に対する部分文字列である回答箇所を検索するテキスト検索部と、前記回答箇所が検索された前記セグメントについて、検索された前記回答箇所に対する他の回答候補を前記テキストの各々から抽出し、回答候補の各々を推定する回答候補推定部と、前記回答箇所が検索された前記セグメントについて推定された回答候補の各々から、前記日時情報に応じて前記質問に対する回答を同定する回答同定部と、を含んで構成されている。
【００１０】
また、第１の発明に係る情報検索装置において、前記回答同定部は、前記回答候補の各々のうち、前記日時情報が最新の前記テキストから抽出された前記回答候補を前記質問に対する回答として同定するようにしてもよい。
【００１１】
また、第１の発明に係る情報検索装置において、前記テキスト検索部は、前記セグメントごとに、前記回答箇所としての尤もらしさを表すスコアを算出して前記回答箇所を検索し、前記回答候補推定部は、前記スコアが上位の前記回答箇所が検索された前記セグメントの各々について、検索された前記回答箇所に対する他の回答候補を前記テキストの各々から抽出し、回答候補の各々を推定し、前記回答同定部は、前記スコアが上位の前記回答箇所が検索された前記セグメントの各々について推定された回答候補の各々から、前記日時情報に応じて前記質問に対する回答を同定するようにしてもよい。
【００１２】
また、第１の発明に係る情報検索装置において、時系列に記録された前記日時情報付きのテキストからなるテキスト群を入力とし、テキストの話題に応じて、前記テキスト群をセグメントに分割するテキストセグメンテーション部を更に含み、前記テキスト検索部は、前記テキストセグメンテーション部による分割結果に基づいて、前記セグメントごとに、前記テキストに含まれる、入力された質問に対する部分文字列である回答箇所を検索するようにしてもよい。
【００１３】
第２の発明に係る情報検索方法は、テキスト検索部が、時系列に記録された、日時を示す日時情報付きのテキストからなるテキスト群であって、予め時系列の一部で区切られたテキスト群の部分群であるセグメントごとに分割されたテキスト群に基づいて、前記セグメントごとに、前記テキストに含まれる、入力された質問に対する部分文字列である回答箇所を検索するステップと、回答候補推定部が、前記回答箇所が検索された前記セグメントについて、検索された前記回答箇所に対する他の回答候補を前記テキストの各々から抽出し、回答候補の各々を推定するステップと、回答同定部が、前記回答箇所が検索された前記セグメントについて推定された回答候補の各々から、前記日時情報に応じて前記質問に対する回答を同定するステップと、を含んで実行することを特徴とする。
【００１４】
第３の発明に係るプログラムは、コンピュータを、第１の発明に記載の情報検索装置の各部として機能させるためのプログラムである。
【発明の効果】
【００１５】
本発明の情報検索装置、方法、及びプログラムによれば、時系列に記録された、日時を示す日時情報付きのテキストからなるテキスト群であって、予め時系列の一部で区切られたテキスト群の部分群であるセグメントごとに分割されたテキスト群に基づいて、セグメントごとに、テキストに含まれる、入力された質問に対する部分文字列である回答箇所を検索し、回答箇所が検索されたセグメントについて、検索された回答箇所に対する他の回答候補をテキストの各々から抽出し、回答候補の各々を推定し、回答箇所が検索されたセグメントについて推定された回答候補の各々から、日時情報に応じて質問に対する回答を同定することにより、情報の不正確性を考慮して、質問に対する回答を検索することができる、という効果が得られる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態に係る情報検索装置の構成を示すブロック図である。
【図２】チケットの単位で記載されたテキスト群の一例を示す図である。
【図３】テキスト群をセグメントに分割した一例を示す図である。
【図４】セグメントで、質問に対する回答箇所を抜き出した一例を示す図である。
【図５】セグメントで、回答候補の各々を推定した一例を示す図である。
【図６】セグメントで、回答候補の各々から、回答を同定した一例を示す図である。
【図７】本発明の実施の形態に係る情報検索装置における情報検索処理ルーチンを示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００１８】
本実施の形態の手法は、タスク管理ツールに特有の情報更新の流れに着目したものである。例えば、最初にある事項に関して誤った情報が記載されたような場合を想定する。この場合、次に、誤った情報に対し、誤った情報を正すような記載が追記され、それらのやり取りが複数続いた後に最終的な回答が導きだされる、という情報更新の流れに着目する。情報更新の流れに着目することで、誤りを含んだ情報が分断されて記述されているテキストに対しても、情報の不正確性を考慮した検索を可能にし、正しい情報への検索が可能になる。
【００１９】
＜本発明の実施の形態に係る情報検索装置の構成＞
【００２０】
次に、本発明の実施の形態に係る情報検索装置の構成について説明する。図１に示すように、本発明の実施の形態に係る情報検索装置１００は、ＣＰＵと、ＲＡＭと、後述する情報検索処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。この情報検索装置１００は、機能的には図１に示すように入力部１０と、演算部２０と、出力部５０とを備えている。
【００２１】
入力部１０は、タスク管理ツールのチケットの単位で記載されたテキスト群を受け付ける。テキスト群は時系列に記録されたテキストからなり、各テキストには記録された日時を示す日時情報が付与されている。図２にテキスト群の一例を示す。また、入力部１０は、質問の検索リクエストを受け付ける。検索リクエストは、検索対象のチケットの指定がされているものとする。
【００２２】
演算部２０は、検索テキスト格納部２２と、テキストセグメンテーション部２４と、セグメント済み検索テキスト格納部２６と、テキスト検索部３０と、回答候補推定部３２と、回答同定部３４とを含んで構成されている。
【００２３】
検索テキスト格納部２２には、入力部１０で受け付けた、検索対象とするテキスト群が格納される。テキスト群は、テキストが記録された日時の情報とのペアで格納される。なお、複数のテキスト群を格納するようにしても良い。
【００２４】
テキストセグメンテーション部２４は、検索テキスト格納部２２の時系列に記録された日時情報付きのテキストからなるテキスト群を入力とし、テキストの話題に応じて、テキスト群をセグメントに分割する。セグメントは、事前に決められた時系列の一部で区切られたテキスト群の部分群を単位とする。また、本実施の形態では、分割の区切りはテキスト群の内容の話題で区切られるものとする。分割する単位の区切りは、文でも良いし、段落単位でも良い。Ｒｅｄｍｉｎｅのように、ｎｏｔｅと呼ばれる情報更新の単位で分割しても良い。分割手法は、例えば非特許文献２の技術を用いれば良い。
【００２５】
［非特許文献２］別所克人, "単語の概念ベクトルを用いたテキストセグメンテーション", 情報処理学会論文誌, Nov. 2001.
【００２６】
セグメント済み検索テキスト格納部２６には、テキストセグメンテーション部２４で、セグメントごとに分割されたテキスト群が格納される。図３にセグメントごとに分割されたテキスト群の一例を示す。図３の例では、テキスト群を、セグメント１、及びセグメント２に分割している。なお、複数のテキスト群を格納するようにし、入力部１０でチケットの指定を受け付けるようにし、チケットに対応するテキスト群を取り出して検索が行われる。
【００２７】
テキスト検索部３０は、セグメント済み検索テキスト格納部２６のセグメントごとに分割されたテキスト群に基づいて、セグメントごとに、テキストに含まれる、入力された質問に対する部分文字列である回答箇所を検索する。ここでは、セグメントごとに、部分文字列について回答箇所としての尤もらしさを表すスコアを算出して、スコアが高い部分文字列を回答箇所として検索する。検索手法は例えば、非特許文献３の技術を用いれば良い。
【００２８】
［非特許文献３］西田京介, 斉藤いつみ, 大塚淳史, 浅野久子, 富田準二, "情報検索とのマルチタスク学習による大規模機械読解", 言語処理学会第24回年次大会論文集 (NLP2018), 2018.
【００２９】
図４に示すように、質問に対する回答箇所を部分文字列の単位で「来週火曜日14:00」と抜き出す。
【００３０】
以下、回答候補推定部３２、及び回答同定部３４の処理は、回答箇所が検索されたセグメントであって、スコアが上位の回答箇所が検索されたＮ個のセグメントについて行う。Ｎの個数については、Ｎ−ｂｅｓｔ解の設定値を予め定めておくものとし、テキスト検索部３０のセグメントごとのテキスト群の検索結果に応じて設定する。回答箇所が検索されたセグメントの数が設定値以上であれば設定値をＮの値とし、設定値未満であれば回答箇所が検索されたセグメントの数をＮの値とする。また、設定値が１である場合には、以下の回答候補推定部３２、及び回答同定部３４の処理は、スコアが最も高い検索箇所が検索された一つのセグメントについて行うようにすれば良い。なお、Ｎを設定せずに全ての回答箇所が検索されたセグメントについて処理を行うようにしてもよい。
【００３１】
以下の説明では、Ｎが２以上となる場合を想定して説明する。
【００３２】
回答候補推定部３２は、Ｎ個のセグメントの各々について、当該セグメントから検索された回答箇所に対する他の回答候補を、当該セグメントのテキストの各々から抽出し、回答候補の各々を推定する。テキスト検索部の回答箇所の出力として、例えば「日付」が抽出された場合は、同一セグメント内の他の「日付」を回答候補として抽出する。「日付」であることの同定は、固有表現抽出技術を用いればよく、例えば特許文献１の技術を用いる。
【００３３】
［特許文献１］特開２０１３−２４６７９５号公報
【００３４】
図５に示すように、セグメント２について、「日付」に対応する「水曜日10:00」や「来週水曜10時」が抽出され、「来週火曜日14:00」、「水曜日10:00」、及び「来週水曜10時」を回答候補として推定する。
【００３５】
回答同定部３４は、Ｎ個のセグメントの各々について、当該セグメントで推定された回答候補の各々から、日時情報に応じて質問に対する回答を同定する。例えば、当該セグメントの回答候補の各々のうち、日時情報が最新のテキストから抽出された回答候補を質問に対する回答として同定する。図６の例では、一つのセグメントに着目すると、「来週水曜日10時」を最新の回答であると同定し、「打合せは「来週水曜日10時」です」という回答を出力する。
【００３６】
また、同一時刻のテキストに異なる複数の回答候補がある場合には、複数の回答候補をまとめた回答を出力する。例えば「それでは来週水曜１０時から、又は来週木曜１１時からお願い致します。」というテキストであれば、「打合せは「来週水曜日10時」又は「来週木曜１１時」です」などを回答の出力とする。
【００３７】
Ｎが２以上である場合には、例えば、スコアが最も高い回答箇所が検索されたセグメントについて同定された最新の回答を第一候補とし、次にスコアが高い別セグメントの回答を第二候補、第三候補として、それぞれのセグメントで回答を同定する。
【００３８】
出力部５０は、同定された回答同定部３４でセグメントごとに同定された回答をまとめた最終的な回答を出力する。例えば、Ｎが複数であり、複数のセグメントの各々から回答が得られた場合には、第一候補から順にＮ個の回答を出力する。
【００３９】
＜本発明の実施の形態に係る情報検索装置の作用＞
【００４０】
次に、本発明の実施の形態に係る情報検索装置１００の作用について説明する。情報検索装置１００は、図７に示す情報検索処理ルーチンを実行する。
【００４１】
まず、ステップＳ１００では、時系列に記録された日時情報付きのテキストからなるテキスト群を入力とし、テキストの話題に応じて、テキスト群をセグメントに分割する。
【００４２】
次に、ステップＳ１０２では、セグメントごとに分割されたテキスト群に基づいて、セグメントごとに、テキストに含まれる、入力された質問に対する部分文字列である回答箇所を検索する。ここでは、セグメントごとに、部分文字列について回答箇所としての尤もらしさを表すスコアを算出して、スコアが高い部分文字列を回答箇所として検索する。
【００４３】
ステップＳ１０４では、回答箇所が検索されたセグメント、及びＮ−ｂｅｓｔ解の設定値に基づいて、対象とするセグメントの個数であるＮを設定する。Ｎの初期値は、回答箇所が検索されたセグメントの数が予め定められた設定値以上であれば設定値をＮの値とし、設定値未満であれば回答箇所が検索されたセグメントの数をＮの値とする。
【００４４】
ステップＳ１０６では、対象とするセグメントを選択する。セグメントは、回答箇所のスコアが高いものから順に１，２，．．．，Ｎと選択するものとする。
【００４５】
ステップＳ１０８では、対象のセグメントについて、検索された回答箇所に対する他の回答候補をテキストの各々から抽出し、回答候補の各々を推定する。
【００４６】
ステップＳ１１０では、対象のセグメントについて、推定された回答候補の各々から、日時情報に応じて質問に対する回答を同定する。例えば、回答候補の各々のうち、日時情報が最新のテキストから抽出された回答候補を質問に対する回答として同定する。
【００４７】
ステップＳ１１２では、Ｎ個全てのセグメントについて処理を終了したかを判定し、終了していればステップＳ１１４へ移行し、終了していなければステップＳ１０６に戻って次のセグメントを選択して処理を繰り返す。
【００４８】
ステップＳ１１４では、ステップＳ１１０でセグメントごとに同定された回答をまとめた最終的な回答を出力部５０に出力して処理を終了する。
【００４９】
以上説明したように、本発明の実施の形態に係る情報検索装置によれば、時系列に記録された、日時を示す日時情報付きのテキストからなるテキスト群であって、予め時系列の一部で区切られたテキスト群の部分群であるセグメントごとに分割されたテキスト群に基づいて、セグメントごとに、テキストに含まれる、入力された質問に対する部分文字列である回答箇所を検索し、回答箇所が検索されたセグメントについて、検索された回答箇所に対する他の回答候補をテキストの各々から抽出し、回答候補の各々を推定し、回答箇所が検索されたセグメントについて推定された回答候補の各々から、日時情報に応じて質問に対する回答を同定することにより、情報の不正確性を考慮して、質問に対する回答を検索することができる。
【００５０】
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００５１】
例えば、上述した実施の形態では、テキストセグメンテーション部２４を設けてテキスト群をセグメントに分割する場合を例に説明したが、これに限定されるものではなく、別装置等により予めテキスト群をセグメントに分割しておくようにしてもよい。
【符号の説明】
【００５２】
１０   入力部
２０   演算部
２２   検索テキスト格納部
２４   テキストセグメンテーション部
２６   検索テキスト格納部
３０   テキスト検索部
３２   回答候補推定部
３４   回答同定部
５０   出力部
１００ 情報検索装置
【図１】
2020003889.tif 000003
【図２】
2020003889.tif 000004
【図３】
2020003889.tif 000005
【図４】
2020003889.tif 000006
【図５】
2020003889.tif 000007
【図６】
2020003889.tif 000008
【図７】
2020003889.tif 000009