以下、図面を参照しながら本発明の実施形態について説明する。
図1は、本実施形態の文書表示装置100aの構成の一例を示すブロック図である。本実施形態の文書表示装置100aは、ユーザ端末10aと、情報処理装置50とを備えており、それらがネットワーク90を介して接続されている。なお、文書表示装置100aは、文書表示システムと称しても良い。
ユーザ端末10aは、スマートフォン、タブレット型パーソナルコンピュータ(PC)、ノート型PC、等の携帯端末であるが、デスクトップPCなどの固定的に設置されている装置であっても良い。本実施形態では、ユーザが、ユーザ端末10aを操作して文書(文書データ)の表示要求を行い、ユーザ端末10aのタッチパネル16に文書を表示させる。
情報処理装置50は、ネットワーク90を介して、ユーザ端末10aから文書の表示要求を受け取り、ユーザ端末10aに表示要求があった文書を提供するサーバである。
ネットワーク90は、LANやインターネット等である。
本実施形態の文書表示装置100aは、情報処理装置50が、ユーザ端末10aから表示要求があった文書の中の語句を秘匿化して秘匿化文書を生成し、その秘匿化文書をユーザ端末10aに提供する。そして、ユーザ端末10aが、その秘匿化文書をタッチパネル16に表示させる。なお、以下、文書の中の秘匿化される語句を、元語句という。
また、本実施形態の文書表示装置100aは、ユーザ端末10aのタッチパネル16に秘匿化文書が表示されている状態において、ユーザからタッチパネル16を介して元語句についてのヒント要求が出された場合には、情報処理装置50が、その元語句についてのヒント情報を生成し、ユーザ端末10aに提供する。そして、ユーザ端末10aは、タッチパネル16に、そのヒント情報を表示する。
なお、本実施形態の文書表示装置100aが扱う文書は、例えば、会社等で扱う文書である議事録、報告書、設計書、メモなどであるが、その他のものであっても良く、限定されない。
図1に示すように、ユーザ端末10aは、制御部12と、記憶部14と、タッチパネル16と、通信部18とを備えている。
制御部12は、CPU等のプロセッサを含み、ユーザ端末10aにインストールされているプログラムに従って情報処理を実行する。記憶部14は、ROM、RAM、フラッシュメモリ等であり、制御部12が実行するプログラムや、一時的なデータ等を記憶する。タッチパネル16は、ユーザがユーザ端末10aを利用するための操作画面や、秘匿化文書、ヒント情報を表示すると共に、ユーザからの操作を受け付けるUI(ユーザーインターフェイス)である。通信部18は、例えばネットワークカードであり、ネットワーク90を介して、情報処理装置50と通信を行う。
ユーザ端末10aにインストールされるプログラムは、例えば、インターネット等の通信手段により提供される。また、光ディスク等のコンピュータ読み取り可能な記憶媒体に格納して提供されても良い。
また、図1に示すように、情報処理装置50は、制御部52と、記憶部54と、操作部56と、表示部58と、通信部60とを備えている。
制御部52は、CPU等のプロセッサを含み、情報処理装置50にインストールされているプログラムに従って情報処理を実行する。記憶部54は、ROM、RAM、ハードディスク等であり、制御部52が実行するプログラムや、一時的なデータ等を記憶する。また、記憶部54は、文書68(文書データ)と、後述する文書閲覧ログ70と難易度実績情報72とを記憶する。操作部56は、キーボード、マウス、タッチパネルなどであり、情報処理装置50の管理者等からの入力を受け付ける。表示部58は、ディスプレイであり、各種画面を表示する。通信部60は、例えばネットワークカードであり、ネットワークを介して、ユーザ端末10aと通信を行う。
制御部52は、記憶部54に記憶されているプログラムに従って情報処理を実行することにより、生成手段としての秘匿化文書生成部62、提供手段としてのヒント情報提供部64、管理手段としてのヒント難易度管理部66等として機能する。なお、情報処理装置50にインストールされるプログラムは、インターネット等の通信手段により提供されても良いし、光ディスク等のコンピュータ読み取り可能な記憶媒体に格納して提供されても良い。
図2、図3は、本実施形態の文書表示装置100aの処理の流れの一例を示すフローチャートである。
図2に示すように、まず、S100で、ユーザ端末10aは、情報処理装置50へ、文書68の表示要求を送信する。これは、ユーザがユーザ端末10aを操作して文書68の表示要求を行うことをきっかけに行われる。この際、ユーザが表示要求した文書68の識別情報も、ユーザ端末10aから、情報処理装置50へ送信される。
次に、S102で、情報処理装置50は、ユーザ端末10aから文書68の表示要求と文書68の識別情報とを受信すると、文書68の識別情報を用いてユーザが表示要求した文書68を把握し、その文書68(文書データ)を記憶部54から読み出す。
そして、次のS104からS108で、情報処理装置50の秘匿化文書生成部62が、記憶部54から読み出された文書68から、秘匿化文書を生成する。
まず、S104で、秘匿化文書生成部62は、文書68の中から秘匿化する語句(元語句)を抽出する。抽出する元語句は、例えば、人名、会社名、部門名などの固有名詞や、個人情報に関する語や句等である。この抽出処理は、例えば、公知である形態素解析や意味解析を用いて行う。
秘匿化する元語句を抽出した後は、S106に進む。S106で、秘匿化文書生成部62は、抽出された元語句の秘匿化度を決定する。
図4は、本実施形態における秘匿化度とその秘匿化度に応じた秘匿化方法とを示す表(以下、定義表という)である。また、図5は、元語句の例と、その元語句を秘匿化度に応じて秘匿化した際の元語句の表示のされ方とを示す表である。なお、図4,5のヒント難易度と、ヒント情報とについては後述する。本実施形態では、図4に示すように秘匿化度として複数段階の秘匿化度が定義されており、図4,5に示すように秘匿化度が高くなるに従って元語句が認識し難くなるように元語句が秘匿化される。
図2のS106で、秘匿化文書生成部62は、元語句毎に秘匿化度を決定する。本実施形態では、秘匿化度の決定方法が複数有り、ここではユーザの属性に従って秘匿化度を決定する方法について説明し、その他の方法については後述する。
図6は、ユーザの属性に応じた秘匿化度の一例を示す表(以下、ユーザ属性の表という)である。図6のユーザ属性の表では、ユーザIDと役職とが対応付けられ、役職に対して秘匿化度が定義されている。また、役職が高くなるに従って、秘匿化度が高くなるように定義されている。このユーザ属性の表は、例えば、情報処理装置50の記憶部54に予め記憶されている。
情報処理装置50は、例えば、ユーザ端末10aから、文書68の表示要求と共にユーザIDを取得し、ユーザ属性の表を用いて、ユーザID(人物)の役職を取得する。そして、ユーザ属性の表を用いて、その役職に応じた秘匿化度を取得する。例えば、図6に示すユーザIDのYamadaがユーザである場合には、役職として課長が取得され、この課長に対応付けられた秘匿化度=5が取得される。秘匿化文書生成部62は、この取得された秘匿化度を、元語句の秘匿化度として決定する。なお、この秘匿化度の決定方法では、全ての元語句が、同一の秘匿化度に決定される。
決定された元語句毎の秘匿化度は、秘匿化度情報として、例えば、情報処理装置50の記憶部54に記憶される。なお、元語句には、元語句毎にID(元語句ID)が付され、秘匿化度情報は、元語句IDと、元語句と、秘匿化度とが対応付けられた情報である。
図2のS106で元語句の秘匿化度を決定した後は、S108に進む。S108で、秘匿化文書生成部62は、元語句を秘匿化度に従って秘匿化し、これにより秘匿化文書(秘匿化文書データ)を生成する。
S108の秘匿化文書の生成において、まず、秘匿化文書生成部62は、元語句毎に、元語句を秘匿化度に従って秘匿化し、秘匿化された元語句(以下、秘匿化語句という)を生成する。そして、秘匿化文書生成部62は、文書68の中の元語句を、秘匿化語句に置き換えることで、秘匿化文書を生成する。
図7は、元語句が秘匿化される前の文書68の一例を示す図である。図7で、下線が付されているものが元語句である(下線は、元語句を示す為に付されているものであり、実際の文書68には存在しない。図8以降の図についても同じである)。
図8は、図7に示す文書68から生成した秘匿化文書の一例を示す図である。図8に示す秘匿化文書は、図7に示す文書68の各元語句を、図4の定義表の秘匿化度=5で秘匿化したものである。
なお、秘匿化文書生成部62は、秘匿化語句と元語句との対応が分かるように、秘匿化文書(秘匿化文書データ)の中に、各秘匿化語句に対応づけた元語句IDの情報を付加する(但し、元語句IDの情報は、秘匿化文書の一部として表示はされない)。
図2のS108で秘匿化文書が生成された後は、S110で、情報処理装置50は、ユーザ端末10aに、秘匿化文書を送信する。また、S112で、情報処理装置50は、文書閲覧ログ70を情報処理装置50の記憶部54に記憶する。文書閲覧ログ70は、表示要求を行ったユーザのユーザIDと、閲覧日時(本実施形態では、秘匿化文書を送信した日時)と、文書68の識別番号(文書ID)とからなるログである。文書閲覧ログ70については、図11を用いて後でも触れる。
S114で、ユーザ端末10aは、情報処理装置50から秘匿化文書を受信し、タッチパネル16に秘匿化文書を表示する。
次に、図3を用いて、S114の後の処理の流れについて説明する。S114の後は、S200に進む。図3に示すように、S200で、ユーザ端末10aは、ユーザにより秘匿化文書の表示終了指示が出されたか否かを確認する。表示終了指示が出された場合(S200:Yes)には、処理を終了する。
表示終了指示が出されていない場合(S200:No)には、S202で、ヒント要求が出されたか否かを確認する。本実施形態では、タッチパネル16に表示された秘匿化文書の中の、ヒント情報が欲しい秘匿化語句を、ユーザが指定することによりヒント要求が出される。図9の上側は、タッチパネル16上で、ユーザからヒント要求が出される様子を示している。図9に示すように、タッチパネル16上に表示された秘匿化文書の中の、ヒント情報が欲しい秘匿化語句(図9では「お■■」)を、ユーザが指110で触れることによりヒント要求が出される。なお、ヒント要求は、マウス等によって秘匿化語句を指定することによって出されても良い。
図3のS202で、ヒント要求が出されていない場合(S202:No)には、再び、S200で表示終了指示が出されたか否かを確認する。すなわち、表示終了指示と、ヒント要求とのいずれかが出されるのを待機する。
S202で、ヒント要求が出された場合(S202:Yes)には、ユーザ端末10aは情報処理装置50に、ヒント要求を送信する。この際、ヒント要求が出された秘匿化語句に対応づけて付加されている元語句IDも、情報処理装置50に送信する。
情報処理装置50は、ユーザ端末10aから、ヒント要求と元語句IDとを受信する。そして、S204で、情報処理装置50のヒント情報提供部64は、元語句IDを用いて、元語句IDの元語句(ヒント要求が出された元語句)に対して、以前にヒント要求が出されたことがあるか否かを確認する。これは、一度ヒント要求が出されることで記録される難易度実績情報72があるか否かで判断を行う。難易度実績情報72については、後述する。
難易度実績情報72が無い場合、すなわち、以前にヒント要求が出されたことが無い場合(S204:No)には、S208に進む。S208で、ヒント情報提供部64は、ヒント要求が出された元語句の秘匿化度に相当するヒント難易度を取得する。
ヒント難易度は、提供されるヒント情報の情報量の多寡の度合である。前述した図4の定義表には、ヒント難易度と秘匿化度とが対応づけられており、ヒント難易度に応じたヒント情報の定義が、秘匿化度に応じた秘匿化方法の定義と一部重複して示されている。図4の定義表に示すように、ヒント難易度の値が低くなるに従って元語句を認識し易くなるように(元語句についての情報量が増えるように)ヒント情報が定義されている。なお、図4の定義表の秘匿化度とヒント難易度との対応関係は、例えば、情報処理装置50の記憶部54に予め記憶されている。
S208で、ヒント情報提供部64は、図4の定義表の秘匿化度とヒント難易度との対応関係を用いて、ヒント要求が出された元語句の秘匿化度に相当するヒント難易度を取得する。具体的には、まず、ヒント情報提供部64は、ユーザ端末10aから受信したヒント要求が出された元語句の元語句IDと、前述した秘匿化度情報(元語句IDと、元語句と、秘匿化度とを対応づけた情報)とを用いて、ヒント要求が出された元語句の秘匿化度を取得する。そして、図4の定義表の秘匿化度とヒント難易度との対応関係から、秘匿化度に相当するヒント難易度を取得する。例えば、ヒント要求が出された元語句の秘匿化度が5(秘匿化度=5)であった場合は、ヒント難易度=6を取得する。
一方、S204で、難易度実績情報72が有る場合、すなわち、以前にヒント要求が出されたことが有る場合(S204:Yes)には、S206に進む。S206で、ヒント情報提供部64は、難易度実績情報72から、ヒント要求が出された元語句の現在のヒント難易度(最低ヒント難易度)を取得する。
図10は、難易度実績情報72の一例を示す表である。図10に示すように、難易度実績情報72は、元語句IDと、元語句と、最低ヒント難易度とを対応づけた情報であり、ヒント難易度管理部66によって管理されている。最低ヒント難易度は、以前にヒント要求が出され、ヒント情報が提供された際のヒント難易度である。最低ヒント難易度は、換言すれば、現在、ユーザによって受け入れられているヒント情報のヒント難易度(現在のヒント難易度)と言うことができる。
図3のS206で、ヒント情報提供部64は、ユーザ端末10aから受信した元語句IDを用いて、難易度実績情報72から、ヒント要求が出された元語句に対応づけられた最低ヒント難易度を取得する。
次に、S210で、ヒント情報提供部64は、S206又はS208で取得されたヒント難易度を、1つ低下させる。例えば、S206又はS208で取得されたヒント難易度が3(ヒント難易度=3)であれば、ヒント難易度を2(ヒント難易度=2)に低下させる。
そして、S212で、ヒント情報提供部64は、S210で低下させたヒント難易度に応じて、ヒント情報を生成する。具体的には、図4の定義表に示されたヒント難易度に対応するヒント情報の定義に従って、ヒント情報を生成する。
S212でヒント情報を生成した後は、S214に進む。S214で、ヒント情報提供部64は、ヒント情報を含んだ秘匿化文書を生成し、それをユーザ端末10aに送信する。
また、S216で、ヒント難易度管理部66は、S210で低下させたヒント難易度を最低ヒント難易度として、元語句IDと、元語句と、最低ヒント難易度とを対応付けして難易度実績情報72を生成する。そして、ヒント難易度管理部66は、難易度実績情報72を、情報処理装置50の記憶部54に記憶する。
S218で、ユーザ端末10aは、情報処理装置50から、ヒント情報を含んだ秘匿化文書を受信し、それを、タッチパネル16に表示する。
図9は、元語句「おおの」が、秘匿化度=3(元語句の先頭1文字をそのままにし、残りをマスクする。)で秘匿化されて秘匿化語句「お■■」になっている状態(図9の上側の図)でヒント要求が出され、それに従って、ヒント情報を含んだ秘匿化文書が表示された(図9の下側の図)例である。この場合、ヒント要求が出されると、図4の定義表から、秘匿化度=3に相当するヒント難易度=3が取得され(図3のS208)、そのヒント難易度が低下させられヒント難易度=2が取得され(S210)、ヒント難易度=2のヒント情報(元語句の半分の文字をそのままにし、残りをマスクする)である「おお■」が生成される(S212)。図9の下側の図では、秘匿化語句「お■■」が、「おお■」に置き換わることによって、ヒント情報が提供されている。
S218で、ヒント情報を含んだ秘匿化文書がタッチパネル16に表示された後は、再び、表示終了指示(S200)と、ヒント要求(S202)とのいずれかが出されるのを待機する。
ヒント要求が再び出された場合には、それに応じてヒント情報を再び提供することになるが、以前にヒント要求が出された秘匿化語句(元語句)に対してヒント要求が再び出された場合には、以前よりもヒント難易度が低いヒント情報が提供されることになる。つまり、同じ秘匿化語句(元語句)に対して複数回ヒント要求が出された場合にはヒント難易度が徐々に低下し、より元語句を認識し易いヒント情報が提供されることになる。
例えば、図5に示す元語句の例である「春夏秋冬」が、秘匿化度=5で秘匿化されて、秘匿化語句「S■■■」となって秘匿化文書が作成されていた場合に、この秘匿化語句に対して1回目のヒント要求が出された場合には、(秘匿化度=5に相当するヒント難易度=6から1つ低下した)ヒント難易度=5のヒント情報である「し■■■」が提供される(秘匿化語句「S■■■」が「し■■■」に置き換わる)。この時、ヒント難易度管理部66は、元語句「春夏秋冬」の難易度実績情報72として、最低ヒント難易度=5の難易度実績情報72を、記憶部54に記憶する。
そして、2回目のヒント要求が出された場合には、(難易度実績情報72の最低ヒント難易度=5から1つ低下した)ヒント難易度=4のヒント情報である「春■■■」が提供される(秘匿化語句「し■■■」が「春■■■」に置き換わる)。
このように、ヒント要求が繰り返されることで、ヒント難易度が徐々に下がっていき、最終的には、ヒント難易度=0になる。ヒント難易度=0では、元語句「春夏秋冬」が秘匿化されずに、そのままヒント情報として提供されることになる。
なお、本実施形態の図4の定義表に従ってヒント情報を提供する場合、元語句の内容によっては、ヒント難易度を1つ低下してもヒント情報が変化しない(元語句についての情報量が増えない)場合がある。
例えば、図5に示す元語句の例である「FAO」が、秘匿化度=5で秘匿化されて、秘匿化語句「F■■」となっていた場合に、ヒント要求が出されて(秘匿化度=5に相当するヒント難易度=6から1つ低下した)ヒント難易度=5のヒント情報が提供されても、ヒント情報は「F■■」であり、元語句についての情報量が増えない。これは、ヒント難易度=5のヒント情報が、「元語句の先頭1文字がひらがなにし、残りはマスクする」というものであり、元語句「FAO」の場合は、先頭1文字が「F」がアルファベットであり、ひらがなが存在しないためである。
よって、ヒント難易度を低下させてもヒント情報が変化しない(元語句についての情報量が増えない)場合には、ヒント情報が変化するヒント難易度まで、一気にヒント難易度を低下させても良い。
例えば、上記した、図5に示す元語句「FAO」の場合は、ヒント要求が1回出されることで、秘匿化度=5に相当するヒント難易度=6から、ヒント情報が変化するヒント難易度=2まで、一気に低下させても良い。
以上説明した文書表示装置100aは、文書中の元語句をユーザ(ユーザの属性)に応じた秘匿化度で秘匿化し、これにより秘匿化文書を生成する。よって、各々のユーザに適した秘匿化度で元語句を秘匿化することができる。また、ユーザに適した秘匿化度で元語句が秘匿化されるので、ユーザがヒント要求を出す頻度を抑制することができる。
また、以上説明した文書表示装置100aは、秘匿化文書をユーザ端末10aのタッチパネル16に表示した状態において、ユーザからヒント要求が出された場合に、ユーザに対して元語句についてのヒント情報を提供する。よって、秘匿化された部分(秘匿化語句)を一度に復元して、元語句を表示させる場合に比べて、覗き見によるリスクが低減することができる。
また、以上説明した文書表示装置100aは、秘匿化文書を生成した際に用いた秘匿化度、すなわち、ユーザ(ユーザの属性)に応じた秘匿化度に相当するヒント難易度を取得し、そのヒント難易度を低下させてヒント情報を生成する。よって、一律のヒント難易度をもってヒント情報を生成する場合に比べて、ユーザに適するヒント情報が生成される可能性を高めることができる。
また、以上説明した文書表示装置100aは、ユーザから複数のヒント要求が順次出された場合に、ヒント難易度が順次引き下がるように、複数のヒント情報を順次提供する。よって、ユーザにとって必要な情報を提供しつつも、一律のヒント難易度をもってヒント情報を生成する場合に比べて、提供される情報を少なくでき、覗き見によるリスクを低減することができる。
また、以上説明した文書表示装置100aは、図4の定義表の秘匿化方法に示すように、元語句の少なくとも一部を加工することにより秘匿化を行い、元語句における加工部分の少なくとも一部を復元することによりヒント情報を生成する。よって、元語句を簡易に秘匿化できると共に、元語句を理解し易いヒント情報を提供することができる。
なお、図4の定義表の秘匿化方法とヒント情報とは、元語句の文字数がわかるように秘匿化を行い、ヒント情報を提供する。しかし、文字数がわからないように、例えば、文字数を変えて、秘匿化を行い、ヒント情報を提供しても良い。
また、図4の定義表では、秘匿化度と、ヒント難易度との定義が完全に一致していない(ヒント難易度の設定はあるが、秘匿化度の設定がないもの(ヒント難易度=4等)がある)が、秘匿化度と、ヒント難易度との定義を完全に一致させたものであっても良い。また、図4の定義表では、秘匿化方法とヒント情報とが一部重複しているが、秘匿化方法とヒント情報とは全く異なるものであっても良い。
以上説明したヒント情報は、秘匿化された元語句(秘匿化語句)の一部または全部を復元することにより提供された。しかし、図4の定義表のヒント難易度=1の場合に示すように、ヒント情報は、「元語句が存在する文書の中の元語句が存在する位置に基づいて、当該文書の中の文字列を抜粋して表示する」ことで提供されても良い。これについて、次に説明する。
ユーザからヒント要求が出されて、ヒント難易度が所定のヒント難易度(図4では、ヒント難易度=1)になった場合には、ヒント情報提供部64は、まず、ヒント要求が出された元語句が存在する文書68を検索する。本実施形態では、ヒント要求を出したユーザの文書閲覧ログ70(過去に閲覧した文書の情報のログ)にある文書68を検索する。
図11は、文書閲覧ログ70の一例を示す表である。図11に示すように、文書閲覧ログ70は、ユーザIDと、ユーザIDのユーザが文書を閲覧した日時(閲覧日時)と、閲覧された文書の識別番号(文書ID)とからなるログである。図11には、ヒント要求を出したユーザ(ユーザID:Yamada)の文書閲覧ログ70が示されている。
ヒント情報提供部64は、ヒント要求が出された元語句(例として「FOGE」)が、文書閲覧ログ70にある各文書68の中に存在するか否かを検索する。図11には、その検索結果が、右端の列に示されている。そして、ヒント情報提供部64は、ヒント要求が出された元語句が存在する文書のうち、最も直近に閲覧された文書68を選択する(図11では、太線で囲われた、文書ID:100005を選択する)。
次に、ヒント情報提供部64は、選択した文書(以下、選択文書という)の中の元語句が存在する位置に基づいて、選択文書の中の文字列を抜粋する。図12には、ヒント要求が出された元語句「FOGE」と、その元語句の後ろにある文字列とを抜粋する例が示されている(図12では、太線で囲われている文字列が抜粋される)。そして、ヒント情報提供部64は、その抜粋した文字列を、ヒント情報として提供する。
図13の上側には、タッチパネル16上で秘匿化語句「FO■■」(元語句「FOGE」)にヒント要求が出される様子が示されており、図13の下側には、それに従って、元語句「FOGE」のヒント情報として、上記した抜粋した文字列が提供された様子が示されている。なお、図13の下側に示すように、ヒント情報として抜粋した文字列を提供する場合に、その文字列に元語句が含まれる際には、その元語句を秘匿化して表示する(図13の下側では、元語句「FOGE」が秘匿化されて「FO■■」になっている)。
このように、ヒント情報提供部64(ヒント情報生成手段)が、ヒント要求が出された元語句を含む他の文書に基づいてヒント情報を生成することにより、他の文書68にある元語句に関連する文章等を、ヒント情報として提供することができる。
なお、図12の例では、元語句と、元語句の後ろの文字列とを抜粋したが、元語句と、元語句の前の文字列とを抜粋するものであっても良い。また、元語句の位置から離れた文字列を抜粋するものであっても良い。また、抜粋する文字列の文字数は任意でよく、文章単位で抜粋するものであっても良い。
以上説明した秘匿化度の決定(図2の106)方法は、ユーザの属性に基づいて、秘匿化度を決定するものであった。しかし、秘匿化文書が表示され、ヒント要求が出されることによって、難易度実績情報72が記録されている場合には、次に秘匿化文書を生成する際に、この難易度実績情報72を用いて秘匿化度を決定しても良い。次に、この秘匿化度の決定方法について説明する。
図14は、難易度実績情報72を用いた秘匿化度の決定処理の流れの一例を示すフローチャートである。
まず、図14のS300で、秘匿化文書生成部62は、難易度実績情報72を記憶部54から読み出す。難易度実績情報72は、前述したように、図10に示すように、元語句IDと、元語句と、最低ヒント難易度とが対応づけられた情報である。なお、ここで秘匿化度を決定する元語句には、難易度実績情報72が有るものと、無いものとがあり、それに応じて、以下では処理が異なる。
次に、S302で、秘匿化文書生成部62は、秘匿化する元語句を1つ選択する。そして、S304で、秘匿化文書生成部62は、選択した元語句についての難易度実績情報72が有るか否かを確認する。
難易度実績情報72がある場合(S304:Yes)には、S306に進む。S306で、秘匿化文書生成部62は、選択した元語句の最低ヒント難易度を難易度実績情報72から取得し、図4の定義表に示された秘匿化度とヒント難易度との対応関係を用いて、最低ヒント難易度に相当する秘匿化度を取得する。例えば、図10に示す難易度実績情報72の中の「春夏秋冬」が、選択した元語句である場合には、それに対応づけられた最低ヒント難易度=2が取得され、そのヒント難易度=2に相当する秘匿化度=2を取得する。そして、その取得された秘匿化度を、その元語句の秘匿化度として決定する。このように、難易度実績情報72を有する元語句の秘匿化度を、最低ヒント難易度に相当する秘匿化度に決定することにより、過去にその元語句についてヒント要求が出された実績に基づいた秘匿化度が決定される。よって、ユーザにとって最適な秘匿化度が決定されることになる。
一方、難易度実績情報72が無い場合(S304:No)には、S308に進む。S308で、秘匿化文書生成部62は、前述したユーザ属性の表(図6を参照)に基づいて暫定の秘匿化度を決定する。そして、S310で、秘匿化文書生成部62は、他の元語句の難易度実績情報72の最低ヒント難易度で、暫定の秘匿化度を補正し、秘匿化度を決定する。S310の具体的な処理について、図15を用いて説明する。
図15は、難易度実績情報72を有さない元語句の秘匿化度について説明する為の表である。図15には、難易度実績情報72を有している他の元語句と、それらの最低ヒント難易度が示されている。秘匿化文書生成部62は、まず、図4の定義表に示された秘匿化度とヒント難易度との対応関係を用いて、他の元語句の最低ヒント難易度に相当する秘匿化度を取得する(図15の(B))。そして、秘匿化文書生成部62は、前述したユーザ属性の表(図6を参照)に基づいた秘匿化度を取得する(図15の(A))。そして、秘匿化文書生成部62は、ユーザ属性に基づいた秘匿化度(図15の(A))と、最低ヒント難易度に相当する秘匿化度(図15の(B))との差であるギャップ(図15の(A−B))を計算する。そして、秘匿化文書生成部62は、各元語句のギャップ(A−B)を合計して、ギャップの合計を求める。図15の例では、ギャップの合計として、10が得られている。
秘匿化文書生成部62は、ギャップの合計10を、図15に示された難易度実績情報72を有する元語句の数である5で割って、補正量として2を取得する。そして、図14のS308で決定した暫定の秘匿化度から、補正量の2を引いて、秘匿化度を求める。例えば、暫定の秘匿化度が5であれば、秘匿化度=3が求められる。
このように、難易度実績情報72を有さない元語句の秘匿化度については、難易度実績情報72を有する元語句の最低ヒント難易度を用いて調整を行う。これにより、ヒント要求が出される傾向を、難易度実績情報72を有さない元語句の秘匿化度に適用することができる。
S306又はS310で、選択した元語句の秘匿化度が決定された後は、S312に進み、全ての元語句を選択したかを確認する。そして、全ての元語句の秘匿化度が決定するまで処理が繰り返される。
以上説明した秘匿化度の決定方法は、難易度実績情報72に基づいて元語句の秘匿化度を決定するので、ユーザにとって最適な秘匿化度が決定される可能性が高い。よって、秘匿化文書が表示された後に、ユーザがヒント要求を出す頻度を抑制することができ、利便性が向上する。
なお、難易度実績情報72が作成されてから時間が経過している場合には、難易度実績情報72の信頼性が低い。よって、難易度実績情報72が作成されてから所定の時間が経過している場合には、難易度実績情報72を用いずに秘匿化度を決定するようにしても良い。また、難易度実績情報72が作成されてから所定の時間が経過している場合には、算出されたギャップの合計から求められた補正量よりも小さい補正量を、暫定の秘匿化度から差し引いて、秘匿化度を決定しても良い。
図3のフローを用いて説明したヒント要求に応じた処理では、ヒント要求が出される度に、ヒント難易度が低下する。よって、上記した難易度実績情報72を用いて秘匿度を決定する方法では、難易度実績情報72を有する元語句については、大きく低下した最低ヒント難易度に相当する秘匿化度が決定される可能性がある。
しかし、ユーザは、元語句を含んだ秘匿化文書を多く読んでいれば、その元語句の秘匿化度を高くした場合であっても、その元語句を理解できる可能性がある。そこで、上記した難易度実績情報72を用いて秘匿化度を決定する方法において、難易度実績情報72を有する元語句の秘匿化度を、最低ヒント難易度に相当する秘匿化度ではなく、最低ヒント難易度よりも高い秘匿化度に決定しても良い。
これにより、ユーザの元語句を理解できる能力が向上している場合を考慮した秘匿化度で元語句を秘匿化することができる。
なお、最低ヒント難易度に相当する秘匿化度にするのか、最低ヒント難易度よりも高い秘匿化度にするのかを、元語句ごとに選択的に変えるものであっても良い。また、ユーザが高い秘匿化度でも理解できるのかを検証する目的で、特定の元語句だけ、最低ヒント難易度よりも高い秘匿化度に決定するものであっても良い。
以上説明した秘匿化度の決定方法以外にも、秘匿化度の決定方法は、次に説明する、ユーザの文書閲覧実績に応じて秘匿化度を決定するものであっても良い。
ユーザは秘匿化された元語句を多く見ている場合には、その元語句の秘匿化度が高い場合であっても、その元語句を認識できる可能性が高い。よって、過去一定期間内に閲覧した文書68内で、元語句が何回出現したかをカウントし、そのカウントの値が大きいほど、秘匿化度を高くするように秘匿化度を決定する。
図16は、元語句の出現回数に応じた秘匿化度の一例を示す表である。秘匿化文書生成部62は、文書68の表示要求を出したユーザの過去一定期間内の文書閲覧実績である文書閲覧ログ(図11を参照)にある文書68を検索し、秘匿化しようとしている元語句が、それらの文書68の中で何回出現するかをカウントする。そして、図16の表を用いて、元語句の出現回数に対応づけられた秘匿化度を取得する。図16では、元語句の出現回数が多いほど、秘匿化度が高くなるように設定されている。なお、図16の表は、例えば、情報処理装置50の記憶部54に予め記憶しておく。
このように、ユーザの文書閲覧実績に応じた秘匿化度で元語句を秘匿化することで、文書閲覧により向上したユーザの元語句を理解できる能力を考慮した秘匿化度で元語句を秘匿化することができる。
また、秘匿化度の決定方法は、覗き見がされやすい環境(セキュリティレベルが低い環境、例えば、電車の中)では秘匿化度を高く設定し、覗き見がされ難い環境(例えば、セキュリティレベルが高い環境、例えば、機密室の中)では秘匿化度を低く設定するものであっても良い。
また、秘匿化度の決定方法は、上記した、ユーザの属性(役職など)と、難易度実績情報72と、覗き見のされ易さ(環境)との各々を組み合わせて秘匿化度を算出し、決定するものであっても良い。
以上説明した文書表示装置100aは、情報処理装置50と、ユーザ端末10aとにより構成されていた。しかし、文書表示装置100aは、ユーザ端末10aのみで構成されても良い。
図17は、ユーザ端末10bのみで構成された他の実施形態における文書表示装置100bの構成例を示すブロック図である。図17では、図1と同じ構成要素には同じ符号を付している。
図17に示すように、文書表示装置100bは、ユーザ端末10bの制御部12が、秘匿化文書生成部62と、ヒント情報提供部64と、ヒント難易度管理部66として機能する。また、ユーザ端末10bの記憶部14が、文書68と、文書閲覧ログ70と、難易度実績情報72とを記憶する。
文書表示装置100bでは、上記で説明した、秘匿化文書の生成、ヒント情報の提供等を、ユーザ端末10bのみで行うことになる。