JP6813776B2 - 情報処理装置、その制御方法及びプログラム - Google Patents

情報処理装置、その制御方法及びプログラム Download PDF

Info

Publication number
JP6813776B2
JP6813776B2 JP2016210659A JP2016210659A JP6813776B2 JP 6813776 B2 JP6813776 B2 JP 6813776B2 JP 2016210659 A JP2016210659 A JP 2016210659A JP 2016210659 A JP2016210659 A JP 2016210659A JP 6813776 B2 JP6813776 B2 JP 6813776B2
Authority
JP
Japan
Prior art keywords
notation
string
token
word
search
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
JP2016210659A
Other languages
English (en)
Other versions
JP2018073047A (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 JP2016210659A priority Critical patent/JP6813776B2/ja
Publication of JP2018073047A publication Critical patent/JP2018073047A/ja
Application granted granted Critical
Publication of JP6813776B2 publication Critical patent/JP6813776B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、情報処理装置、その制御方法及びプログラムに関する。
従来、インターネットや組織内において保存されるテキスト文書などのデジタル化に伴い、非定型文書が膨大な数となっている。そのためコンピュータの記憶装置に格納されたテキスト文書などの情報を高速に、また高精度で検索する必要性が高まっている。
大量のテキスト文書から、ユーザが意図したデータを検索する技術は様々存在する。特に、高速化のために形態素解析やNグラムなどの技術により、インデックスを用いる方法が存在する。
形態素解析もNグラムによる手法も、それぞれに長所と短所を持つため、様々な検索の実装においては、両者(あるいは他の手法)を複合的に用いる手法が用いられている。例えば、特許文献1においては、形態素解析とNグラムによる手法を複合的に用いて、検索漏れをなくす技術が記載されている。
特開2010−250389号公報
長野、鈴木、牧野、"HMMを用いた複数n−gramモデルによる言語モデルの構築"情報処理学会論文誌、Vol.43、No.7、pp.2075−2081、2002年7月
特許文献1の技術においては、形態素解析とNグラムの両方の解析から得たトークンを用いるため、検索漏れをなくすことはできるが、誤ったテキスト文書(以下、不適合文書とする)を検索しないよう抑制することはできない。また、二種類の解析を行うため、必ずしも高速化を実現しているとは言えない。
本発明は、入力文字列に基づく文書の検索に際して、当該入力文字列から検索に用いるトークンを取得することができる仕組みを提供することを目的とする。
本発明の情報処理装置は、複数の単語の表記を含む単語情報を記憶する単語辞書記憶手段を備え、検索条件となる入力文字列に基づき文書の検索を実行する情報処理装置において、グラムの手法に基づき前記入力文字列から小文字列を取得する取得手段と、前記取得された小文字列に基づいて前記単語辞書記憶手段より得られる単語の表記を、検索に用いるトークンとしてトークン記憶部に登録するトークン登録手段と、前記得られる単語の表記が前記入力文字列に含まれる場合には、前記表記が含まれる位置に基づいて前記取得手段に小文字列を取得させる位置を変更する位置変更手段と、を備え、前記位置変更手段は、前記得られる複数の単語の表記が前記入力文字列に含まれる場合には、当該表記のうち最長の表記が含まれる位置に基づいて前記取得させる位置を変更することを特徴とする。
本発明によれば、入力文字列に基づく文書の検索に際して、当該入力文字列から検索に用いるトークンを取得することができる仕組みを提供することができる。
本発明の実施形態における、情報処理装置100の機能構成の一例を示す図である。 本発明の実施形態における、情報処理装置100のハードウェア構成の一例を示す図である。 Nグラムを用いた検索において、その結果に不適合文書が含まれる状況が発生する一例を示す図である。 本発明の実施形態における、テキスト文書を検索する処理のフローチャートの一例を示す図である。 本発明の実施形態における、単語辞書の一例を示す図である。 本発明の実施形態における、辞書検索部により取得された単語情報に基づき、一致候補を格納する記憶部の構成の一例を示す図である。 本発明の実施形態における、一致部の結果として、検索に使用するトークンを登録する記憶部の構成の一例を示す図である。 本発明の実施形態における、Nグラムを用いた検索において、不適合文書が含まれない状況を説明するための一例を示す図である。
以下、図面を参照して、本発明の実施の形態の一例について説明する。
まず図1を参照して、本発明の実施形態における、情報処理装置100の機能構成の一例について説明する。
情報処理装置100は、例えば表示画面を備えたPCであるものとする。
入力文字列受付部101は、テキスト文書を検索するための検索条件となる入力文字列を受け付ける。例えば、情報処理装置100に表示する不図示の検索用文字列の入力画面において、ユーザ操作による文字列の入力を受け付ける。
トークン取得部102は、前記入力文字列からNグラムの手法を用いてトークンを取得する。ここでNグラムについては特許文献1に記載があり、また周知の技術であるため、詳細の説明を割愛する。通常、Nグラムによるトークンの切り出し(取得)は、入力文字列の先頭から1文字ずつずらしながら実行される。すなわち、トークン切り出しのために着目する文字を、入力文字列内で例えば一文字ずつ(一定の字数の間隔ずつ)ずらしていく。
なお、本発明においては、後述する解析位置変更部106によって、一部の文字列をスキップする場合がある。すなわち、着目する文字を必ずしも1文字ずつずらすわけではない。スキップの処理の詳細は図4のフローチャートの説明で後述する。
また、本発明におけるNグラムの手法は、非特許文献1にいて詳述されているように、複数n−gramモデルの方式、その他Nグラムを拡張した手法のいずれであっても適用可能であるものとする。
辞書検索部103は、トークン取得部102により取得されたトークンを検索条件として、単語辞書記憶部111に記憶されている単語辞書を検索し、単語情報を取得する。単語情報の一例を図5に示す。取得した単語情報に含まれる表記(文字列)は、一致候補記憶部112に格納される。
一致部104は、一致候補記憶部112に記憶されている表記を、入力文字列受付部101で入力を受け付けた入力文字列と比較し、当該入力文字列の部分文字列と一致する表記が存在するか確認する。
一致する表記が存在する場合には、後述する文書検索部107で文書検索の条件として用いるため、トークン記憶部113に格納する。
トークン記憶部113に表記(一致部104で、入力文字列の一部と一致するとされた表記)が格納された場合、解析位置変更部106は解析位置(解析のための「着目位置」)を変更する。例えば当該表記の直後の位置(当該表記の直後の文字の位置)を解析位置とする。つまり、トークン取得部102が次にトークンを切り出すための着目する文字を1文字よりも多くずらす(入力文字列をスキップする)処理を行う。
文書検索部107は、トークン記憶部113に格納された表記を検索条件として用いて、テキスト文書記憶部114に記憶されているテキスト文書を検索する。ここでは、検索処理は、テキスト文書から予め生成された索引に対して検索を実行するものとするが、例えばテキスト文書自体の文字列を対象に実行するようにしてもよい。テキスト文書の検索および索引を生成することに関する技術は、周知の技術であるため詳細は割愛する。以上が図1の説明である。
図2を参照して、本発明の実施形態における、情報処理装置100のハードウェア構成について説明する。
図2に示すように、情報処理装置100は、システムバス204を介してCPU(Central Processing Unit)201、RAM(Random Access Memory)202、ROM(Read Only Memory)203、入力コントローラ205、ビデオコントローラ206、メモリコントローラ207、通信I/Fコントローラ208等が接続された構成をとる。
CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。
また、ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input/Output System)やOS(Operating System)や、各サーバあるいは各PCが実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。また、本発明を実施するために必要な情報が記憶されている。なお外部メモリはデータベースであってもよい。
RAM202は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM203あるいは外部メモリ211からRAM202にロードし、ロードしたプログラムを実行することで各種動作を実現する。
また、入力コントローラ205は、キーボード(KB)209や不図示のマウス等のポインティングデバイス等の入力装置からの入力を制御する。
ビデオコントローラ206は、ディスプレイ210等の表示装置への表示を制御する。表示装置は例えば液晶ディスプレイ等の装置である。
メモリコントローラ207は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶する外部記憶装置(ハードディスク(HD))や、フレキシブルディスク(FD)、あるいは、PCMCIA(Personal Computer Memory Card International Association)カードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ211へのアクセスを制御する。
通信I/Fコントローラ208は、ネットワークを介して外部機器と接続・通信し、ネットワークでの通信制御処理を実行する。例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)を用いた通信等が可能である。
尚、CPU201は、例えばRAM202内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ210上に表示することが可能である。また、CPU201は、ディスプレイ210上のマウスカーソル(図示しない)等によるユーザ指示を可能とする。
本発明を実現するための後述する各種プログラムは、外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。以上が図2の説明である。
図3を参照して、Nグラムを用いた検索において、その結果に不適合文書が含まれる状況の一例について説明する。
図3においては、後述する本発明の特徴と比較するため、先行技術にも含まれるNグラムを、biグラム(バイグラム=2グラム)を例として説明する。以降、例としてbiグラムを用いる。
入力文字列301は、入力文字列受付部101で受け付けた文字列の各文字に、先頭から順に番号を付与したものである。例えば、先頭を1、最後を13とする。またトークンに分割した図を302に示す。ここでは例としてbiグラムを用いているため、2文字ずつ区切られる。例えば、先頭は「日本」でその番号を、1から2(1−2)と表すこととする。
302に含まれるトークンで、検索対象となるテキスト文書303(a,b)を検索する。テキスト文書303aには、302のトークンと同じトークン「日本」、「東京」が含まれるため、検索結果に含まれる。一方、テキスト文書303bにも、「本の」、「京都」が含まれるため、検索結果に含まれる。しかし入力文字列301が意図した検索条件としては、明らかに不適合な文書である。以上が図3の説明である。
図4を参照して、本発明の実施形態における、テキスト文書を検索する処理について説明する。図4の各ステップに示す処理は、情報処理装置100のCPU201が、自機の備える各機能部の機能を用いて実行する。必要に応じて図5〜図8を参照して詳細に説明する。
ステップS401においては、入力文字列受付部101が、後述する文書検索部107でテキスト文書を検索するための条件として、入力文字列を受け付ける。ここで受け付けた入力文字列は、例えば図8の301に示す文字列(「日本の首都は東京都ですか?」)であるものとする。
図8は、本発明の実施形態におけるNグラムを用いた検索において、不適合文書が含まれない状況を説明するための一例を示す図である。図8では、例として、「日本の首都は東京都ですか?」(301)を受け付ける。図3と同じ部分文字列があり、図において同じ番号を付与して説明する。
ステップS402において、解析位置変更部106が、入力文字列301の先頭文字「日」(図8の301の1)を着目位置として決定する。
ステップS403からステップS410までは、入力文字列301の着目位置が、前項の先頭文字(図8の301の1)から、入力文字列301の最後尾の文字になるまで繰り返し処理を制御する。
本例では、biグラムを用いて説明しており、トークンを2文字ずつ切り出すため、最後の2文字は「か?」(図8の301の12−13文字)となるため、最後の着目位置は12である。一般的にNグラムの場合には、対応する「N」により最後尾の文字の番号が変わる。
ステップS404においては、トークン取得部102が、入力文字列の着目位置からbiグラムの手法を用い、2文字分をトークンとして切り出す。具体的には、本繰り返し処理の最初の実行では、「日本」(1−2)をトークンとして取得する。
ステップS405においては、辞書検索部103が、ステップS404で取得したトークンに基づき、単語辞書記憶部111を検索して単語情報を取得する。例えば、トークンとしては前述の「日本」を用いる。
ここで、図5を用いて、単語辞書記憶部111の説明をする。図5は、本発明の実施形態における単語辞書の一例を示す図である。
図5において、単語辞書501(501a〜501d)は、単語情報の表記502(502a〜502c)から構成される。辞書検索部103では、検索条件となるトークン(本例では2文字)で表記502を検索対象とする。
単語辞書501aでは、表記502aのみを有する構造であり、当該格納されている文字列も2文字なので、検索条件となるトークンに対して完全一致で検索される。例えば「日本」に対しては、1つめの項目がヒットする。すなわち、検索条件となるトークンが辞書に存在するか否かの存在確認のために使用するのであれば、単語辞書501aの書式でよい。
単語辞書501bも、表記502aのみを有する構造であるが、当該格納されている文字列は2文字より長いものも存在するので、検索条件となるトークンに対して前方一致で検索される。例えば「日本」に対しては、1つめの項目のみが検索される(検索にヒットする)が、「東京」に対しては、「東京都」が検索される。
単語辞書501cも、表記502aのみを有する構造であるが、当該格納されている文字列は2文字より長いものも存在するので、検索条件となるトークンに対して前方一致で検索される。また、検索結果として複数の単語情報の表記502が存在してもよい。例えば「日本」に対しては、1つめの項目のみが検索されるが、「東京」に対しては、「東京」と「東京都」の2つが検索される。
単語辞書501cは、表記として2つの要素を格納する。まず、代表となる表記502bがあり、当該格納されている文字列は2文字より長いものも存在するので、検索条件となるトークンに対して前方一致で検索される。さらに代表となる表記502bに対して、関連する表記502cを1つ、または複数対応させることが可能である。従って、検索結果として直接ヒットするのは、代表となる表記502bであるが、例えば「東京」に対しては、関連する表記502cも合わせて、「東京」、「東京都」、「TOKYO」が検索結果の表記として得られる。取得した単語情報の表記(1つまたは複数)は、一致候補記憶部112に格納される。以上が図5の説明である。
図6を参照して、本発明の実施形態における、辞書検索部により取得された単語情報に基づき、一致候補を格納する記憶部の構成の一例について説明する。
601には、トークン取得部102で取得されたトークン(図6の例では「東京」)が格納される。また602には、取得したトークンが、オリジナルの入力文字列301のいずれの位置にあるかを指し示すものである。例えば図8の入力文字列301では、先頭を1文字目と数えて「東京」は7文字目、8文字目にあるため、602には「7−8」と格納する。
601は、入力文字列をトークンに分割した図(図8の302)の「東京」の部分と同一視してもよい。602のトークンの位置も302の「東京」部分にリンクされていてもよい。この部分は、単なる設計事項であり本質的な差ではない。
603には、単語辞書記憶部111から取得した表記を格納する。「東京」に対しては、3つの表記「東京」(603a)、「東京都」(603b)、「TOKYO」(603c)が取得され、それぞれ格納される。604は、603の各表記が、オリジナルの入力文字列301と一致した場合に、オリジナルの入力文字列において当該一致した表記が存在する位置を示す情報を記憶する。当該604の記憶処理については後述する。以上が図6の説明である。
ここで、説明をステップS405に戻す。入力文字列301から切り出したトークン「日本」で、単語辞書501を検索すると、「日本」を表記とする単語情報が取得される。
ステップS406においては、ステップS405で単語情報を取得されたか判定する。ステップS405で単語情報が取得された場合(ステップS406でYESの場合)には、処理をステップS407へ進める。ステップS405で単語情報が取得されなかった場合(ステップS406でNOの場合)には、処理をステップS408に進める。現在の例では、単語情報(表記)「日本」が取得されているので、ステップS407に処理を進める。
ステップS407においては、一致部104が、入力文字列301(の一部)と、ステップS405において取得した表記に対する一致処理を行う。トークン「日本」は、入力文字列301における1文字目から2文字目であり、また、単語情報に含まれる表記も「日本」であるため、一致する。このことを示すため、一致候補記憶部112の604には、「1−2」(1文字目と2文字目の2文字文が一致した)と書き込む。
また前述したトークン「東京」の例では、単語辞書が501aであれば、入力文字列301の該当位置(7文字目、8文字目)が一致する。従って、604aには「7−8」と書き込む。
一方、単語辞書が501b〜501dのように、トークン「東京」に対応する表記に「東京都」なども含まれる場合には、入力文字列301内の更に長い文字列(7〜9文字目)と一致するため、一致する部分としてトークン取得部102で取得したトークン(この例では「東京」)ではなく、「東京都」を最長一致として3文字分一致する、とする。この場合は、604bに「7−9」と書き込む。
また、入力文字列301に「東京都」という文字列がなく、「東京」しかマッチしなかった場合でも「7−8」と書き込むことにより、完全一致ではないが2文字文一致したことを示すことができる。
なお、単語辞書501dの「TOKYO」は入力文字列301の部分とは一致しない。そのため、604cには「0−0」(あるいは1文字もマッチしていない旨)を書き込む。
ステップS408においては、トークン登録部105が、入力文字列301から切り出されたトークンと、一致候補記憶部112に格納された表記を、トークン記憶部113に格納する。
図7を参照して、本発明の実施形態における、一致部の結果として、検索に使用するトークンを登録する記憶部の構成の一例について説明する。
トークン記憶部113に登録されているトークンと、一般的なNグラムにより取得されるトークンを、図3の302を用いて説明する。なお、図7の113に示すトークンは、入力文字列301を最後まで処理した後に含まれるトークンを表している。
図7のトークン記憶部113には、従来の、図3の302に登録されているトークンのうち、「本の」(2−3)のトークンが含まれていない。これは、現在処理中のトークン「日本」が単語辞書501aに含まれていたため、後述するステップS409にてその2文字をスキップし、入力文字列301の着目位置を3文字目の「の」まで進めてから、ステップS403に戻って次のトークンの取得処理を始めるためである。同様に、「東京」が単語辞書501aに含まれていたため、「京都」がトークンとしてトークン記憶部113に含まれない。
つまり、一度単語と認識された文字列の途中から新たに次のトークンを取得し、トークン記憶部113に記憶することはせず、単語の後ろの位置から、次のトークンの取得及びトークン記憶部113への記憶を行う。
さらに、単語辞書501b〜501cを用いた場合には、「東京都」も含まれており、入力文字列301の「都」の次まで3文字文スキップするため、トークン「都で」もトークン記憶部113には含まれない。
後述するステップS411で、文書検索を行う際に、「本の」、「京都」、「都で」を検索条件となるトークンに含まないことで、不適合な文書を検索結果に含まない、という効果を得ることができる。
また、701で示した「東京都」、「TOKYO」が、図3の302に含まれていないにもかかわらず、本発明によると「東京都」、「TOKYO」がトークンに含まれることになる。「東京都」については、複数n−gramモデル(非特許文献1)によれば3文字文のトークンも切り出すことで含まれることになるが、「TOKYO」については、単語辞書を使用することで新たに取得されるものであり、入力文字列301からは取得できないものである。これにより、従来、検索結果に含まれなかった文書を取得することができ、検索ユーザの意図する文書を取得するという再現性を向上させる効果を得ることができる。
なお、前述の説明は、ステップS405の単語辞書検索において、単語情報が存在し、図7で説明した一致候補記憶部112に何らかの表記が格納されている状態を説明してきたものである。
しかし、例えば入力文字列301における着目位置が前から3文字目、すなわち「の首」をトークンとして切り出している場合には、単語辞書検索の結果は存在せず、従って、ステップS407を通らずに、ステップS408の処理となる。この場合には、S404で切り出したトークン「の首」をそのままトークン記憶部113に登録する。
ステップS409においては、解析位置変更部106が、入力文字列301の解析を始める次の着目位置を決定する。すなわち、今まで説明してきたステップS403以降の処理において、本発明におけるNグラムの方法で次のトークンを取得するために着目位置を入力文字列301の中で後方にすすめる。
まず、先の例で単語辞書検索の結果、単語情報が取得できない例について説明する。入力文字列301の前から3文字目に着目し、トークンとして「の首」を取得した場合がこれにあたる。すなわち、「の首」(3−4の位置)に対応する一致候補記憶部112が生成されないため、ステップS407における一致の処理もされておらず、結果として通常のNグラムの処理として、次のトークン切り出しのために着目位置を1つだけすすめてステップS403に戻す。つまり、4文字目の「都」の位置を次の着目位置として決定する。これにより、「都」からステップS403の処理が開始されることになる
一方、前述した「日本」の場合には、ステップS407で一致処理が行われ、入力文字列301の先頭2文字が一致したとされているので、着目位置を2文字分進めて「日本」の後の「の」の位置を次の着目位置として決定する。よって、3文字目の「の」からステップS403の処理が開始されることになる。
この様子を図8で説明する。図8では入力文字列301の先頭で「日本」をトークンとして切り出し、単語情報も取得できたため、一致処理の結果、入力文字列301と着目位置にて2文字分一致していることになる。そのため、次の処理を3文字目から開始する(811で2文字スキップする)。そのため「本の」は、302の「2−3」の位置(821)で示されるように後で検索に使用されるためのトークンからは外される。
同様の例を、着目位置が7文字目の際の「東京」でも説明する。単語辞書として図5の501aを使用した場合には、2文字分スキップすることになるため、解析位置変更部106において、次の解析位置は9文字目の「都」に進める(812)。そこで「8−9」の位置の「京都」は302のトークンからは外される(822)。さらに、単語辞書として図5の501b〜dを使用した場合には、「東京都」が一致処理によって、入力文字列301の着目位置から3文字分一致すると判断されるため、3文字分スキップし(813)、着目位置は10文字目の「で」まで移動する。これにより、「都で」(9−10)も302のトークンからは外されることになる。
これらの結果が、図7で説明したトークン記憶部113の検索条件となるトークンの格納状況である。同じものを図8にも記載した(113)。図7、図8のトークン記憶部113は、入力文字列301を最後まで処理した後に含まれるトークンを表している。
ステップS411においては、文書検索部107が、トークン記憶部113に格納されているトークンを検索条件としてテキスト文書記憶部114に格納されている文書群から条件にヒットする文書を結果として返す。
図3では、文書303aと303bが検索結果に含まれていたが、図8では、303bは結果に含まれない。これは文書303aと303bが、301を条件とした検索において、不適合文書だからである。
逆に関連語(TOKYO)によって、303cが検索された。「TOKYO」の例は、複数n−gramモデル(非特許文献1)などのモデルで可能となるものである。
これにより、例えば「本の」、「京都」を含み、「日本」、「東京」を含まないような不適合な文書を検索結果に含めない、という効果を得ることができる。
つまり、文書検索にNグラムの手法を用いるに際して、検索結果における不適合文書の出現を削減するための仕組みを提供することができる。
すなわち、検索の精度を向上させることができる。
また、「TOKYO」の例にように検索ユーザの意図する文書を取得するという再現性を向上させる効果を得ることができる。
また、そもそもノイズとなる「本の」、「京都」などのトークンを用いた検索処理を行わない(スキップすることができる)ため、検索速度を向上させることができる。
以上説明したように、本発明によれば、Nグラムの手法を用いた検索に際して、効率よく文書の検索を行うことができる仕組みを提供することができる。
なお、本発明における単語辞書に登録される表記の文字列としての長さには制限はない。例えば、biグラムの手法によるときは、表記の長さが2よりも長ければ、文書検索時のトークンとしては使用できないが、入力文字列301の一部をスキップし、不適合文書を検索結果とするようなノイズとなるトークンを取得しないようにすることが可能である、という効果を得ることができる。
さらに、本発明における単語辞書は、入力文字列301から検索条件となるトークンを取得するために用いるものである。すなわち、検索対象となる文書群から索引を生成するために用いるものではない。従って、索引を再度生成し直すことなく、いつでも自由に入れ替えることが可能である。これは、例えば組織内で検索システムを管理することを考えると、運用管理のコストを削減するという効果を得ることができる。
上述した実施形態の説明においてはbiグラムを用いて説明をしたが、本発明は、一般的なNグラム、あるいは前述のとおり複数Nグラムモデル、その他、拡張された方法に適用可能であり、biグラムに限定されるものではないことは言うまでもない。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
尚、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。
例えば、文字列301の入力を受け付けるPCと、当該入力を受け付けた文字列を用いて検索を行うサーバ装置を含むシステムが想定できる。この場合、例えば図1の101〜114の構成をサーバ装置が備えるものとし、サーバ装置がPCから受信した文字列を入力文字列受付部101が受け付けて、図4の処理を実行する。
また、入力文字列受付部101は、例えば当該サーバやPC上で動作する他のアプリケーションプログラムなどから入力文字列を受け付ける機能部であってもよい。
また、例えば図1の111〜114に示す各記憶部を、情報処理装置100と通信可能な別のサーバ装置が備え、情報処理装置100が当該別のサーバ装置とネットワークを介して通信し、ステップS403〜S411の処理に必要な情報を都度取得し、111〜114に都度アクセスして情報を更新したり書き込んだりする構成をとってもよい。
また、テキスト文書記憶部114や文書検索部107を、不図示の文書管理サーバが備えるものとし、情報処理装置100(例えばPC)が図4のステップS403〜S410までの処理で特定したトークン(図7の113に例示)を、ネットワークを介して文書管理サーバに送信し、当該トークンを用いた文書検索を指示することで、文書管理サーバがステップS411の文書検索処理を行うようにしてもよい。
なお、入力文字列受付部101は、また、当該コンピュータで動作する他のアプリケーションプログラムなどから受け付ける機能部であってもよい。また、本発明における情報処理装置がネットワーク上におけるサーバである場合には、他の情報処理装置から当該ネットワークを介して通信情報を受け付ける機能部であってもよい。
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
この場合、記録媒体から読み出されたコンピュータプログラム自体が本発明の新規な機能を実現することになり、そのコンピュータプログラムを記憶した記録媒体は本発明を構成することになる。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが読み出したコンピュータプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのコンピュータプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたコンピュータプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのコンピュータプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。
即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
100 情報処理装置
101 入力文字列受付部
102 トークン取得部
103 辞書検索部
104 一致部
105 トークン登録部
106 解析位置変更部
107 文書検索部
111 単語辞書記憶部
112 一致候補記憶部
113 トークン記憶部
114 テキスト文書記憶部

