JP7670951B2 - 情報処理装置、情報処理方法、プログラム - Google Patents

情報処理装置、情報処理方法、プログラム Download PDF

Info

Publication number
JP7670951B2
JP7670951B2 JP2020178643A JP2020178643A JP7670951B2 JP 7670951 B2 JP7670951 B2 JP 7670951B2 JP 2020178643 A JP2020178643 A JP 2020178643A JP 2020178643 A JP2020178643 A JP 2020178643A JP 7670951 B2 JP7670951 B2 JP 7670951B2
Authority
JP
Japan
Prior art keywords
field
document
search
searched
information processing
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.)
Active
Application number
JP2020178643A
Other languages
English (en)
Other versions
JP2022069790A5 (ja
JP2022069790A (ja
Inventor
雄介 松田
直之 福田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Original Assignee
Canon Marketing Japan Inc
Canon IT Solutions Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Marketing Japan Inc, Canon IT Solutions Inc filed Critical Canon Marketing Japan Inc
Priority to JP2020178643A priority Critical patent/JP7670951B2/ja
Publication of JP2022069790A publication Critical patent/JP2022069790A/ja
Publication of JP2022069790A5 publication Critical patent/JP2022069790A5/ja
Application granted granted Critical
Publication of JP7670951B2 publication Critical patent/JP7670951B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報処理装置、情報処理方法、プログラムに関する。
従来の単語頻度のみによる全文検索では単語の重要度や意味というものが考慮されない。そのため、出現頻度は低いが重要な単語ではヒットしても検索上位に現れなかったり、字面は同じだがニュアンスが異なる単語にヒットした文書が検索結果に現れたりするという問題があった。
特許文献1には、文書データのフィールド情報を検索スコアの計算に用いて、ユーザの検索意図に近い検索結果を得るための技術について開示されている。
特開2005-063468号公報
特許文献1には、文書データのフィールド情報を検索スコアの計算に用いて、ユーザの検索意図に近い検索結果を得るための技術が記載されている。
しかし、フィールドごとのスコア反映割合を検索のたびにユーザが入力する必要があり、フィールド数が多くなった場合に煩雑である。また、フィールドが事前に文書のメタデータとして用意されていない部分についてはフィールドに格納されない問題がある。さらに文書のカテゴリについての概念がないため、各カテゴリに応じたフィールド情報の抽出やスコア計算を行うことができないという課題がある。
そのため、文書データにカテゴリ情報を付与し、カテゴリごとにフィールド抽出情報を定義することが望まれる。
そこで、本発明は、文書データのカテゴリとフィールド情報を検索スコアの計算に用いて、検索ユーザの意図に近い検索結果を得られるよう検索精度の向上を行うことを目的とする。
本発明の情報処理システムは、文書のカテゴリ毎に文書に含まれる各フィールドに設定される重みを記憶する記憶手段と、前記フィールドに設定された重みと、当該フィールドと検索語との関係とに基づき、当該文書のスコアを算出する算出手段と、を備えることを特徴とする。
本発明の情報処理方法は、文書のカテゴリ毎に文書に含まれる各フィールドに設定される重みを記憶する記憶ステップと、前記フィールドに設定された重みと、当該フィールドと検索語との関係とに基づき、当該文書のスコアを算出する算出ステップと、を備えることを特徴とする。
本発明のプログラムは、コンピュータを、文書のカテゴリ毎に文書に含まれる各フィールドに設定される重みを記憶する記憶手段と、前記フィールドに設定された重みと、当該フィールドと検索語との関係とに基づき、当該文書のスコアを算出する算出手段として機能させることを特徴とする。
本発明によれば、文書データのカテゴリとフィールド情報を検索スコアの計算に用いて、検索ユーザの意図に近い検索結果を得られるよう検索精度の向上を行うことが可能となる。
情報処理システムのシステム構成を示す図である。 情報処理装置のハードウェア構成を示す図である。 本実施例での処理の流れを示すフローチャートである。 本発明の実施形態における、文書登録処理の一例を示すフローチャートである。 本発明の実施形態における、フィールド抽出処理の一例を示すフローチャートである。 本発明の実施形態における、キーワードによるフィールド抽出処理の一例を示すフローチャートである。 本発明の実施形態における、パターンによるフィールド抽出処理の一例を示すフローチャートである。 本発明の実施形態における、形態素解析によるフィールド抽出処理の一例を示すフローチャートである。 本発明の実施形態における、検索処理の一例を示すフローチャートである。 本発明の実施形態における、検索セッション統計情報の更新処理の一例を示すフローチャートである。 本発明の実施形態における、フィールド重みの更新処理の一例を示すフローチャートである。 本発明の実施形態における、抽出定義一覧画面の一例を示す図である。 本発明の実施形態における、抽出定義詳細画面の一例を示す図である。 本発明の実施形態における、フィールド名とキーワードの距離についての説明の図である。 本発明の実施形態における、フィールド重み更新処理の一例を示す図である。 本発明の実施形態における、検索セッション統計情報のテーブルの一例を示す図である。 本発明の実施形態における、フィールドスコアの計算の一例を示す図である。
以下、図面を参照して、本発明の実施形態を詳細に説明する。なお、以下に説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の一例である。
図1は、本発明の実施形態における文書検索システムのシステム構成の一例を示す図である。本発明における実施形態における文書検索システム2000は、情報処理装置100と、文書DB107、クライアントPC108で構成される。情報処理装置100は、文書登録処理部101、文書検索処理部102、形態素解析辞書103、登録文書インデックス104、抽出定義DB105、検索セッション統計情報106から構成され、外部の文書DB107や文書検索システムに文書を登録する際に使用するクライアントPCとネットワークを介して通信可能に接続されている。
文書登録処理部101では、ユーザから受け付けた文書に係る処理を実行する機能部である。具体的には、テキスト抽出処理やカテゴリ付与やフィールドの抽出処理を行い、検索インデックスを作成し、登録文書インデックス104に格納するなどの処理を行う。
文書検索処理部102では、ユーザから受けつけた検索語を用いて、インデックス済みの文書を検索する機能部である。ユーザから検索語を受け付けると、インデックス済みの文書から本文スコアとフィールドスコアを計算して、それぞれを合算して検索結果に反映させる処理を行う。
形態素解析辞書103は、形態素解析を行う際に使用される辞書である。
登録文書インデックス104は、登録対象となる文書から抽出した本文及び各フィールドに対する検索インデックスを格納するDBである。本DBを用いて、検索処理部102による処理が行われる。
抽出定義DB105は、カテゴリ毎に定義づけられる抽出定義を記憶しておくDBである。本抽出定義DBに記憶される当該カテゴリの抽出定義として設定された抽出方式により、フィールドの抽出を行う。抽出方式は、キーワードによる抽出を行うか、パターンによる抽出を行うか、形態素解析による抽出などがある。
検索セッション統計情報106は、ユーザの検索セッション統計情報を更新するDBである。ユーザの検索セッション統計情報の更新を行い、抽出定義のフィールド重みを更新する際に利用する。
文書DB107は、文書が記憶されているDBである。クラウドサービスなどの外部DBも含まれる。
クライアントPC108は、ユーザから文書登録を受付ける際に使用される。
図2は、本発明の実施形態における情報処理装置のハードウェア構成の一例を示すブロック図である。
図2に示すように、情報処理装置は、システムバス200を介してCPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、記憶装置204、入力コントローラ205、音声入力コントローラ206、ビデオコントローラ207、メモリコントローラ208、および通信I/Fコントローラ209が接続される。
CPU201は、システムバス200に接続される各デバイスやコントローラを統括的に制御する。
ROM202あるいは外部メモリ213は、CPU201が実行する制御プログラムであるBIOS(Basic Input/Output System)やOS(Operating System)や、本情報処理方法を実現するためのコンピュータ読み取り実行可能なプログラムおよび必要な各種データ(データテーブルを含む)を保持している。
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ213からRAM203にロードし、ロードしたプログラムを実行することで各種動作を実現する。
入力コントローラ205は、キーボード210や不図示のマウス等のポインティングデバイス等の入力装置からの入力を制御する。入力装置がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。
また、タッチパネルは、マルチタッチスクリーンなどの、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。
ビデオコントローラ207は、ディスプレイ212などの外部出力装置への表示を制御する。ディスプレイは本体と一体になったノート型パソコンのディスプレイも含まれるものとする。なお、外部出力装置はディスプレイに限ったものははく、例えばプロジェクタであってもよい。また、前述のタッチ操作を受け付け可能な装置については、入力装置も提供する。
なおビデオコントローラ207は、表示制御を行うためのビデオメモリ(VRAM)を制御することが可能で、ビデオメモリ領域としてRAM203の一部を利用することもできるし、別途専用のビデオメモリを設けることも可能である。
メモリコントローラ208は、外部メモリ213へのアクセスを制御する。外部メモリとしては、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、および各種データ等を記憶する外部記憶装置(ハードディスク)、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等を利用可能である。
通信I/Fコントローラ209は、ネットワークを介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信やISDNなどの電話回線、および携帯電話の3G回線を用いた通信が可能である。
尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ212上での表示を可能としている。また、CPU201は、ディスプレイ212上の不図示のマウスカーソル等でのユーザ指示を可能とする。
本発明を実現するための後述する各種プログラムは、外部メモリ213に記憶されており、必要に応じてRAM203にロードされることによりCPU201によって実行されるものである。さらに上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も外部メモリ213に格納されており、これらについての詳細な説明も後述する。
次に図3を用いて、本願発明における処理の流れについて説明する。
ステップS301では、事前設定として、カテゴリ毎のフィールド抽出定義情報(フィールド重みを含む)とデフォルトの抽出定義(カテゴリが設定されていないファイルやフィールド重みセットで指定しなかったフィールドに使う抽出定義)の設定を受け付ける。フィールド抽出定義情報とは、抽出定義詳細画面1300に示すように、カテゴリ毎に、フィールド名と当該フィールドを抽出する方法と抽出定義が対応付けられた情報である。例えば図13に示す抽出定義情報によれば、「工事概要」というカテゴリの文書については、「事務所」や「病院」といったキーワードにより抽出されるフィールドを「建物用途」というフィールドとして抽出することが可能となる。
設定された抽出定義情報は、抽出定義DB105に保存される。
ステップS302では、ユーザから受け付けた文書(検索対象文書)に対して、文書登録処理を実行する。文書登録処理では、検索対象文書の本文抽出やカテゴリの付与、検索対象文書のフィールド抽出、本文及びフィールドに対する検索インデックスの構築などが行われる。文書登録処理の詳細については、図4を用いて後述する。
ステップS303では、ユーザから受け付けた検索語に基づき、文書検索処理を実行する。文書検索処理では、ステップS302で構築した検索インデックスを用いた検索処理が行われる。文書検索処理の詳細については、図9を用いて後述する。
次に図4~図8のフローチャートを用いて、本発明の実施形態における文書登録処理部が実行する文書登録処理について説明する。
図4のフローチャートは、文書登録処理部101において文書を登録する処理を示すフローチャートである。
ステップS401では、登録対象となる文書全てに対して処理が終了したかどうかを判定する。処理が終了していれば(S401のYes)該フローチャートの処理を終了し、処理の終了していない文書が残っていれば(S401のNo)ステップS402に進む。
ステップS402では該文書に対してテキスト抽出処理を行う。該テキスト抽出処理は一般に開示されている技術により実現されるものであり、どのような技術・方法を用いても構わない。
ステップS403では該文書に対するカテゴリ付与を行う。カテゴリとは、その文書がいかなるタイプの文書であるかを分類するために付与され、本実施例であれば工事概要、注文書、議事録などがカテゴリの分類例である。ここでのカテゴリ付与は計算機によって自動で行ってもよいし、ユーザによって手動で行っても構わない。
ステップS404ではフィールド抽出処理を行う。フィールド抽出処理については、図5を使い後述する。
ステップS405ではステップS402で抽出したテキスト及びステップS404で抽出した各フィールドに対する検索インデックスの作成を行い登録文書インデックス104に格納する。検索インデックスとは、図9で示す文書検索処理の処理時に使用する検索インデックスである。
図5のフローチャートは、文書からフィールドを抽出する処理を示すフローチャートである。
ステップS501では、ステップS403で付与された該文書のカテゴリを取得する。
ステップS502では、抽出定義DB105からステップS301で設定された該カテゴリの抽出定義情報を取得する。ステップS501でカテゴリが取得できなかった場合はデフォルトの抽出定義を取得する。
ステップS503では、該抽出定義に定義された全てのフィールドに対して抽出処理が終了したかどうかを判断する。終了していれば(S503のYes)該フローチャートを終了し、そうでなければ(S503のNo)処理をステップS504に進める。
ステップS504では、該抽出定義情報に設定された処理対象のフィールドの抽出方式に応じて、処理を分岐する。例えば、図13の例では、「住所」のフィールドについては形態素解析により抽出することを意味している。抽出方式が「キーワード」であればステップS505に、「パターン」であればステップS506に、「形態素解析」であればステップS507に処理を進める。
ステップS505では、キーワードによる抽出処理を行う。キーワードによる抽出処理の詳細は、図6のフローチャートを用いて後述する。
ステップS506では、パターンによる抽出処理を行う。パターンによる抽出処理の詳細は、図7のフローチャートを用いて後述する。
ステップS507では、形態素解析による抽出処理を行う。形態素解析による抽出処理の詳細は、図8のフローチャートを用いて後述する
ステップS508では、抽出されたフィールドを該文書のフィールドとして記録しておく。このとき、該抽出定義情報のフィールド名と関連付けて記録する。
図6のフローチャートは、文書からキーワード方式でフィールドを抽出する処理を示すフローチャートである。
ステップS601では、該抽出定義の全てのキーワードを処理したかどうかを判断する。全て処理していれば(S601のYes)該フローチャートを終了し、そうでなければ(S601のNo)処理をステップS602に進める。
ステップS602では、該抽出定義から未処理のキーワードを取得する。
ステップS603では、該文書に対するキーワードマッチを実行する。このキーワードマッチにはどのような手法を用いても構わない。
ステップS604では、該文書に該キーワードが存在するかどうかを判断する。存在しない場合(S604のNo)処理をステップS601に進め、存在する場合(S604のYes)処理をステップS605に進める。
ステップS605では、存在キーワードの近くにフィールド名が存在するかどうかを判定する。キーワードによる抽出処理に関する抽出定義は、図13に示すように、フィールド名とキーワードとが対応付けて登録されたものである。検出されたキーワードの近くに、当該キーワードに対応付けられたフィールド名が存在する場合(ステップS605:YES)は処理をステップS606に進め、存在しない場合(ステップS605:NO)は処理をステップS601に戻す。
ここで、キーワード(Value)とフィールド名(Key)の距離について、図14を用いて具体的に説明する。
図13のようにフィールド名「建物用途」には事務所、病院、飲食店、駐車場、ホテルの5つのキーワードが対応付けられているため、図14に示す文書において抽出されるキーワードは、V1「病院」、V2「事務所」、V3「駐車場」となる。このうちV1とV2はキーであるK1「建物用途」と同じ行にあり、距離的に近いと言える。一方でV3はK1と5行離れており、距離的には遠く、「建物用途」とは異なる文脈で使用されていると考えられる。したがって、キーワード抽出の際にはこのキーワードとフィールド名の距離を考慮し、遠いものを抽出対象としないようにすることで誤抽出を防ぐことができる。
図6の説明に戻る。
ステップS606では、ステップS605で抽出されたキーワードを該文書のフィールドの値として記録する。
図7は、正規表現パターンによるフィールドの抽出処理を示すフローチャートである。
ステップS701では、抽出定義情報に設定された正規表現パターンを取得する。正規表現パターンの例としては、図13のフィールド名1302の関連法令であれば、抽出定義1304の「.+(法|条例)」となる。これは、「法」または「条例」が後方一致する文字列を検出するための正規表現であり、この条件によれば例えば、「建築基準法」「騒音対策条例」などが抽出可能となる。
ステップS702では、該文書に対してステップS701で取得した正規表現のパターンマッチを行う。
ステップS703では、ステップS702でマッチした部分全てについて処理が行われたかどうかを判断する。全てのパターンで処理が行われた場合(S703のYes)該フローチャートの処理を終了し、そうでない場合(S703のNo)ステップS704へ処理を進める。
ステップS704では、マッチした部分を該文書のフィールドの値として記録する。また、グループや名前付き前方参照といった正規表現の機能を用いてマッチした部分の一部をフィールドの値として使ってもよい。
図8は、形態素解析で得られた品詞によるフィールドの抽出処理を示すフローチャートである。
ステップS801では、抽出定義を取得する。例えば、本実施例であれば、図13のフィールド名1302の住所の抽出定義1304に定められる品詞の並びを取得する。この場合であれば、抽出定義は[名詞-固有名詞-地域]の並びで定められている。つまり、これは、名詞の中の固有名詞の中の地域カテゴリに属する単語の並びを抽出することを意味し、「東京都港区港南」といった文字列が抽出される。
ステップS802では、該文書に形態素解析を実行する。
ステップS803では、ステップS801で取得した抽出定義に合致する品詞の並びがあるかどうかを判断する。品詞の並びがない場合(S803のNo)該フローチャートの処理を終了し、そうでない場合(S803のYes)処理をステップS804に進める。
ステップS804では、マッチした部分を該文書のフィールドの値として記録する。
続けて、図9、図17を用いて、本発明の実施形態における文書検索処理部が実行する処理について説明する。
図9は、検索処理部102において、ユーザからの検索語を入力として受けとり、インデックス済みの文書を検索する処理を示すフローチャートである。
ステップS901では、ユーザからの検索語を取得する。
ステップS902では、インデックス済みの全文書に対して文書スコアが未計算の文書が存在するかどうかを判断する。文書スコアが未計算の文書が存在する場合(S902のYes)処理をステップS903に進め、そうでない場合(S902のNo)処理をステップS908に進める。
ステップS903では、文書スコア未計算の文書を取得する。
ステップS904では、該文書の本文に対する検索スコアを計算する。検索スコアとは、検索語との関連度合いを数値で表した値である。本文に対する検索スコアを、本文スコアと呼ぶ。なお、本実施例においては、本文スコアは公知の検索スコア算出方法により算出される値とする。
ステップS905では、フィールドスコアが未計算のフィールドが存在するかどうかを判断する。存在する場合(S905のYes)処理をステップS806に進め、そうでない場合(S905のNo)処理をステップS907に進める。
ステップS906では、フィールドスコア未計算のフィールドを取得し、該フィールドに対する検索スコアを計算する。このスコアをフィールドスコアと呼ぶ。
フィールドスコアの計算の方法の一例を、図17を用いて説明する。ユーザから「AAA株式会社 大阪」という検索語を受け付けた場合について説明する。。
図17Aは、大阪府警担当者議事録というタイトルの文書を示した図で、当該文書をフィールド毎に分け、各フィールドの値と重みが対応付けられている。図17Bは、○○プロジェクト概要というタイトルの文書を示した図で、図17Aと同様に、フィールド毎に値と重みとが対応付けてある。なお、重みは、当該文書のカテゴリによって定まる値である。なお、図17において各フィールドの値として示している内容は、説明の為に抽出定義に合致しない文字列も含めて示しているが、ステップS506、ステップS604、ステップS704で説明した通り、各フィールドの値として登録されるのは、抽出定義に合致した文字列である。
まず、検索語の出現回数をフィールド毎にカウントする。
図17Aの文書であれば、タイトルフィールド1803には「大阪」は1回出現、人名フィールド1804には「大阪」は0回出現、本文フィールド1705には「大阪」は3回出現している。そして、各フィールドでの検索語の出現回数をフィールド毎に設定されている重みとをかけてフィールドスコアを求める。
タイトルフィールド1803に設定されている重みは1806に示すように2で大阪は1回出現なので、1×2=2となる。同様に、人名フィールド1804は0×5=0、本文フィールド1805は3×1=3となる。これらの合計値(2+0+3=5)が「大阪府警担当者議事録」という文書のフィールドスコアとして算出される。
同様に図17Bの、○○プロジェクト概要.PDFのフィールドスコアを計算すると、会社名フィールドで、検索語AAA株式会社が1回出現しているので1×5=5、住所フィールドで大阪が1回出現しているので1×5=5、本文フィールドでAAA株式会社と大阪がそれぞれ1回ずつ出現しているので2×1=2となる。これらの合計値(5+5+2=12)が○○プロジェクト概要.PDFのフィールドスコアとして算出される。
ステップS907では、ステップS904で算出した該文書の本文スコアと、ステップS906で算出した該文書のフィールドスコアを合算する。この値を文書スコアと呼ぶ。
なお、本実施例においては、本文スコアとフィールドスコアとを合算したスコアを文書スコアとしたが、各フィールドの重みを考慮したスコアであるフィールドスコアのみを用いても良い。
ステップS908では、文書スコアの降順で検索結果をユーザに示す。なお、本実施例では検索語との関連性が強い文書の文書スコアが高くなる計算方法を用いたため、降順で検索結果をユーザに示したが、検索語との関連性が強い文書の文書スコアが小さくなる算出方法を用いる場合は、昇順により表示する。すなわち、検索語との関連性が強い文書が検索結果の上位に表示されるようソートして表示する。
以上のように、抽出定義情報で「人名」や「会社名」や「住所」など、当該カテゴリの文書を特徴付けるフィールドに対して大きな重みを設定し、設定されたフィールド毎の重みを考慮して検索スコアを算出することで、検索語が同じ数だけ含まれる文書であっても、よりユーザ(検索者)の意図に合った(ユーザが探し求めている)文書を上位に表示することが可能となる。
ステップS909では、検索セッション統計情報更新処理を行う。図10のフローチャートを用いて後述する。
ステップS910では、フィールド重み更新処理を行う。図11のフローチャートを用いて後述する。
図10は、ユーザの検索セッションでの統計情報を更新する処理を示すフローチャートである。なお、検索セッションとはユーザが検索結果を取得して、該検索結果を破棄するまでの期間のことを言う。
ステップS1001では、検索セッション統計情報テーブル図15の1400の初期化を行う。該検索結果に含まれる全ての文書情報について、文書ID、カテゴリを設定しセッション閲覧数を0に設定する。
ステップS1002では、検索セッションが終了しているかどうかを判断する。終了している場合(S1002のYes)該フローチャートの処理を終了し、そうでない場合(S1002のNo)ステップS1003に処理を進める。
ステップS1003では、ユーザが検索結果の文書を選択したかどうかを判断する。選択していない場合(S1003のNo)処理をステップS1002に進め、そうでない場合(S903のYes)は処理をステップS1004に進める。
ステップS1004では、ユーザが選択した文書の情報を取得する。
ステップS1005では、検索セッション統計情報テーブルの該文書のエントリを更新する。この場合、該テーブルのセッション閲覧数に1を加える。
図11は、検索セッション統計情報を利用して抽出定義のフィールド重みを更新する処理を示すフローチャートである。検索の情報に応じてフィールド重みを更新していくことで、より検索精度が向上していくことが見込まれる。
ステップS1101では、検索セッション統計情報テーブル図15の1400を取得する。なお、ここで取得するのは検索セッションの終了した検索セッション統計情報テーブルのみである。
ステップS1102では、ヒット文書のカテゴリごとに閲覧数を集計する。ヒット文書とは、検索処理部により検索された文書である。検索の結果ヒットした文書をユーザが閲覧したかを集計することで、次回の検索精度を上げるために利用される。
ステップS1103では、ステップS1102で集計したカテゴリの中に未処理のカテゴリがあるかどうかを判断する。未処理のカテゴリがある場合(S1103のYes)処理をステップS1004に進め、そうでない場合(S1103のNo)処理をステップS1109に進める。
ステップS1104では、未処理のカテゴリの抽出定義を取得する。
ステップS1105では、検索語に含まれる未処理のフィールド情報(当該カテゴリの抽出定義として設定されたフィールドのうち、検索語として用いられたワードが該当するフィールドであって、未処理のフィールド)があるかどうかを判断する。未処理のフィールド情報がある場合(S1105のYes)処理をステップS1106へ進め、そうでない場合(S1105のNo)処理をステップS1103に進める。
ステップS1106では、該カテゴリのセッション閲覧数が0より大きいかどうかを判断する。0より大きい場合(S1106のYes)処理をステップS1107に進め、そうでない場合(S1106のNo)処理をステップS1108に進める。
ステップS1107では、該カテゴリのセッション閲覧数が0より大きく、該フィールドが検索に貢献できたと考え、該フィールドのフィールド重みを(セッション閲覧数)×0.01だけ加算する。この計算式はあくまでも一例であり、その他の計算方法を用いても構わない。
ステップS1108では、該カテゴリのセッション閲覧数が0であり、該フィールドが検索に貢献していないと考え、該フィールドのフィールド重みを0.01だけ減算する。この計算式はあくまでも一例であり、その他の計算方法を用いても構わない。
ステップS1109では、不要となった該検索セッション統計情報テーブルを破棄する。
ここで、図11を用いて、フィールド重み更新処理の一例を説明する。まず、検索語に「住所」と「建物用途」を含む検索語が使われたとし、検索セッション終了時の検索セッション統計情報テーブルが図16の1400であったとする。また、カテゴリ「工事概要」「注文書」「議事録」の抽出定義がそれぞれ、1500、1600、1700であったとする。またフィールド重み更新式はセッション閲覧数が0より大きい場合は(セッション閲覧数)×0.01を加算、0の場合は0.01の減算とする。この場合、テーブル1300より検索結果のカテゴリごとのセッション閲覧数は、工事概要が2、注文書と議事録が0となる。工事概要のフィールド重みの更新は、フィールド「住所」(図16の1501)と「建物用途」(図16の1502)が両方とも定義されていることから、2×0.01=0.02が加算され、更新後のフィールド重みはそれぞれ3.02と2.02となる。注文書のフィールド重みの更新は「住所」(図16の1601)のみが定義されていることから、0.01の減算となり、更新後のフィールド重みは0.09となる。議事録のフィールド重みの更新は「住所」「建物用途」ともに定義されていないため行われない。
図12は、現在定義されている抽出定義の確認と、追加、削除を行う画面である。抽出定義一覧画面1200は抽出定義追加ボタン1201、一括削除ボタン1202、チェックボックス1203、編集ボタン1204、個別削除ボタン1205からなる。
抽出定義追加ボタン1201は、押下することで抽出定義詳細画面(図13)に遷移し、新規に抽出定義を作成するためのものである。
一括削除ボタン1202は、押下することでチェックボックス1203が有効になっている全ての抽出定義を一括削除するものである。
チェックボックス1203は、有効にすることで一括削除ボタン1202を用いて一括削除を行えるようにするためのものである。
編集ボタン1204は、押下することで抽出定義詳細画面(図13)に遷移し、選択した抽出定義を編集するためのものである。
個別削除ボタン1205は、押下することで選択した抽出定義を削除するためのものである。
図13は、抽出定義の詳細の追加、確認、編集を行う画面である。抽出定義詳細画面1300は、カテゴリ名テキストボックス1301、フィールド名テキストボックス1302、抽出方式プルダウンリスト1303、抽出定義テキストボックス1304、フィールド重みテキストボックス1305、フィールド削除ボタン1306、抽出定義フィールド追加ボタン1307からなる。
なお、抽出定義一覧画面1100の抽出定義追加ボタン1101を押下して本画面に遷移した場合は、カテゴリ名テキストボックス1301は空欄で、フィールド名テキストボックス1302、抽出方式プルダウンリスト1303、抽出定義テキストボックス1304、フィールド重みテキストボックス1305は初期状態では表示されていない。また、抽出定義一覧画面1200の編集ボタンから本画面に遷移した場合、該抽出定義の内容がカテゴリ名テキストボックス1301、フィールド名テキストボックス1302、抽出方式プルダウンリスト1303、抽出定義テキストボックス1304、フィールド重みテキストボックス1305に表示される。
カテゴリ名テキストボックス1301は、この抽出定義につける名称を設定するためのものである。
フィールド名テキストボックス1302は、フィールドの名称を設定するためのものである。
抽出方式プルダウンリスト1303は、抽出方式を選択するためのものである。ここでは「キーワード」「パターン」「形態素解析」から選択する。
抽出定義テキストボックス1304は、抽出の定義を設定するためのものである。抽出方式が「キーワード」の場合は抽出するキーワードのリスト、「パターン」の場合は正規表現パターン、「形態素解析」の場合は抽出したい形態素の並びを設定する。
フィールド重みテキストボックス1305は、フィールド重みを設定するためのものである。
フィールド削除ボタン1306は、押下することで該フィールドの抽出定義を削除するためのものである。
抽出定義フィールド追加ボタン1307は、押下することで空欄のフィールド名テキストボックス1302、抽出方式プルダウンリスト1303、抽出定義テキストボックス1304、フィールド重みテキストボックス1305、フィールド削除ボタン1306が最下行に追加され新しいフィールドの定義ができるようになる。
このようにして、カテゴリごとに抽出定義を設定することにより検索精度の向上が見込まれる。例えば、登録文書内の建築設計書の工事概要と注文書を比較した場合、工事概要の住所(建設場所)の情報は地形や適用される自治体の条例が異なるなど非常に重要な項目であるが、注文書の住所は特に重要な情報でないため、工事概要ではフィールド重みを高め(例えば3)に、注文書では低め(例えば0.1)に設定することで、同じフィールドでのカテゴリごと重要度の違いを表現できる。このように設定することで、住所で検索を行った場合、検索スコアが高めになる工事概要が検索結果上位に、検索スコアが低めになる注文書は検索下位に表示されることが見込め、検索ユーザの意図に沿った検索結果となりやすい。
仮にカテゴリごとにフィールド重みを設定しなかった場合、住所で検索した場合、どのカテゴリの文書でも住所を重視するよう設定した場合、工事概要と注文書の両方が検索結果に混在することになり利便性が低下すると考えられる。
図15の検索セッション統計情報テーブル1400は、検索セッションの統計情報を保持するためのテーブルであり、文書ID1401、カテゴリ1402、セッション閲覧数1403の項目からなる
文書ID1401には、検索でヒットした文書を特定するための項目であり、ヒットした文書のIDが登録される。
カテゴリ1402には、該文書のカテゴリが登録される。
セッション閲覧数1403には、ユーザが検索セッション中に該文書を閲覧した回数を記録する。
以上、本実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、本発明におけるプログラムは、図3~図11に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は図3~図11の処理方法をコンピュータが実行可能なプログラムが記憶されている。
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、DVD-ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適用できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
2000 文書検索システム
100 情報処理装置
101 文書登録処理部
102 文書検索処理部
103 形態素解析辞書
104 登録文書インデックス
105 抽出定義DB
106 検索セッション統計情報
107 文書DB
108 クライアントPC

Claims (11)

  1. 文書のカテゴリ毎に、文書のフィールドと、当該フィールドから抽出する文字列と、当該フィールドの重みと、を定義した定義情報を受け付ける定義情報受付手段と、
    複数の検索対象の文書のそれぞれについて、当該検索対象の文書に係るカテゴリに対応する前記定義情報に基づき、当該検索対象の文書から当該検索対象の文書のフィールド毎に前記文字列を抽出する抽出手段と、
    ユーザから前記検索対象の文書を検索するための検索語を受け付ける検索語受付手段と、
    複数の検索対象の文書のそれぞれについて、前記検索語受付手段により受け付けた検索語と、前記抽出手段により当該検索対象の文書から抽出された文字列と、前記定義情報により定義された当該文字列に係るフィールドの重みと、に基づき、当該検索対象の文書のフィールド毎に算出された検索スコアに基づく当該検索対象の文書の検索スコアを算出するスコア算出手段と、
    を備えることを特徴とする情報処理システム。
  2. 前記スコア算出手段は、前記フィールド毎に算出された検索スコアの合計値を当該検索対象の文書の検索スコアとして算出することを特徴とする請求項1に記載の情報処理システム。
  3. 前記スコア算出手段は、前記フィールド毎の検索スコアを、当該フィールドにおける前記検索語と一致する前記抽出された文字列の数と、当該フィールドの重みとに基づき算出することを特徴とする請求項1または2に記載の情報処理システム。
  4. 前記スコア算出手段は、前記フィールド毎の検索スコアを、当該フィールドにおける前記検索語と一致する前記抽出された文字列の数に、当該フィールドの重みを掛け合わせることで算出することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理システム。
  5. 前記定義情報は、前記フィールドから抽出する文字列の抽出方法として、前記フィールド毎に、形態素解析、キーワードマッチ、正規表現パターンのいずれかの方法が定義されていることを特徴とし、
    前記抽出手段は、前記定義情報に定義された抽出方法に基づき、当該検索対象の文書のフィールド毎に前記文字列を抽出することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理システム。
  6. 前記スコア算出手段により算出された検索スコアに基づき、前記検索語による検索結果を表示するよう制御する表示制御手段をさらに備えることを特徴とする請求項1乃至5のいずれか1項に記載の情報処理システム。
  7. 前記検索語により検索された文書の閲覧実績に基づき、当該検索された文書に係るカテゴリに対応する定義情報での前記フィールドの重みを更新する更新手段をさらに備えることを特徴とする請求項1乃至6のいずれか1項に記載の情報処理システム。
  8. 前記更新手段は、閲覧された文書に係るカテゴリに対応する定義情報での前記フィールドの重みを高くすることを特徴とする請求項7に記載の情報処理システム。
  9. 前記更新手段は、閲覧されなかった文書に係るカテゴリに対応する定義情報での前記フィールドの重みを低くすることを特徴とする請求項7または8に記載の情報処理システム。
  10. 情報処理システムの定義情報受付手段が、文書のカテゴリ毎に、フィールドと、当該フィールドから抽出する文字列と、当該フィールドの重みと、を定義した定義情報を受け付ける定義情報受付工程と、
    前記情報処理システムの抽出手段が、複数の検索対象の文書のそれぞれについて、当該検索対象の文書に係るカテゴリに対応する前記定義情報に基づき、当該検索対象の文書から当該検索対象の文書のフィールド毎に前記文字列を抽出する抽出工程と、
    前記情報処理システムの検索語受付手段が、ユーザから前記検索対象の文書を検索するための検索語を受け付ける検索語受付工程と、
    前記情報処理システムのスコア算出手段が、複数の検索対象の文書のそれぞれについて、前記検索語受付工程により受け付けた検索語と、前記抽出工程により抽出された文字列と、前記定義情報により定義された当該文字列に係るフィールドの重みと、に基づき、当該検索対象の文書のフィールド毎に算出された検索スコアに基づく当該検索対象の文書の検索スコアを算出するスコア算出工程と、
    を備えることを特徴とする情報処理方法。
  11. コンピュータを請求項1乃至9のいずれか1項に記載の各手段として機能させるためのプログラム。
JP2020178643A 2020-10-26 2020-10-26 情報処理装置、情報処理方法、プログラム Active JP7670951B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020178643A JP7670951B2 (ja) 2020-10-26 2020-10-26 情報処理装置、情報処理方法、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020178643A JP7670951B2 (ja) 2020-10-26 2020-10-26 情報処理装置、情報処理方法、プログラム

Publications (3)

Publication Number Publication Date
JP2022069790A JP2022069790A (ja) 2022-05-12
JP2022069790A5 JP2022069790A5 (ja) 2023-11-06
JP7670951B2 true JP7670951B2 (ja) 2025-05-01

Family

ID=81534223

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020178643A Active JP7670951B2 (ja) 2020-10-26 2020-10-26 情報処理装置、情報処理方法、プログラム

Country Status (1)

Country Link
JP (1) JP7670951B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7298722B2 (ja) * 2020-06-30 2023-06-27 株式会社三洋物産 遊技機
JP7298721B2 (ja) * 2020-06-30 2023-06-27 株式会社三洋物産 遊技機
JP7298723B2 (ja) * 2020-06-30 2023-06-27 株式会社三洋物産 遊技機
JP7298724B2 (ja) * 2020-08-07 2023-06-27 株式会社三洋物産 遊技機

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190325212A1 (en) 2018-04-20 2019-10-24 EMC IP Holding Company LLC Method, electronic device and computer program product for categorization for document

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1049549A (ja) * 1996-05-29 1998-02-20 Matsushita Electric Ind Co Ltd 文書検索装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190325212A1 (en) 2018-04-20 2019-10-24 EMC IP Holding Company LLC Method, electronic device and computer program product for categorization for document
CN110390094A (zh) 2018-04-20 2019-10-29 伊姆西Ip控股有限责任公司 对文档进行分类的方法、电子设备和计算机程序产品

Also Published As

Publication number Publication date
JP2022069790A (ja) 2022-05-12

Similar Documents

Publication Publication Date Title
JP7670951B2 (ja) 情報処理装置、情報処理方法、プログラム
KR101465769B1 (ko) 사전 단어 및 어구 판정
JP2809341B2 (ja) 情報要約方法、情報要約装置、重み付け方法、および文字放送受信装置。
US8280902B2 (en) High precision search system and method
US11573989B2 (en) Corpus specific generative query completion assistant
US9639518B1 (en) Identifying entities in a digital work
WO2019009995A1 (en) SYSTEM AND METHOD FOR RESEARCHING MUSIC IN NATURAL LANGUAGE
JP2669601B2 (ja) 情報検索方法及びシステム
JP2011134334A (ja) ショートテキスト通信のトピックを識別するためのシステムおよび方法
US7440938B2 (en) Method and apparatus for calculating similarity among documents
TW200805095A (en) Data product search using related concepts
JP2872706B2 (ja) 情報検索装置
CN103198059B (zh) 电子设备以及词典数据显示方法
US20130036354A1 (en) Music interface
JP6287192B2 (ja) 情報処理装置、情報処理方法、プログラム
JP2005122665A (ja) 電子機器装置、関連語データベースの更新方法、プログラム
JP7626924B2 (ja) 情報処理システム、情報処理方法、プログラム
JP5112416B2 (ja) 用語抽出装置、方法及び用語辞書のデータ構造
JP6571053B2 (ja) 施設検索装置、施設検索方法、コンピュータプログラム及びコンピュータプログラムを記録した記録媒体
JP7614705B2 (ja) 情報処理システム、情報処理方法、プログラム
JP7545061B2 (ja) 情報処理システム、情報処理方法、プログラム
JP2018156552A (ja) 計算機システム及び文章データの検索方法
JP4331177B2 (ja) 情報検索システム、情報検索方法及び情報検索プログラム
JP2008059392A (ja) 辞書検索装置および辞書検索処理プログラム
JP7587171B2 (ja) 情報処理装置、制御方法、プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231025

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231025

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20241008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250307

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: 20250318

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250331

R150 Certificate of patent or registration of utility model

Ref document number: 7670951

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150