(57)【特許請求の範囲】
【請求項１】
送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する取得部と、
前記取得部によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に設定される配信条件に該当する広告コンテンツであるか否かを前記送信元情報のうちユーザの属性を示す情報であるユーザ属性に基づいて判定する判定処理と、当該判定処理と並行して前記送信元情報のうちユーザの行動を示す情報である行動属性と前記広告コンテンツの特徴情報との一致の度合いを示すスコアを算出する算出処理とを１つの広告コンテンツ毎に行う演算制御部と、
前記演算制御部による処理の結果に基づいて、前記広告コンテンツ群の中から前記配信要求に対応する広告コンテンツを抽出する抽出部と、
を備えたことを特徴とする抽出装置。
【請求項２】
前記演算制御部は、
前記判定処理として、予め前記広告コンテンツ毎に設定される論理演算の条件式によって表される前記配信条件に対する論理演算を行う、
ことを特徴とする請求項１に記載の抽出装置。
【請求項３】
送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する取得部と、
前記取得部によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に対応付けて定められる論理演算の条件式によって表される配信条件に該当する広告コンテンツであるか否かを判定する判定処理と、当該判定処理と並行して前記送信元情報と前記広告コンテンツの特徴情報との一致の度合いを示すスコアを算出する算出処理とを１つの広告コンテンツ毎に行う演算制御部と、
前記演算制御部による処理の結果に基づいて、前記広告コンテンツ群の中から前記配信要求に対応する広告コンテンツを抽出する抽出部と、
を備えたことを特徴とする抽出装置。
【請求項４】
前記抽出部は、
前記演算制御部によって広告コンテンツ毎に算出されたスコアの高い順に、前記配信要求により要求された数の広告コンテンツを抽出候補として確保し、前記演算制御部による処理が終了した時点において、抽出候補として確保されている広告コンテンツを前記配信要求に対応する広告コンテンツとして抽出する、
ことを特徴とする請求項１〜３のいずれか一つに記載の抽出装置。
【請求項５】
前記演算制御部は、
前記広告コンテンツの特徴情報の要素に基づいて、処理対象となる広告コンテンツのスコアが、抽出候補として確保されている広告コンテンツのスコアの最小値を超えるか否かを判定し、前記最小値を超えないと判定される場合には、前記スコアの算出をスキップし、
前記抽出部は、
前記演算制御部によってスキップされた広告コンテンツについては抽出候補として確保しない、
ことを特徴とする請求項４に記載の抽出装置。
【請求項６】
前記演算制御部は、
前記判定処理の結果、前記配信条件を満たさないと判定された広告コンテンツについては前記算出処理をスキップし、
前記抽出部は、
前記演算制御部によって前記算出処理がスキップされた広告コンテンツについては抽出候補として確保しない、
ことを特徴とする請求項４又は５に記載の抽出装置。
【請求項７】
前記広告コンテンツ群に含まれる広告コンテンツを、予め広告コンテンツ毎に設定される所定の評価値順に整列させる整列部、
をさらに備え、
前記演算制御部は、
前記整列部によって整列された順に、前記判定処理および前記算出処理を行い、
前記抽出部は、
前記所定の評価値を含めて算出された広告コンテンツ毎のスコアに基づいて、前記配信要求に対応する広告コンテンツを抽出する、
ことを特徴とする請求項１〜６のいずれか一つに記載の抽出装置。
【請求項８】
前記演算制御部は、
前記広告コンテンツ群に対して、所定の整列順に前記配信条件を満たすか否かを論理演算することが可能な論理演算アルゴリズムを用いて論理演算を行う、
ことを特徴とする請求項２〜７のいずれか一つに記載の抽出装置。
【請求項９】
前記演算制御部は、
前記広告コンテンツがユーザに配信される対象から除外されるための除外条件を含む配信条件を用いて、前記判定処理を行う、
ことを特徴とする請求項１〜８のいずれか一つに記載の抽出装置。
【請求項１０】
送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する取得部と、
前記取得部によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に設定される配信条件に該当する広告コンテンツであるか否かを前記送信元情報のうちユーザの属性を示す情報であるユーザ属性に基づいて判定する判定部と、
前記判定部によって配信条件に該当する広告コンテンツであると判定された広告コンテンツに対して、前記送信元情報のうちユーザの行動を示す情報である行動属性と当該配信条件とは異なる情報を用いる前記広告コンテンツの特徴情報との一致の度合いを示すスコアを算出するスコア算出部と、
前記判定部および前記スコア算出部によって求められた各結果を併用することにより、前記配信要求に対応する広告コンテンツを抽出する抽出部と、
を備えたことを特徴とする抽出装置。
【請求項１１】
コンピュータが実行する抽出方法であって、
送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する取得工程と、
前記取得工程によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に設定される配信条件に該当する広告コンテンツであるか否かを前記送信元情報のうちユーザの属性を示す情報であるユーザ属性に基づいて判定する判定処理と、当該判定処理と並行して前記送信元情報のうちユーザの行動を示す情報である行動属性と前記広告コンテンツの特徴情報との一致の度合いを示すスコアを算出する算出処理とを１つの広告コンテンツ毎に行う演算制御工程と、
前記演算制御工程による処理の結果に基づいて、前記広告コンテンツ群の中から前記配信要求に対応する広告コンテンツを抽出する抽出工程と、
を含んだことを特徴とする抽出方法。
【請求項１２】
送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する取得手順と、
前記取得手順によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に設定される配信条件に該当する広告コンテンツであるか否かを前記送信元情報のうちユーザの属性を示す情報であるユーザ属性に基づいて判定する判定処理と、当該判定処理と並行して前記送信元情報のうちユーザの行動を示す情報である行動属性と前記広告コンテンツの特徴情報との一致の度合いを示すスコアを算出する算出処理とを１つの広告コンテンツ毎に行う演算制御手順と、
前記演算制御手順による処理の結果に基づいて、前記広告コンテンツ群の中から前記配信要求に対応する広告コンテンツを抽出する抽出手順と、
をコンピュータに実行させることを特徴とする抽出プログラム。
【請求項１３】
送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する取得部と、
前記取得部によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に対応付けて定められる論理演算の条件式によって表される配信条件に該当する広告コンテンツであるか否かを判定する判定部と、
前記判定部によって配信条件に該当する広告コンテンツであると判定された広告コンテンツに対して、前記送信元情報と当該配信条件とは異なる情報を用いる前記広告コンテンツの特徴情報との一致の度合いを示すスコアを算出するスコア算出部と、
前記判定部および前記スコア算出部によって求められた各結果を併用することにより、前記配信要求に対応する広告コンテンツを抽出する抽出部と、
を備えたことを特徴とする抽出装置。
【請求項１４】
コンピュータが実行する抽出方法であって、
送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する取得工程と、
前記取得工程によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に対応付けて定められる論理演算の条件式によって表される配信条件に該当する広告コンテンツであるか否かを判定する判定処理と、当該判定処理と並行して前記送信元情報と前記広告コンテンツの特徴情報との一致の度合いを示すスコアを算出する算出処理とを１つの広告コンテンツ毎に行う演算制御工程と、
前記演算制御工程による処理の結果に基づいて、前記広告コンテンツ群の中から前記配信要求に対応する広告コンテンツを抽出する抽出工程と、
を含んだことを特徴とする抽出方法。
【請求項１５】
送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する取得手順と、
前記取得手順によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に対応付けて定められる論理演算の条件式によって表される配信条件に該当する広告コンテンツであるか否かを判定する判定処理と、当該判定処理と並行して前記送信元情報と前記広告コンテンツの特徴情報との一致の度合いを示すスコアを算出する算出処理とを１つの広告コンテンツ毎に行う演算制御手順と、
前記演算制御手順による処理の結果に基づいて、前記広告コンテンツ群の中から前記配信要求に対応する広告コンテンツを抽出する抽出手順と、
をコンピュータに実行させることを特徴とする抽出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、抽出装置、抽出方法及び抽出プログラムに関する。
【背景技術】
【０００２】
近年、インターネットの飛躍的な普及に伴い、ネットワークを介して取得される情報に基づいた広告配信が盛んに行われている。このような広告配信においては、宣伝効果を高めるために、ユーザの嗜好、性別、年齢、住所、職業などのユーザ情報を予め登録しておき、ユーザ情報に対応する広告を選択的に配信するターゲティング広告配信が行われている。また、広告が表示されるウェブページなどのコンテンツを解析することで、そのコンテンツの特徴（テーマなど）に沿った広告を抽出するコンテンツ連動型の広告配信も行われている。さらに、広告主が広告コンテンツ自体にboolean（論理値）条件を付与することで、広告を出したいユーザを指定することのできる広告配信なども行われている。
【０００３】
ここで、より広告効果が高いと想定される広告コンテンツを抽出するために、コンテンツ連動型広告とターゲティング広告とを採用する比率を動的に調整する技術が知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２３０５１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来技術では、訴求効果の高い広告コンテンツを迅速に抽出することは困難であった。具体的には、上記の従来技術は、コンテンツ連動型広告とターゲティング広告という異なる抽出手法の比率を調整することはできるものの、異なる抽出手法を組み合わせることは困難であった。すなわち、従来では、広告コンテンツを抽出する手法はいずれかの手法に限られており、各手法の優位な点を利用するなど、各手法を組み合わせることで広告効果の高い広告コンテンツを抽出することが困難であった。また、仮に各手法を組み合わせたとしても、１つの手法を用いて広告抽出を行うよりも処理時間がかかるため、短時間で広告コンテンツを引き当てることが要求されるネット広告の分野では、採用することが難しいという問題があった。
【０００６】
本願は、上記に鑑みてなされたものであって、訴求効果の高い広告コンテンツを迅速に抽出することができる抽出装置、抽出方法及び抽出プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本願に係る抽出装置は、送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する取得部と、前記取得部によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に設定される配信条件に該当する広告コンテンツであるか否かを判定する判定処理と、前記送信元情報と前記広告コンテンツの特徴情報との一致の度合いを示すスコアを算出する算出処理とを１つの広告コンテンツ毎に行う演算制御部と、前記演算制御部による処理の結果に基づいて、前記広告コンテンツ群の中から前記配信要求に対応する広告コンテンツを抽出する抽出部と、を備えたことを特徴とする。
【発明の効果】
【０００８】
実施形態の一態様によれば、訴求効果の高い広告コンテンツを迅速に抽出することができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施形態に係る抽出処理の一例を示す図である。
【図２】図２は、実施形態に係る抽出処理システムの構成例を示す図である。
【図３】図３は、実施形態に係る広告装置の構成例を示す図である。
【図４】図４は、実施形態に係る広告情報記憶部の一例を示す図である。
【図５】図５は、実施形態に係るユーザ情報記憶部の一例を示す図である。
【図６】図６は、実施形態に係る演算テーブルの一例を示す図である。
【図７】図７は、実施形態に係る広告装置による抽出処理手順を示すフローチャートである。
【図８】図８は、広告装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【００１０】
以下に、本願に係る抽出装置、抽出方法及び抽出プログラムを実施するための形態（以下、「実施形態」と呼ぶ）について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る抽出装置、抽出方法及び抽出プログラムが限定されるものではない。また、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【００１１】
〔１．抽出処理の一例〕
まず、図１を用いて、実施形態に係る抽出処理の一例について説明する。図１は、実施形態に係る抽出処理の一例を示す図である。図１では、本願に係る抽出装置に対応する広告装置１００によって、ユーザ端末１０に配信される広告コンテンツの抽出処理が行われる例を示す。
【００１２】
広告装置１００は、ユーザ端末１０から送信されるクエリに基づいて、配信対象先であるユーザ端末１０に対して、適切にマッチングされた広告コンテンツを抽出するサーバ装置である。具体的には、広告装置１００は、広告主から入稿された広告コンテンツの中かから、特定のユーザに対して広告効果が高いと想定される広告コンテンツを所定の手法により検索する。そして、広告装置１００は、検索された広告コンテンツの中から、実際にユーザに配信される広告コンテンツを抽出し、抽出された広告コンテンツをユーザ端末１０に配信する。すなわち、広告主は、広告装置１００を利用することにより、広告配信を契機としてユーザから何らかの成果を得ることのできる可能性が高い広告コンテンツや、クリック率が高くなると想定される広告コンテンツ、言い換えれば、広告効果の高い広告コンテンツの配信を実現する。
【００１３】
なお、クエリには、ユーザ端末１０を操作するユーザの属性（例えば、性別や、年齢層など）や、ユーザの行動属性（例えば、ユーザが興味関心を抱いている趣味や、頻繁に閲覧するウェブページのカテゴリに関する情報など）が含まれる。かかるクエリは、広告コンテンツの配信要求の際にユーザ端末１０から広告装置１００に送信される。そして、広告装置１００は、送信されたクエリに基づいて、ユーザに適する広告コンテンツを抽出する。
【００１４】
広告装置１００は、配信候補の広告コンテンツに対して異なる２種類の手法によって広告コンテンツを検索することで、配信に適する広告コンテンツを抽出する。一つめの手法として、広告装置１００は、論理演算を用いた手法によって検索を行う。すなわち、広告装置１００が扱う広告コンテンツには、配信対象とするユーザに関する広告主の指定がなされる。かかる指定は、論理条件として広告コンテンツごとに設定されるものとする。ここでは、論理条件とは、ＡＮＤ、ＯＲ、ＮＯＴ等の論理演算（logical  operation、あるいは、boolean  operation）で用いられる条件式をいう。具体的には、広告主は、「１０代の男性」に広告コンテンツを配信させることを所望する場合には、「（年齢：１０代）  ＡＮＤ  （性別：男性）」といった条件式を広告コンテンツに設定する。広告装置１００は、例えば、ＣＮＦ（Conjunctive  Normal  Form）やＤＮＦ（Disjunctive  Normal  Form）アルゴリズム、あるいは、ｉｎｔｅｒｖａｌアルゴリズム等の公知のアルゴリズムを用いた論理演算を行い、条件式に適合する広告コンテンツか否かを判定する。これにより、広告主は、所望する条件に合致するユーザに広告コンテンツを配信させることができる。なお、上記の論理演算に関するアルゴリズムの詳細については、例えば、下記文献１及び文献２に開示されている。
【００１５】
（文献１）  Steven  Euijong  Whang、Hector  GarciaMolina、Chad  Brower、Jayavel  Shanmugasundaram、Sergei  Vassilvitskii、Erik  Vee、“Indexing  Boolean  Expressions”［online］、［２０１５年２月１３日検索］、インターネット（http://theory.stanford.edu/~sergei/papers/vldb09-indexing.pdf）
【００１６】
（文献２）  Marcus  Fontoura、Suhas  Sadanandan、Jayavel  Shanmugasundaram、Sergei  Vassilvitski、Erik  Vee、Srihari  Venkatesan、Jason  Zien、“Efficiently  Evaluating  Complex  Boolean  Expressions”［online］、［２０１５年２月１８日検索］、インターネット（http://theory.stanford.edu/~sergei/papers/sigmod10-index.pdf）
【００１７】
二つめの手法として、広告装置１００は、広告コンテンツ毎のスコアを算出し、算出されたスコアの大小に基づいて、配信に適した広告コンテンツを検索する。この場合、広告装置１００は、ＷＡＮＤアルゴリズムを用いた手法によって、広告コンテンツの検索を行う。ＷＡＮＤアルゴリズムでは、各広告コンテンツはクエリに対するスコアを有し、インデックスにクエリ毎のスコア最大値が記録される。そして、クエリ毎に設定されたクエリスコアと、インデックスに記録されたスコア最大値とに基づいて、広告コンテンツの検索目標数分の検索結果を得る。すなわち、スコア算出手法においては、ＷＡＮＤアルゴリズムを用いて、検索目標数である検索すべき広告コンテンツの数をｋ（ｋは任意の数）と置き、配信候補の広告コンテンツのうち、上位のスコアを有するＴｏｐ−ｋの数だけの広告コンテンツを検索する。
【００１８】
広告コンテンツの検索における具体的なスコアの算出法として、広告装置１００は、広告コンテンツが有する特徴情報を用いる。例えば、広告装置１００は、広告コンテンツ毎に設定される特徴情報である特徴量（特徴量は、例えば、キーワードと数値との組み合わせを要素とする）と、クエリとの一致の度合いをスコアとして算出する。具体的には、広告装置１００は、広告コンテンツの特徴量と、クエリに設定されたクエリスコアとの積をクエリ毎に算出し、算出された積を加算して、当該広告コンテンツに対するトータルスコアとする。このとき、ＷＡＮＤアルゴリズムでは、インデックスに各広告コンテンツのクエリに対する最大スコアが記録されているので、１つの広告コンテンツに対するトータルスコアが算出されると、そのトータルスコアを閾値として、他の広告コンテンツに対するトータルスコアの算出について、スキップ可能か否かを判定できる。これにより、迅速な広告コンテンツの検索が可能になる。なお、上記のＷＡＮＤアルゴリズムの詳細については、例えば、下記文献３に開示されている。
【００１９】
（文献３）  Deepak  Agarwal、Maxim  Gurevich、”Fast  top-k  retrieval  for  model  based  recommendation”、”WSDM  '12  Proceedings  of  the  fifth  ACM  international  conference  on  Web  search  and  data  mining”、アメリカ合衆国、”ACM  New  York”、2012年2月8日、483頁〜492頁
【００２０】
そして、広告装置１００は、ユーザ端末１０から送信されるクエリに基づいて、広告主が設定した条件に沿うか否かにより広告コンテンツを検索する手法（論理演算を用いた手法）と、ユーザの興味関心と広告コンテンツの内容とのマッチングをスコアにより表現することにより広告コンテンツを検索する手法（スコア算出を用いた手法）とを併用する。このように、広告装置１００は、上記の２種類の異なる手法を併用させることで、訴求効果の高い広告コンテンツを迅速に抽出する。以下、広告装置１００によって行われる広告コンテンツの抽出処理の一例を流れに沿って説明する。
【００２１】
図１に示すように、ユーザ端末１０は、広告装置１００に広告コンテンツの配信を要求する（ステップＳ１１）。かかる配信要求は、例えば、ユーザ端末１０が広告枠の含まれるウェブページを取得した際に、かかる広告枠への広告コンテンツの配信要求がユーザ端末１０から送信されることで発生する。
【００２２】
なお、ユーザ端末１０は、ウェブページを提供するウェブサーバへのアクセスに際して、ウェブブラウザとウェブサーバとの間で送受信される情報であるＨＴＴＰクッキー（HyperText  Transfer  Protocol  Cookie：以下、単に「クッキー」と表記する）を送受信する。これにより、ユーザ端末１０がインターネットにおいて利用したサービスの内容や、閲覧したウェブページに係る情報などのユーザの情報が記憶される。
【００２３】
広告装置１００は、例えばクッキーに保持されるユーザの情報に基づき、かかる情報をクエリとして取得する（ステップＳ１２）。図１の例では、広告装置１００は、広告コンテンツの配信を要求するユーザ端末１０のユーザから、「２」件分の広告コンテンツの配信を要求する内容のクエリを取得する。また、広告装置１００は、クエリを送信しているユーザのユーザ属性が「男性」であり、「３０代」であるといった情報をクエリとして取得する。また、広告装置１００は、ユーザの興味関心のある行動（行動属性）として、「スポーツジム」や「筋トレ」といった情報をクエリとして取得する。そして、広告装置１００は、ユーザの行動属性を示す単語とともに、ユーザの行動（例えば、ウェブページ閲覧の頻度や、ウェブショッピングにおける購買履歴など）に基づいて、「スポーツジム」や「筋トレ」といった単語毎に設定されるクエリスコアを合わせて取得する。図１の例では、ユーザ端末１０を操作するユーザには、「スポーツジム」に「３０」というクエリスコアが与えられており、「筋トレ」に「２０」というクエリスコアが与えられているものとする。
【００２４】
そして、広告装置１００は、取得したクエリに基づいて、論理演算による検索手法と、スコア算出による検索手法を組み合わせて、ユーザ端末１０に配信する広告コンテンツを抽出する（ステップＳ１３）。まず、広告装置１００は、広告コンテンツ毎に予め設定されたスタティックスコア（静的スコア）を降順にソート（整列）させる。そして、広告装置１００は、ソートさせた配信候補の広告コンテンツに対して、順に、論理演算とスコア算出の２つの手法により、配信に適した広告コンテンツを検索していく。図１では、広告装置１００が、入稿された広告コンテンツと、かかる広告コンテンツに対する処理結果が示されるデータテーブル５０を用いて広告コンテンツを検索する例を示す。図１に示すように、広告装置１００は、まず広告コンテンツＣ０１を処理し（ステップＳ１３−１）、次に、広告コンテンツＣ０２を処理し（ステップＳ１３−２）、次に、広告コンテンツＣ０３を処理する（ステップＳ１３−３）。ここでは、広告コンテンツＣ０１の検索に係る処理について説明する。
【００２５】
まず、広告装置１００は、広告主から広告コンテンツ毎に設定された条件式をユーザ端末１０のユーザが満たすか否かを論理演算し、結果を導出する。図１の例では、広告装置１００は、ユーザが、広告コンテンツＣ０１に設定された条件式である「（男性）  ＡＮＤ  （ＮＯＴ：年齢：１０代）  ＡＮＤ  （ＮＯＴ：年齢：６０代以上）」を満たすユーザか否かを演算する。図１の例では、ユーザは、広告コンテンツＣ０１に係る条件式を満たす。よって、広告装置１００は、広告コンテンツＣ０１を配信候補の広告コンテンツとして検索することができる。なお、広告装置１００は、上述したｉｎｔｅｒｖａｌアルゴリズムを利用することにより、ソートされた広告コンテンツをソートされた順に論理演算することができる。広告コンテンツＣ０１は、広告装置１００により論理条件に適合すると判定されたので、論理条件の項目に「○」が記憶される。
【００２６】
また、広告装置１００は、上記の論理演算と併用して、広告コンテンツのスタティックスコアと、広告コンテンツの特徴を表したキーワードとクエリとの内積との合計値との和を広告コンテンツのスコアとして算出する。すなわち、広告装置１００は、スタティックスコア順にソートされた広告コンテンツに対して、広告コンテンツ毎のスコアを算出していく。言い換えれば、広告装置１００は、クエリと広告コンテンツの特徴量との一致の度合いをスコアとして算出し、算出されたスコアに基づいて配信に適する広告コンテンツを検索する。
【００２７】
図１の例では、広告コンテンツＣ０１は、クエリに含まれる行動属性のうち、「スポーツジム」と「筋トレ」という単語に一致する特徴量である「スポーツジム」と「筋トレ」を有している。このとき、広告装置１００は、データテーブル５０における「特徴量」の項目に「○」を記憶する。続いて、広告装置１００は、実際に広告コンテンツＣ０１のスコアを算出する。図１の例では、広告装置１００は、広告コンテンツＣ０１に設定されたキーワードである「スポーツジム」と、クエリに含まれる「スポーツジム」との数値の積である「３０×１０＝３００」をスコアとして算出する。同様に、広告装置１００は、広告コンテンツＣ０１に設定されたキーワードである「筋トレ」と、クエリに含まれる「筋トレ」との数値の積である「２０×４０＝８００」をスコアとして算出する。そして、広告装置１００は、かかる内積とスタティックスコアとの和である「３００＋８００＋９０＝１１９０」をユーザに対する広告コンテンツＣ０１のスコアとして算出する。なお、かかる算出には、上述したＷＡＮＤアルゴリズムが用いられる。このようにして、広告装置１００は、高いスコア順に広告コンテンツを検索結果として導出する。図１での図示は省略しているが、広告コンテンツＣ０２や広告コンテンツＣ０３についても、それぞれスタティックスコアや、論理条件（条件式）や、特徴量が設定されている。そして、広告装置１００は、広告コンテンツＣ０２や広告コンテンツＣ０３について、順に、論理演算およびスコア算出を行う。そして、広告装置１００は、処理結果をデータテーブル５０に記憶する。
【００２８】
そして、広告装置１００は、広告コンテンツ毎の処理結果に基づいて、ユーザに配信する広告コンテンツを抽出する。例えば、広告装置１００は、上述した２つの検索手法により、配信候補の広告コンテンツ群の中から検索された広告コンテンツＣ０１および広告コンテンツＣ０３を、ユーザに配信する広告コンテンツとして抽出する。そして、広告装置１００は、抽出された広告コンテンツＣ０１および広告コンテンツＣ０３をユーザ端末１０に配信する（ステップＳ１４）。この場合、広告装置１００は、クエリに含まれている配信件数を満たす広告コンテンツを抽出し、配信する。例えば、ユーザ端末１０が「２」個の広告コンテンツを配信件数として要求していた場合には、広告装置１００は、「２」個の広告コンテンツを抽出し、配信する。
【００２９】
このように、広告装置１００は、広告コンテンツを抽出するためのクエリを取得し、取得されたクエリが、予め広告コンテンツごとに設定されている論理条件を満たすか否かを論理演算し、かつ、クエリと広告コンテンツの特徴量との一致の度合いを示すスコアを算出する。そして、広告装置１００は、論理演算およびスコア算出によって求められた各結果を併用することにより、クエリに対応する広告コンテンツを抽出する。
【００３０】
すなわち、実施形態に係る広告装置１００は、広告主の所望する条件式を満たす広告コンテンツか否かと、ユーザの興味関心に沿った広告コンテンツであるか否かと、２つの観点から評価された広告コンテンツを抽出することができる。これにより、広告装置１００は、より広告効果が高いと想定される広告コンテンツをユーザに配信させることができる。具体的には、広告装置１００は、コンバージョン（Conversion）に至る可能性の高いユーザや、ＣＴＲ（Click  Through  Rate）が高くなる可能性の高いユーザに対して、適切な広告コンテンツを配信することができる。また、広告装置１００は、上述の論理演算に係るアルゴリズムや、スコア算出に係るＷＡＮＤアルゴリズムを用いることにより、配信候補である広告コンテンツを順番に処理することができるので、配信件数であるｋ個の広告コンテンツを迅速に抽出することができる。結果として、広告装置１００によれば、訴求効果の高い広告コンテンツを迅速に抽出することができる。
【００３１】
〔２．抽出処理システムの構成〕
次に、図２を用いて、実施形態に係る広告装置１００が含まれる抽出処理システム１の構成について説明する。図２は、実施形態に係る抽出処理システム１の構成例を示す図である。図２に例示するように、実施形態に係る抽出処理システム１には、ユーザ端末１０と、広告主端末２０と、ウェブサーバ３０と、広告装置１００とが含まれる。これらの各種装置は、ネットワークＮ（例えば、インターネット等の通信ネットワーク）を介して、有線又は無線により通信可能に接続される。なお、抽出処理システム１を構成する各種装置の数は、図２に例示したものに限られない。例えば、図２に示した抽出処理システム１には、複数台のユーザ端末１０や、複数台の広告主端末２０や、複数台のウェブサーバ３０が含まれてもよい。
【００３２】
ユーザ端末１０は、例えば、デスクトップ型ＰＣ（Personal  Computer）や、ノート型ＰＣや、タブレット型端末や、携帯電話機、ＰＤＡ（Personal  Digital  Assistant）等の情報処理装置である。例えば、ユーザ端末１０は、ウェブサーバ３０にアクセスすることで、ウェブサーバ３０から提供されるウェブページを取得し、取得したウェブページを表示装置（例えば、液晶ディスプレイ）に表示する。そして、ユーザ端末１０は、ウェブページ内の広告枠に表示される広告コンテンツを配信させるため、広告コンテンツの配信要求であるクエリを広告装置１００に送信する。
【００３３】
広告主端末２０は、広告装置１００に広告配信を依頼する広告主によって利用される情報処理装置である。広告主端末２０は、広告主による操作に従って、広告装置１００に広告コンテンツを入稿する。また、広告主端末２０は、適切な配信対象に広告コンテンツを配信させるために、広告コンテンツに対して条件式を設定する。
【００３４】
なお、広告主は、広告主端末２０を用いて、広告装置１００に広告コンテンツを入稿したり、広告コンテンツに対してカテゴリを設定したりせずに、かかる入稿等を代理店に依頼する場合もある。この場合、広告装置１００に広告コンテンツを入稿等するのは代理店となる。以下では、「広告主」といった表記は、広告主だけでなく代理店を含む概念であり、「広告主端末」といった表記は、広告主端末だけでなく代理店によって利用される代理店装置を含む概念であるものとする。
【００３５】
ウェブサーバ３０は、ユーザ端末１０からアクセスされた場合に、各種ウェブページを提供するサーバ装置である。ウェブサーバ３０は、例えば、ニュースサイト、天気予報サイト、ショッピングサイト、ファイナンス（株価）サイト、路線検索サイト、地図提供サイト、旅行サイト、飲食店紹介サイト、ウェブブログなどに関する各種ウェブページを提供する。
【００３６】
なお、上述のように、ウェブサーバ３０によって配信されるウェブページには、広告コンテンツを表示するための広告枠が含まれる。そして、広告枠を含むウェブページには、広告枠に表示する広告コンテンツを取得するための広告取得命令が含まれる。例えば、ウェブページを形成するＨＴＭＬ（HyperText  Markup  Language）ファイル等には、広告装置１００のＵＲＬ等が広告取得命令として記述される。この場合、ユーザ端末１０は、ＨＴＭＬファイル等に記述されているＵＲＬにアクセスすることで、広告装置１００から広告コンテンツの配信を受ける。
【００３７】
広告装置１００は、上述のように、広告配信の要求を行うユーザから送信されるクエリに基づいて、広告効果が高いと想定される広告コンテンツを抽出し、抽出された広告コンテンツの配信を行うサーバ装置である。
【００３８】
なお、広告装置１００は、広告コンテンツの配信にあたって、ユーザ端末１０を識別し、広告コンテンツを配信するユーザ端末１０を特定する。具体的には、ユーザの識別は、ユーザ端末１０のウェブブラウザと広告装置１００との間でやり取りされるクッキーにユーザ識別情報を含めることによって行うことができる。ただし、ユーザを識別する手法は上記に限られない。例えば、ユーザ端末１０に専用のプログラムを設定し、かかる専用プログラムからユーザ識別情報を広告装置１００に送信させてもよい。
【００３９】
〔３．広告装置の構成〕
次に、図３を用いて、実施形態に係る広告装置１００の構成について説明する。図３は、実施形態に係る広告装置１００の構成例を示す図である。図３に示すように、広告装置１００は、通信部１１０と、記憶部１２０と、制御部１３０とを有する。なお、広告装置１００は、広告装置１００を利用する管理者等から各種操作を受け付ける入力部（例えば、キーボードやマウス等）や、各種情報を表示するための表示部（例えば、液晶ディスプレイ等）を有してもよい。
【００４０】
（通信部１１０について）
通信部１１０は、例えば、ＮＩＣ（Network  Interface  Card）等によって実現される。かかる通信部１１０は、ネットワークＮと有線又は無線で接続され、ネットワークＮを介して、ユーザ端末１０や、広告主端末２０や、ウェブサーバ３０との間で情報の送受信を行う。
【００４１】
（記憶部１２０について）
記憶部１２０は、例えば、ＲＡＭ（Random  Access  Memory)、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。図３に示すように、記憶部１２０は、広告情報記憶部１２１と、ユーザ情報記憶部１２２と、演算テーブル１２３とを有する。
【００４２】
（広告情報記憶部１２１について）
広告情報記憶部１２１は、広告主端末２０から入稿された広告コンテンツに関する情報を記憶する。また、広告情報記憶部１２１は、入稿された広告コンテンツに対応付けて、広告主から設定される条件式を記憶する。また、広告情報記憶部１２１は、広告コンテンツごとに設定される特徴量（例えば、広告コンテンツの内容を示すキーワードにより表される）を記憶する。ここで、図４に、実施形態に係る広告情報記憶部１２１の一例を示す。図４は、実施形態に係る広告情報記憶部１２１の一例を示す図である。図４に示した例では、広告情報記憶部１２１は、「広告コンテンツＩＤ」、「スタティックスコア」、「論理条件」、「特徴量」といった項目を有する。
【００４３】
「広告コンテンツＩＤ」は、広告主から広告装置１００に入稿された広告コンテンツを識別するための識別情報を示す。なお、実際にユーザ端末１０に配信される広告コンテンツのデータは、広告装置１００とは別に備えられた所定の広告配信サーバに記憶されてもよい。この場合、広告装置１００は、広告情報記憶部１２１に記憶された広告コンテンツＩＤに基づいて、外部の広告配信サーバに記憶された広告コンテンツを特定する。そして、広告装置１００は、広告配信サーバに対して、特定された広告コンテンツをユーザ端末１０に対して配信するよう制御する。
【００４４】
また、以下では、図４に示した広告コンテンツＩＤに記憶されている識別情報を広告コンテンツの参照符号として用いる場合がある。例えば、広告コンテンツＩＤ「Ｃ１１」によって識別される広告コンテンツを「広告コンテンツＣ１１」と表記する場合がある。
【００４５】
「スタティックスコア」は、広告コンテンツに設定されたスタティックスコアの値を示す。スタティックスコアは、広告コンテンツ毎に予め与えられるスコアであって、例えば、広告入札額などに基づいて設定される。なお、スタティックスコアは、広告装置１００の管理者等によって人為的に設定されてもよい。
【００４６】
「論理条件」は、広告コンテンツ毎に設定される、論理式を用いた条件式を示す。広告主は、広告コンテンツを入稿する際に論理条件を設定する。これにより、広告主は、広告コンテンツを配信させるユーザを選択したり、特定の属性を有するユーザのみに広告コンテンツを配信させるよう配信対象を絞り込んだりすることができる。
【００４７】
「特徴量」は、単語（キーワード）と数値の組み合わせによって、広告コンテンツの特徴を示す情報である。特徴量に係るキーワードは、広告コンテンツの内容を説明する単語であり、例えば、広告コンテンツが配信対象として抽出される際に参照される。また、特徴量に係る数値は、例えば、クエリスコアと掛け合わされることにより、広告コンテンツの抽出の際のスコアを形成する要素として用いられる。すなわち、特徴量に係る数値が高いほど、広告コンテンツの特徴を強く表すものといえる。特徴量は、入稿された広告コンテンツに含まれるテキストや画像が示す宣伝内容等に基づいて、自動的に設定される。例えば、特徴量は、広告コンテンツに含まれるテキストデータを形態素解析することによって得られる。なお、特徴量は、広告主や広告装置１００の管理者等によって人為的に設定されてもよい。
【００４８】
すなわち、図４では、広告コンテンツＩＤ「Ｃ１１」によって識別される広告コンテンツは、スタティックスコアが「８０」であり、設定されている論理条件が「（年齢：１０代ｏｒ２０代ｏｒ３０代）  ＡＮＤ  （性別：男性）」であり、特徴量は「サーフィン：１０」と「海：５」で表されていることを示している。
【００４９】
（ユーザ情報記憶部１２２について）
ユーザ情報記憶部１２２は、ユーザに関する情報を記憶する。具体的には、ユーザ情報記憶部１２２は、広告装置１００に広告コンテンツの配信を要求するユーザ属性や、行動属性に関する情報を記憶する。
【００５０】
ここで、図５に、実施形態に係るユーザ情報記憶部１２２の一例を示す。図５は、実施形態に係るユーザ情報記憶部１２２の一例を示す図である。図５に示した例では、ユーザ情報記憶部１２２は、「ユーザＩＤ」、「ユーザ属性」、「行動属性」といった項目を有する。
【００５１】
「ユーザＩＤ」は、ユーザ端末１０、及びユーザ端末１０を操作するユーザを識別する識別情報である。図５において、ユーザＩＤは、「Ｕ１１」と表記される。これは、ユーザ端末１０がユーザＩＤ「Ｕ１１」により識別されていることを示すとともに、ユーザ端末１０は「ユーザＵ１１」によって操作されていることを示すものとする。
【００５２】
「ユーザ属性」は、ユーザの属性情報を示す。ユーザ属性は、例えば、ユーザの性別や、年齢や、嗜好などに関する情報が含まれる。かかるユーザ属性は、広告装置１００による論理演算の要素として用いられる場合がある。
【００５３】
「行動属性」は、ユーザ（すなわち、ユーザ端末１０）の行動属性を示す。行動属性は、例えば、ネットワーク上で取得される情報に基づいて、ユーザの行動の特徴を示したものである。例えば、行動属性は、クッキー等に基づいてユーザの行動が分析された結果、かかるユーザの興味関心を示すと想定される情報であり、例えば、行動の内容と数値（スコア）によって示される。かかる行動属性がクエリとして用いられる場合、行動属性に含まれる行動の内容と、広告コンテンツが有する特徴量との一致が判定され、また、両者の数値の積が広告コンテンツのスコアとして算出される。なお、行動属性に係る行動内容と数値は、ユーザの行動履歴によって自動的に決定されるのみならず、人為的に設定されてもよい。また、行動属性に係る行動内容と数値は、広告コンテンツの配信が要求された際に、かかる広告枠を含むウェブページの特性などにより調整されてもよい。例えば、スポーツジムに関係するウェブページに表示する広告コンテンツが配信される場合には、ユーザから送信されるクエリに含まれる「スポーツジム」の数値が通常よりも上昇するなどの調整が行われてもよい。
【００５４】
すなわち、図５では、ユーザＩＤ「Ｕ１１」によって識別されるユーザ端末１０は、ユーザ属性が「男性」、「３０代」、「趣味：筋トレ」であり、行動属性が「スポーツジム：３０」、「筋トレ：２０」であることを示している。
【００５５】
なお、図５では図示することを省略したが、ユーザ情報記憶部１２２には、ユーザ端末１０自体を識別する情報であるデバイスＩＤ等を記憶してもよい。デバイスＩＤは、ユーザＩＤと異なり、端末装置自体に記録されている識別情報を示す。また、ユーザ情報記憶部１２２は、広告装置１００の内部に存在せず、例えば外部に接続された所定のログ記憶サーバなどであってもよい。この場合、後述する取得部１３２は、ネットワークＮを介して、所定のログ記憶サーバに記憶されているログを取得することができる。
【００５６】
（演算テーブル１２３について）
演算テーブル１２３は、広告コンテンツの抽出に用いられるデータテーブルである。演算テーブル１２３は、例えば、広告情報記憶部１２１に記憶されている広告コンテンツを、スタティックスコアの降順にソート（整列）させて形成される。また、演算テーブル１２３は、後述する論理演算部１３５や、スコア算出部１３６による処理の結果についても記憶する。ここで、図６に、実施形態に係る演算テーブル１２３の一例を示す。図６は、実施形態に係る演算テーブル１２３の一例を示す図である。図６に示した例では、演算テーブル１２３は、「広告コンテンツＩＤ」、「スタティックスコア」、「論理条件ヒット」、「特徴量ヒット」、「抽出対象」といった項目を有する。
【００５７】
「広告コンテンツＩＤ」および「スタティックスコア」は、図４で説明した同項目に対応する。
【００５８】
「論理条件ヒット」は、論理演算部１３５による論理演算の結果、広告コンテンツがクエリを満たしているか否かという結果を示す。例えば、広告コンテンツに設定された論理条件が、ユーザから送信されたクエリに含まれるユーザ属性を満たしている場合には、「論理条件ヒット」の項目には「○」が記憶される。一方、広告コンテンツに設定された論理条件が、ユーザから送信されたクエリに含まれるユーザ属性を満たしていない場合には、「論理条件ヒット」の項目には「×」が記憶される。
【００５９】
「特徴量ヒット」は、スコア算出部１３６による算出に際して、スコア算出部１３６による算出をスキップするか否か、という結果を示す。例えば、広告コンテンツを示す特徴量を示すキーワードがユーザから送信されたクエリに含まれており、かつ、スコア算出がスキップされない場合には、「特徴量ヒット」の項目には「○」が記憶される。一方、広告コンテンツを示す特徴量を示すキーワードがユーザから送信されたクエリに含まれていなかったり、ＷＡＮＤアルゴリズムを用いることにより、すでに上位のスコアを超えるスコアが算出されないことが自明であったりする場合、言い換えれば、スコア算出がスキップされる場合には、「特徴量ヒット」の項目には「×」が記憶される。
【００６０】
「抽出対象」は、広告コンテンツが抽出対象であるか否かを示す。広告コンテンツが抽出対象となるか否かについては、例えば、後述する抽出部１３７によって任意に設定されてよい。例えば、抽出部１３７が、「論理条件ヒット」を最低限の抽出対象とすると設定した場合には、「論理条件ヒット」の項目が「×」の広告コンテンツは、抽出対象とならないため、「×」が記憶される。なお、詳しくは後述するが、「抽出対象」の項目は、ユーザ端末１０に配信される広告コンテンツの数によっても、抽出対象とされるか否かが変化する場合がある。
【００６１】
すなわち、図６では、広告コンテンツＩＤ「Ｃ１３」によって識別される広告コンテンツは、スタティックスコアが「１００」であり、論理条件ヒットが「○」であり、特徴量ヒットが「○」であり、かかる処理結果を受けて、抽出対象として「○」であることを示している。
【００６２】
（制御部１３０について）
制御部１３０は、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等によって、広告装置１００内部の記憶装置に記憶されている各種プログラム（抽出プログラムの一例に相当）がＲＡＭを作業領域として実行されることにより実現される。また、制御部１３０は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現される。
【００６３】
図３に示すように、制御部１３０は、入稿受付部１３１と、取得部１３２と、整列部１３３と、演算制御部１３４と、抽出部１３７と、配信部１３８とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部１３０の内部構成は、図３に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部１３０が有する各処理部の接続関係は、図３に示した接続関係に限られず、他の接続関係であってもよい。
【００６４】
（入稿受付部１３１について）
入稿受付部１３１は、広告主端末２０から広告コンテンツの入稿を受け付ける。このとき、入稿受付部１３１は、広告コンテンツ毎に設定される条件式を広告コンテンツと対応付けて受け付ける。そして、入稿受付部１３１は、入稿される広告コンテンツを識別する広告コンテンツＩＤを設定したうえで、入稿される広告コンテンツに関する情報を広告情報記憶部１２１に記憶する。
【００６５】
なお、入稿受付部１３１は、広告コンテンツに設定される条件式について、必ずしも広告コンテンツの入稿と同時に受け付けることを要しない。すなわち、入稿受付部１３１は、広告コンテンツの入稿の後に条件式の設定を受け付けてもよいし、条件式の設定を受け付けた後に、条件式の内容の変更を受け付けてもよい。
【００６６】
（取得部１３２について）
取得部１３２は、送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する。具体的には、取得部１３２は、送信元情報として、配信要求の送信元であるユーザに関する情報や、ユーザ端末１０に保持される情報や、配信された広告コンテンツが表示されるウェブページに関する情報等を含む広告コンテンツの配信要求であるクエリをユーザ端末１０から取得する。より具体的には、取得部１３２は、クエリとして、ユーザが配信を希望する広告コンテンツの数や、ユーザの属性情報や、ユーザの行動属性に関する情報などを取得する。
【００６７】
また、取得部１３２は、取得した送信元情報をユーザ情報記憶部１２２に記憶する。すなわち、取得部１３２は、広告コンテンツの抽出に要する全ての情報をクエリとしてユーザ端末１０から取得するのでなく、予め記憶されていたユーザ情報をユーザ情報記憶部１２２から取得してもよい。例えば、取得部１３２は、送信されたクエリにユーザ属性に係る情報がない場合であっても、ユーザＩＤ等を参照することにより、過去に記憶されていたユーザ情報をユーザ情報記憶部１２２内で特定することにより、クエリを送信したユーザのユーザ属性を取得することができる。この場合、取得部１３２は、ウェブサーバ３０やウェブサーバ３０を管理する管理装置などと連携し、ユーザ端末１０に関する情報を逐次取得するようにしてもよい。具体的には、取得部１３２は、ユーザ端末１０がウェブサーバ３０にアクセスした際にやり取りされるクッキー等の情報を適宜取得してもよい。取得部１３２は、例えばユーザ情報として、ユーザの年齢や、性別や、興味や、居住地域等の情報を取得する。なお、広告装置１００は、広告コンテンツの配信要求を取得したものの、かかる配信要求から上記の送信元情報のようなクエリが取得できなかったり、取得したクエリが抽出処理を行うのに十分でなかったりする場合には、下記で説明する抽出処理を行わず、広告コンテンツを配信してもよい。この場合、広告装置１００は、特定のユーザにターゲディングしていない、任意のユーザに配信可能な広告コンテンツ広告を配信する。
【００６８】
（整列部１３３について）
整列部１３３は、配信候補である広告コンテンツ群に含まれる広告コンテンツを、予め広告コンテンツ毎に設定される所定の評価値順に整列（ソート）させる。具体的には、整列部１３３は、広告コンテンツ毎に設定される評価値であるスタティックスコアに基づいて、スタティックスコアの降順に広告コンテンツを整列させる。そして、整列部１３３は、スタティックスコアの降順に広告コンテンツを整列させることで形成されるデータテーブルを演算テーブル１２３として記憶する。
【００６９】
（演算制御部１３４について）
演算制御部１３４は、広告コンテンツに対して所定の演算処理を行う。例えば、演算制御部１３４は、取得部１３２によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に設定される配信条件に該当する広告コンテンツであるか否かを判定する判定処理と、送信元情報と広告コンテンツの特徴量との一致の度合いを示すスコアを算出する算出処理とを１つの広告コンテンツ毎に行う。図３に示すように、演算制御部１３４は、論理演算部１３５と、スコア算出部１３６とを含む。
【００７０】
（論理演算部１３５について）
論理演算部１３５は、取得部１３２によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に含まれる１つの広告コンテンツに対して、予め広告コンテンツ毎に設定される配信条件に該当する広告コンテンツであるか否かを判定する判定処理を行う。例えば、論理演算部１３５は、判定処理として、予め広告コンテンツ毎に設定される論理演算の条件式によって表される配信条件に対する論理演算を行う。すなわち、論理演算部１３５は、取得部１３２によって取得されたクエリが、予め広告コンテンツごとに設定される論理条件を満たすか否かを論理演算する。より具体的には、論理演算部１３５は、広告コンテンツに対して広告主が設定する論理条件である条件式に対して、ユーザ端末１０から送信されたクエリが適合するか否かを論理演算する。
【００７１】
このとき、論理演算部１３５は、広告コンテンツがユーザに配信される対象から除外されるための除外条件（ＮＯＴで示される演算式）を含む配信条件を用いて、判定処理を行うことができる。このように、論理演算部１３５は、広告主から指定されるカテゴリなどの単純な条件指定ではなく、除外条件である「ＮＯＴ」のような、複雑な処理を要する論理演算を広告コンテンツに対して行うことができる。これにより、論理演算部１３５によれば、広告主の所望するユーザに対して適切に広告コンテンツを抽出させることができる。
【００７２】
また、論理演算部１３５は、整列部１３３によって整列された抽出対象候補である複数の広告コンテンツに対して、整列順に論理条件を満たすか否かを論理演算する。すなわち、論理演算部１３５は、スタティックスコアが高い広告コンテンツほど優先的に論理演算を行うことになるため、広告コンテンツの抽出処理を迅速に行うことができる。
【００７３】
ここで、論理演算部１３５は、広告コンテンツ群に対して、所定の整列順に配信条件を満たすか否かを論理演算することが可能な論理演算アルゴリズムを用いて論理演算を行う。例えば、論理演算部１３５は、所定の整列順として、スタティックスコアの昇順、または降順に整列された複数の広告コンテンツに対して論理演算することが可能な論理演算アルゴリズムを用いる。例えば、論理演算部１３５は、上述したｉｎｔｅｒｖａｌアルゴリズムを用いて論理演算を行う。ｉｎｔｅｒｖａｌアルゴリズムによれば、複雑な論理条件が記載された条件式に対しても、ソートされた順に論理演算を行うことができるため、迅速な処理が可能となる。
【００７４】
（スコア算出部１３６について）
スコア算出部１３６は、取得部１３２によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、送信元情報と広告コンテンツの特徴情報との一致の度合いを示すスコアを算出する算出処理を行う。例えば、スコア算出部１３６は、ユーザ端末１０から送信されたクエリと、特徴情報である広告コンテンツの特徴量との一致の度合いを示すスコアを算出する。より具体的には、スコア算出部１３６は、クエリに含まれるユーザの行動属性に係る単語と、広告コンテンツに設定された特徴量に係るキーワードとが一致する場合に、クエリスコアであるユーザの行動属性に係る数値と、特徴量に係る数値との積を求めることにより、スコアを算出する。さらに、スコア算出部１３６は、求めた積と、広告コンテンツのスタティックスコアとの和を求めることで、広告コンテンツに係るトータルスコアを算出する。
【００７５】
また、スコア算出部１３６は、論理演算部１３５が整列部１３３によって整列された広告コンテンツに対して演算を行った場合、論理演算部１３５によって論理条件を満たすか否かを論理演算された広告コンテンツに対して、整列順にスコアを算出する。すなわち、スコア算出部１３６は、論理演算部１３５が論理演算を行うのと並行して、スタティックスコアの降順にソートされた広告コンテンツに対してスコアを算出する。かかる処理では、スコア算出部１３６は、上述のように、ＷＡＮＤアルゴリズムを用いることにより、整列された広告コンテンツの中から、スコアの算出対象とする広告コンテンツを効率的に選出する。例えば、スコア算出部１３６は、広告コンテンツの特徴情報の要素（ここでは、特徴量を形成する各単語と数値、また、インデックスに記憶されている各単語に対応する数値の最大値等が含まれる）に基づいて、処理対象となる広告コンテンツのスコアが、抽出候補として確保されている広告コンテンツのスコアの最小値を超えるか否かを判定し、かかる最小値を超えないと判定される場合には、スコアの算出をスキップする。具体的には、スコア算出部１３６は、１つの広告コンテンツ毎に処理を行う過程において、配信件数分の広告コンテンツを抽出候補として確保した時点において、抽出候補として確保されている広告コンテンツのスコアの最小値を閾値として、次に処理対象となる広告コンテンツのスコアが閾値を超えるか否かを判定し、閾値を超えないと判定される場合には、スコアの算出をスキップすることができる。これにより、スコア算出部１３６は、詳細なスコアを算出するまでもなく広告コンテンツの抽出処理を進めることができるので、迅速な抽出処理に資することができる。
【００７６】
また、スコア算出部１３６は、論理演算部１３５による論理演算の結果、論理条件を満たさないと判定された広告コンテンツに対して、スコアの算出をスキップすることができる。論理条件を満たさないと判定された広告コンテンツはユーザへの配信対象から除外されることが想定されるため、スコア算出部１３６は、かかるスキップ処理を行うことで処理工程を減らし、迅速な抽出処理に資することができる。なお、上記のようなスキップ処理が行われた場合には、演算制御部１３４は、処理対象を次の広告コンテンツに移行させる。
【００７７】
（抽出部１３７について）
抽出部１３７は、演算制御部１３４による処理の結果に基づいて、広告コンテンツ群の中から配信要求に対応する広告コンテンツを抽出する。すなわち、抽出部１３７は、論理演算部１３５およびスコア算出部１３６によって求められた各結果に基づいて、ユーザ端末１０から送信される配信要求であるクエリに対応する広告コンテンツを抽出する。例えば、抽出部１３７は、論理演算部１３５による論理演算の結果、広告主から設定された条件式を満たしていると判定された広告コンテンツであり、かつ、スコア算出部１３６によって算出されたトータルスコアが高い広告コンテンツを抽出する。このとき、抽出部１３７は、クエリに含まれる配信件数を参照し、ユーザ端末１０が所望する数の広告コンテンツを抽出する。
【００７８】
また、抽出部１３７は、演算制御部１３４によって広告コンテンツ毎に算出されたスコアの高い順に、配信要求により要求された数の広告コンテンツを抽出候補（キュー）として確保し、演算制御部１３４による処理が終了した時点において、抽出候補として確保されている広告コンテンツを配信要求に対応する広告コンテンツとして抽出する。この場合、演算制御部１３４による処理の終了とは、演算制御部１３４が広告コンテンツ群の全てを処理した場合に限られず、例えば、処理のために与えられる所定の時間が経過した場合や、予め設定された所定数の広告コンテンツを演算制御部１３４が処理し終えた時点などであってもよい。
【００７９】
ここで、図６に示した演算テーブル１２３を用いて、具体的な広告コンテンツの抽出処理について説明する。なお、以下では、図５に示すユーザＵ１１が、クエリとして、「配信件数」が「２」であり、ユーザ属性「男性、３０代、趣味：筋トレ」と、行動属性「スポーツジム：３０」と「筋トレ：２０」といった情報を広告装置１００に送信したものとする。また、広告装置１００は、ＷＡＮＤアルゴリズムによる算出を行うため、演算テーブル１２３において、広告コンテンツが有する特徴量の各要素の最大値をインデックスに記憶している。以下の例では、「スポーツジム」の最大値は「３０」であり、「筋トレ」の最大値は「２０」であるものと仮定する。
【００８０】
まず、論理演算部１３５は、広告コンテンツがスタティックスコアの降順にソートされた演算テーブル１２３において、データの先頭である広告コンテンツＣ１３に対して論理演算を行う。すなわち、論理演算部１３５は、クエリに含まれるユーザ属性「男性、３０代、趣味：筋トレ」が、広告コンテンツＣ１３の条件式である「（年齢：２０代ｏｒ３０代）  ＡＮＤ  （性別：男性）」を満たすか否かを判定する。この場合、クエリは条件式を満たすので、論理演算部１３５は、演算テーブル１２３の「論理条件ヒット」の項目に「○」を記憶させる。
【００８１】
続いて、スコア算出部１３６は、広告コンテンツＣ１３のスコアを算出する。具体的には、スコア算出部１３６は、クエリに含まれる行動属性「スポーツジム」と「筋トレ」と、広告コンテンツＣ１３の特徴量である「スポーツジム」と「筋トレ」との一致を判定する。そして、スコア算出部１３６は、演算テーブル１２３の「特徴量ヒット」の項目に「○」を記憶させる。
【００８２】
そして、スコア算出部１３６は、クエリの行動属性「スポーツジム：３０」と、広告コンテンツＣ１３の特徴量「スポーツジム：１０」との積を求める。また、スコア算出部１３６は、クエリの行動属性「筋トレ：２０」と、広告コンテンツＣ１３の特徴量「筋トレ：１０」との積を求める。そして、スコア算出部１３６は、求めた積と、スタティックスコア「１００」との和を求める。すなわち、スコア算出部１３６は、広告コンテンツＣ１３のトータルスコアとして、「３００＋２００＋１００＝６００」を算出する。そして、スコア算出部１３６は、「６００」というスコアを閾値として記憶する。
【００８３】
続いて、抽出部１３７は、論理演算部１３５およびスコア算出部１３６によって求められた各結果を併用することにより、広告コンテンツＣ１３が抽出対象の候補であるか否かを判定する。抽出部１３７は、広告コンテンツＣ１３が論理条件と特徴量がともにヒットしたことを受けて、演算テーブル１２３の「抽出対象」の項目に「○」を記憶させる。これは、抽出部１３７が、広告コンテンツＣ１３をユーザに配信させる広告コンテンツの候補としていることを意味する。そして、広告装置１００は、広告コンテンツＣ１３の次にソートされている広告コンテンツＣ１２の処理に移行する。
【００８４】
論理演算部１３５は、広告コンテンツＣ１２について論理演算を行う。すなわち、論理演算部１３５は、クエリに含まれるユーザ属性「男性、３０代、趣味：筋トレ」が、広告コンテンツＣ１２の条件式である「（年齢：１０代）  ＡＮＤ  （趣味：スポーツ）」を満たすか否かを判定する。この場合、クエリは条件式を満たさないので、論理演算部１３５は、演算テーブル１２３の「論理条件ヒット」の項目に「×」を記憶させる。
【００８５】
この場合、スコア算出部１３６は、クエリと広告コンテンツＣ１２の特徴量との一致を判定し、「特徴量ヒット」の項目に「○」を記憶させるものの、スコアの算出はスキップすることができる。これは、「論理条件ヒット」の項目に「×」が記憶されていることによる。この場合、抽出部１３７は、演算テーブル１２３の「抽出対象」の項目に「×」を記憶させる。そして、広告装置１００は、広告コンテンツＣ１２の次にソートされている広告コンテンツＣ１１の処理に移行する。
【００８６】
論理演算部１３５は、広告コンテンツＣ１１について論理演算を行う。すなわち、論理演算部１３５は、クエリに含まれるユーザ属性「男性、３０代、趣味：筋トレ」が、広告コンテンツＣ１１の条件式である「（年齢：１０代ｏｒ２０代ｏｒ３０代）  ＡＮＤ  （性別：男性）」を満たすか否かを判定する。この場合、クエリは条件式を満たすので、論理演算部１３５は、演算テーブル１２３の「論理条件ヒット」の項目に「○」を記憶させる。
【００８７】
そして、スコア算出部１３６は、クエリと広告コンテンツＣ１１の特徴量との一致を判定する。この場合、広告コンテンツＣ１１の特徴量は「サーフィン」と「海」であり、クエリとの一致がないため、スコア算出部１３６は、「特徴量ヒット」の項目に「×」を記憶させる。
【００８８】
なお、抽出部１３７が、広告コンテンツの抽出の最低条件として「論理条件ヒット」を設定している場合、この時点では、演算テーブル１２３の「抽出対象」の項目に「○」が記憶されてもよい。すなわち、抽出部１３７は、特徴量ヒットしていない広告コンテンツであっても、論理条件がヒットする広告コンテンツについては、算出処理をスキップさせることなく、少なくとも配信件数「２」を満たすまでは、抽出対象（キュー）として確保する。抽出部１３７は、この時点で、暫定的にトータルスコア「０」を閾値とする。これは、スコア算出部１３６は、広告コンテンツＣ１１に対してスコアの算出ができず（特徴量が一致しない場合には、スコア算出部１３６は、スタティックスコアとの和を求めなくてもよい）、かつ、広告コンテンツＣ１１が抽出候補として確保されたことによる。すなわち、抽出部１３７は、その後の処理において、トータルスコアが「０」より大きい広告コンテンツが抽出候補として確保された場合には、広告コンテンツＣ１１を抽出候補から除外する。言い換えれば、抽出部１３７は、その後の処理において、特徴量がヒットする広告コンテンツがあった場合には、トータルスコアが「０」としてキューに確保されている広告コンテンツＣ１１を抽出候補から除外することができる。
【００８９】
続いて、広告装置１００は、広告コンテンツＣ１１の次にソートされている広告コンテンツＣ１５の処理に移行する。
【００９０】
論理演算部１３５は、広告コンテンツＣ１５について論理演算を行う。すなわち、論理演算部１３５は、クエリに含まれるユーザ属性「男性、３０代、趣味：筋トレ」が、広告コンテンツＣ１５の条件式である「年齢：３０代」を満たすか否かを判定する。この場合、クエリは条件式を満たすので、論理演算部１３５は、演算テーブル１２３の「論理条件ヒット」の項目に「○」を記憶させる。
【００９１】
そして、スコア算出部１３６は、クエリと広告コンテンツＣ１５の特徴量との一致を判定する。この場合、広告コンテンツＣ１５の特徴量は「トレーニング」と「マラソン」であり、クエリとの一致がないため、スコア算出部１３６は、「特徴量ヒット」の項目に「×」を記憶させる。
【００９２】
この場合、抽出部１３７は、広告コンテンツＣ１５は「論理条件ヒット」を満たすものの、「抽出対象」の項目に「×」を記憶する。これは、以下の条件が満たされたことによる。まず、この時点において、抽出部１３７は、既に配信件数「２」の広告コンテンツを確保している。そして、演算制御部１３４による処理は、スタティックスコアの降順にソートされた広告コンテンツに対して順に実施されている。すなわち、広告コンテンツＣ１５が広告コンテンツＣ１１のスコアを超えることはないと考えられる。ゆえに、抽出部１３７は、広告コンテンツＣ１５がユーザＵ１１へ配信される対象となりえないと判定し、「抽出対象」の項目に「×」を記憶する。そして、広告装置１００は、広告コンテンツＣ１５の次にソートされている広告コンテンツＣ１６の処理に移行する。
【００９３】
論理演算部１３５は、広告コンテンツＣ１６について論理演算を行う。すなわち、論理演算部１３５は、クエリに含まれるユーザ属性「男性、３０代、趣味：筋トレ」が、広告コンテンツＣ１６の条件式である「趣味：筋トレ」を満たすか否かを判定する。この場合、クエリは条件式を満たすので、論理演算部１３５は、演算テーブル１２３の「論理条件ヒット」の項目に「○」を記憶させる。
【００９４】
そして、スコア算出部１３６は、クエリと広告コンテンツＣ１６の特徴量との一致を判定する。この場合、広告コンテンツＣ１６の特徴量は「スポーツジム」と「筋トレ」であり、クエリと一致するため、スコア算出部１３６は、「特徴量ヒット」の項目に「○」を記憶させる。この場合、スコア算出部１３６は、現時点でのトータルスコアの閾値である「０」を超えるスコアが算出されると判定可能なため、広告コンテンツＣ１６に対するスコアの算出処理を行う。
【００９５】
スコア算出部１３６は、クエリの行動属性「スポーツジム：３０」と、広告コンテンツＣ１６の特徴量「スポーツジム：８」との積を求める。また、スコア算出部１３６は、クエリの行動属性「筋トレ：２０」と、広告コンテンツＣ１６の特徴量「筋トレ：１０」との積を求める。そして、スコア算出部１３６は、求めた積と、スタティックスコア「６５」との和を求める。すなわち、スコア算出部１３６は、広告コンテンツＣ１６のトータルスコアとして、「２４０＋２００＋６５＝５０５」を算出する。そして、スコア算出部１３６は、トータルスコアが現時点での「６００」よりも小さいため、抽出候補の広告コンテンツのスコアのうち最小値である「５０５」を新たな閾値として記憶する。
【００９６】
そして、抽出部１３７は、広告コンテンツＣ１６が論理条件と特徴量がともにヒットしたことを受けて、演算テーブル１２３の「抽出対象」の項目に「○」を記憶させる。すなわち、抽出部１３７は、配信件数「２」を確保した以降の処理では、論理条件と特徴量がともにヒットした広告コンテンツのみを抽出対象とすればよいことになる。また、抽出部１３７は、この時点において、広告コンテンツＣ１１を抽出候補から除外し、演算テーブル１２３の「抽出対象」の項目を「×」に更新する。そして、広告装置１００は、広告コンテンツＣ１６の次にソートされている広告コンテンツＣ１４の処理に移行する。
【００９７】
論理演算部１３５は、広告コンテンツＣ１４について論理演算を行う。すなわち、論理演算部１３５は、クエリに含まれるユーザ属性「男性、３０代、趣味：筋トレ」が、広告コンテンツＣ１４の条件式である「性別：男性」を満たすか否かを判定する。この場合、クエリは条件式を満たすので、論理演算部１３５は、演算テーブル１２３の「論理条件ヒット」の項目に「○」を記憶させる。
【００９８】
そして、スコア算出部１３６は、クエリと広告コンテンツＣ１４の特徴量との一致を判定する。この場合、広告コンテンツＣ１４の特徴量は「スポーツジム」と「筋トレ」であり、クエリと一致するため、スコア算出部１３６は、「特徴量ヒット」の項目に「○」を記憶させる。
【００９９】
ここで、スコア算出部１３６は、現時点でのトータルスコアの閾値である「５０５」を広告コンテンツＣ１４のトータルスコアが超える可能性があるかを判定する。この場合、クエリと特徴量とは２つの項目で一致しており、かつ、インデックスに記憶されている「スポーツジム」の最大値は「３０」であり、「筋トレ」の最大値は「２０」であることから、スコア算出部１３６は、広告コンテンツＣ１４のトータルスコアが「５００」を超える可能性があると判定する。この場合、スコア算出部１３６は、広告コンテンツＣ１４のトータルスコアの算出処理に移行する。
【０１００】
なお、スコア算出部１３６は、クエリと広告コンテンツＣ１４の特徴量とが「筋トレ」のみで一致していたと仮定した場合には、ＷＡＮＤアルゴリズムを用いることにより、スコアの算出処理をスキップすることができる。これは、予めインデックスに記憶されている「筋トレ」の最大値は「２０」であることがわかっているので、たとえスコア算出部１３６が広告コンテンツＣ１４のトータルスコアを算出したとしても、閾値「５０５」を超えることができないことが自明であることによる。具体的には、たとえ広告コンテンツＣ１４の特徴量が「筋トレ：２０」という最大値であったとしても、スコア算出部１３６は、クエリスコア「筋トレ：２０」と、広告コンテンツＣ１４の特徴量「筋トレ：２０」との積である「４００」と、スタティックスコア「６０」との和である「４６０」を算出することになる。すなわち、広告コンテンツＣ１４の特徴量「筋トレ」の数値がどのような値であっても、閾値「５０５」を超えることはないことが自明であり、算出をスキップしてよいことになる。なお、仮に算出処理がスキップされた場合には、抽出部１３７は、かかる広告コンテンツについては抽出候補として確保しない。
【０１０１】
図６の例では、スコア算出部１３６は、閾値「５０５」を超える可能性があると判定しているため、広告コンテンツＣ１４のトータルスコアを算出する。スコア算出部１３６は、クエリの行動属性「スポーツジム：３０」と、広告コンテンツＣ１４の特徴量「スポーツジム：３０」との積を求める。また、スコア算出部１３６は、クエリの行動属性「筋トレ：２０」と、広告コンテンツＣ１４の特徴量「筋トレ：１０」との積を求める。そして、スコア算出部１３６は、求めた積と、スタティックスコア「６０」との和を求める。すなわち、スコア算出部１３６は、広告コンテンツＣ１４のトータルスコアとして、「９００＋２００＋６０＝１１６０」を算出する。そして、スコア算出部１３６は、トータルスコアが現時点での「５０５」という閾値を超えたため、現時点での最小値である「６００」を新たな閾値として記憶する。
【０１０２】
抽出部１３７は、トータルスコアの高い広告コンテンツほど、優先的にユーザＵ１１に配信される広告コンテンツとして適しているものと判定する。例えば、この時点で演算制御部１３４による処理が終了したと仮定した場合、抽出部１３７は、抽出候補として確保されている広告コンテンツＣ１４（トータルスコア：１１６０）および広告コンテンツＣ１３（トータルスコア：６００）をユーザＵ１１が送信したクエリに対応する広告コンテンツとして抽出する。また、抽出部１３７は、この時点において、広告コンテンツＣ１６を抽出候補から除外し、演算テーブル１２３の「抽出対象」の項目を「×」に更新する。
【０１０３】
このように、広告装置１００は、入稿された広告コンテンツについて、スタティックスコアに基づき整列させたうえで、順に抽出処理を行う。このため、広告装置１００は、１つの広告コンテンツ毎に、順に抽出対象を導出することができるので、不要な処理をスキップさせつつ、適した広告コンテンツを抽出できる。これにより、広告装置１００は、訴求効果の高い広告コンテンツを迅速に抽出することができる。
【０１０４】
（配信部１３８について）
配信部１３８は、取得部１３２によって取得された広告コンテンツの配信要求であるクエリを送信したユーザ端末１０に、抽出部１３７によって抽出された広告コンテンツを配信する。
【０１０５】
なお、実際にユーザ端末１０に配信される広告コンテンツのデータ自体は、広告装置１００に係る記憶部１２０内に記憶されていなくてもよい。例えば、配信部１３８は、外部に備えられた所定の広告配信サーバに広告配信の制御命令を送信することで、抽出部１３７が抽出した広告コンテンツをユーザ端末１０に配信させてもよい。
【０１０６】
〔４．抽出処理手順〕
【０１０７】
次に、図７を用いて、実施形態に係る広告装置１００による抽出処理の手順について説明する。図７は、実施形態に係る広告装置１００による抽出処理手順を示すフローチャートである。
【０１０８】
図７に示すように、取得部１３２は、ユーザ端末１０から広告コンテンツの配信要求を受け付ける（ステップＳ１０１）。そして、取得部１３２は、配信要求とともに、送信元情報が含まれるクエリを取得したか否かを判定する（ステップＳ１０２）。ここで、クエリを取得した場合には（ステップＳ１０２；Ｙｅｓ）、取得部１３２は、取得したクエリを整列部１３３に送り、広告コンテンツの抽出処理を開始させる。そして、整列部１３３は、スタティックスコアの降順に広告コンテンツを整列させる（ステップＳ１０３）。
【０１０９】
続いて、演算制御部１３４は、整列された広告コンテンツに対して、順に、論理演算とスコア算出を実施する（ステップＳ１０４）。そして、抽出部１３７は、演算制御部１３４による各処理の結果に基づいて、広告コンテンツを抽出する（ステップＳ１０５）。続いて、配信部１３８は、抽出部１３７によって抽出された広告コンテンツを、クエリを送信したユーザ端末１０に配信する（ステップＳ１０６）。
【０１１０】
一方、ステップＳ１０２において、クエリ（送信元情報）を取得しない場合には（ステップＳ１０２；Ｎｏ）、配信部１３８は、特定のユーザにターゲティングされないような、任意のユーザに配信可能な広告コンテンツを配信する（ステップＳ１０７）。なお、クエリが取得されない場合とは、クエリに係る情報の全てが取得されない場合のみならず、送信元情報の一部が取得されたものの、他の情報が不足することにより、実施形態に係る処理が実現されない場合等を含む。以上により、広告装置１００による抽出処理は完了する。
【０１１１】
〔５．変形例〕
上述した広告装置１００は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、広告装置１００の他の実施形態について説明する。
【０１１２】
〔５−１．一斉処理〕
上述した実施形態では、広告装置１００は、予めスタティックスコアの降順にソートされた広告コンテンツに対して処理を行う例を示した。しかし、広告装置１００は、入稿された広告コンテンツ群に対して、一斉に論理演算を行い、かかる結果を受けて、スコア算出をおこなってもよい。
【０１１３】
すなわち、広告装置１００は、広告主から設定された条件式を満たすことを抽出の最低条件とする場合において、入稿された広告コンテンツ群に対して論理演算を実施する。この場合、広告装置１００は、整列された広告コンテンツに対して論理演算を行うことを要しないので、上述したｉｎｔｅｒｖａｌアルゴリズムによらず、例えば、ＣＮＦや、ＤＮＦアルゴリズムを用いて論理演算を行うことができる。そして、広告装置１００は、かかる結果を受け、条件式を満たす広告コンテンツに対して、スコア算出処理を実施する。
【０１１４】
このように、広告装置１００は、送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する取得部１３２と、取得部１３２によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に設定される配信条件に該当する広告コンテンツであるか否かを判定する判定部（ここでは、論理演算部１３５が対応する）と、判定部によって配信条件に該当する広告コンテンツであると判定された広告コンテンツに対して、送信元情報と広告コンテンツの特徴量との一致の度合いを示すスコアを算出するスコア算出部１３６と、判定部およびスコア算出部１３６によって求められた各結果を併用することにより、配信要求に対応する広告コンテンツを抽出する抽出部１３７とを含む。
【０１１５】
これにより、広告装置１００は、ｉｎｔｅｒｖａｌアルゴリズムのような、整列された処理対象に対して迅速に論理演算を行うことのできるアルゴリズムに限らず、種々の論理演算アルゴリズムを用いることができる。そして、広告装置１００は、かかる手法によっても、所定の広告コンテンツについて、論理演算とスコア算出という２種の判定を行うことができるので、広告効果の高い広告コンテンツをユーザに配信させることができる。なお、かかる手法では、ＣＮＦ等の論理演算アルゴリズムを用いることによって処理時間を短縮することができるので、２種の判定を行った場合でも、処理の迅速性が確保できる。
【０１１６】
〔５−２．論理条件〕
上述した実施形態では、広告装置１００は、広告主から設定された条件式を満たす広告コンテンツを抽出することを最低条件とする例を示した。しかしながら、広告装置１００は、条件式を満たす広告コンテンツを抽出の条件としなくてもよい。かかる条件は任意に取り決め可能であり、広告装置１００は、条件式を満たさない広告コンテンツであっても、抽出対象とすることができる。
【０１１７】
また、上述した実施形態では、広告装置１００は、条件式を完全に満たした場合に、広告コンテンツを抽出対象とする例を示した。しかし、広告装置１００は、条件式を完全に満たさない広告コンテンツであっても、抽出対象としてもよい。例えば、広告装置１００は、条件式に３つの条件が設けられている場合に、３つ全てを満たす広告コンテンツでなくとも、条件式に含まれる２つの条件を満たすことで、当該広告コンテンツは条件式を満たしていると判定してもよい。
【０１１８】
また、広告装置１００は、広告主から受け付けた配信条件に関して、適宜、変換処理を行ってもよい。例えば、広告装置１００は、広告主から「（年齢：１０代ｏｒ２０代ｏｒ３０代ｏｒ４０代）」といった条件式を受け付けた場合には、かかる条件式を変換し、「ＮＯＴ（年齢：５０代以上）」といった条件式に変換してもよい。このように、広告装置１００は、実際に広告主が設定した条件式と比較して、処理を効率化することができる場合や、より条件式として適切な指定が想定できる場合には、広告主が設定した条件式を変換することができる。これにより、広告装置１００は、より迅速な処理を行うことができる。また、広告主にとっては、複雑な条件式を導出する手間をかけずに、所望するユーザに最適化した条件式によって広告コンテンツを配信させることができる。
【０１１９】
〔５−３．特徴量〕
上述した実施形態では、広告装置１００は、広告コンテンツに設定される特徴量と、クエリとが一致することを特徴量ヒットの条件とした。しかし、広告装置１００は、特徴量とクエリとが完全に一致することを特徴量ヒットの条件としなくてもよい。
【０１２０】
例えば、広告装置１００は、「トレーニング」と「スポーツジム」とは類似する関係にある単語であるとして、「トレーニング」と「スポーツジム」という単語がクエリと特徴量に含まれる場合には、特徴量ヒットの項目に「○」が記憶されるようにしてもよい。すなわち、広告装置１００は、単語の完全な一致ではなく、類語など、概念が共通する単語同士であれば特徴量がヒットしたものと推定するなど、柔軟に対応するようにしてもよい。なお、かかる対応は、論理演算における条件式に用いられる単語等についても共通する。
【０１２１】
〔５−４．スタティックスコア〕
上述した実施形態では、広告装置１００は、広告コンテンツに予めスタティックスコアを設定する例を示した。しかし、広告装置１００は、広告コンテンツに予めスタティックスコアを設定することを要さない。すなわち、広告装置１００は、スタティックスコアの降順に広告コンテンツを整列させなくとも、所定の順に広告コンテンツを整列させることで、ＷＡＮＤアルゴリズムを用いた処理を実現することが可能となる。
【０１２２】
〔５−５．広告主から受け付ける条件〕
上述した実施形態では、入稿受付部１３１は、広告主から設定される条件式とともに広告コンテンツを受け付ける例を示した。しかし、入稿受付部１３１は、さらに異なる情報とともに広告コンテンツの入稿を受け付けてもよい。
【０１２３】
例えば、入稿受付部１３１は、広告主から、広告コンテンツの配信希望数や、１回あたりの広告コンテンツの配信金額や、ＣＰＡ（Cost  Per  Acquisition）の指定を受け付けてもよい。ＣＰＡは、広告コンテンツによってコンバージョンにつながった（新規顧客を獲得した）場合における、新規顧客の獲得人数あたりの費用を示す。ＣＰＡは、広告費用をコンバージョン数で除算することで求められ、ＣＰＡの値が低いほど、広告の効率がよいことを意味している。
【０１２４】
〔６．ハードウェア構成〕
また、上述してきた実施形態に係る広告装置１００は、例えば図８に示すような構成のコンピュータ１０００によって実現される。以下、広告装置１００を例に挙げて説明する。図８は、広告装置１００の機能を実現するコンピュータ１０００の一例を示すハードウェア構成図である。コンピュータ１０００は、ＣＰＵ１１００、ＲＡＭ１２００、ＲＯＭ１３００、ＨＤＤ１４００、通信インターフェイス（Ｉ／Ｆ）１５００、入出力インターフェイス（Ｉ／Ｆ）１６００、及びメディアインターフェイス（Ｉ／Ｆ）１７００を有する。
【０１２５】
ＣＰＵ１１００は、ＲＯＭ１３００又はＨＤＤ１４００に記憶されたプログラムに基づいて動作し、各部の制御を行う。ＲＯＭ１３００は、コンピュータ１０００の起動時にＣＰＵ１１００によって実行されるブートプログラムや、コンピュータ１０００のハードウェアに依存するプログラム等を記憶する。
【０１２６】
ＨＤＤ１４００は、ＣＰＵ１１００によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を記憶する。通信インターフェイス１５００は、通信網５００（図２に示したネットワークＮに対応する）を介して他の機器からデータを受信してＣＰＵ１１００へ送り、ＣＰＵ１１００が生成したデータを、通信網５００を介して他の機器へ送信する。
【０１２７】
ＣＰＵ１１００は、入出力インターフェイス１６００を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。ＣＰＵ１１００は、入出力インターフェイス１６００を介して、入力装置からデータを取得する。また、ＣＰＵ１１００は、入出力インターフェイス１６００を介して生成したデータを出力装置へ出力する。
【０１２８】
メディアインターフェイス１７００は、記録媒体１８００に記憶されたプログラム又はデータを読み取り、ＲＡＭ１２００を介してＣＰＵ１１００に提供する。ＣＰＵ１１００は、かかるプログラムを、メディアインターフェイス１７００を介して記録媒体１８００からＲＡＭ１２００上にロードし、ロードしたプログラムを実行する。記録媒体１８００は、例えばＤＶＤ（Digital  Versatile  Disc）、ＰＤ（Phase  change  rewritable  Disk）等の光学記録媒体、ＭＯ（Magneto-Optical  disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【０１２９】
例えば、コンピュータ１０００が実施形態に係る広告装置１００として機能する場合、コンピュータ１０００のＣＰＵ１１００は、ＲＡＭ１２００上にロードされたプログラムを実行することにより、制御部１３０の機能を実現する。また、ＨＤＤ１４００には、記憶部１２０内のデータが記憶される。コンピュータ１０００のＣＰＵ１１００は、これらのプログラムを記録媒体１８００から読み取って実行するが、他の例として、他の装置から通信網５００を介してこれらのプログラムを取得してもよい。
【０１３０】
〔７．その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【０１３１】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図３に示した入稿受付部１３１と、取得部１３２とは統合されてもよい。また、例えば、記憶部１２０に記憶される情報は、ネットワークＮを介して、外部に備えられた記憶装置に記憶されてもよい。
【０１３２】
また、例えば、上記実施形態では、広告装置１００が、広告コンテンツの入稿やクエリを受け付ける受付処理と、配信される広告コンテンツを抽出する抽出処理と、広告コンテンツを配信する配信処理とを行う例を示した。しかし、上述した広告装置１００は、受付処理を行う受付装置と、抽出処理を行う抽出装置と、配信処理を行う配信装置とに分離されてもよい。この場合、受付装置は、少なくとも、入稿受付部１３１と、取得部１３２とを有する。また、抽出装置は、少なくとも、整列部１３３と、論理演算部１３５と、スコア算出部１３６と、抽出部１３７とを有する。また、配信装置は、少なくとも、配信部１３８を有する。
【０１３３】
また、上述してきた各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【０１３４】
〔８．効果〕
上述してきたように、実施形態に係る広告装置１００は、取得部１３２と、演算制御部１３４と、抽出部１３７とを有する。取得部１３２は、送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する。演算制御部１３４は、取得部１３２によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に設定される配信条件に該当する広告コンテンツであるか否かを判定する判定処理と、送信元情報と広告コンテンツの特徴情報との一致の度合いを示すスコアを算出する算出処理とを１つの広告コンテンツ毎に行う。抽出部１３７は、演算制御部１３４による処理の結果に基づいて、広告コンテンツ群の中から配信要求に対応する広告コンテンツを抽出する。
【０１３５】
このように、実施形態に係る広告装置１００は、広告主が指定する配信条件を判定する処理と、広告コンテンツの特徴情報などに示されるユーザとのマッチング処理との、２つの処理を広告コンテンツ毎に行い、処理結果に基づき広告コンテンツを抽出する。このため、広告装置１００は、単独の処理を経て抽出された広告コンテンツと比較し、より広告効果が高くなると想定される広告コンテンツを抽出できる。また、広告装置１００は、配信候補の広告コンテンツ群のうち１つの広告コンテンツ毎に上記処理を行うことにより、広告コンテンツ群の全てを検索するといった処理負荷をかけずに、広告コンテンツを抽出できる。すなわち、広告装置１００によれば、訴求効果の高い広告コンテンツを迅速に抽出することができる。
【０１３６】
また、抽出部１３７は、演算制御部１３４によって広告コンテンツ毎に算出されたスコアの高い順に、配信要求により要求された数の広告コンテンツを抽出候補として確保し、演算制御部１３４による処理が終了した時点において、抽出候補として確保されている広告コンテンツを配信要求に対応する広告コンテンツとして抽出する。
【０１３７】
このように、実施形態に係る広告装置１００は、広告コンテンツ群に含まれる広告コンテンツを処理する過程において、その時点で抽出候補となりうる広告コンテンツを確保しつつ処理を進めることができる。これにより、広告装置１００は、例えば、抽出処理のために確保される時間が比較的短い場合であっても、より適切な広告コンテンツを抽出することが可能となる。
【０１３８】
また、演算制御部１３４は、広告コンテンツの特徴情報の要素に基づいて、処理対象となる広告コンテンツのスコアが、抽出候補として確保されている広告コンテンツのスコアの最小値を超えるか否かを判定し、かかる最小値を超えないと判定される場合には、スコアの算出をスキップする。そして、抽出部１３７は、演算制御部１３４によってスキップされた広告コンテンツについては抽出候補として確保しない。
【０１３９】
このように、実施形態に係る広告装置１００は、広告コンテンツ群に含まれる広告コンテンツを処理する過程において、その時点でキューとして確保されている広告コンテンツのスコアの最小値を閾値として記憶し、閾値と比較しつつ抽出処理を進める。これにより、広告装置１００は、閾値を超えるか否かを判定することのみにより、スコア算出といった詳細な処理をスキップさせることができるため、迅速な抽出処理を行うことができる。
【０１４０】
また、演算制御部１３４は、判定処理の結果、配信条件を満たさないと判定された広告コンテンツについては算出処理をスキップする。そして、抽出部１３７は、演算制御部１３４によって算出処理がスキップされた広告コンテンツについては抽出候補として確保しない。
【０１４１】
このように、実施形態に係る広告装置１００は、広告主から指定された条件を満たさない広告コンテンツについてはスコア算出をスキップさせることができるため、迅速な抽出処理を行うことができる。
【０１４２】
また、実施形態に係る広告装置１００は、広告コンテンツ群に含まれる広告コンテンツを、予め広告コンテンツ毎に設定される所定の評価値順に整列させる整列部１３３をさらに有する。そして、演算制御部１３４は、整列部１３３によって整列された順に、判定処理および算出処理を行う。そして、抽出部１３７は、所定の評価値を含めて算出された広告コンテンツ毎のスコアに基づいて、配信要求に対応する広告コンテンツを抽出する。
【０１４３】
このように、実施形態に係る広告装置１００は、予め広告コンテンツ毎に設定される所定の評価値であるスタティックスコアを用いてソートさせた広告コンテンツについて処理を行うことができる。これにより、広告装置１００は、より効果が高いと想定される広告コンテンツを優先的に処理することができるので、訴求効果の高い広告コンテンツを迅速に抽出することができる。
【０１４４】
また、演算制御部１３４は、判定処理として、予め広告コンテンツ毎に設定される論理演算の条件式によって表される配信条件に対する論理演算を行う。
【０１４５】
このように、実施形態に係る広告装置１００は、広告主が指定する配信条件を論理演算における条件式として受け付け、かかる条件式に対する論理演算を行うことにより、広告コンテンツを抽出する。このため、広告装置１００は、広告主の詳細な指定に応えた広告コンテンツの抽出をすることができる。
【０１４６】
また、演算制御部１３４は、広告コンテンツ群に対して、所定の整列順に配信条件を満たすか否かを論理演算することが可能な論理演算アルゴリズムを用いて論理演算を行う。
【０１４７】
このように、実施形態に係る広告装置１００は、広告コンテンツ群全体ではなく、整列された広告コンテンツの１つずつに対して論理演算を可能とするアルゴリズムを用いる。これにより、広告装置１００は、迅速に、かつ、広告主の詳細な指定に応えた広告コンテンツの抽出をすることができる。
【０１４８】
また、演算制御部１３４は、広告コンテンツがユーザに配信される対象から除外されるための除外条件を含む配信条件を用いて、判定処理を行う。
【０１４９】
このように、実施形態に係る広告装置１００は、論理演算の中でも複雑な処理を行うことを要する除外条件（ＮＯＴ演算）を含んだ配信条件の指定を受けることができる。これにより、広告主は、より詳細に配信を所望するユーザを指定することができる。
【０１５０】
また、実施形態に係る広告装置１００は、取得部１３２と、論理演算部１３５（ここでは、判定処理を行う判定部に対応する）と、スコア算出部１３６と、抽出部１３７とを有する。取得部１３２は、送信元に関する情報である送信元情報を含む広告コンテンツの配信要求を取得する。論理演算部１３５は、取得部１３２によって取得された送信元情報に基づき、配信候補である広告コンテンツ群に対して、予め広告コンテンツ毎に設定される配信条件に該当する広告コンテンツであるか否かを判定する。スコア算出部１３６は、論理演算部１３５によって配信条件に該当する広告コンテンツであると判定された広告コンテンツに対して、送信元情報と広告コンテンツの特徴情報との一致の度合いを示すスコアを算出する。抽出部１３７は、論理演算部１３５およびスコア算出部１３６によって求められた各結果を併用することにより、配信要求に対応する広告コンテンツを抽出する。
【０１５１】
このように、実施形態に係る広告装置１００は、広告コンテンツ群に対して論理演算を行い、条件式に適合した広告コンテンツのみのスコアを算出することで広告コンテンツを抽出してもよい。かかる処理では、広告装置１００は、整列された広告コンテンツの１つずつに対して論理演算を可能とするアルゴリズムの他に、ＣＮＦ等のアルゴリズムを用いることにより、迅速に処理を進めることができる。また、広告装置１００は、論理演算とスコア算出という２種の手法によって広告コンテンツの適性を評価するので、広告効果の高い広告コンテンツを抽出することができる。
【０１５２】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【０１５３】
また、上述してきた「部（section、module、unit）」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。
【符号の説明】
【０１５４】
１  抽出処理システム
１０  ユーザ端末
２０  広告主端末
３０  ウェブサーバ
５０  データテーブル
１００  広告装置
１１０  通信部
１２０  記憶部
１２１  広告情報記憶部
１２２  ユーザ情報記憶部
１２３  演算テーブル
１３０  制御部
１３１  入稿受付部
１３２  取得部
１３３  整列部
１３４  演算制御部
１３５  論理演算部
１３６  スコア算出部
１３７  抽出部
１３８  配信部
【図１】
0006667061.tif 000002
【図２】
0006667061.tif 000003
【図３】
0006667061.tif 000004
【図４】
0006667061.tif 000005
【図５】
0006667061.tif 000006
【図６】
0006667061.tif 000007
【図７】
0006667061.tif 000008
【図８】
0006667061.tif 000009