Claims (8)

  1. 複数の単語の表記を含む単語情報を記憶する単語辞書記憶手段を備え、検索条件となる入力文字列に基づき文書の検索を実行する情報処理装置において、
    グラムの手法に基づき前記入力文字列から小文字列を取得する取得手段と
    前記取得された小文字列に基づいて前記単語辞書記憶手段より得られる単語の表記を、検索に用いるトークンとしてトークン記憶部に登録するトークン登録手段と、
    前記得られる単語の表記が前記入力文字列に含まれる場合には、前記表記が含まれる位置に基づいて前記取得手段に小文字列を取得させる位置を変更する位置変更手段と、
    を備え
    前記位置変更手段は、前記得られる複数の単語の表記が前記入力文字列に含まれる場合には、当該表記のうち最長の表記が含まれる位置に基づいて前記取得させる位置を変更することを特徴とする情報処理装置。
  2. 記トークン登録手段は、前記得られる複数の単語の表記が前記入力文字列に含まれる場合には、当該表記のうち最長の表記を登録することを特徴とする請求項1に記載の情報処理装置。
  3. 前記単語情報は、前記単語の表記を表す文字列と、前記単語と関連する単語の表記を表す文字列を含むことを特徴とする請求項1または請求項2に記載の情報処理装置。
  4. 前記単語情報は、当該単語情報を代表となる1つの表記と、当該代表となる表記以外の表記を含むものであって、
    前記トークン登録手段は、前記単語情報を代表となる表記が検索条件となる前記入力文字列に含まれる場合には、当該代表となる表記以外の表記も、検索に用いるトークンとして登録することを特徴とする請求項1〜3のいずれか1項に記載の情報処理装置。
  5. 前記位置変更手段は、前記得られる単語の表記が前記入力文字列に含まれる場合に、前記単語の表記が含まれる位置より後ろの位置から前記取得手段に小文字列を取得させることを特徴とする請求項1〜4のいずれか1項に記載の情報処理装置。
  6. 記取得手段は、前記位置変更手段により変更された位置から次の小文字列を取得する処理を行うことを特徴とすることを特徴とする請求項1〜5のいずれか1項に記載の情報処理装置。
  7. 複数の単語の表記を含む単語情報を記憶する単語辞書記憶手段を備え、検索条件となる入力文字列に基づき文書の検索を実行する情報処理装置の制御方法において、
    得手段が、Nグラムの手法に基づき前記入力文字列から小文字列を取得する取得ステップと
    トークン登録手段が、前記取得された小文字列に基づいて前記単語辞書記憶手段より得られる単語の表記を、検索に用いるトークンとしてトークン記憶部に登録するトークン登録ステップと、
    置変更手段が、前記得られる単語の表記が前記入力文字列に含まれる場合には、前記表記が含まれる位置に基づいて前記取得ステップにて小文字列を取得させる位置を変更する位置変更ステップと、
    を備え、
    前記位置変更ステップは、前記得られる複数の単語の表記が前記入力文字列に含まれる場合には、当該表記のうち最長の表記が含まれる位置に基づいて前記取得させる位置を変更することを特徴とする情報処理装置の制御方法。
  8. 複数の単語の表記を含む単語情報を記憶する単語辞書記憶手段を備え、検索条件となる入力文字列に基づき文書の検索を実行する情報処理装置において実行が可能なプログラムであって、
    前記情報処理装置を、
    グラムの手法に基づき前記入力文字列から小文字列を取得する取得手段と
    前記取得された小文字列に基づいて前記単語辞書記憶手段より得られる単語の表記を、検索に用いるトークンとしてトークン記憶部に登録するトークン登録手段と、
    前記得られる単語の表記が前記入力文字列に含まれる場合には、前記表記が含まれる位置に基づいて前記取得手段に小文字列を取得させる位置を変更する位置変更手段として機能させ、
    前記位置変更手段は、前記得られる複数の単語の表記が前記入力文字列に含まれる場合には、当該表記のうち最長の表記が含まれる位置に基づいて前記取得させる位置を変更することを特徴とするプログラム。
