(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0013】
以下、本発明に係る実施形態を図面とともに説明する。
【0014】
まず、
図1を参照して、本願の一実施形態におけるコンピュータシステム10について説明する。通常、ヘルプデスクでは、ユーザによる問い合わせに対してオペレータが回答を行っている。本願の一実施形態におけるコンピュータシステム10は、オペレータの代わりにチャットボットを用いてユーザに自動回答を行うことができる環境で使用される。したがって、本願の一実施形態におけるコンピュータシステム10は例として、ヘルプデスクを有する金融機関などサービス事業者や各種メーカーなど、あらゆる企業に設置されている。ここで本願の一実施形態におけるコンピュータシステム10は単独で実装されてもよいし、従来から存在するシステムにおけるサーバもしくはホストコンピュータに実装されてもよい。
【0015】
本願の一実施形態におけるコンピュータシステム10は、ネットワーク30を介して端末20a〜20cに接続される。ネットワーク30は、インターネットであっても、LAN(Local Area Network)やWAN(WideArea Network)であってもよい。
【0016】
なお、以下において各端末20a〜20cを特に区別して記載する必要がない場合には、端末20と記載する。また、
図1において、説明を簡単にするために端末20を3台だけ示しているが、これ以上存在しても良いことは言うまでもない。
【0017】
ここで端末20は、例えば企業で働く者、すなわち社員といったユーザが通常業務のために用いる端末を表す。ほかに、端末20は、例えば操作方法を確認したい一般消費者といったユーザが問い合わせのために用いる端末を表す。この端末20は、チャットボットを使用できる環境にあることを要する。
【0018】
端末20は、キーボードやタッチパネルなどのヒューマンインターフェースを持つものである。具体的には、デスクトップ型のパーソナル・コンピュータやノート型のパーソナル・コンピュータ、スマートフォン、タブレット型のようなモバイル型の情報処理端末などがあげられる。
【0019】
次に
図2を用いて、本願の一実施形態におけるコンピュータシステム10の構成について説明する。ここでは
図3乃至
図14の図面を参照して説明する。
図2に示すように、コンピュータシステム10は、送受信部11と、制御部12と、記憶部16とを備えており、記憶部16は、文書データベース17、除外単語データベース18、新FAQデータベース19、既存FAQデータベース21及び特定データベース22を備えている。
【0020】
まず、コンピュータシステム10の記憶部16について説明する。
【0021】
コンピュータシステム10の記憶部16は、端末20から送信された情報や各種データを記憶する機能を有する。記憶部16は、例えば、ハードディスクドライブ、SSD、フラッシュメモリなど各種の記憶媒体により実現される。
【0022】
次に記憶部16に格納されている文書データベース17、除外単語データベース18、新FAQデータベース19、既存FAQデータベース21及び特定データベース22について説明する。
【0023】
文書データベース17は、マニュアルなどからFAQを自動作成する場合に用いられ、当該マニュアルなどからなる文書データを格納している。マニュアルの具体例としては、例えば「Excelでの関数の使用法」などが挙げられる。
【0024】
除外単語データベース18は、後述するクラスタリングに用いない単語を格納している。格納されている単語の具体例は、「こんにちは」などの挨拶文、「は」、「に」、「です」などの助詞や助動詞である。
【0025】
新FAQデータベース19は、例えばヘルプデスクのオペレーターにユーザから新たに寄せられた質問とその回答から成る新たな照会履歴に基づいて作成されている。
図6に示すように、新たな照会履歴データからなる登録候補データが新FAQデータベース19に格納されている。登録候補データの中から後述する既存FAQデータベース21に登録されるFAQが選択される。新FAQデータベース19には、寄せられた質問が全て格納されている。したがって、「Excelで作成済グラフの種類を変更するには」および「Excelで作成済グラフの種類を変更したい」といった類似した質問が複数件存在する場合がある。
【0026】
既存FAQデータベース21には、
図7に示すように、既存の照会履歴からなる登録データが格納されている。この既存の照会履歴は、ユーザからの過去の質問とその回答とから成る。ただし、既存FAQデータベース21は、新FAQデータベース19と異なり、類似した質問が複数ある場合、類似する質問群の中からの「代表的な質問」1件のみを格納する。そのため、既存FAQデータベース21に格納される質問は互いに類似していない。
【0027】
特定データベース22は、ドキュメントからFAQを自動作成する場合に、FAQを作成する手がかりとなるとされる「は以下手順です」、「の場合はこうしてください」などの文字列が格納されている。当該文字列がドキュメントの文章中に存在した場合はその文章が抽出され、登録候補データとなる。
【0028】
ここで、コンピュータシステム10の制御部12の詳細な構成について説明する。
【0029】
制御部12は、取得部13と、スコアリング部14と、表示検証部15とから構成される。
【0030】
次に制御部12を構成する各部13乃至15の処理について説明する。なお、制御部12を構成する各部13乃至15の処理は全てプロセッサにより実施される。
【0031】
まず、本発明の実施形態に関わるコンピュータシステム10を、新FAQデータベース19を使用してFAQを自動作成することに用いた場合を前提として説明する。
【0032】
図3は制御部12の取得部13の処理を記載したものであり、ここでは
図6を参照しながら以下に説明する。
【0033】
まず、取得部13が新FAQデータベース19に格納されている登録候補データを読み込む(ステップS101)。さらに、除外単語データベース18に格納されている除外単語を参照することにより、取得部13は以下で述べるクラスタリングに必要な単語のみを抽出する。
【0034】
例えば、
図6の新FAQデータベース19の登録候補データにおいて、「Excelで作成済グラフの種類を変更するには」という「質問」項目では、除外単語データベース18に含まれている単語が「質問」項目から除去される。そして、「Excel」、「作成済」、「グラフ」、「種類」、「変更」といった単語が質問文から抽出される。
【0035】
取得部13は、ステップS101で抽出された単語の類似性などに基づいて「質問」項目のクラスタリングを行い、類似する「質問」ごとにグループ分けをする(ステップS102)。ここで、クラスタリングの手法は特に限定されない。
【0036】
例えば、
図6のFAQデータにおいては「Excelで作成済グラフの種類を変更するには」という質問と「Excelで作成済のグラフの種類を変更したい」という質問は類似であるため、同じグループに属すると取得部13によって判断される。
【0037】
また、「グループ」とは、例として「Excelでグラフの種類を変更する方法」といった質問の内容を分類するためのカテゴリを表す。さらに、当該2つの質問は取得部13によって同じグループ番号「1」が付与される。
【0038】
次に取得部13は、同じグループ番号が付与されたそれぞれの質問において、クラスタリングによる重み付けを行う(ステップS103)。重み付けがされた各質問項目は
図8の「重み付けファイル」としてファイルに出力される。
【0039】
図8に示されるように、重み付けファイルはグループ番号と、重み付けの値と、質問内容によって構成される。ここで、同じグループ番号を付された質問において重み付けの値が1に近くなるほどそのグループへの分類が確からしいものといえる。
【0040】
例えば、
図8において、グループ番号1の「Excelで作成済のグラフの種類を変更するには」という質問の重み付けの値が0.98であり、「Excelで作成済のグラフの種類を変更したい」という質問の重み付けの値は0.55である。これは、「Excelでグラフの種類を変更する方法」という同じカテゴリに属する質問の中で「Excelで作成済のグラフの種類を変更するには」という質問の方が、グループへの分類が確からしいものといえる。
【0041】
図4は、制御部12のスコアリング部14の処理を記載したものである。ここでは、
図9を参照しながら以下に説明する。
【0042】
コンピュータシステム10は、機械学習アルゴリズムにより既存FAQデータベース21の登録データに対して学習を行い、ユーザからの質問を既存FAQデータベース21の登録データの1つ若しくは複数に分類するためのテキスト分類器を生成する。スコアリング部14は、当該テキスト分類器を使用し、ユーザからの質問を既存FAQデータベース21の登録データの1つに分類し、さらにその分類の確からしさのスコアを出力する(ステップS201)。
【0043】
スコアリング部14は、テキスト分類器により、重み付けファイルの「質問」項目のテキスト分類を行い、併せてその分類のスコアを出力する(ステップS202)。ここで当該スコアが高ければ高いほど、重み付けファイルの「質問」項目の内容を、既存FAQデータベース21に格納されている登録データの「質問」項目の1つに分類した際の、その確信度が示される。
【0044】
例えば、後述する
図9の「結果一覧ファイル」を説明すると、グループ番号1の「Excelで作成済グラフの種類を変更するには」の「質問」を、既存FAQデータベース21の登録データで分類した場合、登録データの1つである「Excelでのグラフを作成方法」に分類した場合の確信度が最も高く、その確からしさのスコアが「0.88」であることが示される。
【0045】
図5は、制御部12の表示検証部15の処理を記載したものである。ここでは、
図8及び
図9を参照しながら以下に説明する。
【0046】
まず、表示検証部15は、「Excelでのグラフの作成方法」といった登録候補データの質問の内容を分類するための「分類項目」を、
図8の重み付けファイルの質問内容からテキスト分類器などを用いて取得する(ステップS301)。
【0047】
次に表示検証部15は、
図8の重み付けファイルからグループ番号、重み付けの値、「質問」項目、回答を取得する。そして、表示検証部15は、当該グループ番号、重み付けの値、「質問」項目、回答に加え、ステップS203で求めた重み付けファイルの「質問」項目の各スコアを「分類結果のスコア」として、さらにステップS301で取得した各分類項目を、
図9の「結果一覧ファイル」のように表示する(ステップS302)。
【0048】
管理者は「結果一覧ファイル」のグループ番号と同じグループ番号に分類されている質問群、重み付けの値、分類項目、分類結果のスコアから登録候補データの取捨選択を行い、新たなFAQとして登録候補データを追加すべきか否かを判断する。また、登録候補データの登録文言の修正、加筆、カテゴリの検討などを必要に応じて行う。
【0049】
例えば、特定のグループ番号内の質問の一覧を確認し、類似した質問が多数あると判断した場合、よく聞かれる質問、つまりFAQ登録候補として抽出する。この際、重みづけの値を確認し、値が低い質問はクラスタリングの信頼度が低いと判断し、無視するなど作業を効率化できる。
【0050】
また、質問「Excelで作成済グラフの種類を変更するには」のテキスト分類結果に「Excelでのグラフの作成方法」となっており、既に類似の情報が、既存FAQデータベース21の登録データに存在すると判断できる。この際、分類結果のスコアの値を確認し、値が低い質問は分類結果の信頼度が低いため、既存FAQデータベース21の登録データに存在しない可能性が高いと判断し、優先的に確認するなど作業を効率化できる。
【0051】
管理者は、質問項目に対する取得部13による「クラスタリング結果」とスコアリング部14による「分類結果」とから既存FAQデータベース21に新たに追加する登録候補データを決定する。例えば、上記の場合では、管理者は、クラスタ番号1の質問の一覧を確認し、を「Excelで作成済グラフの種類を変更するには」とその類似質問が合わせて2件問合せがあったと判断する。複数件の問合せがある一方で、既存FAQデータベース21の登録データには既に類似の質問「Excelでのグラフの作成方法」が登録されており、「分類結果のスコア」も高いため新たなFAQに追加しない、などと判断する。なお、新たに追加することが決定された登録候補データはコンピュータシステム10により、既存FAQデータベース19に追加される。また、クラスタリング結果及びテキスト分類結果に基づいて自動で登録候補データを決定することも方法として考えられる。例えば、まずクラスタリング結果の同じクラスタ番号の質問は類似とみなす。同じクラスタ番号の質問の件数を自動で計算し、一定以上の件数のクラスタ番号を自動で抽出、当該クラスタ番号の質問の内、クラスタリングの確信度の高いものを1つ選択する。次に、左記質問の内、テキスト分類結果のスコアが一定以上低いものを登録候補として抽出するなどである。管理者は、自動で抽出されたFAQ登録候補を確認し、追加・修正要否を判断するので効率的である。
【0052】
既存FAQデータベース21に新たな登録データが追加された後に、表示検証部15は質問を既存FAQデータベース21の登録データの1つに分類するテキスト分類器の学習を行うことができる。
【0053】
まず、コンピュータシステム10において、既存FAQデータベース21の登録データにより、ユーザからの質問の複数の言い回しに対応可能するための学習データを生成する。
【0054】
例えば、ユーザが「Excelで作成済グラフの種類を変更する方法を知りたい」と考えた場合において、コンピュータシステム10は、「エクセルで作成済グラフの種類を変更したい」という質問や「Excelで作成済グラフの種類をどうやって変えるの?」といった日本語の様々な表現による質問に表示検証部15を用いて対応することができる。
【0055】
具体的には、既存FAQデータベース21の登録データに「Excelで作成済グラフの種類を変更する方法を知りたい」という質問項目がある場合、FAQ登録支援システム10は、
図14の辞書データに基づいて、当該質問の項目のうち「変更する方法を知りたい」という言葉を「変更したい」や「変えたい」という言葉に置き換える。
【0056】
さらに、コンピュータシステム10は、「Excelで作成済グラフの種類を変更したい」、「Excelで作成済グラフの種類を変えたい」という学習データを生成し、既存FAQデータベース21に元からある「Excelで作成済グラフの種類を変更する方法を知りたい」という質問及びその回答と対応付ける。
【0057】
したがって、学習後は、既存FAQデータベース21に元からある「Excelで作成済グラフの種類を変更する方法を知りたい」という質問に対してだけでなく、「Excelで作成済グラフの種類を変更したい」という質問や「Excelで作成済グラフの種類を変えたい」というユーザからの質問にも同じ回答を返すことができる。
【0058】
さらに、既存FAQデータベース21に新たな登録データが追加された後に、表示検証部15は以下の処理も行うことができる。
【0059】
コンピュータシステム10は、既存FAQデータベース21の登録データに対して、上記で生成した質問データをランダムに学習データとテストデータに分割する。まず学習データに基づき学習を行い、ユーザが行った質問に対して登録データから回答を導くためテキスト分類器を生成する。この生成されたテキスト分類器に対して、コンピュータシステム10は、テストデータに対してテキスト分類を行い、想定どおりの回答が返答されるかのテストを実施し、自己評価する。
【0060】
また、上記テストデータは、自動学習に基づいて、登録データから生成することもできる。さらに、テストデータの分類結果のスコアと作成元のFAQとを機械学習アルゴリズムに基づいて比較することによりテストデータの精度の検証及び自己評価を行うこともできる。
【0061】
例えば、上記した既存FAQデータベース21の「Excelで作成済グラフの種類を変更する方法を知りたい」という登録データを元に作成された「Excelで作ったグラフの種類を変更する方法を知りたい」という質問データをテストデータとして用いた場合について以下に述べる。なお、この質問データは、自動学習により既存FAQデータベース21を用いて作成することもできる。
【0062】
コンピュータシステム10は、テストデータ「Excelで作ったグラフの種類を変更する方法を知りたい」を実行する。そして、
図9及び
図13の「結果一覧ファイル」での「分類結果のスコア」と、テストデータ作成元の登録データの「Excelで作成済グラフの種類を変更する方法を知りたい」という「質問」項目とを機械学習アルゴリズムに基づいて比較する。
【0063】
ここで、当該「Excelで作成済グラフの種類を変更する方法を知りたい」の質問項目は既に既存FAQデータベース21に登録されている。したがってコンピュータシステム10は、同内容のテストデータ「Excelで作ったグラフの種類を変更する方法を知りたい」の「分類結果のスコア」が登録データに類似するものとして一定以上の値になるかを機械学習アルゴリズムに基づいて検証し、検証の精度に基づいて自己評価を行う。
【0064】
本実施形態では、本発明を履歴一覧に基づく新FAQデータベース19を使用してFAQを作成することに用いた場合を記載した。一方、本発明を同様の技術により、マニュアルなどの文書データからFAQを作成することに用いることもできる。
【0065】
図10乃至
図13を参照して、本願の一実施形態に係るコンピュータシステム10をマニュアルなどの文書データからFAQを自動作成することに用いた場合の処理について記載する。なお、前述の本願の一実施形態に係るコンピュータシステム10を新FAQデータベース19を使用してFAQを自動作成することに用いた場合の処理と重複する処理については、適宜省略または簡略化して記載し、主に相違点を中心に説明する。
【0066】
図10は、本願の一実施形態に係るコンピュータシステム10を文書データからFAQを自動作成することに用いた場合における、制御部12の取得部13の処理を記載したものである。
【0067】
まず、取得部13は、文書データベース17に格納されているマニュアルなどの文書データを読み込む。そして、取得部13は、特定データベース22を参照して「の場合はこうしてください」などといった特定文字列を含む文章を既存FAQデータベース21への登録候補として文書データから抽出する。(ステップS401)なお、文書に構造があり、コンピュータシステム10内でその構造に基づいて既存FAQデータベース21への登録候補として抽出が可能な場合は、構造に基づく文章の抽出を行う。また、文書内に出現する単語を基に、当該文書に含まれる文章をスコアリングし、スコアの高い文章を文書データから抽出を行う。
【0068】
例えば、取得部13は、文書データから「Excelで作成済グラフの種類を変更するには以下を参照してください」といった特定文字列を含む文章を抽出する。例えば、取得部13は、文章にデータ抽出可能な見出しという構造がある場合、文書データから「Excelでの作成済グラフの種類の変更方法」などの見出し情報を抽出する。例えば、各単語に対して「当該単語の文書内の総出現回数」から「当該単語の文書内の総出現文章数」を割った値を単語スコアとし、各文章のスコアを当該文章に含まれる単語の単語スコアの和としてスコアリングを行い、スコアの高い文章を抽出する。
【0069】
図11は、本願の一実施形態に係るコンピュータシステム10を文書データからFAQを自動作成することに用いた場合における、制御部12のスコアリング部14の処理を記載したものである。
【0070】
スコアリング部14は、既存FAQデータベース21に基づき各単語のスコアリングを行う(ステップS501)
【0071】
次にスコアリング部14は、文章をスコアリングする(ステップS502)。なお、スコアリングの方法は、ステップS202で本願の一実施形態に係るコンピュータシステム10を新FAQデータベース19を使用してFAQを自動作成することに用いた場合と同様である。
【0072】
ステップS504でスコアリングされた文章は、重要文として
図12の「重要文ファイル」に出力される。ここで、重要文ファイルは、「テキスト分類結果」、「分類結果のスコア」、「重要文」、「回答案」から構成される。管理者は、例えば、分類結果と重要文を比較して既存FAQデータベース21に登録するかを判断する。
【0073】
図15は、コンピュータシステム10のシステム構成を示す。コンピュータシステム10は、CPU40、RAM41、ROM42、ストレージ43、接続インターフェース44およびネットワークインターフェース45を備える。各コンポーネント40〜45は、バス46を介して相互に通信可能に接続される。
【0074】
CPU40は、デバイスおよび回路のそれぞれを制御し、並びに演算およびデータ処理を行う。RAM41は一時記憶領域であり、CPU40による演算実行時に使用される。ROM42は、種々のプログラムを格納する記憶領域である。ストレージ43は、例えばHDD(Hard Disk Drive)、SSD(Solid State Drive)などにより構成され、様々なデータを格納する。CPU40の制御に基づいて、データがストレージ43から読み取られ、およびデータがストレージ43に書き込まれる。
【0075】
接続インターフェース44は、コンピュータシステム10に種々のデバイスを接続するためのインターフェースである。例えば、接続インターフェース44を介して、ディスプレイ、キーボード、マウス、外部記憶装置等がコンピュータシステム10に接続されることができる。
【0076】
ネットワークインターフェース45は、通信回線を通じてネットワーク30に接続される。そして、ネットワークインターフェース45は、CPU40の制御に基づいてネットワーク30およびコンピュータシステム10の間のデータの入出力を制御する。ネットワークインターフェース45およびネットワーク30の間の接続は、有線接続および無線接続のいずれであってもよい。
【0077】
なお、本願においては、ネットワークインタフェース45が送受信部11に対応し、CPU40が制御部12に対応する。また、ストレージ43が記憶部16に対応する。
【0078】
以上のとおり、本願の一実施形態に係るコンピュータシステム10が構成されている。次に、コンピュータシステム10の効果を説明する。
【0079】
本実施形態によれば、スコアリング部14は、登録データに対して自動的に学習データを生成し、機械学習アルゴリズムに基づいて分類及びスコアリングを行う。したがって、本実施形態によれば、比較的シンプルにFAQの追加の有無を判断するためのスコアリングを行うことができるため、ユーザからの問い合わせデータの件数が多い場合は時間やコストの観点から特に効率的となる。
【0080】
本実施形態によれば、表示検証部15は、自動学習に基づいて、機械学習アルゴリズムにより登録データから生成されたテストデータの分類結果の値と登録データの内容とを比較することにより、テストデータの精度を検証することを更に含む。したがって、本実施形態によれば、学習データの生成と学習及びテストを自動で実施するため、マンパワーを削減することができ、効率的である。
【0081】
本実施形態によれば、文書データは、マニュアルデータと、照会履歴データとを含む。したがって、本実施形態によれば、マニュアルなどの文書やユーザからの質問及び回答からなる照会履歴の双方に基づいて、FAQを作成し、新しいFAQを追加するか否かを判定するための支援を行うことができる。
【0082】
以上、本発明に係る実施形態について説明したが、本発明はかかる実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々なる態様で実施し得ることは言うまでもない。例えば、コンピュータシステム10や制御部12の各部13乃至15の役割は、上述の例に限定されない。また、本願の一実施形態に係るコンピュータシステム10及び方法は、プログラムとコンピュータ読み取り可能な記憶媒体に適用可能であるのは言うまでもない。