(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022144330
(43)【公開日】2022-10-03
(54)【発明の名称】情報処理装置、情報処理方法、及び情報処理プログラム
(51)【国際特許分類】
G06F 16/28 20190101AFI20220926BHJP
G06F 16/35 20190101ALI20220926BHJP
【FI】
G06F16/28
G06F16/35
【審査請求】有
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2021045273
(22)【出願日】2021-03-18
(11)【特許番号】
(45)【特許公報発行日】2022-01-13
(71)【出願人】
【識別番号】319013263
【氏名又は名称】ヤフー株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】坪内 孝太
(72)【発明者】
【氏名】山口 修司
(72)【発明者】
【氏名】寺中 元希
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175FA03
5B175FB04
(57)【要約】
【課題】生成したモデルの信頼性の検証を実現する。
【解決手段】
情報処理装置は、複数の第一ユーザが入力した検索クエリと前記複数の第一ユーザの行動との関連を数値化する数値化部と、前記複数の第一ユーザとは異なる第二ユーザの検索クエリ及び前記数値化した関連に基づいて前記第二ユーザの行動を予測する予測部と、前記複数の第一ユーザを、前記数値化した関連に基づいて2以上のクラスタに分類する分類部と、を有することを特徴とする。
【選択図】
図1
【特許請求の範囲】
【請求項1】
所定の行動を行った複数のシードユーザが入力した検索クエリの共通性に基づいて、各シードユーザが入力した検索クエリと前記所定の行動との間の関係性を数値化した第1数値化情報を生成する第1生成部と、
各ユーザが入力した検索クエリと、前記第1数値化情報とに基づいて、前記所定の行動と各ユーザとの関係性を数値化した第2数値化情報を生成する第2生成部と
各ユーザが入力した検索クエリの共通性に基づいて、各ユーザを2以上のクラスタに分類する分類部と、
前記分類部による分類結果に基づいて、前記第2数値化情報を評価する評価部と
を有することを特徴とする情報処理装置。
【請求項2】
前記第1生成部は、前記所定の行動ごとに前記第1数値化情報を生成し、
前記第2生成部は、前記所定の行動ごとに前記第2数値化情報を生成する
ことを特徴とする、請求項1に記載の情報処理装置。
【請求項3】
前記第2生成部は、前記各ユーザが入力した検索クエリの情報を含む第2数値化情報を生成する
ことを特徴とする、請求項1又は2に記載の情報処理装置。
【請求項4】
前記第2生成部は、前記所定の行動と前記各ユーザとの関係性を数値化した値が閾値以上であるユーザと同一の前記クラスタのユーザの情報に基づいて前記第2数値化情報を生成する
ことを特徴とする、請求項3に記載の情報処理装置。
【請求項5】
前記分類部は、共通する1つもしくは複数の前記検索クエリを入力した前記ユーザを同じ前記クラスタに前記分類する
ことを特徴とする、請求項1~4のいずれか一つに記載の情報処理装置。
【請求項6】
前記分類部は、前記各ユーザが入力した検索クエリのうち、前記シードユーザが入力した検索クエリと同じ検索クエリの共通性に基づいて前記分類する
ことを特徴とする、請求項1~5のいずれか一つに記載の情報処理装置。
【請求項7】
前記分類部は更に、前記第2数値化情報の数値が所定の閾値以上の前記検索クエリの共通性に基づいて前記分類する
ことを特徴とする、請求項1~6のいずれか一つに記載の情報処理装置。
【請求項8】
前記分類部は更に、前記第2数値化情報の数値が所定の閾値以下の前記検索クエリの共通性に基づいて前記分類する
ことを特徴とする、請求項1~7のいずれか一つに記載の情報処理装置。
【請求項9】
前記所定の行動は、所定の基準検索クエリの入力である
ことを特徴する、請求項1~8のいずれか一つに記載の情報処理装置。
【請求項10】
情報処理装置が実行する情報処理方法であって、
所定の行動を行った複数のシードユーザが入力した検索クエリの共通性に基づいて、各シードユーザが入力した検索クエリと前記所定の行動との間の関係性を数値化した第1数値化情報を生成する第1生成工程と、
各ユーザが入力した検索クエリと、前記第1数値化情報とに基づいて、前記所定の行動と各ユーザとの関係性を数値化した第2数値化情報を生成する第2生成工程と
各ユーザが入力した検索クエリの共通性に基づいて、各ユーザを2以上のクラスタに分類する分類工程と、
前記分類工程による分類結果に基づいて、前記第2数値化情報を評価する評価工程と
を有することを特徴とする情報処理方法。
【請求項11】
所定の行動を行った複数のシードユーザが入力した検索クエリの共通性に基づいて、各シードユーザが入力した検索クエリと前記所定の行動との間の関係性を数値化した第1数値化情報を生成する第1生成手順と、
各ユーザが入力した検索クエリと、前記第1数値化情報とに基づいて、前記所定の行動と各ユーザとの関係性を数値化した第2数値化情報を生成する第2生成手順と
各ユーザが入力した検索クエリの共通性に基づいて、各ユーザを2以上のクラスタに分類する分類手順と、
前記分類手順による分類結果に基づいて、前記第2数値化情報を評価する評価手順と
をコンピュータに実行させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【0002】
インターネット上におけるユーザ行動の予測をする手法が知られている。
【0003】
例えば、特許文献1において、インターネット上のユーザの検索クエリの傾向を学習し、学習した検索クエリの傾向とその後のユーザの行動との関連性スコアを算出してモデルを生成し、このモデルを用いて他のユーザの行動を予測することで、ユーザの行動を従来よりも高い精度で予測することを可能にする技術が提案されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、このシステムにおいては、生成したモデル全体について信頼性を担保しているかどうか不明であるという問題があった。
【0006】
本願は、上記に鑑みてなされたものであって、生成したモデルの信頼性を検証する手法を提供することにある。
【課題を解決するための手段】
【0007】
本開示の実施形態に係る情報処理装置は、複数の第一ユーザが入力した検索クエリと前記複数の第一ユーザの行動との関連を数値化する数値化部と、前記複数の第一ユーザとは異なる第二ユーザの検索クエリ及び前記数値化した関連に基づいて前記第二ユーザの行動を予測する予測部と、前記複数の第一ユーザを、前記数値化した関連に基づいて2以上のクラスタに分類する分類部と、を有することを特徴とする。
【発明の効果】
【0008】
実施形態の一態様によれば、検索クエリを用いてモデル生成の元となった第一ユーザ群をクラスタリングするため、それぞれのクラスタごとに生成モデルの信頼性を評価でき、より高精度で信頼性の高いユーザ行動の予測が可能になるという効果を奏する。
【図面の簡単な説明】
【0009】
【
図1】
図1は、実施形態に係る情報処理の一例を示す図である。
【
図2】
図2は、実施形態に係る情報処理装置の構成例を示す図である。
【
図3】
図3は、実施形態に係る第1数値化情報の一例を示す図である。
【
図4】
図4は、実施形態に係る第2数値化情報の一例を示す図である。
【
図5】
図5は、実施形態に係る情報処理の一例を示すフローチャートである。
【
図6】
図6は、第2数値化情報の可視化の一例を示す図である。
【
図7】
図7は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0010】
以下に、本願に係る情報処理装置、情報処理方法、及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0011】
(実施形態)
〔1.情報処理〕
まず、
図1を用いて、実施形態に係る情報処理の一例について説明する。
図1は、実施形態に係る情報処理の一例を示す図である。以下に示す例において、対象はユーザであり、ユーザ全体を各ユーザとし、ユーザ全体のうちの所定の行動を取ったユーザの一部をシードユーザとして説明する。なお、対象はユーザに限らず、例えば、街、商品、サービスなど、情報を収集可能な対象であれば、どのような対象であってもよい。
【0012】
初めに、情報処理装置10は、所定の行動を取ったユーザ群の一部をシードユーザU1として記憶する(ステップS1)。所定の行動を取ったか否かの判定は、ユーザアンケート等で行ってもよいし、シードユーザU1の所持する端末装置100と情報処理装置10との通信の履歴によって判定してもよい。
【0013】
例えば、ある所定の店舗の名称を検索クエリとして入力し、その後、その所定の店舗を実際に訪問した利用者をシードユーザU1としてよい。また別の例として、イベントの名称を検索クエリとして入力し、その後、そのイベントに実際に参加した参加者をシードユーザU1としてもよい。更に別の例として、ある商品の名称を検索クエリとして入力し、その後、その名称の商品を実際に購入した者をシードユーザU1としてもよい。また、情報処理装置10は、実際に所定の店舗(例えば、配信済みの広告と対応する店舗)を利用した者をシードユーザU1としてもよい。また、情報処理装置10は、所定の広告やウェブページ、映画や音楽等のコンテンツを視聴した者をシードユーザU1としてもよい。
【0014】
すなわち、情報処理装置10は、各種の購買履歴や利用履歴、GPS等で収集した位置履歴等、各種の情報に基づいて、想定される任意の行動を行った利用者をシードユーザU1として推定する。このような推定については、各種任意の公知技術が採用可能である。
【0015】
次に、情報処理装置10は、シードユーザU1が入力した検索クエリの共通性に基づいて、各シードユーザU1が入力した検索クエリと所定の行動との関係性を数値化する(ステップS2)。この数値化した情報を第1数値化情報とする。
【0016】
第1数値化情報は、例えば以下のようにして得られる。シードユーザU1が入力した検索クエリを正例とし、ランダムに選択したユーザが入力した検索クエリを負例としたときに、正例を入力した際により高い値を出力し、負例を入力した際により低い値を出力するように学習モデルの学習を行う。このとき、学習には任意の手法が採用可能である。例えば、モデルとしてニューラルネットワークが採用される場合は、バックプロパゲーション等により実現可能である。
【0017】
なお、シードユーザU1が共通して入力している検索クエリについては、より高い値の数値が出力されるように学習モデルを学習してもよい。例えば、正例となる検索クエリを入力したシードユーザU1の数が多ければ多い程、より高い値を出力するように学習モデルを学習してもよい。また、負例となる検索クエリを入力したユーザの数が多い程、より小さい値(負の値)を出力するように学習モデルを学習してもよい。各検索クエリと、このような学習モデルに検索クエリを入力した際に出力したスコアとの組のリストを「モデル」として生成する。この「モデル」が本実施形態における第1数値化情報の一つの例である。すなわち、情報処理装置10は、所定の行為を行ったシードユーザU1が入力した検索クエリと、その所定の行為との間の関係性を示すスコアと、検索クエリとの組を第1数値化情報として生成する。
【0018】
更に、情報処理装置10は、シードユーザU1を含むユーザ全体の入力した検索クエリを記憶する(ステップS3)。そして、情報処理装置10は、ユーザ全体が入力した検索クエリと、第1数値化情報とに基づいて、所定の行動と各ユーザとの関係性を数値化する(ステップS4)。この数値化した情報を第2数値化情報とする。
【0019】
例えば、情報処理装置10は、シードユーザU1以外のユーザが入力した検索クエリと対応付けられたスコアを第1数値化情報であるモデルから特定する。そして、情報処理装置10は、特定したスコアの合計から、シードユーザU1が行った行動と、ユーザとの間の関係性を示すスコアを第2数値化情報として算出する。ここで、例えば所定の行動と関係性が高いユーザは第2数値化情報が高く、所定の行動と関係性が低いユーザは第2数値化情報が低くなる。
【0020】
第2数値化情報の計算は、例えば以下のように行われる。ユーザが入力した複数の検索クエリひとつひとつについて、対応付けられたスコア(第1数値化情報)を取得し、スコアの合計値を算出する。この合計値を第2数値化情報とする。このようにすれば、ユーザが入力した複数の検索クエリと所定の行動との関係性を数値として表すことができるため、単一の検索クエリの数値化と比較してより信頼性の高い数値化を実現できる。
【0021】
このようにして、ユーザごとの第2数値化情報を計算した後に、第2数値化情報の値の高い順にユーザを順位付けする。また、順位順に各ユーザが入力した検索クエリのリストを生成する。このようなリストは、どのような検索クエリを入力したユーザが、所定の行動との関連性が強いかを示すリスト(スコアリスト)になる。このようなリストは、検索クエリと所定の行動との関連性の分析や、ユーザの分析等に用いられる。なお、このようなリストは、シードユーザU1を選定する際に設定される行動ごとに作成されることとなる。
【0022】
ここで、第2数値化情報を用いた場合、ユーザが興味を有する可能性が高い情報の提供を実現できると考えられる。例えば、ある店舗を訪問したという行動と対応するリストには、その行動と関連性が高いユーザのランキングが含まれる。そこで、広告を配信する配信サーバは、ランキングの順位が高いユーザに対し、その店舗に関する広告を提供することで、広告効果を向上させることができると考えられる。
【0023】
一方で、第2数値化情報に基づいて、所定の行動との関係性の高い順にユーザを順位付けした際に、果たしてどの順位までのユーザが所定の行動との関係性が実際にあるのか、という評価は不明瞭となる。すなわち、第2数値化情報が高いということは、所定の行動を取る可能性が高い、という推測が働くが、一体第2数値化情報がどの程度高ければ所定の行動と関連性が高いか、所定の行動を実際に取り得るかをを推定するのが難しいまた、そもそも第2数値化情報が高いことが所定の行動との関係性が高いといえるのか否かの検証も不十分であった。
【0024】
そこで、情報処理装置10は、ステップS4の次に、各ユーザが入力した検索クエリの共通性に基づいて、各ユーザを2以上のクラスタに分類し、第2数値化情報を評価する(ステップS5)。このようにクラスタに分類した後に、第2数値化情報を評価することで、第2数値化情報が所定の行動との関連性が適切か否かを確認することができる。
【0025】
例えば、情報処理装置10は、ある所定の店舗を訪問したシードユーザU1の検索クエリから第1数値化情報を生成し、生成した第1数値化情報と各ユーザが入力した検索クエリに基づいて、各ユーザと、所定の店舗を訪問するという行為との間の関係性、すなわち、各ユーザが所定の店舗を訪問する確度を示す第2数値化情報を生成する。続いて、情報処理装置10は、所定の店舗を訪問したシードユーザU1の情報に基づいて、第2数値化情報に含まれるユーザをカテゴリ分類してもよく、第2数値化情報に含まれる各ユーザの情報に基づいて、ユーザをカテゴリ分類してもよい。
【0026】
例えば、情報処理装置10は、第2数値化情報であるスコアリストを参照し、各ユーザが入力した検索クエリを特定する。そして、情報処理装置10は、特定した検索クエリの類似性に基づいて、各順位のユーザをカテゴリ分類する。例えば、情報処理装置10は、スコアリストの各順位のユーザが入力した検索クエリの傾向に基づいて、各順位のユーザをクラスタリングする。また、情報処理装置10は、類似する検索クエリを多く入力した利用者を同じグループにクラスタリングする。なお、このような技術は、検索クエリに基づいてユーザをクラスタリングする各種の分類技術が採用可能である。
【0027】
このように、検索クエリの共通性に基づいて、各ユーザを2以上のクラスタに分類した際に、第2数値化情報の数値(スコア)が高い上位集団と、スコアが低い下位集団が異なるクラスタに分かれる場合(すなわち、第2数値化情報の順位が近いユーザがまとまるようなクラスタに分かれる場合)と、クラスタ内にスコアの高低が入り混じる場合と、が考えられる。このとき、上位集団と下位集団が異なるクラスタに分かれる場合の方が、クラスタの分類が成功しているといえる。なぜなら、所定の行動を取ったユーザの第2数値化情報が高いと仮定すると、この上位集団は所定の行動を取っている可能性が高いと推測することが可能だからである。
【0028】
なお、情報処理装置10は、クラスタ分類が成功しているか否かを判定し、それに基づいて、第1数値化情報の評価をも行うことが可能である。すなわち、第2数値化情報は第1数値化情報及び検索クエリに基づいて生成されているものなので、第2数値化情報が正しく所定の行動との関連性を示すことができているのならば、第1数値化情報もまた、単一の検索クエリとその数値化が正しく行われていると評価できるからである。
【0029】
なお、情報処理装置10は、各順位のユーザを分類したグループの名称、すなわち、グループの意味を、そのグループに分類されたユーザが入力した検索クエリの意味の共通性に基づいて推定してもよい。例えば、情報処理装置10は、あるグループに分類されたユーザが「食べ放題」という検索クエリを共通して入力している場合は、そのグループに分類されたユーザが「食べ放題」の店舗を所望するユーザであると推定してもよい。
【0030】
また、情報処理装置10は、同一グループに属するユーザが隣接する順位に位置する場合、その隣接する複数の順位をクラスタとする。そして、情報処理装置10は、このようなクラスタのまとまり具合や作りやすさ、作りにくさに応じて、第1数値化情報であるモデルが適切なモデルであるか否かを推定してもよい。
【0031】
また、情報処理装置10は、クラスタに含まれる順位の多さや、クラスタに含まれる順位の数値に応じて、どのクラスタの情報が実際に有用な情報であるかを推定してもよい。例えば、情報処理装置10は、順位が隣接するクラスタに対して隣接する値のIDを付与し、各クラスタに含まれる順位の平均値をX軸、クラスタのIDをY軸としてプロットすることで、各クラスタの線形性を確認し、ある程度線形性を保持するクラスタのみを信用可能なクラスタとしてもよい。
【0032】
また、各ユーザを2以上のクラスタに分類する際、ある分類方法では第2数値化情報の順位が近いユーザがまとまるようなクラスタ分類であり、別の分類方法では第2数値化情報の順位が近いユーザがまとまらないようなクラスタ分類である場合、両者のクラスタ分類の差分から、モデル(第1数値化又は第2数値化)が正しくできているか否かを判断することができる。
【0033】
なお、クラスタ分類の結果は、表示部等に表示し、オペレータ等に視認可能に提示してよい。その際、オペレータが、複数のクラスタのうち所定の行動と関連性の高いと思われるクラスタを選択できるようにしてよい。
【0034】
また、情報処理装置10は、各クラスタに含まれる順位がまとまるように、分類時のパラメータを自動的に設定してもよい。例えば、情報処理装置10は、各クラスタに分類される順位の数(すなわち、ユーザの数)が所定の下限閾値を下回る場合は、同一のクラスタに属するユーザが入力した検索クエリの類似性の閾値をより低い値に再調整してもよい。また、情報処理装置10は、各クラスタに分類される順位の数(すなわち、ユーザの数)が所定の上限閾値を上回る場合は、同一のクラスタに属するユーザが入力した検索クエリの類似性の閾値をより高い値に再調整してもよい。
【0035】
〔2.情報処理装置の構成〕
次に、
図2を用いて、実施形態に係る情報処理装置10の構成について説明する。
図2は、実施形態に係る情報処理装置10の構成例を示す図である。情報処理装置10は、所定の行動を行ったシードユーザU1が入力した検索クエリの共通性に基づいて、各シードユーザU1が入力した検索クエリと所定の行動との間の関係性を数値化した第1数値化情報を生成する。また、情報処理装置10は、生成した第1数値化情報と、各ユーザが入力した検索クエリと、に基づいて、所定の行動と各ユーザとの関係性を数値化した第2数値化情報を生成する。更に、各ユーザが入力した検索クエリの共通性に基づいて、各ユーザを2以上のクラスタに分類する。
図2に示すように、情報処理装置10は、通信部20と、記憶部30と、制御部40とを有する。なお、情報処理装置10は、各種の情報を表示する表示部や、各種の情報を入力する入力部を有してもよい。
【0036】
通信部110は、例えば、NIC等によって実現される。そして、通信部110は、所定のネットワークと有線または無線で接続され、外部の端末装置や情報処理装置との間で情報の送受信を行う。
【0037】
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Fl ash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。実施形態に係る記憶部120は、各ユーザの情報と、第1数値化情報と、第2数値化情報とを記憶していてもよい。
【0038】
(第1数値化情報)
図3は、実施形態に係る第1数値化情報の一例を示す図である。
図3に示すように、第1数値化情報は、シードユーザU1の入力した検索クエリと、シードユーザU1の行った所定の行動との間の関係性を数値化したものである。
図3に示す例においては、例えば「ステーキ松竹梅」というステーキ食べ放題のチェーン店があったとし、ステーキ松竹梅の店舗に実際に訪れた行為がシードユーザU1の所定の行動と仮定すると、検索ワードに「ステーキ松竹梅」と入力する行為と、実際に「ステーキ松竹梅」に訪れた行為との間の関係性は非常に高いということが分かる。また、「食べ放題」といった、「ステーキ松竹梅」の属性を表す単語や、「しゃぶしゃぶ」といったステーキと同じ肉料理の検索ワードも比較的高いスコアが割り当てられていることが分かる。
図3の例においては「ステーキ松竹梅」という店舗への訪問を取り扱ったが、取り扱う所定の行動はこれに限られない。すなわち、特定の店舗への訪問を所定の行動としてもよいし、特定の商品を購入する行為を所定の行動としてもよい。その場合、夫々の行動について個別の第1数値化情報が生成される。
【0039】
(第2数値化情報)
図4は、実施形態に係る第2数値化情報の一例を示す図である。第2数値化情報は、各ユーザUが入力した検索クエリと、第1数値化情報とに基づいて、所定の行動と各ユーザUとの関係性を数値化したものである。
図4に示す例においては、第2数値化した値(以下、スコア)が高いユーザから昇順でソートされている。また、夫々のユーザのスコア及び検索クエリが表されている。
【0040】
図4において、スコアは、各ユーザの検索ログの検索ワード一つ一つに対して、所定の行動と検索ワードとの関連性を数値化した情報である第1数値化情報を適用し、合算することで算出する。すなわち、各ユーザUの検索ログの検索ワード一つ一つに対して、そのワードと同様のワードを第1数値化情報から検索し、検索した結果ワードが見つかった場合は、そのワードに割り当てられているスコアを合計スコアに合算する、という計算を検索ログのワード分だけ行う。このようにすれば、そのユーザの検索ログから、所定の行動を取る可能性が高いか否かを数値として表現することができ、所定の行動を取るか否かの予測を高い精度で行うことを可能とすることが期待できる。
【0041】
なお、
図3の例においては「ステーキ松竹梅」という店舗への訪問を取り扱ったが、第1数値化情報と同様、取り扱う所定の行動はこれに限られない。すなわち、特定の店舗への訪問を所定の行動としてもよいし、特定の商品を購入する行為を所定の行動としてもよい。その場合、夫々の行動について個別の第2数値化情報が生成される。
【0042】
(制御部40)
図2の説明に戻って、制御部40は、例えば、CPUやMPU等によって、情報処理装置10内部の記憶装置に記憶されている各種プログラム(予測プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部40は、例えば、ASICやFPGA等の集積回路により実現される。
【0043】
図2に示すように、制御部40は、第1生成部41と、第2生成部42と、分類部43と、評価部44とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部40の内部構成は、
図2に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部40が有する各処理部の接続関係は、
図2に示した接続関係に限られず、他の接続関係であってもよい。また、制御部40は、例えば、外部の情報処理装置から第1数値化情報などの種々の情報を受信する場合、受信部を有してもよい。また、制御部40は、例えば、外部の情報処理装置に第2数値化情報を送信する場合、送信部を有してもよい。
【0044】
(第1生成部)
第1生成部41は、上述した処理により、第1数値化情報を生成する。実施形態において、第1生成部41は、所定の行動を行った複数のシードユーザが入力した検索クエリの共通性に基づいて、検索クエリと所定の行動との間の関係性を数値化した第1数値化情報を生成する。ここで、第1生成部41は、複数の所定の行動ごとに第1数値化情報を生成してもよい。
【0045】
(第2生成部)
第2生成部42は、各ユーザの入力した検索クエリと第1数値化情報とに基づいて、各ユーザUにおける所定の行動との関係性を示す第2数値化情報を生成する。ここで、第2生成部42は、複数の所定の行動ごとに第2数値化情報を生成してもよい。更に、第2生成部は、各ユーザが入力した検索クエリの情報を含む第2数値化情報を生成してもよい。すなわち、第2数値化情報は、ユーザIDとスコアの関連付けが行われていればよいが、
図4に示すように、検索ログもユーザごとに記憶した情報を第2数値化情報としてもよい。
【0046】
第2生成部42は更に、第2数値化情報の値が閾値以上であるユーザと同一のクラスタのユーザの情報に基づいて抽出したユーザのみについての第2数値化情報のリストを生成してもよい。
【0047】
(分類部43)
分類部43は、各ユーザが入力した検索クエリの共通性に基づいて、各ユーザを2以上のクラスタに分類する。例えば、分類部43は、各ユーザが入力した検索クエリが特定の単語群を含むか否かに基づいて2以上のクラスタに分類する。
【0048】
また、分類部43は、共通する1つもしくは複数の検索クエリを入力したユーザを同じクラスタに分類してもよい。更に、分類部43は、各ユーザが入力した検索クエリのうち、シードユーザが入力した検索クエリと同じ検索クエリの共通性に基づいて分類してもよい。
【0049】
また、分類部43は、第2数値化情報の数値が所定の閾値以上又は所定の閾値以下の検索クエリの共通性に基づいて分類してもよい。
【0050】
(評価部44)
評価部44は、分類部43の分類結果に基づいて、第2数値化情報を評価する。例えば、評価部44は、分類部43が分類する際に、所定の行動に関係するワード群が検索クエリに含まれていることを条件としてクラスタ分けし、当該ワード群が含まれているクラスタが実際に第2数値化情報のスコアが高いユーザが多い場合、第2数値化情報が適切にユーザにスコアを付与していると評価する。
【0051】
〔3.予測処理のフロー〕
次に、
図5を用いて、実施形態に係る情報処理装置10による情報処理の手順について説明する。
図5は、実施形態に係る情報処理装置10による情報処理手順を示すフローチャートである。
【0052】
図5に示すように、情報処理装置10は、所定の行動を取ったユーザ群をシードユーザ群として特定する(ステップS101)。そして、第1生成部41は、シードユーザ群が入力した検索クエリの共通性に基づいて、各シードユーザが入力した検索クエリと所定の行動との間の関係性を第1数値化情報として数値化情報を生成する(ステップS102)。なお、第1数値化情報が取得される場合、情報処理装置10はステップS101,S102の処理を行わなくてもよい。
【0053】
その後、情報処理装置10の第2生成部42は、各ユーザが入力した検索クエリと、第1数値化情報とに基づいて、所定の行動と各ユーザとの関連性を第2数値化情報として数値化情報を生成する(ステップS103)。
【0054】
続けて、情報処理装置10の分類部43は、各ユーザが入力した検索クエリの共通性に基づいて、各ユーザを2以上のクラスタに分類する(ステップS104)。そして、情報処理装置10の評価部44は、分類部43の分類結果に基づいて、第2数値化情報を評価する(ステップS105)。
【0055】
〔4.変形例〕
上述した実施形態に係る情報処理装置10は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、情報処理装置10の他の実施形態について説明する。
【0056】
〔4-1.所定の行動〕
上述した実施形態において、情報処理装置10は、複数の所定の行動それぞれについて第1数値化情報及び第2数値化情報を生成してもよい。上述の実施形態では「ステーキ松竹梅」の店舗に入店することを所定の行動としていたが、それ以外にも、例えば、ユーザUが所定の商品を購入する、ユーザUの所持する端末装置で所定のアプリケーションをインストールする、といった行動ごとに夫々第1数値化情報及び第2数値化情報を生成してもよい。また、夫々の行動ごとに、生成した第2数値化情報の評価を行ってもよい。また、所定の行動は、所定の基準検索クエリの入力であってもよい。
【0057】
〔4-2.グラフの生成〕
上述した実施形態において、第2数値化情報の評価を、クラスタに分けたユーザに基づいて行っていたが、評価方法はそれに限られない。例えば、
図6は、第2数値化情報の可視化の一例を示す図である。
図6のように、第2数値化情報に基づいて各ユーザをスコアの高い順から整列し、縦軸スコア、横軸ユーザのグラフにプロットしてもよい。また、その際に、シードユーザは特殊な表示態様にすることで、高スコアの部分にシードユーザが集中しているか否かを視覚的に認識できる。高スコア部分にシードユーザが集中していた場合は、シードユーザが所定の行動を取っていることは別途確認済みであるため、第2数値化情報の値と所定の行動との関連性が高いといえ、第2数値化情報が適切に生成されていると評価できる。
【0058】
〔4-3.モデル生成者への通知〕
さらに、第2数値化情報に基づいて整列した各ユーザの中のシードユーザの分布の傾向を分析し、分析結果に基づいて第2数値化情報のモデル生成者に通知してもよい。すなわち、先のグラフの生成の項でも述べたように、第2数値化情報に基づいて整列した各ユーザの中で、シードユーザの分布がスコア上位である場合は、第2数値化情報が適切に生成されていると評価できるが、逆に、シードユーザの分布がまばらであったり、スコア下位に集中していたりすると、第2数値化情報が適切に生成されていないという推認が働く。このような場合、第2数値化情報が適切に生成されていないとして、第2数値化情報のモデル生成者にその旨を通知してもよい。
【0059】
〔4-4.第2数値化情報の名前と検索ログの一致度〕
上述した実施形態において、第2数値化情報の評価を、クラスタに分けたユーザに基づいて行っていたが、評価方法はそれに限られない。例えば、オペレータが第2数値化情報にあらかじめ名前を付けていた場合、その名前に関するカテゴリと、検索ログの各検索ワードのカテゴリの一致率を求め、一致率が高ければ適切な第2数値化情報が得られていると評価することもできる。このとき、名前や検索ワードからカテゴリを求める方法は、あらかじめ様々な単語にカテゴリを付与した辞書を作っておき、その辞書から検索するという方法が考えられる。また、あらかじめ単語同士の関連性の程度を学習した学習モデルに基づきカテゴリを求めてもよい。
【0060】
また、カテゴリ同士の一致率を求めるのではなく、名前と各検索ワードの類似度を夫々求めてもよい。すなわち、Word2Vec等を用いて、あらかじめ単語同士の関連性の程度を学習した学習モデルで単語の分散表現を獲得し、第2数値化情報の名前と検索ログの各検索ワード夫々について、この学習モデルを用いて類似度を求めてもよい。
【0061】
〔5.ハードウェア構成〕
上述してきた実施形態に係る情報処理装置10は、例えば
図7に示すような構成のコンピュータ1000によって実現される。
図7は、情報処理装置10の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
【0062】
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0063】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、所定のネットワークを介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを所定のネットワークを介して他の機器へ送信する。
【0064】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
【0065】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0066】
例えば、コンピュータ1000が実施形態に係る情報処理装置10として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置から所定のネットワークを介してこれらのプログラムを取得してもよい。
【0067】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の行に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0068】
〔6.その他〕
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【0069】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0070】
また、上記してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、評価部は、評価手段や評価回路に読み替えることができる。
【符号の説明】
【0071】
10 情報処理装置
20 通信部
30 記憶部
40 制御部
41 第1生成部
42 第2生成部
43 分類部
44 評価部
100 端末装置
【手続補正書】
【提出日】2021-10-07
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
所定の行動を行った複数のシードユーザが入力した検索クエリの共通性に基づいて、各シードユーザが入力した検索クエリと前記所定の行動との間の関係性を数値化した第1数値化情報を生成する第1生成部と、
各ユーザが入力した検索クエリと、前記第1数値化情報とに基づいて、前記所定の行動と各ユーザとの関係性を数値化した第2数値化情報を生成する第2生成部と
各ユーザが入力した検索クエリの共通性に基づいて、各ユーザを2以上のクラスタに分類する分類部と、
前記分類部により各クラスタに分類されたユーザの第2数値化情報の傾向に基づいて、前記第2数値化情報を評価する評価部と
を有することを特徴とする情報処理装置。
【請求項2】
前記第1生成部は、前記所定の行動ごとに前記第1数値化情報を生成し、
前記第2生成部は、前記所定の行動ごとに前記第2数値化情報を生成する
ことを特徴とする、請求項1に記載の情報処理装置。
【請求項3】
前記第2生成部は、前記各ユーザが入力した検索クエリの情報を含む第2数値化情報を生成する
ことを特徴とする、請求項1又は2に記載の情報処理装置。
【請求項4】
前記第2生成部は、前記所定の行動と前記各ユーザとの関係性を数値化した値が閾値以上であるユーザと同一の前記クラスタのユーザの情報に基づいて前記第2数値化情報を生成する
ことを特徴とする、請求項3に記載の情報処理装置。
【請求項5】
前記分類部は、共通する1つもしくは複数の前記検索クエリを入力した前記ユーザを同じ前記クラスタに前記分類する
ことを特徴とする、請求項1~4のいずれか一つに記載の情報処理装置。
【請求項6】
前記分類部は、前記各ユーザが入力した検索クエリのうち、前記シードユーザが入力した検索クエリと同じ検索クエリの共通性に基づいて前記分類する
ことを特徴とする、請求項1~5のいずれか一つに記載の情報処理装置。
【請求項7】
前記分類部は更に、前記第2数値化情報の数値が所定の閾値以上の前記検索クエリの共通性に基づいて前記分類する
ことを特徴とする、請求項1~6のいずれか一つに記載の情報処理装置。
【請求項8】
前記分類部は更に、前記第2数値化情報の数値が所定の閾値以下の前記検索クエリの共通性に基づいて前記分類する
ことを特徴とする、請求項1~7のいずれか一つに記載の情報処理装置。
【請求項9】
前記所定の行動は、所定の基準検索クエリの入力である
ことを特徴する、請求項1~8のいずれか一つに記載の情報処理装置。
【請求項10】
情報処理装置が実行する情報処理方法であって、
所定の行動を行った複数のシードユーザが入力した検索クエリの共通性に基づいて、各シードユーザが入力した検索クエリと前記所定の行動との間の関係性を数値化した第1数値化情報を生成する第1生成工程と、
各ユーザが入力した検索クエリと、前記第1数値化情報とに基づいて、前記所定の行動と各ユーザとの関係性を数値化した第2数値化情報を生成する第2生成工程と
各ユーザが入力した検索クエリの共通性に基づいて、各ユーザを2以上のクラスタに分類する分類工程と、
前記分類工程により各クラスタに分類されたユーザの第2数値化情報の傾向に基づいて、前記第2数値化情報を評価する評価工程と
を有することを特徴とする情報処理方法。
【請求項11】
所定の行動を行った複数のシードユーザが入力した検索クエリの共通性に基づいて、各シードユーザが入力した検索クエリと前記所定の行動との間の関係性を数値化した第1数値化情報を生成する第1生成手順と、
各ユーザが入力した検索クエリと、前記第1数値化情報とに基づいて、前記所定の行動と各ユーザとの関係性を数値化した第2数値化情報を生成する第2生成手順と
各ユーザが入力した検索クエリの共通性に基づいて、各ユーザを2以上のクラスタに分類する分類手順と、
前記分類手順により各クラスタに分類されたユーザの第2数値化情報の傾向に基づいて、前記第2数値化情報を評価する評価手順と
をコンピュータに実行させるための情報処理プログラム。