JP2016210659A 2016-10-27 2016-10-27 情報処理装置、その制御方法及びプログラム Active JP6813776B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016210659A JP6813776B2 (ja) 2016-10-27 2016-10-27 情報処理装置、その制御方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016210659A JP6813776B2 (ja) 2016-10-27 2016-10-27 情報処理装置、その制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2018073047A JP2018073047A (ja) 2018-05-10
JP6813776B2 true JP6813776B2 (ja) 2021-01-13

Family

ID=62115358

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016210659A Active JP6813776B2 (ja) 2016-10-27 2016-10-27 情報処理装置、その制御方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6813776B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5179564B2 (ja) * 2010-12-28 2013-04-10 ヤフー株式会社 クエリセグメント位置決定装置
WO2013128684A1 (ja) * 2012-02-28 2013-09-06 楽天株式会社 辞書生成装置、方法、及びプログラム

Also Published As

Publication number Publication date
JP2018073047A (ja) 2018-05-10

Similar Documents

Publication Publication Date Title
US20070050709A1 (en) Character input aiding method and information processing apparatus
JP4160548B2 (ja) 文書要約作成システム、方法、及びプログラム
US9256585B2 (en) Non-transitory computer readable medium storing document creation support program, document creation support device, and document creation support method
JP4237813B2 (ja) 構造化文書管理システム
CN114297143A (zh) 一种搜索文件的方法、显示文件的方法、装置及移动终端
JP6813776B2 (ja) 情報処理装置、その制御方法及びプログラム
JP5757551B2 (ja) 意味分類付与装置、意味分類付与方法、意味分類付与プログラム
JP4734400B2 (ja) 文書検索装置およびプログラム
JP6753190B2 (ja) 文書検索装置及びプログラム
JP2018190030A (ja) 情報処理サーバ、その制御方法、及びプログラム、並びに、情報処理システム、その制御方法、及びプログラム
CN101685375B (zh) 具备词典功能的电子装置
JP2010146061A (ja) 例文表示装置、例文表示方法および例文表示プログラム
JP2015130040A (ja) 名寄せ装置、名寄せシステム、方法及びプログラム
JP5906810B2 (ja) 全文検索装置、プログラム及び記録媒体
JP2007041864A (ja) メタデータ取得・管理方法及び装置及びプログラム
JP2004348774A5 (ja)
JP2004334690A (ja) 文字データ入出力装置、文字データ入出力方法、文字データ入出力プログラム、およびコンピュータ読み取り可能な記録媒体
JP4304226B2 (ja) 構造化文書管理システム、構造化文書管理方法及びプログラム
JP4160627B2 (ja) 構造化文書管理システム及びプログラム
JP6867579B2 (ja) 情報処理装置、情報処理システム、その制御方法及びプログラム
JP2001067375A (ja) 名称検索装置、キーボード及び名称検索プログラムを記録した記録媒体
JP2010122792A (ja) 製品名名寄せ装置、その方法及びプログラム
JP2003173338A (ja) 辞書構築支援装置、辞書構築支援方法及び辞書構築支援プログラム
JP5344649B2 (ja) 文字列変換装置、文字列変換方法、プログラムおよび記録媒体
JP2006023878A (ja) データ抽出システム

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20161101

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20161101

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20180703

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20181031

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190111

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191024

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200602

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200731

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201130

R151 Written notification of patent or utility model registration

Ref document number: 6813776

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250