JP2019079438A - Answer output program, answer output method, and information processing apparatus - Google Patents
Answer output program, answer output method, and information processing apparatus Download PDFInfo
- Publication number
- JP2019079438A JP2019079438A JP2017207625A JP2017207625A JP2019079438A JP 2019079438 A JP2019079438 A JP 2019079438A JP 2017207625 A JP2017207625 A JP 2017207625A JP 2017207625 A JP2017207625 A JP 2017207625A JP 2019079438 A JP2019079438 A JP 2019079438A
- Authority
- JP
- Japan
- Prior art keywords
- question
- faq
- search word
- answer
- processing apparatus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、回答出力プログラム、回答出力方法および情報処理装置に関する。 The present invention relates to an answer output program, an answer output method, and an information processing apparatus.
近年、オペレータのスキル平準化や回答リードタイムの短縮化のため、FAQ(Frequently Asked Question)システムを導入するコールセンタが増えている。また、外部にFAQを公開して、コールセンタへの問い合わせ削減を図ることも行われている。 In recent years, call centers have been increasing to introduce a frequently asked question (FAQ) system in order to level the skills of operators and shorten the response lead time. In addition, the FAQ is disclosed to the outside to reduce the number of inquiries to the call center.
先行技術としては、例えば、複数の識別器各々の識別結果および真のクラスを2次学習データとして用いて、統合識別器の学習を行うものがある。また、追加素性情報候補が追加された新たな学習モデル情報の回答候補抽出の精度と、元の学習モデル情報の回答候補抽出の精度とを比較し、回答候補抽出の精度が所定値以上向上している場合には、新たな学習モデル情報をDBに保持させたままとする技術がある。また、操作履歴を示す履歴データを解析し、解析結果に基づいて、履歴データに含まれるキーワードを抽出して重み付けし、このキーワードをインデックスDBへ登録する技術がある。また、基準キーワードを含まない文献情報において、基準キーワードに対応する可能性のあるキーワードを検出し、基準キーワードの平均順位と対応キーワード候補の順位を比較することにより、基準キーワードに対応するキーワードを検出する技術がある。 In the prior art, for example, there is one in which learning of the integrated classifier is performed using the discrimination result and the true class of each of the plurality of classifiers as secondary learning data. In addition, the accuracy of answer candidate extraction of the new learning model information to which additional feature information candidates have been added is compared with the accuracy of answer candidate extraction of the original learning model information, and the accuracy of answer candidate extraction is improved by a predetermined value or more. If there is a problem, there is a technology that keeps the new learning model information in the DB. Further, there is a technique of analyzing history data indicating an operation history, extracting and weighting a keyword included in the history data based on the analysis result, and registering the keyword in the index DB. Also, in the document information that does not include the reference keyword, a keyword that may correspond to the reference keyword is detected, and the average priority of the reference keyword is compared with the corresponding keyword candidate to detect the keyword corresponding to the reference keyword. Have the technology to
しかしながら、従来技術では、入力された質問に対して回答候補を表示することができない場合がある。 However, in the prior art, there are cases where it is not possible to display the answer candidate for the input question.
一つの側面では、本発明は、入力された質問に対応する回答候補がなくても、他の質問を推定して回答候補を出力することを目的とする。 In one aspect, the present invention aims to estimate another question and output the answer candidate even if there is no answer candidate corresponding to the inputted question.
1つの実施態様では、第1の質問の入力を受け付け、受け付けた前記第1の質問に対応する回答候補がない場合、質問に対応する回答候補がないときに後続して入力を受け付けた他の質問であって、前記他の質問に対して表示されたいずれかの回答候補が選択された前記他の質問を、前記質問と対応付けて記憶する記憶部の記憶内容に基づく機械学習を行って、前記第1の質問に後続して入力される第2の質問を特定し、特定した前記第2の質問に対応する回答候補を出力する、回答出力プログラムが提供される。 In one embodiment, the input of the first question is accepted, and when there is no answer candidate corresponding to the accepted first question, the other input is accepted subsequently when there is no answer candidate corresponding to the question Machine learning is performed based on the storage content of a storage unit that stores the other question, which is a question and any answer candidate displayed for the other question is selected in association with the question An answer output program is provided, which identifies a second question input following the first question, and outputs answer candidates corresponding to the identified second question.
本発明の一側面によれば、入力された質問に対応する回答候補がなくても、他の質問を推定して回答候補を出力することができる。 According to one aspect of the present invention, even if there is no answer candidate corresponding to the input question, another question can be estimated and the answer candidate can be output.
以下に図面を参照して、本発明にかかる回答出力プログラム、回答出力方法および情報処理装置の実施の形態を詳細に説明する。 Hereinafter, with reference to the drawings, embodiments of an answer output program, an answer output method, and an information processing apparatus according to the present invention will be described in detail.
(実施の形態)
図1は、実施の形態にかかる回答出力方法の一実施例を示す説明図である。図1において、情報処理装置101は、質問に対応する回答候補を出力するコンピュータである。質問は、何らかの問題の解決方法を問いただすためのものである。質問は、例えば、商品やサービスについての質問である。質問は、単語または複数の単語の組み合わせによって表現されてもよいし、1または複数の文章によって表現されてもよい。
Embodiment
FIG. 1 is an explanatory view showing an example of the answer output method according to the embodiment. In FIG. 1, the
また、回答候補は、問題を解決するための情報である。すなわち、質問に対応する回答候補は、質問された問題の解決方法を示す回答の候補である。回答候補は、例えば、FAQである。FAQは、「頻繁に尋ねられる質問」の略であり、あらかじめ予想される質問に対して、質問と回答をまとめたものである。 Also, the answer candidate is information for solving the problem. That is, the answer candidate corresponding to the question is an answer candidate indicating how to solve the question in question. The answer candidate is, for example, an FAQ. The FAQ is an abbreviation of "frequently asked questions" and is a collection of questions and answers in response to questions that are expected in advance.
ここで、コールセンタやサポートセンタでは、オペレータのスキル平準化や回答リードタイムの短縮化のため、FAQシステムが導入されていることが多い。FAQシステムを適切に運用すると、一次回答率や顧客満足度の向上につながるため、コールセンタ等においてFAQシステムは重要な位置付けにある。 Here, in a call center or a support center, a FAQ system is often introduced in order to level the skill of the operator and shorten the answer lead time. Proper operation of the FAQ system leads to an increase in primary response rate and customer satisfaction, so the FAQ system is in an important position in call centers and the like.
また、企業の中には、インターネット上に自社のFAQを公開しているところもある。社外にFAQサイトを公開することで、顧客自身がFAQを閲覧できるようになるため、顧客の利便性の向上やコールセンタ等への問い合わせの削減が期待できる。 Also, some companies have published their FAQs on the Internet. By publishing the FAQ site outside the company, customers themselves can view the FAQ, so it can be expected to improve customer convenience and reduce the number of inquiries to call centers etc.
一方で、FAQの内容は陳腐化しやすいため、定期的な見直しを行うことが望ましいが、FAQの見直しにかかる運用負荷は大きい。例えば、FAQマスタに登録されるFAQの数は、数千〜数万個程度となることもあり、それらFAQの内容を短期間に人手で見直すのは非常に負荷がかかる。 On the other hand, it is desirable to conduct regular review because the contents of the FAQ are easily obsoleted, but the operational load for reviewing the FAQ is large. For example, the number of FAQs registered in the FAQ master may be several thousands to several tens of thousands, and manually reviewing the contents of these FAQs in a short time is very expensive.
このため、FAQの見直し作業が、商品やサービスの名称変更や新規投入等に追随できず、質問に対して1件もFAQを提示できない、いわゆる、0件ヒットを招くおそれがある。また、チャット形式で質問を受け付ける場合、タイプミスや変換ミスが生じていても確認や修正をせずに検索を始めてしまうケースがある。このような場合は、0件ヒットとなることが多い。 For this reason, the review operation of the FAQ can not follow the name change or new introduction of the product or service, and there is a risk of causing so-called 0 hits in which no one FAQ can be presented for the question. In addition, in the case of accepting a question in a chat format, there is a case where a search is started without confirmation or correction even if there is a typo or conversion error. In such a case, there are often 0 hits.
0件ヒットが発生すると、利用者は質問を入力し直して再検索することになる。しかし、利用者によっては、質問を入力し直すことが面倒なため、問題解決をあきらめてしまうこともある。したがって、利用者から入力された質問に対して、何らかの検索結果を提示することは重要である。一方で、質問に何ら関係のないFAQを出力しても問題の解決にはならず、ひいては、コールセンタ等の信頼性の低下につながるおそれがある。 If 0 hits occur, the user re-enters the question and re-searches. However, depending on the user, it may be troublesome to re-enter the question, and may give up solving the problem. Therefore, it is important to present some search results for the questions input by the user. On the other hand, outputting a FAQ that has nothing to do with questions does not solve the problem, which may lead to a reduction in the reliability of a call center or the like.
そこで、本実施の形態では、入力された質問に対応する回答候補がなくても、他の質問を推定して回答候補を出力する回答出力方法について説明する。以下、情報処理装置101の処理例について説明する。
Therefore, in the present embodiment, an answer output method will be described which estimates another question and outputs an answer candidate even if there is no answer candidate corresponding to the input question. Hereinafter, an exemplary process of the
(1)情報処理装置101は、第1の質問の入力を受け付ける。入力される質問は、単語または複数の単語の組み合わせであってもよいし、1または複数の文章であってもよい。質問を入力するユーザは、例えば、コールセンタ等のオペレータや、FAQサイトを利用する利用者である。図1の例では、第1の質問「X%#」の入力を受け付けた場合を想定する。
(1) The
(2)情報処理装置101は、受け付けた第1の質問に対応する回答候補の有無を判定する。回答候補は、例えば、FAQである。質問に対応する回答候補は、例えば、FAQシステムやFAQサイトにおいて採用されている既存の検索アルゴリズムを用いて検索される、質問に対する検索結果(FAQ)である。
(2) The
具体的には、例えば、情報処理装置101は、受け付けた第1の質問を形態素解析して形態素に分解する。つぎに、情報処理装置101は、FAQマスタ(例えば、後述の図2に示すFAQマスタ220)から、所定の検索条件にしたがって、分解した形態素に対応するFAQを検索する。ここで、FAQが検索されなかった場合、情報処理装置101は、第1の質問に対応する回答候補がないと判定する。
Specifically, for example, the
図1の例では、受け付けた第1の質問「X%#」に対応する回答候補がないと判定された場合を想定する。なお、情報処理装置101は、受け付けた第1の質問に対応する回答候補を、他のコンピュータにアクセスして検索することにしてもよい。
In the example of FIG. 1, it is assumed that there is no answer candidate corresponding to the received first question "X% #". The
(3)情報処理装置101は、回答候補がないと判定した場合、記憶部110を参照して、受け付けた第1の質問に後続して入力される第2の質問を特定する。具体的には、例えば、情報処理装置101は、記憶部110の記憶内容に基づく機械学習を行って、第1の質問に後続して入力される第2の質問を特定する。
(3) If the
ここで、機械学習とは、コンピュータが、データから学習して、パターンや傾向を導き出し、将来予測や意思決定を可能にすることである。記憶部110は、質問と対応付けて、当該質問に対応する回答候補がないときに後続して入力を受け付けた他の質問を記憶する。ここで、他の質問は、他の質問に対して表示されたいずれかの回答候補が選択された質問である。すなわち、記憶部110は、機械学習に用いる教師データを記憶する。 Here, machine learning is that a computer learns from data, derives patterns and trends, and enables future prediction and decision making. The storage unit 110 stores, in association with the question, another question that has been input and received subsequently when there is no answer candidate corresponding to the question. Here, the other question is a question for which any answer candidate displayed for the other question is selected. That is, the storage unit 110 stores teacher data used for machine learning.
より詳細に説明すると、記憶部110は、質問に対応する回答候補がないときに後続して入力を受け付けた他の質問を、当該質問に対応付けた教師データ(まいご)を記憶する。また、他の質問は、例えば、他の質問に対して上位に表示された所定数Nの回答候補のいずれかが選択された質問であってもよい。 If it explains in more detail, storage part 110 memorizes the teacher data (music) which matched the other question which continued and accepted the input, when there is no answer candidate corresponding to a question. Further, the other question may be, for example, a question in which any one of the predetermined number N of answer candidates displayed at the top of the other question is selected.
所定数Nは、任意に設定可能である。所定数Nは、例えば、質問に対する回答候補を表示する画面の1ページ目に表示される回答候補の上限数に設定される。FAQシステムやFAQサイトでは、所定数Nは、30程度の値に設定される。チャットボットでは、所定数Nは、5程度の値に設定される。 The predetermined number N can be set arbitrarily. The predetermined number N is set to, for example, the upper limit number of answer candidates displayed on the first page of the screen displaying the answer candidates for the question. In the FAQ system or the FAQ site, the predetermined number N is set to a value of about 30. In the chatbot, the predetermined number N is set to a value of about five.
すなわち、他の質問は、他の質問に対して検索結果の1ページ目に表示されたいずれかの回答候補が利用者によって照会(選択)された質問であり、問題解決のための回答が得られた可能性がある質問である。このような他の質問を、先行して入力された質問に対応付けた教師データを用いて機械学習することで、第1の質問に後続して入力される質問であって、当該質問に対して1ページ目に表示されたいずれかの回答候補が選択される可能性が高い質問の特徴を導き出す。 In other words, the other question is a question for which one of the answer candidates displayed on the first page of the search result for the other question is inquired (selected) by the user, and the answer for solving the problem is obtained. Is a question that may have been By machine learning such other questions using teacher data associated with the previously input questions, it is a question that is input subsequent to the first question, and the question The feature of the question that is likely to be selected from any of the answer candidates displayed on the first page is derived.
図1の例では、第1の質問「X%#」に後続して入力される第2の質問「XXX」が特定された場合を想定する。 In the example of FIG. 1, it is assumed that a second question “XXX” input following the first question “X% #” is identified.
(4)情報処理装置101は、特定した第2の質問に対応する回答候補を出力する。図1の例では、情報処理装置101は、例えば、FAQマスタから、特定した第2の質問「XXX」に対応する回答候補を検索する。ここでは、第2の質問「XXX」に対応する回答候補1〜5が検索された場合を想定する。この場合、情報処理装置101は、検索した回答候補1〜5を出力する。
(4) The
このように、情報処理装置101によれば、入力された第1の質問に対応する回答候補がなくても、過去のユーザの操作履歴をもとに、第1の質問に置き換わる第2の質問を推定して回答候補を出力することができる。第2の質問は、例えば、第1の質問に後続して入力される質問であって、当該質問に対して表示されたいずれかの回答候補が選択される可能性が高い質問である。このため、0件ヒットとなる質問が入力されても、問題解決につながるような適切な回答候補を出力することができる。
As described above, according to the
なお、情報処理装置101は、上記(3)において特定した第2の質問を、第1の質問と対応付けて記憶部110に記憶することにしてもよい。この場合、情報処理装置101は、再び第1の質問の入力を受け付けた場合に、記憶部110を参照して、第1の質問に対応する第2の質問を特定することにしてもよい。これにより、0件ヒットとなる質問が再度入力された際に、機械学習を実施することなく、他の質問を推定して回答候補を出力することが可能となる。
The
また、情報処理装置101は、上記(3)において特定した第2の質問に対応する回答候補を、第1の質問と対応付けて記憶部110に記憶することにしてもよい。この場合、情報処理装置101は、再び第1の質問の入力を受け付けた場合に、記憶部110を参照して、第1の質問に対応する回答候補を出力することにしてもよい。これにより、0件ヒットとなる質問が再度入力された際に、機械学習を実施することなく、当該質問に対応する回答候補を出力することが可能となる。
In addition, the
ただし、時間の経過とともに新たな教師データ(まいご)が記憶部110に蓄積され、ある質問に後続して入力される他の質問の傾向は変化する。したがって、第2の質問は、例えば、第1の質問に対応する回答候補がないと判定した際に、その都度特定することが望ましい。また、第1の質問と対応付けて記憶部110に記憶する第2の質問は、例えば、定期的に見直すことが望ましい。 However, with the elapse of time, new teacher data (musical data) is stored in the storage unit 110, and the tendency of other questions subsequently input after a certain question changes. Therefore, it is desirable to specify the second question each time, for example, when it is determined that there is no answer candidate corresponding to the first question. In addition, it is desirable that, for example, the second question stored in the storage unit 110 in association with the first question be periodically reviewed.
(回答出力システム200のシステム構成例)
つぎに、図1に示した情報処理装置101を含む回答出力システム200のシステム構成例について説明する。回答出力システム200は、例えば、コールセンタ等のFAQシステムに適用されてもよく、また、インターネット上に公開されるFAQサイトに適用されてもよい。
(Example of system configuration of answer output system 200)
Next, a system configuration example of the
図2は、回答出力システム200のシステム構成例を示す説明図である。図2において、回答出力システム200は、情報処理装置101と、複数の端末201(図2の例では、3台)と、を含む。回答出力システム200において、情報処理装置101および複数の端末201は、有線または無線のネットワーク210を介して接続される。ネットワーク210は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。
FIG. 2 is an explanatory view showing a system configuration example of the
ここで、情報処理装置101は、質問に対応する回答候補を出力する。以下の説明では、回答候補として「FAQ」を例に挙げて説明する場合がある。また、情報処理装置101は、FAQマスタ220、アクセスログDB(Database)230、教師データ(よゐこ)DB240、教師データ(わるいこ)DB250および教師データ(まいご)DB260を有する。情報処理装置101は、例えば、サーバである。
Here, the
なお、各種DB220,230,240,250,260等の記憶内容については、図4〜図8を用いて後述する。
The stored contents of the
端末201は、回答出力システム200のユーザが使用するコンピュータである。回答出力システム200のユーザは、例えば、コールセンタのオペレータや、FAQサイトの利用者である。端末201は、例えば、PC(Personal Computer)、スマートフォン、タブレット型PCなどである。
The terminal 201 is a computer used by the user of the
(情報処理装置101のハードウェア構成例)
図3は、情報処理装置101のハードウェア構成例を示すブロック図である。図3において、情報処理装置101は、CPU(Central Processing Unit)301と、メモリ302と、I/F(Interface)303と、ディスクドライブ304と、ディスク305と、を有する。また、各構成部は、バス300によってそれぞれ接続される。
(Hardware configuration example of the information processing apparatus 101)
FIG. 3 is a block diagram showing an example of the hardware configuration of the
ここで、CPU301は、情報処理装置101の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMがOS(Operating System)のプログラムを記憶し、ROMがアプリケーションプログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
Here, the
I/F303は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して外部のコンピュータ(例えば、図2に示した端末201)に接続される。そして、I/F303は、ネットワーク210と装置内部とのインターフェースを司り、外部のコンピュータからのデータの入出力を制御する。I/F303には、例えば、モデムやLANアダプタなどを採用することができる。
The I /
ディスクドライブ304は、CPU301の制御に従ってディスク305に対するデータのリード/ライトを制御する。ディスク305は、ディスクドライブ304の制御で書き込まれたデータを記憶する。ディスク305としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
The
なお、情報処理装置101は、上述した構成部のほかに、例えば、SSD(Solid State Drive)、入力装置、ディスプレイ等を有することにしてもよい。また、図2に示した端末201についても、情報処理装置101と同様のハードウェア構成により実現することができる。ただし、端末201は、上述した構成部のほかに、入力装置、ディスプレイ等を有する。
The
(各種DB220,230,240,250,260等の記憶内容)
つぎに、図4〜図8を用いて、情報処理装置101が有する各種DB220,230,240,250,260等の記憶内容について説明する。
(Memory contents of
Next, storage contents of the
図4は、FAQマスタ220の記憶内容の一例を示す説明図である。図4において、FAQマスタ220は、FAQ番号、質問および回答のフィールドを有し、各フィールドに情報を設定することで、FAQ(例えば、FAQ400−1,400−2)をレコードとして記憶する。
FIG. 4 is an explanatory view showing an example of the storage content of the
ここで、FAQ番号は、FAQを一意に識別する識別子である。FAQ400−#の「#」は、FAQ番号に対応する。質問は、あらかじめ予想される質問である。回答は、あらかじめ予想される質問に対する回答である。例えば、FAQ400−1は、質問「PCを初期状態に戻す方法を教えてください。」と、回答「トラブルが発生し正常に動作しなくなった場合などに、リカバリする方法は、次のとおりです。・・・」と、をまとめたものである。 Here, the FAQ number is an identifier that uniquely identifies the FAQ. The "#" in the FAQ 400- # corresponds to the FAQ number. The questions are questions that are expected in advance. The answer is an answer to a question that is expected in advance. For example, in FAQ 400-1, the question "Please tell me how to return the PC to its initial state." And the answer "How to recover, etc., when a problem occurs and it does not work properly is as follows. "..." is summarized.
図5は、アクセスログDB230の記憶内容の一例を示す説明図である。図5において、アクセスログDB230は、セッション番号、日時、タイプ、検索ワード、照会FAQ、順位および検索リストのフィールドを有する。各フィールドに情報を設定することで、アクセスログ、例えば、アクセスログ500−1〜500−3がレコードとして記憶される。
FIG. 5 is an explanatory view showing an example of the storage content of the
ここで、セッション番号は、情報処理装置101と端末201とのセッションを一意に識別する識別子である。セッションは、2点間(装置間)の通信において、情報をやり取りするために設定する論理的な接続関係である。日時は、端末201において操作が行われた日時である。
Here, the session number is an identifier that uniquely identifies a session between the
タイプは、端末201において行われた操作のタイプである。タイプとしては、例えば、検索、照会などが挙げられる。タイプ「検索」は、検索ワードに対応するFAQを検索する操作を表す。タイプ「照会」は、検索ワードに対するFAQを選択する操作、すなわち、FAQの内容を照会する操作を表す。 The type is the type of operation performed at the terminal 201. Types include, for example, search, query, and the like. The type "search" represents an operation of searching for the FAQ corresponding to the search word. The type “query” represents an operation of selecting a FAQ for a search word, ie, an operation of querying the contents of the FAQ.
検索ワードは、端末201において入力される質問に相当する。検索ワードは、単語または複数の単語の組み合わせであってもよいし、1または複数の文章であってもよい。照会FAQは、検索ワードに対する選択操作を受け付けたFAQ、すなわち、照会されたFAQのFAQ番号である。 The search word corresponds to the question input at the terminal 201. The search word may be a word or a combination of words, or may be one or more sentences. The inquiry FAQ is the FAQ that has received the selection operation for the search word, that is, the FAQ number of the inquiry FAQ.
順位は、検索ワードに対してFAQが表示された際に、当該FAQが上から何番目に表示されるかを示す順位である。検索リストは、検索ワードに基づきFAQマスタ220(例えば、図4参照)から検索されたFAQのFAQ番号をリスト化したものである。 The rank is a rank indicating the number of the FAQ displayed from the top when the FAQ is displayed for the search word. The search list is a list of FAQ numbers of FAQs searched from the FAQ master 220 (see, for example, FIG. 4) based on a search word.
図6は、教師データ(よゐこ)DB240の記憶内容の一例を示す説明図である。図6において、教師データ(よゐこ)DB240は、日時、照会FAQおよび形態素解析後検索ワードのフィールドを有する。各フィールドに情報を設定することで、教師データ(よゐこ)、例えば、教師データ(よゐこ)600−1,600−2がレコードとして記憶される。
FIG. 6 is an explanatory diagram of an example of the storage content of the teacher data (Yokko)
ここで、日時は、照会FAQが照会された日時である。照会FAQは、検索ワードに対して1ページ目に表示された際に選択操作を受け付けたFAQ、すなわち、照会されたFAQのFAQ番号である。1ページ目に表示されるFAQは、検索ワードに対するFAQのうち上位N件のFAQである。形態素解析後検索ワードは、照会FAQが照会されたときの検索ワードを形態素解析して検出された1または複数の形態素である。 Here, the date is the date when the inquiry FAQ is referred to. The inquiry FAQ is the FAQ that has received the selection operation when displayed on the first page for the search word, that is, the FAQ number of the inquiry FAQ. The FAQ displayed on the first page is the top N FAQs among the FAQs for the search word. The morphologically analyzed search word is one or more morphemes detected by morphologically analyzing the search word when the query FAQ is queried.
図7は、教師データ(わるいこ)DB250の記憶内容の一例を示す説明図である。図7において、教師データ(わるいこ)DB250は、日時、非照会FAQおよび形態素解析後検索ワードのフィールドを有する。各フィールドに情報を設定することで、教師データ(わるいこ)、例えば、教師データ(わるいこ)700−1〜700−3がレコードとして記憶される。
FIG. 7 is an explanatory diagram of an example of the storage content of the teacher data (bad)
ここで、日時は、非照会FAQが照会されなかった日時、例えば、非照会FAQが照会されずに情報処理装置101と端末201とのセッションが切断された日時である。非照会FAQは、検索ワードに対して1ページ目に表示された際に選択操作を受け付けなかったFAQ、すなわち、照会されなかったFAQのFAQ番号である。形態素解析後検索ワードは、非照会FAQが照会されなかったときの検索ワードを形態素解析して検出された1または複数の形態素である。
Here, the date and time is the date and time when the non-inquiring FAQ was not referred to, for example, the date and time when the session between the
図8は、教師データ(まいご)DB260の記憶内容の一例を示す説明図である。図8において、教師データ(まいご)DB260は、日時、代替ワードおよび検索ワードのフィールドを有する。各フィールドに情報を設定することで、教師データ(まいご)、例えば、教師データ(まいご)800−1がレコードとして記憶される。
FIG. 8 is an explanatory view showing an example of the storage content of the teacher data (music)
ここで、日時は、検索ワードに対してFAQマスタ220から1件もFAQが検索されなかった日時、例えば、当該検索ワードに対応するFAQを検索する操作が行われた日時である。代替ワードは、1件もFAQが表示されなかった検索ワードに後続して入力を受け付けた他の検索ワードであって、当該他の検索ワードに対して1ページ目に表示されたいずれかのFAQが選択された検索ワードである。検索ワードは、FAQマスタ220から1件もFAQが検索されなかった質問である。検索ワードは、例えば、検索ワードを形態素解析して検出された1または複数の形態素によって表現されてもよい。
Here, the date is the date when no FAQ was searched from the
(FAQ画面900の画面例)
つぎに、端末201に表示されるFAQ画面900の画面例について説明する。以下の説明では、端末201に表示される操作画面のボックス、ボタン等をユーザが選択する操作として、不図示の入力装置を用いたクリック操作を行う場合を例に挙げて説明する。
(Example screen of FAQ screen 900)
Next, a screen example of the
図9は、FAQ画面900の画面例を示す説明図である。図9において、FAQ画面900は、FAQを検索したり、FAQを照会したりする操作画面の一例である。FAQ画面900において、ボックス901をクリックすると、検索ワードを入力することができる。図9の例では、検索ワード「FJ10 初期化」が入力されている。
FIG. 9 is an explanatory view showing an example of the
また、FAQ画面900において、ボタン902をクリックすると、ボックス901に入力された検索ワードに対応するFAQを検索することができる。具体的には、ボタン902をクリックすると、ボックス901に入力された検索ワードが、端末201から情報処理装置101に送信される。
Also, when the
この結果、情報処理装置101から端末201に検索ワードに対する検索結果が送信され、検索されたFAQが表示エリア910にリスト化されて表示される。この際、上位N件のFAQは、1ページ目に表示される。それ以外のFAQは、2ページ以降に表示される。Nは、任意に設定可能であり、5〜30程度の値に設定される。ここでは、Nは「N=5」である。
As a result, the search result for the search word is transmitted from the
図9の例では、検索ワード「FJ10 初期化」に対応するFAQが検索された結果、上位5件のFAQ911〜915が、1ページ目の検索結果として表示エリア910に表示されている。なお、FAQ画面900において、ボタン903をクリックすると、2ページ目の検索結果を表示することができる。
In the example of FIG. 9, as a result of searching for the FAQ corresponding to the search word “FJ10 initialization”, the top five FAQs 91 1 to 915 are displayed in the
また、FAQ画面900において、表示エリア910に表示されたいずれかのFAQをクリックすると、当該FAQの内容を照会することができる。例えば、FAQ911をクリックすると、FAQ911の内容(質問と回答)を照会することができる。また、表示エリア910に表示されたいずれかのFAQがクリックされると、当該FAQが選択されたことを示す選択結果が、端末201から情報処理装置101に送信される。
In addition, when any FAQ displayed in the
(情報処理装置101の機能的構成例)
図10は、情報処理装置101の機能的構成例を示すブロック図である。図10において、情報処理装置101は、受付部1001と、検索部1002と、決定部1003と、出力制御部1004と、生成部1005と、判定部1006と、特定部1007と、記憶部1010と、を含む。受付部1001〜特定部1007は制御部となる機能であり、具体的には、例えば、図3に示したメモリ302、ディスク305などの記憶装置に記憶されたプログラムをCPU301に実行させることにより、または、I/F303により、その機能を実現する。各機能部の処理結果は、例えば、メモリ302、ディスク305などの記憶装置に記憶される。
(Example of functional configuration of the information processing apparatus 101)
FIG. 10 is a block diagram showing an example of a functional configuration of the
また、記憶部1010は、メモリ302、ディスク305などの記憶装置により実現される。例えば、記憶部1010は、各種DB220,230,240,250,260,1900(後述の図19参照)等を記憶する。なお、記憶部1010は、情報処理装置101とは異なる他のコンピュータが有することにしてもよい。この場合、情報処理装置101は、他のコンピュータにアクセスして、記憶部1010の記憶内容を参照することができる。
The
受付部1001は、質問の入力を受け付ける。質問は、何らかの問題の解決方法を問いただすための検索ワードであり、単語または複数の単語の組み合わせであってもよいし、1または複数の文章であってもよい。質問の入力は、例えば、図9に示したFAQ画面900において行われる。具体的には、例えば、受付部1001は、端末201から、FAQ画面900に入力された検索ワードを受信することにより、検索ワードの入力を受け付ける。以下の説明では、質問を「検索ワード」と表記する場合がある。
The receiving
検索部1002は、検索ワードに対応するFAQを検索する。具体的には、例えば、検索部1002は、検索ワードを形態素解析して形態素に分解する。つぎに、検索部1002は、図4に示したFAQマスタ220から、所定の検索条件にしたがって、分解した形態素に対応するFAQを検索する。
The
より詳細に説明すると、例えば、検索部1002は、検索ワードを形態素解析して検出された形態素についてのAND条件またはOR条件を設定して、FAQマスタ220からFAQを検索してもよい。この際、検索部1002は、例えば、各FAQの過去のアクセス数(照会数)や検索ワードとの類似度を考慮して、アクセス数が多いFAQや類似度が高いFAQを検索することにしてもよい。
More specifically, for example, the
これにより、検索ワードに対応するFAQを特定することができる。検索結果は、例えば、タイプ「検索」のアクセスログとして、図5に示したアクセスログDB230に記憶される。具体的には、アクセスログのセッション番号には、検索ワードを受け付けた端末201と情報処理装置101とのセッションのセッション番号が設定される。アクセスログの日時には、検索ワードを受け付けた日時が設定される。アクセスログの検索ワードには、受け付けた検索ワードが設定される。アクセスログの照会FAQおよび順位は「空白」である。アクセスログの検索リストには、検索されたFAQのFAQ番号が設定される。ただし、検索ワードに対応するFAQが1件も検索されなかった場合、アクセスログの検索リストには「−(null)」が設定される。
Thereby, the FAQ corresponding to the search word can be specified. The search result is stored, for example, in the
決定部1003は、教師データ(よゐこ)と教師データ(わるいこ)とを記憶する記憶部1010の記憶内容に基づく機械学習を行って、検索された複数のFAQの中から、検索ワードに対する1または複数のFAQを決定する。ここで、教師データ(よゐこ)は、質問に対する選択操作を受け付けたFAQを当該質問に対応付けた情報である。教師データ(わるいこ)は、質問に対する選択操作を受け付けなかったFAQを当該質問に対応付けた情報である。
The
具体的には、例えば、決定部1003は、図6に示した教師データ(よゐこ)DB240を参照して、ナイーブベイズ分類器による機械学習を行って、検索された複数のFAQそれぞれについて、第1の確率を算出する。第1の確率は、入力を受け付けた検索ワードに対してFAQが表示された際に、当該FAQが選択される確率である。
Specifically, for example, with reference to the teacher data (Yokko)
これにより、検索された複数のFAQそれぞれが、1ページ目に表示された際に照会される可能性の高さを判断する指標値、換言すれば、検索ワードとの関連性の強さを表す指標値を得ることができる。 Thereby, each of a plurality of searched FAQs represents an index value for determining the likelihood of being referred to when displayed on the first page, in other words, the strength of the relevancy with the search word. An index value can be obtained.
また、決定部1003は、図7に示した教師データ(わるいこ)DB250を参照して、ナイーブベイズ分類器による機械学習を行って、検索された複数のFAQそれぞれについて、第2の確率を算出する。第2の確率は、入力を受け付けた検索ワードに対してFAQが表示された際に、当該FAQが選択されない確率である。
Further, the
これにより、検索された複数のFAQそれぞれが、1ページ目に表示された際に照会されない可能性の高さを判断する指標値、換言すれば、検索ワードとの関連性の弱さを表す指標値を得ることができる。 In this way, each of the plurality of FAQs searched is an index value for determining the possibility of not being inquired when it is displayed on the first page, in other words, an index indicating the weakness of the relevance to the search word You can get a value.
そして、決定部1003は、検索された複数のFAQそれぞれについて算出した第1の確率と第2の確率とに基づいて、検索された複数のFAQの中から、検索ワードに対する1または複数のFAQを決定する。これにより、第1の確率および第2の確率の両方を考慮して、検索ワードに対して表示するFAQを絞り込むことができる。
Then, the
より詳細に説明すると、例えば、決定部1003は、検索された複数のFAQのうち第2の確率が閾値α以上のFAQを除外したFAQを、第1の確率が高い順にソートした1または複数のFAQを、検索ワードに対する1または複数のFAQに決定する。閾値αは、任意に設定可能である。閾値αは、例えば、単位を[%]とすると、80程度の値に設定される。
Describing in more detail, for example, the
また、例えば、決定部1003は、第1の確率が高い上位N件のFAQを選択し、選択したFAQのうち第2の確率が閾値α以上のFAQを、検索ワードに対する1または複数のFAQに決定することにしてもよい。すなわち、決定部1003は、第1の確率が高い上位N件のFAQを絞り込んだ上で、第2の確率が閾値α以上のFAQを除外する。
Also, for example, the
なお、第1および第2の確率を算出する具体的な処理内容については、図15を用いて後述する。また、検索ワードに対するFAQの決定例については、図16を用いて後述する。 The specific processing contents for calculating the first and second probabilities will be described later with reference to FIG. In addition, an example of determination of the FAQ for the search word will be described later with reference to FIG.
出力制御部1004は、検索ワードに対する1または複数のFAQを出力する。具体的には、例えば、出力制御部1004は、検索ワードに対して、決定された1または複数のFAQを出力する。各FAQには、各FAQの順位(表示順序)を特定可能な情報が付与される。より詳細に説明すると、例えば、出力制御部1004は、端末201に対して、決定された1または複数のFAQを送信することにより、FAQ画面900の表示エリア910に、受け付けた検索ワードに対する1または複数のFAQを表示する制御を行う。
The
また、受付部1001は、検索ワードに対するFAQの選択操作を受け付ける。FAQの選択操作は、FAQの内容を照会するための操作であり、例えば、図9に示したFAQ画面900において行われる。具体的には、例えば、受付部1001は、端末201から、FAQ画面900において選択(クリック)されたFAQを示す選択結果を受信することにより、当該FAQの選択操作を受け付ける。
Further, the receiving
FAQの選択操作を受け付けた場合、タイプ「照会」のアクセスログがアクセスログDB230に記憶される。具体的には、アクセスログのセッション番号には、検索ワードを受け付けた端末201と情報処理装置101とのセッションのセッション番号が設定される。アクセスログの日時には、FAQの選択操作を受け付けた日時が設定される。アクセスログの検索ワードには、受け付けた検索ワードが設定される。アクセスログの照会FAQには、選択操作を受け付けたFAQのFAQ番号が設定される。アクセスログの順位には、選択操作を受け付けたFAQの順位が設定される。アクセスログの検索リストは「空白」である。これにより、検索ワードに対して表示された際に選択操作を受け付けたFAQを示すアクセスログを蓄積することができる。
When the selection operation of the FAQ is received, an access log of type “inquiry” is stored in the
生成部1005は、教師データ(よゐこ)を生成する。また、生成部1005は、教師データ(わるいこ)を生成する。また、生成部1005は、教師データ(まいご)を生成する。ここで、教師データ(まいご)は、検索ワードに対応するFAQがないときに後続して入力を受け付けた他の検索ワードを、当該検索ワードに対応付けた情報である。ただし、他の検索ワードは、例えば、他の検索ワードに対して1ページ目に表示されたいずれかのFAQが選択された検索ワードである。
The
具体的には、例えば、生成部1005は、アクセスログDB230から、セッション番号が同一のアクセスログを取得する。つぎに、生成部1005は、取得したアクセスログの日時に基づいて、取得したアクセスログを時系列にソートする。そして、生成部1005は、取得したアクセスログの中に、タイプ「照会」のアクセスログがあるか否かを判断する。
Specifically, for example, the
ここで、タイプ「照会」のアクセスログがある場合、生成部1005は、当該アクセスログから特定される照会FAQの順位に基づいて、照会FAQが、1ページ目に表示されたFAQ、すなわち、上位N件のFAQであるか否かを判断する。ここで、1ページ目に表示されたFAQである場合、タイプ「照会」のアクセスログから特定される照会FAQと形態素解析後検索ワードとを対応付けて表す教師データ(よゐこ)を生成する。形態素解析後検索ワードは、タイプ「照会」のアクセスログから特定される検索ワードを形態素解析して検出される1または複数の形態素である。
Here, if there is an access log of type “inquiry”, the
また、生成部1005は、タイプ「検索」のアクセスログの検索リストを参照して、検索ワードに対して表示された際に照会されなかったFAQ、すなわち、検索ワードに対する選択操作を受け付けなかったFAQがあるか否かを判断する。ここで、照会されなかったFAQがある場合、生成部1005は、照会されなかったFAQを非照会FAQとする教師データ(わるいこ)を生成する。教師データ(わるいこ)の形態素解析後検索ワードは、例えば、タイプ「照会」のアクセスログから特定される検索ワードから得られる。
Further, the
また、生成部1005は、タイプ「検索」のアクセスログの検索リストを参照して、FAQが1件も検索されなかった検索ワードがあるか否かを判断する。ここで、FAQが1件も検索されなかった検索ワードがある場合、生成部1005は、取得したアクセスログの日時に基づいて、当該検索ワードに後続して入力を受け付けた他の検索ワードがあるか否かを判断する。ただし、他の検索ワードは、当該他の検索ワードに対して1ページ目に表示されたいずれかのFAQが照会(選択)された検索ワードである。ここで、他の検索ワードがある場合、生成部1005は、他の検索ワードを代替ワードとする教師データ(まいご)を生成する。教師データ(まいご)の形態素解析後検索ワードは、例えば、他の検索ワードを形態素解析して検出される1または複数の形態素である。
Further, the
生成された教師データ(よゐこ)は、例えば、図6に示した教師データ(よゐこ)DB240に記憶される。生成された教師データ(わるいこ)は、例えば、図7に示した教師データ(わるいこ)DB250に記憶される。生成された教師データ(まいご)は、例えば、図8に示した教師データ(まいご)DB260に記憶される。
The generated teacher data (Yoshiko) is stored, for example, in the teacher data (Yokoko)
教師データ(よゐこ)、教師データ(わるいこ)および教師データ(まいご)の生成例については、図11〜図14を用いて後述する。 An example of generation of teacher data (Youko), teacher data (Rusiko) and teacher data (Mago) will be described later with reference to FIGS. 11 to 14.
なお、教師データ(よゐこ)と教師データ(わるいこ)とが蓄積されていない場合、情報処理装置101は、上述した第1および第2の確率を用いたFAQの絞り込みを行うことができない。このため、運用開始からある程度の期間は、情報処理装置101は、検索ワードに対して、検索されたFAQを出力することにしてもよい。この際、情報処理装置101は、例えば、検索された複数のFAQを、過去のアクセス数(照会数)が多い順にソートして出力することにしてもよい。より詳細に説明すると、例えば、出力制御部1004は、端末201に対して、検索されたFAQを送信することにより、FAQ画面900の表示エリア910に、受け付けた検索ワードに対するFAQを表示する制御を行う。これにより、教師データ(よゐこ)と教師データ(わるいこ)とを蓄積することができる。
In addition, when the teacher data (Yosukeko) and the teacher data (Rouiko) are not stored, the
また、決定部1003は、検索ワードに対する選択操作を受け付けたFAQを示すアクセスログに基づいて、閾値αを調整することにしてもよい。具体的には、例えば、決定部1003は、アクセスログDB230内のタイプ「照会」のアクセスログに基づいて、検索ワードに対する上位N件のFAQ、すなわち、1ページ目に表示されるFAQのいずれかが選択される確率を算出する。
In addition, the
以下の説明では、1ページ目に表示されるFAQのいずれかが選択される確率を「1ページ目ヒット率」と表記することがある。 In the following description, the probability that one of the FAQs displayed on the first page is selected may be referred to as “first page hit ratio”.
1ページ目ヒット率の算出は、例えば、所定期間ごとに行う。所定期間は、任意に設定可能であり、例えば、数週間〜数ヶ月程度の期間に設定される。この際、決定部1003は、例えば、直近所定期間分のアクセスログに基づいて、1ページ目ヒット率を算出する。これにより、直近のアクセス傾向が反映された1ページ目ヒット率を算出することができる。
The calculation of the first page hit rate is performed, for example, at predetermined intervals. The predetermined period can be set arbitrarily, and is set, for example, to a period of several weeks to several months. At this time, the
そして、決定部1003は、算出した1ページ目ヒット率の時系列変化に基づいて、閾値αを調整する。より詳細に説明すると、例えば、決定部1003は、1ページ目ヒット率が下降傾向にある場合に、閾値αを下げる。閾値αの下げ分は、任意に設定可能であり、例えば、単位を[%]とすると、1程度の値に設定される。
Then, the
閾値αの調整例については、図17および図18を用いて後述する。 An adjustment example of the threshold value α will be described later with reference to FIGS. 17 and 18.
判定部1006は、検索ワードに対応するFAQの有無を判定する。具体的には、例えば、判定部1006は、FAQマスタ220から検索ワードに対応するFAQが1件も検索されなかった場合、いわゆる、0件ヒットの場合に、検索ワードに対応するFAQがないと判定する。
The
また、判定部1006は、決定部1003によって検索ワードに対するFAQが1件も決定されなかった場合に、検索ワードに対応するFAQがないと判定することにしてもよい。より詳細に説明すると、例えば、判定部1006は、上述した第1および第2の確率を用いたFAQの絞り込みを行った結果、FAQが1件も残らなかった場合に、検索ワードに対応するFAQがないと判定することにしてもよい。
In addition, the
特定部1007は、検索ワードに対応するFAQがないと判定された場合、教師データ(まいご)を記憶する記憶部1010の記憶内容に基づく機械学習を行って、当該検索ワードに後続して入力される他の検索ワードを特定する。以下の説明では、判定部1006によってFAQがないと判定された検索ワードを「0件ヒット検索ワード」と表記する場合がある。
When it is determined that there is no FAQ corresponding to the search word, the
具体的には、例えば、特定部1007は、教師データ(まいご)DB260を参照して、ナイーブベイズ分類器による機械学習を行って、他の検索ワード(代替ワード)それぞれについて、0件ヒット検索ワードに後続して入力される第3の確率を算出する。そして、特定部1007は、他の検索ワードそれぞれについて算出した第3の確率に基づいて、0件ヒット検索ワードに後続して入力される代替ワードを特定する。
Specifically, for example, the identifying
より詳細に説明すると、例えば、特定部1007は、第3の確率が最大の他の検索ワードを、代替ワードとして特定することにしてもよい。また、特定部1007は、第3の確率が閾値β以上の他の検索ワードを、代替ワードとして特定することにしてもよい。閾値βは、任意に設定可能である。また、特定部1007は、第3の確率が閾値β以上で、かつ、最大の他の検索ワードを、代替ワードとして特定することにしてもよい。
More specifically, for example, the specifying
第3の確率を算出する具体的な処理内容については、図15を用いて後述する。 The specific processing content for calculating the third probability will be described later with reference to FIG.
出力制御部1004は、特定された代替ワードに対応するFAQを出力する。具体的には、例えば、まず、検索部1002は、代替ワードに対応するFAQを検索する。なお、複数の代替ワードが特定された場合、検索部1002は、複数の代替ワードそれぞれについて、FAQを検索することにしてもよい。
The
つぎに、決定部1003は、記憶部1010の記憶内容に基づく機械学習を行って、検索された複数のFAQの中から、代替ワードに対する1または複数のFAQを決定する。そして、出力制御部1004は、代替ワードに対して、決定された1または複数のFAQを出力する。なお、出力制御部1004は、検索された代替ワードに対応するFAQを出力することにしてもよい。
Next, the
これにより、入力された検索ワードに対応するFAQがなくても、過去のユーザの操作履歴(アクセスログ)をもとに、その検索ワード、すなわち、0件ヒット検索ワードに置き換わる代替ワードを推定してFAQを出力することができる。 Thus, even if there is no FAQ corresponding to the input search word, the search word, that is, an alternative word to be substituted for the 0 hit search word is estimated based on the operation history (access log) of the past user. Can output the FAQ.
(教師データの生成例)
つぎに、図11〜図14を用いて、教師データ(わるいこ)および教師データ(まいご)の生成例について説明する。ここでは、上位5件のFAQが1ページ目に表示されるFAQである場合を想定する(N=5)。
(Example of teacher data generation)
Next, an example of generation of teacher data (わ る) and teacher data (ま い) will be described using FIGS. 11 to 14. Here, it is assumed that the top 5 FAQs are FAQs displayed on the first page (N = 5).
図11は、アクセスログの具体例を示す説明図(その1)である。図12は、教師データの具体例を示す説明図(その1)である。図11において、アクセスログ1101〜1103は、時系列にソートされたセッション番号が同一のアクセスログの集合である。
FIG. 11 is an explanatory diagram (part 1) of a specific example of the access log. FIG. 12 is an explanatory view (part 1) of a specific example of teacher data. In FIG. 11,
この場合、生成部1005は、アクセスログ1101〜1103の中に、タイプ「照会」のアクセスログがあるか否かを判断する。ここで、アクセスログ1102,1103はタイプ「照会」のアクセスログである。このため、生成部1005は、タイプ「照会」のアクセスログがあると判断する。
In this case, the
つぎに、生成部1005は、タイプ「照会」のアクセスログ1102の順位に基づいて、照会FAQが、1ページ目に表示されたFAQであるか否かを判断する。ここで、アクセスログ1102の順位は、「1」であり、5以下である。このため、生成部1005は、アクセスログ1102の照会FAQが、1ページ目に表示されたFAQであると判断する。
Next, the
この場合、生成部1005は、図12に示すように、アクセスログ1102から特定される照会FAQ「011」と形態素解析後検索ワード「拡大、印刷」とを対応付けて表す教師データ(よゐこ)1201を生成する。
In this case, as illustrated in FIG. 12, the
同様に、生成部1005は、タイプ「照会」のアクセスログ1103の順位に基づいて、照会FAQが、1ページ目に表示されたFAQであるか否かを判断する。ここで、アクセスログ1103の順位は、「2」であり、5以下である。このため、生成部1005は、アクセスログ1103の照会FAQが、1ページ目に表示されたFAQであると判断する。
Similarly, the
この場合、生成部1005は、図12に示すように、アクセスログ1103から特定される照会FAQ「012」と形態素解析後検索ワード「拡大、印刷」とを対応付けて表す教師データ(よゐこ)1202を生成する。
In this case, as illustrated in FIG. 12, the
また、生成部1005は、タイプ「検索」のアクセスログ1101の検索リストを参照して、検索ワードに対して表示された際に照会されなかったFAQ、すなわち、検索ワードに対する選択操作を受け付けなかったFAQがあるか否かを判断する。ここで、FAQ番号「013」のFAQは照会されていない。
In addition, the
このため、生成部1005は、照会されなかったFAQがあると判断する。この場合、生成部1005は、図12に示すように、照会されなかったFAQ番号「013」のFAQを非照会FAQとする教師データ(わるいこ)1203を生成する。
For this reason, the
また、生成部1005は、タイプ「検索」のアクセスログの検索リストを参照して、FAQが1件も検索されなかった検索ワードがあるか否かを判断する。ここでは、FAQが1件も検索されなかった検索ワードは存在しない。この場合、生成部1005は、教師データ(まいご)を生成しない。
Further, the
図13は、アクセスログの具体例を示す説明図(その2)である。図14は、教師データの具体例を示す説明図(その2)である。図13において、アクセスログ1301〜1304は、時系列にソートされたセッション番号が同一のアクセスログの集合である。
FIG. 13 is an explanatory view (part two) of a specific example of the access log. FIG. 14 is an explanatory view (part 2) of a specific example of teacher data. In FIG. 13,
この場合、生成部1005は、アクセスログ1301〜1304の中に、タイプ「照会」のアクセスログがあるか否かを判断する。ここで、アクセスログ1303,1304はタイプ「照会」のアクセスログである。このため、生成部1005は、タイプ「照会」のアクセスログがあると判断する。
In this case, the
つぎに、生成部1005は、タイプ「照会」のアクセスログ1303の順位に基づいて、照会FAQが、1ページ目に表示されたFAQであるか否かを判断する。ここで、アクセスログ1303の順位は、「1」であり、5以下である。このため、生成部1005は、アクセスログ1303の照会FAQが、1ページ目に表示されたFAQであると判断する。
Next, the
この場合、生成部1005は、図14に示すように、アクセスログ1303から特定される照会FAQ「011」と形態素解析後検索ワード「拡大、印刷」とを対応付けて表す教師データ(よゐこ)1401を生成する。
In this case, as illustrated in FIG. 14, the
同様に、生成部1005は、タイプ「照会」のアクセスログ1304の順位に基づいて、照会FAQが、1ページ目に表示されたFAQであるか否かを判断する。ここで、アクセスログ1304の順位は、「2」であり、5以下である。このため、生成部1005は、アクセスログ1304の照会FAQが、1ページ目に表示されたFAQであると判断する。
Similarly, the
この場合、生成部1005は、図14に示すように、アクセスログ1304から特定される照会FAQ「012」と形態素解析後検索ワード「拡大、印刷」とを対応付けて表す教師データ(よゐこ)1402を生成する。
In this case, as illustrated in FIG. 14, the
また、生成部1005は、タイプ「検索」のアクセスログ1301,1302の検索リストを参照して、検索ワードに対して表示された際に照会されなかったFAQ、すなわち、検索ワードに対する選択操作を受け付けなかったFAQがあるか否かを判断する。ここで、FAQ番号「013」のFAQは照会されていない。
Further, the
このため、生成部1005は、照会されなかったFAQがあると判断する。この場合、生成部1005は、図14に示すように、照会されなかったFAQ番号「013」のFAQを非照会FAQとする教師データ(わるいこ)1403を生成する。
For this reason, the
また、生成部1005は、タイプ「検索」のアクセスログ1301,1302の検索リストを参照して、FAQが1件も検索されなかった検索ワードがあるか否かを判断する。ここでは、アクセスログ1301の検索リストは「−」であり、検索ワード「大きく印刷」はFAQが1件も検索されなかった検索ワードである。
In addition, the
この場合、生成部1005は、検索ワード「大きく印刷」に後続して入力を受け付けた他の検索ワードがあるか否かを判断する。ただし、他の検索ワードは、当該他の検索ワードに対して1ページ目に表示されたいずれかのFAQが照会(選択)された検索ワードである。
In this case, the
ここで、検索ワード「拡大、印刷」は、検索ワード「大きく印刷」に後続して入力を受け付けた他の検索ワードである。また、検索ワード「拡大、印刷」は、当該他の検索ワードに対して1ページ目に表示されたFAQ番号「001,002」のFAQが照会(選択)された検索ワードである。このため、生成部1005は、他の検索ワードがあると判断する。
Here, the search word “enlargement, print” is another search word that has received an input following the search word “large print”. Further, the search word “enlargement, print” is a search word for which the FAQ of the FAQ number “001, 002” displayed on the first page for the other search word is inquired (selected). Therefore, the
この場合、生成部1005は、図14に示すように、他の検索ワード「拡大、印刷」を代替ワードとして、代替ワード「拡大、印刷」と検索ワード「大きく印刷」とを対応付けた教師データ(まいご)1404を生成する。
In this case, as illustrated in FIG. 14, the
(第1、第2および第3の確率を算出する具体的な処理内容)
つぎに、図15を用いて、ナイーブベイズ分類器による機械学習を行って、第1、第2および第3の確率を算出する具体的な処理内容について説明する。
(Specific processing content to calculate the first, second and third probabilities)
Next, with reference to FIG. 15, specific processing contents for performing the machine learning by the naive Bayesian classifier to calculate the first, second, and third probabilities will be described.
図15は、分析DB1500の記憶内容の一例を示す説明図である。ここでは、第1の確率を例に挙げて、計算例について説明する。まず、決定部1003は、教師データ(よゐこ)DB240を参照して、分析DB1500を作成する。
FIG. 15 is an explanatory diagram of an example of the storage content of the
分析DB1500は、縦軸に「FAQ番号」、横軸に「キーワード」を設定し、キーワードごとに各FAQの照会回数を集計したものである。ただし、FAQ番号は、検索部1002によって検索された複数のFAQそれぞれのFAQ番号である。キーワードは、教師データ(よゐこ)DB240内の教師データ(よゐこ)の形態素解析後検索ワードに含まれる形態素である。
The
ここでは、検索ワードを「キーワード1,キーワード2」とする。また、検索部1002によって検索された検索ワード「キーワード1,キーワード2」に対応する複数のFAQそれぞれのFAQ番号を「1,2,3,4,5」とする。また、教師データ(よゐこ)DB240内の教師データ(よゐこ)の形態素解析後検索ワードに含まれる形態素を「キーワード1,キーワード2,キーワード3,キーワード4,キーワード5,キーワード6」とする。
Here, the search word is “
具体的には、例えば、決定部1003は、教師データ(よゐこ)DB240から未選択の教師データ(よゐこ)を選択する。ここで、選択された教師データ(よゐこ)の照会FAQを「1」とし、形態素解析後検索ワードにキーワード1、キーワード2が含まれるとする。この場合、決定部1003は、FAQ番号「1」のキーワード1の照会回数をインクリメントする。また、決定部1003は、FAQ番号「1」のキーワード2の照会回数をインクリメントする。決定部1003は、教師データ(よゐこ)DB240から選択されていない未選択の教師データ(よゐこ)がなくなるまで、上述した一連の処理を繰り返す。
Specifically, for example, the
つぎに、決定部1003は、分析DB1500を参照して、検索された複数のFAQそれぞれについて、第1の確率を算出する。具体的には、例えば、決定部1003は、例えば、下記式(1)を用いて、検索された複数のFAQそれぞれについて、第1の確率を算出することができる。
Next, the
P(FAQ|検索ワード)=P(FAQ)P(検索ワード|FAQ)・・・(1) P (FAQ | search word) = P (FAQ) P (search word | FAQ) ... (1)
事後確率P(FAQ|検索ワード)は、検索ワードを指定してFAQを検索した場合、該当FAQが選択(照会)される確率を示す。すなわち、事後確率P(FAQ|検索ワード)は、第1の確率に相当する。例えば、P(FAQ1|事故)は、検索ワード「事故」を指定してFAQを検索した場合、FAQ1が選択(照会)される確率を示す。
The posterior probability P (FAQ | search word) indicates the probability that the corresponding FAQ is selected (inquired) when the FAQ is searched by designating the search word. That is, the posterior probability P (FAQ | search word) corresponds to the first probability. For example, P (
なお、検索ワードが複数のキーワードで構成される場合は、事後確率をそれぞれの確率の積で示す。例えば、P(FAQ1|事故、車)は、検索ワード「事故」、「車」を指定してFAQを検索した場合、FAQ1が選択される確率が、P(FAQ1)P(事故|FAQ1)×P(FAQ1)P(車|FAQ1)であることを示す。
When the search word is composed of a plurality of keywords, the posterior probability is indicated by the product of the respective probabilities. For example, if P (
事前確率P(FAQ)は、該当FAQが選ばれる確率(割合)を示す。例えば、FAQ総数が5000で、検索ワード「事故」で検索する場合、P(FAQ1)は「1/5000」である。なお、事前確率P(FAQ)は、推定における精度を向上させるため、検索ワードに含まれるFAQの総数に置き換える。FAQ総数が5000で、検索ワード「事故」でヒットしたことのあるFAQの総数が100とすると、検索ワード「事故」で検索する場合、P(FAQ1)は「1/100」である。 The prior probability P (FAQ) indicates the probability (proportion) that the corresponding FAQ is selected. For example, when the total number of FAQs is 5000 and a search is performed using the search word "accident", P (FAQ 1) is "1/5000". The prior probability P (FAQ) is replaced with the total number of FAQs included in the search word in order to improve the accuracy in estimation. Assuming that the total number of FAQs is 5000 and the total number of FAQs that have been hit by the search word “accident” is 100, P (FAQ 1) is “1/100” when the search word “accident” is searched.
尤度P(検索ワード|FAQ)は、FAQが決まったとき、検索ワードが作成される確率を示す。例えば、P(事故|FAQ1)は、FAQ1から検索ワード「事故」が作成される確率を示す。FAQ1をアクセスしたキーワードのアクセス数が1000で、検索ワード「事故」が10の場合は、P(事故|FAQ1)は「10/1000」となる。
The likelihood P (search word | FAQ) indicates the probability that a search word is created when the FAQ is determined. For example, P (accident | FAQ 1) indicates the probability that the search word “accident” is created from
図15に示した分析DB1500をもとに算出される各FAQ1〜5の第1の確率(P(FAQ|キーワード1,2))は、以下の通りである。なお、「0」となる部分は「1」に置き換える(ラプラススムージング)。
The first probabilities (P (FAQ |
P(FAQ1|キーワード1,2)
=P(キーワード1|FAQ1)×P(FAQ1)×P(キーワード2|FAQ1)×P(FAQ1)=(1/21)(1/23)×(12/21)(12/96)
=0.00015
P (
= P (
= 0.00015
P(FAQ2|キーワード1,2)
=P(キーワード1|FAQ2)×P(FAQ2)×P(キーワード2|FAQ2)×P(FAQ2)=(10/85)(10/23)×(1/85)(1/96)
=0.00001
P (
= P (
= 0.00001
P(FAQ3|キーワード1,2)
=P(キーワード1|FAQ3)×P(FAQ3)×P(キーワード2|FAQ3)×P(FAQ3)=(2/7)(2/23)×(1/7)(1/96)
=0.00018
P (
= P (
= 0.00018
P(FAQ4|キーワード1,2)
=P(キーワード1|FAQ4)×P(FAQ4)×P(キーワード2|FAQ4)×P(FAQ4)=(6/124)(6/23)×(77/124)(77/96)
=0.00629
P (
= P (
= 0.00629
P(FAQ5|キーワード1,2)
=P(キーワード1|FAQ5)×P(FAQ5)×P(キーワード2|FAQ5)×P(FAQ5)=(4/44)(4/23)×(6/44)(6/96)
=0.00013
P (
= P (
= 0.00013
ただし、コンピュータ上では、桁数が小さくなりすぎると計算できなくなる可能性がある(オーバーフロー)。このため、決定部1003は、算出した各値を対数に変換して、第1の確率をそれぞれ算出する。対数に変換した第1の確率は、以下の通りである。0に近いほど、確率が高いことを示す。
However, on a computer, it may not be possible to calculate if the number of digits becomes too small (overflow). Therefore, the
P(FAQ1|キーワード1,2)
=Log(1/21)(1/23)+Log(12/21)(12/96)
=−3.83
P (
= Log (1/21) (1/23) + Log (12/21) (12/96)
=-3.83
P(FAQ2|キーワード1,2)
=Log(10/85)(10/23)+Log(1/85)(1/96)
=−5.20
P (
= Log (10/85) (10/23) + Log (1/85) (1/96)
=-5.20
P(FAQ3|キーワード1,2)
=Log(2/7)(2/23)+Log(1/7)(1/96)
=−4.43
P (
= Log (2/7) (2/23) + Log (1/7) (1/96)
= -4.43
P(FAQ4|キーワード1,2)
=Log(6/124)(6/23)+Log(77/124)(77/96)
=−2.2
P (
= Log (6/124) (6/23) + Log (77/124) (77/96)
=-2.2
P(FAQ5|キーワード1,2)
=Log(4/44)(4/23)+Log(6/44)(6/96)
=−3.87
P (
= Log (4/44) (4/23) + Log (6/44) (6/96)
=-3.87
つぎに、決定部1003は、ソフトマックス関数を利用して、対数表記した各FAQ1〜5の第1の確率を、0〜100[%]の表記に変換する。具体的には、例えば、決定部1003は、対数表記した各FAQ1〜5の第1の確率のうち、絶対値の最大値C「−5.20」を取得する。そして、決定部1003は、以下のように、各FAQ1〜5について、(最大値C−第1の確率)の値の指数を計算する。
Next, the
P(FAQ1)=exp(−3.83−(−5.20))=3.93
P(FAQ2)=exp(−5.20−(−5.20))=1.0
P(FAQ3)=exp(−4.43−(−5.20))=2.16
P(FAQ4)=exp(−2.20−(−5.20))=20.09
P(FAQ5)=exp(−3.87−(−5.20))=3.42
P (FAQ 1) = exp (-3. 83-(-5. 20)) = 3.93
P (FAQ 2) = exp (-5. 20-(-5. 20)) = 1.0
P (FAQ 3) = exp (-4. 43-(-5. 20)) = 2.16
P (FAQ 4) = exp (-2.20-(-5.20)) = 20.09
P (FAQ 5) = exp (-3. 87-(-5. 20)) = 3.42.
つぎに、決定部1003は、各FAQ1〜5の(最大値C−第1の確率)の値の指数の合計値Sを計算する。ここでは、指数の合計値Sは、「30.06」となる。
Next, the
つぎに、決定部1003は、以下のように、各FAQ1〜5について、(最大値C−第1の確率)の値の指数を、指数の合計値Sで割った値を算出する。
Next, the
P(FAQ1)=3.93/30.06=0.13
P(FAQ2)=1.0/30.06=0.03
P(FAQ3)=2.16/30.06=0.07
P(FAQ4)=20.09/30.06=0.67
P(FAQ5)=3.42/30.06=0.11
P (FAQ 1) = 3.93 / 3.0.06 = 0.13
P (FAQ 2) = 1.0 / 3.06 = 0.03
P (FAQ 3) = 2.16 / 3.06 = 0.07
P (FAQ 4) = 20.09 / 03.06 = 0.67
P (FAQ 5) = 3.42 / 3 0.06 = 0.11
つぎに、決定部1003は、以下のように、各FAQ1〜5について、算出した値に100を掛けることにより、第1の確率を0〜100[%]の表記に変換する。
Next, the
P(FAQ1)=13[%]
P(FAQ2)=3[%]
P(FAQ3)=7[%]
P(FAQ4)=67[%]
P(FAQ5)=11[%]
P (FAQ 1) = 13 [%]
P (FAQ 2) = 3 [%]
P (FAQ 3) = 7 [%]
P (FAQ 4) = 67 [%]
P (FAQ 5) = 11 [%]
このようにして、各FAQ1〜5について、検索ワード「キーワード1,キーワード2」に対して各FAQ1〜5が表示された際に、各FAQ1〜5が選択(照会)される第1の確率を算出することができる。なお、1回も選択(照会)されたことがないFAQについては、第1の確率は「0[%]」とする。
Thus, for each of the
また、ここでは、第1の確率を例に挙げて説明したが、第2および第3の確率についても、同様にして求めることができる。 Further, although the first probability is described as an example here, the second and third probabilities can be similarly obtained.
例えば、第2の確率の場合、決定部1003は、教師データ(わるいこ)DB250を参照して、分析DB1500を作成する。この場合、分析DB1500は、縦軸に「FAQ番号」、横軸に「キーワード」を設定し、キーワードごとに各FAQが照会されなかった非照会回数を集計したものである。ただし、FAQ番号は、検索部1002によって検索された複数のFAQそれぞれのFAQ番号である。キーワードは、教師データ(わるいこ)DB250内の教師データ(わるいこ)の形態素解析後検索ワードに含まれる形態素である。
For example, in the case of the second probability, the
具体的には、例えば、決定部1003は、教師データ(わるいこ)DB250から未選択の教師データ(わるいこ)を選択する。ここで、選択された教師データ(わるいこ)の非照会FAQを「1」とし、形態素解析後検索ワードにキーワード1、キーワード2が含まれるとする。この場合、決定部1003は、FAQ番号「1」のキーワード1の非照会回数をインクリメントする。また、決定部1003は、FAQ番号「1」のキーワード2の非照会回数をインクリメントする。決定部1003は、教師データ(よゐこ)DB240から選択されていない未選択の教師データ(よゐこ)がなくなるまで、上述した一連の処理を繰り返す。
Specifically, for example, the
これにより、キーワードごとに各FAQの非照会回数が記憶された分析DB1500を作成することができる。そして、決定部1003は、例えば、分析DB1500を参照して、上記式(1)を用いて、検索された複数のFAQそれぞれについて、第2の確率を算出する。ただし、事後確率P(FAQ|検索ワード)は、検索ワードを指定してFAQを検索した場合、該当FAQが選択(照会)されない確率を示す。事前確率P(FAQ)は、該当FAQが選ばれない確率(割合)を示す。尤度P(検索ワード|FAQ)は、FAQが決まったとき、検索ワードが作成される確率を示す。なお、以降の第2の確率の具体的な計算手順は、第1の確率と同様のため、詳細な説明は省略する。
Thereby, it is possible to create an
また、第3の確率の場合、特定部1007は、教師データ(まいご)DB260を参照して、分析DB1500を作成する。この場合、分析DB1500は、縦軸に「代替ワード」、横軸に「形態素」を設定し、形態素ごとに各代替ワードが入力された入力回数を集計したものである。ただし、代替ワードは、教師データ(まいご)DB260内の教師データ(まいご)の代替ワードである。すなわち、代替ワードは、0件ヒット検索ワードに後続して入力された他の検索ワードに相当する。形態素は、0件ヒット検索ワードを形態素解析して検出される形態素である。0件ヒット検索ワードから形態素が検出されなかった場合には、例えば、0件ヒット検索ワードそのものを、横軸の形態素としてもよい。
Also, in the case of the third probability, the identifying
具体的には、例えば、特定部1007は、教師データ(まいご)DB260から未選択の教師データ(まいご)を選択する。そして、特定部1007は、選択した教師データ(まいご)の検索ワードに、分析DB1500内のいずれかの形態素が含まれる場合、その形態素について、選択した教師データ(まいご)の代替ワードの入力回数をインクリメントする。特定部1007は、教師データ(まいご)DB260から選択されていない未選択の教師データ(まいご)がなくなるまで、上述した一連の処理を繰り返す。
Specifically, for example, the identifying
これにより、形態素ごとに各代替ワードが入力された入力回数が記憶された分析DB1500を作成することができる。そして、特定部1007は、例えば、分析DB1500を参照して、上記式(1)を用いて、分析DB1500内の代替ワードそれぞれについて、第3の確率を算出する。
Thus, it is possible to create an
ただし、事後確率は、P(代替ワード|検索ワード)となる。事前確率は、P(代替ワード)となる。尤度は、P(代替ワード)となる。事後確率P(代替ワード|検索ワード)は、検索ワードに後続して代替ワードが入力される確率を示す。事前確率P(代替ワード)は、該当代替ワードがある確率(割合)を示す。尤度P(検索ワード|代替ワード)は、代替ワードが決まったとき、検索ワードが作成される確率を示す。なお、以降の第3の確率の具体的な計算手順は、第1の確率と同様のため、詳細な説明は省略する。 However, the posterior probability is P (alternative word | search word). The prior probability is P (alternate word). The likelihood is P (alternative word). The posterior probability P (Alternative Word | Search Word) indicates the probability that an alternative word is input following the search word. The prior probability P (alternate word) indicates the probability (proportion) that the relevant alternative word is present. The likelihood P (search word | alternate word) indicates the probability that a search word is created when an alternative word is determined. In addition, since the specific calculation procedure of subsequent 3rd probability is the same as 1st probability, detailed description is abbreviate | omitted.
(FAQの決定例)
つぎに、図16を用いて、検索ワードに対するFAQの決定例について説明する。
(Example of decision of FAQ)
Next, a determination example of the FAQ for the search word will be described with reference to FIG.
図16は、FAQの決定例を示す説明図である。図16において、第1のテーブル1601は、検索部1002によって検索された複数のFAQそれぞれについて算出された第1の確率を記憶する。第2のテーブル1602は、検索部1002によって検索された複数のFAQそれぞれについて算出された第2の確率を記憶する。
FIG. 16 is an explanatory diagram of an example of determination of the FAQ. In FIG. 16, the first table 1601 stores the first probability calculated for each of the plurality of FAQs searched by the
ここでは、検索ワードに対応するFAQとして、FAQ番号が「001〜010」の10件のFAQが検索された場合を想定する。また、閾値αを「α=80」とする。また、FAQ番号が若いほど、既存の検索アルゴリズムで検索された際の優先度が高いものとする。例えば、既存の検索アルゴリズムでは、過去のアクセス数(照会数)が多いFAQほど高い優先度が設定される。 Here, it is assumed that ten FAQs with FAQ numbers “001 to 010” are searched as FAQs corresponding to search words. Further, the threshold value α is set to “α = 80”. Also, the lower the FAQ number, the higher the priority when retrieved using the existing search algorithm. For example, in the existing search algorithm, the higher the number of accesses in the past (the number of queries), the higher the priority is set.
この場合、決定部1003は、例えば、第2のテーブル1602を参照して、第2の確率が閾値α以上のFAQを特定する。ここでは、FAQ番号「003,005,006,008」のFAQが特定される。つぎに、決定部1003は、第1のテーブル1601から、特定したFAQ番号「003,005,006,008」のFAQのレコードを削除する。
In this case, the determining
そして、決定部1003は、第1のテーブル1601を参照して、第1の確率が高い順にソートした残余のFAQ、すなわち、FAQ番号「001,002,007,004,009,010」のFAQを、検索ワードに対する1または複数のFAQに決定する。
Then, the
この場合、出力制御部1004は、端末201に対して、決定されたFAQ番号「001,002,007,004,009,010」のFAQを送信する。ここで、FAQ画面900において、上位5件のみ1ページ目に表示される場合(N=5)、FAQ番号「001,002,007,004,009」のFAQは、この順番で1ページ目に表示され、FAQ番号「010」のFAQは2ページ目に表示される。
In this case, the
例えば、過去のアクセス数(照会数)が多い順にFAQを表示する場合に比べると、第1および第2の確率を用いてFAQが絞り込まれた結果、FAQ番号「003,005,006,008」のFAQが除外され、FAQ番号「007,009,010」のFAQが繰り上がって1ページ目に表示される。 For example, as a result of the FAQ being narrowed down using the first and second probabilities, the FAQ number "003, 005, 006, 008" as compared to the case where the FAQ is displayed in descending order of the number of accesses (number of queries) in the past. The FAQ is excluded, and the FAQ with the FAQ number "007, 009, 010" is displayed on the first page.
(閾値αの調整例)
つぎに、図17および図18を用いて、閾値αの調整例について説明する。ここでは、上位5件のFAQが1ページ目に表示されるFAQである場合を想定する(N=5)。
(Example of adjustment of threshold α)
Next, an adjustment example of the threshold value α will be described with reference to FIGS. 17 and 18. Here, it is assumed that the top 5 FAQs are FAQs displayed on the first page (N = 5).
図17は、アクセスログの具体例を示す説明図(その3)である。図17において、アクセスログ1701〜1705は、時系列にソートされたセッション番号が同一のアクセスログの集合である。以下、アクセスログ1701〜1705から、1ページ目ヒット率を算出する場合について説明する。
FIG. 17 is an explanatory view (part 3) of a specific example of the access log. In FIG. 17,
具体的には、例えば、決定部1003は、下記式(2)を用いて、アクセスログ1701〜1705から1ページ目ヒット率を算出する。ただし、Xは、照会されたFAQが検索結果の1ページ目に存在する回数である。Yは、FAQの照会回数である。また、1ページ目ヒット率の単位は[%]である。
Specifically, for example, the
1ページ目ヒット率=X/Y×100 ・・・(2) First page hit rate = X / Y × 100 (2)
より詳細に説明すると、決定部1003は、タイプ「照会」のアクセスログ1702〜1705を参照して、照会されたFAQが検索結果の1ページ目に存在する回数Xを算出する。ここで、アクセスログ1702,1703の順位は、「1,2」であり、5以下である。一方、アクセスログ1704,1705の順位は、「40,45」であり、5より大きい。したがって、回数Xは「X=2」となる。
More specifically, the
また、決定部1003は、タイプ「照会」のアクセスログ1702〜1705を参照して、FAQの照会回数Yを算出する。ここでは、照会回数Yは、タイプ「照会」のアクセスログ1702〜1705の数であり、「Y=4」である。このため、1ページ目ヒット率は、「50[%](=2/4×100)」となる。
The
決定部1003は、1ページ目ヒット率の算出を、所定期間ごと、例えば、数週間〜数ヶ月程度の期間ごとに行う。つぎに、決定部1003は、所定期間ごとに算出した1ページ目ヒット率の推移を回帰分析して、1ページ目ヒット率の時系列変化を表す直線の傾きを算出する。そして、決定部1003は、算出した傾きに応じて、閾値αを調整する。
The
図18は、1ページ目ヒット率の時系列変化の一例を示す説明図である。図18において、直線1801,1802は、1ページ目ヒット率の時系列変化を表す直線である。直線1801は、傾きが0より大きく、1ページ目ヒット率が上昇傾向にあることを示している。一方、直線1802は、傾きが0より小さく、1ページ目ヒット率が下降傾向にあることを示している。
FIG. 18 is an explanatory diagram of an example of time-series change of the first page hit rate. In FIG. 18,
例えば、決定部1003は、1ページ目ヒット率の時系列変化を表す直線の傾きが0より大きい場合、1ページ目ヒット率が上昇傾向にあるため、閾値αを調整しない。また、決定部1003は、1ページ目ヒット率の時系列変化を表す直線の傾きが0の場合、1ページ目ヒット率に変化がないため、閾値αを調整しない。
For example, when the slope of the straight line representing the time-series change of the first page hit rate is larger than 0, the determining
一方、決定部1003は、1ページ目ヒット率の時系列変化を表す直線の傾きが0より小さい場合、1ページ目ヒット率が下降傾向にあるため、閾値αを調整する。具体的には、例えば、決定部1003は、1ページ目ヒット率の時系列変化を表す直線の傾きが0より小さい場合、閾値αを1[%]下げる。
On the other hand, when the slope of the straight line representing the time-series change of the first page hit ratio is smaller than 0, the
例えば、調整前の閾値αが「80[%]」の場合、決定部1003は、閾値αを「79[%]」に変更する。1ページ目ヒット率が下降傾向にある場合、1ページ目のFAQが照会されにくくなって、教師データ(わるいこ)の学習が進むと想定される。このため、教師データ(わるいこ)の反応をよくするため、閾値αを下げて、FAQをより多く削る方向に調整する。
For example, when the threshold α before adjustment is “80 [%]”, the
なお、決定部1003は、1ページ目ヒット率の時系列変化を表す直線の傾きの大きさに応じて、閾値αの下げ分を変更することにしてもよい。例えば、1ページ目ヒット率が大幅に下降していると判断できる程度に、直線の傾きが小さい場合、決定部1003は、閾値αの下げ分を5[%]程度に変更することにしてもよい。
The
(形態素の推定)
つぎに、図19を用いて、形態素を推定する処理について説明する。
(Estimate of morpheme)
Next, processing for estimating a morpheme will be described using FIG.
図19は、形態素を推定する方法の一実施例を示す説明図である。特定部1007は、判定部1006によって検索ワードに対応するFAQがないと判定された場合、教師データ(まいご)DB260の記憶内容に基づく機械学習を行って、0件ヒット検索ワードに後続して入力される代替ワードを特定する。しかし、教師データ(まいご)が蓄積されるまでの間は、代替ワードを特定することができない。
FIG. 19 is an explanatory diagram of an example of a method of estimating morphemes. When it is determined by the
例えば、パンチミス等によりデタラメな検索ワードが入力された場合、検索ワードから形態素が検出されず、0件ヒットとなることがある。また、この場合、当該検索ワードに対応する教師データ(まいご)は蓄積されていない可能性が高い。すなわち、パンチミス等によりデタラメな検索ワードが入力された場合、代替ワードを特定できず、0件ヒットとなることがある。 For example, in the case where a tedious search word is input due to a punch error or the like, morphemes may not be detected from the search word, resulting in zero hits. Further, in this case, there is a high possibility that the teacher data (music) corresponding to the search word is not stored. That is, in the case where a search word is corrupted due to a punch error or the like, an alternative word can not be identified, resulting in zero hits.
そこで、情報処理装置101は、代替ワードが特定されなかった場合に、当該検索ワードに対応する形態素を推定して、推定した形態素に対応するFAQを検索することにしてもよい。
Therefore, when the alternative word is not identified, the
具体的には、例えば、まず、生成部1005は、教師データ(形態素)を生成する。より詳細に説明すると、例えば、生成部1005は、教師データ(よゐこ)DB240内の教師データ(よゐこ)の形態素解析後検索ワードから形態素を抽出する。そして、生成部1005は、抽出した形態素と、当該形態素に含まれるそれぞれの文字とを対応付けた教師データ(形態素)を生成する。
Specifically, for example, first, the
一例として、形態素を「FILE」とすると、形態素「FILE」と、形態素「FILE」に含まれるそれぞれの要素(文字)「“F”,“I”,“L”,“E”」とを対応付けた教師データ(形態素)1901が生成される。生成された教師データ(形態素)は、教師データ(形態素)DB1900に記憶される。
As an example, when the morpheme is "FILE", the morpheme "FILE" and the respective elements (characters) "F", "I", "L", "E" included in the morpheme "FILE" correspond to each other The attached teacher data (morpheme) 1901 is generated. The generated teacher data (morpheme) is stored in the teacher data (morpheme)
また、生成部1005は、例えば、教師データ(わるいこ)DB250内の教師データ(わるいこ)の形態素解析後検索ワードから形態素を抽出し、抽出した形態素と、当該形態素に含まれるそれぞれの文字とを対応付けた教師データ(形態素)を生成してもよい。また、生成部1005は、例えば、教師データ(まいご)DB260内の教師データ(まいご)の代替ワードや検索ワードから形態素を抽出し、抽出した形態素と、当該形態素に含まれるそれぞれの文字とを対応付けた教師データ(形態素)を生成してもよい。
In addition, for example, the
つぎに、特定部1007は、検索ワードから形態素が検出されなかった場合、教師データ(形態素)DB1900の記憶内容に基づく機械学習を行って、検索ワードに対応する形態素を特定する。ただし、検索ワードから形態素が検出されなかった場合であっても、FAQマスタ220からFAQが検索されることもある。
Next, when the morpheme is not detected from the search word, the identifying
すなわち、検索ワードから形態素が検出されなかった場合であっても、端末201に対して検索ワードに対応するFAQを出力できる場合がある。このため、特定部1007は、例えば、検索ワードから形態素が検出されず、かつ、検索ワードに対応するFAQがないと判定された場合に、検索ワードに対応する形態素を特定することにしてもよい。
That is, even if no morpheme is detected from the search word, there may be a case where the FAQ corresponding to the search word can be output to the terminal 201. For this reason, the identifying
より具体的には、例えば、特定部1007は、教師データ(形態素)DB1900を参照して、ナイーブベイズ分類器による機械学習を行って、複数の形態素それぞれについて、第4の確率を算出する。第4の確率は、形態素が検出されなかった検索ワードに類似する度合いの高さを示す。
More specifically, for example, the identifying
なお、第4の確率についても、第1の確率と同様にして求めることができる。まず、特定部1007は、教師データ(形態素)DB1900を参照して、分析DB1500を作成する。この場合、分析DB1500は、縦軸に「形態素」、横軸に「文字」を設定し、文字ごとの出現回数を集計したものである。ただし、形態素は、教師データ(形態素)DB1900内の教師データ(形態素)の形態素である。文字は、教師データ(形態素)DB1900内の教師データ(形態素)の形態素に含まれる文字である。
The fourth probability can also be obtained in the same manner as the first probability. First, the identifying
具体的には、例えば、特定部1007は、教師データ(形態素)DB1900から未選択の教師データ(形態素)を選択する。ここで、選択された教師データ(形態素)の形態素を「FILE」とし、要素を「“F”,“I”,“L”,“E”」とする。この場合、特定部1007は、分析DB1500内の形態素「FILE」の各要素「“F”,“I”,“L”,“E”」の出現回数をそれぞれインクリメントする。特定部1007は、例えば、教師データ(形態素)DB1900から選択されていない未選択の教師データ(形態素)がなくなるまで、上述した一連の処理を繰り返す。
Specifically, for example, the specifying
これにより、形態素ごとに各要素の出現回数が記憶された分析DB1500を作成することができる。そして、決定部1003は、例えば、分析DB1500を参照して、上記式(1)を用いて、複数の形態素それぞれについて、第4の確率を算出する。ただし、事後確率は、P(形態素|文字)となる。事前確率は、P(形態素)となる。尤度は、P(形態素)となる。事後確率P(形態素|文字)は、該当文字を含む形態素が入力される確率を示す。事前確率P(形態素)は、形態素(縦軸)に含まれる全要素中に該当文字が占める割合を示す。尤度P(形態素)は、形態素が決まったとき、該当文字が含まれる確率を示す。なお、以降の第4の確率の具体的な計算手順は、第1の確率と同様のため、詳細な説明は省略する。
Thus, it is possible to create an
そして、特定部1007は、分析DB1500内の複数の形態素それぞれについて算出した第4の確率に基づいて、検索ワードに対応する形態素を特定する。具体的には、例えば、特定部1007は、第4の確率が最大の形態素を、形態ワードに対応する形態素として特定する。これにより、形態素解析により形態素が検出されなかった検索ワードに対応する形態素を推定することができる。
Then, the identifying
この場合、特定部1007は、例えば、教師データ(まいご)を記憶する記憶部1010の記憶内容に基づく機械学習を行って、特定した形態素に後続して入力される代替ワードを特定する。そして、検索部1002は、特定された代替ワードに対応するFAQを検索する。
In this case, the specifying
これにより、パンチミス等によりデタラメな検索ワードが入力された場合であっても、0件ヒットとなることを防ぐことができる。また、上述した説明では、特定部1007が、特定した形態素に後続して入力される代替ワードを特定し、検索部1002が、特定された代替ワードに対応するFAQを検索することにしたが、これに限らない。例えば、検索部1002は、特定された形態素に対応するFAQを検索することにしてもよい。
This makes it possible to prevent zero hits even when a search word that is not correct due to a punch error or the like is input. Further, in the above description, the specifying
なお、教師データ(よゐこ)、教師データ(わるいこ)のデータ構造は、FAQ番号と形態素解析後検索ワードのため、検索ワードから形態素が検出されなかった場合は、学習できず、第1および第2の確率を算出できない。つまり、第1および第2の確率を用いたFAQの絞り込みを行うことができない。したがって、このような場合も、第1および第2の確率を用いたFAQの絞り込みを行えるように、情報処理装置101は、検索ワードに対応する形態素を推定して、FAQを再検索することにしてもよい。
In addition, the data structure of teacher data (Yosukeko) and teacher data (roiko) can not be learned if a morpheme is not detected from the search word because the FAQ number and the search word after morpheme analysis, the first and the first The probability of 2 can not be calculated. That is, it is not possible to narrow down the FAQ using the first and second probabilities. Therefore, even in such a case, the
(情報処理装置101の教師データ生成処理手順)
つぎに、図20および図21を用いて、情報処理装置101の教師データ生成処理手順について説明する。情報処理装置101の教師データ生成処理は、例えば、24時間程度の期間ごとに定期的に実行されてもよく、また、回答出力システム200の管理者等が指定する所定のタイミングで実行されてもよい。
(Procedure of Teacher Data Generation Processing of Information Processing Apparatus 101)
Next, a teaching data generation processing procedure of the
図20および図21は、情報処理装置101の教師データ生成処理手順の一例を示すフローチャートである。図20のフローチャートにおいて、まず、情報処理装置101は、アクセスログDB230から選択されていない未選択のセッション番号を選択する(ステップS2001)。
FIG. 20 and FIG. 21 are flowcharts showing an example of the teaching data generation processing procedure of the
つぎに、情報処理装置101は、アクセスログDB230から、選択したセッション番号のアクセスログを取得する(ステップS2002)。そして、情報処理装置101は、取得したアクセスログの日時に基づいて、取得したアクセスログを時系列にソートする(ステップS2003)。
Next, the
つぎに、情報処理装置101は、取得したアクセスログの中に、タイプ「照会」のアクセスログがあるか否かを判断する(ステップS2004)。ここで、タイプ「照会」のアクセスログがない場合(ステップS2004:No)、情報処理装置101は、図21に示すステップS2101に移行する。
Next, the
一方、タイプ「照会」のアクセスログがある場合(ステップS2004:Yes)、情報処理装置101は、当該アクセスログから特定される照会FAQが、1ページ目に表示されたFAQであるか否かを判断する(ステップS2005)。ここで、1ページ目に表示されたFAQではない場合(ステップS2005:No)、情報処理装置101は、図21に示すステップS2101に移行する。
On the other hand, when there is an access log of type “inquiry” (step S2004: Yes), the
一方、1ページ目に表示されたFAQの場合(ステップS2005:Yes)、情報処理装置101は、タイプ「照会」のアクセスログから特定される照会FAQと形態素解析後検索ワードとを対応付けて表す教師データ(よゐこ)を生成する(ステップS2006)。そして、情報処理装置101は、生成した教師データ(よゐこ)を、教師データ(よゐこ)DB240に登録して(ステップS2007)、図21に示すステップS2101に移行する。
On the other hand, in the case of the FAQ displayed on the first page (step S2005: Yes), the
図21のフローチャートにおいて、まず、情報処理装置101は、タイプ「検索」のアクセスログの検索リストを参照して、0件ヒットの検索ワードがあるか否かを判断する(ステップS2101)。ここで、0件ヒットの検索ワードがない場合(ステップS2101:No)、情報処理装置101は、ステップS2105に移行する。
In the flowchart of FIG. 21, first, the
一方、0件ヒットの検索ワードがある場合(ステップS2101:Yes)、情報処理装置101は、取得したアクセスログの日時に基づいて、0件ヒットの検索ワードに後続して入力を受け付けた他の検索ワードがあるか否かを判断する(ステップS2102)。ただし、他の検索ワードは、当該他の検索ワードに対して1ページ目に表示されたいずれかのFAQが照会(選択)された検索ワードである。
On the other hand, when there is a search word of 0 hits (step S2101: Yes), the
ここで、他の検索ワードがない場合(ステップS2102:No)、情報処理装置101は、ステップS2105に移行する。一方、他の検索ワードがある場合(ステップS2102:Yes)、情報処理装置101は、他の検索ワードを代替ワードとする教師データ(まいご)を生成する(ステップS2103)。
Here, when there is no other search word (step S2102: No), the
そして、情報処理装置101は、生成した教師データ(まいご)を、教師データ(まいご)DB260に登録する(ステップS2104)。つぎに、情報処理装置101は、タイプ「検索」のアクセスログの検索リストを参照して、検索ワードに対して表示された際に照会されなかったFAQがあるか否かを判断する(ステップS2105)。
Then, the
ここで、照会されなかったFAQがない場合(ステップS2105:No)、情報処理装置101は、ステップS2108に移行する。一方、照会されなかったFAQがある場合(ステップS2105:Yes)、情報処理装置101は、照会されなかったFAQを非照会FAQとする教師データ(わるいこ)を生成する(ステップS2106)。
Here, when there is no FAQ that has not been referred to (step S2105: No), the
そして、情報処理装置101は、生成した教師データ(わるいこ)を、教師データ(わるいこ)DB250に登録する(ステップS2107)。つぎに、情報処理装置101は、アクセスログDB230から選択されていない未選択のセッション番号があるか否かを判断する(ステップS2108)。
Then, the
ここで、未選択のセッション番号がある場合(ステップS2108:Yes)、情報処理装置101は、図20に示したステップS2001に戻る。一方、未選択のセッション番号がない場合(ステップS2108:No)、情報処理装置101は、本フローチャートによる一連の処理を終了する。
Here, if there is an unselected session number (step S2108: YES), the
これにより、過去のユーザの操作履歴(アクセスログ)から教師データ(よゐこ)、教師データ(わるいこ)および教師データ(まいご)を生成することができる。なお、アクセスログDB230の記憶内容は、例えば、情報処理装置101の教師データ生成処理の実行が完了すると、その都度リセットされる。
As a result, it is possible to generate teacher data (Yoiko), teacher data (Rusiko) and teacher data (Magogo) from the past user's operation history (access log). The stored contents of the
(情報処理装置101の回答出力処理手順)
つぎに、図22および図23を用いて、情報処理装置101の回答出力処理手順について説明する。
(Reply output processing procedure of the information processing apparatus 101)
Next, the answer output processing procedure of the
図22および図23は、情報処理装置101の回答出力処理手順の一例を示すフローチャートである。図22のフローチャートにおいて、まず、情報処理装置101は、検索ワードの入力を受け付けたか否かを判断する(ステップS2201)。ここで、情報処理装置101は、検索ワードの入力を受け付けるのを待つ(ステップS2201:No)。
22 and 23 are flowcharts illustrating an example of the response output processing procedure of the
そして、情報処理装置101は、検索ワードの入力を受け付けた場合(ステップS2201:Yes)、検索ワードを形態素解析する(ステップS2202)。つぎに、情報処理装置101は、検索ワードを形態素解析した結果に基づいて、FAQマスタ220からFAQを検索する(ステップS2203)。
Then, when the
つぎに、情報処理装置101は、教師データ(よゐこ)DB240を参照して、ナイーブベイズ分類器による機械学習を行って、検索された複数のFAQそれぞれについて、第1の確率を算出する(ステップS2204)。つぎに、情報処理装置101は、教師データ(わるいこ)DB250を参照して、ナイーブベイズ分類器による機械学習を行って、検索された複数のFAQそれぞれについて、第2の確率を算出する(ステップS2205)。
Next, the
そして、情報処理装置101は、検索された複数のFAQそれぞれについて算出した第1の確率と第2の確率とに基づいて、検索された複数のFAQの中から、検索ワードに対する1または複数のFAQを決定する(ステップS2206)。
Then, the
つぎに、情報処理装置101は、検索ワードに対応するFAQがあるか否かを判断する(ステップS2207)。具体的には、例えば、情報処理装置101は、ステップS2203においてFAQが1件も検索されなかった場合、または、ステップS2206においてFAQが1件も決定されなかった場合に、検索ワードに対応するFAQがないと判定する。
Next, the
ここで、検索ワードに対応するFAQがある場合(ステップS2207:Yes)、情報処理装置101は、決定した検索ワードに対する1または複数のFAQを出力して(ステップS2208)、本フローチャートによる一連の処理を終了する。一方、検索ワードに対応するFAQがない場合(ステップS2207:No)、情報処理装置101は、図23に示すステップS2301に移行する。
Here, when there is a FAQ corresponding to the search word (step S2207: Yes), the
図23のフローチャートにおいて、まず、情報処理装置101は、教師データ(まいご)DB260を参照して、ナイーブベイズ分類器による機械学習を行って、複数の代替ワードそれぞれについて、検索ワードに後続して入力される第3の確率を算出する(ステップS2301)。
In the flowchart of FIG. 23, first, the
そして、情報処理装置101は、複数の代替ワードそれぞれについて算出した第3の確率に基づいて、検索ワードに後続して入力される代替ワードを特定する(ステップS2302)。つぎに、情報処理装置101は、代替ワードが特定されたか否かを判断する(ステップS2303)。例えば、図22に示したステップS2202において、検索ワードから形態素が検出されなかった場合に、代替ワードは特定されないことがある。
Then, the
ここで、代替ワードが特定された場合(ステップS2303:Yes)、情報処理装置101は、図22に示したステップS2202に戻る。この場合、情報処理装置101は、特定した代替ワードの形態素解析を実施する。
Here, if the alternative word is specified (step S2303: YES), the
一方、代替ワードが特定されなかった場合(ステップS2303:No)、情報処理装置101は、教師データ(形態素)DB1900を参照して、ナイーブベイズ分類器による機械学習を行って、複数の形態素それぞれについて、第4の確率を算出する(ステップS2304)。第4の確率は、検索ワードに類似する度合いの高さを示す。
On the other hand, when the alternative word is not specified (step S2303: No), the
そして、情報処理装置101は、複数の形態素それぞれについて算出した第4の確率に基づいて、検索ワードに対応する形態素を特定して(ステップS2305)、図22に示したステップS2203に戻る。この場合、情報処理装置101は、特定した形態素に基づいて、FAQマスタ220からFAQを検索する。
Then, the
なお、ステップS2203において、FAQが1件も検索されなかった場合、情報処理装置101は、ステップS2304に移行することにしてもよい。また、ステップS2305からステップS2203への移行は、2回以上行わないこととする。このため、移行後のステップS2207において、検索ワードに対応するFAQがない場合には(ステップS2207:No)、情報処理装置101は、例えば、検索結果が0件である旨の情報を出力する。
If no FAQ is found in step S2203, the
これにより、過去のユーザの操作履歴(アクセスログ)をもとに、検索ワードに対して表示するFAQを最適化することができる。また、検索ワードに対応するFAQがなくても、過去のユーザの操作履歴をもとに、その検索ワード、すなわち、0件ヒット検索ワードに置き換わる代替ワードを推定してFAQを出力することができる。 This makes it possible to optimize the FAQ displayed for the search word based on the past operation history (access log) of the user. In addition, even if there is no FAQ corresponding to the search word, it is possible to estimate the search word, that is, an alternative word to be substituted for the zero hit search word based on the user's operation history in the past, and output the FAQ .
以上説明したように、実施の形態にかかる情報処理装置101によれば、受け付けた検索ワードに対応するFAQがない場合、教師データ(まいご)を記憶する記憶部1010の記憶内容に基づく機械学習を行って、当該検索ワードに後続して入力される代替ワードを特定し、特定した代替ワードに対応するFAQを出力することができる。教師データ(まいご)は、検索ワードに対応するFAQがないときに後続して入力を受け付けた他の検索ワードを、当該検索ワードに対応付けた情報である。他の検索ワードは、例えば、他の検索ワードに対して1ページ目(上位所定数N)に表示されたいずれかのFAQが選択された検索ワードである。
As described above, according to the
これにより、入力された検索ワードに対応するFAQがなくても、過去のユーザの操作履歴(アクセスログ)をもとに、その検索ワード、すなわち、0件ヒット検索ワードに置き換わる代替ワードを推定してFAQを出力することができる。このため、商品やサービスの名称変更等にFAQの見直し作業が追随できないような状況下や、検索時にタイプミスや変換ミスが生じた場合でも、問題解決につながるような適切なFAQを表示することができる。 Thus, even if there is no FAQ corresponding to the input search word, the search word, that is, an alternative word to be substituted for the 0 hit search word is estimated based on the operation history (access log) of the past user. Can output the FAQ. Therefore, under the circumstances where the review of the FAQ can not keep up with the name change of the product or service, etc., or when there is a typo or conversion error at the time of search, display a proper FAQ that leads to the solution of the problem. Can.
また、情報処理装置101によれば、記憶部1010を参照して、ナイーブベイズ分類器による機械学習を行って、教師データ(まいご)から特定される他の検索ワード(代替ワード)それぞれについて、第3の確率を算出することができる。第3の確率は、検索ワード(0件ヒット検索ワード)に後続して入力される確率である。そして、情報処理装置101によれば、他の検索ワードそれぞれについて算出した第3の確率に基づいて、検索ワード(0件ヒット検索ワード)に後続して入力される代替ワードを特定することができる。
In addition, according to the
これにより、問題解決につながるようなFAQを得られるような代替ワードを精度よく推定することができる。また、ナイーブベイズ分類器による機械学習を利用することで、教師データ(まいご)の質と量により代替ワードの推定精度をコントロールすることができる。 This makes it possible to accurately estimate alternative words that can obtain FAQs that lead to problem solving. In addition, by using machine learning with a naive Bayesian classifier, it is possible to control the estimation accuracy of alternative words by the quality and amount of teacher data.
また、情報処理装置101によれば、代替ワードが特定されなかった場合、教師データ(形態素)DB1900の記憶内容に基づく機械学習を行って、検索ワードに対応する形態素を特定し、特定した形態素に対応するFAQを出力することができる。
Further, according to the
これにより、教師データ(まいご)が蓄積されるまでの間に、0件ヒット検索ワードが入力されても、当該0件ヒット検索ワードに関連する形態素を推定して、当該形態素に対応するFAQを、検索ワードに対応するFAQとして表示することができる。このため、教師データ(まいご)が蓄積されるまでの間に、パンチミス等によりデタラメな検索ワードが入力された場合であっても、検索ワードに関連するFAQを表示することができる。 In this way, even if a zero hit search word is input until the teacher data (mago) is stored, the morpheme associated with the zero hit search word is estimated, and the FAQ corresponding to the morpheme is calculated. , Can be displayed as a FAQ corresponding to the search word. For this reason, it is possible to display the FAQ related to the search word even when the search word is damaged due to a punch error or the like until the teacher data (music) is accumulated.
これらのことから、情報処理装置101によれば、FAQシステムやFAQサイトにおける一次回答率や顧客満足度の向上を図ることができる。また、FAQを見直すことなく適切な検索結果を得ることができるため、FAQシステムやFAQサイトの運用コストを削減することができる。
From the above, according to the
なお、本実施の形態で説明した回答出力方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本回答出力プログラムは、ハードディスク、フレキシブルディスク、CD(Compact Disc)−ROM、MO(Magneto−Optical disk)、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本回答出力プログラムは、インターネット等のネットワークを介して配布してもよい。 The response output method described in the present embodiment can be realized by executing a prepared program on a computer such as a personal computer or a workstation. This answer output program is a computer readable recording medium such as a hard disk, a flexible disk, a CD (Compact Disc) -ROM, a MO (Magneto-Optical disk), a DVD (Digital Versatile Disk), and a USB (Universal Serial Bus) memory. And read out from the recording medium by a computer. Also, the response output program may be distributed via a network such as the Internet.
上述した実施の形態に関し、さらに以下の付記を開示する。 The following appendices will be further disclosed regarding the embodiment described above.
(付記1)第1の質問の入力を受け付け、
受け付けた前記第1の質問に対応する回答候補がない場合、質問に対応する回答候補がないときに後続して入力を受け付けた他の質問であって、前記他の質問に対して表示されたいずれかの回答候補が選択された前記他の質問を、前記質問と対応付けて記憶する記憶部の記憶内容に基づく機械学習を行って、前記第1の質問に後続して入力される第2の質問を特定し、
特定した前記第2の質問に対応する回答候補を出力する、
処理をコンピュータに実行させることを特徴とする回答出力プログラム。
(Supplementary Note 1) Accepting the input of the first question,
In the case where there is no answer candidate corresponding to the accepted first question, it is another question which subsequently receives an input when there is no answer candidate corresponding to the question, and is displayed for the other question A machine learning is performed based on the memory content of the storage unit that stores the other question in which any answer candidate is selected in association with the question, and the second question is input following the first question Identify the questions of
Outputting an answer candidate corresponding to the identified second question;
An answer output program characterized by causing a computer to execute processing.
(付記2)前記特定する処理は、
前記記憶部を参照して、ナイーブベイズ分類器による機械学習を行って、前記他の質問それぞれについて、前記第1の質問に後続して入力される確率を算出し、
前記他の質問それぞれについて算出した前記確率に基づいて、前記第1の質問に後続して入力される第2の質問を特定する、ことを特徴とする付記1に記載の回答出力プログラム。
(Supplementary Note 2) The process for specifying
With reference to the storage unit, machine learning is performed by a naive Bayesian classifier to calculate, for each of the other questions, the probability of being input following the first question.
The answer output program according to
(付記3)前記他の質問は、質問に対応する回答候補がないときに後続して入力を受け付けた他の質問であって、前記他の質問に対する上位所定数の回答候補のいずれかが選択された質問である、ことを特徴とする付記1または2に記載の回答出力プログラム。
(Supplementary Note 3) The other question is another question that is subsequently input when there is no answer candidate corresponding to the question, and one of the upper predetermined number of answer candidates for the other question is selected The answer output program according to
(付記4)前記第2の質問が特定されなかった場合、質問を形態素解析して検出された形態素と、前記形態素に含まれるそれぞれの要素とを対応付けて記憶する第2の記憶部の記憶内容に基づく機械学習を行って、前記第1の質問に対応する形態素を特定し、
特定した前記形態素に対応する回答候補を出力する、
処理を前記コンピュータに実行させることを特徴とする付記1〜3のいずれか一つに記載の回答出力プログラム。
(Supplementary Note 4) If the second question is not identified, storage of a second storage unit that associates and stores a morpheme detected by morphologically analyzing the question and each element included in the morpheme Perform content-based machine learning to identify morphemes corresponding to the first question;
Outputting an answer candidate corresponding to the identified morpheme;
The answer output program according to any one of
(付記5)前記回答候補は、FAQ(Frequently Asked Question)である、ことを特徴とする付記1〜4のいずれか一つに記載の回答出力プログラム。
(Supplementary Note 5) The answer output program according to any one of
(付記6)前記特定する処理は、
前記他の質問のうち前記確率が最大の質問を、前記第1の質問に後続して入力される第2の質問として特定する、ことを特徴とする付記1〜5のいずれか一つに記載の回答出力プログラム。
(Supplementary Note 6)
The question having the highest probability among the other questions is specified as a second question to be input following the first question, as described in any one of
(付記7)第1の質問の入力を受け付け、
受け付けた前記第1の質問に対応する回答候補がない場合、質問に対応する回答候補がないときに後続して入力を受け付けた他の質問であって、前記他の質問に対して表示されたいずれかの回答候補が選択された前記他の質問を、前記質問と対応付けて記憶する記憶部の記憶内容に基づく機械学習を行って、前記第1の質問に後続して入力される第2の質問を特定し、
特定した前記第2の質問に対応する回答候補を出力する、
処理をコンピュータが実行することを特徴とする回答出力方法。
(Supplementary Note 7) Accepting the input of the first question,
In the case where there is no answer candidate corresponding to the accepted first question, it is another question which subsequently receives an input when there is no answer candidate corresponding to the question, and is displayed for the other question A machine learning is performed based on the memory content of the storage unit that stores the other question in which any answer candidate is selected in association with the question, and the second question is input following the first question Identify the questions of
Outputting an answer candidate corresponding to the identified second question;
An answer output method characterized in that a computer executes a process.
(付記8)第1の質問の入力を受け付け、
受け付けた前記第1の質問に対応する回答候補がない場合、質問に対応する回答候補がないときに後続して入力を受け付けた他の質問であって、前記他の質問に対して表示されたいずれかの回答候補が選択された前記他の質問を、前記質問と対応付けて記憶する記憶部の記憶内容に基づく機械学習を行って、前記第1の質問に後続して入力される第2の質問を特定し、
特定した前記第2の質問に対応する回答候補を出力する、
制御部を有することを特徴とする情報処理装置。
(Supplementary Note 8) Accepting the input of the first question,
In the case where there is no answer candidate corresponding to the accepted first question, it is another question which subsequently receives an input when there is no answer candidate corresponding to the question, and is displayed for the other question A machine learning is performed based on the memory content of the storage unit that stores the other question in which any answer candidate is selected in association with the question, and the second question is input following the first question Identify the questions of
Outputting an answer candidate corresponding to the identified second question;
An information processing apparatus comprising a control unit.
101 情報処理装置
110,1010 記憶部
200 回答出力システム
201 端末
210 ネットワーク
220 FAQマスタ
230 アクセスログDB
240 教師データ(よゐこ)DB
250 教師データ(わるいこ)DB
260 教師データ(まいご)DB
300 バス
301 CPU
302 メモリ
303 I/F
304 ディスクドライブ
305 ディスク
900 FAQ画面
1001 受付部
1002 検索部
1003 決定部
1004 出力制御部
1005 生成部
1006 判定部
1007 特定部
1101,1102,1103,1301,1302,1303,1304,1701,1702,1703,1704,1705 アクセスログ
1500 分析DB
1900 教師データ(形態素)DB
101
240 teacher data (Yoshiko) DB
250 teacher data (bad boy) DB
260 Teacher Data (Mygo) DB
300
302 Memory 303 I / F
304
1900 Teacher data (morpheme) DB
Claims (6)
受け付けた前記第1の質問に対応する回答候補がない場合、質問に対応する回答候補がないときに後続して入力を受け付けた他の質問であって、前記他の質問に対して表示されたいずれかの回答候補が選択された前記他の質問を、前記質問と対応付けて記憶する記憶部の記憶内容に基づく機械学習を行って、前記第1の質問に後続して入力される第2の質問を特定し、
特定した前記第2の質問に対応する回答候補を出力する、
処理をコンピュータに実行させることを特徴とする回答出力プログラム。 Accept input for the first question,
In the case where there is no answer candidate corresponding to the accepted first question, it is another question which subsequently receives an input when there is no answer candidate corresponding to the question, and is displayed for the other question A machine learning is performed based on the memory content of the storage unit that stores the other question in which any answer candidate is selected in association with the question, and the second question is input following the first question Identify the questions of
Outputting an answer candidate corresponding to the identified second question;
An answer output program characterized by causing a computer to execute processing.
前記記憶部を参照して、ナイーブベイズ分類器による機械学習を行って、前記他の質問それぞれについて、前記第1の質問に後続して入力される確率を算出し、
前記他の質問それぞれについて算出した前記確率に基づいて、前記第1の質問に後続して入力される第2の質問を特定する、ことを特徴とする請求項1に記載の回答出力プログラム。 The process for specifying is
With reference to the storage unit, machine learning is performed by a naive Bayesian classifier to calculate, for each of the other questions, the probability of being input following the first question.
The answer output program according to claim 1, wherein a second question input following the first question is specified based on the probability calculated for each of the other questions.
特定した前記形態素に対応する回答候補を出力する、
処理を前記コンピュータに実行させることを特徴とする請求項1〜3のいずれか一つに記載の回答出力プログラム。 If the second question is not identified, a machine based on the memory content of the second storage unit that associates and stores a morpheme detected by morphologically analyzing the question and each element included in the morpheme Learning to identify morphemes corresponding to the first question,
Outputting an answer candidate corresponding to the identified morpheme;
The answer output program according to any one of claims 1 to 3, wherein the computer is made to execute processing.
受け付けた前記第1の質問に対応する回答候補がない場合、質問に対応する回答候補がないときに後続して入力を受け付けた他の質問であって、前記他の質問に対して表示されたいずれかの回答候補が選択された前記他の質問を、前記質問と対応付けて記憶する記憶部の記憶内容に基づく機械学習を行って、前記第1の質問に後続して入力される第2の質問を特定し、
特定した前記第2の質問に対応する回答候補を出力する、
処理をコンピュータが実行することを特徴とする回答出力方法。 Accept input for the first question,
In the case where there is no answer candidate corresponding to the accepted first question, it is another question which subsequently receives an input when there is no answer candidate corresponding to the question, and is displayed for the other question A machine learning is performed based on the memory content of the storage unit that stores the other question in which any answer candidate is selected in association with the question, and the second question is input following the first question Identify the questions of
Outputting an answer candidate corresponding to the identified second question;
An answer output method characterized in that a computer executes a process.
受け付けた前記第1の質問に対応する回答候補がない場合、質問に対応する回答候補がないときに後続して入力を受け付けた他の質問であって、前記他の質問に対して表示されたいずれかの回答候補が選択された前記他の質問を、前記質問と対応付けて記憶する記憶部の記憶内容に基づく機械学習を行って、前記第1の質問に後続して入力される第2の質問を特定し、
特定した前記第2の質問に対応する回答候補を出力する、
制御部を有することを特徴とする情報処理装置。 Accept input for the first question,
In the case where there is no answer candidate corresponding to the accepted first question, it is another question which subsequently receives an input when there is no answer candidate corresponding to the question, and is displayed for the other question A machine learning is performed based on the memory content of the storage unit that stores the other question in which any answer candidate is selected in association with the question, and the second question is input following the first question Identify the questions of
Outputting an answer candidate corresponding to the identified second question;
An information processing apparatus comprising a control unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017207625A JP7009912B2 (en) | 2017-10-26 | 2017-10-26 | Answer output program, answer output method and information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017207625A JP7009912B2 (en) | 2017-10-26 | 2017-10-26 | Answer output program, answer output method and information processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019079438A true JP2019079438A (en) | 2019-05-23 |
JP7009912B2 JP7009912B2 (en) | 2022-01-26 |
Family
ID=66627903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017207625A Active JP7009912B2 (en) | 2017-10-26 | 2017-10-26 | Answer output program, answer output method and information processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7009912B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7046332B1 (en) | 2021-06-28 | 2022-04-04 | カラクリ株式会社 | Programs, methods, and systems |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016147401A1 (en) * | 2015-03-19 | 2016-09-22 | 株式会社 東芝 | Classification device, method, and program |
-
2017
- 2017-10-26 JP JP2017207625A patent/JP7009912B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016147401A1 (en) * | 2015-03-19 | 2016-09-22 | 株式会社 東芝 | Classification device, method, and program |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7046332B1 (en) | 2021-06-28 | 2022-04-04 | カラクリ株式会社 | Programs, methods, and systems |
JP2023004580A (en) * | 2021-06-28 | 2023-01-17 | カラクリ株式会社 | Program, method and system |
Also Published As
Publication number | Publication date |
---|---|
JP7009912B2 (en) | 2022-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210216915A1 (en) | Systems and Methods for Predictive Coding | |
CN102567475B (en) | User interface for interactive query reformulation | |
US8082247B2 (en) | Best-bet recommendations | |
US8311957B2 (en) | Method and system for developing a classification tool | |
CN108460082B (en) | Recommendation method and device and electronic equipment | |
WO2018157625A1 (en) | Reinforcement learning-based method for learning to rank and server | |
US20220237230A1 (en) | System and method for automated file reporting | |
CN109299245B (en) | Method and device for recalling knowledge points | |
US20190114711A1 (en) | Financial analysis system and method for unstructured text data | |
JP2006195756A (en) | Information retrieval device, and device for presenting improvement method of information retrieval site | |
US8825641B2 (en) | Measuring duplication in search results | |
KR20070009338A (en) | Image search method and apparatus considering a similarity among the images | |
US20040267553A1 (en) | Evaluating storage options | |
JP4896132B2 (en) | Information retrieval method and apparatus reflecting information value | |
CN114218958A (en) | Work order processing method, device, equipment and storage medium | |
CN112487283A (en) | Method and device for training model, electronic equipment and readable storage medium | |
WO2020177463A1 (en) | Information processing method and apparatus, storage medium, and electronic device | |
JPWO2015030112A1 (en) | Data separation system, data separation method, program for data separation, and recording medium for the program | |
CN114139634A (en) | Multi-label feature selection method based on paired label weights | |
JP2020170427A (en) | Model creation supporting method and model creation supporting system | |
JP2019079438A (en) | Answer output program, answer output method, and information processing apparatus | |
JP7009911B2 (en) | Answer output program, answer output method and information processing device | |
JPWO2019167282A1 (en) | Response processing program, response processing method, response processing device, and response processing system | |
US20230143777A1 (en) | Semantics-aware hybrid encoder for improved related conversations | |
CN110413763A (en) | Searching order device automatically selects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200709 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210521 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210608 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210805 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20211214 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211227 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7009912 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |