(57)【要約】      （修正有）【課題】適切に内容が対応した文章を検索することができる文章検索方法、文章検索装置およびプログラムを提供する。【解決手段】文章検索装置１００は、特定文章と検索対象文章との予め設定された基準による類似度を算出する際に、検索対象文章の長さに応じて類似度を算出する算出部１２１と、類似度に基づいて検索対象文章を検索する検索部１２２と、を備える。特定文章の内容と、検索対象文章の内容と、が類似する度合いが高いほど値が高くなるよう類似度を算出する。【選択図】図１１
2020140606.tif 000002
【特許請求の範囲】
【請求項１】
特定文章と検索対象文章との予め設定された基準による類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出し、
前記類似度に基づいて、前記検索対象文章を検索する、
文章検索方法。
【請求項２】
請求項１に記載の文章検索方法であって、
前記特定文章の内容と、前記検索対象文章の内容と、に基づいて、前記特定文章と前記検索対象文書との前記類似度を算出し、前記検索対象文章の長さに応じて前記類似度を修正する、
文章検索方法。
【請求項３】
請求項２に記載の文章検索方法であって、
前記特定文章の内容と、前記検索対象文章の内容と、が類似する度合いが高いほど値が高くなるよう前記類似度を算出し、前記検索対象文章の長さに応じて前記類似度を低くするよう修正する、
文章検索方法。
【請求項４】
請求項３のいずれかに記載の文章検索方法であって、
前記検索対象文章の長さが、予め設定された基準により長いと判断された場合に、前記類似度の値を低くするよう修正する、
文章検索方法。
【請求項５】
請求項４に記載の文章検索方法であって、
前記検索対象文章の長さが、他の前記検索対象文章に対して予め設定された基準により長いと判断された場合に、前記類似度の値を低くするよう修正する、
文章検索方法。
【請求項６】
請求項４又は５に記載の文章検索方法であって、
前記検索対象文章の長さが、複数の前記検索対象文章からなる検索対象文章群において、上位から所定の割合に含まれると判断された場合に、前記類似度の値を低くするよう修正する、
文章検索方法。
【請求項７】
請求項１乃至６のいずれかに記載の文章検索方法であって、
１つの前記検索対象文章を予め設定された基準により複数の前記検索対象文章に分割し、分割した前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
文章検索方法。
【請求項８】
請求項７に記載の文章検索方法であって、
前記特定文章の内容と、前記検索対象文章の内容と、に基づいて、前記特定文章と前記検索対象文書との前記類似度を算出し、分割前の前記検索対象文章全体に対する分割後の前記検索対象文章の位置に応じて、前記類似度を修正する、
文章検索方法。
【請求項９】
請求項８に記載の文章検索方法であって、
分割前の前記検索対象文章全体に対して、分割後の前記検索対象文章の位置が末尾に近い場合に、前記類似度の値を高くするよう修正する、
文章検索方法。
【請求項１０】
請求項１乃至９のいずれかに記載の文章検索方法であって、
前記検索対象文章内の予め設定された基準により特定される文言を削除して新たな前記検索対象文章とし、新たな前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
文章検索方法。
【請求項１１】
請求項１０に記載の文章検索方法であって、
複数の前記検索対象文章からなる検索対象文章群において予め設定された基準により共通して出現すると判断された文言を特定し、特定した文言を前記検索対象文章内から削除して新たな前記検索対象文章とし、新たな前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
文章検索方法。
【請求項１２】
特定文章と検索対象文章との予め設定された基準による類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する算出部と、
前記類似度に基づいて、前記検索対象文章を検索する検索部と、
を備えた文章検索装置。
【請求項１３】
請求項１２に記載の文章検索装置であって、
前記算出部は、前記特定文章の内容と、前記検索対象文章の内容と、に基づいて、前記特定文章と前記検索対象文書との前記類似度を算出し、前記検索対象文章の長さに応じて前記類似度を修正する、
文章検索装置。
【請求項１４】
請求項１２又は１３に記載の文章検索装置であって、
１つの前記検索対象文章を予め設定された基準により複数の前記検索対象文章に分割する分割部を備え、
前記算出部は、分割した前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
文章検索装置。
【請求項１５】
請求項１４に記載の文章検索装置であって、
前記算出部は、前記特定文章の内容と、前記検索対象文章の内容と、に基づいて、前記特定文章と前記検索対象文書との前記類似度を算出し、分割前の前記検索対象文章全体に対する分割後の前記検索対象文章の位置に応じて、前記類似度を修正する、
文章検索装置。
【請求項１６】
請求項１２乃至１５のいずれかに記載の文章検索装置であって、
前記検索対象文章内の予め設定された基準により特定される文言を削除して新たな前記検索対象文章とする前処理部を備え、
前記算出部は、新たな前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
文章検索装置。
【請求項１７】
情報処理装置に、
特定文章と検索対象文章との予め設定された基準による類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する算出部と、
前記類似度に基づいて、前記検索対象文章を検索する検索部と、
を実現させるためのプログラム。
【請求項１８】
請求項１７に記載のプログラムであって、
前記情報処理装置に、１つの前記検索対象文章を予め設定された基準により複数の前記検索対象文章に分割する分割部をさらに実現させ、
前記算出部は、分割した前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
プログラム。
【請求項１９】
請求項１７又は１８に記載のプログラムであって、
前記情報処理装置に、前記検索対象文章内の予め設定された基準により特定される文言を削除して新たな前記検索対象文章とする前処理部をさらに実現させ、
前記算出部は、新たな前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文章検索方法、文章検索装置、プログラムに関する。
【背景技術】
【０００２】
製品を販売したりサービスを提供する事業者にとっては、顧客からの問合せに対する対応が業務の一部となっている。例えば、サービス内容の説明、操作方法の説明、不具合への対応など、問合せ対応の内容は多岐にわたり、また、問合せ数が膨大であることから、対応者の負担が大きい、という問題が生じる。
【０００３】
一方で、近年では、情報処理技術の発達やコンピュータの普及により、様々な文章情報をデータベース化することが可能であり、かかるデータベースから所望の文章情報を検索することが可能となっている。そこで、上述したような問い合わせ対応の業務においては、過去の問合せ及び回答からなる事例の文章情報をデータベース化し、新たに顧客から問合せがあったときに、参考となる過去の事例を検索することが行われている。これにより、対応者は、顧客からの問合せに対して過去の事例を参照することで、業務の効率化を図ることができる。
【０００４】
上述したような問合せから過去の事例の検索は、問合せの文章情報と、過去の事例の文章情報と、の類似度を計算することによって行われる。例えば、文章情報の類似度の計算は、文章情報の特徴を表す特徴ベクトルを算出し、かかる特徴ベクトル同士の距離を算出することで行う。そして、問合せの文章情報に対して類似度が高いと判断された過去の事例の文章情報を、参照する候補として抽出する。なお、文章情報の特徴を表す特徴ベクトルを算出する一例が、特許文献１に開示されている。特許文献１では、文章のキーワード出現頻度、文章長、キーワードの重み、に基づいて、特徴ベクトルを算出している。そして、かかる特徴ベクトル間の内積や距離から類似度を算出している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−１４９９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、問合せ及び回答からなる過去の事例における文章の長さは、その事例の内容によってそれぞれ異なる。例えば、問合せの内容が予め用意されていた回答集や過去の事例に適合する場合には、２行で完結することがあるなど文章は短い。一方で、過去に適合する事例がなかったり、再現が困難な症状の問合せの場合には、ユーザと回答者との間で何度もやりとりが行われ、完結するまで数千行となるなど文章が長くなることがある。そして、このような長い文章では、ユーザと回答者とが何度もやりとりした結果、特定の用語や文言が重複して含まれる可能性が高い。
【０００７】
上述したように、問合せに対して、過去の問合せ及び回答から過去の事例からなる文章を検索する場合においては、過去の事例の長さが長いほど、問合せと過去の事例との類似度が高くなる傾向にある。このため、問合せに対して類似度の高い過去の事例を検索すると、文章の長い過去の事例が多く検索されてしまうことがある。一方で、検索された文章の長い過去の事例は、類似度が高いものの、必ずしも問合せの内容に適切に対応しているとは限らない。このため、適切に内容が対応した文章を検索することができない、という問題が生じる。なお、かかる問題は、上述した問合せから過去の事例を検索する場合に限らず、いかなる文章の検索を行う場合にも生じうる。
【０００８】
このため、本発明の目的は、上述した課題である、適切に内容が対応した文章を検索することができない、ことを解決することにある。
【課題を解決するための手段】
【０００９】
本発明の一形態である文章検索方法は、
特定文章と検索対象文章との予め設定された基準による類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出し、
前記類似度に基づいて、前記検索対象文章を検索する、
という構成をとる。
【００１０】
また、本発明の一形態である文章検索装置は、
特定文章と検索対象文章との予め設定された基準による類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する算出部と、
前記類似度に基づいて、前記検索対象文章を検索する検索部と、
を備えた、
という構成をとる。
【００１１】
また、本発明の一形態であるプログラムは、
情報処理装置に、
特定文章と検索対象文章との予め設定された基準による類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する算出部と、
前記類似度に基づいて、前記検索対象文章を検索する検索部と、
を実現させる、
という構成をとる。
【発明の効果】
【００１２】
本発明は、以上のように構成されることにより、適切に内容が対応した文章を検索することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態１における文章検索装置の構成を示すブロック図である。
【図２】図１に開示した文章検索装置に記憶される情報の一例を示す図である。
【図３】図１に開示した文章検索装置による処理の様子を示す図である。
【図４】図１に開示した文章検索装置による処理の様子を示す図である。
【図５】図１に開示した文章検索装置による処理の様子を示す図である。
【図６】図１に開示した文章検索装置による処理の様子を示す図である。
【図７】図１に開示した文章検索装置による処理の様子を示す図である。
【図８】図１に開示した文章検索装置の動作を示すフローチャートである。
【図９】図１に開示した文章検索装置の動作を示すフローチャートである。
【図１０】本発明の実施形態２における文章検索装置のハードウェア構成を示すブロック図である。
【図１１】本発明の実施形態２における文章検索装置の構成を示すブロック図である。
【図１２】本発明の実施形態２における文章検索装置の動作を示すフローチャートである。
【発明を実施するための形態】
【００１４】
＜実施形態１＞
本発明の第１の実施形態を、図１乃至図９を参照して説明する。図１乃至図２は、文章検索装置の構成を説明するための図であり、図３乃至図９は、文章検索装置の処理動作を説明するための図である。
【００１５】
［構成］
本発明における文章検索装置１０は、予め複数の文章を記憶したデータベースを備えており、かかるデータベースから、特定の文章（特定文章）に対応する文章（検索対象文章）を検索するための情報処理装置である。例えば、本実施形態では、文章検索装置１０は、製品を販売したりサービスを提供する事業者によって運用され、製品やサービスを利用する顧客からの「問合せ」及び当該問合せに対する「回答」の文章からなる過去の「事例」を、データベースに記憶している。そして、文章検索装置１０は、新たに受けた顧客からの「問合せ」の文章に対して、対応すると考えられる「事例」をデータベースから検索する機能を有する。但し、本発明における文章検索装置１０は、いかなる文章をデータベースに記憶していてもよく、いかなる文章を検索するよう構成されていてもよい。
【００１６】
図１に示すように、文章検索装置１０は、ネットワークＮを介して検索端末２０に接続されている。ここで、検索端末２０は、電話や電子メールなどで顧客からの「問合せ」を受け付けて、かかる「問合せ」に対する「回答」を行うオペレータＰが操作する情報処理端末である。検索端末２０は、オペレータＰの操作により入力された「問合せ」の文章を文章検索装置１０に送信して、かかる「問合せ」に対応する「事例」の検索要求を行う。なお、検索端末２０は、顧客からの「問合せ」の文章をそのまま「問合せ」とすることに限らず、オペレータＰが顧客にヒヤリングなどをすることによって聞き出した内容を表す文章も「問合せ」に含まれることとする。そして、検索端末２０は、文章検索装置１０から検索された「事例」を受信すると、かかる「事例」をオペレータＰに対して表示するなど出力する。これにより、オペレータＰは、表示された「事例」を参考にして、顧客からの「問合せ」に対して「回答」を行う。
【００１７】
また、検索端末２０は、「問合せ」と「回答」との対を文章検索装置１０に送信して、「事例」としてデータベースに登録するよう依頼する。このとき、「問合せ」と「回答」との対には、顧客からの「問合せ」を識別する識別情報が付与されており、かかる識別情報で「事例」が区別されてデータベースに登録される。なお、１つの「問合せ」に対して、さらなる「問合せ」及び「回答」が継続して行われる場合がある。この場合にも、継続して行われた「問合せ」と「回答」との対に、最初の「問合せ」に付与されている識別情報を対応付けることで、これら複数の「問合せ」と「回答」との対が同一の「事例」としてデータベースに登録されることとなる。
【００１８】
上記文章検索装置１０は、演算装置と記憶装置とを備えた１台又は複数台の情報処理装置にて構成される。そして、文章検索装置１０は、図１に示すように、演算装置がプログラムを実行することで構築された、前処理部１１、検索受付部１２、類似度算出部１３、検索部１４、出力部１５、を備える。また、文章検索装置１０は、記憶装置に形成された、事例データベース１６を備える。以下、各構成について詳述する。
【００１９】
上記事例データベース１６は、上述したように、顧客からの「問合せ」とオペレータＰによる「回答」を含む、過去の顧客とオペレータＰとの一連のやりとりの文章情報からなる過去の「事例」を複数記憶している。なお、各「事例」には、それぞれ識別情報が付与されており、かかる識別情報で「事例」が区別されている。ここで、図２に、事例データベース１６に記憶されている「事例」の一例を示す。図２に示すように、「事例」は、「事例０１」のように「問合せＱ」と「回答Ａ」との対が１つのみのものもあれば、「事例０２」や「事例０３」のように、解決までに時間がかかり、「問合せＱ」と「回答Ａ」との対が複数含まれているものもある。なお、「事例」には、必ずしも「問合せＱ」と「回答Ａ」とが対となって含まれていることに限定されない。例えば、１つの「問合せＱ」に対して複数の「回答Ａ」が行われ、これらが時系列で含まれていてもよい。
【００２０】
上記前処理部１１（分割部）は、事例データベース１６に記憶されている「事例」に対して、後述するように類似度算出処理を行うための前処理を行う。前処理部１１にて行われる前処理は、主に、「事例」を分割する分割処理と、「事例」内から文言を削除する削除処理と、「事例」の長さを特定する長さ判断処理と、を含む。
【００２１】
前処理部１１は、上記分割処理として、予め設定された基準により、１つの「事例」を複数に分割する。例えば、前処理部１１は、まず各「事例」の長さから分割対象となる「事例」を特定する。このとき、前処理部１１は、前処理部１１は、「事例」に含まれる文章の文字数や行数、「問合せＡ」と「回答Ｑ」との対の数、「回答Ｑ」の数などを用いて、これらが閾値以上である場合に、かかる「事例」を分割対象として特定する。例えば、図３に示すように、「問合せＱ」と「回答Ａ」の対の数が閾値以上である「事例０３」が分割対象として特定されたとする。この場合、前処理部１１は、分割対象として特定された「事例０３」を、当該「事例０３」内の情報に基づいて複数に分割する。例えば、図３に示すように、「問合せＱ」と「回答Ａ」との対の数が最大３つなるよう、「問合せＱ」と「回答Ａ」との対の区切り箇所で、「事例０３」を「事例０３−１」と「事例０３−２」に分割する。このとき、分割された「事例０３−１」と「事例０３−２」とには、新たな識別情報が付与され、新たな「事例」として事例データベース１６に登録される。
【００２２】
また、前処理部１１は、分割後の「事例０３−１」及び「事例０３−２」を、分割前の「事例０３」に関連付けた状態で事例データベース１６に登録する。また、前処理部１１は、分割前の「事例０３」全体に対する分割後の「事例０３−１」と「事例０３−２」の位置を検出し、位置情報を分割後の事例に付与する。特に、前処理部１１は、分割前の「事例０３」の末尾に位置する「回答Ａ」が含まれる分割後の「事例０３−２」に対して、末尾部分であることを表す位置情報を付与する。なお、前処理部１１は、末尾に位置する分割後の事例のみに対して位置情報を付与することに限定されず、分割後の全ての事例に対して、末尾からどの程度近いかを表す位置情報を付与してもよく、いかなる位置情報を付与してもよい。
【００２３】
なお、前処理部１１は、必ずしも上述した方法で、１つの「事例」を複数に分割することに限定されず、いかなる方法で「事例」を分割してもよい。つまり、前処理部１１は、いかなる方法で分割対象となる「事例」を特定してもよく、いかなる方法で「事例」の分割箇所を決定してもよい。例えば、前処理部１１は、「事例」の文章中に特定の文言が出現していた場合に、かかる文言の箇所で「事例」を分割してもよい。具体的に、「事例」の中に、「〜でしょうか？」という文言が含まれていたとする。この場合、かかる文言は、オペレータＰが顧客に質問している文章であることが多く、これを契機に問合せ事項が進展することもあることから、かかる文言の箇所を分割箇所と決定して、「事例」を分割してもよい。
【００２４】
また、前処理部１１は、上述した削除処理として、「事例」内に存在する予め設定された基準により特定される文言を削除して、新たな「事例」を生成する。一例として、前処理部１１は、「事例」内から、「ご確認のほど何卒よろしくお願いいたします。」や「恐れ入りますが、予めご了承願います。」などのオペレータＰが「回答」で使用する予め設定された定型文からなる文言を検出し、かかる文言を削除する。別の例として、前処理部１１は、事例データベース１６内の「事例」群を分析し、複数の「事例」に共通して出現する文言、特に、頻出度の高い文言を削除する文言と特定し、かかる文言を「事例」から削除してもよい。このとき、前処理部１１は、テキスト含意認識技術などを用いて、表現が異なるが同じ意味を表す文言を同一視し、文言の頻出度を調べてもよい。なお、削除する文言はいかなる文言であってもよく、いかなる基準で特定されてもよい。
【００２５】
ここで、図４に「事例」から文言を削除する例を示す。前処理部１１は、「事例０２」から太字下線で示す定型文などの文言「ＺＺＺＺＺＺ」を検出し、かかる文言を削除した新たな「事例０２−１」を生成する。このとき、文言が削除されて新たに生成された「事例０２−１」は、新たな識別情報が付与され、新たな「事例」として事例データベース１６に登録される。このとき、前処理部１１は、新たに生成した「事例０２−１」を、文言を削除する前の「事例０２」に関連付けた状態で事例データベース１６に登録する。
【００２６】
また、前処理部１１は、上述した長さ判断処理として、「事例」の長さが予め設定された基準により長いと判断できる「事例」を特定する。例えば、前処理部１１は、各「事例」に含まれる文章の文字数や行数、「問合せＡ」と「回答Ｑ」との対の数、「回答Ｑ」の数などを、「事例」の長さの値として扱い、事例データベース１６内の他の「事例」と比較して長いと判断できる「事例」を特定する。一例として、前処理部１１は、「事例」の文字数を長さの値とし、事例データベース１６内の全ての「事例」の文字数の分布Ｄを図５に示すように求める。そして、かかる分布Ｄから、図５の符号Ｄ１に示すような上位８％に含まれる「事例」を、文章の長さの長い「事例」であると判断して、かかる「事例」を特定する。そして、前処理部１１は、文章の長さが長いと判断した「事例」に対して、長さ情報を付与する。
【００２７】
なお、前処理部１１は、必ずしも上述した方法で「事例」の長さを判断することに限定されない。例えば、前処理部１１は、上述した「事例」の長さの分布Ｄの上位８％を、長いと判断することに限定されず、分布Ｄの上位から予め設定された割合に含まれる「事例」を、長いと判断してもよい。あるいは、前処理部１１は、「事例」の文字数や行数などが予め設定された値以上である場合に、かかる「事例」を長いと判断してもよい。
【００２８】
但し、前処理部１１は、「事例」の長さが、予め設定された基準により長いか否かを判断することに限定されず、「事例」の長さの程度を判断してもよい。例えば、図５に示すような長さの分布Ｄを複数段階に区分けして、それぞれの段階に含まれる「事例」に、その段階を特定する長さ情報を付与してもよい。一例として、長さの分布を５段階に区分けした場合に、例えば、最も長い段階が「段階５」というように長い方から大きい数値を割り当て、かかる数値を長さ情報として「事例」に付与してもよい。なお、この場合にも、いかなる方法で「事例」の長さの程度を判断してもよい。
【００２９】
ここで、前処理部１１は、事例データベース１６内に、上述したように分割された分割前の「事例」や文言が削除された削除前の「事例」が存在する場合には、かかる「事例」については上述した長さ判断処理を行わない。つまり、前処理部１１は、上述した分割処理や削除処理の対象とならなかった「事例」や、分割処理で分割された後の新たな「事例」、削除処理で文言が削除された後の新たな「事例」、を長さ判断処理の対象とする。
【００３０】
上記検索受付部１２は、検索端末２０から送信された「問合せ」を受け付ける。このとき、検索受付部１２は、上述した前処理部１１による削除処理と同様に、「問合せ」の文章内に存在する予め設定された基準により特定される文言を削除してもよい。そして、検索受付部１２は、受け付けた「問合せ」を類似度算出部１３に渡す。
【００３１】
上記類似度算出部１３（算出部）は、受け付けた「問合せ」と、事例データベース１６内の各「事例」と、の類似度を算出する。このとき、類似度算出部１３は、「問合せ」の文章の内容と「事例」の文章の内容とに基づいて、「問合せ」と「事例」とが内容が類似する度合いが高いほど値が高くなるよう類似度を算出する。例えば、類似度算出部１３は、「問合せ」と「事例」とに共通して出現する単語の数に基づいて類似度を算出する。別の例としては、類似度算出部１３は、「問合せ」と「事例」とに出現する文言などから「問合せ」と「事例」とのそれぞれの特徴ベクトルを求め、特徴ベクトル間の距離を類似度として算出する。但し、類似度算出部１３による「問合せ」各「事例」との類似度の算出方法はいかなる方法であってもよい。
【００３２】
このとき、類似度算出部１３は、上述した分割処理や削除処理の対象とならなかった「事例」や、分割処理で分割された後の新たな「事例」、削除処理で文言が削除された後の新たな「事例」を対象として、１つの「問合せ」に対して各「事例」との類似度をそれぞれ算出する。つまり、図６に示すような「問合せ０１」と「事例０１」との類似度、「問合せ０１」と「事例０２」との類似度、図７に示すような「問合せ０１」と「事例０３−１」との類似度、「問合せ０１」と「事例０３−２」との類似度、というように算出する。
【００３３】
そして、類似度算出部１３は、「問合せ」と各「事例」との類似度を算出した後に、かかる類似度を修正する。具体的に、類似度算出部１３は、類似度を算出した対象となった「事例」に長さ情報が付与されていて、上述したように「事例」の文章の長さが他と比較して長いと判断されたものについては、類似度の値を低くするよう修正する。つまり、類似度の値を一定の割合だけ低くするよう重み付けをする。例えば、図６に示す「事例０１」は、図５に示す全ての「事例」の長さの分布Ｄにおいて上位８％に入っておらず、「事例０２」は上位８％に入っていることとする。そして、図６に示すように、「問合せ０１」と「事例０１」との類似度が矢印Ｙ１に示すように「類似度Ａ」と算出され、「問合せ０１」と「事例０２」との類似度が矢印Ｙ２に示すように「類似度Ｂ」と算出されたとする。この場合、「事例０１」を対象とした「類似度Ａ」は修正せず、「事例０２」を対象とした「類似度Ｂ」については、当該「類似度Ｂ」が低くなるよう重み付けして、「類似度ｂ」に修正する。
【００３４】
なお、類似度算出部１３は、「事例」に付与されている長さ情報が、文章の長さの程度を表している場合には、長さの程度に応じて類似度を修正してもよい。例えば、類似度算出部１３は、「事例」の長さが長いほど「類似度」が大きな割合で低くなるよう修正してもよい。つまり、類似度算出部１３は、「事例」の長さが長いほど小さな値を「類似度」に重み付けして修正してもよい。一例として、上述したように、「事例」の文章の長さの分布Ｄを５段階に区分けした場合には、長さが短い方から「段階１，２，３」は「類似度」を修正せず、次に文章が長い「段階４」は「類似度」の値が所定の割合だけ小さくなるよう重み付けし、最も文章が長い「段階５」は「類似度」の値がさらに大きな割合だけ小さくなるよう重み付けする。
【００３５】
また、類似度算出部１３は、類似度を算出した対象となった「事例」が分割したものであって、分割前の「事例」の末尾部分であることを表す位置情報が付与されている場合には、類似度の値を高くするよう修正する。つまり、類似度の値を一定の割合だけ高くするよう重み付けをする。例えば、図７に示す「事例０３−１」は、図３に示すように分割前の「事例０３」の末尾部分ではなく、図７に示す「事例０３−２」は分割前の「事例０３」の末尾部分であるとする。そして、図７に示すように、「問合せ０１」と「事例０３−１」との類似度が矢印Ｙ１１に示すように「類似度Ｃ」と算出され、「問合せ０１」と「事例０３−２」との類似度が矢印Ｙ１２に示すように「類似度Ｄ」と算出されたとする。この場合、「事例０３−１」を対象とした「類似度Ｃ」は修正せず、「事例０３−２」を対象とした「類似度Ｄ」については、当該「類似度Ｄ」の値が高くなるよう重み付けして、「類似度Ｄ’」に修正する。
【００３６】
なお、類似度算出部１３は、分割された「事例」に付与されている位置情報が、分割前の「事例」の末尾からの近さを表している場合には、近さの程度に応じて類似度を修正してもよい。例えば、類似度算出部１３は、分割された「事例」が分割前の「事例」の末尾に近いほど、「類似度」が大きな割合で高くなるよう修正してもよい。つまり、類似度算出部１３は、分割された「事例」が分割前の「事例」の末尾に近いほど大きな値を「類似度」に重み付けして修正してもよい。
【００３７】
但し、類似度算出部１３は、必ずしも上述した方法で「類似度」を修正することに限定されない。例えば、類似度算出部１３は、「問合せ」と「事例」との類似度を算出する際に「事例」の長さ情報を考慮して、かかる長さ情報を考慮しない場合よりも値が低くなるよう類似度を算出してもよい。同様に、類似度算出部１３は、「問合せ」と「事例」との類似度を算出する際に「事例」の位置情報を考慮して、かかる位置情報を考慮しない場合よりも値が高くなるよう類似度を算出してもよい。
【００３８】
上記検索部１４は、上述したように算出した「問合せ」と各「事例」との類似度に基づいて、「問合せ」に対応する「事例」を検索する。例えば、検索部１４は、類似度の値が高い順に所定数の「事例」を、「問合せ」に対応する「事例」として検索する。このとき、検索部１４は、検索された複数の「事例」を、類似度の値が高い順にランク付けしてもよい。また、検索部１４は、類似度の値が最も高い１つの「事例」のみを検索してもよい。
【００３９】
上記出力部１５は、検索された「事例」を検索端末２０に送信する。このとき、出力部１５は、検索された「事例」の全てを検索端末２０に送信してもよく、検索された「事例」のうち１つ又はいくつかのみを送信してもよい。また、出力部１５は、検索された「事例」がランク付けされていた場合には、ランク付けされたままの状態で検索端末２０に送信してもよい。さらに、出力部１５は、検索された「事例」が、一部の文言が削除された「事例」である場合には、削除された文言を元に戻して検索端末２０に送信してもよい。また、出力部１５は、検索された「事例」が分割されたものである場合には、かかる分割後の「事例」をそのまま検索端末２０に送信してもよいが、検索された「事例」の内容を含む分割前の「事例」を検索端末２０に送信してもよい。
【００４０】
［動作］
次に、上述した文章検索装置１０の動作を、主に図８乃至図９のフローチャートを参照して説明する。まず、図８のフローチャートを参照して、事例データベース１６に登録されている「事例」に対して行われる前処理の動作を説明する。
【００４１】
文章検索装置１０は、事例データベース１６内の全ての「事例」の長さを調べ、分割対象を特定する。そして、文章検索装置１０は、分割対象とされた「事例」を所定の区切り箇所で分割し（ステップＳ１）、新たな「事例」として事例データベース１６に登録する。このとき、文章検索装置１０は、分割前の「事例」全体に対する分割後の「事例」の位置を検出し、位置情報を分割後の「事例」に付与する（ステップＳ２）。特に、文章検索装置１０は、分割前の「事例」の末尾に位置する文章が含まれる分割後の「事例」に対して、末尾部分であることを表す位置情報を付与する。例えば、文章検索装置１０は、図３に示すように、所定の長さ以上の「事例０３」を、「事例０３−１」と「事例０３−２」に分割し、さらに、「事例０３−２」に対して末尾部分であることを表す位置情報を付与する。
【００４２】
続いて、文章検索装置１０は、事例データベース１６内の「事例」内に存在する予め設定された基準により特定される文言を削除して、新たな「事例」を生成する（ステップＳ３）。例えば、図４に示すように、「事例０２」から太字下線で示す定型文などの文言「ＺＺＺＺＺＺ」を検出し、かかる文言を削除した新たな「事例０２−１」を生成する。
【００４３】
続いて、文章検索装置１０は、事例データベース１６内の全ての「事例」の長さの分布Ｄを生成する（ステップＳ４）。そして、文章検索装置１０は、例えば図５に示すように、かかる分布Ｄから符号Ｄ１に示す上位８％に含まれる「事例」を、文章の長さが長い「事例」であると判断して、かかる「事例」を特定する（ステップＳ５）。そして、文章検索装置１０は、文章の長さが長いと判断した「事例」に対して長さ情報を付与する（ステップＳ６）。
【００４４】
なお、文章検索装置１０は、上述した前処理をいかなる順序で行ってもよい。例えば、文章検索装置１０は、後述する「問合せ」と「事例」との類似度を算出する処理の直前に、対象とする「事例」毎に前処理を行ってもよい。但し、文章検索装置１０は、必ずしも上述した前処理の全てを行う必要はなく、一部の前処理のみが行われてもよい。
【００４５】
次に、図９のフローチャートを参照して、事例を検索する処理の動作を説明する。まず、文章検索装置１０は、検索端末２０から送信された「問合せ」を受け付けると（ステップＳ１１）、受け付けた「問合せ」と、事例データベース１６の各「事例」と、の類似度をそれぞれ算出する（ステップＳ１２）。具体的に、文章検索装置１０は、「問合せ」の文章の内容と「事例」の文章の内容とに基づいて、「問合せ」と「事例」とが内容が類似する度合いが高いほど値が高くなるよう類似度を算出する。一例として、文章検索装置１０は、「問合せ」と「事例」とに共通して出現する単語の数に基づいて類似度を算出する。このとき、文章検索装置１０は、上述した分割処理や削除処理の対象とならなかった「事例」や、分割処理で分割された後の新たな「事例」、削除処理で文言が削除された後の新たな「事例」を対象として、「問合せ」との類似度を算出する。
【００４６】
続いて、文章検索装置１０は、類似度を算出した対象となった「事例」に付与されている長さ情報や位置情報に基づいて、かかる類似度を修正する（ステップＳ１３）。このとき、文章検索装置１０は、上述したように「事例」の文章の長さが他と比較して長いと判断されることで長さ情報が付与されている場合には、類似度の値を低くするよう修正する。例えば、図６に示す「事例０２」は、その長さが「事例」全体の上位８％に入っている場合には、「問合せ０１」と「事例０２」との算出した「類似度Ｂ」の値が低くなるよう重み付けして、「類似度ｂ」に修正する。
【００４７】
また、文章検索装置１０は、上述したように「事例」の分割前の位置が、末尾部分であることを表す位置情報が付与されている場合には、類似度の値を高くするよう修正する。例えば、図７に示す「事例０３−２」は、分割前の「事例０３」の末尾部分である場合には、「問合せ０１」と「事例０３−２」との算出した「類似度Ｄ」の値が高くなるよう重み付けして、「類似度Ｄ’」に修正する。
【００４８】
続いて、文章検索装置１０は、上述したように算出して修正した「問合せ」と各「事例」との類似度に基づいて、「問合せ」に対応する「事例」を検索する（ステップＳ１４）。例えば、文章検索装置１０は、類似度の値が高い順に所定数の「事例」を、「問合せ」に対応する「事例」として検索する。
【００４９】
そして、文章検索装置１０は、検索された「事例」を検索端末２０に送信する（ステップＳ１５）。これにより、オペレータＰは、検索端末２０に表示出力された検索された「事例」を閲覧して参照し、「問合せ」に対する回答を作成する。
【００５０】
以上のように、本実施形態における文章検索装置１０では、「問合せ」と「事例」との類似度を算出する際に、対象となる「事例」の文章の長さが比較的長い場合には、類似度の値を低くするよう修正している。このため、文章が長い「事例」は、多くの文言が含まれていることから実際の類似状況によらず「類似度」が高くなる傾向にあるが、かかる理由により「類似度」が不要に高くなることを修正して改善することができる。そして、修正した「類似度」を用いて「問合せ」に対する「事例」を検索することで、実際に類似状況によらず文章の長い過去の「事例」が多く検索されてしまうことを抑制でき、「問合せ」に対して適切に内容が対応した「事例」を検索することができる。
【００５１】
また、本実施形態における文章検索装置１０では、事前に、文章が長い「事例」を分割したり、「事例」内から定型文などの文言を削除するなどの前処理を行い、前処理した「事例」を対象として類似度を算出している。これにより、文章が長いことで実際の類似状況によらず「類似度」が高くなってしまうことを抑制することができる。さらにこのとき、分割した「事例」の分割前の位置に応じて「類似度」を高くするなど修正している。これにより、「問合せ」に対して適切に内容が対応した「事例」を検索することができる。
【００５２】
＜実施形態２＞
次に、本発明の第２の実施形態を、図１０乃至図１２を参照して説明する。図１０乃至図１１は、実施形態２における文章検索装置の構成を示すブロック図であり、図１２は、文章検索装置の動作を示すフローチャートである。なお、本実施形態では、実施形態１で説明した文章検索装置及び文章検索装置による処理方法の構成の概略を示している。
【００５３】
まず、図１０を参照して、本実施形態における文章検索装置１００のハードウェア構成を説明する。文章検索装置１００は、一般的な情報処理装置にて構成されており、一例として、以下のようなハードウェア構成を装備している。
・ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１（演算装置）
・ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０２（記憶装置）
・ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０３（記憶装置）
・ＲＡＭ１０３にロードされるプログラム群１０４
・プログラム群１０４を格納する記憶装置１０５
・情報処理装置外部の記憶媒体１１０の読み書きを行うドライブ装置１０６
・情報処理装置外部の通信ネットワーク１１１と接続する通信インタフェース１０７
・データの入出力を行う入出力インタフェース１０８
・各構成要素を接続するバス１０９
【００５４】
そして、文章検索装置１００は、プログラム群１０４をＣＰＵ１０１が取得して当該ＣＰＵ１０１が実行することで、図１１に示す算出部１２１と検索部１２２を構築して装備することができる。なお、プログラム群１０４は、例えば、予め記憶装置１０５やＲＯＭ１０２に格納されており、必要に応じてＣＰＵ１０１がＲＡＭ１０３にロードして実行する。また、プログラム群１０４は、通信ネットワーク１１１を介してＣＰＵ１０１に供給されてもよいし、予め記憶媒体１１０に格納されており、ドライブ装置１０６が該プログラムを読み出してＣＰＵ１０１に供給してもよい。但し、上述した算出部１２１と検索部１２２とは、電子回路で構築されるものであってもよい。
【００５５】
なお、図１０は、文章検索装置１００である情報処理装置のハードウェア構成の一例を示しており、情報処理装置のハードウェア構成は上述した場合に例示されない。例えば、情報処理装置は、ドライブ装置１０６を有さないなど、上述した構成の一部から構成されてもよい。
【００５６】
そして、文章検索装置１００は、上述したようにプログラムによって構築された算出部１２１と検索部１２２との機能により、図１２のフローチャートに示す文章検索方法を実行する。
【００５７】
図１２に示すように、文章検索装置１００は、
特定文章と検索対象文章との予め設定された基準による類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出し（ステップＳ１０１）、
前記類似度に基づいて、前記検索対象文章を検索する（ステップＳ１０２）。
【００５８】
本発明は、以上のように構成されることにより、特定文章と検索対象文章との類似度を算出する際に、検索対象文章の長さに応じて類似度を算出している。このようにすることで、長い文章は多くの文言が含まれていることから実際の類似状況によらず類似度が高くなる傾向にあるが、長さを考慮した類似度を算出しているため、かかる類似度が不要に高くなることを抑制することができる。そして、修正した類似度を用いて文章を検索することで、実際に類似状況によらず長い文章が多く検索されてしまうことを抑制でき、特定文章に対して適切に内容が対応した検索対象文章を検索することができる。
【００５９】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における文章検索方法、文章検索装置、プログラムの構成の概略を説明する。但し、本発明は、以下の構成に限定されない。
【００６０】
（付記１）
特定文章と検索対象文章との予め設定された基準による類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出し、
前記類似度に基づいて、前記検索対象文章を検索する、
文章検索方法。
【００６１】
（付記２）
付記１に記載の文章検索方法であって、
前記特定文章の内容と、前記検索対象文章の内容と、に基づいて、前記特定文章と前記検索対象文書との前記類似度を算出し、前記検索対象文章の長さに応じて前記類似度を修正する、
文章検索方法。
【００６２】
（付記３）
付記２に記載の文章検索方法であって、
前記特定文章の内容と、前記検索対象文章の内容と、が類似する度合いが高いほど値が高くなるよう前記類似度を算出し、前記検索対象文章の長さに応じて前記類似度を低くするよう修正する、
文章検索方法。
【００６３】
（付記４）
付記３のいずれかに記載の文章検索方法であって、
前記検索対象文章の長さが、予め設定された基準により長いと判断された場合に、前記類似度の値を低くするよう修正する、
文章検索方法。
【００６４】
（付記５）
付記４に記載の文章検索方法であって、
前記検索対象文章の長さが、他の前記検索対象文章に対して予め設定された基準により長いと判断された場合に、前記類似度の値を低くするよう修正する、
文章検索方法。
【００６５】
（付記６）
付記４又は５に記載の文章検索方法であって、
前記検索対象文章の長さが、複数の前記検索対象文章からなる検索対象文章群において、上位から所定の割合に含まれると判断された場合に、前記類似度の値を低くするよう修正する、
文章検索方法。
【００６６】
（付記７）
付記１乃至６のいずれかに記載の文章検索方法であって、
１つの前記検索対象文章を予め設定された基準により複数の前記検索対象文章に分割し、分割した前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
文章検索方法。
【００６７】
（付記８）
付記７に記載の文章検索方法であって、
前記特定文章の内容と、前記検索対象文章の内容と、に基づいて、前記特定文章と前記検索対象文書との前記類似度を算出し、分割前の前記検索対象文章全体に対する分割後の前記検索対象文章の位置に応じて、前記類似度を修正する、
文章検索方法。
【００６８】
（付記９）
付記８に記載の文章検索方法であって、
分割前の前記検索対象文章全体に対して、分割後の前記検索対象文章の位置が末尾に近い場合に、前記類似度の値を高くするよう修正する、
文章検索方法。
【００６９】
（付記１０）
付記１乃至９のいずれかに記載の文章検索方法であって、
前記検索対象文章内の予め設定された基準により特定される文言を削除して新たな前記検索対象文章とし、新たな前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
文章検索方法。
【００７０】
（付記１１）
付記１０に記載の文章検索方法であって、
複数の前記検索対象文章からなる検索対象文章群において予め設定された基準により共通して出現すると判断された文言を特定し、特定した文言を前記検索対象文章内から削除して新たな前記検索対象文章とし、新たな前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
文章検索方法。
【００７１】
（付記１２）
特定文章と検索対象文章との予め設定された基準による類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する算出部と、
前記類似度に基づいて、前記検索対象文章を検索する検索部と、
を備えた文章検索装置。
【００７２】
（付記１３）
付記１２に記載の文章検索装置であって、
前記算出部は、前記特定文章の内容と、前記検索対象文章の内容と、に基づいて、前記特定文章と前記検索対象文書との前記類似度を算出し、前記検索対象文章の長さに応じて前記類似度を修正する、
文章検索装置。
【００７３】
（付記１４）
付記１２又は１３に記載の文章検索装置であって、
１つの前記検索対象文章を予め設定された基準により複数の前記検索対象文章に分割する分割部を備え、
前記算出部は、分割した前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
文章検索装置。
【００７４】
（付記１５）
付記１４に記載の文章検索装置であって、
前記算出部は、前記特定文章の内容と、前記検索対象文章の内容と、に基づいて、前記特定文章と前記検索対象文書との前記類似度を算出し、分割前の前記検索対象文章全体に対する分割後の前記検索対象文章の位置に応じて、前記類似度を修正する、
文章検索装置。
【００７５】
（付記１６）
付記１２乃至１５のいずれかに記載の文章検索装置であって、
前記検索対象文章内の予め設定された基準により特定される文言を削除して新たな前記検索対象文章とする前処理部を備え、
前記算出部は、新たな前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
文章検索装置。
【００７６】
（付記１７）
情報処理装置に、
特定文章と検索対象文章との予め設定された基準による類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する算出部と、
前記類似度に基づいて、前記検索対象文章を検索する検索部と、
を実現させるためのプログラム。
【００７７】
（付記１８）
付記１７に記載のプログラムであって、
前記情報処理装置に、１つの前記検索対象文章を予め設定された基準により複数の前記検索対象文章に分割する分割部をさらに実現させ、
前記算出部は、分割した前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
プログラム。
【００７８】
（付記１９）
付記１７又は１８に記載のプログラムであって、
前記情報処理装置に、前記検索対象文章内の予め設定された基準により特定される文言を削除して新たな前記検索対象文章とする前処理部をさらに実現させ、
前記算出部は、新たな前記検索対象文章を対象として、前記特定文章と前記検索対象文章との前記類似度を算出する際に、前記検索対象文章の長さに応じて前記類似度を算出する、
プログラム。
【００７９】
なお、上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（Random Access Memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００８０】
以上、上記実施形態等を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることができる。
【符号の説明】
【００８１】
１０  文章検索装置
１１  前処理部
１２  検索受付部
１３  類似度算出部
１４  検索部
１５  出力部
１６  事例データベース
２０  検索端末
１００  文章検索装置
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  プログラム群
１０５  記憶装置
１０６  ドライブ装置
１０７  通信インタフェース
１０８  入出力インタフェース
１０９  バス
１１０  記憶媒体
１１１  通信ネットワーク
１２１  算出部
１２２  検索部
【図１】
2020140606.tif 000003
【図２】
2020140606.tif 000004
【図３】
2020140606.tif 000005
【図４】
2020140606.tif 000006
【図５】
2020140606.tif 000007
【図６】
2020140606.tif 000008
【図７】
2020140606.tif 000009
【図８】
2020140606.tif 000010
【図９】
2020140606.tif 000011
【図１０】
2020140606.tif 000012
【図１１】
2020140606.tif 000013
【図１２】
2020140606.tif 000014