(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022170799
(43)【公開日】2022-11-11
(54)【発明の名称】文書検索システム、文書検索方法および文書検索プログラム
(51)【国際特許分類】
G06F 3/04842 20220101AFI20221104BHJP
G06F 3/04845 20220101ALI20221104BHJP
G06F 16/55 20190101ALI20221104BHJP
G06T 1/00 20060101ALI20221104BHJP
【FI】
G06F3/0484 120
G06F3/0484 150
G06F16/55
G06T1/00 200C
【審査請求】未請求
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2021077007
(22)【出願日】2021-04-30
(71)【出願人】
【識別番号】000001270
【氏名又は名称】コニカミノルタ株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】羽場 健矢
【テーマコード(参考)】
5B050
5B175
5E555
【Fターム(参考)】
5B050AA10
5B050CA07
5B050CA08
5B050GA08
5B175DA02
5B175FA03
5B175HB03
5E555AA02
5E555AA23
5E555AA26
5E555AA30
5E555AA76
5E555BA02
5E555BA03
5E555BA05
5E555BA06
5E555BA71
5E555BB02
5E555BB03
5E555BB05
5E555BB06
5E555BC17
5E555CA02
5E555CA12
5E555CA18
5E555CB02
5E555CB09
5E555CB20
5E555CC01
5E555CC03
5E555DA01
5E555DB18
5E555DB52
5E555DB53
5E555DC18
5E555DC25
5E555DC35
5E555DC40
5E555DD11
5E555EA03
5E555EA04
5E555EA07
5E555EA11
5E555EA14
5E555EA22
5E555EA25
5E555FA00
(57)【要約】
【課題】ユーザーが容易かつ直感的に文書の特徴量を含む検索条件を指定するための技術を提供する。
【解決手段】文書検索システムは、1以上のインデックスを記憶する記憶部を備える。1以上のインデックスの各々は、ファイルサーバーに保存される1以上の文書の各々に含まれる1以上のオブジェクトに関する特徴量を含む。1以上のインデックスを参照して、ファイルサーバーに保存される1以上の文書を検索する制御部をさらに備える。制御部は、文書を表す仮想ページ上に、1以上のオブジェクトの種類の各々と紐づけられた1以上のシンボルの各々を配置する機能を有する検索画面100を端末に表示させ、検索画面100の操作に基づき、仮想ページ上における1以上のシンボルの配置情報を含む検索条件および1以上のインデックスを参照することにより、ファイルサーバーに保存される1以上の文書の中から検索条件に合致する文書を検索する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
1以上のインデックスを記憶する記憶部を備え、前記1以上のインデックスの各々は、ファイルサーバーに保存される1以上の文書の各々に含まれる1以上のオブジェクトに関する特徴量を含み、
前記1以上のインデックスを参照して、前記ファイルサーバーに保存される1以上の文書を検索する制御部をさらに備え、
前記制御部は、
前記文書を表す仮想ページ上に、前記1以上のオブジェクトの種類の各々と紐づけられた1以上のシンボルの各々を配置する機能を有する検索画面を端末に表示させ、
前記検索画面の操作に基づき、前記仮想ページ上における前記1以上のシンボルの配置情報を含む検索条件および前記1以上のインデックスを参照することにより、前記ファイルサーバーに保存される1以上の文書の中から前記検索条件に合致する文書を検索する、文書検索システム。
【請求項2】
前記特徴量の各々は、前記1以上のオブジェクトの各々の種類、位置、サイズおよび色に関する情報を含む、請求項1に記載の文書検索システム。
【請求項3】
前記検索画面は、前記仮想ページのサイズを選択または指定する機能を有する、請求項1または2に記載の文書検索システム。
【請求項4】
前記1以上のシンボルの各々は、前記1以上のオブジェクトの種類ごとにグルーピングされており、
前記検索画面は、グループ単位で前記1以上のシンボルの一部を表示する機能を有する、請求項1~3のいずれかに記載の文書検索システム。
【請求項5】
前記検索画面は、個別にまたはグループ単位で、前記1以上のシンボルの各々を表示するか否かを切り替える機能を有する、請求項4に記載の文書検索システム。
【請求項6】
前記検索画面は、ユーザーの操作に基づいて、前記1以上のシンボルの中から選択されたシンボルをグルーピングし、グルーピングされたシンボルを表示する機能を有する、請求項4に記載の文書検索システム。
【請求項7】
前記検索画面は、前記1以上のシンボルの過去の使用履歴に基づいて、前記1以上のシンボルの中から使用頻度の高いシンボルを表示する機能を有する、請求項1~5のいずれかに記載の文書検索システム。
【請求項8】
前記検索画面は、前記1以上のシンボルの色を変更する機能を有する、請求項3に記載の文書検索システム。
【請求項9】
前記検索画面は、前記1以上のシンボルのサイズを変更する機能を有する、請求項3に記載の文書検索システム。
【請求項10】
前記検索画面は、前記1以上のシンボルが配置された前記仮想ページから、前記検索条件を生成する機能を有し、
前記検索条件は、前記仮想ページに配置された前記1以上のシンボルの各々の前記仮想ページに対する相対位置を含む、請求項3に記載の文書検索システム。
【請求項11】
前記検索画面は、前記1以上のシンボルが配置された前記仮想ページから、前記検索条件を生成する機能を有し、
前記検索条件は、前記仮想ページに配置された前記1以上のシンボルの前記仮想ページに対する相対的な面積を含む、請求項3に記載の文書検索システム。
【請求項12】
前記検索条件は、前記1以上のシンボルの各々の設定項目を含み、
前記制御部は、
前記検索条件を受信したことに基づいて、各設定項目に係数を設定し、
前記検索条件と前記1以上のインデックスの各々とを比較して、前記検索条件と前記1以上のインデックスの各々との間で一致した前記設定項目の各々の係数の合計値に基づいて、検索対象の文書の類似度を算出する、請求項1~11のいずれかに記載の文書検索システム。
【請求項13】
前記制御部は、
前記検索条件を受信したことに基づいて、各設定項目に、前記検索条件と前記1以上のインデックスの各々との比較時に、前記設定項目が一致したとみなす範囲を示す許容誤差を設定し、
前記検索条件と前記1以上のインデックスの各々とを比較して、前記許容誤差の範囲内で一致する前記設定項目があるか否かを判定する、請求項12に記載の文書検索システム。
【請求項14】
前記設定項目は、前記1以上のシンボルの各々の種類、位置、サイズおよび色の少なくとも1つを含む、請求項13に記載の文書検索システム。
【請求項15】
前記制御部は、ユーザーが前記設定項目の指定に要した時間が増加することに基づいて、前記設定項目の係数の値を増加させる、請求項12に記載の文書検索システム。
【請求項16】
前記制御部は、ユーザーが前記設定項目の指定に要した時間が増加することに基づいて、前記設定項目の許容誤差の値を減少させる、請求項12に記載の文書検索システム。
【請求項17】
前記検索画面は、前記設定項目ごとの前記係数および前記許容誤差の入力を受け付けて、入力された前記係数および前記許容誤差を前記検索条件に含める機能を有し、
前記制御部は、前記検索条件に含まれる前記係数および前記許容誤差を用いて検索処理を実行する、請求項13に記載の文書検索システム。
【請求項18】
前記制御部は、前記検索条件に含まれる前記設定項目がデフォルト設定から変更されているか否かに基づいて、前記設定項目の各々を前記類似度の算出に使用するか否かを決定する、請求項12に記載の文書検索システム。
【請求項19】
コンピューターによる文書検索方法であって、
ファイルサーバーに保存される1以上の文書を検索するための1以上のインデックスを保存するステップを含み、
前記1以上のインデックスの各々は、ファイルサーバーに保存される1以上の文書の各々に含まれる1以上のオブジェクトに関する特徴量を含み、
前記文書検索方法は、
前記文書を表す仮想ページ上に、前記1以上のオブジェクトの種類の各々と紐づけられた1以上のシンボルの各々を配置する機能を有する検索画面を端末に表示させるステップと、
前記検索画面の操作に基づき、前記仮想ページ上における前記1以上のシンボルの配置情報を含む検索条件および前記1以上のインデックスを参照することにより、前記ファイルサーバーに保存される1以上の文書の中から前記検索条件に合致する文書を検索するステップとをさらに含む、文書検索方法。
【請求項20】
請求項19に記載の文書検索方法をコンピューターに実行させるための、文書検索プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、文書検索システムに関し、より特定的には、文書の特徴量を用いる文書検索システムに関する。
【背景技術】
【0002】
電子文書の特徴量に基づいてファイルサーバー等の記憶部に格納された電子文書の中から任意の電子文書を検索する検索システムが知られている。電子文書の特徴量は、例えば、グラフおよびテーブル等の大きさ、色、形等を含む。さらに、このような検索システムと複合機(MFP:Multifunction Peripheral)とを組み合わせた技術も開発されている。
【0003】
文書の画像の検索に関し、例えば、特開2006-163841号公報(特許文献1)は、「登録画像の中から、検索画像に類似する画像を検索する画像検索装置」を開示しており、この画像検索装置は、「画像を構成する複数の部分領域を抽出する領域分割部と、各部分領域の個数と重心位置とを算出する領域特徴抽出部と、算出した各部分領域の個数と重心位置とをインデックスとして画像領域管理DBに保存する特徴量更新部と、を備え、検索画像の各部分領域の個数および重心位置と一致する部分領域を画像領域管理DBからメモリに読み込み、当該読み込まれた部分領域に基づいて登録画像の絞り込みを行い、絞り込まれた登録画像を対象に画像の検索を行う」というものである([要約]参照)。
【0004】
また、画像検索に関する他の技術が、例えば、特許文献2に開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2006-163841号公報
【特許文献2】特表2013-509660号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1および2に開示された技術によると、ユーザーは容易かつ直感的に文書の特徴量を含む検索条件を指定することができない。したがって、ユーザーが容易かつ直感的に文書の特徴量を含む検索条件を指定するための技術が必要とされている。
【0007】
本開示は、上記のような背景に鑑みてなされたものであって、ある局面における目的は、ユーザーが容易かつ直感的に文書の特徴量を含む検索条件を指定するための技術を提供することにある。
【課題を解決するための手段】
【0008】
ある実施の形態に従うと、文書検索システムが提供される。文書検索システムは、1以上のインデックスを記憶する記憶部を備える。1以上のインデックスの各々は、ファイルサーバーに保存される1以上の文書の各々に含まれる1以上のオブジェクトに関する特徴量を含む。当該文書検索システムは、1以上のインデックスを参照して、ファイルサーバーに保存される1以上の文書を検索する制御部をさらに備える。制御部は、文書を表す仮想ページ上に、1以上のオブジェクトの種類の各々と紐づけられた1以上のシンボルの各々を配置する機能を有する検索画面を端末に表示させ、検索画面の操作に基づき、仮想ページ上における1以上のシンボルの配置情報を含む検索条件および1以上のインデックスを参照することにより、ファイルサーバーに保存される1以上の文書の中から検索条件に合致する文書を検索する。
【0009】
ある局面において、特徴量の各々は、1以上のオブジェクトの各々の種類、位置、サイズおよび色に関する情報を含む。
【0010】
ある局面において、検索画面は、仮想ページのサイズを選択または指定する機能を有する。
【0011】
ある局面において、1以上のシンボルの各々は、1以上のオブジェクトの種類ごとにグルーピングされている。検索画面は、グループ単位で1以上のシンボルの一部を表示する機能を有する。
【0012】
ある局面において、検索画面は、個別にまたはグループ単位で、1以上のシンボルの各々を表示するか否かを切り替える機能を有する。
【0013】
ある局面において、検索画面は、ユーザーの操作に基づいて、1以上のシンボルの中から選択されたシンボルをグルーピングし、グルーピングされたシンボルを表示する機能を有する。
【0014】
ある局面において、検索画面は、1以上のシンボルの過去の使用履歴に基づいて、1以上のシンボルの中から使用頻度の高いシンボルを表示する機能を有する。
【0015】
ある局面において、検索画面は、1以上のシンボルの色を変更する機能を有する。
ある局面において、検索画面は、1以上のシンボルのサイズを変更する機能を有する。
【0016】
ある局面において、検索画面は、1以上のシンボルが配置された仮想ページから、検索条件を生成する機能を有する。検索条件は、仮想ページに配置された1以上のシンボルの各々の仮想ページに対する相対位置を含む。
【0017】
ある局面において、検索画面は、1以上のシンボルが配置された仮想ページから、検索条件を生成する機能を有する。検索条件は、仮想ページに配置された1以上のシンボルの仮想ページに対する相対的な面積を含む。
【0018】
ある局面において、検索条件は、1以上のシンボルの各々の設定項目を含む。制御部は、検索条件を受信したことに基づいて、各設定項目に係数を設定し、検索条件と1以上のインデックスの各々とを比較して、検索条件と1以上のインデックスの各々との間で一致した設定項目の各々の係数の合計値に基づいて、検索対象の文書の類似度を算出する。
【0019】
ある局面において、制御部は、検索条件を受信したことに基づいて、各設定項目に、検索条件と1以上のインデックスの各々との比較時に、設定項目が一致したとみなす範囲を示す許容誤差を設定し、検索条件と1以上のインデックスの各々とを比較して、許容誤差の範囲内で一致する設定項目があるか否かを判定する。
【0020】
ある局面において、設定項目は、1以上のシンボルの各々の種類、位置、サイズおよび色の少なくとも1つを含む。
【0021】
ある局面において、制御部は、ユーザーが設定項目の指定に要した時間が増加することに基づいて、設定項目の係数の値を増加させる。
【0022】
ある局面において、制御部は、ユーザーが設定項目の指定に要した時間が増加することに基づいて、設定項目の許容誤差の値を減少させる。
【0023】
ある局面において、検索画面は、設定項目ごとの係数および許容誤差の入力を受け付けて、入力された係数および許容誤差を検索条件に含める機能を有する。制御部は、検索条件に含まれる係数および許容誤差を用いて検索処理を実行する。
【0024】
ある局面において、制御部は、検索条件に含まれる設定項目がデフォルト設定から変更されているか否かに基づいて、設定項目の各々を類似度の算出に使用するか否かを決定する。
【0025】
ある実施の形態に従うと、コンピューターによる文書検索方法が提供される。文書検索方法は、ファイルサーバーに保存される1以上の文書を検索するための1以上のインデックスを保存するステップを含む。1以上のインデックスの各々は、ファイルサーバーに保存される1以上の文書の各々に含まれる1以上のオブジェクトに関する特徴量を含む。当該文書検索方法は、文書を表す仮想ページ上に、1以上のオブジェクトの種類の各々と紐づけられた1以上のシンボルの各々を配置する機能を有する検索画面を端末に表示させるステップと、検索画面の操作に基づき、仮想ページ上における1以上のシンボルの配置情報を含む検索条件および1以上のインデックスを参照することにより、ファイルサーバーに保存される1以上の文書の中から検索条件に合致する文書を検索するステップとをさらに含む。
【0026】
ある実施の形態に従うと、上記の文書検索方法をコンピューターに実行させるための文書検索プログラムが提供される。
【発明の効果】
【0027】
ある実施の形態に従うと、ユーザーは容易かつ直感的に文書の特徴量を含む検索条件を指定することが可能である。
【0028】
この開示内容の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解される本開示に関する次の詳細な説明から明らかとなるであろう。
【図面の簡単な説明】
【0029】
【
図1】ある実施の形態に従う文書検索システムにおける検索画面100を示す図である。
【
図2】ある実施の形態に従う文書検索システム200の一例を示す図である。
【
図3】ある実施の形態に従う検索サーバー210の機能の一例を示す図である。
【
図4】ある実施の形態に従う情報処理装置400のハードウェア構成の一例を示す図である。
【
図5】ある実施の形態に従うインデックス510の一例を示す図である。
【
図6】文書検索システム200の機能の第1の例を示す図面である。
【
図7】文書検索システム200の機能の第2の例を示す図面である。
【
図8】文書検索システム200の機能の第3の例を示す図面である。
【
図9】文書検索システム200の機能の第4の例を示す図面である。
【
図10】文書検索システム200の機能の第5の例を示す図面である。
【
図11】文書検索システム200の機能の第6の例を示す図である。
【
図12】文書検索システム200の機能の第7の例を示す図である。
【
図13】文書検索システム200の機能の第8の例を示す図である。
【
図14】文書検索システム200の機能の第9の例を示す図である。
【
図15】文書検索システム200の機能の第10の例を示す図である。
【
図16】文書検索システム200の機能の第11の例を示す図である。
【
図17】文書検索システム200の機能の第12の例を示す図である。
【
図18】文書検索システム200の機能の第13の例を示す図である。
【
図19】文書検索システム200の機能の第14の例を示す図である。
【
図20】文書検索システム200の機能の第15の例を示す図である。
【
図21】検索サーバー210によるインデックス510の生成処理の一例を示すフローチャートである。
【
図22】検索サーバー210および端末220による検索処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0030】
以下、図面を参照しつつ、本開示に係る技術思想の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【0031】
<A.適用例>
図1は、本実施の形態に従う文書検索システムにおける検索画面100を示す図である。
図1を参照して、本実施の形態に従う文書検索システムにおける検索画面100および検索処理の概要について説明する。なお、これ以降、電子文書を単に文書と表す。文書は、テキスト、グラフ、表、図、絵およびその他の任意のマルティメディア情報等を含み得る。
【0032】
本実施の形態に従う文書検索システム200(
図2参照)は、ウェブサーバーまたはクラウド環境上に構築され得る。文書検索システム200は、検索サーバー210(
図2参照)を含む。ある局面において、文書検索システム200は、ファイルサーバー230(
図2参照)をさらに含んでいてもよい。他の局面において、文書検索システム200は、ファイルサーバー230およびユーザーの端末220(以下、「端末220」と呼ぶ)をさらに含んでいてもよい。
【0033】
検索サーバー210は、端末220から要求を受けたことに基づいて、検索画面100を端末220に配信する。ユーザーは、例えば、端末220のブラウザ機能を用いて、検索サーバー210から端末220に配信された検索画面100をディスプレイに表示し得る。また、ユーザーは、検索画面100を用いて文書の検索を行い得る。ある局面において、端末220は、パーソナルコンピューター、スマートフォンまたはタブレット等の任意の情報処理装置であってもよい。
【0034】
検索サーバー210から端末220に配信される検索画面100は、HTML(Hypertext Markup Language)等により記述された画面であってもよい。ある局面において、端末220は、配信されてくる検索画面100に代えて、専用のクライアントアプリケーションの検索画面を使用してもよい。この場合、端末220は、予め定められたサーバー等からクライアントアプリケーションをダウンロードし得る。また、クライアントアプリケーションは、これ以降説明する検索画面100等の全ての機能を備える。
【0035】
(a.検索画面100の構成)
検索画面100の主な構成について説明する。検索画面100は、ファイルサーバー230上に格納される1以上の文書を検索するための画面である。ユーザーは、検索画面100上で、検索した文書の特徴量を定義する。特徴量とは、図、グラフ、表およびその他の任意のオブジェクトの文書内での配置、色およびサイズ等の情報である。ユーザーは、頭の中の文書のイメージを検索画面100の仮想ページ105上に表現する。文書検索システム200は、仮想ページ105上に表現された文書の特徴量に基づいて、ファイルサーバー230内の文書を検索する。
【0036】
検索画面100は、一例として、パレットと呼ばれる仮想ページ105と、ユーザーが仮想ページのサイズを選択または入力するためのパレット選択用UI(User Interface)パーツ110と、ユーザーがシンボル120を選択するためのシンボル選択用UIパーツ115と、検索結果の表示ボタン125とを含む。これらの構成は、例えば、Javascript(登録商標)、HTMLのUIパーツ、またはHTMLのUIパーツの組み合わせからなる。
【0037】
仮想ページ105は、検索対象の文書を模したページである。ある局面において、検索画面100は、初期状態において、デフォルトのサイズの仮想ページ105を表示していてもよい。
【0038】
パレット選択用UIパーツ110は、仮想ページ105のサイズを決定するためのUIパーツである。例えば、パレット選択用UIパーツ110は、プルダウン、入力フォーム等の任意のUIパーツの集合からなる。ユーザーは、パレット選択用UIパーツ110を介して、A4等の任意のサイズの仮想ページ105を選択し得る。また、ある局面において、ユーザーは、パレット選択用UIパーツ110に任意のサイズ(縦横のサイズ)を入力して、所望のサイズの仮想ページ105を検索画面100に表示させてもよい。
【0039】
ユーザーは、シンボル選択用UIパーツ115から、所望のシンボル120を仮想ページ105に配置する。シンボル120は、文書に配置される図、グラフ、表およびその他の任意のオブジェクトを模した画像である。各シンボル120は、オブジェクトの種類(グラフ、表等)と紐付けられている。検索サーバー210は、この各シンボル120と各オブジェクトの種類との紐付け情報を保管している。「各シンボル120と各オブジェクトの種類との紐付け情報」は、例えば、タグ等のメタ情報であってもよい。ユーザーは、オブジェクトを模したシンボル120を仮想ページ105に配置していくことで、頭の中に思い描いた文書を忠実かつ容易に表現することができる。ある局面において、ユーザーは、ドラッグおよびドロップ等の操作で、シンボル120を仮想ページ105上に配置してもよい。
【0040】
シンボル選択用UIパーツ115は、全てまたは一部のシンボル120を表示する。例えば、シンボル選択用UIパーツ115は、プルダウン、入力フォーム等の任意のUIパーツまたはUIパーツの集合からなる。ある局面において、シンボル選択用UIパーツ115は、グループ単位でシンボル120を表示してもよい。この場合、一例として、ユーザーは、プルダウン等からシンボル120の種類(グループ名)等を選択することで、所望のグループに属する1以上のシンボル120を検索画面100に表示させ得る。
【0041】
他の局面において、シンボル選択用UIパーツ115は、ユーザーの操作に基づいて、新しいグループを登録する機能を備えていてもよい。ユーザーは、シンボル選択用UIパーツ115を操作することで、1以上のシンボル120を含むグループを定義し得る。新しく作成されたグループの情報は、検索サーバー210に送信されてもよい。こうすることで、検索サーバー210は、次回以降、新しく作成されたグループの情報を含む検索画面100を端末220に送信し得る。
【0042】
検索結果の表示ボタン125は、検索画面100を検索結果画面に切り替えるためのボタンである。ある局面において、検索結果の表示ボタン125が押されたことに基づいて、検索画面100は検索結果画面に遷移してもよい。他の局面において、検索結果の表示ボタン125が押されたことに基づいて、画面遷移が発生することなく、検索画面100の一部が更新されて、更新された場所に検索結果が表示されてもよい。
【0043】
(b.文書検索システムの内部動作)
次に、文書検索システム200の内部動作について説明する。なお、以下に説明する端末220の処理の一部または全ては、端末220が検索画面100の機能(Javascript等のプログラム)を使用することによって実現されてもよい。
【0044】
まず、第1のステップにおいて、検索サーバー210は、端末220から検索画面100の取得要求を受信したことに基づいて、検索画面100を端末220に配信する。
【0045】
第2のステップにおいて、端末220は、ユーザーの操作を受け付けて、仮想ページ105上に1以上のシンボル120を配置する。ある局面において、端末220は、ユーザーからの操作に基づいて、仮想ページ105上に配置するシンボル120の色、サイズ、および位置等を変更してもよい。他の局面において、端末220は、シンボル毎に、ユーザーがシンボル120を仮想ページ105上に配置するのに要した時間を記録していてもよい。
【0046】
第3のステップにおいて、端末220は、ユーザーから検索実行のトリガーを受け付けたことに基づいて(例えば、検索結果の表示ボタン125が押されたことに基づいて)、仮想ページ105上に配置された1以上のシンボル120に基づいて、文書の検索条件(以下、文書の検索条件を単に「検索条件」と呼ぶこともある)を生成する。
【0047】
「検索条件」は、1以上のシンボル120の設定項目を含む。例えば、仮想ページ105上に第1のシンボルと、第2のシンボルとが配置されていたとする。この場合、検索条件は、第1のシンボルの設定項目と、第2のシンボルの設定項目とをパラメーターとして含む。「シンボル毎の設定項目」は、シンボル120の種類、位置、サイズ、色等の任意の項目を含む。なお、シンボル120の位置、サイズは、仮想ページ105に対する相対値であってもよい。
【0048】
ある局面において、検索条件は、仮想ページ105のサイズも含んでいてもよい。他の局面において、検索条件は、シンボル120の設定項目(種類、色、サイズおよび位置等)の変更情報を含んでいてもよい。また、他の局面において、検索条件は、シンボル120毎に、ユーザーが各シンボル120を仮想ページ105上に配置するのに要した時間を含んでいてもよい。
【0049】
第4のステップにおいて、端末220は、検索条件を検索サーバー210に送信する。検索条件は、仮想ページ105上に配置されたシンボル120毎の設定項目と、仮想ページ105のサイズとを含み得る。
【0050】
第5のステップにおいて、検索サーバー210は、受信した検索条件と、検索用のインデックス(以下、「インデックス」と呼ぶ)とに基づいて、ファイルサーバー230を検索する。
【0051】
検索サーバー210は、文書の検索用のインデックス510(
図5参照)を保管する。「インデックス510」は、各文書の特徴量を含み、文書の検索に使用される。文書の「特徴量」は、文書上に配置された1以上のオブジェクト(図、グラフ等の任意のオブジェクト)の種類、位置、サイズ、色等の任意の項目であり、検索条件内のシンボル毎の設定項目に対応する。ある局面において、1つのインデックスが1つの文書の特徴量を含んでいてもよい。他の局面において、1つのインデックスが複数の文書の特徴量を含んでいてもよい。
【0052】
検索サーバー210は、検索条件と1以上のインデックスの各々とを比較して、検索条件に合致する文書を検索し得る。より具体的には、検索サーバー210は、検索条件に含まれる各シンボル120の設定項目と、1以上のインデックスの各々に含まれる各オブジェクトの項目とを個別に比較する。
【0053】
検索サーバー210は、検索条件と1以上のインデックスの各々とを比較して、文書の類似度を算出する。「類似度」は、検索された文書が検索条件にどれだけ合致しているかを示すスコアである。言い換えれば、類似度は、検索された文書が、ユーザーが仮想ページ105上に1以上のシンボル120を配置して作成した文書にどれだけ類似しているかを示す。
【0054】
検索サーバー210は、類似度の高い複数の文書を検索条件に該当する文書として選択してもよい。検索サーバー210は、文書と検索条件との類似度を算出し、類似度の高い順に複数の文書をソートし得る。検索条件および類似度の算出の詳細については後述する。
【0055】
第6のステップにおいて、検索サーバー210は、検索結果を端末220に送信する。検索条件に該当する1以上の文書がある場合、検索結果は1以上の文書のサムネイルを含み得る。検索条件に該当する文書が存在しない場合、検索結果は文書が見つからなかったことを示す情報を含む。
【0056】
第7のステップにおいて、端末220は、受信した検索結果を検索画面100に表示する。ある局面において、端末220は、検索画面100を検索結果表示用の画面に遷移させてもよい。他の局面において、端末220は、検索画面100を遷移させることなく、検索画面100の一部を更新して、検索結果を検索画面100内に表示してもよい。
【0057】
第8のステップにおいて、端末220は、ユーザーから検索結果に含まれる文書を取得するための操作を受け付けたことに基づいて、文書取得要求を検索サーバー210に送信することで、文書を取得する。ある局面において、端末220は、ファイルサーバー230から文書を直接取得してもよい。
【0058】
<B.文書検索システムの構成>
次に、
図2~
図5を参照して、文書検索システム200の機能、各装置のハードウェア構成、およびインデックスについて説明する。
【0059】
図2は、本実施の形態に従う文書検索システム200の一例を示す図である。文書検索システム200は、検索サーバー210と、端末220と、ファイルサーバー230とを含む。ある局面において、文書検索システム200は、端末220を含まなくてもよい。他の局面において、文書検索システム200は、端末220およびファイルサーバー230を含まなくてもよい。また、他の局面において、検索サーバー210およびファイルサーバー230は1つの装置であってもよい。
【0060】
ファイルサーバー230は1以上の文書を格納する。検索サーバー210は、ファイルサーバー230に格納される1以上の文書の各々のインデックスを格納し、ファイルサーバー230内の文書を検索するための機能を端末220に提供する。ある局面において、検索サーバー210は、ファイルサーバー230に新しく文書が追加されるか、ファイルサーバー230上の文書が更新されたことに基づいて、新しいインデックスの生成またはインデックスの更新を行い得る。
【0061】
図3は、本実施の形態に従う検索サーバー210の機能の一例を示す図である。ある局面において、
図3に示す検索サーバー210の各機能はプログラムとして実現されてもよい。この場合、検索サーバー210の各機能は
図4に示すハードウェア上で実行され得る。
【0062】
検索サーバー210は、主な機能として、検索画面処理部305と、検索部310と、検索画面送信部315と、操作受信部320と、検索結果送信部325と、インデックス生成部330と、ファイルサーバー通信部350とを備える。
【0063】
検索画面処理部305は、検索画面100の生成処理、および検索画面100からの要求を受けた場合のサーバーサイドの処理等を実行する。一例として、検索画面処理部305は、グルーピングされたシンボル120のリスト、および、検索画面100の描画に必要なデータを配信してもよい。
【0064】
検索部310は、文書の特徴量を用いた検索処理の全体の流れを管理する。例えば、検索部310は、他の機能部に指示を出力することで、検索条件の取得、特徴量の抽出、ファイルサーバー230内の文書の参照および検索結果の出力等の処理を実行し得る。
【0065】
検索画面送信部315は、検索画面100および検索画面100が使用するデータ(シンボル120、UIパーツ、およびテキストメッセージ等)を端末220に送信する。
【0066】
操作受信部320は、端末220から検索条件を取得する。検索条件は、文書の特徴量または特徴量を抽出するための情報(文書に含まれる図形、グラフおよび表等の大きさ、形、位置、色等の情報、およびテキストのフォントおよび装飾等の情報)を含む。端末220は、仮想ページ105上の各シンボル120の配置および各シンボル120の設定項目の変更内容等に基づいて、検索条件を生成する。
【0067】
ある局面において、操作受信部320は、検索画面100を端末220に送信してもよい。他の局面において、操作受信部320は、専用のクライアントアプリケーションを介して、端末220から検索条件を取得してもよい。
【0068】
検索結果送信部325は、検索結果を端末220に送信する。ある局面において、検索結果は、検索条件に該当する1または複数の文書の情報を含む。ある局面において、検索結果は、検索条件に該当する1または複数の文書のサムネイルを含んでいてもよい。
【0069】
インデックス生成部330は、文書検索部335と、インデックス登録部340と、文書解析部345とを含む。文書検索部335は、検索サーバー210内に格納されるインデックスを参照することで、検索条件に合致する文書を検索する。
【0070】
インデックス登録部340は、新しくファイルサーバー230に追加された文書のインデックスを生成し、当該生成したインデックスを検索サーバー210に格納(登録)し得る。ある局面において、インデックス登録部340は、ファイルサーバー230上の文書が更新された場合、更新された文書のインデックスを更新してもよい。また、他の局面において、インデックス登録部340は、文書のサムネイルも生成し得る。インデックス登録部340は、生成したサムネイルをインデックスに紐付けて、当該サムネイルを検索サーバー210内に保存し得る。
【0071】
文書解析部345は、ファイルサーバー230から取得した文書を解析して、文書の特徴量(例えば、グラフおよびテーブル等の大きさ、色、形等)を抽出する。これらの特徴量は、インデックスに登録される。
【0072】
ファイルサーバー通信部350は、ファイルサーバー230と通信する。ファイルサーバー通信部350は、検索サーバー210が端末220から検索要求を受信したことに基づいて、ファイルサーバー230にアクセスする。ある局面において、ファイルサーバー通信部350は、インデックスを更新するために、定期的にファイルサーバー230と通信して、新しく追加された文書または更新された文書を取得してもよい。
【0073】
図4は、本実施の形態に従う情報処理装置400のハードウェア構成の一例を示す図である。検索サーバー210、端末220およびファイルサーバー230は、1以上の情報処理装置400により実現され得る。ある局面において、検索サーバー210、端末220およびファイルサーバー230は、必要に応じて、
図4に示す構成の一部を含まなくてもよい。例えば、検索サーバー210およびファイルサーバー230は、マウス410およびタッチパネル415等を含まなくてもよい。
【0074】
情報処理装置400は、CPU(Central Processing Unit)1と、1次記憶装置2と、2次記憶装置3と、外部機器インターフェイス4と、入力インターフェイス5と、出力インターフェイス6と、通信インターフェイス7とを含む。
【0075】
CPU1は、情報処理装置400の各種機能を実現するためのプログラムを実行し得る。CPU1は、例えば、少なくとも1つの集積回路によって構成される。集積回路は、例えば、少なくとも1つのCPU、少なくとも1つのFPGA(Field Programmable Gate Array)、またはこれらの組み合わせ等によって構成されてもよい。
【0076】
1次記憶装置2は、CPU1によって実行されるプログラムと、CPU1によって参照されるデータとを格納する。ある局面において、1次記憶装置2は、DRAM(Dynamic Random Access Memory)またはSRAM(Static Random Access Memory)等によって実現されてもよい。
【0077】
2次記憶装置3は、不揮発性メモリーであり、CPU1によって実行されるプログラムおよびCPU1によって参照されるデータを格納してもよい。その場合、CPU1は、2次記憶装置3から1次記憶装置2に読み出されたプログラムを実行し、2次記憶装置3から1次記憶装置2に読み出されたデータを参照する。ある局面において、2次記憶装置3は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read Only Memory)またはフラッシュメモリー等によって実現されてもよい。
【0078】
外部機器インターフェイス4は、プリンター、スキャナーおよび外付けHDD等の任意の外部機器に接続され得る。ある局面において、外部機器インターフェイス4は、USB(Universal Serial Bus)端子等によって実現されてもよい。
【0079】
入力インターフェイス5は、キーボード405、マウス410、タッチパネル415またはゲームパッド等の任意の入力装置に接続され得る。ある局面において、入力インターフェイス5は、USB端子、PS/2端子およびBluetooth(登録商標)モジュール等によって実現されてもよい。
【0080】
出力インターフェイス6は、ディスプレイ420(ブラウン管ディスプレイ、液晶ディスプレイまたは有機EL(Electro-Luminescence)ディスプレイ等)等の任意の出力装置に接続され得る。ある局面において、出力インターフェイス6は、USB端子、D-sub端子、DVI(Digital Visual Interface)端子およびHDMI(登録商標)(High-Definition Multimedia Interface)端子等によって実現されてもよい。
【0081】
通信インターフェイス7は、有線または無線のネットワーク機器と接続される。ある局面において、通信インターフェイス7は、有線LAN(Local Area Network)ポートおよびWi-Fi(登録商標)(Wireless Fidelity)モジュール等によって実現されてもよい。他の局面において、通信インターフェイス7は、TCP/IP(Transmission Control Protocol/Internet Protocol)、UDP(User Datagram Protocol)等の通信プロトコルを用いてデータを送受信してもよい。
【0082】
図5は、本実施の形態に従うインデックス510の一例を示す図である。検索サーバー210は、新しい文書または更新された文書を端末220から受信したことに基づいて、インデックス510を生成または更新し得る。また、検索サーバー210は、ファイルサーバー230上の文書の追加または更新を検知したことに基づいて、インデックス510を生成または更新し得る。
【0083】
インデックス510は、文書の特徴量を含む。文書の特徴量は、一例として、ファイル名と、ページサイズと、グラフ、図、表等の任意のオブジェクトの位置・サイズ・色等の任意の項目を含んでいてもよい。検索サーバー210は、文書ごとにインデックス510を生成して、当該インデックス510を2次記憶装置3(インデックスデータベース)に格納する。インデックス510に含まれるオブジェクトは、検索条件に含まれるシンボル120に対応する。オブジェクトの項目は、シンボル120の設定項目に対応する。
【0084】
検索サーバー210は、端末220から文書の検索条件を受信した場合、当該検索条件からシンボル120毎の設定項目を抽出する。次に、検索サーバー210は、抽出したシンボル120毎の設定項目と、各インデックス510に含まれるオブジェクト毎の項目(特徴量)とを比較することにより、検索条件に合致する文書を検索する。なお、検索サーバー210は、検索条件に含まれる文書のサイズ等の他の任意の情報も文書の検索に使用し得る。
【0085】
<C.文書検索システムの機能>
次に、
図6~
図20を参照して、検索画面のバリエーションおよび文書検索システム200の機能について説明する。ある局面において、端末220は、ユーザーによる操作に基づいて、ディスプレイに表示する画面を
図1およびこれ以降の図に示す画面間で相互に遷移させてもよい。他の局面において、これ以降の図に示す各画面は、検索画面100の一部またはバリエーションであってもよい。ユーザーは、
図1およびこれ以降の図に示す検索画面の機能を適宜組み合わせることで、検索条件を設定し得る。
【0086】
図6は、文書検索システム200の機能の第1の例を示す図面である。検索画面600は、仮想ページ105のサイズを設定するための画面である。ユーザーは、検索画面600を用いて、A4等の規定のサイズから所望の仮想ページ105のサイズを選択してもよいし、検索画面600に仮想ページ105の縦横のサイズを入力することで、仮想ページ105のサイズを決定してもよい。ある局面において、仮想ページ105のサイズが決定された後(決定ボタン610が押された後等)に、端末220のディスプレイに表示される画面は、検索画面600から検索画面100等の他の画面に遷移し得る。
【0087】
図7は、文書検索システム200の機能の第2の例を示す図面である。検索画面700は、シンボル120を選択するための画面である。ユーザーは、シンボルのグループ710を選択することで、検索画面100等に表示するシンボル120を切り替えることができる。ある局面において、シンボルのグループ710が選択された後(決定ボタン720が押された後等)に、端末220のディスプレイに表示される画面は、検索画面700から検索画面100等の他の画面に遷移し得る。
【0088】
図8は、文書検索システム200の機能の第3の例を示す図面である。検索画面800は、シンボル120を選択するための画面である。検索画面800は、検索画面700と異なり、シンボル120の種類を選択するためのラジオボタン850を含む。ユーザーは、ラジオボタン850により、表示するシンボルのグループ860を切り替える。ある局面において、検索画面800は、検索画面100のバリエーションであってもよい。他の局面において、検索画面800および検索画面100は互いに遷移できてもよい。
【0089】
図9は、文書検索システム200の機能の第4の例を示す図面である。検索画面900は、過去のシンボル120の選択履歴に基づいて、使用頻度の高いシンボルの一覧910を表示する。もしくは、検索画面900は、使用頻度の高いシンボル120を含むグループを表示してもよい。
【0090】
検索サーバー210は、過去の検索要求に含まれる各シンボル120の数(使用頻度)をカウントして記憶しておいてもよい。この場合、例えば、検索サーバー210は、当該各シンボル120の使用頻度に関する情報を端末220に送信し得る。検索画面900は、当該各シンボル120の使用頻度に関する情報に基づいて、使用頻度の高いシンボルの一覧910を表示し得る。ある局面において、検索画面900は、検索画面100のバリエーションであってもよい。他の局面において、検索画面900および検索画面100は互いに遷移できてもよい。
【0091】
図10は、文書検索システム200の機能の第5の例を示す図面である。検索画面1000は、ユーザー定義のグループ1010を作成するための機能と、ユーザー定義のグループ1010が含むシンボル120を表示するための機能とを有する。ユーザーは、検索画面1000を介して、1以上の任意のシンボル120をグルーピングすることができる。例えば、ユーザーは、検索画面1000を介して、自身の業務で頻繁に使用する複数のシンボル120をグルーピングすることができる。
【0092】
ある局面において、端末220は、ユーザー定義のグループの情報を検索サーバー210に送信してもよい。この場合、検索サーバー210は、次回以降に、ユーザー定義のグループの情報を含む検索画面を端末220に配信し得る。
【0093】
他の局面において、各検索画面は、個別にまたはグループ単位で、1以上のシンボルの各々を表示するか否かを切り替える機能を有していてもよい。例えば、各検索画面は、グループごとに表示のオンオフを切り替えるラジオボタンを備えていてもよいし、個別のシンボル120ごとに表示のオンオフを切り替えるラジオボタンを備えていてもよい。
【0094】
図11は、文書検索システム200の機能の第6の例を示す図である。ユーザーは、任意の検索画面において、シンボル120の色を変更することができる。
図11に示す例では、ユーザーは、パレットツール等を用いて、シンボル120の色を変更している。端末220は、当該シンボル120の色の変更を検索条件中のシンボル120の設定項目に反映する。
【0095】
図12は、文書検索システム200の機能の第7の例を示す図である。ユーザーは、任意の検索画面において、シンボル120のサイズまたは縦横の比率を変更し得る。
図12に示す例では、ユーザーは、マウスまたはタッチ操作等により、シンボル120の縦横の比率を変更している。端末220は、当該シンボル120のサイズまたは比率の変更を検索条件中のシンボル120の設定項目に反映する。
【0096】
図13は、文書検索システム200の機能の第8の例を示す図である。端末220は、検索画面100等のJavascriptのプログラム等を実行することで、仮想ページ105に対するシンボル120の相対位置を算出する。端末220は、当該相対位置を検索条件に含めてもよい。
図13に示す例では、端末220は、仮想ページ105の中心座標に対する、シンボル120の中心座標を算出している。なお、端末220は、仮想ページ105およびシンボル120の頂点の座標等を相対位置の算出に使用してもよい。端末220は、当該シンボル120の相対位置を検索条件中のシンボル120の設定項目に反映する。
【0097】
図14は、文書検索システム200の機能の第9の例を示す図である。端末220は、検索画面100等のJavascriptのプログラム等を実行することで、仮想ページ105に対するシンボル120の相対面積または縦横の辺の比率を算出する。端末220は、当該相対面積または縦横の辺の比率を検索条件に含めてもよい。
図14に示す例では、端末220は、仮想ページ105のX軸方向およびY軸方向のサイズと、シンボル120のX軸方向およびY軸方向のサイズとを比較している。端末220は、当該シンボル120の相対面積または縦横の辺の比率を検索条件中のシンボル120の設定項目に反映する。
【0098】
図15は、文書検索システム200の機能の第10の例を示す図である。
図15を参照して、文書検索システム200による文書の類似度の算出の詳細について説明する。端末220は、シンボル120が配置された仮想ページ105から、検索条件1510を生成する。検索条件は、各シンボル120の設定項目(種類、位置、サイズ、色等の任意の項目の一部または全て)を含む。
【0099】
次に、検索サーバー210は、端末220から取得した検索条件1510に基づいて、検索スコア算出テーブル1520を生成する。なお、検索スコア算出テーブル1520は、任意のデータフォーマットで表現され得る。
【0100】
検索スコア算出テーブル1520は、一例として、シンボル120の設定項目1521と、条件1522と、重み(係数)1523とを含む。設定項目1521は、検索条件に含まれるシンボル120の設定項目(種類、位置、サイズ、色等の任意の項目の一部または全て)に相当する。条件1522は、検索条件に含まれる各シンボル120に相当する。条件1522は、検索条件に含まれるシンボル120の数だけ存在する。重み(係数)1523は、類似度を算出するときの各設定項目の係数またはスコアである。
【0101】
次に、検索サーバー210は、検索スコア算出テーブル1520と、インデックス510とを比較して、各文書の類似度を算出する。
図15に示す例では、検索サーバー210は、条件(1)(円グラフ)および条件(2)(写真-風景)の少なくとも一部を満たす文書として、文書A,Bを発見している。この場合、検索サーバー210は、次に説明する手順で文書A,Bの類似度1530を算出する。
【0102】
文書Aの円グラフの項目(種類、位置、色)は、条件(1)(円グラフ)の設定項目(種類、位置、色)に全て一致しているとする。この場合、文書Aの条件(1)のスコアは「0.7+0.2+0.1=1.0」になる。文書Aの写真-風景の項目(種類、位置)は、条件(2)(写真-風景)の設定項目(種類、位置)に一致しているが、文書Aの写真-風景の項目(色)は、条件(2)(写真-風景)の設定項目(色)に一致していないとする。この場合、文書Aの条件(2)のスコアは「0.7+0.2=0.9」になる。文書Aの類似度1530は、検索スコア算出テーブル1520が含む各条件のスコアの合算値「1.0+0.9=1.9」になる。文書Bの類似度1530も同様の手順で算出される。
【0103】
ある局面において、文書検索システム200は、重み(係数)を使用してなくてもよい。この場合、文書検索システム200は、各項目の点数を同じにして、類似度を算出してもよい。
【0104】
ある局面において、端末220は、検索画面100等のJavascriptのプログラム等を実行することで、検索スコア算出テーブル1520を生成してもよい。この場合、端末220は、検索条件1510に代えて、検索スコア算出テーブル1520を検索サーバー210に送信する。
【0105】
図16は、文書検索システム200の機能の第11の例を示す図である。文書検索システム200は、ユーザーがシンボル120の設定項目を決定するのに要した時間に基づいて、シンボル120の設定項目ごとの重み(係数)を調節し得る。
【0106】
グラフ1600は、ユーザーがシンボル120の設定項目の決定に費やした時間と、シンボル120の設定項目の重み(係数)との関係を示す。グラフ1600から、ユーザーがシンボル120の設定項目の決定に費やした時間が長いほど、シンボル120の設定項目の重みの値は増加することがわかる。なぜならば、ユーザーが長い時間をかけて決定した設定項目は、重要な設定項目である可能性が高いためである。
【0107】
検索サーバー210は、ユーザーがシンボル120の設定項目を決定するのに要した時間に基づいて、シンボル120の設定項目ごとの重み(係数)を変更するためのパラメーターを2次記憶装置3に格納し得る。
【0108】
端末220は、シンボル120が配置された仮想ページ105から、検索条件を生成する。検索条件は、各シンボル120の設定項目(種類、位置、サイズ、色等の任意の項目の一部または全て)と、各シンボル120の設定項目の決定に要した時間とを含む。
【0109】
検索サーバー210は、端末220から取得した検索条件に基づいて、検索スコア算出テーブル1610を生成する。検索スコア算出テーブル1610は、一例として、シンボル120の設定項目1611と、条件1612と、費やした時間1613と、重み(係数)1614とを含む。
【0110】
設定項目1611は、検索条件に含まれるシンボル120の設定項目(種類、位置、サイズ、色等の任意の項目の一部または全て)に相当する。条件1612は、検索条件に含まれる各シンボル120に相当する。条件1612は、検索条件に含まれるシンボル120の数だけ存在してもよい。費やした時間1613は、ユーザーがシンボル120の設定項目を決定するために費やした時間である。重み(係数)1614は、類似度を算出するときの各設定項目の係数またはスコアである。検索サーバー210は、費やした時間1613に基づいて、重み1614の値を決定する。一部の設定項目1611(種類、位置等)は、決定に時間を要しないが重要である可能性もあり得る。そのため、ある局面において、一部の設定項目1611の重み1614の値は、費やした時間1613に関係なく一定であってもよい。
【0111】
検索サーバー210は、検索スコア算出テーブル1610と、インデックス510とを比較して、各文書の類似度を算出する。各文書の類似度の算出方法は、
図15に示した通りである。
【0112】
ある局面において、端末220が、検索画面100等のJavascriptのプログラム等を実行することで、検索スコア算出テーブル1610を生成してもよい。この場合、端末220は、検索条件に代えて、検索スコア算出テーブル1610を検索サーバー210に送信する。
【0113】
図17は、文書検索システム200の機能の第12の例を示す図である。文書検索システム200は、シンボル120の設定項目の設定に要した時間に基づいて、各シンボル120の許容誤差を調節し得る。「許容誤差」は、文書内のオブジェクトの項目が、検索条件に含まれるシンボル120の設定項目に一致するか否かを判定するときに許容される誤差(閾値)を示す。
【0114】
グラフ1700は、ユーザーがシンボル120の設定項目の決定に費やした時間と、シンボル120の許容誤差との関係を示す。ユーザーがシンボル120の設定項目の決定に費やした時間が長いほど、シンボル120の許容誤差の値は減少することがわかる。なぜならば、ユーザーが長い時間をかけて決定した設定項目は、検索対象の文書に含まれるオブジェクトの項目により近い形で詳細に設定されている可能性があり、ノイズを減らすために許容誤差の値は小さい方が望ましいと考えられるためである。
【0115】
検索サーバー210は、ユーザーがシンボル120の設定項目を決定するのに要した時間に基づいて、シンボル120の設定項目ごとの許容誤差を変更するためのパラメーターを2次記憶装置3に格納し得る。
【0116】
端末220は、シンボル120が配置された仮想ページ105から、検索条件を生成する。検索条件は、各シンボル120の設定項目(種類、位置、サイズ、色等の任意の項目の一部または全て)と、各シンボル120の設定項目の決定に要した時間とを含む。
【0117】
検索サーバー210は、端末220から取得した検索条件に基づいて、検索スコア算出テーブル1710を生成する。検索スコア算出テーブル1710は、一例として、シンボル120の設定項目1711と、条件1712と、費やした時間1713と、重み(係数)1714とを含む。
【0118】
設定項目1711は、検索条件に含まれるシンボル120の設定項目(種類、位置、サイズ、色等の任意の項目の一部または全て)に相当する。条件1712は、検索条件に含まれる各シンボル120に相当する。条件1712は、検索条件に含まれるシンボル120の数だけ存在してもよい。費やした時間1713は、ユーザーがシンボル120の設定項目を決定するために費やした時間である。許容誤差1714は、シンボル120の設定項目の許容誤差を示す。例えば、
図17に示す設定項目「位置」の許容誤差は10%となっている。この場合、検索サーバー210は、シンボル120の位置(座標)とオブジェクトの位置とが10%までずれていても、オブジェクトは検索条件(位置)に合致すると判定する。検索サーバー210は、費やした時間1713に基づいて、許容誤差1714の値を決定する。ある局面において、一部の設定項目1711の許容誤差1714の値は、費やした時間1713に関係なく一定であってもよい。
【0119】
検索サーバー210は、検索スコア算出テーブル1710と、インデックス510とを比較して、各文書の類似度を算出する。各文書の類似度の算出方法は、
図15に示した通りである。
【0120】
ある局面において、端末220が、検索画面100等のJavascriptのプログラム等を実行することで、検索スコア算出テーブル1710を生成してもよい。この場合、端末220は、検索条件に代えて、検索スコア算出テーブル1710を検索サーバー210に送信する。
【0121】
図18は、文書検索システム200の機能の第13の例を示す図である。検索画面1800は、各シンボル120の設定項目毎の重みおよび許容誤差を手動で設定するための画面である。ユーザーは、検索画面1800を介して、各設定項目(種類、位置、サイズ等)の重みおよび許容誤差を設定し得る。ある局面において、検索画面1800は、重みおよび許容誤差を設定するためのダイアログ1810を含んでいてもよい。検索条件は、検索画面1800で設定された各設定項目の重みおよび許容誤差を含む。端末220は、ユーザーによって入力された各設定項目の重みおよび許容誤差を検索条件に反映する。ある局面において、検索画面1800は、検索画面100のバリエーションであってもよい。他の局面において、検索画面1800および検索画面100は互いに遷移できてもよい。
【0122】
検索サーバー210は、検索条件がユーザーによって入力された各設定項目の重みおよび許容誤差を含む場合、これらの重みおよび許容誤差を用いて検索スコア算出テーブルを生成する。検索サーバー210は、検索条件がユーザーによって入力された各設定項目の重みおよび許容誤差を含まない場合、
図15~17に示した方法またはこれらの組み合わせにより、検索スコア算出テーブルを生成する。
【0123】
図19は、文書検索システム200の機能の第14の例を示す図である。文書検索システム200は、ユーザーが手動でシンボル120の設定項目を変更したか否かに基づいて、各設定項目を類似度(スコア)の算出に使用するか否かを決定し得る。
【0124】
図11~
図14を参照して説明したように、ユーザーは、検索画面上で、各シンボルの設定項目(色、サイズ等)をデフォルト設定から手動で変更し得る。端末220は、シンボル120が配置された仮想ページ105から、検索条件を生成する。検索条件は、各シンボル120の設定項目(種類、位置、サイズ、色等の任意の項目の一部または全て)を含む。
【0125】
検索サーバー210は、端末220から取得した検索条件に基づいて、検索スコア算出テーブル1910を生成する。検索スコア算出テーブル1910は、一例として、シンボル120の設定項目1911と、条件1912と、スコア対象フラグ1913とを含む。
【0126】
設定項目1911は、検索条件に含まれるシンボル120の設定項目(種類、位置、サイズ、色等の任意の項目の一部または全て)に相当する。条件1912は、検索条件に含まれる各シンボル120に相当する。条件1912は、検索条件に含まれるシンボル120の数だけ存在してもよい。スコア対象フラグ1913は、類似度の算出に使用するか否かを示す。
【0127】
検索サーバー210は、ユーザーが手動で変更した設定項目を類似度の算出に使用するように、スコア対象フラグ1913を変更し(スコア対象フラグ=○)、ユーザーが手動で変更していない設定項目(デフォルトの設定項目)を類似度の算出に使用しないように、スコア対象フラグ1913を変更してもよい(スコア対象フラグ=×)。なぜならば、ユーザーが手動で変更した設定項目(デフォルト設定ではない設定項目)は、重要である可能性が高いためである。ある局面において、検索サーバー210は、一部の設定項目1911(種類、位置等)については、必ず類似度の算出に使用してもよい。
【0128】
検索サーバー210は、検索スコア算出テーブル1610と、インデックス510とを比較して、各文書の類似度を算出する。各文書の類似度の算出方法は、
図15に示した通りである。
【0129】
ある局面において、端末220が、検索画面100等のJavascriptのプログラム等を実行することで、検索スコア算出テーブル1910を生成してもよい。この場合、端末220は、検索条件に代えて、検索スコア算出テーブル1910を検索サーバー210に送信する。
【0130】
検索サーバー210は、
図15~
図19に示す一部または全ての方法を組み合わせて使用してもよい。例えば、検索サーバー210は、各設定項目の決定に費やした時間、各設定項目の重み(係数)、各設定項目の許容誤差およびスコア対象フラグの全てまたは一部を含む検索スコア算出テーブルを生成してもよい。
【0131】
ある局面において、端末220が、検索画面100等のJavascriptのプログラム等を実行することで、各設定項目の決定に費やした時間、各設定項目の重み(係数)、各設定項目の許容誤差およびスコア対象フラグの全てまたは一部を含む検索スコア算出テーブルを生成してもよい。この場合、端末220は、検索条件に代えて、生成した検索スコア算出テーブルを検索サーバー210に送信する。
【0132】
図20は、文書検索システム200の機能の第15の例を示す図である。検索画面2000は、仮想ページ105のサイズ、各シンボルの設定項目(色、サイズ等)、および、各シンボル120の設定項目毎の重みおよび許容誤差を手動で設定するための画面である。ユーザーは、検索画面2000を介して、仮想ページ105のサイズ変更、各設定項目の変更、各設定項目の重みの変更、および、各設定項目の許容誤差の変更を行い得る。端末220は、ユーザーによって入力された仮想ページ105のサイズ変更、各設定項目の変更、各設定項目の重みの変更、および、各設定項目の許容誤差の変更を検索条件2050に反映する。検索サーバー210は、受信した検索条件2050を用いて、検索スコア算出テーブルの生成と、検索処理とを行い得る。
【0133】
ある局面において、検索画面は、
図1~
図20を参照して説明した機能の一部または全てを適宜組み合わせて使用するための任意のUIを備えていてもよい。また、他の局面において、文書検索システム200は、
図1~
図20を参照して説明した機能の一部または全てを適宜組み合わせて使用してもよい。さらに、他の局面において、端末220または検索サーバー210のいずれかが、検索条件から検索スコア算出テーブルの生成を行ってもよい。
【0134】
<D.文書検索システムの処理のフローチャート>
次に、
図21および
図22を参照して、文書検索システム200の処理のフローチャートについて説明する。ある局面において、
図21および
図22の処理を実行するために、検索サーバー210および端末220のCPU1は、
図21および
図22の処理を行うためのプログラムを2次記憶装置3から1次記憶装置2に読み込んで、当該プログラムを実行してもよい。他の局面において、当該処理の一部または全部は、当該処理を実行するように構成された回路素子の組み合わせとしても実現され得る。
【0135】
図21は、検索サーバー210によるインデックス510の生成処理の一例を示すフローチャートである。ステップS2110において、検索サーバー210は、解析対象の文書を検出する。ある局面において、検索サーバー210は、定期的にファイルサーバー230から新しく追加された文書を取得してもよい。他の局面において、検索サーバー210は、端末220がファイルサーバー230に追加した文書、または端末220が編集したファイルサーバー230上の文書を解析対象の文書として検出してもよい。
【0136】
ステップS2120において、検索サーバー210は、オブジェクトを分離する。より具体的には、検索サーバー210は、文書を解析して、文書内に含まれる図およびグラフ等をオブジェクトの単位に分離する。
【0137】
ステップS2130において、検索サーバー210は、オブジェクトの位置およびサイズを判定する。ステップS2140において、検索サーバー210は、オブジェクトの色を判定する。ステップS2150において、検索サーバー210は、オブジェクトの種類を判定する。
【0138】
ステップS2160において、検索サーバー210は、インデックス510を生成する。インデックス510は、文書が含む1以上のオブジェクトの各々の1以上の設定項目(種類、色、位置およびサイズ等)を含む。検索サーバー210は、インデックス510を2次記憶装置3に格納する。
【0139】
図22は、検索サーバー210および端末220による検索処理の一例を示すフローチャートである。ステップS2210において、端末220は、シンボル120の仮想ページ105への配置操作を受け付ける。より具体的には、端末220は、検索画面100等を介して、ユーザーからシンボル120の仮想ページ105への配置操作を受け付ける。
【0140】
ステップS2220において、端末220は、検索条件を生成する。より具体的には、端末220は、シンボル120が配置された仮想ページ105に基づいて、検索条件を生成する。ステップS2230において、端末220は、検索条件を検索サーバー210に送信する。ある局面において、端末220は、検索条件に代えて、検索条件から生成した検索スコア算出テーブルを検索サーバー210に送信してもよい。ステップS2240において、検索サーバー210は、検索条件およびインデックス510を参照して、ファイルサーバー230を検索する。検索サーバー210は、検索処理の中で、検索条件から検索スコア算出テーブルを生成し、文書の類似度を算出する。ステップS2250において、検索サーバー210は、検索結果を出力する。より具体的には、検索サーバー210は、検索条件に合致する1または複数の文書の情報およびサムネイル等を含む検索結果を端末220に送信する。
【0141】
以上説明したように、本実施の形態に従う文書検索システム200は、オブジェクトの種類に紐付けられたシンボル120を仮想ページ105上に配置する機能を備える。当該機能により、ユーザーは、頭の中にある検索対象の文書のイメージを忠実かつ容易に仮想ページ105上に再現できる。また、文書検索システム200は、シンボル120が配置された仮想ページ105に基づいて検索条件を生成することで、文書の特徴量に基づいてファイルサーバー230内の文書を検索することができる。
【0142】
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本開示の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内で全ての変更が含まれることが意図される。また、実施の形態および各変形例において説明された開示内容は、可能な限り、単独でも、組合わせても、実施することが意図される。
【符号の説明】
【0143】
1 CPU、2 1次記憶装置、3 2次記憶装置、4 外部機器インターフェイス、5 入力インターフェイス、6 出力インターフェイス、7 通信インターフェイス、100,600,700,800,900,1000,1800,2000 検索画面、105 仮想ページ、110 パレット選択用UIパーツ、115 シンボル選択用UIパーツ、120 シンボル、125 表示ボタン、200 文書検索システム、210 検索サーバー、220 端末、230 ファイルサーバー、305 検索画面処理部、310 検索部、315 検索画面送信部、320 操作受信部、325 検索結果送信部、330 インデックス生成部、335 文書検索部、340 インデックス登録部、345 文書解析部、350 ファイルサーバー通信部、400 情報処理装置、405 キーボード、410 マウス、415 タッチパネル、420 ディスプレイ、510 インデックス、610,720,820 決定ボタン、710,860,1010 グループ、850 ラジオボタン、910 使用頻度の高いシンボルの一覧、1510,2050 検索条件、1520,1610,1710,1910 検索スコア算出テーブル、1521,1611,1711,1911 設定項目、1522,1612,1712,1912 条件、1530 類似度、1600,1700 グラフ、1613,1713 時間、1614 重み、1714 許容誤差、1810 ダイアログ、1913 スコア対象フラグ。