WO2020031232A1 - 情報処理システム、情報処理方法、及びプログラム - Google Patents
情報処理システム、情報処理方法、及びプログラム Download PDFInfo
- Publication number
- WO2020031232A1 WO2020031232A1 PCT/JP2018/029415 JP2018029415W WO2020031232A1 WO 2020031232 A1 WO2020031232 A1 WO 2020031232A1 JP 2018029415 W JP2018029415 W JP 2018029415W WO 2020031232 A1 WO2020031232 A1 WO 2020031232A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- user
- accommodation facility
- score
- unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/02—Reservations, e.g. for tickets, services or events
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9035—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9536—Search customisation based on social or collaborative filtering
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Tourism & Hospitality (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computational Linguistics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
情報処理システム(1)の特定手段(101)は、複数のユーザの各々の行動履歴に基づいて、行動の度合が所定度合以上の複数のデータ項目を特定する。第1情報取得手段(102)は、各ユーザの行動履歴に基づいて、特定手段(101)により特定された各データ項目の関連性を示す第1情報を取得する。出力手段(103)は、複数のデータ項目の各々の内容が入力された場合に、所定のパラメータに基づいて、各データ項目の関連性を示す第2情報を出力する。設定手段(104)は、特定手段(101)により特定された各データ項目の内容と第1情報とに基づいて、パラメータを設定する。
Description
本発明は、情報処理システム、情報処理方法、及びプログラムに関する。
従来、複数のデータ項目の関連性を特定する技術が知られている。例えば、特許文献1には、コンテンツ(データ項目の一例)の内容に基づいて、ユーザが閲覧したコンテンツと内容が関連する他のコンテンツを特定するコンテンツベースフィルタリングという技術が記載されている。また例えば、特許文献1には、複数のユーザの各々の行動履歴に基づいて、嗜好の似たユーザの組み合わせを特定したり、関連性の高いコンテンツの組み合わせを特定したりする協調フィルタリングという技術も記載されている。
コンテンツベースフィルタリングでは、例えば、複数のコンテンツの各々の内容を入力とし、各内容の関連性を示す情報を出力とするアルゴリズムが用いられる。しかしながら、従来のコンテンツベースフィルタリングでは、人間の勘に基づいてアルゴリズムのパラメータ設定が行われていたので、関連性の高いコンテンツを精度よく特定することが難しかった。
一方、協調フィルタリングでは、ユーザの実際の行動履歴を利用しているので、頻繁に閲覧等されているコンテンツであれば、コンテンツの内容から定量的に図ることができないユーザの嗜好を分析し、関連性の高いコンテンツを精度よく特定できる。しかしながら、あまり閲覧等されていないコンテンツについては、情報量が少ないので、関連性の高いコンテンツを精度よく特定できなかった。
本発明は上記課題に鑑みてなされたものであって、その目的は、関連性の高いデータ項目を特定する精度を高めることが可能な情報処理システム、情報処理方法、及びプログラムを提供することである。
上記課題を解決するために、本発明に係る情報処理システムは、複数のユーザの各々の行動履歴に基づいて、行動の度合が所定度合以上の複数のデータ項目を特定する特定手段と、各ユーザの行動履歴に基づいて、前記特定手段により特定された各データ項目の関連性を示す第1情報を取得する第1情報取得手段と、複数のデータ項目の各々の内容が入力された場合に、所定のパラメータに基づいて、各データ項目の関連性を示す第2情報を出力する出力手段と、前記特定手段により特定された各データ項目の内容と前記第1情報とに基づいて、前記パラメータを設定する設定手段と、を含むことを特徴とする。
本発明に係る情報処理方法は、複数のユーザの各々の行動履歴に基づいて、行動の度合が所定度合以上の複数のデータ項目を特定する特定ステップと、各ユーザの行動履歴に基づいて、前記特定ステップにより特定された各データ項目の関連性を示す第1情報を取得する第1情報取得ステップと、複数のデータ項目の各々の内容が入力された場合に、所定のパラメータに基づいて、各データ項目の関連性を示す第2情報を出力する出力ステップと、前記特定ステップにより特定された各データ項目の内容と前記第1情報とに基づいて、前記パラメータを設定する設定ステップと、を含むことを特徴とする。
本発明に係るプログラムは、複数のユーザの各々の行動履歴に基づいて、行動の度合が所定度合以上の複数のデータ項目を特定する特定手段、各ユーザの行動履歴に基づいて、前記特定手段により特定された各データ項目の関連性を示す第1情報を取得する第1情報取得手段、複数のデータ項目の各々の内容が入力された場合に、所定のパラメータに基づいて、各データ項目の関連性を示す第2情報を出力する出力手段、前記特定手段により特定された各データ項目の内容と前記第1情報とに基づいて、前記パラメータを設定する設定手段、としてコンピュータを機能させる。
また、本発明の一態様では、前記情報処理システムは、複数のデータ項目の各々の内容を前記出力手段に入力し、前記第2情報を取得する第2情報取得手段と、前記第2情報が取得された各データ項目の前記第2情報に基づいて、当該データ項目に関連する他のデータ項目に関する情報を提供する提供手段と、を更に含むことを特徴とする。
また、本発明の一態様では、前記提供手段は、前記度合が前記所定度合以上のデータ項目については、前記第1情報に基づいて前記情報を提供し、前記度合が前記所定度合未満のデータ項目については、前記第2情報に基づいて前記情報を提供する、ことを特徴とする。
また、本発明の一態様では、前記提供手段は、各ユーザにより行動されたデータ項目の前記第2情報に基づいて、当該ユーザに、当該データ項目に関連する他のデータ項目に関する前記情報を提供する、を含むことを特徴とする。
また、本発明の一態様では、前記情報処理システムは、各ユーザの行動履歴に基づいて、前記情報が提供されるユーザを決定する決定手段を更に含み、前記提供手段は、前記決定手段により決定されたユーザに、前記情報を提供する、を含むことを特徴とする。
また、本発明の一態様では、前記情報処理システムは、予め定められた方法に基づいて、各ユーザをグループ分けするグループ分け手段を更に含み、前記パラメータは、ユーザグループごとに用意されており、前記設定手段は、ユーザグループごとに、前記パラメータを設定する、ことを特徴とする。
また、本発明の一態様では、前記情報処理システムは、各ユーザの行動履歴を更新する更新手段を更に含み、前記設定手段は、前記更新手段により更新された各ユーザの行動履歴に基づいて、前記パラメータを更新する、ことを特徴とする。
本発明によれば、関連性の高いデータ項目を特定する精度を高めることが可能になる。
[1.情報処理システムの全体構成]
以下、本発明に関わる情報処理システムの実施形態の例を説明する。図1は、情報処理システムの全体構成を示す図である。図1に示すように、情報処理システム1は、サーバ10と、ユーザ端末20と、を含み、これらはネットワークNを介してデータ送受信可能に接続される。なお、図1では、サーバ10とユーザ端末20との各々を1台ずつ示しているが、これらは複数台あってもよい。
以下、本発明に関わる情報処理システムの実施形態の例を説明する。図1は、情報処理システムの全体構成を示す図である。図1に示すように、情報処理システム1は、サーバ10と、ユーザ端末20と、を含み、これらはネットワークNを介してデータ送受信可能に接続される。なお、図1では、サーバ10とユーザ端末20との各々を1台ずつ示しているが、これらは複数台あってもよい。
図2は、サーバ10の物理的構成を示す図である。図2に示すように、サーバ10は、サーバコンピュータであり、例えば、CPU11、メモリ12、及び通信インタフェース13を含み、これらはバス14で接続されている。CPU11は、メモリ12に記憶されたプログラムやデータに従って処理を実行する。なお、図2では、CPU11を1つとしているが、サーバ10は、少なくとも1つのプロセッサを含めばよく、2つ以上のCPU11を含んでもよい。メモリ12は、主記憶部及び補助記憶部を含む。例えば、主記憶部はRAMなどの揮発性メモリであり、補助記憶部は、ハードディスクやフラッシュメモリなどの不揮発性メモリである。通信インタフェース13は、有線通信又は無線通信用の通信インタフェースであり、例えば、ネットワークを介してデータ通信を行う。
ユーザ端末20は、ユーザが操作するコンピュータであり、例えば、パーソナルコンピュータ、携帯情報端末(タブレット型コンピュータを含む)、又は携帯電話機(スマートフォンを含む)等である。
なお、メモリ12に記憶されるものとして説明するプログラム及びデータは、ネットワークを介してサーバ10に供給されるようにしてもよい。また、サーバ10のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、サーバ10は、コンピュータ読み取り可能な情報記憶媒体を読み取る読取装置(例えば、光ディスクドライブやメモリカードスロット)や外部機器と直接的に接続するための入出力インタフェース(例えば、USB端子)を含んでもよい。情報記憶媒体に記憶されたプログラムやデータが読取装置又は入出力インタフェースを介して、サーバ10に供給されるようにしてもよい。
[2.情報処理システムの概要]
情報処理システム1は、ユーザが入力した検索条件に基づいて、データ項目を検索し、検索結果の中からユーザが選択したデータ項目を、ユーザ端末20に表示させる。
情報処理システム1は、ユーザが入力した検索条件に基づいて、データ項目を検索し、検索結果の中からユーザが選択したデータ項目を、ユーザ端末20に表示させる。
検索条件は、検索時のクエリであり、例えば、キーワード、数値、カテゴリ、ジャンル、又は属性といった種々の条件を適用可能である。
データ項目は、検索の対象となるデータの単位であり、例えば、データベースの個々のレコードである。データ項目は、任意の種類のデータであってよく、例えば、ウェブページ(ウェブサイト)、電子書籍、動画、楽曲、又はアプリケーションといったコンテンツであってもよいし、文書ファイル、テキストファイル、画像ファイル、又は音声ファイルといったファイルであってもよい。
データ項目には、インデックスが関連付けられており、検索条件と合致するインデックスが関連付けられたデータ項目が検索される。検索自体は、種々の手法を適用可能であり、検索条件との完全一致又は部分一致するインデックスを有するデータ項目が検索されてもよいし、あいまい検索が利用されてもよい。
本実施形態では、情報処理システム1を旅行予約サービスに適用する場合を説明し、データ項目の一例として、宿泊施設のページを説明する。宿泊施設としては、ホテル、旅館、又は民宿といった種々の施設を適用可能である。宿泊施設のページには、任意の情報が表示されてよく、例えば、宿泊施設の名前、場所、部屋数、タイプ、カテゴリ、説明文、交通アクセス、連絡先、設備、又は利用料金といった情報が表示されてよい。
例えば、ユーザがユーザ端末20を操作して、サーバ10にアクセスすると、旅行予約サービスのトップページがユーザ端末20に表示される。ユーザは、トップページから検索条件を入力し、所望の宿泊施設を検索する。なお、以降説明するページ(画面)は、ユーザ端末20に記憶されたアプリケーション内で表示されてもよいし、ウェブブラウザで表示されてもよい。
図3は、トップページの一例を示す図である。図3に示すように、例えば、トップページP1には、検索条件を入力するための入力フォームF10~F14と、検索を実行するためのボタンB15と、が表示される。図3に示すように、ユーザは、入力フォームF10~F14から、施設名、場所、日程、人数、及び料金といった検索条件を入力する。ユーザが検索条件を入力してボタンB15を選択すると、サーバ10は、当該検索条件に基づいて宿泊施設を検索し、ユーザ端末20に検索結果を送信する。ユーザ端末20は、検索結果を受信すると、当該検索結果を示す検索結果ページを表示させる。
図4は、検索結果ページの一例を示す図である。図4に示すように、検索結果ページP2の表示領域A20には、検索でヒットした宿泊施設の一覧が表示され、例えば、宿泊施設の名前、評価、及び価格帯といった情報が表示される。ユーザが、表示領域A20に表示された何れかの宿泊施設を選択すると、当該宿泊施設の詳細を示す宿泊施設ページがユーザ端末20に表示される。
図5は、宿泊施設ページの一例を示す図である。図5に示すように、宿泊施設ページP3には、当該宿泊施設の詳細な情報が表示され、例えば、宿泊施設の名前、評価、画像、部屋の名前、及び料金といった情報が表示される。また、宿泊施設ページP3には、宿泊施設を予約するためのボタンB30が表示される。ユーザは、ボタンB30を選択することによって、宿泊施設ページP3に表示中の宿泊施設を予約することができる。
本実施形態の情報処理システム1は、ユーザが閲覧したり予約したりした宿泊施設と関連する他の宿泊施設のクーポンがユーザ端末20に表示されるようになっている。本実施形態では、検索結果ページP2においてクーポンが表示される場合を説明するが、クーポンは、任意のページにおいて表示されるようにしてよく、例えば、トップページP1、宿泊施設ページP3、又はその他のページに表示されてよい。他にも例えば、クーポンは、電子メール、アプリケーション、又はソーシャルネットワーキングサービス等を利用して提供されてもよい。
図6は、検索結果ページP2にクーポンが表示される様子を示す図である。図6に示すように、検索結果ページP2の表示領域A21には、ユーザが閲覧又は予約した宿泊施設に関連する他の宿泊施設のクーポンが表示される。図6の例では、表示領域A21に示す「ホテルX」のクーポンは、ユーザが閲覧した「ホテルA」に関連するホテルのクーポンである。また例えば、表示領域A21に示す「ホテルY」のクーポンは、ユーザが閲覧した「ホテルB」に関連するホテルのクーポンである。
従来技術で説明したように、関連する宿泊施設を特定するための技術としては、コンテンツベースフィルタリングと、協調フィルタリングと、が存在する。コンテンツベースフィルタリングによれば、宿泊施設ページP3の内容が似た宿泊施設が特定されるので、例えば、場所、部屋数、タイプ、カテゴリ、又は交通アクセス等が似た宿泊施設が特定される。一方、協調フィルタリングによれば、各ユーザの行動履歴に基づいて宿泊施設が特定されるので、例えば、内容だけでは定量的に測れないユーザの嗜好を考慮したうえで、関連する宿泊施設が特定される。
従来技術で説明したように、コンテンツベースフィルタリングでは、宿泊施設の関連性を示すスコアを計算するためのアルゴリズムのパラメータ設定が難しいため、スコアの精度を十分に高めることができない。協調フィルタリングでは、あまり閲覧又は予約されていない宿泊施設については、情報量が少ないので、スコアの精度を十分に高めることができない。
そこで、本実施形態の情報処理システム1は、よく閲覧又は予約されている宿泊施設の協調フィルタリングに基づくスコアを計算し、当該宿泊施設ページP3の内容と当該スコアに基づいて、コンテンツベースフィルタリングのパラメータ設定を行う。これにより、情報処理システム1は、あまり閲覧又は予約されていない宿泊施設であったとしても、よく閲覧又は予約されている場合の協調フィルタリングと同程度のスコアを取得し、関連性の高い宿泊施設を特定する精度を高めるようにしている。以降、情報処理システム1の詳細を説明する。
[3.情報処理システムで実現される機能]
図7は、情報処理システム1で実現される機能の一例を示す機能ブロック図である。図7に示すように、情報処理システム1では、データ記憶部100、特定部101、第1情報取得部102、出力部103、設定部104、第2情報取得部105、及び提供部106が実現される。本実施形態では、これら各機能がサーバ10により実現される場合を説明する。
図7は、情報処理システム1で実現される機能の一例を示す機能ブロック図である。図7に示すように、情報処理システム1では、データ記憶部100、特定部101、第1情報取得部102、出力部103、設定部104、第2情報取得部105、及び提供部106が実現される。本実施形態では、これら各機能がサーバ10により実現される場合を説明する。
[3-1.データ記憶部]
データ記憶部100は、メモリ12を主として実現される。データ記憶部100は、関連する宿泊施設を特定するために必要なデータを記憶する。ここでは、データ記憶部100が記憶するデータの一例として、宿泊施設データベースDB1、行動履歴データベースDB2、スコアデータベースDB3、及びクーポンデータベースDB4について説明する。
データ記憶部100は、メモリ12を主として実現される。データ記憶部100は、関連する宿泊施設を特定するために必要なデータを記憶する。ここでは、データ記憶部100が記憶するデータの一例として、宿泊施設データベースDB1、行動履歴データベースDB2、スコアデータベースDB3、及びクーポンデータベースDB4について説明する。
図8は、宿泊施設データベースDB1のデータ格納例を示す図である。図8に示すように、宿泊施設データベースDB1には、宿泊施設に関する各種情報が格納される。本実施形態では、宿泊施設ページP3がデータ項目に相当し、宿泊施設ページP3は、宿泊施設データベースDB1に格納された情報に基づいて表示されるので、宿泊施設データベースDB1は、データ項目が格納されたデータベースということができる。
例えば、宿泊施設データベースDB1には、宿泊施設を一意に識別する宿泊施設ID、宿泊施設の名前、場所、部屋数、タイプ、カテゴリ、説明文、交通アクセス、連絡先、設備、又は利用料金が格納される。各情報は、文字列又は数値によって示される。例えば、場所は、ジオロケーション、緯度経度情報、又は基地局情報といった情報を利用可能である。また例えば、交通アクセスは、駅・インターチェンジからの所要時間、又は、主要都市からの所要時間といった情報を利用可能である。
なお、宿泊施設データベースDB1に格納された情報は、検索時のインデックスとして用いられるようにしてもよい。また、宿泊施設データベースDB1に格納される情報は、図8の例に限られず、例えば、宿泊施設の画像、動画、平均価格帯、又は口コミといった情報が格納されてもよい。
図9は、行動履歴データベースDB2のデータ格納例を示す図である。図9に示すように、行動履歴データベースDB2には、複数のユーザの各々の行動履歴が格納される。行動履歴データベースDB2には、情報処理システム1を利用する全てのユーザの行動履歴が格納されてもよいし、一部のユーザの行動履歴が格納されてもよい。
行動履歴とは、データ項目に対する行動の記録である。別の言い方をすれば、行動履歴は、ユーザによる行動のログである。行動とは、データ項目に対する挙動であり、例えば、閲覧、予約、利用、又は購入である。
閲覧は、ユーザがデータ項目の内容を視認することであり、データ項目の一部又は全部の内容をユーザ端末20に表示させること、サーバ10がデータ項目の一部又は全部をユーザ端末20に送信することである。データ項目が動画であれば、動画を視聴することは、閲覧の一例である。予約は、データ項目に係る施設又はサービスの予約である。利用は、データ項目に係る施設又はサービスの利用である。データ項目が音声であれば、音声を聴くことは、利用の一例である。購入は、データ項目に係る商品又はサービスの購入である。商品は、物理的な商品であってもよいし、楽曲、動画、又はアプリケーションといった電子的な商品であってもよい。
本実施形態では、行動の一例として、閲覧又は予約を説明し、行動履歴の一例として、閲覧履歴又は予約履歴を説明する。なお、利用又は購入が行動に相当する場合には、利用履歴又は購入履歴が行動履歴に相当する。
例えば、行動履歴データベースDB2には、ユーザを一意に識別するユーザID、閲覧又は予約された宿泊施設の宿泊施設ID、閲覧又は予約の何れかを示す行動内容、及び行動日時が格納される。行動日時は、ユーザが行動した日時であり、例えば、宿泊施設ページP3が閲覧された日時であってもよいし、宿泊施設の予約を受け付けた日時であってもよい。
行動履歴データベースDB2は、各ユーザが行動するたびに更新される。例えば、サーバ10は、ユーザ端末20に宿泊施設ページP3を表示させた場合に、当該ユーザ端末20のユーザIDに関連付けて、当該宿泊施設の宿泊施設IDを格納する。この場合、行動内容は、「閲覧」となる。行動日時は、宿泊施設ページP3のデータを送信した日時、宿泊施設ページP3のデータを生成した日時、又は宿泊施設ページP3の表示要求を受け付けた日時が格納されてもよいし、これらの日時から多少前後した日時が格納されてもよい。
また例えば、サーバ10は、ユーザ端末20から宿泊施設の予約を受け付けた場合に、当該ユーザ端末20のユーザIDに関連付けて、当該宿泊施設の宿泊施設IDを格納する。この場合、行動内容は、「予約」となる。行動日時は、予約処理を実行した日時、又は、予約を受け付けた日時が格納されてもよいし、これらの日時から多少前後した日時が格納されてもよい。
なお、図9では、閲覧履歴と予約履歴が同じデータベースに格納される場合を説明したが、これらは別々のデータベースに格納されてもよい。また、閲覧履歴、予約履歴、利用履歴、又は購入履歴のうちの何れか1つのみがデータベースに蓄積されるようにしてもよい。
図10は、スコアデータベースDB3のデータ格納例を示す図である。図10に示すように、スコアデータベースDB3には、複数の宿泊施設の関連性を示すスコアが格納される。
関連性とは、宿泊施設間の関わり又はつながりである。例えば、宿泊施設の内容が似ていることは、関連性があることに相当する。このため、関連性は、類似性ということもできる。また例えば、ある宿泊施設を閲覧又は予約したユーザが、他の宿泊施設を閲覧又は予約する蓋然性が高いことは、関連性があることに相当する。また例えば、ある宿泊施設に興味を持ったユーザが、他の宿泊施設に興味を持つ蓋然性が高いことは、関連性があることに相当する。
スコアは、関連性の高さを示す情報である。別の言い方をすれば、スコアは、関連している蓋然性、確率、又は確度である。スコアは、数値で示されてもよいし、記号で示されてもよい。スコアが記号で示される場合には、スコアの高さを示すS,A,B,Cといった記号が用いられるようにすればよい。本実施形態では、スコアが数値によって示される場合を説明する。スコアが高いほど関連性が高く、スコアが低いほど関連性が低い。
例えば、スコアデータベースDB3には、宿泊施設IDの組み合わせごとに、スコアが格納される。宿泊施設IDの組み合わせとは、2つの宿泊施設IDのセットである。スコアは、2つの宿泊施設のうちの一方(1つ目の宿泊施設)と他方(2つ目の宿泊施設)との関連性を示す。
詳細は後述するが、スコアデータベースDB3には、第1情報取得部102又は第2情報取得部105の何れかによって取得されたスコアが格納される。別の言い方をすれば、スコアデータベースDB3には、協調フィルタリング又はコンテンツベースフィルタリングの何れかによって取得されたスコアが格納される。
なお、本実施形態では、2つの宿泊施設ごとに、1つのスコアが計算される場合を説明するが、3つ以上の宿泊施設ごとに、1つのスコアが計算されてもよい。即ち、「複数の宿泊施設の関連性を示すスコア」の「複数」は、2つであってもよいし、3つ以上であってもよい。また、スコアデータベースDB3には、全ての宿泊施設の組み合わせのスコアが格納されてもよいし、一部の宿泊施設の組み合わせのスコアが格納されてもよい。
図11は、クーポンデータベースDB4のデータ格納例を示す図である。図11に示すように、クーポンデータベースDB4には、宿泊施設のクーポンが格納される。クーポンは、電子的な割引券、利用券、又は引換券である。例えば、ユーザは、表示領域A21に表示されたクーポンを選択することで、当該クーポンを獲得することができる。
例えば、クーポンデータベースDB4には、クーポンを一意に識別するクーポンID、クーポンの対象となる宿泊施設の宿泊施設ID、及びクーポンの内容が格納される。クーポンの内容としては、宿泊施設の割引額又は割引率が格納されてもよいし、無料で利用できる内容又はクーポンと引き替えに獲得できる商品若しくはサービスといった情報が格納されてもよい。
なお、データ記憶部100に記憶されるデータは、上記の例に限られない。例えば、データ記憶部100は、各ユーザに関する情報を格納するユーザデータベースを記憶してもよい。ユーザデータベースに格納される情報としては、ユーザID、氏名、性別、生年月日、又はメールアドレスといった基本情報であってもよいし、ユーザが獲得したクーポンのクーポンIDが格納されてもよい。また例えば、データ記憶部100は、後述する出力部103のパラメータを記憶してもよい。
[3-2.特定部]
特定部101は、CPU11を主として実現される。特定部101は、複数のユーザの各々の行動履歴に基づいて、行動の度合が所定度合以上の複数の宿泊施設を特定する。
特定部101は、CPU11を主として実現される。特定部101は、複数のユーザの各々の行動履歴に基づいて、行動の度合が所定度合以上の複数の宿泊施設を特定する。
行動の度合とは、行動の回数又は頻度である。本実施形態では、閲覧又は予約が行動に相当するので、閲覧数、閲覧頻度、予約数、又は予約頻度は、行動の度合に相当する。利用又は購入が行動に相当する場合には、利用数、利用頻度、購入数、又は購入頻度は、行動の度合に相当する。所定度合は、任意の度合を設定可能であり、固定値であってもよいし、可変値であってもよい。所定度合を示す情報は、データ記憶部100に記憶されているものとする。
本実施形態では、閲覧数と予約数との合計数を行動の度合の一例として説明し、当該合計数の上位10%を所定度合の一例として説明する。なお、所定度合は、上位10%に限られず、例えば、上位1%~9%程度であってもよいし、上位11%~上位50%程度であってもよい。所定度合は、閲覧数、閲覧頻度、予約数、又は予約頻度の閾値ということもできる。
特定部101は、行動履歴データベースDB2に基づいて、宿泊施設ごとに、閲覧数と予約数との合計数を集計する。本実施形態では、閲覧と予約を特に区別せずに、特定部101が、各宿泊施設の閲覧数と予約数との合計値を集計する場合を説明するが、閲覧と予約の各々に重み付けをして集計してもよい。例えば、予約の重み係数が閲覧の重み係数よりも大きくしてもよい。また例えば、特定部101は、あるユーザが同じ宿泊施設を繰り返し閲覧又は予約した場合には、閲覧又は予約されるたびに閲覧数又は予約数を加算してもよいし、この場合は閲覧数又は予約数を1回とみなしてもよい。
なお、集計対象となる期間は、過去の全期間であってもよいし、一部の期間であってもよい。一部の期間を集計対象とする場合には、任意の期間であってよく、例えば、直近の数日~数ヶ月程度の期間であってもよい。
特定部101は、集計結果に基づいて、合計数が上位10%の複数の宿泊施設を特定する。特定部101は、各宿泊施設の合計数を集計すると、合計数が多い順に宿泊施設を特定し、宿泊施設の総数の10%になるまで宿泊施設の特定を繰り返す。特定部101は、合計数が上位10%の宿泊施設の宿泊施設IDをデータ記憶部100に一時的に記録する。当該宿泊施設は、後述する第1情報取得部102によりスコアが取得される。
[3-3.第1情報取得部]
第1情報取得部102は、CPU11を主として実現される。第1情報取得部102は、各ユーザの行動履歴に基づいて、特定部101により特定された各宿泊施設の関連性を示すスコアを取得する。本実施形態では、第1情報取得部102が取得するスコアは、第1情報の一例である。
第1情報取得部102は、CPU11を主として実現される。第1情報取得部102は、各ユーザの行動履歴に基づいて、特定部101により特定された各宿泊施設の関連性を示すスコアを取得する。本実施形態では、第1情報取得部102が取得するスコアは、第1情報の一例である。
第1情報取得部102は、特定部101により特定された宿泊施設の組み合わせごとに、当該宿泊施設に対する各ユーザの行動履歴に基づいて、スコアを取得する。スコアの取得方法自体は、種々の取得方法を適用可能であり、例えば、協調フィルタリングで利用されているスコア計算のアルゴリズムを利用してよい。
第1情報取得部102は、行動履歴データベースDB2に格納された各ユーザの行動履歴を参照し、当該行動履歴をアルゴリズムに入力することによって、各宿泊施設のスコアを計算する。第1情報取得部102が取得するスコアは、協調フィルタリングに基づくスコアである。
スコアは、宿泊施設の組み合わせのうちの一方を閲覧又は予約したユーザが、他方も閲覧又は予約している場合に高くなり、そうではない場合に低くなる。宿泊施設の組み合わせの両方とも閲覧又は利用しているユーザが多いほどスコアが高くなり、宿泊施設の組み合わせの両方とも閲覧又は予約しているユーザが少ないほどスコアが低くなる。
第1情報取得部102は、宿泊施設の組み合わせの両方とも閲覧又は予約しているユーザの数をそのままスコアとして取得してもよいし、当該ユーザの数を所定の数式に代入することでスコアを計算してもよい。更に、宿泊施設の組み合わせの両方とも予約されている場合には、これらが両方とも閲覧されている場合に比べてスコアが高くなるようにしてもよい。
[3-4.出力部]
出力部103は、CPU11を主として実現される。出力部103は、複数の宿泊施設の各々の内容が入力された場合に、所定のパラメータに基づいて、各宿泊施設の関連性を示すスコアを出力する。本実施形態では、出力部103によって出力されるスコアは、第2情報の一例である。
出力部103は、CPU11を主として実現される。出力部103は、複数の宿泊施設の各々の内容が入力された場合に、所定のパラメータに基づいて、各宿泊施設の関連性を示すスコアを出力する。本実施形態では、出力部103によって出力されるスコアは、第2情報の一例である。
宿泊施設の内容は、宿泊施設に関する情報であり、例えば、文字列、数値、又はベクトル情報によって示される。別の言い方をすれば、宿泊施設の内容は、宿泊施設データベースDB1に格納された各情報(宿泊施設ページP3に表示される情報)であり、宿泊施設の特徴である。
パラメータは、スコアの計算で用いられる数値であり、計算式の係数である。出力部103は、スコアを計算するためのアルゴリズムを含み、パラメータは、当該アルゴリズムに含まれる計算式の係数である。アルゴリズム自体は、コンテンツベースフィルタリングのアルゴリズムを適用可能であり、例えば、教師有り機械学習で用いられるアルゴリズムを適用可能である。出力部103が出力するスコアは、コンテンツベースフィルタリングに基づくスコアである。本実施形態では、出力部103は、次の段落に記載する計算式に基づいて、スコアを計算する。
F(H1,H2)=a1*f1(H1,H2)+a2*f2(H1,H2)+a3*f3(H1,H2)+a4*f4(H1,H2)+a5*f5(H1,H2)+a6*f6(H1,H2)
計算式のH1,H2は、宿泊施設である。H1は、宿泊施設の組み合わせのうちの一方(1つ目の宿泊施設)であり、H2は、他方(2つ目の宿泊施設)である。計算式の左辺のF(H1,H2)は、コンテンツベースフィルタリングに基づくスコアである。
計算式の右辺のa1~a6は、パラメータであり、ここでは、関数f1(H1,H2)~f6(H1,H2)の係数である。本実施形態では、後述する設定部104により、パラメータa1~a6が設定される。f1(H1,H2)~f6(H1,H2)は、宿泊施設H1の内容を示す数値と、宿泊施設H2の内容を示す数値と、が代入される関数であり、代入された内容の関連性を計算する。なお、内容を示す数値は、特徴量ということもできる。
関数f1(H1,H2)は、宿泊施設H1の場所と、宿泊施設H2の場所と、の関連性を計算する。場所の関連性とは、場所の近さであり、宿泊施設H1,H2間の距離である。場所が近いほど関連性が高く、場所が遠いほど関連性が低い。即ち、距離が短いほど関連性が高く、距離が長いほど関連性が低い。
例えば、場所としてジオロケーションが用いられる場合には、関数f1(H1,H2)は、宿泊施設H1のジオロケーションが示す数値と、宿泊施設H2のジオロケーションが示す数値と、の差を計算し、差が少ないほど高い数値を出力し、差が多いほど低い数値を出力する。また例えば、場所として緯度経度情報が用いられる場合には、関数f1(H1,H2)は、宿泊施設H1の緯度経度情報と、宿泊施設H2の緯度経度情報と、の間の距離を計算し、距離が短いほど高い数値を出力し、距離が長いほど低い数値を出力する。
関数f2(H1,H2)は、宿泊施設H1の部屋数と、宿泊施設H2の部屋数と、の関連性を計算する。部屋数の関連性とは、部屋数の違いであり、宿泊施設の規模の違いである。部屋数の違いが少ないほど関連性が高く、部屋数の違いが多いほど関連性が低い。例えば、関数f2(H1,H2)は、宿泊施設H1の部屋数と、宿泊施設H2の部屋数と、の差を計算し、差が少ないほど高い数値を出力し、差が多いほど低い数値を出力する。
関数f3(H1,H2)は、宿泊施設H1のタイプと、宿泊施設H2のタイプと、の関連性を計算する。タイプの関連性とは、タイプの同一性である。タイプが同じであれば関連性が高く、タイプが違えば関連性が低い。例えば、関数f3(H1,H2)は、宿泊施設H1のタイプと、宿泊施設H2のタイプと、が一致していれば、第1の値(例えば、1)を出力し、これらが一致していなければ、第2の値(例えば、0)を出力する。
関数f4(H1,H2)は、宿泊施設H1のカテゴリと、宿泊施設H2のカテゴリと、の関連性を計算する。カテゴリの関連性とは、カテゴリの同一性である。カテゴリが同じであれば関連性が高く、カテゴリが違えば関連性が低い。例えば、関数f4(H1,H2)は、宿泊施設H1のカテゴリと、宿泊施設H2のカテゴリと、が一致していれば、第1の値(例えば、1)を出力し、これらが一致していなければ、第2の値(例えば、0)を出力する。
関数f5(H1,H2)は、宿泊施設H1の特徴と、宿泊施設H2の特徴と、の関連性を計算する。特徴の関連性とは、特徴の類似性である。特徴は、ベクトル情報で示されてもよいし、数値で示されてもよい。例えば、関数f5(H1,H2)は、宿泊施設H1の特徴と、宿泊施設H2の特徴と、の類似度を出力する。
例えば、特徴がベクトル情報で示される場合には、関数f5(H1,H2)は、宿泊施設H1の特徴を示すベクトル情報と、宿泊施設H2の特徴を示すベクトル情報と、の距離を計算し、距離が短いほど高い数値を出力し、距離が長いほど低い数値を出力する。また例えば、特徴が数値で示される場合には、関数f5(H1,H2)は、宿泊施設H1の特徴を示す数値と、宿泊施設H2の特徴を示す数値と、の差を計算し、差が少ないほど高い数値を出力し、差が多いほど低い数値を出力する。
関数f6(H1,H2)は、宿泊施設H1の交通アクセスと、宿泊施設H2の交通アクセスと、の関連性を計算する。交通アクセスの関連性とは、交通アクセスの類似性である。例えば、交通アクセスは、駅若しくはバス停からの所要時間、又は、主要都市若しくはインターチェンジからの所要時間によって示される。所要時間の差が小さいほど関連性が高く、所要時間の差が大きいほど関連性が低い。例えば、関数f6(H1,H2)は、宿泊施設H1の所要時間と、宿泊施設H2の所要時間と、の差を計算し、差が少ないほど高い数値を出力し、差が多いほど低い数値を出力する。
なお、6項目の内容に基づいてスコアが計算される場合を説明したが、スコアの計算で用いられる内容の項目数は、任意であってよい。例えば、1項目の内容だけに基づいてスコアが計算されてもよいし、2項目~5項目又は7項目以上の内容に基づいてスコアが計算されてもよい。また、スコアの計算で用いられる項目は、上記の例に限られず、宿泊施設データベースDB1に格納された任意の情報に基づいて計算されるようにしてよい。例えば、宿泊施設の連絡先、設備、利用料金、又は口コミといった情報に基づいて、スコアが計算されるようにしてもよい。
[3-5.設定部]
設定部104は、CPU11を主として実現される。設定部104は、特定部101により特定された各宿泊施設の内容とスコア(第1情報取得部102により取得されたスコア)とに基づいて、パラメータを設定する。
設定部104は、CPU11を主として実現される。設定部104は、特定部101により特定された各宿泊施設の内容とスコア(第1情報取得部102により取得されたスコア)とに基づいて、パラメータを設定する。
設定部104は、宿泊施設データベースDB1を参照し、特定部101により特定された各宿泊施設の内容を取得する。設定部104は、第1情報取得部102により取得されたスコアを取得する。設定部104は、特定部101により特定された各宿泊施設の内容を出力部103に入力した場合に、当該各宿泊施設のスコア又は当該スコアと似たスコアが出力されるように、パラメータを設定する。似たスコアとは、差が所定値未満となるスコアである。
例えば、設定部104は、当該取得した各宿泊施設の内容を入力とし、当該取得したスコアを出力とする教師データを生成し、教師データに基づいてパラメータを設定する。教師データに基づく設定方法自体は、教師有り機械学習で用いられている種々の方法を適用可能であり、例えば、線形回帰、多項式回帰、又は非線形回帰を利用してもよい。設定部104は、教師データが示す入力と出力の関係を得られるように、出力部103のパラメータの設定をする。パラメータの設定は、出力部103のアルゴリズムの学習ということもできる。
本実施形態では、パラメータは、a1~a6に示す係数なので、設定部104は、教師データに基づいて、パラメータa1~a6を設定する。例えば、設定部104は、教師データが示す入力と出力の関係をn(nは自然数)次元空間にプロットして線形回帰を行い、当該プロットされた入力と出力の関係が得られるように、関数F(H1,H2)のパラメータa1~a6を設定する。
[3-6.第2情報取得部]
第2情報取得部105は、CPU11を主として実現される。第2情報取得部105は、複数の宿泊施設の各々の内容を出力部103に入力し、スコアを取得する。第2情報取得部105は、全ての宿泊施設の組み合わせのスコアを取得してもよいし、一部の宿泊施設の組み合わせのスコアを取得してもよい。
第2情報取得部105は、CPU11を主として実現される。第2情報取得部105は、複数の宿泊施設の各々の内容を出力部103に入力し、スコアを取得する。第2情報取得部105は、全ての宿泊施設の組み合わせのスコアを取得してもよいし、一部の宿泊施設の組み合わせのスコアを取得してもよい。
一部の宿泊施設の組み合わせのスコアを取得する場合には、第2情報取得部105は、第1情報によりスコアが取得されなかった宿泊施設の組み合わせのスコアを取得してもよいし、ランダムに定まる宿泊施設の組み合わせのスコアを取得してもよい。他にも例えば、第2情報取得部105は、クーポンデータベースDB4にクーポンが格納された宿泊施設の組み合わせのスコアを取得してもよい。
第2情報取得部105は、スコアデータベースDB3を参照し、スコアの取得対象となる宿泊施設の組み合わせを決定する。第2情報取得部105は、宿泊施設データベースDB1を参照し、当該決定した宿泊施設の各々の内容を取得する。第2情報取得部105は、当該取得した内容を出力部103に入力すると、出力部103は、当該入力された内容に基づいてスコアを計算する。第2情報取得部105は、出力部103出力されたスコアを取得する。第2情報取得部105は、当該取得したスコアをスコアデータベースDB3に格納する。
本実施形態の例であれば、第2情報取得部105は、宿泊施設H1,H2の各々の場所、部屋数、タイプ、カテゴリ、特徴、及び交通アクセスの各々の情報を取得し、これら各情報を出力部103に入力する。なお、特徴は、宿泊施設の説明文からキーワードを抽出し、各キーワードの特徴ベクトルから算出されてもよいし、設備又は利用料金から算出されてもよい。例えば、出力部103は、入力された各情報と、先述した数式と、に基づいてスコアを計算する。スコアの計算方法は、先述した通りである。
[3-7.提供部]
提供部106は、CPU11を主として実現される。提供部106は、スコア(第2情報取得部105により取得されたスコア)が取得された各宿泊施設のスコアに基づいて、当該宿泊施設に関連する他の宿泊施設に関する情報を提供する。
提供部106は、CPU11を主として実現される。提供部106は、スコア(第2情報取得部105により取得されたスコア)が取得された各宿泊施設のスコアに基づいて、当該宿泊施設に関連する他の宿泊施設に関する情報を提供する。
宿泊施設に関連する他の宿泊施設は、スコアが高い宿泊施設(関連性の高い宿泊施設)であり、例えば、最も高いスコアの宿泊施設、スコアが閾値以上の宿泊施設、又はスコアが高い順に所定番目までの宿泊施設である。
宿泊施設に関する情報は、宿泊施設に関係する情報であればよく、例えば、宿泊施設のクーポン、宿泊施設ページP3へのリンク、又は、宿泊施設の名前、画像、説明文といった情報である。本実施形態では、クーポンは、データ項目に関する情報の一例である。
提供とは、ユーザに付与すること、ユーザ端末20に表示させること、ユーザのメールアドレス宛てに送信すること、メッセージアプリやSNS等におけるユーザのアカウント宛てに送信すること、又は、ユーザIDに情報を関連付けることである。別の言い方をすれば、提供は、ユーザに対するリコメンドということもできる。
提供部106は、スコアデータベースDB3を参照し、クエリとなる宿泊施設のスコアを取得する。クエリとなる宿泊施設は、任意の方法で決定されてよく、例えば、ユーザが過去に閲覧又は予約した宿泊施設であってもよいし、ランダムに定まる宿泊施設であってもよい。また例えば、ユーザが検索条件にヒットした何れかの宿泊施設がクエリとなってもよい。クエリとなる宿泊施設は、1つであってもよいし、複数であってもよい。
提供部106は、クエリとなる宿泊施設のスコアに基づいて、関連する他の宿泊施設を特定する。ここでは、説明の簡略化のために、提供部106は、スコアが最も高い他の宿泊施設を特定するものとして説明する。提供部106は、クーポンデータベースDB4を参照し、特定した他の宿泊施設の宿泊施設IDが格納されたクーポンが存在するかを判定する。提供部106は、クーポンが存在する場合には、当該クーポンを提供し、クーポンが存在しない場合には、次にスコアが高い宿泊施設のクーポンが存在するかを判定する。以降、クーポンが見つかるまで、クーポンの存在の有無の判定が繰り返されてもよい。
なお、提供部106は、全ての宿泊施設について、第2情報取得部105により取得されたスコアに基づいてクーポンを提供してもよいし、一部の宿泊施設についてのみ、第2情報取得部105により取得されたスコアに基づいてクーポンを提供してもよい。
例えば、提供部106は、行動の度合が所定度合以上の宿泊施設については、第1情報取得部102により取得されたスコアに基づいてクーポンを提供する。即ち、よく閲覧又は予約されている宿泊施設については、協調フィルタリングによって精度の高いスコアを算出可能なので、提供部106は、協調フィルタリングに基づくスコアによって、クーポンを提供する。
また例えば、提供部106は、行動の度合が所定度合未満の宿泊施設については、第2情報取得部105により取得されたスコアに基づいてクーポンを提供する。即ち、あまり閲覧又は予約されていない宿泊施設については、協調フィルタリングによるスコアは精度が高くないので、提供部106は、設定部104によりパラメータが設定されたコンテンツベースフィルタリングに基づくスコア(出力部103が出力したスコア)に基づいて、クーポンを提供する。
本実施形態では、提供部106は、各ユーザにより行動された宿泊施設のスコアに基づいて、当該ユーザに、当該宿泊施設に関連する他の宿泊施設のクーポンを提供する。即ち、本実施形態では、クエリとなる宿泊施設は、ユーザが閲覧又は予約した宿泊施設となる。提供部106は、行動履歴データベースDB2を参照し、各ユーザが閲覧又は予約した宿泊施設を特定する。提供部106は、スコアデータベースDB3を参照し、当該宿泊施設のスコアを取得する。提供部106は、当該取得したスコアに基づいて、関連する他の宿泊施設を特定する。提供部106は、クーポンデータベースDB4を参照し、当該特定した他の宿泊施設のクーポンを提供する。
[4.情報処理システムで実行される処理]
次に、情報処理システム1で実行される処理について説明する。ここでは、パラメータを更新するための更新処理と、ユーザ端末20にクーポンを提示するための提示処理と、を説明する。
次に、情報処理システム1で実行される処理について説明する。ここでは、パラメータを更新するための更新処理と、ユーザ端末20にクーポンを提示するための提示処理と、を説明する。
[4-1.更新処理]
図12は、更新処理の一例を示すフロー図である。図12に示す処理は、CPU11がメモリ12に記憶されたプログラムに従って動作することによって実行される。下記に説明する処理は、図7に示す機能ブロックにより実行される処理の一例である。
図12は、更新処理の一例を示すフロー図である。図12に示す処理は、CPU11がメモリ12に記憶されたプログラムに従って動作することによって実行される。下記に説明する処理は、図7に示す機能ブロックにより実行される処理の一例である。
図12に示すように、まず、CPU11は、行動履歴データベースDB2に基づいて、行動の度合が所定度合以上の複数の宿泊施設を特定する(S100)。S100においては、CPU11は、各宿泊施設の閲覧数と予約数との合計数を集計し、合計数の上位10%の宿泊施設を特定する。
CPU11は、行動履歴データベースDB2に基づいて、S100で特定した複数の宿泊施設のスコアを計算する(S101)。S101においては、CPU11は、S100で特定した宿泊施設の組み合わせごとに、協調フィルタリングに基づくスコアを計算する。
CPU11は、宿泊施設データベースDB1と、S101で計算したスコアと、に基づいて、コンテンツベースフィルタリングのスコア計算で用いるパラメータを更新する(S102)。S102においては、CPU11は、S101で特定した各宿泊施設の内容を入力とし、S102で計算した各宿泊施設のスコアを出力とする教師データを生成し、当該教師データに基づいて、パラメータを更新する。
CPU11は、スコアデータベースDB3に基づいて、スコアを計算する宿泊施設の組み合わせを選出する(S103)。S103においては、スコアデータベースDB3に宿泊施設IDが格納された宿泊施設の中から、任意の2つが選出される。
CPU11は、行動履歴データベースDB2に基づいて、S103で選出した宿泊施設の組み合わせが、両方とも閲覧数と予約数との合計数が上位10%の宿泊施設であるかを判定する(S104)。S104においては、CPU11は、S103で選出した宿泊施設が、2つともS100で特定した宿泊施設であるかを判定する。
宿泊施設の組み合わせが両方とも上位10%の宿泊施設であると判定された場合(S104;Y)、CPU11は、行動履歴データベースDB2に基づいて、S103で選出した宿泊施設のスコアを計算してスコアデータベースDB3に格納する(S105)。S105においては、CPU11は、S103で選出した宿泊施設の組み合わせに対し、S100で計算したスコア(協調フィルタリングに基づくスコア)を取得してスコアデータベースDB3に格納する。
一方、宿泊施設の組み合わせの少なくとも一方が上位10%の宿泊施設ではないと判定された場合(S104;N)、CPU11は、宿泊施設データベースDB1に基づいて、S104で選出した宿泊施設のスコアを計算してスコアデータベースDB3に格納する(S106)。S106においては、CPU11は、S102で更新したパラメータに基づいて、コンテンツデータベースフィルタリングに基づくスコアを計算してスコアデータベースDB3に格納する。
CPU11は、スコアデータベースDB3に基づいて、全ての宿泊施設の組み合わせについてスコアを更新したかを判定する(S107)。S107においては、CPU11は、スコアデータベースDB3に格納された宿泊施設IDの組み合わせの全てに対し、スコアの更新が行われたかを判定する。
全ての宿泊施設の組み合わせについてスコアを更新したと判定されない場合(S108;N)、S103の処理に戻り、他の組み合わせのスコアが計算される。一方、全ての宿泊施設の組み合わせについてスコアを更新したと判定された場合(S107;Y)、本処理は終了する。
[4-2.提示処理]
図13は、提示処理の一例を示すフロー図である。図13に示す処理は、CPU11がメモリ12に記憶されたプログラムに従って動作し、ユーザ端末20が自身に記憶されたプログラムに従って動作することによって実行される。下記に説明する処理は、図7に示す機能ブロックにより実行される処理の一例である。本実施形態では、検索結果ページP2においてクーポンが表示されるので、以降説明する処理は、トップページP1から検索条件が入力され、ボタンB15が選択された場合に実行される。
図13は、提示処理の一例を示すフロー図である。図13に示す処理は、CPU11がメモリ12に記憶されたプログラムに従って動作し、ユーザ端末20が自身に記憶されたプログラムに従って動作することによって実行される。下記に説明する処理は、図7に示す機能ブロックにより実行される処理の一例である。本実施形態では、検索結果ページP2においてクーポンが表示されるので、以降説明する処理は、トップページP1から検索条件が入力され、ボタンB15が選択された場合に実行される。
図13に示すように、まず、ユーザ端末20は、サーバ10に対し、検索の実行要求を送信する(S200)。S200においては、ユーザ端末20は、入力フォームF10~F14の各々に入力された検索条件とともに、検索の実行要求を送信する。なお、検索の実行要求とともに、ユーザ端末20のユーザIDも送信されるものとする。
サーバ10においては、実行要求を受信すると、CPU11は、宿泊施設データベースDB1に基づいて検索を実行する(S201)。S201においては、CPU11は、ユーザ端末20から受信した検索条件をクエリとし、宿泊施設データベースDB1に格納された各宿泊施設の情報をインデックスとして検索を実行する。CPU11は、検索にヒットした宿泊施設の宿泊施設IDをメモリ12に一時的に保持する。
CPU11は、行動履歴データベースDB2に基づいて、ユーザが閲覧又は予約した宿泊施設を特定する(S202)。S202においては、CPU11は、検索の実行要求をしたユーザのユーザIDに関連付けられた行動履歴に基づいて、過去の全期間に閲覧又は予約された宿泊施設を特定してもよいし、一部の期間に閲覧又は予約された宿泊施設を特定してもよい。例えば、CPU11は、直近の数日~数ヶ月程度の期間であってもよいし、直近の所定数の宿泊施設を特定してもよい。
CPU11は、スコアデータベースDB3に基づいて、S202で特定した宿泊施設に関連する他の宿泊施設を特定する(S203)。S203においては、CPU11は、S202で特定した宿泊施設のスコアを参照し、スコアが最も高い他の宿泊施設を特定する。他にも例えば、CPU11は、スコアが高い順に所定個数の他の宿泊施設を特定してもよいし、スコアが閾値以上となる他の宿泊施設を全て特定してもよい。CPU11は、特定した他の宿泊施設の宿泊施設IDをメモリ12に一時的に保持する。
CPU11は、クーポンデータベースDB4に基づいて、S203で特定した宿泊施設のクーポンが存在するかを判定する(S204)。S204においては、CPU11は、S203で特定した宿泊施設の宿泊施設IDがクーポンデータベースDB4に存在するかを判定する。
クーポンが存在しないと判定された場合(S204;N)、S203の処理に戻る。この場合、次にスコアが高い他の宿泊施設が特定され、当該宿泊施設のクーポンの有無が判定される。
一方、クーポンが存在すると判定された場合(S204;Y)、CPU11は、S201の検索結果が表示領域A20に配置され、かつ、当該クーポンが表示領域A21に配置された検索結果ページP2の表示データをユーザ端末20に送信する(S205)。なお、検索結果ページP2の表示データは、メモリ12に予め記憶されているものとする。表示データとしては、HTMLデータであってもよいし、フレームにはめ込む画像やテキストであってもよい。
ユーザ端末20は、表示データを受信すると、検索結果ページP2を表示させ(S206)、本処理は終了する。以降、ユーザは、表示領域A20から宿泊施設を選択して宿泊施設ページP3を表示させたり、表示領域A21に表示されたクーポンを選択して当該クーポンを獲得したりすることができる。
以上説明した情報処理システム1によれば、よく閲覧又は予約されている宿泊施設の内容と、協調フィルタリングに基づくスコアと、に基づいて、出力部103のパラメータを設定することで、あまり閲覧又は予約されていない宿泊施設であったとしても、よく閲覧又は予約されているかのような精度の高いスコアを計算し、関連性の高い宿泊施設を特定する精度を高めることができる。別の言い方をすれば、情報処理システム1は、コンテンツベースフィルタリングを用いたとしても、協調フィルタリングと同程度の精度のスコア(ユーザの嗜好も考慮したスコア)を計算し、関連性の高い宿泊施設を特定する精度を高めることができる。また、コンテンツベースフィルタリングのパラメータの設定処理を自動化することで、人手でパラメータを設定する手間を省くことができる。
また、あまり閲覧又は予約されていない宿泊施設については、出力部103にスコアを計算させ、協調フィルタリングに基づくスコアは計算せず、精度の低いスコアは計算しないので、不要な処理が実行されることを防止し、サーバ10の処理負荷を軽減することができる。また、よく閲覧又は予約されている宿泊施設については、協調フィルタリングを利用し、出力部103にスコアを計算させないので、不要なスコア計算が実行されることを防止し、サーバ10の処理負荷を軽減することができる。また、スコアデータベースDB3には、精度の低いスコアが格納されないので、不要なスコアが格納されることを防止し、サーバ10のメモリ消費量を削減することができる。
また、出力部103から取得されたスコアに基づいてクーポンを提供することにより、提供するクーポンの精度を高めることができる。例えば、予約機会又は購入機会が少ないサービス又は商品であっても、多数のサービス又は商品を取り揃えることで売り上げを伸ばすロングテールという手法では、サービス又は商品が頻繁に閲覧又は予約されていれば、協調フィルタリングにより精度の高いスコアを取得できるが、サービス又は商品があまり閲覧又は予約されていなければ、精度の高いスコアを取得できない。この場合、あまり閲覧又は予約されていないサービス又は商品については、全くクーポンが提供されなかったり、ユーザの嗜好にそぐわないクーポンが提供されてしまったりする。この点、情報処理システム1によれば、あまり閲覧又は予約されていないサービス又は商品であっても、精度よくクーポンを提供できるので、ロングテールの効果を最大限発揮することができる。
また、よく閲覧又は予約されている宿泊施設については、より精度の高い協調フィルタリングに基づくスコアを利用してクーポンを提供し、あまり閲覧又は予約されていない宿泊施設については、出力部103から取得されたスコアを利用してクーポンを提供することで、提供するクーポンの精度を効果的に高めることができる。
また、ユーザにより閲覧又は予約された宿泊施設に関連付けられたスコアに基づいて、各ユーザに、自身が閲覧又は予約した宿泊施設に関連する他の宿泊施設のクーポンを提供することができる。
[5.変形例]
なお、本発明は、以上に説明した実施形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
なお、本発明は、以上に説明した実施形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
図14は、変形例の機能ブロック図である。図14に示すように、以降説明する変形例では、決定部107、グループ分け部108、及び更新部109が実現される。
(1)例えば、クーポンは、全てのユーザに提供されるのではなく、特定のユーザに対して提供されるようにしてもよい。例えば、クーポンは、過去にクーポンの使用実績のあるユーザ、行動の度合が高いユーザ、又は、特定のタイプの宿泊施設を予約するユーザに対して提供されるようにしてもよい。別の言い方をすれば、クーポンは、使用する蓋然性の高いユーザに対してのみ提供されるようにしてもよい。
変形例(1)の情報処理システム1では、決定部107が実現される。決定部107は、CPU11を主として実現される。決定部107は、各ユーザの行動履歴に基づいて、クーポンが提供されるユーザを決定する。決定部107は、各ユーザの行動履歴に基づいて、所定の条件が満たされるかを判定し、判定結果に基づいて、当該ユーザがクーポンの提供対象であるかを判定する。
クーポンの提供対象であるかを判定するための条件は、任意の条件を設定可能である。例えば、当該条件は、クーポンを使用する蓋然性が高いユーザを特定するための条件であってもよいし、閲覧回数、予約回数、又は使用金額が多いユーザを特定するための条件であってもよい。例えば、下記に説明する第1の条件~第3の条件を設定してもよい。
[第1の条件]
例えば、クーポンの使用実績の有無を条件としてもよい。ここでは、クーポンの使用実績が行動履歴データベースDB2に格納される場合を説明するが、クーポンの使用実績は、他のデータベースに格納されてもよい。
例えば、クーポンの使用実績の有無を条件としてもよい。ここでは、クーポンの使用実績が行動履歴データベースDB2に格納される場合を説明するが、クーポンの使用実績は、他のデータベースに格納されてもよい。
例えば、ユーザは、検索結果ページP2の表示領域A21に表示されたクーポンの中から、使用するクーポンを選択することができる。ユーザがクーポンを選択して宿泊施設の予約をすると、ユーザ端末20は、ユーザが選択したクーポンのクーポンID、ユーザのユーザID、及び予約内容をサーバ10に送信する。サーバ10は、ユーザ端末20からクーポンIDと予約内容を受信すると、宿泊施設の予約処理を実行し、当該ユーザIDと当該クーポンIDとを関連付けて行動履歴データベースDB2に格納する。なお、クーポンIDではなく、クーポンの使用有無を示すフラグが格納されてもよい。
決定部107は、行動履歴データベースDB2に基づいて、判定対象期間における各ユーザのクーポンの使用回数、又は、直近の所定回数の予約における各ユーザのクーポンの使用回数を取得する。判定対象期間は、過去の全期間であってもよいし、一部の期間であってもよい。一部の期間を集計対象とする場合には、任意の期間であってよく、例えば、直近の数日~数ヶ月程度の期間であってもよい。決定部107は、各ユーザの使用回数に基づいて、当該ユーザがクーポンの提供対象のユーザであるかを決定する。
例えば、決定部107は、クーポンの使用回数又は使用頻度が閾値以上であるユーザをクーポンの提供対象とし、クーポンの使用回数又は使用頻度が閾値未満であるユーザをクーポンの提供対象とはしない。閾値は、任意の数値を設定可能であり、固定値であってもよいし、可変値であってもよい。例えば、閾値として1を設定してもよいし、2以上の数値を設定してもよい。
[第2の条件]
また例えば、行動の度合の高さを条件としてもよい。行動の度合の意味は、実施形態で説明した通りである。本変形例では、実施形態と同様、閲覧又は予約の度合を一例として説明する。
また例えば、行動の度合の高さを条件としてもよい。行動の度合の意味は、実施形態で説明した通りである。本変形例では、実施形態と同様、閲覧又は予約の度合を一例として説明する。
決定部107は、行動履歴データベースDB2に基づいて、判定対象期間における各ユーザの行動の度合を取得する。決定部107は、行動の度合が所定度合以上であるユーザをクーポンの提供対象とし、行動の度合が所定度合未満であるユーザをクーポンの提供対象とはしない。
例えば、決定部107は、閲覧回数、閲覧頻度、予約回数、又は予約頻度が閾値以上であるユーザをクーポンの提供対象とし、閲覧回数、閲覧頻度、予約回数、又は予約頻度が閾値未満であるユーザをクーポンの提供対象とはしない。閾値は、任意の数値を設定可能であり、固定値であってもよいし、可変値であってもよい。例えば、閾値として1を設定してもよいし、2以上の数値を設定してもよい。
[第3の条件]
また例えば、特定のタイプの宿泊施設を閲覧又は予約していることを条件としてもよい。特定のタイプは、予め定められたタイプであればよく、例えば、ホテルであってもよいし、旅館であってもよい。本変形例では、ホテルが特定のタイプに相当する場合を説明する。
また例えば、特定のタイプの宿泊施設を閲覧又は予約していることを条件としてもよい。特定のタイプは、予め定められたタイプであればよく、例えば、ホテルであってもよいし、旅館であってもよい。本変形例では、ホテルが特定のタイプに相当する場合を説明する。
なお、特定のタイプは、データ項目の種類に応じたタイプを設定すればよく、例えば、データ項目が電子書籍であれば、特定のタイプは、小説、漫画、又は雑誌といったタイプを設定すればよい。また例えば、データ項目が動画であれば、特定のタイプは、映画、アニメ、又はスポーツといったタイプを設定すればよい。データ項目が、楽曲、アプリケーション、又はファイルである場合も同様に、特定のタイプは、楽曲、アプリケーション、又はファイルのタイプを設定すればよい。
例えば、決定部107は、宿泊施設データベースDB1と行動履歴データベースDB2とに基づいて、各ユーザがホテルを閲覧又は予約したかを判定する。決定部107は、行動履歴データベースDB2に格納された宿泊施設IDを取得し、宿泊施設データベースDB1を参照して当該宿泊施設IDのタイプを取得する。決定部107は、当該取得したタイプがホテルであるかを判定する。
例えば、決定部107は、ホテルを閲覧又は予約したユーザをクーポンの提供対象とし、ホテルを閲覧又は予約していないユーザをクーポンの提供対象とはしない。また例えば、決定部107は、行動履歴データベースDB2に基づいて、各ユーザが閲覧又は予約した宿泊施設のうち、ホテルが占める割合が閾値以上であるかを判定してもよい。閾値は、任意の値を設定可能であり、例えば、0.5~0.9程度の値を設定してもよい。決定部107は、当該割合が閾値以上であるユーザをクーポンの提供対象とし、当該割合が閾値未満であるユーザをクーポンの提供対象とはしない。
なお、クーポンの提供対象となるユーザを決定する方法は、上記の例に限られない。例えば、決定部107は、ユーザの性別に基づいて、クーポンの提供対象となるユーザを決定してもよい。決定部107は、男性をクーポンの提供対象としてもよいし、女性をクーポンの提供対象としてもよい。また例えば、決定部107は、ユーザの年齢に基づいて、クーポンの提供対象となるユーザを決定してもよい。決定部107は、特定の年齢層のユーザをクーポンの対象としてもよい。特定の年齢層は、予め定められた年齢層であればよく、例えば、10代~80代の何れかであってよい。また例えば、決定部107は、ユーザの使用金額に基づいて、クーポンの提供対象となるユーザを決定してもよい。決定部107は、判定対象期間における使用金額が閾値以上であるユーザをクーポンの対象としてもよい。また例えば、決定部107は、クーポンを利用したユーザの割引額に基づいて、クーポンの提供対象となるユーザを決定してもよい。決定部107は、割引額が閾値以上であるユーザをクーポンの提供対象としてもよい。また例えば、決定部107は、上記説明した少なくとも2つの方法に基づいて評価値を計算し、当該評価値に基づいて、クーポンの提供対象となるユーザを決定してもよい。
提供部106は、決定部107により決定されたユーザに、クーポンを提供する。即ち、提供部106は、決定部107により決定されたユーザ以外には、クーポンを提供しない。例えば、クエリとなる宿泊施設をH1とし、クーポンの対象となる宿泊施設をH2とし、ユーザをUとすると、宿泊施設H2のクーポンを提供する蓋然性は、次の段落の式によって示すことができる。なお、次の段落の式は、宿泊施設H1,H2の各々の閲覧数と予約数との合計数が両方とも上位10%である場合の蓋然性である。
P(H2|U)=P(H2|H1)*P(H1|U)*P(U)
上記数式の左辺のP(H2|U)は、宿泊施設H2のクーポンがユーザUに提供される蓋然性である。上記数式の右辺のP(H2|H1)は、第1情報取得部102により取得されたスコアであり、協調フィルタリングに基づくスコアである。右辺のP(H1|U)は、ユーザが宿泊施設H1を閲覧又は予約したかを示す数値であり、例えば、ユーザが宿泊施設H1を閲覧又は予約していれば1となり、ユーザが宿泊施設H1を閲覧又は予約していなければ0となる。右辺のP(U)は、クーポンの対象となるユーザであるかを示す数値であり、クーポンの対象となるユーザであれば1となり、クーポンの対象でないユーザであれば0となる。
なお、宿泊施設H1,H2の何れかの閲覧数と予約数との合計数が上位10%ではない場合には、宿泊施設H2のクーポンを提供する蓋然性は、次の段落の式によって示すことができる。下記の式に示すように、宿泊施設H1,H2の何れかは、あまり閲覧又は予約されていないので、協調フィルタリングに基づくスコアP(H2|H1)ではなく、出力部103により出力されたスコアF(H1,H2)が用いられる。F(H1,H2)の内容は、実施形態で説明した通りである。
P(H2|U)=F(H1,H2)*P(H1|U)*P(U)
変形例(1)によれば、各ユーザの行動履歴に基づいて決定されたユーザに対し、クーポンを提供することによって、クーポンが不要なユーザに対してクーポンが提供されることを防止できる。クーポンが不要なユーザに対してはクーポンが提供されず、クーポン配布のための処理の実行が抑制されるので、サーバ10の処理負荷を軽減することができる。
(2)また例えば、ユーザをグループ分けし、出力部103のパラメータをユーザグループごとに設定することによって、ユーザの傾向をより強くパラメータに反映させ、スコアの精度を高めるようにしてもよい。
変形例(2)の情報処理システム1では、グループ分け部108が実現される。グループ分け部108は、CPU11を主として実現される。グループ分け部108は、予め定められた方法に基づいて、各ユーザをグループ分けする。グループ分け部108は、特定の属性を持つユーザをグルーピングする。グループ分け部108は、各ユーザのユーザIDと、当該ユーザが属するユーザグループと、を関連付けてデータ記憶部100に記録する。
例えば、グループ分け部108は、変形例(1)で説明した第1の方法~第3の方法と同様の方法によってグループ分けをしてもよい。また例えば、グループ分け部108は、ユーザの性別に基づいて、グループ分けしてもよい。グループ分け部108は、男性のユーザと女性のユーザとにグループ分けしてもよい。また例えば、グループ分け部108は、ユーザの年齢に基づいて、グループ分けしてもよい。グループ分け部108は、年齢層ごとにグループ分けしてもよい。また例えば、グループ分け部108は、ユーザの使用金額に基づいて、グループ分けしてもよい。グループ分け部108は、判定対象期間における使用金額の帯域ごとにグループ分けしてもよい。また例えば、グループ分け部108は、クーポンを利用したユーザの割引額に基づいて、グループ分けしてもよい。グループ分け部108は、割引額の帯域ごとにグループ分けしてもよい。また例えば、グループ分け部108は、上記説明した少なくとも2つの方法に基づいて評価値を計算し、当該評価値に基づいて、グループ分けしてもよい。
本変形例では、パラメータは、ユーザグループごとに用意されている。例えば、データ記憶部100には、ユーザグループと、パラメータと、が関連付けられて記憶されている。なお、全てのユーザグループにパラメータが用意されている必要はなく、一部のユーザグループに対してのみパラメータが用意されていてもよい。
設定部104は、ユーザグループごとに、パラメータを設定する。設定部104は、ユーザグループに関連付けられたパラメータを、当該ユーザグループに属するユーザの行動履歴に基づいて取得されたスコアに基づいて設定する。設定部104は、ユーザグループに関連付けられたパラメータを設定するための教師データを、当該ユーザグループに属するユーザの行動履歴に基づいて生成する。教師データに基づいてパラメータを設定する方法自体は、実施形態で説明した通りである。
変形例(2)によれば、ユーザグループごとに出力部103のパラメータを設定することで、関連性の高い宿泊施設を特定する精度を効果的に高めることができる。
(3)また例えば、パラメータの更新は、システム管理者による指示に基づいて実行されてもよいし、定期的に実行されてもよい。パラメータの更新タイミングは、予め定められた日時であればよく、定期的に訪れるようにしてもよいし、不定期的に訪れるようにしてもよい。パラメータの更新タイミングは、バッチファイル等によってデータ記憶部100に記憶させておけばよい。
更新タイミングが定期的に訪れる場合には、更新タイミング間の期間の長さは、任意であってよく、例えば、1時間~数日程度であってもよいし、1週間~数ヶ月程度であってもよい。更新タイミングが不定期的に訪れる場合には、システム管理者により指定された日時が更新タイミングとなってもよいし、ランダムに定まる日時が更新タイミングとなってもよい。他にも例えば、宿泊施設の閲覧数又は予約数の合計値が一定値を超えるたびに、更新タイミングが訪れるようにしてもよい。
変形例(3)の情報処理システム1では、更新部109が実現される。更新部109は、CPU11を主として実現される。更新部109は、各ユーザの行動履歴を更新する。更新部109は、各ユーザが宿泊施設を閲覧又は予約した場合に、行動履歴データベースDB2を更新する。行動履歴データベースDB2の更新方法は、実施形態で説明した通りである。
設定部104は、更新部109により更新された各ユーザの行動履歴に基づいて、パラメータを更新する。例えば、設定部104は、リアルタイムクロック等により現在日時を取得し、現在日時が所定の日時になったかを判定することによって、更新タイミングが訪れたかを判定する。また例えば、設定部104は、行動履歴データベースDB2を参照し、宿泊施設の閲覧数又は予約数の合計値が一定値を超えたかを判定することによって、更新タイミングが訪れたかを判定する。設定部104は、更新タイミングが訪れたと判定した場合に、最新の行動履歴データベースDB2に基づいて、パラメータを更新する。パラメータの決定方法は、実施形態で説明した通りである。
変形例(3)によれば、パラメータが繰り返し更新されることで、最新のトレンドに応じた精度の高いスコアを取得することができる。即ち、ユーザの嗜好は時期によって変化することがあり、出力部103のパラメータが設定されてから時間が経過すると、ユーザの最新の嗜好にそぐわないことがある。この点、最新の行動履歴データベースDB2に基づいて、パラメータを随時更新することで、最新のユーザの嗜好をパラメータに反映させることができる。
(4)また例えば、上記変形例のうちの2つ以上を組み合わせてもよい。
また例えば、実施形態では、提供部106が宿泊施設のクーポンを提供する場合を説明したが、提供部106は、パッケージツアー、高速バス、レンタカー、航空券、又は飲食店等のクーポンを提供してもよい。また例えば、実施形態では、提供部106がクーポンを提供する場合を説明したが、提供部106が提供する情報は、クーポンに限られない。提供部106は、宿泊施設に関する情報を提供すればよく、例えば、宿泊施設ページP3へのリンク又は宿泊施設の名前や画像等の情報を、リコメンド又は広告として提供してもよい。
また例えば、実施形態では、情報処理システム1を旅行予約サービスに適用する場合を説明したが、情報処理システム1は、他の種々の場面に適用可能である。例えば、情報処理システム1を、電子商取引に適用してもよいし、コンテンツ又はファイルの配信に適用してもよい。情報処理システム1を電子商取引に適用する場合には、商品に関する情報がデータ項目に相当し、商品のクーポン等が提供される。情報処理システム1をコンテンツ又はファイルの配信に適用する場合には、電子書籍、動画、楽曲、又はアプリケーションといったコンテンツ、又は、文書ファイル、テキストファイル、画像ファイル、又は音声ファイルといったファイルがデータ項目に相当し、これらのファイルのクーポン等が提供される。
また例えば、情報処理システム1の各機能のうち、特定部101、第1情報取得部102、出力部103、及び設定部104以外の機能は省略してもよい。例えば、データ記憶部100は、情報処理システム1に含まれている必要はなく、データベースサーバによって実現されてもよい。また例えば、サーバ10で実現されるものとして説明した機能は、サーバ10とユーザ端末20との間で分担されるようにしてもよい。
Claims (9)
- 複数のユーザの各々の行動履歴に基づいて、行動の度合が所定度合以上の複数のデータ項目を特定する特定手段と、
各ユーザの行動履歴に基づいて、前記特定手段により特定された各データ項目の関連性を示す第1情報を取得する第1情報取得手段と、
複数のデータ項目の各々の内容が入力された場合に、所定のパラメータに基づいて、各データ項目の関連性を示す第2情報を出力する出力手段と、
前記特定手段により特定された各データ項目の内容と前記第1情報とに基づいて、前記パラメータを設定する設定手段と、
を含むことを特徴とする情報処理システム。 - 前記情報処理システムは、
複数のデータ項目の各々の内容を前記出力手段に入力し、前記第2情報を取得する第2情報取得手段と、
前記第2情報が取得された各データ項目の前記第2情報に基づいて、当該データ項目に関連する他のデータ項目に関する情報を提供する提供手段と、
を更に含むことを特徴とする請求項1に記載の情報処理システム。 - 前記提供手段は、
前記度合が前記所定度合以上のデータ項目については、前記第1情報に基づいて前記情報を提供し、
前記度合が前記所定度合未満のデータ項目については、前記第2情報に基づいて前記情報を提供する、
ことを特徴とする請求項2に記載の情報処理システム。 - 前記提供手段は、各ユーザにより行動されたデータ項目の前記第2情報に基づいて、当該ユーザに、当該データ項目に関連する他のデータ項目に関する前記情報を提供する、
を含むことを特徴とする請求項2又は3に記載の情報処理システム。 - 前記情報処理システムは、各ユーザの行動履歴に基づいて、前記情報が提供されるユーザを決定する決定手段を更に含み、
前記提供手段は、前記決定手段により決定されたユーザに、前記情報を提供する、
を含むことを特徴とする請求項2~4の何れかに記載の情報処理システム。 - 前記情報処理システムは、予め定められた方法に基づいて、各ユーザをグループ分けするグループ分け手段を更に含み、
前記パラメータは、ユーザグループごとに用意されており、
前記設定手段は、ユーザグループごとに、前記パラメータを設定する、
ことを特徴とする請求項1~5の何れかに記載の情報処理システム。 - 前記情報処理システムは、各ユーザの行動履歴を更新する更新手段を更に含み、
前記設定手段は、前記更新手段により更新された各ユーザの行動履歴に基づいて、前記パラメータを更新する、
ことを特徴とする請求項1~6の何れかに記載の情報処理システム。 - 複数のユーザの各々の行動履歴に基づいて、行動の度合が所定度合以上の複数のデータ項目を特定する特定ステップと、
各ユーザの行動履歴に基づいて、前記特定ステップにより特定された各データ項目の関連性を示す第1情報を取得する第1情報取得ステップと、
複数のデータ項目の各々の内容が入力された場合に、所定のパラメータに基づいて、各データ項目の関連性を示す第2情報を出力する出力ステップと、
前記特定ステップにより特定された各データ項目の内容と前記第1情報とに基づいて、前記パラメータを設定する設定ステップと、
を含むことを特徴とする情報処理方法。 - 複数のユーザの各々の行動履歴に基づいて、行動の度合が所定度合以上の複数のデータ項目を特定する特定手段、
各ユーザの行動履歴に基づいて、前記特定手段により特定された各データ項目の関連性を示す第1情報を取得する第1情報取得手段、
複数のデータ項目の各々の内容が入力された場合に、所定のパラメータに基づいて、各データ項目の関連性を示す第2情報を出力する出力手段、
前記特定手段により特定された各データ項目の内容と前記第1情報とに基づいて、前記パラメータを設定する設定手段、
としてコンピュータを機能させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019567382A JP6655223B1 (ja) | 2018-08-06 | 2018-08-06 | 情報処理システム、情報処理方法、及びプログラム |
PCT/JP2018/029415 WO2020031232A1 (ja) | 2018-08-06 | 2018-08-06 | 情報処理システム、情報処理方法、及びプログラム |
US17/251,191 US11487835B2 (en) | 2018-08-06 | 2018-08-06 | Information processing system, information processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/029415 WO2020031232A1 (ja) | 2018-08-06 | 2018-08-06 | 情報処理システム、情報処理方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020031232A1 true WO2020031232A1 (ja) | 2020-02-13 |
Family
ID=69413248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2018/029415 WO2020031232A1 (ja) | 2018-08-06 | 2018-08-06 | 情報処理システム、情報処理方法、及びプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US11487835B2 (ja) |
JP (1) | JP6655223B1 (ja) |
WO (1) | WO2020031232A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022094342A (ja) * | 2020-12-14 | 2022-06-24 | ネイバー コーポレーション | 場所推薦方法、システム、及びプログラム |
JP2023136759A (ja) * | 2022-03-17 | 2023-09-29 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 処理装置、処理方法及び処理プログラム |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170161618A1 (en) * | 2015-12-08 | 2017-06-08 | Adobe Systems Incorporated | Attribute weighting for media content-based recommendation |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6029195A (en) * | 1994-11-29 | 2000-02-22 | Herz; Frederick S. M. | System for customized electronic identification of desirable objects |
US7660581B2 (en) * | 2005-09-14 | 2010-02-09 | Jumptap, Inc. | Managing sponsored content based on usage history |
US7676394B2 (en) * | 2005-09-14 | 2010-03-09 | Jumptap, Inc. | Dynamic bidding and expected value |
US7577665B2 (en) * | 2005-09-14 | 2009-08-18 | Jumptap, Inc. | User characteristic influenced search results |
US20110106614A1 (en) * | 2005-11-01 | 2011-05-05 | Jumptap, Inc. | Mobile User Characteristics Influenced Search Results |
US8086480B2 (en) * | 2008-09-25 | 2011-12-27 | Ebay Inc. | Methods and systems for activity-based recommendations |
JP2012190061A (ja) | 2011-03-08 | 2012-10-04 | Sony Corp | 情報処理装置、端末装置、情報提示システム、評価スコアの算出方法、及びプログラム |
JP5601725B2 (ja) * | 2011-11-30 | 2014-10-08 | 楽天株式会社 | 情報処理装置、情報処理方法、情報処理プログラム及び記録媒体 |
US11244014B2 (en) * | 2014-10-01 | 2022-02-08 | Tal Rubenczyk | System and method for enhancing exploration of data items |
-
2018
- 2018-08-06 WO PCT/JP2018/029415 patent/WO2020031232A1/ja active Application Filing
- 2018-08-06 JP JP2019567382A patent/JP6655223B1/ja active Active
- 2018-08-06 US US17/251,191 patent/US11487835B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170161618A1 (en) * | 2015-12-08 | 2017-06-08 | Adobe Systems Incorporated | Attribute weighting for media content-based recommendation |
Non-Patent Citations (4)
Title |
---|
JANNACH, DIETMAR ET AL: "Recommender Systems: An Introduction", 25 June 2012, CAMBRIDGE UNIVERSITY PRESS, article "5.3 Parallelized hybridization design", pages: 137 - 141, XP055685613 * |
ODAGIRI, YURI: "Machine Learning in Contents Platform: Industrial Advancements Using Data Set Publication and Model Publication", THE JOURNAL OF THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS, vol. 100, no. 1, 1 January 2017 (2017-01-01), pages 25 - 31 * |
TAGUCHI, HIROSHI ET AL.: "Personalized Document Recommendation for Field Engineers", PROCEEDINGS DEIM 2011, 27 July 2011 (2011-07-27), Retrieved from the Internet <URL:http://db-event.jpn.org/deim2011/proceedings/pdf/bl-4.pdf> [retrieved on 20110804] * |
UDA, TAKAYUKI ET AL.: "A Pseudo-voting Method in the Hybrid Recommendation System for Text Information", TRANSACTIONS OF THE INFORMATION PROCESSING SOCIETY OF JAPAN, vol. 46, no. 5, May 2005 (2005-05-01), pages 1246 - 1255 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022094342A (ja) * | 2020-12-14 | 2022-06-24 | ネイバー コーポレーション | 場所推薦方法、システム、及びプログラム |
JP7428688B2 (ja) | 2020-12-14 | 2024-02-06 | ネイバー コーポレーション | 場所推薦方法、システム、及びプログラム |
JP2023136759A (ja) * | 2022-03-17 | 2023-09-29 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 処理装置、処理方法及び処理プログラム |
JP7397113B2 (ja) | 2022-03-17 | 2023-12-12 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 処理装置、処理方法及び処理プログラム |
Also Published As
Publication number | Publication date |
---|---|
JPWO2020031232A1 (ja) | 2020-08-20 |
US11487835B2 (en) | 2022-11-01 |
JP6655223B1 (ja) | 2020-02-26 |
US20210248201A1 (en) | 2021-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI567673B (zh) | Sorting methods and devices for search results | |
JP5581408B2 (ja) | 情報処理システム、情報処理装置、情報処理方法及びプログラム | |
US20120123855A1 (en) | System and method for suggesting recommended keyword | |
JP5303606B2 (ja) | 広告システム、広告システムの制御方法、プログラム、及び情報記憶媒体 | |
JP7014926B1 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
JP5957164B1 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
JP6906667B1 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
JP6655223B1 (ja) | 情報処理システム、情報処理方法、及びプログラム | |
US20140372207A1 (en) | Profit index value generation system and profit index value generation method | |
JP6079479B2 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
JP6844071B1 (ja) | 検索システム、検索方法、及びプログラム | |
JP6679704B1 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
US9542497B2 (en) | Information processing apparatus, information processing method, and information processing program | |
JP2020095608A (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
JP6664598B2 (ja) | 提供装置、提供方法及び提供プログラム | |
JP6679706B1 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
JP6584486B2 (ja) | 予測装置、予測方法、及び予測プログラム | |
WO2019159288A1 (ja) | 情報処理システム、情報処理方法、及びプログラム | |
JP7387974B2 (ja) | 情報処理装置、情報処理方法、および情報処理プログラム | |
JP7104257B1 (ja) | 情報処理装置、情報処理方法、および情報処理プログラム | |
JP7342168B2 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
JP7087179B1 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
JP6731469B2 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
JP6679705B1 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
JP6269864B2 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 2019567382 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18929279 Country of ref document: EP Kind code of ref document: A1 |