JP6924571B2 - 情報処理装置、情報処理方法、および情報処理プログラム - Google Patents

情報処理装置、情報処理方法、および情報処理プログラム Download PDF

Info

Publication number
JP6924571B2
JP6924571B2 JP2016220613A JP2016220613A JP6924571B2 JP 6924571 B2 JP6924571 B2 JP 6924571B2 JP 2016220613 A JP2016220613 A JP 2016220613A JP 2016220613 A JP2016220613 A JP 2016220613A JP 6924571 B2 JP6924571 B2 JP 6924571B2
Authority
JP
Japan
Prior art keywords
value
user
age
feature vector
information processing
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
JP2016220613A
Other languages
English (en)
Other versions
JP2018077765A (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 JP2016220613A priority Critical patent/JP6924571B2/ja
Priority to US15/693,957 priority patent/US11030532B2/en
Publication of JP2018077765A publication Critical patent/JP2018077765A/ja
Application granted granted Critical
Publication of JP6924571B2 publication Critical patent/JP6924571B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • G06F16/337Profile generation, learning or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Computational Linguistics (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報処理装置、情報処理方法、および情報処理プログラムに関する。
従来、利用者の属性情報を推定する技術が知られている。これに関連して、画像から特徴量を算出する学習器を用いて、利用者により選択された履歴を有する画像の特徴量を算出し、算出した特徴量に基づいて、利用者の属性情報を推定する技術が知られている(特許文献1参照)。また、ユーザによりアクセスされたwebページの集合を検知し、webページの少なくとも部分集合を、ユーザーによるwebページへのアクセスパターンを識別する第一のデータ構造へ写像し、第一のデータ構造を、共通のユーザープロフィール属性を有する既知ユーザー集合によるwebページへのアクセスパターンを識別する第二のデータ構造と比較し、比較結果に応答してユーザープロフィール属性をユーザーに割り当てる技術が知られている(特許文献2参照)。
特開2016−118918号公報 特開2003−216776号公報
しかしながら、ユーザ属性の推定精度を厳しくした場合、ユーザ属性に基づいて広告コンテンツなどを提供できない場合がある。
本発明は、このような事情を考慮してなされたものであり、推定精度の低下を抑制しつつ、ユーザ属性の推定のカバレッジを広げることができる情報処理装置、情報処理方法、および情報処理プログラムを提供することを目的の一つとする。
本発明の一態様は、ユーザの操作に基づくキーワードを含む複数の素性情報を取得する取得部と、前記取得部により取得された前記複数の素性情報に基づいて、前記ユーザの年代を推定する推定部とを備える、情報処理装置である。
本発明の一態様によれば、推定精度の低下を抑制しつつ、推定精度の低下を抑制しつつ、ユーザ属性の推定のカバレッジを広げることができる。
実施形態のコンテンツ提供システム1の機能構成の一例を示すブロック図である。 実施形態のコンテンツ提供システム1における全体の処理の概要を示す図である。 情報処理装置600の一例を示す構成図である。 複数の素性情報のそれぞれをハッシュ値に変換する処理を説明する図である。 複数のハッシュ値を用いて1つの特徴ベクトルを生成する処理を説明するための図である。 各年代の確率と、閾値との関係を示す図である。 ユーザの年代を推定する処理の流れの一例を示すフローチャートである。 重みマトリクスWおよびバイアスベクトルbを学習する処理の流れの一例を示すフローチャートである。 情報処理装置600のハードウェア構成の一例を示す図である。
以下、図面を参照し、本発明の情報処理装置、情報処理方法、および情報処理プログラムの実施形態について説明する。実施形態の情報処理装置は、ユーザの操作に基づくキーワードを含む複数の素性情報を取得し、取得した複数の素性情報に基づいてユーザの年代を推定するものである。ユーザの操作に基づくキーワードは、例えば、ユーザの過去の行動に基づいて推定された「興味のある単語リスト」である。実施形態の情報処理装置は、推定したユーザの年代に基づいてユーザに提供するコンテンツや広告を選択することで、ユーザの年代に適したコンテンツや広告を提供することができる。
<1.コンテンツ提供システム1の構成>
図1は、実施形態のコンテンツ提供システム1の機能構成の一例を示すブロック図である。コンテンツ提供システム1は、例えば、複数の端末装置100−1、・・・、100−Nと、ログインサーバ200と、コンテンツ提供サーバ300と、ログ収集装置400と、広告配信装置500と、情報処理装置600とを備える。Nは、2以上の自然数である。以下の説明において、端末装置を他の端末装置と区別しない場合には、端末装置100と記載する。図1の例では、複数の端末装置100と、ログインサーバ200と、コンテンツ提供サーバ300と、ログ収集装置400と、広告配信装置500と、情報処理装置600とが、ネットワークNWに接続されている。ネットワークNWは、例えば、無線基地局、Wi−Fiアクセスポイント、通信回線、プロバイダ、インターネットなどを含む。なお、これらの構成要素の全ての組み合わせが相互に通信可能である必要はなく、ネットワークNWは、一部にローカルなネットワークを含んでもよい。
端末装置100は、ユーザ(一般利用者)によって使用される装置である。端末装置100は、例えば、スマートフォンなどの携帯電話、タブレット端末、パーソナルコンピュータなどのコンピュータ装置(通信装置)である。端末装置100は、ウェブブラウザなどのUA(User Agent)が起動し、ユーザによって所定の操作がなされることで、リクエストをコンテンツ提供サーバ300および広告配信装置500に送信する。そして、端末装置100は、コンテンツ提供サーバ300から返信されたコンテンツに基づいてウェブ画面を生成し、表示部に表示させる。また、端末装置100は、広告配信装置500から返信された広告情報に基づいて、広告を表示させる。なお、コンテンツを取得するための手段として、ウェブブラウザに代えて、任意のアプリケーションプログラムが使用されてもよい。
端末装置100は、ユーザIDを持つユーザまたはユーザIDを持たないユーザにより使用される。端末装置100は、ユーザIDの入力を受け付けた場合またはユーザIDを記憶している場合、当該ユーザIDを含むリクエストをログインサーバ200およびコンテンツ提供サーバ300に送信する。端末装置100は、ユーザIDの入力がない場合またはユーザIDを記憶していない場合、ユーザIDを含まないリクエストをコンテンツ提供サーバ300に送信する。
ログインサーバ200は、ユーザのログインを管理するサーバ装置である。ログインサーバ200は、ユーザ情報データベース210を参照して、ユーザIDに基づいてユーザ認証を行う。ログインサーバ200は、認証結果を、コンテンツ提供サーバ300に伝達する。ユーザ情報データベース210は、HDD(Hard Disk Drive)やフラッシュメモリ、RAM(Random Access Memory)、ROM(Read Only Memory)、或いはこれらのうち複数を組み合わせたハイブリッド型記憶装置により実現される。また、ユーザ情報データベース210の一部または全部は、NAS(Network Attached Storage)や外部のストレージサーバなど、ログインサーバ200がアクセス可能な外部装置であってよい。ユーザ情報データベース210は、ユーザIDに、ユーザの年代などの属性とを対応付けた情報である。
コンテンツ提供サーバ300は、例えば、ニュース記事などのコンテンツを提供するサーバ装置である。コンテンツ提供サーバ300は、端末装置100から受信したコンテンツを閲覧するリクエストに応じて、コンテンツを提供する。コンテンツ提供サーバ300は、リクエストにユーザが入力したクエリが含まれる場合、当該クエリをログ収集装置400に送信する。
ログ収集装置400は、情報処理装置600が利用するログ情報、その他の情報を収集する。ログ収集装置400は、ログデータベース410を備える。ログデータベース410は、HDDやフラッシュメモリ、RAM、ROM、或いはこれらのうち複数を組み合わせたハイブリッド型記憶装置により実現される。また、ログデータベース410の一部または全部は、NASや外部のストレージサーバなど、ログ収集装置400がアクセス可能な外部装置であってよい。ログデータベース410において、例えば、ユーザIDには、検索キーワード(KW)と、コンテンツの閲覧履歴とが対応付けられている。検索キーワードは、例えば、ユーザの入力に基づいてコンテンツ提供サーバ300により受け付けられたクエリである。また、ログデータベース410は、コンテンツ提供サーバ300が、ユーザIDがないユーザの操作に基づいて端末装置100−Nからリクエストを受け付けた場合において、端末装置100を特定する情報(不図示)に、検索キーワードと、コンテンツの閲覧履歴とを対応付けている。
広告配信装置500は、端末装置100に提供する広告情報を配信する。広告配信装置500は、広告情報データベース510と、選択部520とを備える。広告情報データベース510は、HDDやフラッシュメモリ、RAM、ROM、或いはこれらのうち複数を組み合わせたハイブリッド型記憶装置により実現される。また、広告情報データベース510の一部または全部は、NASや外部のストレージサーバなど、広告配信装置500がアクセス可能な外部装置であってよい。広告情報データベース510は、年代に、広告コンテンツを対応付けている。選択部520は、広告情報データベース510を参照して、ユーザの年代に対応する広告コンテンツを選択して、選択した広告コンテンツを端末装置100に提供する。
<2.コンテンツ提供システム1の全体処理>
図2は、実施形態のコンテンツ提供システム1における全体の処理の概要を示す図である。端末装置100は、ユーザから受け付けた操作に基づいて、クエリを含む閲覧リクエストをコンテンツ提供サーバ300に送信する。コンテンツ提供サーバ300は、閲覧リクエストに対して、クエリに基づくコンテンツを選択する。一方で、コンテンツ提供サーバ300は、コンテンツに埋め込む広告情報をリクエストする広告リクエスト、ユーザID、掲載枠ID、およびドメインを広告配信装置500に送信する。広告配信装置500は、受信したユーザIDをログ収集装置400に送信する。ログ収集装置400は、ユーザIDに対応する検索キーワードを広告配信装置500に返信する。広告配信装置500は、コンテンツ提供サーバ300から受信した掲載枠IDおよびドメインと、ログ収集装置400から受信した検索キーワードを、複数の素性情報として、情報処理装置600に送信する。なお、複数の素性情報は、複数の検索キーワードであってよい。複数の素性情報は、検索キーワードと、他の素性情報を含んでよい。複数の素性情報は、検索キーワードと掲載枠IDであってよく、検索キーワードとドメインであってよい。
情報処理装置600は、掲載枠ID、ドメイン、および検索キーワードに基づいて推定した年代情報を広告配信装置500に送信する。広告配信装置500は、情報処理装置600から受信した年代情報に基づいて、広告情報を選択し、選択した広告情報をコンテンツ提供サーバ300に送信する。これにより、コンテンツ提供サーバ300は、選択したコンテンツに広告情報を埋め込んで、広告情報が埋め込まれたコンテンツを端末装置100に送信する。
なお、コンテンツ提供サーバ300は、閲覧リクエストにユーザIDが含まれていない場合、ユーザIDに代えて、ユーザに関連する情報を広告配信装置500に送信し、広告配信装置500は、ユーザに関連する情報に対応する検索キーワードを広告配信装置500に返信する。また、広告配信装置500は、広告のクリック履歴に基づいて広告コンテンツからキーワードを抜き出してよい。
<3.情報処理装置600の構成>
図3は、情報処理装置600の一例を示す構成図である。情報処理装置600は、例えば、学習部610と、モデルパラメータ記憶部620と、年代推定部630とを備える。これらの構成要素は、例えば、CPU(Central Processing Unit)などのプロセッサが、予め記憶された情報処理プログラムを実行することにより実現される。また、これらの構成要素は、LSI(Large Scale Integration)やASCI(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)などのハードウェア(回路部;circuitry)によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。
学習部610は、正解データを用いて、年代推定モデルの生成を行う。学習部610は、例えば、多クラス交差エントロピー誤差関数を確率的勾配降下法で最小化することで、年代推定モデルにおけるパラメータを学習する。モデルパラメータ記憶部620は、学習部610により学習された年代推定モデルのパラメータを記憶する。
年代推定部630は、例えば、取得部631と、変換部632と、特徴ベクトル生成部633と、推定部634とを備える。取得部631は、コンテンツ提供サーバ300および/またはログ収集装置400から複数の素性情報を取得する。なお、取得部631は、広告のクリック履歴に基づいて広告コンテンツからキーワードを抜き出し、年代推定のためのキーワードを作成してもよい。変換部632は、複数の素性情報のそれぞれを、同じ固定長の値としてハッシュ値に変換する。特徴ベクトル生成部633は、変換部632により変換された複数のハッシュ値を用いて、1つの特徴ベクトルを生成する。推定部634は、1つの特徴ベクトルを用いて年代推定モデルを運用することで、ユーザの年代を推定する。
以下、素性情報をハッシュ値に変換する処理を説明する。図4は、複数の素性情報のそれぞれをハッシュ値に変換する処理を説明する図である。取得部631により取得された複数の素性情報が、値が「100」の掲載枠ID、「news.・・・.co.jp」の文字列で表現されたドメイン、およびk個の検索キーワードであるものとする。変換部632は、掲載枠IDを、所定のハッシュ関数H(掲載枠ID)を用いて計算することで、ハッシュ値h(掲載枠ID)を算出する。変換部632は、ドメインを、所定のハッシュ関数H(ドメイン)を用いて計算することで、ハッシュ値h(ドメイン)を算出する。変換部632は、検索キーワード(1)〜(k)のそれぞれを、所定のハッシュ関数H(検索KW(1))〜H(検索KW(k))を用いてそれぞれ計算することで、ハッシュ値h(検索KW(1))〜h(検索KW(k))を算出する。所定のハッシュ関数Hは、それぞれ同じハッシュ関数であり、変換部632は、複数の素性情報のそれぞれを、同じ固定長の値に変換する。ハッシュ値h(掲載枠ID)には所定の値v1が設定されている。ハッシュ値h(ドメイン)には所定の値v2が設定されている。ハッシュ値h(検索KW(1))〜h(検索KW(k))には、所定の値v3〜vxがそれぞれ設定されている。
<4.特徴ベクトル生成処理>
以下、特徴ベクトルを生成する処理を説明する。図5は、複数のハッシュ値を用いて1つの特徴ベクトルを生成する処理を説明するための図である。ハッシュ関数Hにより算出されるハッシュ値は、所定の取り得る範囲のうち、いずれかの値として算出される。複数のハッシュ値を用いて生成される1つの特徴ベクトルは、当該特徴ベクトルの要素が代入される次元数が、ハッシュ値が取り得る範囲に対応する値に設定される。例えば、ハッシュサイズが224である場合、ハッシュ値hが取り得る範囲は0から(224)−1までであり、特徴ベクトルの次元数は224次元であり、特徴ベクトルは、0次元目の要素e(0)から(224)−1次元目の要素e(224)−1により構成される。特徴ベクトルの各要素の値のうち、ハッシュ値に対応する要素の値は、各ハッシュ値に対応する所定の値に設定される。ハッシュ値h(掲載枠ID)に対応する次元の要素には、所定の値v1が設定される。ハッシュ値h(ドメイン)に対応する次元の要素には、所定の値v2が設定される。ハッシュ値h(検索KW(1))〜h(検索KW(k))に対応する次元の要素には、所定の値v3〜vxがそれぞれ設定される。
<5.年代推定処理>
以下、ユーザの年代を推定する処理を説明する。推定部634は、年代推定モデルを運用することで、ユーザの年代を推定する。年代推定モデルは、以下の式(1)に示される。Pはユーザの年代を判定するために用いられる確率(スコア)であり、xは特徴ベクトルであり、Wは特徴ベクトルxに乗算される重みマトリクスであり、bはバイアスベクトルである。
Figure 0006924571
確率Pは、推定したい複数の年代を、要素として含む。推定する対象の年代が、例えば、22歳から29歳、30歳から39歳、40歳から49歳、50歳から59歳、60歳から69歳の5つのクラスに区分されるものとする。この場合、確率Pは、一方向の5次元ベクトルとして表現され、重みマトリクスWは、5×224の2次元の行列として表現され、特徴ベクトルxは、224は一方向の行列として表現される。式(2)は、年代推定モデルを行列形式で表した式である。
Figure 0006924571
式(2)に示すように、確率Pは、各クラスに対応した要素としてP1からP5を含む。P1はユーザが22歳から29歳である確率であり、P2はユーザが30歳から39歳である確率であり、P3はユーザが40歳から49歳である確率であり、P4はユーザが50歳から59歳である確率であり、P5はユーザが60歳から69歳である確率である。重みマトリクスWは、クラス数、および特徴ベクトルxの次元数に対応した要素としてw11〜w5224を含む。バイアスベクトルbは、各クラスに対応した要素としてb1からb5を含む。バイアスベクトルbの値は、複数のクラスのうち、いずれかのクラスを推定しやすくする、または推定しにくくするための値が設定される。
式(1)に示されるように、推定部634は、特徴ベクトルxに重みマトリクスWを乗算した後に、バイアスベクトルbを加算することによって得られた値を用いて、各年代の確率Pを算出する。具体的に、推定部634は、(Wx+b)をソフトマックス関数に入力することによって、確率Pを算出する。
なお、各ハッシュ値に対応する所定の値は、例えば、全て「1」であってもよく、各ハッシュ値について異なる値であってもよい。例えば、検索キーワードのうち、何度もユーザに入力されたクエリに対応する検索キーワードのハッシュ値に対応する所定の値を、「1」よりも高くしてよい。
推定部634は、複数の確率Pに基づいてユーザの年代を推定する。図6は、各年代の確率と、閾値との関係を示す図である。推定部634は、算出した各クラスに対応する確率P同士を比較することで、ユーザの年代を推定する。推定部634は、最も高い確率Pの年代を推定結果とするルールが設定されている場合、ユーザの年代が30歳から39歳であると推定する。
推定部634は、複数の年代のそれぞれについて閾値Th1〜Th5を設定し、複数の年代のそれぞれについて算出した確率P1〜P5が、複数の年代のそれぞれについて設定された閾値Th1〜Th5を超える差分が最も大きい年代が、ユーザの年代であることを推定してよい。推定部634は、40歳から49歳の年代である確率P3と閾値Th3との差分D3が、30歳から39歳の年代である確率P2と閾値Th2との差分D2よりも大きいので、ユーザの年代が40歳から49歳であると推定する。
推定部634は、複数の年代のそれぞれについて算出した確率P1〜P5が、複数の年代のそれぞれについて設定された閾値Th1〜Th5を超える割合が最も大きい年代が、ユーザの年代であることを推定してよい。推定部634は、40歳から49歳の年代である確率P3と閾値Th3との割合が、30歳から39歳の年代である確率P2と閾値Th2との割合よりも大きいので、ユーザの年代が40歳から49歳であると推定する。
推定部634は、複数の年代のそれぞれについて推定した年代が正しい確率が所定値となるように、複数の年代のそれぞれについての閾値Th1〜Th5を設定する。推定部634は、推定した年代の正解率が所定値を満たすように、閾値Th1〜Th5を設定する。これを実現するため、情報処理装置600は、評価用データを生成する。評価用データは、ユーザ情報データベース210においてユーザIDに対応付けられた年代である正解値、ログデータベース410においてユーザIDに対応した検索キーワードおよび閲覧履歴に基づいて年代推定部630が推定した年代、および当該推定した年代が正解値としての年代に合致した割合を含む。年代推定部630は、評価用データを参照して、推定した年代が正解値としての年代に合致した割合が所定値(例えば70%)よりも低い場合には、閾値を上昇させる。年代推定部630は、評価用データを参照して、推定した年代が正解値としての年代に合致した割合が所定値(例えば70%)よりも高い場合には、閾値を下降させる。
なお、年代推定処理において、推定する対象の年代が、5つのクラスに区分されるものとしたが、これに限定されず、クラス数、各クラスに対応する年代の幅については任意に設定してよい。
<6.学習処理>
以下、重みマトリクスWおよびバイアスベクトルbの学習処理の一例について説明する。下記の式(3)は、複数の素性情報(入力データ)に基づいて、kクラス(出力データ)に分類する処理において、推定結果(ソフトマックス関数の出力値)と正解との誤差を定量化する関数Eである。この関数式は、多クラス交差エントロピー誤差と呼ばれる。式(3)において、ynkはn番目の入力データに対するk次元目の出力を意味し、tnkは対応する正解データの値を意味する。
Figure 0006924571
式(3)において、出力データが正解データに近いほど、損失関数(すなわちEの値)が小さくなる。学習部610は、損失関数が小さくなるように、重みマトリクスWおよびバイアスベクトルbの値を調整する。
学習部610は、重みマトリクスWの値を求める際に、重みマトリクスWをランダムな値または0などの固定値に初期化し、所定のアルゴリズムを運用することで、損失関数が小さくなるように重みマトリクスWを学習する。この学習の際に、学習部610は、確率的勾配降下法と称されるモデルにより、勾配の値を用いてエネルギー(重み同士の差分)が下がる方向に、重みマトリクスWの要素(wij)を調整する。具体的に、学習部610は、下記の式(4)に示すモデルを運用することで、重みwijを調整する。式(4)において、wijは、重みマトリクスWに含まれる任意の重みである。αは1回の学習で調整する量を決める学習率と称されるパラメータである。λは正則化の度合いを決定するパラメータである。式(4)の3項目は荷重減衰と称され、重みwijを正則化する役割を持つ。λは、勾配を決定するパラメータであり、勾配が0である場合であっても重みwijを低下させる。
Figure 0006924571
<7.年代推定の流れ>
図7は、ユーザの年代を推定する処理の流れの一例を示すフローチャートである。まず、情報処理装置600は、コンテンツ提供サーバ300から掲載枠IDおよびドメインを含むリクエストを受け付けたか否かを判定する(S100)。このとき、コンテンツ提供サーバ300は、端末装置100から閲覧リクエストを受け付け、コンテンツを端末装置100に提供したことに応じ、当該コンテンツに関連する掲載枠IDおよびドメインを取得して、情報処理装置600に供給する。コンテンツ提供サーバ300は、閲覧リクエストにクエリが含められている場合、クエリを検索キーワードとして情報処理装置600に送信する。
情報処理装置600は、リクエストを受け付けたことに応じ、複数の素性情報を取得する(S102)。このとき、情報処理装置600は、ログ収集装置400にリクエストを送信することで、ログ収集装置400から検索キーワードを取得する。次に、情報処理装置600は、複数の素性情報のそれぞれをハッシュ値に変換する(S104)。次に情報処理装置600は、複数のハッシュ値を用いて1つの特徴ベクトルを生成する(S106)。次に情報処理装置600は、各年代について、ユーザの年代である確率を計算する(S108)。次に情報処理装置600は、計算した確率に基づいて、ユーザの年代を推定する(S110)。
次に情報処理装置600は、ユーザの年代が推定できたか否かを判定する(S112)。情報処理装置600は、推定した全ての確率が閾値を超えていないと判定した場合、ユーザの年代が推定できていないので、年代情報を送信することなく、本フローチャートの処理を終了する。情報処理装置600は、推定したいずれか確率が閾値を超えている場合、ユーザの年代が推定できているので、少なくとも一つの年代を含む年代情報を広告配信装置500に送信する(S114)。
<8.学習の流れ>
図8は、重みマトリクスWおよびバイアスベクトルbを学習する処理の流れの一例を示すフローチャートである。まず、情報処理装置600は、学習タイミングが到来したか否かを判定する(S200)。学習タイミングは、例えば、1日に1回などの所定の間隔で到来する。情報処理装置600は、学習タイミングが到来した場合、学習データをを取得する(S202)。情報処理装置600は、例えば、ログデータベース410に格納されているログのうち、年代が既知のユーザIDに対応した検索キーワード、コンテンツの閲覧履歴を、学習データとして取得する。情報処理装置600は、コンテンツの閲覧履歴から、コンテンツの掲載枠IDおよびドメインを取得する。次に、情報処理装置600は、重みマトリクスWおよびバイアスベクトルbの値を初期化し、初期化した重みマトリクスWおよびバイアスベクトルbの値を、学習データの数に対応する回数だけ更新する(S204)。例えば、学習データが10000個のサンプルから構成されている場合、重みマトリクスWおよびバイアスベクトルbのそれぞれについて値の初期化を行い、および10000回に亘り重みマトリクスWおよびバイアスベクトルbの値を更新する。
<9.実施形態の効果>
以上説明したように、実施形態の情報処理装置600によれば、ユーザの操作に基づくキーワードを含む複数の素性情報に基づいてユーザの年代を推定するので、複数種類の素性に基づいてユーザの年代を推定することができる。これにより、情報処理装置600によれば、推定精度の低下を抑制しつつ、ユーザ属性の推定のカバレッジを広くすることができる。具体的に、複数の素性情報は、ユーザが操作する端末装置100が送信したリクエストに基づいてユーザに提供したコンテンツを識別するための識別情報、またはコンテンツ提供サーバ300に関連するドメインの少なくとも一つを含む。さらに、情報処理装置600は、年代推定部630が、複数の素性情報のそれぞれを同じ固定長の値に変換する変換部632と、固定長の値が取り得る範囲に対応する次元数を持つ特徴ベクトルを生成する特徴ベクトル生成部633であって、特徴ベクトルの各要素の値のうち変換部632により変換された固定長の値に対応する要素の値を所定の値に設定する特徴ベクトル生成部633と、を備え、特徴ベクトル生成部633により生成された特徴ベクトルを用いて、ユーザの年代を推定する。さらに、変換部632は、複数の素性情報のそれぞれを同じハッシュ関数を用いてハッシュ値を求めることで同じ固定長の値に変換する。
さらに、情報処理装置600によれば、ユーザの操作に基づくキーワードを複数取得し、クエリのそれぞれを固定長の値に変換し、特徴ベクトルのうち、クエリのそれぞれに基づく固定長の値に対応する次元の値を、各クエリについて指定された値に設定するので、クエリに基づいてユーザ属性の推定のカバレッジを広くすることができる。
さらに、情報処理装置600によれば、複数の素性情報にユーザの年代を対応付けたデータベース(210、410)から、複数の素性情報に対するユーザの年代の正解値と、当該データベースから取得した複数の素性情報に基づいて年代推定部630が推定したユーザの年代と、当該推定した年代が正解値としての年代に合致した割合を含む評価用データを作成し、推定した年代が正解値としての年代に合致した割合が所定値以上となるように、複数の年代のそれぞれについての閾値を設定する。これにより、情報処理装置600によれば、推定精度の低下を抑制することができる。これにより、情報処理装置600によれば、ユーザ属性の推定のカバレッジを広くしても、推定精度の低下を抑制することができる。
<10.ハードウェア構成>
図9は、情報処理装置600のハードウェア構成の一例を示す図である。情報処理装置600は、例えば、NIC601、CPU602、RAM603、ROM604、フラッシュメモリやHDDなどの二次記憶装置605、およびドライブ装置606が、内部バスあるいは専用通信線によって相互に接続された構成となっている。ドライブ装置606には、光ディスクなどの可搬型記憶媒体が装着される。二次記憶装置605、またはドライブ装置606に装着された可搬型記憶媒体に記憶されたプログラムがDMAコントローラ(不図示)などによってRAM603に展開され、CPU602によって実行されることで、情報処理装置600の機能部が実現される。
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
1…コンテンツ提供システム
100…端末装置
200…ログインサーバ
210…ユーザ情報データベース
300…コンテンツ提供サーバ
400…ログ収集装置
410…ログデータベース
500…広告配信装置
510…広告情報データベース
520…選択部
600…情報処理装置
610…学習部
620…モデルパラメータ記憶部
630…年代推定部
631…取得部
632…変換部
633…特徴ベクトル生成部
634…推定部

Claims (8)

  1. ユーザの操作に基づくキーワードを含む複数の素性情報を取得する取得部と、
    前記取得部により取得された前記複数の素性情報に基づいて、前記ユーザの年代を推定する推定部と
    を備え、
    前記推定部は、
    前記複数の素性情報のそれぞれに基づいて各要素の値が決定される特徴ベクトルを生成する特徴ベクトル生成部と、
    前記複数の素性情報のそれぞれを同じ固定長の値に変換する変換部とを備え、
    前記特徴ベクトル生成部は、前記固定長の値が取り得る範囲に対応する次元数を持つ前記特徴ベクトルを生成し、前記特徴ベクトルの各要素の値のうち前記変換部により変換された固定長の値に対応する要素の値を所定の値に設定し、
    前記推定部は、
    年代が既知の複数のユーザについて生成される前記特徴ベクトルを入力データ、前記複数のユーザの既知の年代を正解データとし、前記複数の入力データのそれぞれに重みマトリクスを乗算し、バイアスベクトルを加算することによって得られた出力データが前記正解データに近いほど小さくなる損失関数を小さくするように学習された重みマトリクスとバイアスベクトルを用いて、
    前記特徴ベクトル生成部により生成された特徴ベクトルに前記学習された重みマトリクスを乗算し、前記学習されたバイアスベクトルを加算することによって得られた値を用いて、ユーザが各年代に該当する確率を算出する、
    情報処理装置。
  2. 前記複数の素性情報は、前記ユーザが操作する端末装置が送信したリクエストに基づいて前記ユーザに提供したコンテンツを識別するための識別情報、または前記コンテンツを提供するサーバ装置に関連するドメインの少なくとも一つを更に含む、
    請求項1に記載の情報処理装置。
  3. 前記変換部は、前記複数の素性情報のそれぞれを同じハッシュ関数を用いてハッシュ値を求めることで同じ固定長の値に変換する、
    請求項1または2に記載の情報処理装置。
  4. 前記取得部は、前記キーワードを複数取得し、
    前記変換部は、前記キーワードのそれぞれを固定長の値に変換し、
    前記特徴ベクトル生成部は、前記特徴ベクトルのうち、前記キーワードのそれぞれに基づく固定長の値に対応する要素の値を所定の値に設定する、
    請求項1から3のうちいずれか1項に記載の情報処理装置。
  5. 前記推定部は、前記特徴ベクトル生成部により生成された特徴ベクトルを用いて、複数の年代のそれぞれについて前記ユーザの年代である確率を算出し、算出した複数の確率に基づいて前記ユーザの年代を推定する、
    請求項1から4のうちいずれか1項に記載の情報処理装置。
  6. 前記推定部は、複数の年代のそれぞれについて閾値を設定し、複数の年代のそれぞれについて算出した確率が、複数の年代のそれぞれについて設定された閾値を超える差分または割合が最も大きい年代が、前記ユーザの年代であることを推定する、
    請求項5に記載の情報処理装置。
  7. 情報処理装置が、
    ユーザの操作に基づくキーワードを含む複数の素性情報を取得し、
    取得した前記複数の素性情報に基づいて、前記ユーザの年代を推定し、
    前記推定する際に、
    前記複数の素性情報のそれぞれを同じ固定長の値に変換し、
    前記複数の素性情報のそれぞれに基づいて各要素の値が決定される特徴ベクトルであって、前記固定長の値が取り得る範囲に対応する次元数を持つ前記特徴ベクトルを生成し、前記特徴ベクトルの各要素の値のうち前記変換された固定長の値に対応する要素の値を所定の値に設定し、
    年代が既知の複数のユーザについて生成される前記特徴ベクトルを入力データ、前記複数のユーザの既知の年代を正解データとし、前記複数の入力データのそれぞれに重みマトリクスを乗算し、バイアスベクトルを加算することによって得られた出力データが前記正解データに近いほど小さくなる損失関数を小さくするように学習された重みマトリクスとバイアスベクトルを用いて、
    前記生成された特徴ベクトルに前記学習された重みマトリクスを乗算し、前記学習されたバイアスベクトルを加算することによって得られた値を用いて、ユーザが各年代に該当する確率を算出する、
    情報処理方法。
  8. コンピュータに、
    ユーザの操作に基づくキーワードを含む複数の素性情報を取得させ、
    取得した前記複数の素性情報に基づいて、前記ユーザの年代を推定させ、
    前記推定させる際に、
    前記複数の素性情報のそれぞれを同じ固定長の値に変換させ、
    前記複数の素性情報のそれぞれに基づいて各要素の値が決定される特徴ベクトルであって、前記固定長の値が取り得る範囲に対応する次元数を持つ前記特徴ベクトルを生成させ、前記特徴ベクトルの各要素の値のうち前記変換された固定長の値に対応する要素の値を所定の値に設定させ、
    年代が既知の複数のユーザについて生成される前記特徴ベクトルを入力データ、前記複数のユーザの既知の年代を正解データとし、前記複数の入力データのそれぞれに重みマトリクスを乗算し、バイアスベクトルを加算することによって得られた出力データが前記正解データに近いほど小さくなる損失関数を小さくするように学習された重みマトリクスとバイアスベクトルを用いて、
    前記生成された特徴ベクトルに前記学習された重みマトリクスを乗算し、前記学習されたバイアスベクトルを加算することによって得られた値を用いて、ユーザが各年代に該当する確率を算出させる、
    情報処理プログラム。
JP2016220613A 2016-11-11 2016-11-11 情報処理装置、情報処理方法、および情報処理プログラム Active JP6924571B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016220613A JP6924571B2 (ja) 2016-11-11 2016-11-11 情報処理装置、情報処理方法、および情報処理プログラム
US15/693,957 US11030532B2 (en) 2016-11-11 2017-09-01 Information processing apparatus, information processing method, and non-transitory computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016220613A JP6924571B2 (ja) 2016-11-11 2016-11-11 情報処理装置、情報処理方法、および情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2018077765A JP2018077765A (ja) 2018-05-17
JP6924571B2 true JP6924571B2 (ja) 2021-08-25

Family

ID=62107940

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016220613A Active JP6924571B2 (ja) 2016-11-11 2016-11-11 情報処理装置、情報処理方法、および情報処理プログラム

Country Status (2)

Country Link
US (1) US11030532B2 (ja)
JP (1) JP6924571B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111310532A (zh) * 2018-12-12 2020-06-19 北京嘀嘀无限科技发展有限公司 一种年龄识别方法、装置、电子设备和存储介质
JP7483631B2 (ja) 2019-01-02 2024-05-15 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 情報処理方法及びプログラム
KR102224089B1 (ko) * 2019-01-16 2021-03-08 주식회사 카카오 음악 연령에 기초하여 음악 컨텐츠를 추천하는 방법 및 장치
JP6764980B1 (ja) * 2019-06-21 2020-10-07 西日本電信電話株式会社 属性推定装置、属性推定方法及びプログラム
CN111709252B (zh) * 2020-06-17 2023-03-28 北京百度网讯科技有限公司 基于预训练的语义模型的模型改进方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7162522B2 (en) 2001-11-02 2007-01-09 Xerox Corporation User profile classification by web usage analysis
JPWO2010084839A1 (ja) * 2009-01-26 2012-07-19 日本電気株式会社 尤度推定装置、コンテンツ配信システム、尤度推定方法および尤度推定プログラム
WO2014141078A1 (en) * 2013-03-15 2014-09-18 Yandex Europe Ag A method of and system for providing a client device with particularized information without employing unique identifiers
JP6309887B2 (ja) 2014-12-19 2018-04-11 ヤフー株式会社 モデル生成装置、情報配信装置、モデル生成方法、情報配信方法、モデル生成プログラムおよび情報配信プログラム

Also Published As

Publication number Publication date
US20180137421A1 (en) 2018-05-17
JP2018077765A (ja) 2018-05-17
US11030532B2 (en) 2021-06-08

Similar Documents

Publication Publication Date Title
JP6924571B2 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
RU2702980C1 (ru) Распределённое обучение моделей машинного обучения для персонализации
US10037320B2 (en) Context-aware approach to detection of short irrelevant texts
CN105608179B (zh) 确定用户标识的关联性的方法和装置
JP7160980B2 (ja) 情報提供装置、情報提供方法、およびプログラム
JP6415619B2 (ja) 解析装置、解析方法、およびプログラム
US10685012B2 (en) Generating feature embeddings from a co-occurrence matrix
CN110390106B (zh) 基于双向关联的语义消歧方法、装置、设备及存储介质
CN105531701A (zh) 个性化趋势图像搜索建议
CN110020022B (zh) 数据处理方法、装置、设备及可读存储介质
CN110717038B (zh) 对象分类方法及装置
CN110795527A (zh) 候选实体排序方法、训练方法及相关装置
CN110019790A (zh) 文本识别、文本监控、数据对象识别、数据处理方法
JP6468364B2 (ja) 情報処理装置、情報処理方法、及び、プログラム
JP6434954B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US10896183B2 (en) Information processing apparatus, information processing method, and non-transitory computer readable recording medium
JP6680663B2 (ja) 情報処理装置、情報処理方法、予測モデルの生成装置、予測モデルの生成方法、およびプログラム
JP7144558B2 (ja) 検索システム、および検索方法
JP6168963B2 (ja) 情報検索装置、情報検索方法、およびプログラム
JP6971104B2 (ja) 情報処理装置、情報処理方法、およびプログラム
Ozturk et al. Model‐based inference using judgement post‐stratified samples in finite populations
JP6680707B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP2019149102A (ja) 情報処理装置、キーワード抽出装置、情報処理方法、およびプログラム
JP7297855B2 (ja) キーワード抽出装置、キーワード抽出方法、およびプログラム
CN116028617B (zh) 资讯推荐方法、装置、设备、可读存储介质及程序产品

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180823

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190730

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190919

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

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200407

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

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20200407

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20200416

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

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20200421

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

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20200619

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20200623

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20201208

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20210309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210507

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20210608

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20210615

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20210720

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20210720

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210802

R150 Certificate of patent or registration of utility model

Ref document number: 6924571

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250