(57)【特許請求の範囲】
【請求項１】
コンピュータが、
入力された検索条件をもとに、アイテム情報に含まれるアイテムの中からパレート最適なアイテムの候補を抽出し、
過去に選択されたアイテムを示す履歴情報をもとに、前記候補の順序を求め、
前記候補の順序に基づいて、前記アイテムにかかる各要素およびスコアを軸として含む多次元空間において、前記候補の順序が所定の順位の第一のアイテムの候補と、前記所定の順位とは異なる順位の第二のアイテムの候補とを通る超平面を、前記第二のアイテムの候補の組み合わせを変えて複数求め、各超平面上における前記入力された検索条件を満たさないアイテムごとのスコアを算出し、
前記算出されたスコアをもとに、前記入力された検索条件を満たさないアイテムの中で前記スコアが所定の条件を満たすアイテムを出力する
処理を実行することを特徴とする情報抽出方法。
【請求項２】
前記履歴情報は、前記検索条件の入力にかかるユーザおよび当該ユーザと過去に選択されたアイテムが類似するユーザの少なくとも一方のユーザのものである
ことを特徴とする請求項１に記載の情報抽出方法。
【請求項３】
前記コンピュータが、
前記検索条件を緩和する緩和条件の設定を受け付ける処理を更に実行し、
前記出力する処理は、前記入力された検索条件を前記設定された緩和条件で緩和した条件を満たすアイテムの中で前記スコアが所定の条件を満たすアイテムを推奨するアイテムとして出力する
ことを特徴とする請求項１または２に記載の情報抽出方法。
【請求項４】
前記出力する処理は、前記抽出されたパレート最適なアイテムの候補を含めて出力する
ことを特徴とする請求項１乃至３のいずれか一項に記載の情報抽出方法。
【請求項５】
前記出力する処理は、前記入力された検索条件を満たさないアイテムを前記スコアが高い順に出力する
ことを特徴とする請求項１乃至４のいずれか一項に記載の情報抽出方法。
【請求項６】
前記出力する処理は、前記候補の順序が所定の順位のアイテムのスコアとの差分が大きい順に、前記入力された検索条件を満たさないアイテムを出力する
ことを特徴とする請求項１乃至５のいずれか一項に記載の情報抽出方法。
【請求項７】
コンピュータに
入力された検索条件をもとに、アイテム情報に含まれるアイテムの中からパレート最適なアイテムの候補を抽出し、
過去に選択されたアイテムを示す履歴情報をもとに、前記候補の順序を求め、
前記候補の順序に基づいて、前記アイテムにかかる各要素およびスコアを軸として含む多次元空間において、前記候補の順序が所定の順位の第一のアイテムの候補と、前記所定の順位とは異なる順位の第二のアイテムの候補とを通る超平面を、前記第二のアイテムの候補の組み合わせを変えて複数求め、各超平面上における前記入力された検索条件を満たさないアイテムごとのスコアを算出し、
前記算出されたスコアをもとに、前記入力された検索条件を満たさないアイテムの中で前記スコアが所定の条件を満たすアイテムを出力する
処理を実行させることを特徴とする情報抽出プログラム。
【請求項８】
入力された検索条件をもとに、アイテム情報に含まれるアイテムの中からパレート最適なアイテムの候補を抽出する候補抽出部と、
過去に選択されたアイテムを示す履歴情報をもとに、前記候補の順序を求める推定部と、
前記候補の順序に基づいて、前記アイテムにかかる各要素およびスコアを軸として含む多次元空間において、前記候補の順序が所定の順位の第一のアイテムの候補と、前記所定の順位とは異なる順位の第二のアイテムの候補とを通る超平面を、前記第二のアイテムの候補の組み合わせを変えて複数求め、各超平面上における前記入力された検索条件を満たさないアイテムごとのスコアを算出する算出部と、
前記算出されたスコアをもとに、前記入力された検索条件を満たさないアイテムの中で前記スコアが所定の条件を満たすアイテムを出力する出力部と
を有することを特徴とする情報抽出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、情報抽出方法、情報抽出プログラムおよび情報抽出装置に関する。
【背景技術】
【０００２】
従来、ユーザより検索条件を受け付けて、データベース（ＤＢ）等に蓄積された多数のアイテム（情報）の中の、検索条件に該当するアイテムからユーザに合ったアイテムを抽出し、抽出したアイテムをユーザへ推奨するシステム（情報推薦システム）がある。
【０００３】
このユーザに合ったアイテムの抽出には、ユーザベース推奨手法、アイテムベース推奨手法またはその混合手法がある。ユーザベース推奨は、ユーザの過去にアクセスしたアイテムを趣味趣向と判断し、趣味趣向が類似するユーザがアクセスしたアイテムを推奨する手法である。アイテムベース推奨は、ユーザの過去にアクセスしたアイテムと類似するアイテムを推奨する手法である。混合手法は、ユーザベース推奨手法およびアイテムベース推奨手法の両方を用いた手法である。
【０００４】
ユーザは、検索条件を入力し、上述した推奨手法によりユーザに合ったアイテムとして抽出された検索結果を確認して、より好適なアイテムを見つける検索作業を行う。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−２０３４４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来技術では、ユーザが好適なアイテムを見つけるのに時間がかかる場合がある、という問題がある。
【０００７】
例えば、上述した従来技術では、入力された検索条件に該当するアイテムの中からユーザに合うアイテムが推奨されることから、検索条件を少し変更することで、より好適なアイテムが推奨される場合がある。このため、ユーザは、検索条件を入力し、検索結果を確認し、検索結果に含まれるアイテムを検討する作業を、別の検索条件を入れて繰り返し行い、好適なアイテムを見つけていくこととなる。
【０００８】
１つの側面では、好適なアイテムを見つけ易くできる情報抽出方法、情報抽出プログラムおよび情報抽出装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の案では、情報抽出方法は、コンピュータが、入力された検索条件をもとに、アイテム情報に含まれるアイテムの中からパレート最適なアイテムの候補を抽出する処理を実行する。また、情報抽出方法は、コンピュータが、過去に選択されたアイテムを示す履歴情報をもとに、候補の順序を求める処理を実行する。また、情報抽出方法は、コンピュータが、候補の順序に基づいて、アイテムにかかる各要素およびスコアを軸として含む多次元空間において、候補の順序が所定の順位の第一のアイテムの候補と、所定の順位とは異なる順位の第二のアイテムの候補とを通る超平面を、第二のアイテムの候補の組み合わせを変えて複数求め、各超平面上における入力された検索条件を満たさないアイテムごとのスコアを算出する処理を実行する。また、情報抽出方法は、コンピュータが、算出されたスコアをもとに、入力された検索条件を満たさないアイテムの中でスコアが所定の条件を満たすアイテムを推奨するアイテムとして出力する処理を実行する。
【発明の効果】
【００１０】
本発明の１実施態様によれば、好適なアイテムを見つけ易くできる。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施形態にかかる情報抽出装置の機能構成を示すブロック図である。
【図２】図２は、フラグ付与処理を例示するフローチャートである。
【図３】図３は、ユーザ過去アイテム選定履歴テーブルの一例を示す図である。
【図４】図４は、パレート生成を説明する説明図である。
【図５】図５は、パレート上の部品への置き換えを説明する説明図である。
【図６】図６は、履歴調整を説明する説明図である。
【図７】図７は、スコア算出処理を例示するフローチャートである。
【図８】図８は、各平面上のアイテムのスコアを説明する説明図である。
【図９】図９は、計算した平面を２次元に射影した例を説明する説明図である。
【図１０】図１０は、アイテム−スコアテーブルの一例を示す図である。
【図１１】図１１は、推奨アイテム候補テーブルを生成して出力する処理を例示するフローチャートである。
【図１２】図１２は、表示画面例を説明する説明図である。
【図１３】図１３は、動作例におけるパレート生成を説明する説明図である。
【図１４】図１４は、動作例における履歴調整を説明する説明図である。
【図１５】図１５は、動作例における各平面によるアイテム候補を説明する説明図である。
【図１６】図１６は、動作例におけるアイテム候補のスコアを説明する説明図である。
【図１７】図１７は、推奨アイテム候補テーブルを生成して出力する処理の変形例を示すフローチャートである。
【図１８】図１８は、情報抽出プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、実施形態にかかる情報抽出方法、情報抽出プログラムおよび情報抽出装置を説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明する情報抽出方法、情報抽出プログラムおよび情報抽出装置は、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。
【００１３】
図１は、実施形態にかかる情報抽出装置１の機能構成を示すブロックである。情報抽出装置１は、例えばパーソナルコンピュータ等であり、キーボードやマウスなどの入力装置におけるユーザの操作により、アイテム（情報）についての検索条件を受け付ける。そして、情報抽出装置１は、アイテム情報１１３に蓄積された多数のアイテムの中の、検索条件に該当するアイテムを抽出し、抽出したアイテムをディスプレイなどの出力装置に出力してユーザへアイテムの推奨を行う。
【００１４】
なお、本実施形態では、パーソナルコンピュータ等の一つの装置で上述したアイテムの推奨を行う構成を例示するが、装置構成については端末装置と、サーバ装置とを有するシステム構成であってもよい。例えば、ユーザが操作する端末装置と、端末装置からの検索要求によって検索を行い、検索結果を端末装置へ出力するサーバ装置とを有するシステム構成であってもよい。
【００１５】
また、本実施形態では、検索対象とするアイテムが電子部品（以後、部品と呼ぶ）である場合を例に説明する。なお、検索対象とするアイテムについては、上述した部品以外のものであってよく（例えば商品や物件など）、特に限定しない。
【００１６】
また、検索対象のアイテムは、複数の項目（要素）を有し、各項目においてアイテムを特徴付ける値を有する。例えば、部品においては、抵抗値、定格電力などの電気的な特性を示す項目の他、耐用年数（寿命）、価格（コスト）、耐温度、誤差などの項目がある。また、特定の項目には値のレンジがあり、値の大小によって良い／悪いについての方向（利益）が判定できるものとする。例えば、コストは、高ければ悪く（利益が少なく）、低ければ良い（利益が多い）ものと判定できる。また、寿命は、長ければ良く（利益が多く）、短ければ悪い（利益が少ない）ものと判定できる。
【００１７】
図１に示すように、情報抽出装置１は、入力部１０、フラグ付与部２０、類似ユーザ抽出部３０、パレート生成部４０、過去履歴調整部５０、スコア算出部６０、条件設定部７０、推奨部８０および出力部９０を有する。上述した各機能部は、情報抽出装置１のＣＰＵ（Central  Processing  Unit）がプログラムを実行することで実現される。
【００１８】
入力部１０は、予めデータを記憶する記憶装置や、キーボードやマウスなどの入力装置からユーザ過去アイテム選定履歴１１０、ユーザ情報１１１、ユーザ検索条件１１２およびアイテム情報１１３などの情報の入力を受け付ける。
【００１９】
ユーザ過去アイテム選定履歴１１０は、過去にユーザが選択（選定）したアイテムの履歴が記述された情報である。ユーザ過去アイテム選定履歴１１０は、記憶装置等で管理され、ユーザからのアイテムの選択指示などを受け付けた際に、選択されたアイテムを示す情報が履歴として追加される。例えば、ユーザ過去アイテム選定履歴１１０には、選択されたアイテムを示す情報（アイテム名など）、アイテムの選択を行ったユーザを示す識別情報（ユーザＩＤなど）および選択の日時などの情報が記述されている。
【００２０】
ユーザ情報１１１は、ユーザ検索条件１１２の入力を行ったユーザを示す情報である。例えば、アイテム検索を行う際のログイン認証などで認証されたユーザのユーザＩＤがユーザ情報１１１として入力される。
【００２１】
ユーザ検索条件１１２は、ユーザよりキーボードやマウスなどの入力装置から受け付けた、アイテムの検索にかかる条件であり、アイテムの各項目における値の条件などである。例えば、ユーザ検索条件１１２は、検索対象とする部品についての電気的な特性値（抵抗値など）、耐温度、価格および誤差の条件値などである。
【００２２】
アイテム情報１１３は、検索対象となる様々なアイテムの情報であり、記憶装置等で管理されている。具体的には、アイテム情報１１３は、一つのレコードに一つのアイテムの情報が記述されたＤＢなどであり、アイテムごとに各項目における値が記述されている。例えば、アイテム情報１１３には、部品ごとに、抵抗値、耐温度、価格および誤差などの各項目の値が記述されている。
【００２３】
フラグ付与部２０は、入力部１０より入力されたユーザ過去アイテム選定履歴１１０をもとに、ユーザごとに、過去に選択したアイテムの選択順を示すフラグ（選択フラグとも呼ぶ）を付与したユーザ過去アイテム選定履歴テーブル１２０を生成する。具体的には、フラグ付与部２０は、ユーザごとの過去に選択したアイテムの履歴について、所定のインターバルで区切り、インターバルの間に選んだアイテムについては「Ｒｅｆｅｒ」、最終的に選んだアイテムについては「Ｓｅｌｅｃｔ」の選択フラグをつける。
【００２４】
例えば、ユーザが検索作業を繰り返し行い、好適なアイテムを見つけていく場合には、後に選ばれたアイテムの方が前に選ばれたアイテムよりもユーザにとっては好適なアイテムといえる。そして、ある期間内において最終的に選んだアイテムがユーザにおいて最も好適なアイテムということになる。したがって、フラグ付与部２０では、ユーザが過去に選択したアイテムについて、上述した「Ｒｅｆｅｒ」または「Ｓｅｌｅｃｔ」の選択フラグをつけることで、選択順に対応した意味付けを行う。
【００２５】
図２は、フラグ付与処理を例示するフローチャートである。図２に示すように、フラグ付与部２０は、ユーザ過去アイテム選定履歴１１０の入力を受け付け（Ｓ１）、アイテムを選択した日付の情報をもとに、予め設定された閾値（Ｔ＿ｔｈ）に対応するインターバルでアイテムに選択フラグを付ける。
【００２６】
具体的には、フラグ付与部２０は、アイテムを選択した日付の情報をもとに、閾値（Ｔ＿ｔｈ）未満の時刻（ｔ＜Ｔ＿ｔｈ）におけるアイテム選択であるか否かを判定する（Ｓ１２）。閾値（Ｔ＿ｔｈ）未満である場合（Ｓ１２：ＹＥＳ）、フラグ付与部２０は、ユーザごと追番でアイテムをユーザ過去アイテム選定履歴テーブル１２０に記録する（Ｓ１３）。このとき、フラグ付与部２０は、「Ｒｅｆｅｒ」の選択フラグを付ける。次いで、フラグ付与部２０は、ｔをインクリメントして（Ｓ１４）、Ｓ１２へ処理を戻す。
【００２７】
閾値（Ｔ＿ｔｈ）未満の時刻におけるアイテム選択でない場合（Ｓ１２：ＮＯ）、フラグ付与部２０は、ユーザごとアイテムを「Ｓｅｌｅｃｔ」の選択フラグを付けてユーザ過去アイテム選定履歴テーブル１２０に記録する（Ｓ１５）。次いで、フラグ付与部２０は、ｔを初期化（ｔ＝０）して（Ｓ１６）、Ｓ１２へ処理を戻す。
【００２８】
図３は、ユーザ過去アイテム選定履歴テーブル１２０の一例を示す図である。図３に示すように、ユーザ過去アイテム選定履歴テーブル１２０には、各ユーザにおいて選択したアイテムごとに、アイテムの選択順を示す「Ｒｅｆｅｒ」または「Ｓｅｌｅｃｔ」の選択フラグが記録される。例えば、「Ｕ０」のユーザについては、「Ａ０」、「Ｂ０」、「Ｃ０」の順にアイテムを選択しており、最終的に選択したアイテム「Ｃ０」には「Ｓｅｌｅｃｔ」の選択フラグが記録されている。また、アイテム「Ｃ０」に至る過程で選択されたアイテム「Ａ０」、「Ｂ０」には「Ｒｅｆｅｒ」の選択フラグが記録されている。
【００２９】
図１に戻り、類似ユーザ抽出部３０は、ユーザ情報１１１およびユーザ過去アイテム選定履歴１１０をもとに、ユーザ検索条件１１２の入力を行ったユーザおよびこのユーザと過去のアイテム選択が類似するユーザを抽出する。類似ユーザ抽出部３０は、抽出したユーザの情報を類似ユーザテーブル１２１として出力する。
【００３０】
具体的には、類似ユーザ抽出部３０は、ユーザ情報１１１をもとに、ユーザ検索条件１１２の入力を行ったユーザを特定する。次いで、類似ユーザ抽出部３０は、特定したユーザが過去に選択したアイテムと、他のユーザが過去に選択したアイテムとをユーザ過去アイテム選定履歴１１０を参照して取得する。次いで、類似ユーザ抽出部３０は、互いのアイテムの類似度を求め、類似度が所定値以上のアイテムを選択しているユーザを、類似するユーザとして特定する。次いで、類似ユーザ抽出部３０は、特定したユーザを示す識別情報（ユーザＩＤなど）を記述した類似ユーザテーブル１２１を出力する。
【００３１】
パレート生成部４０は、ユーザ検索条件１１２およびアイテム情報１１３を参照し、ユーザ検索条件１１２を満たす制約の中でパレート最適となるパレート解を生成（パレート生成とも呼ぶ）する。このパレート解は、ユーザ検索条件１１２を満たす制約の中で、例えば寿命やコストなどの利益について優越が付けられない解のことである。このパレート生成については、最適化目的関数の値を最小化する公知の手法を用いて実行する。パレート生成部４０は、アイテム情報１１３に記述された多数のアイテムの中からパレート解に対応するアイテムを抽出し、抽出したアイテムの情報をアイテム候補テーブル１２３として出力する。
【００３２】
図４は、パレート生成を説明する説明図である。図４に示すように、パレート生成部４０は、最適化目的関数の値を最小化する公知の手法を用いることで、パレート解に対応するパレート曲線１４０を求める。図示例では、寿命および価格についてのパレート曲線１４０を求めている。範囲１４１は、ユーザ検索条件１１２に対応する範囲を示す。また、範囲１４２は、ユーザ検索条件１１２外の範囲を示す。パレート生成部４０は、パレート曲線１４０上のパレート集合のアイテム（部品）を示す情報をアイテム候補テーブル１２３として出力する。
【００３３】
図１に戻り、過去履歴調整部５０は、類似ユーザテーブル１２１に記述されたユーザの過去に選択したアイテム（部品）について、パレート曲線１４０上の部品に置き換えを行い、置き換えを行った後の情報であるパレート履歴テーブル１２４を出力する。
【００３４】
具体的には、過去履歴調整部５０は、各ユーザが過去に選択したアイテム（部品）にかかるユーザ過去アイテム選定履歴テーブル１２０について、類似ユーザテーブル１２１に記述されたユーザでの絞り込みを行った類似ユーザ過去アイテム選定履歴テーブル１２２を求める。そして、過去履歴調整部５０は、パレート曲線１４０上の部品を示すアイテム候補テーブル１２３を参照し、類似ユーザ過去アイテム選定履歴テーブル１２２のユーザについて過去に選択した部品をパレート曲線１４０上の部品に置き換える。後述するスコア算出部６０ではパレート曲線１４０上の部品を基準にスコア算出を行うため、過去履歴調整部５０は、ユーザが過去に選択した部品を全てパレート曲線１４０上の部品に対応づける。
【００３５】
図５は、パレート上の部品への置き換えを説明する説明図である。図５に示すように、過去履歴調整部５０は、過去に選択した部品（Ａ０、Ｃ０、Ｂ０）を、最適化目的関数の値を最小化するように、パレート曲線１４０上のドミナントな部品（Ｇ０、Ｐ３、Ｅ２）に置き換える。なお、過去に選択した部品（Ａ０、Ｃ０、Ｂ０）において、網掛けの部品（Ｃ０）は、選択フラグが「Ｓｅｌｅｃｔ」のものである。また、網掛けなしの部品（Ａ０、Ｂ０）は、選択フラグが「Ｒｅｆｅｒ」のものである。パレート曲線１４０上の部品（Ｇ０、Ｐ３、Ｅ２）に置き換えれたものについても、対応する選択フラグが付与される。
【００３６】
図６は、履歴調整を説明する説明図である。図６に示すように、過去履歴調整部５０は、類似ユーザ過去アイテム選定履歴テーブル１２２のユーザ（Ｕ０）について過去に選択した部品（Ａ０、Ｂ０、Ｃ０）を、パレート曲線１４０上の部品（Ｇ０、Ｅ２、Ｐ３）に置き換える。そして、過去履歴調整部５０は、類似ユーザ過去アイテム選定履歴テーブル１２２について、選択フラグはそのままに、パレート曲線１４０上の部品（Ｇ０、Ｅ２、Ｐ３）に置き換えたパレート履歴テーブル１２４を出力する。したがって、パレート履歴テーブル１２４は、ユーザが過去に選択した部品の選択順がパレート曲線１４０上に反映された情報を含む。
【００３７】
図１に戻り、スコア算出部６０は、ユーザの過去の選択順を反映したパレート履歴テーブル１２４に基いて、アイテム情報１１３に含まれるアイテム（部品）における、ユーザ検索条件１１２を満たさない部品ごとの、ユーザの過去の選択順に応じたスコアを算出する。例えば、パレート履歴テーブル１２４におけるパレート曲線１４０上の部品についてはユーザの過去の選択順を反映した情報を含むことから、スコア算出部６０は、アイテム情報１１３の各部品について、パレート履歴テーブル１２４をもとにユーザの過去の選択順に応じたスコアを算出することができる。スコア算出部６０は部品ごとの算出したスコアをアイテム−スコアテーブル１２５として出力する。
【００３８】
具体的には、スコア算出部６０は、アイテム情報１１３の部品にかかる各要素を含む多次元空間において、ユーザの過去の選択順を反映したパレート曲線１４０上の部品を通る超平面に対し、アイテム情報１１３の各部品のスコア（超平面への高さ）を求める。このスコアがユーザの過去の選択順に応じたスコアに対応する。
【００３９】
より具体的には、スコア算出部６０は、パレート履歴テーブル１２４を参照し、選択フラグが「Ｓｅｌｅｃｔ」であり、選択順が最後の部品（最も好適ものとして選択した部品）と、選択フラグが「Ｒｅｆｅｒ」である部品とを通る超平面を求める。この超平面は、選択フラグが「Ｒｅｆｅｒ」である部品の組み合わせを変えて複数求める。ただし、選択フラグが「Ｓｅｌｅｃｔ」の部品は全ての超平面に含まれており、超平面を構成するのに十分な数の他の部品（選択フラグが「Ｒｅｆｅｒ」である部品）が存在するものとする。
【００４０】
そして、スコア算出部６０は、アイテム情報１１３に含まれるアイテム（部品）における、ユーザ検索条件１１２を満たさない部品ごとに、次の式（１）をもとに複数の超平面に対する距離を求めてスコアを算出する。
【００４１】
【数１】
0006601011.tif 000002
【００４２】
式（１）において、ｉは次元を示す添字であり、ｊは超平面を示す添字である。αは係数、ｘはアイテム、ｄは定数である。ｓｇは、１または−１の値であり、超平面の良い側のＳｃｏｒｅ（スコア）を正にする符号のものを選択する。Ｗｊは、０≦Ｗｊ≦１の重みを示す値である。なお、全ての超平面についてＷｊを加算した値は１とする。
【００４３】
式（１）では、Σｉαｉｊｘｉ＋ｄｊが超平面を表す式である。また、超平面を表す式をΣｉ（αｉｊ）２の平方根で割った式は、超平面への高さを表している（点と平面の距離の一般式）。また、式（１）では、各超平面の高さについて、重み付き線形和でスコアを求めている。
【００４４】
図７は、スコア算出処理を例示するフローチャートである。図７に示すように、処理が開始されると、スコア算出部６０は、パレート曲線１４０を参照して、複数の超平面を求めるための部品の組み合わせを抽出していない残り類似ユーザがいるか否かを判定する（Ｓ２１）。なお、類似ユーザには、ユーザ検索条件１１２の入力を行った対象ユーザを含むものとする。
【００４５】
残り類似ユーザがいる場合（Ｓ２１：ＹＥＳ）、スコア算出部６０は、残り類似ユーザからユーザ１名を抽出し（Ｓ２２）、抽出したユーザが過去に選定（選択）した部品の一覧である部品選定履歴を抽出する（Ｓ２３）。次いで、スコア算出部６０は、部品選定履歴の中から選択フラグが「Ｓｅｌｅｃｔ」の部品と、「Ｒｅｆｅｒ」の部品との組み合わせを抽出し（Ｓ２４）、Ｓ２１へ処理を戻す。ここで、「Ｒｅｆｅｒ」の部品が複数ある場合は、「Ｓｅｌｅｃｔ」の部品との組み合わせを変えて複数の組み合わせを求める。
【００４６】
残り類似ユーザがいない場合（Ｓ２１：ＮＯ）、類似ユーザについて複数の超平面を求めるための部品の組み合わせを抽出したことから、スコア算出部６０はＳ２５へ処理を進める。
【００４７】
Ｓ２５において、スコア算出部６０は、Ｓ２４において求めた組み合わせによる各平面（超平面）上におけるアイテム（部品）のスコア（良さ）を、上述した式（１）をもとに計算する（Ｓ２５）。次いで、スコア算出部６０は、Ｓ２５で求めたスコアをアイテムごとに格納するアイテム−スコアテーブル１２５を生成し（Ｓ２６）、処理を終了する。
【００４８】
図８は、各平面上のアイテムのスコアを説明する説明図である。図８では、アイテムにおける２つの要素（価格（Ｃｏｓｔ）と寿命（Ｌｉｆｅ））から作られる平面Ｐ１、Ｐ２を例示している。
【００４９】
図８に示すように、選択フラグが付されたパレート曲線１４０上のアイテムの組み合わせにより平面Ｐ１、Ｐ２が得られる。平面Ｐ１は、「Ｓｅｌｅｃｔ」のアイテムと、「Ｒｅｆｅｒ１」のアイテムとを通る平面である。平面Ｐ２は、「Ｓｅｌｅｃｔ」のアイテムと、「Ｒｅｆｅｒ２」のアイテムとを通る平面である。この平面Ｐ１、Ｐ２は、ともに、「Ｒｅｆｅｒ１」、「Ｒｅｆｅｒ２」のアイテムよりも「Ｓｅｌｅｃｔ」のアイテムのほうが好適なアイテムであるというユーザの選択傾向を反映している。また、平面Ｐ１におけるＳｃｏｒｅ１よりも平面Ｐ２におけるＳｃｏｒｅ２の方が、ユーザの選択傾向を反映した良さ（Ｓｃｏｒｅ）が大きい。
【００５０】
平面Ｐ１、Ｐ２の平面の式について、Ｐ１：α０×Ｌｉｆｅ＋β０×Ｃｏｓｔ＋ｙ０、Ｐ２：α１×Ｌｉｆｅ＋β１×Ｃｏｓｔ＋ｙ１とする。式（１）により、平面Ｐ１、Ｐ２のスコアはＷ０×（α０×Ｌｉｆｅ＋β０×Ｃｏｓｔ＋ｙ０）＋（１−Ｗ０）（α１×Ｌｉｆｅ＋β１×Ｃｏｓｔ＋ｙ１）である（０≦Ｗ０≦１）。
【００５１】
ユーザの選択傾向を反映した対象のアイテムは上述した平面Ｐ１、Ｐ２の平面間に存在する。図９は、計算した平面（Ｐ１、Ｐ２）を２次元に射影した例を説明する説明図である。図９に示すように、ユーザの選択傾向を反映した対象のアイテムは、平面Ｐ１、Ｐ２間の領域を価格と寿命の平面に射影した範囲１４３に含まれる。
【００５２】
図１０は、アイテム−スコアテーブル１２５の一例を示す図である。図１０に示すように、アイテム−スコアテーブル１２５には、各アイテムを識別する情報（例えばＧ０、Ｅ２などのアイテム名）とともに、Ｓ２５において求めたスコアが格納される。
【００５３】
図１に戻り、条件設定部７０は、ユーザ検索条件１１２に対して緩和した条件（緩和条件）の設定を、入力装置などを介してユーザより受け付ける。条件設定部７０は、設定された緩和条件を推奨部８０に出力する。
【００５４】
例えば、条件設定部７０は、ユーザ検索条件１１２の範囲外として許容する範囲を緩和条件としてユーザより受け付ける。一例として、条件設定部７０は、ユーザ検索条件１１２の初期条件（デフォルト）に対する増加（＋）または減少（−）での許容範囲（％）の設定を受け付ける。なお、緩和条件の内容については、初期条件に対する割合だけでなく、具体的な数値であってもよく、特に限定しない。
【００５５】
推奨部８０は、アイテム情報１１３の中でユーザ検索条件１１２に対応するアイテムを推奨アイテム候補テーブル１３０に記述して出力する。具体的には、推奨部８０は、アイテム候補テーブル１２３に記述されたアイテムをユーザ検索条件１１２に該当するアイテムとして推奨アイテム候補テーブル１３０に記述する。また、推奨部８０は、アイテム−スコアテーブル１２５および条件設定部７０からの緩和条件を参照し、ユーザ検索条件１１２を満たさないアイテムの中でスコア算出部６０が算出したスコアが所定の条件を満たすアイテムを推奨アイテム候補テーブル１３０に記述する。なお、推奨部８０は、ユーザ検索条件１１２に該当するアイテムおよびユーザ検索条件１１２を満たさないアイテムの中でスコアが所定の条件を満たすアイテムを、フラグ等を付与することで互いに識別可能に格納する。
【００５６】
出力部９０は、推奨アイテム候補テーブル１３０に記述されたアイテムをユーザに対して推奨するアイテムとして表示する表示データを生成し、ディスプレイなどの出力装置に出力する。したがって、出力装置の表示画面には、表示データをもとにユーザに対して推奨するアイテムが表示されることとなる。
【００５７】
なお、出力部９０は、推奨アイテム候補テーブル１３０において順番付けされているアイテムについて、順番に対応した表示（順番順にアイテムを列挙する表示など）を行う表示データを生成する。これにより、ユーザは、例えばアイテムの推奨順などを容易に認識できる。
【００５８】
また、出力部９０は、ユーザ検索条件１１２に該当するアイテムおよびユーザ検索条件１１２を満たさないアイテムの中でスコアが所定の条件を満たすアイテムについて、別の表示態様（例えば異なる表示領域への表示）などで、区分けして表示する表示データを生成する。これにより、ユーザは、例えばユーザ検索条件１１２に該当するアイテムと、ユーザ検索条件１１２を満たさないアイテムの中でスコアが所定の条件を満たすアイテムとの区分けを容易に認識できる。
【００５９】
図１１は、推奨アイテム候補テーブル１３０を生成して出力する処理を例示するフローチャートである。図１１に示すように、処理が開始されると、推奨部８０は、条件設定部７０の設定をもとに、ユーザ検索条件１１２における初期条件を緩和した緩和条件を決定する（Ｓ３１）。
【００６０】
次いで、推奨部８０は、アイテム情報１１３を参照し、アイテム−スコアテーブル１２５に記述された超平面間のアイテム（部品）から緩和条件に合致したアイテムを抽出する（Ｓ３２）。これにより、ユーザ検索条件１１２外のアイテムの中で、緩和条件に合致するアイテムが選び出されることとなる。
【００６１】
次いで、推奨部８０は、Ｓ３２で抽出したアイテムについて、スコアが高い順番にソートする（Ｓ３３）。次いで、推奨部８０は、ユーザ検索条件１１２に対応するアイテムと、ユーザ検索条件１１２を満たさないアイテムの中でスコアが高い順にソートされたアイテムとを含む推奨アイテム候補テーブル１３０を生成する（Ｓ３４）。
【００６２】
次いで、出力部９０は、生成された推奨アイテム候補テーブル１３０に記述されたアイテムを、ユーザに対して推奨するアイテムとして表示する表示データを生成して出力する（Ｓ３５）。
【００６３】
図１２は、表示画面Ｇ例を説明する説明図である。図１２に示すように、表示画面Ｇは、検索条件Ｇ１、制約条件Ｇ２、緩和条件Ｇ３、抽出結果Ｇ４ａ、Ｇ４ｂを有する。検索条件Ｇ１、制約条件Ｇ２は、ユーザ検索条件１１２として入力される条件である。具体的には、検索条件Ｇ１は、耐温度、誤差などの要素における数値範囲の条件である。制約条件Ｇ２は、値の大小によって良い／悪いについての方向（利益）がある要素（寿命、価格など）の値を制約する条件である。緩和条件Ｇ３は、ユーザ検索条件１１２に対する緩和した条件である。
【００６４】
抽出結果Ｇ４ａ、Ｇ４ｂは、推奨アイテム候補テーブル１３０をもとに表示される、ユーザに対して推奨するアイテムの抽出結果である。例えば、抽出結果Ｇ４ａは、ユーザ検索条件１１２を満たさないアイテムの中でスコアの高い順に抽出したアイテムの抽出結果である。また、抽出結果Ｇ４ｂは、ユーザ検索条件１１２に該当するアイテムの抽出結果である。ユーザは、抽出結果Ｇ４ａ、Ｇ４ｂを参照することで、入力されたユーザ検索条件１１２に対応する推奨アイテムを容易に認識できる。また、ユーザは、抽出結果Ｇ４ａを確認することで、入力されたユーザ検索条件１１２を満たさないアイテムの中でスコアの高いアイテムを容易に見つけ出すことができ、別の検索条件を入れて検索を繰り返すことなく、好適なアイテムを見つけることができる。
【００６５】
（動作例）
次に、情報抽出装置１における具体的な動作例について説明する。この動作例において、検索対象とするアイテムは電子部品（抵抗）とする。また、検索条件として、耐温度１００℃以上、抵抗誤差５％以下とする条件（固定条件）と、寿命７年以上、価格５．０円以下の条件（最適化条件）とが入力されるものとする。
【００６６】
図１３は、動作例におけるパレート生成を説明する説明図である。図１３に示すように、パレート生成部４０は、入力された検索条件１５０を満たす制約の中でパレート生成を行い、パレート曲線１４０を得る。そして、パレート生成部４０は、パレート曲線１４０上のアイテム（Ａ０、Ｐ３、Ｂ０）を得る。また、過去履歴調整部５０は、ユーザが過去に選択したアイテムについて、パレート曲線１４０上に対応するアイテムへと置き換える履歴調整を行う。
【００６７】
図１４は、動作例における履歴調整を説明する説明図である。図１４に示すように、過去履歴調整部５０は、ユーザ（Ｕ１）が過去に選択したアイテム（例えばＣ０）について、パレート曲線１４０上に対応するアイテム（例えばＰ３）へ置き換える。
【００６８】
次いで、スコア算出部６０は、履歴調整によりユーザの過去の選択順を反映したパレート曲線１４０上の部品をもとに、選択フラグが「Ｓｅｌｅｃｔ」の部品と、選択フラグが「Ｒｅｆｅｒ」である部品とを通る超平面を複数求める。次いで、スコア算出部６０は、求めた各超平面により、ユーザ検索条件１１２を満たさない部品ごとのスコアを求める。このスコアをもとに、情報抽出装置１は、ユーザ検索条件１１２を満たさない部品の中からユーザに推奨するアイテム候補を得る。
【００６９】
図１５は、動作例における各平面によるアイテム候補を説明する説明図である。図１５では、アイテムにおける２つの要素（価格（Ｃｏｓｔ）と寿命（Ｌｉｆｅ））から作られる平面Ｐ３、Ｐ４を例示している。図１５に示すように、平面Ｐ３は、「Ｓｅｌｅｃｔ」のアイテム（Ｐ３）と、「Ｒｅｆｅｒ」のアイテム（Ａ０）とを通る平面である。平面Ｐ４は、「Ｓｅｌｅｃｔ」のアイテム（Ｐ３）と、「Ｒｅｆｅｒ」のアイテム（Ｂ２）とを通る平面である。
【００７０】
例えば、情報抽出装置１では、平面Ｐ３上の検索条件１５０外に対応する範囲１４２のアイテム（Ｒ０）がユーザに推奨するアイテム候補とされる。また、平面Ｐ４上の検索条件１５０外に対応する範囲１４２のアイテム（Ｒ１）がユーザに推奨するアイテム候補とされる。また、平面Ｐ３、Ｐ４間のＷ０＝０．５にあるアイテム（Ｒ２）がユーザに推奨するアイテム候補とされる。
【００７１】
図１６は、動作例におけるアイテム候補のスコアを説明する説明図である。図１６に示すように、スコア算出部６０は、上述したアイテム（Ｒ０〜Ｒ２）のそれぞれについて、式（１）をもとにスコアを求め、アイテム−スコアテーブル１２５を生成する。次いで、推奨部８０は、生成されたアイテム−スコアテーブル１２５をもとに、ユーザ検索条件１１２を満たさないアイテム（Ｒ０〜Ｒ２）を、スコアの高い順（Ｒ０→Ｒ１→Ｒ２）に表示する表示データを出力する。
【００７２】
（変形例）
上述した実施形態では、スコア算出部６０が算出したスコア順にアイテムをソートする場合を例示した。しかしながら、アイテムのソートは、例えば、ユーザが好適なアイテムを見つけやすくなるものであれば、特に限定しない。変形例では、このアイテムのソートの別例として、ユーザ検索条件１１２を満たさない度合いを考慮したソートの例を説明する。
【００７３】
図１７は、推奨アイテム候補テーブル１３０を生成して出力する処理の変形例を示すフローチャートである。なお、図１７の処理において、図１１に例示したＳ３１、Ｓ３２の処理は実行済であるものとする。
【００７４】
図１７に示すように、処理が開始されると、出力部９０は、アイテム−スコアテーブル１２５から最終選択品（選択フラグが「Ｓｅｌｅｃｔ」のアイテム）のスコアを抽出する（Ｓ３１ａ）。次いで、出力部９０は、Ｓ３１ａで抽出したスコアと、アイテム−スコアテーブル１２５より得られる、超平面間の初期条件外の対象アイテム（Ｓ３２において抽出したアイテム）のスコアとの差分を算出する（Ｓ３２ａ）。次いで、出力部９０は、スコアの差分が大きい順番に対象アイテムをソートし（Ｓ３３ａ）、Ｓ３４へ処理を進める。
【００７５】
これにより、情報抽出装置１では、ユーザ検索条件１１２を満たさないアイテムについて、選択フラグが「Ｓｅｌｅｃｔ」のアイテムに対して、スコアの差分が大きい順にソートされた抽出結果が出力されることとなる。これにより、ユーザは、例えばユーザ検索条件１１２から離れているアイテムを容易に見つけることができる。
【００７６】
ところで、上記実施形態で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、上記実施形態と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。
【００７７】
図１８は、情報抽出プログラム３５１を実行するコンピュータ３００を示す図である。図１８に示すように、コンピュータ３００は、利用者からデータや各種設定などを受け付ける入力装置３１０と、コンピュータの状況などを通知する出力装置３２０とを有する。また、コンピュータ３００は、他の装置とデータを送受信するネットワークインターフェース３３０と、媒体読取装置３４０と、ＨＤＤ３５０と、ＲＡＭ３６０と、ＣＰＵ３７０と、バス３８０とを有する。そして、各装置３１０〜３７０それぞれは、バス３８０に接続される。
【００７８】
ここで、図１８に示すように、ＨＤＤ３５０には、図１に例示した各部と同様の機能を発揮する情報抽出プログラム３５１が予め記憶されている。そして、ＣＰＵ３７０は、情報抽出プログラム３５１をＲＡＭ３６０に展開して、情報抽出プロセス３７１として実行する。すなわち、情報抽出プロセス３７１は、入力部１０、フラグ付与部２０、類似ユーザ抽出部３０、パレート生成部４０、過去履歴調整部５０、スコア算出部６０、条件設定部７０、推奨部８０および出力部９０と同様の動作を実行する。
【００７９】
ところで、上述した情報抽出プログラム３５１は、必ずしもＨＤＤ３５０に記憶させておかなくてもよい。例えば、コンピュータ３００の媒体読取装置３４０に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯディスク、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に記憶させておくようにしてもよい。また、コンピュータ３００の内外に備えられるハードディスクドライブ（ＨＤＤ）などの「固定用の物理媒体」に記憶させておいてもよい。さらに、公衆回線、インターネット、ＬＡＮ、ＷＡＮ（Wide  Area  Network）などを介してコンピュータ３００に接続される「他のコンピュータシステム」に記憶させておいてもよい。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。
【００８０】
すなわち、この情報抽出プログラム３５１は、上記した「可搬用の物理媒体」、「固定用の物理媒体」、「通信媒体」などの記録媒体に、コンピュータ読み取り可能に記憶されるものである。そして、コンピュータ３００は、このような記録媒体から情報抽出プログラム３５１を読み出して実行することで上述した実施形態と同様の機能を実現する。なお、この他の実施形態でいうプログラムは、コンピュータ３００によって実行されることに限定されるものではない。例えば、他のコンピュータシステムまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、同様に機能を実現できる。
【符号の説明】
【００８１】
１…情報抽出装置
１０…入力部
２０…フラグ付与部
３０…類似ユーザ抽出部
４０…パレート生成部
５０…過去履歴調整部
６０…スコア算出部
７０…条件設定部
８０…推奨部
９０…出力部
１１０…ユーザ過去アイテム選定履歴
１１１…ユーザ情報
１１２…ユーザ検索条件
１１３…アイテム情報
１２０…ユーザ過去アイテム選定履歴テーブル
１２１…類似ユーザテーブル
１２２…類似ユーザ過去アイテム選定履歴テーブル
１２３…アイテム候補テーブル
１２４…パレート履歴テーブル
１２５…アイテム−スコアテーブル
１３０…推奨アイテム候補テーブル
１４０…パレート曲線
１４１〜１４３…範囲
１５０、Ｇ１…検索条件
Ｇ…表示画面
Ｇ２…制約条件
Ｇ３…緩和条件
Ｇ４ａ、Ｇ４ｂ…抽出結果
Ｐ１〜Ｐ４…平面
３００…コンピュータ
３５１…情報抽出プログラム
【図１】
0006601011.tif 000003
【図２】
0006601011.tif 000004
【図３】
0006601011.tif 000005
【図４】
0006601011.tif 000006
【図５】
0006601011.tif 000007
【図６】
0006601011.tif 000008
【図７】
0006601011.tif 000009
【図８】
0006601011.tif 000010
【図９】
0006601011.tif 000011
【図１０】
0006601011.tif 000012
【図１１】
0006601011.tif 000013
【図１２】
0006601011.tif 000014
【図１３】
0006601011.tif 000015
【図１４】
0006601011.tif 000016
【図１５】
0006601011.tif 000017
【図１６】
0006601011.tif 000018
【図１７】
0006601011.tif 000019
【図１８】
0006601011.tif 000020