JP7117826B2 - 検索装置、検索方法及び検索プログラム - Google Patents

検索装置、検索方法及び検索プログラム Download PDF

Info

Publication number
JP7117826B2
JP7117826B2 JP2017038604A JP2017038604A JP7117826B2 JP 7117826 B2 JP7117826 B2 JP 7117826B2 JP 2017038604 A JP2017038604 A JP 2017038604A JP 2017038604 A JP2017038604 A JP 2017038604A JP 7117826 B2 JP7117826 B2 JP 7117826B2
Authority
JP
Japan
Prior art keywords
user
store
search
search device
information
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
JP2017038604A
Other languages
English (en)
Other versions
JP2018147045A (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.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
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 Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2017038604A priority Critical patent/JP7117826B2/ja
Publication of JP2018147045A publication Critical patent/JP2018147045A/ja
Application granted granted Critical
Publication of JP7117826B2 publication Critical patent/JP7117826B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、検索装置、検索方法及び検索プログラムに関する。
近年、インターネットの飛躍的な普及に伴い、ウェブサイトやアプリを介して、ショッピングサービスやオークションサービス等の提供が盛んに行われている。このようなウェブサイトやアプリでは、サービスにアクセスしてきたユーザの興味関心に応じた商品をお勧め商品として提供する、いわゆるレコメンドが行われている。
このようなレコメンドに関する技術として、住地域に応じた売れ筋商品をレコメンドする技術や、レコメンドのスコア算出においてユーザが直近にアクセスしたアイテムに関して重みを重くしてレコメンドのスコア算出を行う技術が知られている。
特開2002-157394号公報 特開2011-257953号公報
しかしながら、上記の従来技術では、ユーザに訴求する多様な商品を検索できるとは限らない。例えば、従来技術では、あくまでユーザの行動に即したレコメンドを行うに過ぎず、ユーザの興味関心を拡げるような新たな観点から選択された商品を検索し、検索した商品をユーザにレコメンドすることは困難である。
本願は、上記に鑑みてなされたものであって、ユーザに訴求する多様な商品を検索することができる検索装置、検索方法及び検索プログラムを提供することを目的とする。
本願に係る検索装置は、ユーザのネットワーク上の行動履歴を取得する取得部と、前記取得部によって取得された行動履歴から、前記ユーザに対応するクエリを抽出する抽出部と、前記抽出部によって抽出されたクエリに基づいて生成された前記ユーザの単語ベクトルと、ストアの単語ベクトルとの相関性に基づいて、前記ユーザに推薦するストアを検索する検索部と、を備えたことを特徴とする。
実施形態の一態様によれば、ユーザに訴求する多様な商品を検索することができるという効果を奏する。
図1は、実施形態に係る検索処理の一例を示す図である。 図2は、実施形態に係る検索システムの構成例を示す図である。 図3は、実施形態に係る検索装置の構成例を示す図である。 図4は、実施形態に係る行動履歴記憶部の一例を示す図である。 図5は、実施形態に係るユーザテーブルの一例を示す図である。 図6は、実施形態に係るストアテーブルの一例を示す図である。 図7は、実施形態に係るレコメンド情報記憶部の一例を示す図である。 図8は、実施形態に係るウェブサーバの構成例を示す図である。 図9は、実施形態に係る処理手順を示すフローチャート(1)である。 図10は、実施形態に係る処理手順を示すフローチャート(2)である。 図11は、実施形態に係る処理手順を示すフローチャート(3)である。 図12は、検索装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
以下に、本願に係る検索装置、検索方法および検索プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る検索装置、検索方法および検索プログラムが限定されるものではない。また、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
〔1.検索処理の一例〕
まず、図1を用いて、実施形態に係る検索処理の一例について説明する。図1は、実施形態に係る検索処理の一例を示す図である。図1では、本願に係る検索装置100によって、所定の媒体にアクセスしたユーザに応じて、ユーザに提示する情報コンテンツを検索する処理が行われる一例を示す。なお、実施形態では、媒体となるコンテンツの一例として、ウェブページを例に挙げて説明する。また、情報コンテンツの一例として、ユーザに推薦する情報であって、所定の商品を宣伝する情報(以下、「レコメンド」と表記する)を例に挙げて説明する。具体的には、レコメンドは、ショッピングサイトで取引される商品の宣伝情報等であり、媒体であるウェブページの一部分に表示される。
図1に示す検索装置100は、レコメンドに関する情報を保持するサーバ装置である。実施形態に係る検索装置100は、一つの商品のみをレコメンドとして検索するのではなく、複数の商品を取り扱うストア(店舗)自体をレコメンドとして扱うことを特徴とする。すなわち、検索装置100は、複数の商品情報を含むストアを、レコメンドとしてユーザに配信する。なお、以下では、検索装置100が検索したストアや、ストアが取り扱う商品等のレコメンドをユーザに配信する処理のことを「レコメンドする」と表記する場合がある。
例えば、検索装置100は、ユーザが所定のウェブページにアクセスしたことを契機として、レコメンドを記憶した所定のデータベースから、当該ユーザに適するレコメンドを検索する。そして、検索装置100は、検索したレコメンドをユーザに配信する。具体的には、検索装置100は、ユーザに対して、複数の商品レコメンドを含むストアをレコメンドとして配信する。
図1に示すユーザ端末10は、ユーザによって利用される情報処理端末である。図1の例では、ユーザ端末10は、ユーザの一例であるユーザU01によって利用される。例えば、ユーザ端末10は、スマートフォンやタブレット型端末である。ユーザ端末10は、ユーザU01による操作に従ってウェブサーバ30(図2参照)にアクセスし、ウェブサーバ30から提供されるウェブページを取得する。すなわち、ユーザU01は、ユーザ端末10を介して、ウェブページの態様でウェブサーバ30から提供される各種サービスを利用する。なお、本明細書中においては、ユーザ端末10と、ユーザ端末10を利用するユーザとを同一視する場合がある。例えば、「ユーザU01にウェブページを送信する」とは、実際には、「ユーザU01が利用するユーザ端末10にウェブページを送信する」ことを意味する場合がある。
検索装置100は、ユーザ端末10が取得したウェブページにレコメンドを表示する枠(以下、「レコメンド枠」と表記する)が含まれる場合に、当該枠に表示するためのレコメンドを検索する。そして、検索装置100は、検索したレコメンドをユーザ端末10に配信する。ユーザU01は、例えば、レコメンドをクリックして商品情報を取得したり、レコメンドされた商品を購買したりする。これにより、レコメンドを提供する者(例えば、レコメンドに入札した事業者や、レコメンドされた商品を販売するサービス事業者など)は利益を得る。すなわち、検索装置100は、ユーザU01がレコメンドをクリックしたり購買したりするような、ユーザU01が興味関心を有する対象をレコメンドとして配信することが望ましい。
このようなレコメンドの配信には、ユーザU01が有するクエリ情報が利用される。クエリ情報とは、ユーザU01のネットワーク上の行動履歴や、ユーザU01の属性情報等に基づいて生成される情報であり、ユーザU01に対するレコメンドを検索するために用いられる複数のクエリを含む情報である。
例えば、ユーザU01が、ショッピングモールを模したネット上のショッピングサイトで購買行動を行った場合には、購買行動に応じたクエリ情報が生成される。当該ショッピングサイトには、例えば、複数の出品者が各々のストア(店舗)を出店しているものとする。そして、ユーザU01が、当該ショッピングサイト内の所定のストアで飲料水を購入した場合、ユーザU01のクエリ情報には、購入した飲料水(すなわち、商品)の名称や、「飲料水」といった商品カテゴリや、当該ストアの名称や、当該ショッピングサイトの名称等の単語が追加される。
具体的には、商品に付与されていたタイトルや説明文が形態素解析され、分解された単語がクエリとして抽出され、ユーザU01のクエリ情報に追加される。そして、ユーザU01に対してレコメンドを検索する機会が発生した場合には、当該クエリ情報を用いてレコメンドが検索される。例えば、クエリ情報は、ユーザの行動に基づいて抽出された数十から数百のクエリによって構成される。
なお、配信されるレコメンドとしては、例えば、表示されるウェブページに適した内容のレコメンドが検索される。具体的には、上記のようなショッピングサイトのウェブページに表示されるレコメンドとしては、ショッピングサイト内のいずれかのストアにおいて取引が行われている商品がレコメンドとして表示される。
このように、ユーザU01の過去の行動に応じたレコメンドが配信されることで、例えば、ユーザU01が当該レコメンドを選択(クリック)したり、レコメンドされた商品を購入したりする機会を増大させることができると想定される。すなわち、レコメンドの検索に用いられるクエリ情報は、ユーザU01の行動、言い換えれば、ユーザU01の興味関心を的確に反映したクエリ情報である方が、よりユーザU01にとって訴求効果の高いレコメンドを検索できると想定される。
ところで、上記のような手法では、ユーザに訴求する多様な商品をレコメンドできない可能性もある。例えば、ユーザが過去に飲料水を購入した場合、当該ユーザには、様々なストアが提供する飲料水がレコメンドされる確率が高くなる。この場合、ユーザは、飲料水以外の商品のレコメンドを受ける機会が減少することで、他の商品のレコメンドを目にすることが少なくなる。また、ユーザは所定のストアにおいて既に飲料水を購入している場合もあり、そのような状況のユーザに対して飲料水のレコメンドが配信されても、ユーザは興味を示さない可能性が高い。この結果、レコメンドがユーザからクリックされなかったり、コンバージョン(conversion)に至る確率が下がったりといった、レコメンドの訴求効果を低下させるおそれが生じる。また、飲料水以外の商品を取り揃えるストアにとっては、飲料水に限らず、他の商品を含めて自ストアをユーザに利用してもらいたいという要望があると想定される。しかし、上記のようにユーザの行動履歴を参照してレコメンドされる商品が検索される場合、当該ストアの飲料水以外の商品がレコメンドとして検索される可能性は低くなる。
そこで、実施形態に係る検索装置100は、ユーザのネットワーク上の行動履歴から、当該ユーザに対応するクエリを抽出するとともに、抽出されたクエリと、ストアが提供する複数の商品との相関性に基づいて、ユーザにレコメンドする「ストア」を検索する。そして、検索装置100は、当該ストアが取り扱っている複数の商品のうちいくつかの商品をレコメンドとしてユーザに配信する。かかる手法により、検索装置100は、当該ストアが扱っている商品であって、通常ではユーザに配信する機会が得られにくい商品をレコメンドすることができる。なお、本明細書中において、商品とは、商取引の対象を広く含む概念であり、商品のみならず役務等をふくむ概念であるものとする。以下、図1を用いて、検索装置100によって行われる検索処理の一例を流れに沿って説明する。
図1において、ユーザU01は、ユーザ端末10を介して、ネットワーク上の各種サービスを利用する(ステップS11)。実施形態では、ユーザU01は、例えば、検索サービスA01や、ショッピングサービスA02や、オークションサービスA03等を利用する。
検索装置100は、ユーザU01が利用したサービスに関する行動履歴を取得する(ステップS12)。例えば、検索装置100は、ユーザ端末10がサービスを利用するためにアクセスした各ウェブサーバ30を介して、ユーザU01の行動履歴を取得する。
具体的には、検索装置100は、ユーザU01が検索サービスA01を利用して、所定の商品を検索した行動履歴を取得する。また、検索装置100は、ユーザU01がショッピングサービスA02において商品を閲覧した行動履歴や、商品を購入した行動履歴を取得する。また、検索装置100は、ユーザU01がオークションサービスA03において商品に入札した行動履歴や、商品を落札した行動履歴を取得する。なお、上記で挙げた行動履歴は一例であり、検索装置100は、ユーザU01の行動履歴(ログ)として記憶されるあらゆる行動履歴を取得してもよい。
そして、検索装置100は、ユーザU01の行動履歴に基づいてクエリを抽出する(ステップS13)。例えば、検索装置100は、ユーザU01の行動履歴から抽出される単語を、ユーザU01に対応付けられるクエリとして抽出する。
例えば、検索装置100は、ユーザU01が検索サービスA01に送信した検索クエリに基づいて、ユーザU01に対応するクエリを抽出する。具体的には、検索装置100は、ユーザU01が検索サービスA01に検索クエリとして送信した商品名を、ユーザU01のクエリとして抽出する。あるいは、検索装置100は、検索クエリを送信してユーザU01に送信された検索結果ページにおいて、ユーザU01がクリックしたウェブページに記載されている商品名をクエリとして抽出してもよい。また、検索装置100は、ショッピングサービスA02においてユーザU01が閲覧したり購入したりした商品の商品名をクエリとして抽出する。また、検索装置100は、オークションサービスA03においてユーザU01が入札したり落札したりした商品の商品名をクエリとして抽出する。
より具体的には、ユーザU01が検索サービスA01に「商品X01」という検索クエリを送信していた場合、検索装置100は、クエリとして「商品X01」を抽出する。また、ユーザU01が、ショッピングサービスA02で「商品X02」を閲覧していた場合、検索装置100は、クエリとして「商品X02」を抽出する。また、ユーザU01が、オークションサービスA03で「商品X08」に入札していた場合、検索装置100は、クエリとして「商品X08」を抽出する。
なお、上記で挙げた検索装置100が抽出するクエリは一例であり、検索装置100は、ユーザU01の行動履歴から抽出される様々な単語をクエリとして抽出してよい。また、検索装置100は、クエリの抽出に関する既知の様々な手法を利用してもよい。例えば、検索装置100は、例えば抽出対象となるドキュメント(商品のタイトルや、商品を紹介するページのテキスト等)におけるtf-idf(Term Frequency、Inverse Document Frequency)等を利用して、クエリになりうる単語(商品名)を特定するようにしてもよい。
続けて、検索装置100は、ユーザU01の行動履歴に基づいて抽出されたクエリから、ユーザU01に対応するクエリ情報Q01を生成する(ステップS14)。クエリ情報Q01は、ユーザU01の行動履歴からクエリとして抽出された複数の単語を含む情報である。いわば、クエリ情報Q01は、ユーザU01の興味関心を表す情報である。なお、クエリ情報Q01には、ユーザU01の属性情報や、ユーザU01の反応情報等が含まれてもよい。ユーザU01の属性情報とは、例えば、ユーザU01の性別や年齢、居住地等である。また、ユーザU01の反応情報とは、例えば、配信されたレコメンドに対するクリックし易さ(クリック率)や、レコメンドを介して商品を購入した数や率など、レコメンドに対するユーザの反応の傾向を示す情報である。
検索装置100は、生成したクエリ情報Q01をユーザU01と対応付けて所定の記憶部に記憶する(ステップS15)。このようにして、検索装置100は、ユーザU01の種々の行動から、ユーザU01のクエリ情報Q01を生成する。
続いて、検索装置100が、クエリ情報Q01に基づいてユーザU01に配信するレコメンドを検索する処理について説明する。
図1に示すように、ユーザ端末10は、ユーザU01の操作に従い、ウェブサーバ30が提供する所定のサービス(図1の例では、ショッピングサービスA02)にアクセスする(ステップS21)。ユーザ端末10は、ショッピングサービスA02を構成するウェブページW10を受信し、ウェブページW10を画面に表示する。
ユーザ端末10が受信したウェブページW10には、3つのレコメンド枠が含まれているものとする。この場合、ユーザ端末10は、ウェブページW10に含まれる命令(スクリプト)に従い、レコメンドの配信要求を検索装置100に送信する。
配信要求を受信した検索装置100は、ユーザU01のクエリ情報Q01に基づいて、ユーザU01に対応するレコメンドを検索する。例えば、検索装置100は、クエリ情報Q01が、ショッピングサービスA02内に出店するいずれのストアに適合するかを判定することにより、ユーザU01にレコメンドするストアを検索する。
検索装置100は、クエリ情報Q01と、ストアの特徴情報との相関性に基づいて、レコメンドするストアを検索する(ステップS22)。ストアの特徴情報とは、ストアを特徴付ける情報をいう。例えば、検索装置100は、クエリ情報Q01とストアの特徴情報とを対照できるようなデータ形式を利用して、検索処理を実行する。
例えば、検索装置100は、クエリ情報Q01やストアの特徴情報をベクトルとして表現する。具体的には、検索装置100は、ユーザU01を文書(ドキュメント)と仮定し、ユーザU01のクエリ情報Q01に含まれるクエリを文書における単語と仮定して、ユーザU01に対応する単語ベクトルを生成する。
図1に示すように、検索装置100は、ユーザU01に対応する単語ベクトルとして、(商品X01、商品X02、商品X08、商品X25、・・・)といった単語ベクトルを生成する。この単語ベクトルは、クエリ情報Q01に、「商品X01」や「商品X02」や「商品X08」や「商品X25」等のクエリが含まれていることを意味する。なお、図1の例では、単語ベクトルには、「商品X01」等の具体的な商品名が記載される例を示しているが、検索装置100は、商品名等の具体的な情報ではなく、商品を識別する識別子等を利用してもよい。後述するように、各ストアが識別子によって商品を管理している場合、検索装置100は、当該識別子をクエリとして取得し、ユーザU01の単語ベクトルを生成する。
同様に、検索装置100は、ストアの特徴情報として、ストアに対応した単語ベクトルを作成する。具体的には、検索装置100は、ストアを文書(ドキュメント)と仮定し、ストアが取り扱う複数の商品を文書における単語と仮定して、各ストアの単語ベクトルを生成する。
例えば、ショッピングサービスA02に出店しているストアの一つであるストアB01が、「商品X01」や、「商品X02」や、「商品X08」や、「商品X12」や、「商品X16」や、その他の商品を取り扱っているものとする。この場合、ストアB01に対応する特徴情報は、(商品X01、商品X02、商品X08、商品X12、商品X16、・・・)という単語ベクトルで表される。
なお、図1での図示は省略しているが、実際に検索装置100が処理するストアB01の単語ベクトルは、(商品X01、商品X02、商品X03、商品X04、商品X05、商品X06、商品X07、商品X08、商品X09、商品X10、・・・)のように、それぞれの商品を次元とした場合に、(1、1、0、0、0、0、0、1、0、0、・・・)のように、各次元を2値化したベクトルで表現される。この場合、ストアB01の単語ベクトルにおける「1」は、商品を取り扱っていることを示しており、具体的には「商品X01」や「商品X02」や「商品X08」を示している。
また、ショッピングサービスA02に出店しているストアの一つであるストアB02が、「商品X06」や、「商品X09」や、「商品X17」や、「商品X23」や、その他の商品を取り扱っているものとする。この場合、ストアB01に対応する特徴情報は、(商品X06、商品X09、商品X17、商品X23、・・・)という単語ベクトルで表される。
上記生成処理において、検索装置100は、例えば、ストアが取り扱っている商品リストや、各商品の識別子を取得する。例えば、ストアは、出店の際に、自ストアで取り扱う商品の識別子をショッピングサービスA02に登録する。検索装置100は、ショッピングサービスA02を管理するウェブサーバ30と協働することにより、各ストアが取り揃えている商品のリストや各商品の識別子をウェブサーバ30から取得することができる。
なお、識別子は、商品を識別することが可能な情報であれば、いずれの情報を用いてもよい。例えば、識別子は、国家や公共性の高い団体等により付与される事業者コードや、「どの事業者が作成したどの商品か」を識別することができる商品コード(例えば、日本ではJANコード(Japanese Article Number)が知られている)であってもよい。また、識別子は、ショッピングサービスA02のようなサービス側が独自に各商品に割り当てる識別情報であってもよい。また、識別情報は、商品の名称自体であってもよい。
このようにして、検索装置100は、ユーザU01に対応する単語ベクトルと、各ストアに対応する単語ベクトルとを生成する。そして、検索装置100は、例えば、ユーザU01の単語ベクトルと、各ストアに対応する単語ベクトルとの相関性を求める。具体的には、検索装置100は、ユーザU01の単語ベクトルと、各ストアに対応する単語ベクトルとのコサイン類似度を算出する。そして、検索装置100は、コサイン類似度の最も高いストアを、ユーザU01にレコメンドするストアと判定する。
すなわち、検索装置100は、ストアが取り扱う複数の商品と、ユーザU01の行動履歴から抽出されたクエリとの相関性が高いストアをユーザU01にレコメンドするストアとして検索する。これにより、検索装置100は、商品という単位にとらわれず、ユーザが興味関心を抱いていると想定される商品を数多く取り揃えているストア自体をレコメンドの対象とすることができる。
さらに、検索装置100は、実際にウェブページW10のレコメンド枠に表示させるための各商品を検索する。検索装置100は、種々の既知の手法を用いて、データベースの中から、レコメンドする商品を検索することができる。例えば、検索装置100は、クエリ情報Q01と相関性の高い(検索スコアの高い)商品の上位3つをレコメンドとして検索する。なお、検索装置100は、例えば、検索されたストアをAND条件等に加えることにより、ストア内の商品を検索することができる。例えば、検索装置100は、ステップS22において、レコメンド対象としてストアB01を検索したものとする。この場合、検索装置100は、レコメンド対象として個々の商品を検索する処理において、AND条件で「ストアB01」を追加することにより、ストアB01が取り扱う商品の中から、レコメンドする商品を検索することができる。
図1の例では、検索装置100は、レコメンド対象として、ストアB01を検索するとともに、ストアB01が取り扱う商品「商品X01」や、「商品X02」や、「商品X08」を検索したとする。この場合、検索装置100は、検索したストアB01をレコメンドとしてユーザ端末10に配信する(ステップS23)。また、検索装置100は、商品X01に対応するレコメンドP01や、商品X02に対応するレコメンドP02や、商品X03に対応するレコメンドP03を配信する。なお、レコメンドP01は、例えば、商品X01の画像データや、商品X01の価格情報や、商品X01を宣伝するテキストデータ等によって構成される情報コンテンツである。
ユーザ端末10は、配信されたストアB01に関する情報をウェブページW10に含まれるレコメンド枠に表示する。また、ユーザ端末10は、ストアB01が取り扱う商品に対応するレコメンドであるレコメンドP01や、レコメンドP02や、レコメンドP03をレコメンド枠に表示する。
図1を用いて説明してきたように、実施形態に係る検索装置100は、ユーザU01のネットワーク上の行動履歴を取得する。そして、検索装置100は、取得した行動履歴から、ユーザU01に対応するクエリを抽出する。さらに、検索装置100は、抽出されたクエリと、ストアが提供する複数の商品との相関性に基づいて、ユーザU01に推薦するストアを検索する。
このように、検索装置100は、ユーザに配信するレコメンドを検索するにあたって、商品単位ではなく、ストア単位でユーザとの相関性を検証する。そして、検索装置100は、ユーザと相関性の高いストアを検索し、検索されたストアをレコメンドとしてユーザに配信する。さらに、検索装置100は、ストアをAND条件として、ユーザにレコメンドする複数の商品を検索する。これにより、ユーザは、自身の興味関心に沿ったストアを発見することができたり、ストアが扱っている複数の商品のレコメンドを受けたりすることができる。すなわち、検索装置100は、ユーザに訴求する多様な商品をレコメンドすることができる。
なお、図1では、ステップS11において、ユーザU01が利用したサービスにおける行動履歴を検索装置100が取得する例を示した。この場合、検索装置100は、ウェブビーコン(web beacon)等によって実現される通知機能を利用して、ユーザの行動情報を取得してもよい。
すなわち、ウェブサーバ30が提供するコンテンツ(ウェブページ)には、ウェブビーコン等によって実現される、ユーザに関する情報(以下、「ユーザ情報」と表記する)を通知する機能が埋め込まれる場合がある。例えば、ウェブビーコンは、ウェブページにアクセスしたユーザ端末10を検索装置100内に格納される透明な画像又は非常に小さな画像(「クリアGIF」と呼ばれることもある)にアクセスさせる機能を有する。これにより、検索装置100は、ユーザ端末10からユーザ情報を受信し、取得することができる。例えば、検索装置100は、ウェブビーコンによって実現される機能により、ユーザU01がユーザ端末10上において、商品を閲覧したことや、商品を購入したことや、レコメンドをクリックした情報などを受信することができる。
以下、図1で説明した処理を行う検索装置100、及び、検索装置100を含む検索システム1の構成等について、詳細に説明する。
〔2.検索システムの構成〕
次に、図2を用いて、実施形態に係る検索装置100が含まれる検索システム1の構成について説明する。図2は、実施形態に係る検索システム1の構成例を示す図である。図2に例示するように、実施形態に係る検索システム1には、ユーザ端末10と、ウェブサーバ30と、検索装置100とが含まれる。これらの各種装置は、ネットワークN(例えば、インターネット)を介して、有線又は無線により通信可能に接続される。なお、図2に示した検索システム1には、複数台のユーザ端末10や、複数台のウェブサーバ30が含まれてもよい。
ユーザ端末10は、例えば、スマートフォンや、デスクトップ型PC(Personal Computer)や、ノート型PCや、タブレット型端末や、携帯電話機、PDA(Personal Digital Assistant)、ウェアラブルデバイス(Wearable Device)等の情報処理装置である。ユーザ端末10は、ユーザによる操作に従って、ウェブサーバ30にアクセスすることで、ウェブサーバ30から提供されるウェブサイトからウェブページを取得する。そして、ユーザ端末10は、取得したウェブページを表示装置(例えば、液晶ディスプレイ)に表示する。
ウェブサーバ30は、ユーザ端末10からアクセスされた場合に、各種サービスを提供するサーバ装置である。実施形態では、ウェブサーバ30は、サービスとして各種ウェブサイトを提供するものとする。例えば、ウェブサーバ30は、検索サービスサイト、ショッピングサイト、オークションサイト、ニュースサイト、天気予報サイト、ファイナンス(株価)サイト、路線検索サイト、地図提供サイト、旅行サイト、飲食店紹介サイト、ウェブブログなどに関する各種ウェブページを提供する。
例えば、図1で例に挙げた検索サービスA01は、所定のウェブ検索サイトや路線検索サイトや地図提供サイト等に対応する。また、ショッピングサービスA02は、所定のショッピングサイトや旅行サイト等に対応する。また、オークションサービスA03は、所定のオークションサイトに対応する。
なお、ウェブサーバ30によって配信されるウェブページには、レコメンドや広告コンテンツを表示するためのレコメンド枠や広告枠が含まれる。そして、レコメンド枠や広告枠を含むウェブページには、当該枠に表示するレコメンドや広告コンテンツを取得するための取得命令が含まれる。例えば、ウェブページを形成するHTML(HyperText Markup Language)ファイル等には、検索装置100のURL等が取得命令として記述される。この場合、ユーザ端末10は、HTMLファイル等に記述されているURLにアクセスすることで、検索装置100からレコメンドや広告コンテンツの配信を受ける。
また、ウェブサーバ30は、例えばショッピングサイト等に出店している各ストアから、ストアが取り扱う商品のリストや、各商品を識別する識別情報等を取得してもよい。ウェブサーバ30は、かかる情報を取得し、所定のデータベースに保持する。例えば、検索装置100は、ウェブサーバ30が保持するこれらの情報を取得することにより、各ストアがどのような商品を扱っているかを示す特徴情報を生成することができる。
検索装置100は、ユーザが利用したサービスごとの行動履歴からユーザに対応するクエリを抽出し、抽出されたクエリから、レコメンドとして配信するストアを検索するサーバ装置である。
上述のように、検索装置100は、レコメンドの配信にあたって、ユーザ端末10を識別し、レコメンドを配信するユーザ端末10を特定する。例えば、ユーザの識別は、ユーザ端末10のウェブブラウザと検索装置100(又は、ウェブサーバ30)との間でやり取りされるクッキー(Cookie)にユーザ識別情報を含めることによって行うことができる。ただし、ユーザを識別する手法は上記に限られない。例えば、ユーザ端末10に専用のプログラムを設定し、かかる専用プログラムからユーザ識別情報を検索装置100に送信させてもよい。かかるプログラムは、例えば、スマートフォン用のアプリとして実現される。
〔3.検索装置の構成〕
次に、図3を用いて、実施形態に係る検索装置100の構成について説明する。図3は、実施形態に係る検索装置100の構成例を示す図である。図3に示すように、検索装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、検索装置100は、検索装置100を利用する管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
(通信部110について)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。通信部110は、ネットワークNと有線又は無線で接続され、ネットワークNを介して、ユーザ端末10やウェブサーバ30との間で情報の送受信を行う。
(記憶部120について)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部120は、行動履歴記憶部121と、検索情報記憶部122と、レコメンド情報記憶部125とを有する。
(行動履歴記憶部121について)
行動履歴記憶部121は、ユーザの行動履歴を記憶する。ここで、図4に、実施形態に係る行動履歴記憶部121の一例を示す。図4は、実施形態に係る行動履歴記憶部121の一例を示す図である。図4に示した例では、行動履歴記憶部121は、「ユーザID」、「行動ログ」といった項目を有する。また、「行動ログ」の項目は、「サービス」、「行動」、「クエリ」といった小項目を有する。
「ユーザID」は、ユーザ又はユーザ端末10を識別するための識別情報を示す。なお、本明細書中では、図4に示すような識別情報を参照符号として用いる場合がある。例えば、ユーザID「U01」によって識別されるユーザを「ユーザU01」と表記する場合がある。
「行動ログ」は、ユーザがサービスを利用した際に記録されるログを示す。「サービス」は、ユーザが利用したサービスの名称を示す。「行動」は、ユーザがサービスにおいて採った行動や、サービスに関連した行動を示す。「クエリ」は、ユーザの行動において抽出されたクエリの一例を示す。
すなわち、図4に示したデータの一例は、ユーザID「U01」によって識別されるユーザU01は、「検索サービスA01」において、「水」を検索クエリとして送信した後、検索結果ページにおいて「商品X01」をクリックしたことを示している。そして、検索装置100は、かかる行動において、クエリとして「商品X01」を抽出したことを示している。
なお、行動履歴記憶部121には、ユーザがサービスにアクセスして実行した行動のみならず、レコメンドを受信したユーザの行動履歴が記憶されてもよい。例えば、行動履歴記憶部121には、配信されたレコメンドをユーザがクリックしたという行動履歴や、配信されたレコメンドを介してユーザがストアのページを閲覧したという行動履歴や、配信されたレコメンドを介してユーザが商品を購入したという行動履歴が記憶されてもよい。また、検索装置100は、それらの行動から、ユーザに対応するクエリをさらに抽出してもよい。
なお、図4での図示は省略したが、行動履歴記憶部121には、ユーザが行動を行った日時や、所定のサービスの利用回数や頻度を統計した情報等が記憶されてもよい。
(検索情報記憶部122について)
検索情報記憶部122は、検索装置100が実行する検索処理に利用される情報を記憶する。実施形態において、検索情報記憶部122は、ユーザテーブル123と、ストアテーブル124というデータテーブルを有する。以下、各データテーブルについて順に説明する。
(ユーザテーブル123について)
ユーザテーブル123は、レコメンドが配信される対象となるユーザの情報を記憶する。ここで、図5に、実施形態に係るユーザテーブル123の一例を示す。図5は、実施形態に係るユーザテーブル123の一例を示す図である。図5に示した例では、ユーザテーブル123は、「ユーザID」、「クエリ情報」、「属性情報」、「反応情報」といった項目を有する。
「ユーザID」は、図4に示した同一の項目に対応する。「クエリ情報」は、ユーザの行動履歴に基づいて生成されたクエリ情報を示す。「属性情報」は、ユーザの属性情報を示す。「反応情報」は、ユーザの反応情報を示す。
なお、図5に示した例では、「属性情報」や「反応情報」を「F01」や「G01」といった概念で示しているが、実際には、属性情報には、ユーザの性別や、年齢や、居住地や、家族構成や、年収等の属性情報が記憶される。また、反応情報には、配信されたレコメンドをクリックした回数や頻度、レコメンドに対してコンバージョンした回数や頻度等を統計した情報が記憶される。なお、検索装置100は、反応情報を所定のスコアで表してもよい。例えば、検索装置100は、レコメンドへのクリックやコンバージョン数や率等に応じて、反応情報に関するスコアを算出してもよい。そして、検索装置100は、レコメンドに対して反応しやすいユーザに優先的に所定の商品を配信するなどの調整処理を行ってもよい。また、反応情報は、ストアごとに生成されてもよい。例えば、検索装置100は、検索処理において、所定のストアのレコメンドに対して頻繁に反応するユーザに対しては、当該ストアがレコメンドされ易くなるなどの調整を行ってもよい。
すなわち、図5に示す一例では、ユーザU01は、クエリ情報として「Q01」を有し、属性情報として「F01」を有し、反応情報として「G01」を有していることを示している。
(ストアテーブル124について)
ストアテーブル124は、ストアに関する情報を記憶する。ここで、図6に、実施形態に係るストアテーブル124の一例を示す。図6は、実施形態に係るストアテーブル124の一例を示す図である。図6に示した例では、ストアテーブル124は、「ストアID」、「特徴情報」、「ストア属性情報」、「ターゲティング情報」といった項目を有する。
「ストアID」は、ストアを識別する識別情報を示す。「特徴情報」は、ストアの特徴を表すための情報を示す。「ストア属性情報」は、ストアの属性情報を示す。「ターゲティング情報」は、ストアがレコメンド先として設定するターゲットに関する情報を示す。
なお、図6に示した例では、「特徴情報」や「ストア属性情報」や「ターゲティング情報」を、「H01」や「J01」や「K01」といった概念で示しているが、実際には、各々の項目には、具体的な情報が記憶される。
例えば、特徴情報には、ストアが取り扱う商品のリストや、各商品を識別する識別情報が含まれる。また、特徴情報には、図1で示したような、ストアを単語ベクトルとして表現した情報が含まれる。
また、ストア属性情報には、ストアがどのような属性を有するかといった具体的な情報が記憶される。例えば、ストア属性情報には、ストアの規模や、ストアが扱う商品のカテゴリや、ストアが販売先の主な対象とするユーザの属性等が含まれる。例えば、ストアの規模は、資本金や取り扱う商品数等に応じてサービス側(例えば、ストアが出店しているショッピングサイト側)から設定される。また、ストアが扱う商品のカテゴリとは、食料品や家電など、ストアが取り扱う商品の具体的なカテゴリの情報を含む。また、ストアが販売先の主な対象とするユーザの属性とは、例えば、男性向けや女性向け、若者向けや年配向けなど、ストアが想定する主な客層を示す。なお、ストアが販売先の主な対象とするユーザの属性は、商品のカテゴリ等に基づいて自動的に設定されてもよいし、ショッピングサイト側やストアが自身で設定を行ってもよい。
また、ターゲティング情報には、ストアがレコメンドを配信する対象として想定するユーザの情報が記憶される。例えば、ターゲティング情報には、ユーザの性別や年齢等の属性情報や、ユーザの反応情報の高低(レコメンドをクリックしやすいか否か等)や、ユーザの購買履歴の多寡などが含まれる。すなわち、ターゲティング情報には、ストア側がレコメンドの配信先として希望するユーザの条件等が含まれる。なお、ターゲティング情報は、ストアごとに設定されてもよいし、ストアが扱う商品ごと(すなわち、レコメンドされる商品ごと)に設定されてもよい。
すなわち、図6に示す一例では、ストアID「B01」で識別されるストアB01は、特徴情報が「H01」であり、ストア属性情報が「J01」であり、ターゲティング情報が「K01」であることを示している。
(レコメンド情報記憶部125について)
レコメンド情報記憶部125は、レコメンドに関する情報を記憶する。ここで、図7に、実施形態に係るレコメンド情報記憶部125の一例を示す。図7は、実施形態に係るレコメンド情報記憶部125の一例を示す図である。図7に示した例では、レコメンド情報記憶部125は、「レコメンドID」、「商品ID」、「商品画像ID」、「ストアID」といった項目を有する。
「レコメンドID」は、レコメンドを識別する識別情報を示す。「商品ID」は、レコメンドに対応する商品を識別する識別情報を示す。「商品画像ID」は、レコメンドとしてユーザ端末10に表示される際の商品画像を識別する識別情報を示す。「ストアID」は、レコメンドされる商品を取り扱っているストアを識別する識別情報を示す。
すなわち、図7に示す一例では、レコメンドID「P01」で識別されるレコメンドP01は、商品ID「X01」で識別される商品X01に関するレコメンドであることを示している。また、レコメンドP01に対応する商品画像IDは、「Y01」で識別される商品画像Y01であり、レコメンドP01は、ストアB01で取り扱われている商品に関するものであることを示している。
なお、図7での図示は省略したが、各レコメンドには、検索に用いられるタグ情報(例えば、商品名や商品カテゴリ等の単語)が記憶されてもよい。例えば、検索装置100は、ユーザのクエリ情報と、各レコメンドのタグ情報とを照合させることにより、ユーザに配信するレコメンドを検索してもよい。
また、実際にユーザ端末10に配信されるレコメンドのデータ(商品画像のデータ等)は、検索装置100とは別に備えられた外部のストレージサーバに記憶されてもよい。この場合、検索装置100は、レコメンド情報記憶部125に記憶されたレコメンドIDに基づいて、ストレージサーバに記憶されたレコメンドを特定する。そして、検索装置100は、ストレージサーバに対して、特定されたレコメンドをユーザ端末10に対して配信するよう制御する。
(制御部130について)
制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、検索装置100内部の記憶装置に記憶されている各種プログラム(検索プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
図3に示すように、制御部130は、取得部131と、抽出部132と、生成部133と、受信部134と、検索部135と、配信部136とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図3に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部130が有する各処理部の接続関係は、図3に示した接続関係に限られず、他の接続関係であってもよい。
(取得部131について)
取得部131は、各種情報を取得する。例えば、取得部131は、ユーザのネットワーク上の行動履歴を取得する。
例えば、取得部131は、ユーザがネットワーク上のサービスを利用した際の行動履歴を取得する。すなわち、取得部131は、ユーザが検索サービスA01や、ショッピングサービスA02や、オークションサービスA03等を利用した際の行動履歴を取得する。
さらに、取得部131は、ユーザによる所定の商品の閲覧、購入候補への設定、又は、購入の少なくともいずれか一つを行動履歴として取得する。具体的には、取得部131は、ショッピングサイトで商品を閲覧した履歴や、検索結果ページからリンクされた商品ページを閲覧した履歴を取得する。また、取得部131は、ショッピングサイトにおいて、所定の商品を購入候補へ設定した履歴(いわゆるお気に入りリストへの登録等の履歴)を取得する。また、取得部131は、ショッピングサイトやオークションサイトで商品を購入した履歴を取得する。
また、取得部131は、ユーザにレコメンドが配信された際のユーザの反応を取得してもよい。例えば、取得部131は、レコメンドに対するユーザの反応として、レコメンドがユーザから選択(クリックやタッチ)された数もしくは率、又は、レコメンドに関するコンバージョンが達成された数もしくは率の少なくともいずれか一つを取得する。レコメンドに関するコンバージョンとは、例えば、レコメンドされた商品をユーザがクリックしたことや、レコメンドされた商品をユーザが実際に購入したこと等を示す。すなわち、取得部131は、CTR(Click Through Rate)やCVR(Conversion Rate)等の訴求効果を示す指標値を取得してもよい。
取得部131は、取得した情報を記憶部120内の各記憶部に格納する。例えば、取得部131は、取得したユーザの行動履歴を行動履歴記憶部121に格納する。また、取得部131は、取得したユーザの行動履歴から導出された反応情報をユーザテーブル123に記憶する。
また、取得部131は、ストアに関する情報を取得する。例えば、取得部131は、ウェブサーバ30から、ストアが取り扱う商品のリストや、各商品を識別する識別情報を取得する。
(抽出部132について)
抽出部132は、取得部131によって取得された行動履歴から、ユーザに対応するクエリを抽出する。抽出部132は、行動履歴に含まれる所定の商品を識別するための識別情報をクエリとして抽出する。
例えば、抽出部132は、識別情報として、所定の商品に設定された名称を抽出する。具体的には、抽出部132は、行動履歴に含まれる商品名をクエリとして抽出する。例えば、抽出部132は、ユーザが検索サービスA01において送信した検索クエリが所定の商品を示す名称である場合、かかる検索クエリをクエリ情報に追加するクエリとして抽出する。また、抽出部132は、ユーザが利用した所定のサービスにおいてクリックした商品のタイトルや、商品の説明文や、記事のタイトルや、記事に含まれるテキストデータ等から、商品名等のクエリを抽出する。
なお、抽出部132は、tf-idf等の重み値を利用してクエリになりうる単語を抽出してもよい。例えば、抽出部132は、単語が広く一般に使用される単語であり、レコメンドの検索処理に有用でないと判定される単語については、クエリとして抽出しないようにしてもよい。
また、抽出部132は、識別情報として、第三者によって設定される所定の商品の識別子を抽出してもよい。具体的には、抽出部132は、商品に設定されるJANコードをクエリとして抽出する。あるいは、抽出部132は、各サービスによって独自に設定される識別子をクエリとして抽出してもよい。これにより、抽出部132は、上記のようなtf-idf等による商品名の識別等を行わずとも、商品が一意に特定されたクエリを抽出することができる。
抽出部132は、抽出したクエリとユーザとを対応付けた情報を、例えば検索情報記憶部122のユーザテーブル123に格納する。
(生成部133について)
生成部133は、抽出部132によって抽出されたクエリに基づいて、ユーザごとのクエリ情報を生成する。
例えば、生成部133は、ユーザが検索したり、閲覧したり、購入したりした商品をクエリとするクエリ情報をユーザごとに生成する。具体的には、生成部133は、ユーザを文書と仮定し、商品を文書に含まれる単語と仮定した単語ベクトルの態様で、ユーザごとのクエリ情報を生成する。これにより、生成部133は、ストアを検索するために用いられるストアの特徴情報と対照させることのできる情報であって、ユーザの興味関心を示したクエリ情報を生成することができる。
なお、生成部133は、ユーザの属性情報や、ユーザの反応情報を加味したクエリ情報を生成してもよい。例えば、生成部133は、上記のようなベクトルに加えて、ユーザの性別や年齢、あるいは、ユーザのレコメンドへの反応等の情報を含むクエリ情報を生成する。これにより、例えば後述する検索部135は、ベクトル同士の類似性に加えて、ストアとユーザの属性情報のマッチングや、ユーザの反応情報等を加味した検索処理を行うことができる。
なお、生成部133は、上記の他に、取得部131によって取得された行動履歴から導出される種々の情報を組み合わせてクエリ情報を生成してもよい。例えば、生成部133は、ユーザが同じ商品を購入した回数や、閲覧の頻度等の情報を加味したクエリ情報を生成してもよい。
生成部133は、生成したクエリ情報を、例えば検索情報記憶部122のユーザテーブル123に格納する。
また、生成部133は、ストアの特徴情報を生成する。例えば、生成部133は、ストアが取り扱う商品のリストと、商品の識別情報(商品の名称や、JANコード等の識別子)から、ストアを特徴付ける情報を生成する。具体的には、生成部133は、ストアを文書と仮定し、商品を文書に含まれる単語と仮定し、ストアを表す単語ベクトルを生成する。
生成部133は、生成したストアの特徴情報を、例えば検索情報記憶部122のストアテーブル124に格納する。
(受信部134について)
受信部134は、レコメンドの配信要求をユーザから受信する。具体的には、受信部134は、ウェブページを表示するユーザ端末10から送信される要求であって、ウェブページに含まれるレコメンド枠で表示するレコメンドの配信に関する要求を受け付ける。受信部134は、受信した配信要求を検索部135に送る。
なお、受信部134は、ユーザ端末10から送信される配信要求を受信するとともに、ユーザ端末10を識別する情報を受信してもよい。例えば、受信部134は、ユーザ端末10から送信されるクッキーを受信してもよい。
(検索部135について)
検索部135は、抽出部132によって抽出されたクエリと、ストアが提供する複数の商品との相関性に基づいて、ユーザに推薦(レコメンド)するストアを検索する。具体的には、検索部135は、抽出部132によって抽出されたクエリから生成されたクエリ情報と、ストアが提供する複数の商品から生成されたストアの特徴情報との相関性に基づいて、レコメンドするストアを検索する。
例えば、検索部135は、所定の商品に設定された名称と、ストアが提供する複数の商品の各々に設定された名称との相関性に基づいて、ユーザにレコメンドするストアを検索する。あるいは、検索部135は、所定の商品の識別子と、ストアが提供する複数の商品の各々に設定された識別子との相関性に基づいて、ユーザにレコメンドするストアを検索してもよい。例えば、識別子はJANコード等である。
具体的には、検索部135は、クエリに基づくユーザのベクトルと、ストアが提供する複数の商品に基づくストアのベクトルとの相関性に基づいて、ユーザにレコメンドするストアを検索する。すなわち、検索部135は、ユーザが閲覧したり購入したりした商品の名称に基づいて生成されたベクトルと、ストアが取り扱う商品の名称に基づいて生成されたベクトルとの相関性に基づいて、ユーザにレコメンドするストアを検索する。あるいは、検索部135は、ユーザが閲覧したり購入したりした商品の識別子に基づいて生成されたベクトルと、ストアが取り扱う商品の識別子に基づいて生成されたベクトルとの相関性に基づいて、ユーザにレコメンドするストアを検索してもよい。
また、検索部135は、ユーザにレコメンドするストアを検索した後に、クエリ(クエリ情報)に基づいて、ストアが提供する複数の商品の中から、ユーザに推薦する商品を検索する。すなわち、検索部135は、ストアをユーザに推薦した場合に、当該ストアにおけるおすすめ商品として、レコメンド枠に表示させる各商品を検索する。なお、クエリ情報に含まれるクエリと、商品にタグ付けされた情報とをマッチングさせる処理については、例えば既知の検索手法が適宜用いられてもよい。例えば、検索部135は、商品にタグ付けされた単語や識別情報を転置インデックス化し、ユーザのクエリ情報を入力することで、マッチングした率(スコア)の高い上位所定個の商品を出力させる。そして、検索部135は、出力された商品をレコメンドの検索結果とする。例えば、検索部135によって、よりクエリ情報とマッチングしたと判定された商品ほど、検索結果における上位のレコメンドとして扱われる。
また、検索部135は、ユーザの反応に基づいて、ユーザに推薦するストアを検索してもよい。上述のように、取得部131は、後述する配信部136によって配信されたレコメンドに対するユーザの反応を取得する。この場合、検索部135は、ユーザからのフィードバックを加味した検索処理を行う。具体的には、検索部135は、ユーザにレコメンドした商品やストアがユーザから選択された数もしくは率、又は、レコメンドに関するコンバージョンが達成された数もしくは率等に基づいて、ストアの検索を行う。例えば、検索部135は、レコメンドされたストアに対するユーザの反応が他のストアに比べて良好な場合(例えば、クリック率やコンバージョン率が高い場合)には、当該ストアが配信対象として検索されやすくなるような調整を行ってもよい。あるいは、検索部135は、レコメンドされたストアに対するユーザの反応が他のストアに比べて不良な場合(例えば、クリック率やコンバージョン率が低い場合)には、当該ストアが配信対象として検索されにくくなるような調整を行ってもよい。
(配信部136について)
配信部136は、各種情報を配信する。例えば、配信部136は、レコメンドの配信要求を送信したユーザにレコメンドを配信する。具体的には、配信部136は、検索部135によって検索されたストアをレコメンドとしてユーザ端末10に配信する。
なお、配信部136は、検索部135によって検索されたレコメンドが順位付けされている場合には、上位の順位のレコメンドから優先的に配信する。また、配信部136は、ユーザ端末10が表示したウェブページに複数のレコメンド枠がある場合には、当該レコメンド枠に対応した数のレコメンドを配信する。
また、配信部136は、レコメンドとして、検索部135によって検索されたストア又は当該ストアが提供する複数の商品に関するレコメンドをユーザに配信する。すなわち、配信部136は、必ずしも検索されたストアそのものをレコメンドとして配信しなくてもよい。例えば、配信部136は、必ずしもストアの名称等をユーザに配信せずに、検索部135によって検索されたストアであって、当該ストアが取り扱う複数の商品をレコメンドとして配信してもよい。あるいは、配信部136は、必ずしも商品をレコメンドとして配信しなくてもよい。例えば、配信部136は、検索部135によって検索されたストアそのものをレコメンドとして配信してもよい。この場合、ユーザは、例えば、配信されたストアのレコメンドをクリックすること等により、当該レコメンドのリンク先であるストアページにアクセスすることができる。このように、配信部136は、必ずしもストアと商品とを常に配信するのではなく、どちらかいずれかをレコメンドとして配信してもよい。
〔4.ウェブサーバの構成〕
次に、図8を用いて、実施形態に係るウェブサーバ30の構成について説明する。図8は、実施形態に係るウェブサーバ30の構成例を示す図である。図8に示すように、ウェブサーバ30は、通信部31と、コンテンツ記憶部32と、制御部33とを有する。
通信部31は、例えば、NIC等によって実現される。そして、通信部31は、ネットワークNと有線または無線で接続され、ユーザ端末10や検索装置100との間で情報の送受信を行う。
コンテンツ記憶部32は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。そして、コンテンツ記憶部32は、コンテンツ(実施形態ではウェブページ)に関する情報を記憶する。例えば、コンテンツ記憶部32は、ウェブページを形成するHTMLファイルや、ウェブページに表示される静止画像や動画像を記憶する。なお、コンテンツ記憶部32に記憶されるウェブページには、広告コンテンツを表示する広告枠や、レコメンドを表示するレコメンド枠が含まれてもよい。また、コンテンツ記憶部32には、各サービスに関する情報が記憶されてもよい。例えば、コンテンツ記憶部32には、サービスに出店しているストアに関する情報や、ストアが取り扱っている商品の情報等が記憶されてもよい。
制御部33は、例えば、CPUやMPU等によって、ウェブサーバ30内部の記憶装置に記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。また、制御部33は、例えば、ASICやFPGA等の集積回路により実現される。
図8に示すように、制御部33は、受付部34と、配信部35とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部33の内部構成は、図8に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部33が有する各処理部の接続関係は、図8に示した接続関係に限られず、他の接続関係であってもよい。
受付部34は、ユーザ端末10からウェブページの取得要求を受け付ける。例えば、受付部34は、ウェブページの取得要求として、HTTPリクエストを受け付ける。
配信部35は、受付部34によってウェブページの取得要求が受け付けられた場合に、ウェブページをユーザ端末10に配信する。具体的には、配信部35は、コンテンツ記憶部32から取得要求対象のウェブページを取得し、取得したウェブページをユーザ端末10に配信する。また、配信部35は、ユーザ端末10がウェブページにおいて行った行動に関する情報(すなわち、サービスにおける行動ログ)を検索装置100に送信してもよい。
〔5.処理手順〕
次に、図9、図10及び図11を用いて、実施形態に係る検索装置100による処理の手順について説明する。まず、図9を用いて、検索装置100が、クエリ情報を生成する処理の手順を説明する。図9は、実施形態に係る処理手順を示すフローチャート(1)である。
図9に示すように、検索装置100は、ユーザが利用したサービスから、ユーザの行動履歴を取得する(ステップS101)。そして、検索装置100は、取得した行動履歴からクエリを抽出する(ステップS102)。
続けて検索装置100は、抽出したクエリから、ユーザごとのクエリ情報を生成する(ステップS103)。検索装置100は、ユーザと対応付けて、クエリ情報を格納する(ステップS104)。
次に、図10を用いて、検索装置100がレコメンドを検索する処理の手順を説明する。図10は、実施形態に係る処理手順を示すフローチャート(2)である。
図10に示すように、検索装置100は、ユーザ端末10からレコメンドの配信要求を受信したか否かを判定する(ステップS201)。配信要求を受信していない場合(ステップS201;No)、検索装置100は、配信要求を受信するまで待機する。
一方、配信要求を受信した場合(ステップS201;Yes)、検索装置100は、配信要求を送信したユーザに対応するクエリ情報に基づいて、レコメンドを検索する。具体的には、検索装置100は、当該ユーザのクエリ情報と、ストアの特徴情報との相関性を算出する(ステップS202)。例えば、検索装置100は、ユーザのベクトルと、ストアのベクトルとのコサイン類似度を算出する。
そして、検索装置100は、算出した値に基づいてストアを検索する(ステップS203)。具体的には、検索装置100は、算出した値が大きいものから優先的にストアを検索する。そして、検索装置100は、配信要求を送信したユーザに対して、検索したストアをレコメンドとして配信する(ステップS204)。具体的には、検索装置100は、検索したストアを軸として、ストアが取り扱う商品を検索し、検索した商品のレコメンドとともに、ストアをレコメンドとして配信する。
次に、図11を用いて、レコメンドの配信後の処理の一例に関する手順を説明する。図11は、実施形態に係る処理手順を示すフローチャート(3)である。
図11に示すように、検索装置100は、レコメンドに対する反応をユーザから取得したか否かを判定する(ステップS301)。検索装置100は、反応を受け付けていない場合(ステップS301;No)、受け付けるまで待機する。
なお、実施形態において、「反応を受け付けていない」とは、レコメンドがユーザ端末10に表示されたまま、ユーザがレコメンドに対する操作を行っていない状態をいう。このため、例えばユーザが、ユーザ端末10に表示されたレコメンドを含むウェブページから離脱した場合や、ブラウザソフトウェアを終了した場合も、「ユーザからの反応を受け付けた」状態に含まれる。この場合、検索装置100は、ユーザから好意的でない(クリックやコンバージョンでない)反応を取得したと判定し、反応を反応情報に反映させる。
反応を受け付けた場合(ステップS301;Yes)、検索装置100は、ユーザから反応のあったレコメンドに関するストアを特定する(ステップS302)。そして、検索装置100は、特定されたストアに対する反応情報を更新する(ステップS303)。具体的には、検索装置100は、ユーザからの反応がクリックやコンバージョン等、レコメンドが訴求効果を発揮したものであった場合、当該ストアを算出する際のスコアの重みが重くなるよう、反応情報を更新する。一方、検索装置100は、ユーザからの反応がウェブページからの離脱など、レコメンドが訴求効果を発揮したものでなかった場合、当該ストアを算出する際のスコアの重みが低くなるよう、反応情報を更新する。上記のような配信処理と更新処理との流れを繰り返すことにより、検索装置100は、ユーザに配信されるレコメンドを最適化することができる。
〔6.変形例〕
上述した検索装置100は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、検索装置100の他の実施形態について説明する。
〔6-1.ベクトルの重み〕
検索装置100は、ユーザのクエリ情報としてベクトルを生成する際に、所定の重み情報を加味してもよい。例えば、検索装置100は、ユーザの行動履歴に基づいて抽出されるクエリを計数する。そして、検索装置100は、計数した数に基づいて各クエリに重みを付与する。
例えば、図1で説明したように、ユーザU01の単語ベクトルは、(商品X01、商品X02、商品X08、商品X25、・・・)と表される。この場合、単語ベクトルは、商品X01が「1」であり、商品X02が「1」であり、商品X08が「1」であり、商品X25が「1」であり、他の商品が「0」と表される。ここで、検索装置100は、行動履歴から抽出されるクエリ(商品)に基づいて、各商品の値に重みが付されたベクトルを生成してもよい。例えば、検索装置100は、商品X01が「0.8」であり、商品X02が「0.5」であり、商品X08が「0.4」であり、商品X25が「0.2」であるような単語ベクトルを生成してもよい。この場合、当該ユーザは、例えば、商品X01に関する行動が商品X08の2倍の数だけ観測され、商品X01に関する行動が商品X25の4倍の数だけ観測されるようなユーザである。なお、検索装置100は、重みを付す手法は上記に限られず、種々の既知の手法に基づいて重みを付してもよい。
また、検索装置100は、ストアのベクトルに関しても、例えば、そのストアを特徴付ける商品について重みを重くしたベクトルを生成してもよい。そして、検索装置100は、このように重みが付されたベクトル同士の類似度を算出する。これにより、検索装置100は、よりユーザが好むと想定されるストアを検索することができる。
〔6-2.情報コンテンツ〕
上記実施形態では、検索装置100は、ユーザに推薦する情報コンテンツとして、ショッピングサービスで取り扱う商品に関するレコメンドを検索する例を示した。ここで、検索装置100は、商品に関するレコメンドであれば、ショッピングサービスで取り扱う商品以外の情報コンテンツを検索してもよい。
例えば、検索装置100は、情報コンテンツとして、ニュースやコラム等の記事を推薦してもよい。上述のように、検索装置100は、ユーザの行動に基づいて抽出されたクエリを含むクエリ情報を有するので、ユーザの興味関心に係る情報を有しているといえる。そこで、検索装置100は、クエリ情報を用いてニュースやコラム等の記事を検索することで、ユーザが興味を有すると想定される記事を精度よく検索することができる。この場合、検索装置100は、例えば、クエリ情報に含まれるクエリと、記事を構成するテキストデータに含まれる単語との一致度等に応じて、ユーザに推薦する記事を検索してもよい。
〔6-3.サービスの種別〕
また、検索装置100は、ショッピングサービスに限らず、種々のサービスに関するストアをレコメンド対象として検索してもよい。例えば、検索装置100は、オークションサービスや旅行予約サービスに関して、上記検索処理を実行してもよい。例えば、サービスがオークションサービスである場合には、検索装置100は、商品を「出品物」、ストアを「出品者」と置き換えて、上記検索処理を実行することができる。また、例えば、サービスが旅行予約サービスである場合には、検索装置100は、商品を「旅行プラン」、ストアを「旅行代理店」と置き換えて、上記検索処理を実行することができる。
〔6-4.面に応じた重み〕
また、検索装置100は、ユーザ端末10においてレコメンドが表示される面(媒体となるコンテンツ)の内容に応じて異なる重みが付与されたクエリ情報を用いて、当該面に表示されるストアを検索してもよい。
例えば、検索装置100は、レコメンドが表示される面が、ショッピングサービスA02のストアのうち食料品を扱うストアのページである場合には、食料品を扱うストアが優先的にレコメンドされるような重みを付して、検索処理を行ってもよい。これにより、検索装置100は、ユーザが現時点で閲覧しているページと関連性の高いストアを優先的にレコメンドとして配信できる。
〔6-5.媒体〕
上記実施形態では、情報コンテンツ(レコメンド)を表示する媒体となるコンテンツとして、ウェブサーバ30が提供するウェブページを例に挙げた。しかし、情報コンテンツを表示する媒体は、ウェブページに限られない。例えば、媒体となるコンテンツは、所定の情報アプリであったり、ゲームアプリであったりしてもよい。コンテンツは、所定のアプリに含まれるバナー等であってもよい。
〔6-6.他のユーザ情報の利用〕
検索装置100は、レコメンドの配信要求を送信したユーザのみならず、当該ユーザと類似するユーザのクエリ情報を用いて、配信要求を送信したユーザにレコメンドするストアを検索してもよい。
例えば、検索装置100は、ユーザと類似する属性(年齢や性別)を有する類似ユーザのクエリ情報や、類似ユーザの行動履歴に基づいてレコメンドするストアを検索する。例えば、検索装置100は、類似ユーザのクエリ情報を用いてストアを検索することで、配信要求を送信したユーザがあまり検索することのない商品を扱うストアを、配信要求を送信したユーザにレコメンドすることができる。これにより、検索装置100は、当該ユーザの購買機会の幅を拡大させることができる。また、検索装置100は、配信要求を送信したユーザのクエリ情報に基づいてストアを検索する際に、類似ユーザの行動履歴を加味した検索を行ってもよい。これにより、検索装置100は、例えば、類似ユーザが良くアクセスするストアを、配信要求を送信したユーザに優先的にレコメンドするなどの処理を行うことができる。かかる処理によっても、検索装置100は、当該ユーザの購買機会の幅を拡大させることができる。
〔6-7.ストア同士の関連性〕
検索装置100は、ストア同士の関連性を示すスコアを保持し、かかるスコアに基づいて処理を行ってもよい。例えば、検索装置100は、ストアを表示するレコメンド枠が複数あるような配信要求をユーザから受信したとする。この場合、検索装置100は、ユーザのクエリ情報に基づいて一つのストアを検索した後に、当該ストアと関連性の高いストアを、もう一つのレコメンド枠に表示するストアとして検索してもよい。
例えば、ストア同士の関連性は、ユーザの行動履歴に基づいて設定されてもよい。例えば、ストアB10を訪れるユーザは、ストアB11を訪れる率が高いものとする。この場合、ストアB10とストアB11との関連性は高く算出される。
そして、検索装置100は、ストアB10をレコメンドするストアとして検索した場合に、あわせて、ストアB11をレコメンドする。これにより、検索装置100は、通常ユーザが興味関心を示さないものの、当該ユーザが好みそうなストアをユーザに提示することができる。これにより、検索装置100は、訴求力を保ちつつ、意外性のあるストアをユーザにレコメンドすることができる。
〔7.ハードウェア構成〕
上述してきた実施形態に係る検索装置100やユーザ端末10やウェブサーバ30は、例えば図12に示すような構成のコンピュータ1000によって実現される。以下、検索装置100を例に挙げて説明する。図12は、検索装置100の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス(IF)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
CPU1100は、ROM1300又はHDD1400に記憶されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を記憶する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を記憶する。通信インターフェイス1500は、通信網500(図2に示したネットワークNに対応)を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを、通信網500を介して他の機器へ送信する。
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、入出力インターフェイス1600を介して生成したデータを出力装置へ出力する。
メディアインターフェイス1700は、記録媒体1800に記憶されたプログラム又はデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が実施形態に係る検索装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。また、HDD1400には、記憶部120内のデータが記憶される。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置から通信網500を介してこれらのプログラムを取得してもよい。
〔8.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図3に示した取得部131と受信部134とは統合されてもよい。また、例えば、記憶部120に記憶される情報は、ネットワークNを介して、外部に備えられた所定の記憶装置に記憶されてもよい。
また、上記実施形態では、検索装置100が、例えば、ユーザの行動履歴を取得する取得処理と、クエリを抽出する抽出処理と、レコメンドを検索する検索処理とを行う例を示した。しかし、上述した検索装置100は、取得処理を行う取得装置と、抽出処理を行う抽出装置と、検索処理を行う検索装置とに分離されてもよい。この場合、取得装置は、少なくとも取得部131を有する。抽出装置は、少なくとも抽出部132を有する。検索装置は、少なくとも検索部135を有する。そして、上記の検索装置100による処理は、取得装置と、抽出装置と、検索装置との各装置を有する検索システム1によって実現される。
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
〔9.効果〕
上述してきたように、実施形態に係る検索装置100は、取得部131と、抽出部132と、検索部135とを有する。取得部131は、ユーザのネットワーク上の行動履歴を取得する。抽出部132は、取得部131によって取得された行動履歴から、ユーザに対応するクエリを抽出する。検索部135は、抽出部132によって抽出されたクエリと、ストアが提供する複数の商品との相関性に基づいて、ユーザに推薦するストアを検索する。
このように、実施形態に係る検索装置100は、ユーザの行動履歴と、ストアが提供する複数の商品とを対照させることによって、ユーザが好むと想定されるストアを検索する。すなわち、検索装置100は、ある一つの商品とユーザとの相関性を求めるのではなく、複数の商品を取り扱うストアとユーザとの相関性を求めることで、ユーザに適した「ストア」を検索する。これにより、検索装置100は、通常ではユーザにレコメンドされないような様々な商品を検索可能な機会を得ることができる。結果として、検索装置100は、ユーザに訴求する多様な商品を検索することができる。
また、取得部131は、ユーザがネットワーク上のサービスを利用した際の行動履歴を取得する。抽出部132は、行動履歴に含まれる所定の商品を識別するための識別情報をクエリとして抽出する。
このように、実施形態に係る検索装置100は、ユーザのサービス利用時の行動履歴を取得する。サービス利用時には、ユーザは、自身の興味関心に沿った行動を採ることが比較的多いと想定される。このため、検索装置100は、ユーザの興味関心を的確に表した行動履歴を取得することができる。
また、取得部131は、ユーザによる所定の商品の閲覧、購入候補への設定、又は、購入の少なくともいずれか一つを行動履歴として取得する。
このように、実施形態に係る検索装置100は、実際にユーザが閲覧したり購入したりした行動履歴を取得する。これらの行動はユーザの興味関心を具体的に表すものといえるため、検索装置100は、これらの情報に基づいて処理を行うことで、ユーザの興味関心に即したストアを精度よく検索することができる。
また、抽出部132は、識別情報として、所定の商品に設定された名称を抽出する。検索部135は、ユーザに対応するクエリとして抽出された所定の商品の名称と、ストアが提供する複数の商品の各々に設定された名称との相関性に基づいて、ユーザに推薦するストアを検索する。
このように、実施形態に係る検索装置100は、商品の名称をクエリとして抽出する。これにより、検索装置100は、複数の商品を扱うストアと、ユーザのクエリ情報との相関性を適切に求めることができる。すなわち、検索装置100は、ストアの検索精度を向上させることができる。
また、抽出部132は、識別情報として、所定の商品を一意に識別する識別子を抽出する。検索部135は、ユーザに対応するクエリとして抽出された所定の商品の識別子と、ストアが提供する複数の商品の各々に設定された識別子との相関性に基づいて、ユーザに推薦するストアを検索する。
このように、実施形態に係る検索装置100は、商品の識別子(例えばJANコード)に基づいて処理を行ってもよい。これにより、検索装置100は、単語の抽出処理等を行うことなく、ユーザのクエリとストアとの相関性を求める処理を行うことができる。このため、検索装置100は、処理負荷を軽減させつつ、精度の高い検索処理を行うことができる。
また、検索部135は、クエリに基づくユーザのベクトルと、ストアが提供する複数の商品に基づくストアのベクトルとの相関性に基づいて、ユーザに推薦するストアを検索する。
このように、実施形態に係る検索装置100は、情報をベクトル表現し、相関性を求めてもよい。これにより、検索装置100は、クエリ情報とストアという、通常では相関性を求め辛い情報に関しても、的確に相関性(例えば類似度)を求めることができる。
また、検索部135は、ユーザに推薦するストアを検索した後に、クエリに基づいて、ストアが提供する複数の商品の中から、ユーザに推薦する商品を検索する。
このように、実施形態に係る検索装置100は、検索されたストアを軸として、さらにユーザにレコメンドする商品を検索する。検索されたストアはユーザと相関性が高いため、ユーザが好むような商品を多く揃えていると想定される。このため、検索装置100は、ユーザが反応しやすいような、訴求効果の高い商品を適切に検索することができる。
また、実施形態に係る検索装置100は、情報コンテンツの配信要求をユーザから受信する受信部134と、受信部134によって受信された配信要求を送信したユーザに、情報コンテンツとして、検索部135によって検索されたストア又はストアが提供する複数の商品に関するレコメンドを配信する配信部136とをさらに備える。
このように、実施形態に係る検索装置100は、情報コンテンツ(レコメンド)を配信する処理を行ってもよい。検索装置100は、情報コンテンツとして、ユーザが興味を抱くと想定される複数の商品をストア単位で配信することにより、ユーザに訴求する多様な商材をレコメンドすることができる。
また、取得部131は、配信部136によって配信された情報コンテンツに対するユーザの反応を取得する。検索部135は、ユーザの反応に基づいて、ユーザに推薦するストアを検索する。
このように、実施形態に係る検索装置100は、ユーザからのフィードバックを加味した検索処理を行ってもよい。これにより、検索装置100は、ユーザに対して検索するストアを最適化することができる。
また、取得部131は、情報コンテンツに対するユーザの反応として、情報コンテンツがユーザから選択された数もしくは率、又は、情報コンテンツに関するコンバージョンが達成された数もしくは率の少なくともいずれか一つを取得する。
このように、実施形態に係る検索装置100は、情報コンテンツが訴求効果を発揮したと想定されるユーザの反応を取得するようにしてもよい。これにより、検索装置100は、具体的にユーザが示した反応を検索処理にフィードバックできるので、ユーザに対して訴求効果を有するストアをより高い精度で検索できるようになる。
以上、本願の実施形態を図面に基づいて詳細に説明したが、これは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。
1 検索システム
10 ユーザ端末
30 ウェブサーバ
100 検索装置
110 通信部
120 記憶部
121 行動履歴記憶部
122 検索情報記憶部
123 ユーザテーブル
124 ストアテーブル
125 レコメンド情報記憶部
130 制御部
131 取得部
132 抽出部
133 生成部
134 受信部
135 検索部
136 配信部

Claims (12)

  1. ユーザのネットワーク上の行動履歴を取得する取得部と、
    前記取得部によって取得された行動履歴から、前記ユーザに対応するクエリを抽出する抽出部と、
    前記抽出部によって抽出されたクエリに基づいて生成された前記ユーザの単語ベクトルと、ストアの単語ベクトルとの相関性に基づいて、前記ユーザに推薦するストアを検索する検索部と、
    を備えたことを特徴とする検索装置。
  2. 前記取得部は、
    前記ユーザがネットワーク上のサービスを利用した際の行動履歴を取得し、
    前記抽出部は、
    前記行動履歴に含まれる所定の商品を識別するための識別情報を前記クエリとして抽出する、
    ことを特徴とする請求項1に記載の検索装置。
  3. 前記取得部は、
    前記ユーザによる所定の商品の閲覧、購入候補への設定、又は、購入の少なくともいずれか一つを前記行動履歴として取得する、
    ことを特徴とする請求項2に記載の検索装置。
  4. 前記抽出部は、
    前記識別情報として、前記所定の商品に設定された名称を抽出し、
    前記検索部は、
    前記ユーザに対応するクエリとして抽出された前記所定の商品の名称と、前記ストアが提供する複数の商品の各々に設定された名称との相関性に基づいて、当該ユーザに推薦するストアを検索する、
    ことを特徴とする請求項2又は3に記載の検索装置。
  5. 前記抽出部は、
    前記識別情報として、前記所定の商品を一意に識別する識別子を抽出し、
    前記検索部は、
    前記ユーザに対応するクエリとして抽出された前記所定の商品の識別子と、前記ストアが提供する複数の商品の各々に設定された識別子との相関性に基づいて、当該ユーザに推薦するストアを検索する、
    ことを特徴とする請求項2又は3に記載の検索装置。
  6. 前記検索部は、
    前記クエリに基づく前記ユーザのベクトルと、前記ストアが提供する複数の商品に基づく当該ストアのベクトルとの相関性に基づいて、前記ユーザに推薦するストアを検索する、
    ことを特徴とする請求項1~5のいずれか一つに記載の検索装置。
  7. 前記検索部は、
    前記ユーザに推薦するストアを検索した後に、前記クエリに基づいて、当該ストアが提供する複数の商品の中から、当該ユーザに推薦する商品を検索する、
    ことを特徴とする請求項1~6のいずれか一つに記載の検索装置。
  8. 情報コンテンツの配信要求を前記ユーザから受信する受信部と、
    前記受信部によって受信された配信要求を送信したユーザに、前記情報コンテンツとして、前記検索部によって検索されたストア又は当該ストアが提供する複数の商品に関するレコメンドを配信する配信部と、
    をさらに備えたことを特徴とする請求項1~7のいずれか一つに記載の検索装置。
  9. 前記取得部は、
    前記配信部によって配信された情報コンテンツに対するユーザの反応を取得し、
    前記検索部は、
    前記ユーザの反応に基づいて、前記ユーザに推薦するストアを検索する、
    ことを特徴とする請求項8に記載の検索装置。
  10. 前記取得部は、
    前記情報コンテンツに対するユーザの反応として、当該情報コンテンツがユーザから選択された数もしくは率、又は、当該情報コンテンツに関するコンバージョンが達成された数もしくは率の少なくともいずれか一つを取得する、
    ことを特徴とする請求項9に記載の検索装置。
  11. コンピュータが実行する検索方法であって、
    ユーザのネットワーク上の行動履歴を取得する取得工程と、
    前記取得工程によって取得された行動履歴から、前記ユーザに対応するクエリを抽出する抽出工程と、
    前記抽出工程によって抽出されたクエリに基づいて生成された前記ユーザの単語ベクトルと、ストアの単語ベクトルとの相関性に基づいて、前記ユーザに推薦するストアを検索する検索工程と、
    を含んだことを特徴とする検索方法。
  12. ユーザのネットワーク上の行動履歴を取得する取得手順と、
    前記取得手順によって取得された行動履歴から、前記ユーザに対応するクエリを抽出する抽出手順と、
    前記抽出手順によって抽出されたクエリに基づいて生成された前記ユーザの単語ベクトルと、ストアの単語ベクトルとの相関性に基づいて、前記ユーザに推薦するストアを検索する検索手順と、
    をコンピュータに実行させることを特徴とする検索プログラム。
JP2017038604A 2017-03-01 2017-03-01 検索装置、検索方法及び検索プログラム Active JP7117826B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017038604A JP7117826B2 (ja) 2017-03-01 2017-03-01 検索装置、検索方法及び検索プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017038604A JP7117826B2 (ja) 2017-03-01 2017-03-01 検索装置、検索方法及び検索プログラム

Publications (2)

Publication Number Publication Date
JP2018147045A JP2018147045A (ja) 2018-09-20
JP7117826B2 true JP7117826B2 (ja) 2022-08-15

Family

ID=63591258

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017038604A Active JP7117826B2 (ja) 2017-03-01 2017-03-01 検索装置、検索方法及び検索プログラム

Country Status (1)

Country Link
JP (1) JP7117826B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6945518B2 (ja) * 2018-12-28 2021-10-06 ヤフー株式会社 情報処理装置、情報処理方法および情報処理プログラム
CN110457581B (zh) * 2019-08-02 2023-04-18 达而观信息科技(上海)有限公司 一种资讯推荐方法、装置、电子设备及存储介质
US11354721B2 (en) * 2019-10-16 2022-06-07 Coupang Corp. Computerized systems and methods for providing product recommendations
CN111415216B (zh) * 2020-02-11 2023-11-07 广州探途网络技术有限公司 一种商品推荐方法、装置、服务器及存储介质
JP6895190B1 (ja) * 2020-06-30 2021-06-30 株式会社フライウィール 推薦システムおよび方法
JP6895189B1 (ja) * 2020-06-30 2021-06-30 株式会社フライウィール 推薦システムおよび方法
JP7208286B2 (ja) * 2021-03-18 2023-01-18 ヤフー株式会社 情報処理装置、情報処理方法及び情報処理プログラム
JP7044931B1 (ja) 2021-06-28 2022-03-30 ヤフー株式会社 情報処理装置、情報処理方法および情報処理プログラム
JP6998489B1 (ja) 2021-08-26 2022-01-18 ヤフー株式会社 情報処理装置、情報処理方法および情報処理プログラム
WO2023204263A1 (ja) * 2022-04-21 2023-10-26 株式会社Archaic 情報処理方法、情報処理システムおよびプログラム
KR102483903B1 (ko) * 2022-06-30 2023-01-03 주식회사 애자일소다 가맹점 추천 장치 및 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005227926A (ja) 2004-02-12 2005-08-25 Nec Corp 広告配信システム、広告配信方法および広告配信プログラム
JP2016522523A (ja) 2013-06-19 2016-07-28 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited 情報を推薦するための方法およびシステム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4981511B2 (ja) * 2007-05-02 2012-07-25 ヤフー株式会社 商品データを配信する方法
JP5601725B2 (ja) * 2011-11-30 2014-10-08 楽天株式会社 情報処理装置、情報処理方法、情報処理プログラム及び記録媒体
JP2015088089A (ja) * 2013-11-01 2015-05-07 株式会社Nttドコモ レコメンドサーバ及びレコメンド方法
JP6539962B2 (ja) * 2014-09-04 2019-07-10 富士ゼロックス株式会社 情報提示プログラム及び情報処理装置
JP6742683B2 (ja) * 2014-09-19 2020-08-19 ヤフー株式会社 広告配信装置、広告配信方法および広告配信プログラム
JP2016071586A (ja) * 2014-09-30 2016-05-09 エヌ・ティ・ティ・コミュニケーションズ株式会社 家計簿管理装置、家計簿管理方法及び家計簿管理プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005227926A (ja) 2004-02-12 2005-08-25 Nec Corp 広告配信システム、広告配信方法および広告配信プログラム
JP2016522523A (ja) 2013-06-19 2016-07-28 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited 情報を推薦するための方法およびシステム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
大河原 一輝、外4名,ECサイトにおける店舗推薦システムに向けた類似店舗抽出手法,情報処理学会 研究報告 ヒューマンコンピュータインタラクション(HCI)2015-HCI-162[online],日本,情報処理学会,2015年03月06日,p.1-8
安随 晋太郎、外4名,領域オントロジーと個人嗜好情報に基づくモバイル型レコメンデーションシステムの構成,第68回 知識ベースシステム研究会資料(SIG-KBS-A404),日本,社団法人人工知能学会,2005年01月24日,p.109-114

Also Published As

Publication number Publication date
JP2018147045A (ja) 2018-09-20

Similar Documents

Publication Publication Date Title
JP7117826B2 (ja) 検索装置、検索方法及び検索プログラム
US11455660B2 (en) Extraction device, extraction method, and non-transitory computer readable storage medium
JP6250106B1 (ja) 情報解析装置、情報解析方法、および情報解析プログラム
JP6698730B2 (ja) 抽出装置、抽出方法及び抽出プログラム
US20150134475A1 (en) Information processing apparatus, information processing method, information processing program, and recording medium storing thereon information processing program
WO2015198376A1 (ja) 情報処理装置、情報処理方法、プログラム、記憶媒体
JP6018338B1 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP6865045B2 (ja) 検索装置、検索方法及び検索プログラム
JP6320258B2 (ja) 抽出装置、抽出方法及び抽出プログラム
JP5815108B1 (ja) 配信装置、配信方法
JP2018169987A (ja) レコメンド情報提供システム及びレコメンド情報提供方法
JP6311052B1 (ja) 抽出装置、抽出方法及び抽出プログラム
JP2018088282A (ja) 抽出装置、抽出方法及び抽出プログラム
WO2017126707A1 (ja) 商品購入支援システム
JP6585998B2 (ja) コンテンツ決定装置
JP6664598B2 (ja) 提供装置、提供方法及び提供プログラム
JP7402260B2 (ja) 情報提供装置、情報提供方法、および情報提供プログラム
JP2016048526A (ja) 抽出装置、抽出方法および抽出プログラム
JP5968381B2 (ja) 抽出装置、抽出方法および抽出プログラム
JP7208103B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP7339383B1 (ja) 情報提供装置、情報提供方法、および情報提供プログラム
JP7195230B2 (ja) 通知装置、通知方法及び通知プログラム
JP2018072983A (ja) 検索装置、検索方法および検索プログラム
JP6310509B2 (ja) 抽出装置、抽出方法および抽出プログラム
JP6072739B2 (ja) 抽出装置、抽出方法および抽出プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191018

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20191101

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20191108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200811

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210330

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210527

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210527

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20210607

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20210608

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20210903

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20210907

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20211124

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20220412

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20220607

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20220705

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20220705

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220802

R150 Certificate of patent or registration of utility model

Ref document number: 7117826

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350