(57)【特許請求の範囲】
【請求項１】
ユーザが入力した検索キーワードに適合する商品データを検索する商品検索方法であって、商品に係る単語である商品関連語を含む商品データが記憶された商品データベースを備えた装置が、前記ユーザが操作する端末装置から前記商品データの検索要求を受けたとき、前記装置が、前記端末装置から送信された前記検索キーワードを前記商品関連語として含む前記商品データを前記商品データベースから検索するステップａ、前記ステップａで前記商品データの検索に失敗したと前記装置が判断したとき、前記装置が、前記商品データベースに記憶されている前記商品関連語と前記検索キーワードとの類似度を、前記検索キーワードから得られる第１の部分文字列が前記商品関連語に含まれる個数を前記第１の部分文字列の総数で除算した値と、前記商品関連語から得られる第２の部分文字列が前記検索キーワードに含まれる個数を前記第２の部分文字列の総数で除算した値とを乗算することにより演算し、類似度が定められた判定基準に適合する前記商品関連語を参考キーワードとして抽出するステップｂ、前記装置が、前記ステップｂで抽出した前記参考キーワードを前記端末装置に表示させる表示データを生成し、前記端末装置に送信するステップｃ、を含むことを特徴とする商品検索方法。
【請求項２】
請求項１に記載の商品検索方法であって、前記商品関連語は、前記商品データベースに記憶された商品の仕様または説明文に含まれる単語を利用して、生成されたものであることを特徴とする商品検索方法。
【請求項３】
請求項１または請求項２に記載の商品検索方法であって、前記ステップｂにおいて、前記装置は、前記部分文字列として、異なる文字数の部分文字列を利用することを特徴とする商品検索方法。
【請求項４】
請求項１から請求項３のいずれか一つに記載の商品検索方法であって、前記ステップｂにおいて、前記装置は、前記検索キーワードを前記商品関連語として含む前記商品データの件数が、０件、或いは、定められた件数以下のとき、前記装置は、前記商品データの検索に前記装置が失敗したと判断することを特徴とする商品検索方法。
【請求項５】
請求項１から請求項４のいずれか一つに記載の商品検索方法であって、前記装置は、前記商品のカテゴリーごとに前記商品データベースを備え、前記ステップａは、前記ユーザが操作する端末装置から前記商品データの検索要求を受けたとき、前記装置が、前記端末装置から送信された前記検索キーワードを前記商品関連語として含む前記商品データを、前記端末装置から送信された前記商品のカテゴリーに対応する前記商品データベースから検索するステップで、前記ステップｂは、前記ステップａで前記商品データの検索に失敗したと前記装置が判断したとき、前記装置が、前記端末装置から送信された前記商品のカテゴリーに対応する前記商品データベースに記憶されている前記商品関連語と前記検索キーワードとの類似度を演算し、類似度が定められた判定基準に適合する前記商品関連語を参考キーワードとして抽出するステップであることを特徴とする商品検索方法。
【請求項６】
ユーザが入力した検索キーワードに適合する商品データを検索する商品検索装置であって、商品に係る単語である商品関連語を含む商品データが記憶された商品データベースと、ユーザが操作する端末装置から前記商品データの検索要求を受けたとき、前記端末装置から送信された前記検索キーワードを前記商品関連語として含む前記商品データを前記商品データベースから検索する商品検索手段と、前記商品検索手段が前記商品データの検索に失敗したとき、前記商品データベースに記憶されている前記商品関連語と前記検索キーワードとの類似度を、前記検索キーワードから得られる第１の部分文字列が前記商品関連語に含まれる個数を前記第１の部分文字列の総数で除算した値と、前記商品関連語から得られる第２の部分文字列が前記検索キーワードに含まれる個数を前記第２の部分文字列の総数で除算した値とを乗算することにより演算し、類似度が定められた判定基準に適合する前記商品関連語を参考キーワードとして抽出する参考キーワード抽出手段と、前記参考キーワード抽出手段が抽出した前記参考キーワードを前記端末装置に表示させる表示データを生成し、生成した前記表示データを前記端末装置に送信する参考キーワード表示手段と、を備えていることを特徴とする商品検索装置。
【請求項７】
請求項６に記載の商品検索装置であって、前記商品関連語は、前記商品データベースに記憶された商品の仕様または説明文に含まれる単語を利用して、生成されたものであることを特徴とする商品検索装置。
【請求項８】
請求項６または請求項７に記載の商品検索装置であって、前記参考キーワード抽出手段は、前記部分文字列として、異なる文字数の部分文字列を利用することを特徴とする商品検索装置。
【請求項９】
請求項６から請求項８のいずれか一つに記載の商品検索装置であって、前記商品検索手段は、前記検索キーワードを前記商品関連語として含む前記商品データの件数が、０件、或いは、定められた件数以下のとき、前記商品データの検索に失敗したと判断することを特徴とする商品検索装置。
【請求項１０】
請求項６から請求項９のいずれか一つに記載の商品検索装置であって、前記商品検索装置は、インターネット上に配置されたウェブサーバで、前記参考キーワード表示手段は、前記商品検索手段を作動させる前記商品検索装置のＵＲＬが埋め込まれたハイパーリンクの形式で前記参考キーワードを表示するＨＴＭＬデータを前記表示データとして生成することを特徴とする商品検索装置。
【請求項１１】
請求項６から請求項１０のいずれか一つに記載の商品検索装置であって、前記商品検索装置は、前記商品のカテゴリーごとに前記商品データベースを備え、前記商品検索手段は、前記ユーザが操作する端末装置から前記商品データの検索要求を受けたとき、前記端末装置から送信された前記検索キーワードを前記商品関連語として含む前記商品データを、前記端末装置から送信された前記商品のカテゴリーに対応する前記商品データベースから検索する手段で、前記参考キーワード抽出手段は、前記商品検索手段が前記商品データの検索に失敗したとき、前記端末装置から送信された前記商品のカテゴリーに対応する前記商品データベースに記憶されている前記商品関連語と前記検索キーワードとの類似度を演算し、類似度が定められた判定基準に適合する前記商品関連語を参考キーワードとして抽出する手段であることを特徴とする商品検索装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザが入力した検索キーワードに適合する商品データをデータベースから検索する技術に関し、更に詳しくは、検索キーワードの入力ミスに対処する技術に関する。
【背景技術】
【０００２】
インターネット上に開設されているショッピングサイトや実店舗（例えば、書籍店、音楽ソフト販売店、家電量販店など）には、ユーザが、ショッピングサイトや実店舗で取扱っている商品の中から希望する商品を速やかに検索できることが求められている。
【０００３】
しかし、ユーザは、商品の名称など商品に係る単語のスペルを正確に覚えていることは少なく、商品の名称を検索キーワードとして商品検索をするとき、商品に係る単語の入力ミスが原因で、商品検索に失敗してしまうケースがあるため、商品を検索する際には、ユーザが入力した検索キーワードから推測される単語を、ユーザに提示できることが望ましい。
【０００４】
ユーザが入力した検索キーワード以外のキーワードをユーザに提示する発明としては、例えば、特許文献１において、同義語・類義語辞典を備え、ユーザが入力した検索キーワードに対応する同義語若しくは類義語を、対応同義語・類義語情報として抽出する情報検索システムが開示されている。
【特許文献１】特開２００３−２１６６３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１で開示されている発明を用いれば、ユーザが入力した検索キーワードに対応する同義語若しくは類義語をユーザに提示させることができるようになるが、特許文献１で開示されている発明は、検索キーワードの入力ミスに対処するための発明ではない。
【０００６】
そこで、本発明は、ユーザが入力した検索キーワードに適合する商品情報をデータベースから検索する際に、検索キーワードの入力ミスがあった場合、ユーザが入力した検索キーワードから推測され、かつ商品を検索できる単語をユーザに提供できる装置および方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決する第１の発明は、ユーザが入力した検索キーワードに適合する商品データを検索する商品検索方法であって、商品に係る単語である商品関連語を含む商品データが記憶された商品データベースを備えた装置が、前記ユーザが操作する端末装置から前記商品データの検索要求を受けたとき、前記装置が、前記端末装置から送信された前記検索キーワードを前記商品関連語として含む前記商品データを前記商品データベースから検索するステップａ、前記ステップａで前記商品データの検索に失敗したと前記装置が判断したとき、前記装置が、前記商品データベースに記憶されている前記商品関連語と前記検索キーワードとの類似度を、前記検索キーワードから得られる第１の部分文字列が前記商品関連語に含まれる個数を前記第１の部分文字列の総数で除算した値と、前記商品関連語から得られる第２の部分文字列が前記検索キーワードに含まれる個数を前記第２の部分文字列の総数で除算した値とを乗算することにより演算し、類似度が定められた判定基準に適合する前記商品関連語を参考キーワードとして抽出するステップｂ、前記装置が、前記ステップｂで抽出した前記参考キーワードを前記端末装置に表示させる表示データを生成し、前記端末装置に送信するステップｃ、を含むことを特徴とする商品検索方法である。
【０００８】
第２の発明は、第１の発明に記載の商品検索方法であって、前記商品関連語は、前記商品データベースに記憶された商品の仕様または説明文に含まれる単語を利用して、生成されたものであることを特徴とする。
【０００９】
第３の発明は、第１または第２の発明に記載の商品検索方法であって、前記ステップｂにおいて、前記装置は、前記部分文字列として、異なる文字数の部分文字列を利用することを特徴とする。
【００１１】
第４の発明は、第１の発明から第３の発明のいずれか一つに記載の商品検索方法であって、前記ステップｂにおいて、前記装置は、前記検索キーワードを前記商品関連語として含む前記商品データの件数が、０件、或いは、定められた件数以下のとき、前記装置は、前記商品データの検索に前記装置が失敗したと判断することを特徴とする。
【００１２】
第５の発明は、第１の発明から第４の発明のいずれか一つに記載の商品検索方法であって、前記装置は、前記商品のカテゴリーごとに前記商品データベースを備え、前記ステップａは、前記ユーザが操作する端末装置から前記商品データの検索要求を受けたとき、前記装置が、前記端末装置から送信された前記検索キーワードを前記商品関連語として含む前記商品データを、前記端末装置から送信された前記商品のカテゴリーに対応する前記商品データベースから検索するステップで、前記ステップｂは、前記ステップａで前記商品データの検索に失敗したと前記装置が判断したとき、前記装置が、前記端末装置から送信された前記商品のカテゴリーに対応する前記商品データベースに記憶されている前記商品関連語と前記検索キーワードとの類似度を演算し、類似度が定められた判定基準に適合する前記商品関連語を参考キーワードとして抽出するステップであることを特徴とする。
【００１３】
更に、第６の発明は、ユーザが入力した検索キーワードに適合する商品データを検索する商品検索装置であって、商品に係る単語である商品関連語を含む商品データが記憶された商品データベースと、ユーザが操作する端末装置から前記商品データの検索要求を受けたとき、前記端末装置から送信された前記検索キーワードを前記商品関連語として含む前記商品データを前記商品データベースから検索する商品検索手段と、前記商品検索手段が前記商品データの検索に失敗したとき、前記商品データベースに記憶されている前記商品関連語と前記検索キーワードとの類似度を、前記検索キーワードから得られる第１の部分文字列が前記商品関連語に含まれる個数を前記第１の部分文字列の総数で除算した値と、前記商品関連語から得られる第２の部分文字列が前記検索キーワードに含まれる個数を前記第２の部分文字列の総数で除算した値とを乗算することにより演算し、類似度が定められた判定基準に適合する前記商品関連語を参考キーワードとして抽出する参考キーワード抽出手段と、前記参考キーワード抽出手段が抽出した前記参考キーワードを前記端末装置に表示させる表示データを生成し、生成した前記表示データを前記端末装置に送信する参考キーワード表示手段と、を備えていることを特徴とする商品検索装置である。
【００１４】
第７の発明は、第６の発明に記載の商品検索装置であって、前記商品関連語は、前記商品データベースに記憶された商品の仕様または説明文に含まれる単語を利用して、生成されたものであることを特徴とする。
【００１５】
第８の発明は、第６または第７の発明に記載の商品検索装置であって、前記参考キーワード抽出手段は、前記部分文字列として、異なる文字数の部分文字列を利用することを特徴とする。
【００１７】
第９の発明は、第６の発明から第８の発明のいずれか一つに記載の商品検索装置であって、前記商品検索手段は、前記検索キーワードを前記商品関連語として含む前記商品データの件数が、０件、或いは、定められた件数以下のとき、前記商品データの検索に失敗したと判断することを特徴とする。
【００１８】
第１０の発明は、第６の発明から第９の発明のいずれか一つに記載の商品検索装置であって、前記商品検索装置は、インターネット上に配置されたウェブサーバで、前記参考キーワード表示手段は、前記商品検索手段を作動させる前記商品検索装置のＵＲＬが埋め込まれたハイパーリンクの形式で前記参考キーワードを表示するＨＴＭＬデータを前記表示データとして生成することを特徴とする。
【００１９】
第１１の発明は、第６の発明から第１０の発明のいずれか一つに記載の商品検索装置であって、前記商品検索装置は、前記商品のカテゴリーごとに前記商品データベースを備え、前記商品検索手段は、前記ユーザが操作する端末装置から前記商品データの検索要求を受けたとき、前記端末装置から送信された前記検索キーワードを前記商品関連語として含む前記商品データを、前記端末装置から送信された前記商品のカテゴリーに対応する前記商品データベースから検索する手段で、前記参考キーワード抽出手段は、前記商品検索手段が前記商品データの検索に失敗したとき、前記端末装置から送信された前記商品のカテゴリーに対応する前記商品データベースに記憶されている前記商品関連語と前記検索キーワードとの類似度を演算し、類似度が定められた判定基準に適合する前記商品関連語を参考キーワードとして抽出する手段であることを特徴とする。
【発明の効果】
【００２０】
上述した発明によれば、ユーザが端末装置に入力した検索キーワードを用い、商品データの検索に失敗したときに、検索キーワードとの類似度が定められた基準に適合する商品関連語を参考キーワードとして抽出し、抽出した参考キーワードを端末装置に表示させることで、入力ミスした検索キーワードに対して正しい可能性のある商品関連語をユーザに提示することができ、ユーザの知識不足および不注意による入力ミスを補うことできる。
【００２１】
商品検索装置が記憶している商品データが多ければ多いほど、商品検索装置が記憶している商品関連語の数も多くなるため、検索キーワードと商品関連語の類似度の演算は効率的に行われることが望ましく、検索キーワードと商品関連語の類似度の演算を効率的に行うためには、商品関連語と検索キーワードとの編集距離や、検索キーワードから得られる部分文字列が商品関連語に含まれる個数を利用して、検索キーワードと商品関連語の類似度を演算すると、類似度の計算量が少なくて済む。
【００２２】
更に、入力ミスの判定基準を０件ではなく定められた件数以下とすることで、入力ミスした検索キーワードに該当する商品データが仮に検索されたとしても、正しい可能性のある商品関連語をユーザに提示できるようになる。
【００２３】
なお、本発明に係る商品検索装置をウェブサーバで実現するときは、前記商品検索手段を作動させる前記商品検索装置のＵＲＬが埋め込まれたハイパーリンクの形式で参考キーワードを表示すると、ユーザが参考キーワードを入力する手間を省くことができるようになる。
【発明を実施するための最良の形態】
【００２４】
ここから、本発明に係る商品検索装置１および商品検索方法について、図を参照しながら詳細に説明する。図１は、本発明に係る商品検索装置１の実施形態を説明する図である。図１で図示した実施形態において、本発明に係る商品検索装置１は、ネットワーク４上に設置されたウェブサーバで実現され、ユーザ３が操作する端末装置となるクライアント２もネットワーク４に接続されている。
【００２５】
本発明に係る商品検索装置１は、中央演算処理装置１０（CPU: Central Processing Unit）、ランダムアクセスメモリ１１（RAM: Random Access Memory）、大容量の記憶装置１３（例えば、ハードディスク）、ネットワークインターフェース１２などを備え、同様に、クライアント２は、ＣＰＵ２０、ランダムアクセスメモリ２１、大容量の記憶装置２３（例えば、ハードディスク）、ネットワークインターフェース２２を備えている。
【００２６】
図２は、商品検索装置１およびクライアント２の機能ブロック図である。図２に図示したように、クライアント２には、クライアント２のＣＰＵ２０を動作させるコンピュータプログラムとして、マークアップ言語であるＨＴＭＬ（HyperText Markup Language）で記述されたＨＴＭＬデータを解釈し、文字や画像などをクライアント２のディスプレイに表示させるブラウザ２００が備えられ、クライアント２のユーザ３は、クライアント２に備えられたブラウザ２００を利用して、商品検索装置１にアクセスする。
【００２７】
図２に図示したように、商品検索装置１には、データベースとして、商品の識別データ、仕様、説明文および画像などの商品データに関連付けて、商品の仕様・説明文などから得られる単語で、商品の検索に利用される様々な商品関連語が記憶される商品データベース１１０（DB: DataBase）と、商品関連語の辞書となる商品関連語ＤＢ１１１を備え、本発明を実現するための手段として、クライアント２のブラウザ２００からのアクセス要求を処理するウェブサーバ手段１００と、商品検索装置１の固有の処理を実行する手段として、クライアント２から送信された検索キーワードに適合する商品データを商品ＤＢ１１０から検索する商品検索手段１０１と、クライアント２から受信した検索キーワードに適合する商品の検索に失敗したときに、商品関連語ＤＢ１１１に記憶されている商品関連語の中から、クライアント２から受信した検索キーワードと類似度の高い商品関連語を参考キーワードとして抽出する参考キーワード抽出手段１０２を備えている。
【００２８】
商品検索装置１に備えられた各々の手段は、商品検索装置１のＣＰＵ１０を各々の手段として機能させるためのコンピュータプログラムで実現され、これらのコンピュータプログラムは、商品検索装置１の記憶装置１３に記憶されている。
【００２９】
商品検索装置１に備えられた商品ＤＢ１１０には、商品に係る商品データが商品ごとに記憶され、各々の商品データには、商品の識別データ、仕様、説明文および画像などのデータに加え、商品の仕様や説明文などから得られる単語である複数の商品関連語が含まれる。
【００３０】
商品の仕様や説明文などから得られる単語である商品関連語は、商品の仕様や説明文に含まれる単語や語句を形態素解析によって品詞に分解し、定められた名詞句抽出ルールを適用することで生成される。定められた名詞句抽出ルールとは、隣接する名詞の連結や隣接する未知語の連結などを意味し、例えば、「顔」、「検出」および「機能」からは、「顔」、「検出」および「機能」の商品関連語に加え、「顔」、「顔検出」、「検出機能」および「顔検出機能」などの商品関連語が生成される。
【００３１】
形態素解析によって、商品の仕様や説明文などから商品関連語を生成する機能は、商品検索装置１に備えられていてもよく、或いは、他の装置が生成した商品関連語を商品検索装置１が用いてもよい。
【００３２】
商品検索装置１に備えられた商品関連語ＤＢ１１１は、商品ＤＢ１１０に記憶されている商品関連語が、商品関連語の重複がないように記憶される。
【００３３】
クライアント２のブラウザ２００から商品検索装置１にアクセスがあったときに作動する手段はウェブサーバ手段１００で、ウェブサーバ手段１００は、本発明に係る参考キーワード表示手段の機能を備えている。
【００３４】
商品検索装置１のウェブサーバ手段１００は、ユーザ３に検索キーワードを入力させるためのＨＴＭＬデータを利用して、クライアント２から検索キーワードを取得し、検索キーワードを用いた商品データの検索に成功するときは、検索結果をクライアント２のブラウザ２００に表示させるＨＴＭＬデータを生成し、検索キーワードを用いた商品データの検索に失敗したときは、検索キーワードの参考キーワードを表示するＨＴＭＬデータを生成する。
【００３５】
クライアント２のブラウザ２００から商品検索装置１にアクセスがあると、商品検索装置１のウェブサーバ手段１００は、ユーザ３に検索キーワードを入力させるためのＨＴＭＬデータをクライアント２に送信する。このＨＴＭＬデータには、ユーザ３に検索キーワードを入力させるためのフォームを定義するタグと、このフォームに入力された検索キーワードに適合する商品データを検索させ、検索結果を表示させるためのボタンを定義するタグが少なくとも記述されている。
【００３６】
図３は、検索キーワードを入力するフォームを含むウェブページ５を説明する図である。ユーザ３に検索キーワードを入力させるためのＨＴＭＬデータがブラウザ２００で解釈されることで、ウェブページ５には、ユーザ３が検索キーワードを入力するためのフォーム５０と、商品検索装置１に検索要求するための検索ボタン５１が表示される。
【００３７】
検索ボタン５１には、フォーム５０に入力された検索キーワードの送信先を示すアクションタグが記述され、ここでは、アクションタグに記述されている検索キーワードの送信先は、商品検索装置１の商品検索手段１０１を実行させるときに呼出すＵＲＬが記述されている。
【００３８】
ユーザ３が検索キーワードをフォーム５０に入力した後、マウスなどのポインティングデバイスによって検索ボタン５１をクリックすると、フォーム５０に入力された検索キーワードが商品検索装置１に送信されて、商品検索装置１の商品検索手段１０１が作動し、商品検索手段１０１は、商品ＤＢ１１０の中から、クライアント２から引渡された検索キーワードを商品関連語として含む商品データを検索する。
【００３９】
商品検索手段１０１が、クライアント２から引渡された検索キーワードを商品関連語として含む商品データを検索できたときは、検索された商品データをウェブサーバ手段１００に引渡し、ウェブサーバ手段１００は、引渡された商品データのリストを表示させるためのＨＴＭＬデータを生成する。
【００４０】
ウェブサーバ手段１００が生成したこのＨＴＭＬデータは、ネットワーク４を介して、クライアント２に送信され、クライアント２のブラウザ２００によって、商品の検索結果がクライアント２のディスプレイに表示される。
【００４１】
商品検索手段１０１が、クライアント２から引渡された検索キーワードを商品関連語として含む商品データを検索できなかったとき、すなわち、検索結果が０件のとき、商品検索手段１０１は検索キーワードを参考キーワード抽出手段１０２に引渡し、クライアント２から引渡された検索キーワードの参考キーワードの抽出を参考キーワード抽出手段１０２に委任する。
【００４２】
参考キーワード抽出手段１０２は、商品関連語ＤＢ１１１に記憶されている商品関連語それぞれと、検索キーワードとの類似度を演算し、定められた基準に類似度が適合する商品関連語を、検索キーワードの参考キーワードとして抽出する。
【００４３】
ここで、類似度に基づき参考キーワードとして抽出する基準は任意でよく、例えば、類似度がある閾値以上の商品関連語を参考キーワードとして抽出してもよく、或いは、類似度が高い順に数点の商品関連語を参考キーワードとして抽出してもよい。
【００４４】
商品関連語ＤＢ１１１に記憶されている商品関連語と検索キーワードの類似度を算出するには如何なる手法を用いてもよいが、商品関連語と検索キーワードの類似度を算出する手法として、商品関連語と検索キーワード間の編集距離を演算することで類似度を演算する第１の類似度演算方法、或いは、部分文字列の出現頻度から類似度を演算する第２の類似度演算方法のいずれかを選択して利用すると、商品関連語と検索キーワードの類似度を効率良く演算することができる。
【００４５】
まず、編集距離を演算する第１の類似度演算方法について説明する。第１の類似度演算方法においては、定められた編集距離アルゴリズムを利用して、クライアント２から取得した検索キーワードと、商品関連語ＤＢ１１１に記憶された商品関連語それぞれの編集距離を算出し、算出した編集距離の逆数を類似度として利用する。
【００４６】
一般的に、２つの文字列間の編集距離を演算するときには、編集操作と編集操作に対応する距離が定義される。例えば、１文字の削除に対応する距離は「１」、１文字の挿入に対応する距離は「１」、および、１文字の置換に対応する距離は「１」である。そして、２つの文字列間の編集距離とは、片方の文字列を他方の文字列に変換する最小の編集操作の回数である。
【００４７】
２つの文字列間の編集距離をコンピュータで演算するための編集距離アルゴリズムは様々であるが、ここでは、公知技術である動的計画法を用いた方法について説明する。商品の検索に失敗した検索キーワードの長さを「ｍ」、類似度を演算する商品関連語の長さを「ｎ」としたとき、検索キーワードに含まれる文字を格納する文字列Ｓ（長さｍ）と、類似度を演算する商品関連語に含まれる文字を格納する文字列Ｔ（長さｎ）と、２次元配列Ｄ（ｍ＋１、ｎ＋１）が、商品検索装置１のＲＡＭ１１に形成され、数式１で示される漸化式に従い、２次元配列Ｄ（ｍ＋１、ｎ＋１）のそれぞれの要素の値を演算し、２次元配列Ｄ（ｍ＋１、ｎ＋１）の値が、文字列Ｓと文字列Ｔ間の編集距離として演算される。
【００４８】
【数１】
0005321777.tif 000002
【００４９】
ここから、具体例を例示しながら、上述した内容について説明する。図４は、第１の演算方法の具体例を説明する図である。図４において、検索に失敗した検索キーワードは「Ｌａｉｎｃｕｐ」の７文字で、類似度が演算される商品関連語は「Ｌｉｎｅｃｕｐ」の７文字である。
【００５０】
図４（ａ）は、数１の（３）に従い初期値を設定した後の２次元配列Ｄ（ｍ＋１、ｎ＋１）を説明する図である。数式１の（３）で示されているように、２次元配列Ｄ（０、０）には「０」が代入され、２次元配列Ｄ（ｉ、０）にはｉの番号「１~７」がそれぞれ代入され、そして、２次元配列Ｄ（０、ｊ）にはｊの番号「１~７」がそれぞれ代入される。
【００５１】
図４（ｂ）は、ｉ＝１が終了したときの２次元配列Ｄ（ｍ＋１、ｎ＋１）を説明する図である。２次元配列Ｄ（１、１）の演算には、点線枠内の値が利用され、数式１の（１）および（２）から演算される値である「０」が代入され、同様に、２次元配列Ｄ（１、２）から２次元配列Ｄ（１、７）には、数式１の（１）および（２）から演算される値がそれぞれ代入される。
【００５２】
図４（ｃ）は、ｉ＝７が終了したときの２次元配列Ｄ（ｍ＋１、ｎ＋１）を説明する図である。２次元配列Ｄ（７、７）の演算には、点線枠内の値が利用され、数式１の（１）および（２）から演算される値である「２」が代入される。２次元配列Ｄ（７、７）の値が、検索キーワード「Ｌａｉｎｃｕｐ」と商品関連語「Ｌｉｎｅｃｕｐ」の編集距離となり、検索キーワード「Ｌａｉｎｃｕｐ」と商品関連語「Ｌｉｎｅｃｕｐ」の類似度は、上述しているように編集距離の逆数で、その値は「０．５」である。
【００５３】
このように、第１の類似度演算方法においては、類似度の演算量は、２次元配列Ｄ（ｍ＋１、ｎ＋１）に依存し、単純演算で済むため、商品関連語と検索キーワードの類似度を効率良く演算することができる。
【００５４】
次に、部分文字列に基づく第２の類似度演算方法について説明する。第２の類似度演算方法においては、検索に失敗した検索キーワードと商品関連語それぞれから、連続するｎ個の並び（Ｎ−ｇｒａｍ）、好ましくは２−ｇｒａｍの部分文字列をすべて取り出し、数式２に従い類似度を演算する。
【００５５】
【数２】
0005321777.tif 000003
【００５６】
数式２によれば、検索キーワードから得られる部分文字列Ｓが商品関連語に含まれる個数を部分文字列Ｓの総数で除算した値と、商品関連語から得られる部分文字列Ｔが検索キーワードに含まれる個数を部分文字列Ｔの総数で除算した値とを乗算することで、検索キーワードと商品関連語の類似度は演算される。
【００５７】
例えば、検索キーワードが「Ｌａｉｎｃｕｐ」で、商品関連語を「Ｌｉｎｅｃｕｐ」とし、部分文字列の長さを２文字としたときの例について説明する。検索キーワード「Ｌａｉｎｃｕｐ」から得られる２文字の部分文字列Ｓは、「Lａ」、「ａｉ」、「ｉｎ」、「ｎｃ」、「ｃｕ」および「ｕｐ」の６個で、商品関連語「Ｌｉｎｅｃｕｐ」に含まれる検索キーワードの部分文字列Ｓの数は３個である。
【００５８】
また、商品関連語「Ｌｉｎｅｃｕｐ」から得られる２文字の部分文字列Ｔは、「Ｌｉ」、「ｉｎ」、「ｎｅ」、「ｅｃ」、「ｃｕ」および「ｕｐ」の６個で、検索キーワード「Ｌａｉｎｃｕｐ」に含まれる検索キーワードの部分文字列Ｔの数は３個である。
【００５９】
よって、検索キーワード「Ｌａｉｎｃｕｐ」と商品関連語「Ｌｉｎｅｃｕｐ」の類似度は、数式２に従えば「０．２５０」になる。
【００６０】
このように、第２の類似度演算方法において部分文字列の文字数を２文字とすると、検索キーワードに含まれる部分文字列の個数は「検索キーワードの文字数―１」になり、同様に、商品関連語に含まれる部分文字列の個数は「商品関連語の文字数―１」になるため、商品関連語と検索キーワードの類似度を演算する計算量が少なくて済む。
【００６１】
なお上述した例では、２−ｇｒａｍの部分文字列としているが、Ｎ−ｇｒａｍは２−ｇｒａｍに限定されず、３−ｇｒａｍ或いは４−ｇｒａｍの部分文字列を類似度の演算に利用してもよく、更には、Ｎが異なる複数のＮ−ｇｒａｍから得られる部分文字列を類似度の演算に利用してもよい。
【００６２】
例えば、２−ｇｒａｍおよび３−ｇｒａｍの部分文字列を利用し、数２に従い類似度を演算することもできる。２−ｇｒａｍおよび３−ｇｒａｍの部分文字列を類似度の演算に利用するとき、部分文字列Ｓは、検索キーワードから得られる２−ｇｒａｍおよび３−ｇｒａｍの部分文字列で、検索キーワードを「Ｌａｉｎｃｕｐ」とすると、部分文字列Ｓは、「Lａ」、「ａｉ」、「ｉｎ」、「ｎｃ」、「ｃｕ」、「ｕｐ」、「Ｌａｉ」、「ａｉｎ」、「ｉｎｃ」、「ｎｃｕ」および「ｃｕｐ」の１１個になる。
【００６３】
また、部分文字列Ｔは、商品関連語から得られる２−ｇｒａｍおよび３−ｇｒａｍの部分文字列で、商品関連語を「Ｌｉｎｅｃｕｐ」とすると、部分文字列Ｔは、「Ｌｉ」、「ｉｎ」、「ｎｅ」、「ｅｃ」、「ｃｕ」、「ｕｐ」、「Ｌｉｎ」、「ｉｎｅ」、「ｎｅｃ」、「ｅｃｕ」および「ｃｕｐ」の１１個になる。
【００６４】
よって、数式２に従えば、２−ｇｒａｍおよび３−ｇｒａｍの部分文字列を利用したときの類似度ＳＩＭ（Ｓ，Ｔ）は、４／１１×４／１１で演算され、その値は、約０．１３２になる。
【００６５】
更には、２−ｇｒａｍ、３−ｇｒａｍおよび４−ｇｒａｍの部分文字列を利用し、数２に従い類似度を演算することもできる。２−ｇｒａｍ、３−ｇｒａｍおよび４−ｇｒａｍの部分文字列を類似度の演算に利用するとき、部分文字列Ｓは、検索キーワードから得られる２−ｇｒａｍ、３−ｇｒａｍおよび４−ｇｒａｍの部分文字列で、検索キーワードを「Ｌａｉｎｃｕｐ」とすると、部分文字列Ｓは、「Lａ」、「ａｉ」、「ｉｎ」、「ｎｃ」、「ｃｕ」、「ｕｐ」、「Ｌａｉ」、「ａｉｎ」、「ｉｎｃ」、「ｎｃｕ」、「ｃｕｐ」、「Ｌａｉｎ」、「ａｉｎｃ」、「ｉｎｃｕ」および「ｎｃｕｐ」の１５個になる。
【００６６】
また、部分文字列Ｔは、商品関連語から得られる２−ｇｒａｍ、３−ｇｒａｍおよび４−ｇｒａｍの部分文字列で、商品関連語を「Ｌｉｎｅｃｕｐ」とすると、部分文字列Ｔは、「Ｌｉ」、「ｉｎ」、「ｎｅ」、「ｅｃ」、「ｃｕ」、「ｕｐ」、「Ｌｉｎ」、「ｉｎｅ」、「ｎｅｃ」、「ｅｃｕ」、「ｃｕｐ」、「Ｌｉｎｅ」、「ｉｎｅｃ」、「ｎｅｃｕ」および「ｅｃｕｐ」の１５個になる。
【００６７】
よって、数式２に従えば、２−ｇｒａｍ、３−ｇｒａｍおよび４−ｇｒａｍの部分文字列を利用したときの類似度ＳＩＭ（Ｓ，Ｔ）は、４／１５×４／１５で演算され、その値は、約０．０７１になる。
【００６８】
Ｎが異なる複数のＮ−ｇｒａｍから得られる部分文字列を利用して類似度を演算すると、計算量が増えてしまうが、Ｎが異なる複数のＮ−ｇｒａｍを利用しているので、類似度の精度が向上する利点がある。
【００６９】
参考キーワード抽出手段１０２は、上述したような内容で、検索に失敗した検索キーワードと商品関連語の類似度の演算を、商品関連語ＤＢ１１１に記憶されているすべての商品関連語について行うと、定められた基準に類似度が適合する商品関連語を参考キーワードとして抽出する。
【００７０】
参考キーワード抽出手段１０２は、検索キーワードの参考キーワードとして抽出すると、抽出した参考キーワードをウェブサーバ手段１００に引渡し、ウェブサーバ手段１００は、クライアント２から送信された検索キーワードを用いた商品データの検索に失敗したことを示すメッセージに加え、参考キーワード抽出手段１０２から引渡された参考キーワードを表示する表示データとしてＨＴＭＬデータを生成し、生成したこのＨＴＭＬデータをクライアント２に送信する。
【００７１】
図５は、参考キーワードが表示されるウェブページ６を説明する図である。図３に図示したように、図３で図示したウェブページ５の内容に加えて、クライアント２から取得した検索キーワードを用いた検索に失敗したことを示すメッセージ６２（ここでは、検索結果０件）と、参考キーワード抽出手段１０２から引渡された参考キーワードのテキスト６３（ここでは、Ｌｉｎｅｃｕｐ）が表示される。
【００７２】
図５のウェブページ６において、参考キーワードのテキスト６３を表示させるときに、テキスト６３に参考キーワードをリンクさせ、ハイパーリンクがクリックされると参考キーワードが商品検索装置１に送信させるようにしておくと、ユーザが参考キーワードを入力する手間を省くことができるようになる。
【００７３】
なお、本実施形態において、参考キーワードを表示する表示データとして、商品検索装置１はＨＴＭＬデータを生成するようにしているが、商品検索装置１が生成する表示データの形式は、ＨＴＭＬデータ以外の形式であってもよい。当然のことながら、商品検索装置１が生成する表示データの形式は、表示データが表示される端末装置の仕様に依存する。
【００７４】
ここから、本発明に係る商品検索方法について説明する。図６は、本発明に係る商品検索方法の手順を示したフロー図である。本発明に係る商品検索方法は、これまで説明した商品検索装置１のような装置内で実行される方法で、まず、商品検索装置１は商品データを検索するために、検索要求したクライアント２から、商品データを検索するときに利用する検索キーワードを取得する（Ｓ１）。上述した商品検索装置１のウェブサーバ手段１００は、図３で図示したようなウェブページ５を利用することで、クライアント２から検索キーワードを取得する。
【００７５】
商品検索装置１のウェブサーバ手段１００は、クライアント２から検索キーワードを取得すると、検索キーワードを商品検索手段１０１に引渡し、商品検索手段１０１は、様々な商品データが記憶されている商品ＤＢ１１０から、取得した検索キーワードを商品関連語として含む商品データを検索する（Ｓ２）。
【００７６】
商品検索装置１の商品検索手段１０１は、商品データの検索結果によって処理を分岐させ（Ｓ３）、商品データの検索に成功したときは、商品データの検索結果をウェブサーバ手段１００に引渡し、ウェブサーバ手段１００は、商品データの検索結果を表示するＨＴＭＬデータを生成し、生成したＨＴＭＬデータをクライアント２に送信して（Ｓ４）、この手順を終了する。
【００７７】
商品データの検索に失敗したとき、商品検索装置１の商品検索手段１０１は、クライアント２から取得した検索キーワードを参考キーワード抽出手段１０２に引渡し、参考キーワード抽出手段１０２は、商品関連語ＤＢ１１１に記憶された商品関連語すべてと検索キーワードとの類似度を、上述した第１の類似度演算方法或いは第２の類似度演算方法に従い演算し、定められた基準に類似度が適合する商品関連語を参考キーワードとして抽出する（Ｓ５）。
【００７８】
商品検索装置１の商品検索手段１０１は、抽出した参考キーワードをウェブサーバ手段１００に引渡し、商品検索装置１のウェブサーバ手段１００は、参考キーワード抽出手段１０２から引渡された参考キーワードを表示するＨＴＭＬデータを生成し、生成したＨＴＭＬデータをクライアント２に送信することで、参考キーワード抽出手段１０２が抽出した参考キーワードはクライアント２に表示される（Ｓ６）。
【００７９】
なお、本発明は、これまで説明した実施形態に限定されることなく、種々の変形や変更が可能である。例えば、これまでは商品検索装置１を１台の装置として説明してきたが、商品検索装置１は複数台のサーバから構成されていてもよく、商品検索装置１の機能は、ショッピングサイトの一つの機能として提供することも可能である。
【００８０】
商品検索装置１をショッピングサイトに適用することを想定すると、ショッピングサイトにおいて、商品データは、商品のカテゴリーごとに分類して管理されるため、商品検索装置１に備えられた商品ＤＢ１１０および商品関連語ＤＢ１１１も、商品のカテゴリーごとに設けられることが望ましい。
【００８１】
商品ＤＢ１１０および商品関連語ＤＢ１１１を商品のカテゴリーごとに設ける場合、商品検索装置１のウェブサーバ手段１００は、検索キーワードをクライアント２から取得する前に、商品のカテゴリーを取得するためのＨＴＭＬデータを送信し、クライアント２から商品のカテゴリーを取得する。
【００８２】
そして、クライアント２から商品のカテゴリーを取得すると、商品検索装置１の商品検索手段１０１は、クライアント２から取得した商品のカテゴリーに対応する商品ＤＢ１１０から、商品データの検索を行い、また、商品検索装置１の参考キーワード抽出手段１０２は、クライアント２から取得した商品のカテゴリーに対応する商品関連語ＤＢ１１１から、参考参考キーワードの抽出を行う。
【００８３】
このように、商品検索装置１が、商品ＤＢ１１０および商品関連語ＤＢ１１１を商品のカテゴリーごとに備え、クライアント２から取得した商品のカテゴリーに対応する商品ＤＢ１１０および商品関連語ＤＢ１１１を選択して利用することで、検索キーワードと類似度が演算される商品関連語は、クライアント２から取得した商品のカテゴリーに対応する商品関連語ＤＢ１１１に記憶されている商品関連語に限定されるため、検索キーワードと商品関連語との類似度の演算量を抑えることができるようになる。
【００８４】
更に、上述した実施形態では、本発明に係る商品検索装置１をウェブサーバとして説明したが、本発明に係る商品検索装置１は、実店舗に設置される店舗端末にも適用できる。
【００８５】
本発明に係る商品検索装置１を店舗端末とするときは、端末装置は実店舗に設置され、商品検索装置１はＬＡＮ（LAN: Local Area Network）を介して端末装置と接続する構成で実現されるか、或いは、端末装置と商品検索装置１が一体化された装置として実現される。      
【００８６】
更に、上述した実施形態において、本発明に係る商品検索装置１は、ユーザ３が入力した検索キーワードに適合する商品データの検索結果が０件のときに、商品データの検索に失敗したと判断し、参考キーワードを抽出していたが、ユーザ３が入力した検索キーワードに適合する商品データの検索結果が定められた件数以下のときに、商品データの検索に失敗したと判断し、参考キーワードを抽出するようにしてもよい。
【００８７】
このとき、商品検索装置１の商品検索手段１０１は、ユーザ３が入力した検索キーワードに適合する商品データの検索結果が定められた件数以下のときに、商品データの検索に失敗したと判断し、参考キーワード抽出手段１０２に参考キーワードの抽出を依頼し、ウェブサーバ手段１００に、検索結果に含まれる商品データと参考キーワードを引渡して、検索結果に含まれる商品データと参考キーワードを表示するＨＴＭＬデータの生成を依頼する。
【００８８】
このように、入力ミスの判定基準を０件ではなく定められた件数以下とすることで、入力ミスした検索キーワードに該当する商品データが仮に検索されたとしても、正しい可能性のある商品関連語をユーザに提示できるようになる。
【００８９】
なお、当然のことながなら、本発明で取り扱う商品は、パソコン、パソコン周辺機器、家電、スポーツ用品、書籍、音楽ソフト、映像ソフト、インターネットプロバイダ、不動産、乗物（自動車・バイク・自転車等）、食品などの物であってもよく、金融、保険、旅行の予約などのサービスであってもよい。
【００９０】
上述したように、本実施形態に係る商品検索装置および商品検索方法によれば、ユーザが端末装置に入力した検索キーワードを用いた商品データの検索に失敗したときに、検索キーワードと類似度が定められた基準に適合する商品関連語を参考キーワードとして抽出し、抽出した参考キーワードを端末装置に表示させることで、入力ミスした検索キーワードに対して正しい可能性のある商品関連語をユーザに提示することができ、ユーザの知識不足および不注意による入力ミスを補うことできるようになる。
【００９１】
例えば、本実施形態に係る商品検索装置をショッピングサイトに適用すれば、ユーザがショッピングサイトに入力した検索キーワードによる検索結果が０件の場合に、ユーザがショッピングサイト上に商品が無いと勘違いして、ショッピングサイト離反（ユーザがショッピングサイトの利用を終了すること）を防止できる。
【図面の簡単な説明】
【００９２】
【図１】商品検索装置の実施形態を説明する図。
【図２】商品検索装置およびクライアントの機能ブロック図。
【図３】検索キーワードを入力するフォームを含むウェブページを説明する図。
【図４】第１の演算方法の具体例を説明する図。
【図５】参考キーワードが表示されるウェブページを説明する図。
【図６】商品検索方法の手順を示したフロー図。
【符号の説明】
【００９３】
１  商品検索装置
１００  ウェブサーバ手段
１０１  商品検索手段
１０２  参考キーワード抽出手段
１１０  商品データベース
１１１  商品関連語データベース
【図１】
0005321777.tif 000004
【図２】
0005321777.tif 000005
【図３】
0005321777.tif 000006
【図４】
0005321777.tif 000007
【図５】
0005321777.tif 000008
【図６】
0005321777.tif 000009