(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023178599
(43)【公開日】2023-12-18
(54)【発明の名称】推定装置、推定方法および推定プログラム
(51)【国際特許分類】
G06Q 30/0251 20230101AFI20231211BHJP
【FI】
G06Q30/02 398
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022091377
(22)【出願日】2022-06-06
(71)【出願人】
【識別番号】500257300
【氏名又は名称】LINEヤフー株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】大倉 俊平
(72)【発明者】
【氏名】足立 智
(72)【発明者】
【氏名】上野 信吾
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049BB08
(57)【要約】
【課題】通知を希望するユーザをターゲットとして配信することができる装置を提供する。
【解決手段】推定装置100は、取得部121と、抽出部122と、推定部123と、通知部124とを有する。取得部121は、通知の開封に関する情報を取得する。抽出部122は、取得部により取得された通知の開封に関する情報から、特徴量を抽出する。推定部123は、抽出部により抽出された特徴量に基づいて、通知の開封率を推定する。通知部124は、推定部123により推定された開封率が所定値以上である場合に通知する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
通知の開封に関する情報を取得する取得部と、
前記取得部により取得された通知の開封に関する情報から、特徴量を抽出する抽出部と、
前記抽出部により抽出された前記特徴量に基づいて、通知の開封率を推定する推定部と、
前記推定部により推定された開封率が所定値以上である場合に通知する通知部と
を有することを特徴とする推定装置。
【請求項2】
前記抽出部は、抽出する特徴量として、他の通知の開封数を抽出することを特徴とする請求項1に記載の推定装置。
【請求項3】
前記抽出部は、抽出する特徴量として、他の通知の開封時刻を抽出することを特徴とする請求項1に記載の推定装置。
【請求項4】
前記抽出部は、抽出する特徴量として、着信数を抽出することを特徴とする請求項1に記載の推定装置。
【請求項5】
前記抽出部は、抽出する特徴量として、通知に関する情報に対するユーザの関心度を抽出することを特徴とする請求項1に記載の推定装置。
【請求項6】
前記推定部は、木構造のモデルを用いて、前記抽出部により抽出された前記特徴量に基づいて、通知の開封率を推定することを特徴とする請求項1に記載の推定装置。
【請求項7】
前記通知部は、前記他の通知の開封数が所定値以下のユーザに対して通知することを特徴とする請求項2に記載の推定装置。
【請求項8】
前記推定部は、ユーザごとに複数の通知について推定し、
前記通知部は、前記推定部により推定された通知の開封率が高い順に所定数通知することを特徴とする請求項1に記載の推定装置。
【請求項9】
通知の開封に関する情報を取得する取得工程と、
前記取得工程により取得した通知の開封に関する情報から、特徴量を抽出する抽出工程と、
前記抽出工程により抽出された前記特徴量に基づいて、通知の開封率を推定する推定工程と、
前記推定工程により推定された開封率が所定値以上である場合に通知する通知工程と
を含むことを特徴とする推定方法。
【請求項10】
通知の開封に関する情報を取得する取得ステップと、
前記取得ステップにより取得した通知の開封に関する情報から、特徴量を抽出する抽出ステップと、
前記抽出ステップにより抽出された前記特徴量に基づいて、通知の開封率を推定する推定ステップと、
前記推定ステップにより推定された開封率が所定値以上である場合に通知する通知ステップと
をコンピュータが実行することを特徴とする推定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、推定装置、推定方法および推定プログラムに関する。
【背景技術】
【0002】
ウェブサイトの更新や記事の公開といった新規情報をユーザに通知する技術が存在する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来技術では、通知を行うユーザを厳選することができない。例えば、一律に通知が行われることにより、通知を希望しないユーザに対しても通知が行われ、結果としてユーザに通知が開封されない場合がある。このように、通知を希望するユーザをターゲットとして通知できないという課題が存在する。
【課題を解決するための手段】
【0005】
上述した課題を解決し、目的を達成するため、推定装置は、通知の開封に関する情報を取得する取得部と、取得部により取得した通知の開封に関する情報から、特徴量を抽出する抽出部と、抽出部により抽出された特徴量に基づいて、通知の開封率を推定する推定部と、推定部により推定された開封率が所定値以上である場合に通知する通知部とを有することを特徴とする。
【発明の効果】
【0006】
本発明によれば、通知を希望するユーザをターゲットとして通知することができる。
【図面の簡単な説明】
【0007】
【
図1】
図1は、実施形態に係る推定装置の構成の一例を示すブロック図である。
【
図2】
図2は、実施形態に係る推定装置の概要を説明する図である。
【
図3】
図3は、実施形態に係る推定装置による推定処理の一例を示すフローチャートである。
【
図4】
図4は、推定プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【0008】
以下、図面を参照して、本願に係る推定装置、推定方法および推定プログラムの実施形態を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示しており、重複する説明は、省略される。
【0009】
〔推定装置の構成〕
まず、
図1を用いて、推定装置100の構成について説明する。
図1は、実施形態に係る推定装置100の構成の一例を示す図である。
図1が示すように、推定装置100は、通信部110と、制御部120と、記憶部130とを備える。なお、これらの各部は、複数の装置が分散して保持してもよい。以下にこれら各部の処理を説明する。
【0010】
通信部110は、NIC(Network Interface Card)等で実現され、LAN(Local Area Network)やインターネットなどの電気通信回線を介した外部装置と制御部120との通信を可能とする。例えば、通信部110は、外部装置と制御部120との通信を可能とする。
【0011】
記憶部130は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部130が記憶する情報としては、例えば、ユーザID、ユーザ属性情報、ユーザによる他の通知の開封数、ユーザによる他の通知の開封時刻、ユーザの過去の着信数、ユーザの興味関心のある分野、その他ユーザに関する情報、通知ID、通知を行う分野、その他通知の開封に関する情報、各種機械学習アルゴリズムに関するデータ、機械学習のための訓練データ、学習済みモデルなどを記憶する。ここで、他の通知とは、処理対象となる通知とは別の通知であって、所定のユーザに対してすでに配信済みの通知をいう。なお、記憶部130が記憶する情報は上記に記載したものに限定されない。
【0012】
制御部120は、CPU(Central Processing Unit)やNP(Network Processor)やFPGA(Field Programmable Gate Array)等を用いて実現され、メモリに記憶された処理プログラムを実行する。
図1に示すように、制御部120は、取得部121と、抽出部122と、推定部123と、通知部124とを有する。以下、制御部120が有する各部について説明する。
【0013】
取得部121は、通知の開封に関する情報を取得する。例えば、取得部121は、通知の開封に関する情報として、ユーザ属性情報を取得する。また、例えば、取得部121は、通知の開封に関する情報として、他の通知の開封数を取得する。ここで、通知の開封に関する情報には、ユーザID、ユーザ属性情報、ユーザによる他の通知の開封数、ユーザによる他の通知の開封時刻、ユーザの着信数、ユーザの興味関心のある分野、その他ユーザに関する情報、通知ID、通知を行う分野、通知のタイトル、通知が行われる時間、その他通知の開封に関する情報が含まれる。なお、通知の開封に関する情報は上記に記載したものに限定されない。
【0014】
抽出部122は、取得部121により取得された通知の開封に関する情報から、特徴量を抽出する。例えば、抽出部122は、取得部121により取得されたユーザの属性情報に含まれる年齢、性別、年収、業界、職種、住所といったカテゴリ変数をOne hot Encodingにより特徴量化する。また、抽出部122は、取得部121により取得された通知に関する情報について、分散や中央値または平均値など統計的に処理した数値を用いて、特徴量化する。
【0015】
また、抽出部122は、抽出する特徴量として、他の通知の開封数を抽出する。例えば、抽出部122は、他の通知の開封数について統計的に処理し、特徴量化したものを抽出する。また、抽出部122は、抽出する特徴量として、他の通知の開封時刻を抽出する。例えば、抽出部122は、他の通知の開封時刻について統計的に処理し、特徴量化したものを抽出する。このとき、抽出部122は、他の通知の開封時刻として、ユーザが他の通知を開封した時刻を用いて特徴量を抽出してもよいし、ユーザによる直近の開封時刻からの経過時間を用いて特徴量を抽出してもよい。
【0016】
また、抽出部122は、抽出する特徴量として、着信数を抽出する。例えば、抽出部122は、着信数について統計的に処理し、特徴量化したものを抽出する。また、抽出部122は、抽出する特徴量として、通知に関する情報に対するユーザの関心度を抽出する。例えば、抽出部122は、ユーザの興味関心のある分野と、通知を行う分野に関する情報とから、通知に関する情報に対するユーザの関心度を抽出する。
【0017】
推定部123は、抽出部122により抽出された特徴量に基づいて、通知の開封率を推定する。例えば、推定部123は、抽出部122により抽出されたユーザによる他の通知の開封数という特徴量に基づいて、ニューラルネットワークや決定木などのモデルにより、「ユーザID:001が、通知ID:952を開封する確率は、72%」と推定する。つまり、推定部123は、すでに配信済みの通知や配信先となるユーザの特徴と、他の通知の開封率とを学習し、処理対象となる通知の開封率を推定する。
【0018】
なお、推定部123は、他の通知を開封したユーザ属性や開封された他の通知の情報を入力した場合に、開封率が100%となり、他の通知を開封しなかったユーザ属性や開封されなかった他の通知の情報を入力した場合に、開封率が0%となるように、各種モデルの学習を行う。
【0019】
また、推定部123は、木構造のモデルを用いて、抽出部122により抽出された特徴量に基づいて、通知の開封率を推定する。例えば、推定部123は、抽出部122により抽出された特徴量を入力として、勾配ブースティングの技術を用いて、通知の開封率を予測するモデルであって、通知の開封率を出力するモデルを学習し、通知の開封率を推定する。例えば、推定部123は、他の通知の開封数という特徴量に基づいて、勾配ブースティング技術を用いて構築された学習済みモデルにより、「ユーザID:001が、通知ID:952を開封する確率は、72%」と推定する。
【0020】
通知部124は、推定部123により推定された開封率が所定値以上である場合に通知する。例えば、通知部124は、推定部123により推定された開封率が70%以上である場合に、ユーザに対して通知を行う。例えば、通知部124は、推定部123により、「ユーザID:001が、通知ID:952を開封する確率は、72%」と推定された結果を受けて、通知の開封率が70%以上であるとして、ユーザID:001に対して、通知ID:952を通知する。
【0021】
また、通知部124は、過去の開封数が所定値以下のユーザに対して通知する。例えば、通知部124は、過去の開封数が10件以下のユーザに対して通知する。また、通知部124は、推定部123により推定された通知の開封率が高い順に所定数通知する。例えば、通知部124は、推定部123により、ユーザID:001による通知ID:Aの開封率80%、通知ID:Bの開封率60%、通知ID:Cの開封率70%、通知Dの開封率50%であると推定された場合、ユーザID:001に対して、通知ID:A、C、Bの順に3件通知を行う。
【0022】
〔推定装置が行う処理の概要〕
次に、
図2を用いて、実施形態に係る推定装置100が行う処理の一例について説明する。
図2は、実施形態に係る推定装置100が行う処理の概要を説明するための図である。まず、
図2(1)は、通知の開封に関する情報である。例えば、通知に関する情報は、他の通知の開封数や、他の通知の開封時刻など、事前に集計または計測された情報をユーザごとにデータ化したものである。具体的には、通知の開封に関する情報は、「ユーザID:001、他の通知の開封数:243件」のように表示される。
【0023】
次に、
図2(2)は、推定装置100である。まず、取得部121は、通知の開封に関する情報を取得する。次に、抽出部122は、取得部121により取得された通知に関する情報から特徴量を抽出する。それから、推定部123は、抽出部122により抽出された特徴量を入力データとして、学習および予測を行い、通知の開封率を推定する。そして、通知部124は、推定部123により推定された開封率が所定値以上である場合にターゲットとなるユーザに対して通知を行う。
【0024】
そして、
図2(3)は、推定部123の推定結果である。推定部123は、特徴量に基づいて、ユーザごと、通知ごとの開封率を推定する。例えば、推定部123は、ユーザによる他の通知の開封数という特徴量に基づいて、「ユーザID:001が、通知ID:952を開封する確率は、72%」と推定する。また、例えば、推定部123は、ユーザによる他の通知の開封時刻という特徴量に基づいて、「ユーザID:001が、通知ID:952を開封する確率は、35%」と推定する。
【0025】
そして、通知部124は、推定部123により推定された通知の開封率が所定値以上である場合に通知する。例えば、通知部124は、推定部123により、「ユーザID:001が、通知ID:952を開封する確率は72%」と推定された結果を受けて、通知の開封率が70%以上であるとして、ユーザID:001に対して、通知ID:952を通知する。
【0026】
〔特徴量抽出処理〕
抽出部122は、年齢、性別、年収、業界、職種、住所といったカテゴリ変数については、One hot Encodingにより特徴量化する。また、抽出部122は、取得部121により取得された他の通知の開封数、他の通知の開封時刻、着信数といった通知に関する情報について、分散や中央値または平均値など統計的に処理した数値を用いて、特徴量化する。
【0027】
〔構築処理〕
推定部123は、推定処理に用いられる機械学習モデルを構築する処理を行ってもよい。例えば、推定部123は、ニューラルネットワークを用いた学習により機械学習モデルを構築する。また、例えば、推定部123は、GBDT(Gradient Boosting Decision Tree:勾配ブースティング決定木)を用いた学習により、機械学習モデルを構築する。GBDTとは「勾配降下法(Gradient)」と「Boosting(アンサンブル)」、「決定木(Decision Tree)」を組み合わせた教師あり機械学習の一つである。
【0028】
例えば、推定部123は、XGBoostやLightGBM等の勾配ブースティング決定木を用いた学習により、機械学習モデルを構築する。なお、機械学習モデルの構築には、機械学習モデルの新規作成のみならず、既存の機械学習モデルの更新も含まれる。なお、推定部123は、外部で構築されたモデルを適用してもよい。このように、推定部123は、抽出部122により抽出された特徴量を入力データとして、構築された機械学習モデルを用いて、ユーザごとの通知に対する開封率を推定する。
【0029】
〔フローチャート〕
次に、
図3を用いて、推定装置100による推定処理の流れについて説明する。
図3は、本実施形態に係る推定処理の流れの一例を示すフローチャートである。
【0030】
まず、取得部121は、通知の開封に関する情報を取得する(ステップS11)。例えば、取得部121は、通知の開封に関する情報として、ユーザ属性情報を取得する。また、例えば、取得部121は、通知の開封に関する情報として、他の通知の開封数を取得する。
【0031】
次に、抽出部122は、取得部121により取得された通知の開封に関する情報から、特徴量を抽出する(ステップS12)。例えば、抽出部122は、取得部121により取得されたユーザの属性情報に含まれる年齢、性別、年収、業界、職種、住所といったカテゴリ変数をOne hot Encodingにより特徴量化する。また、抽出部122は、取得部121により取得された通知に関する情報について、分散や中央値または平均値など統計的に処理した数値を用いて特徴量化する。
【0032】
それから、推定部123は、抽出部122により抽出された特徴量に基づいて、通知の開封率を推定する(ステップS13)。例えば、推定部123は、抽出部122により抽出されたユーザによる他の通知の開封数という特徴量に基づいて、ニューラルネットワークや決定木などのモデルにより、「ユーザID:001が、通知ID:952を開封する確率は、72%」と推定する。
【0033】
ここで、通知部124は、推定された開封率が所定値以上であるかどうかの判定を行う(ステップS14)。このとき、推定部123によって推定された開封率が所定値以上である場合(ステップS14“肯定”)、通知部124は、ターゲットとなるユーザに対し通知を行う(ステップS15)。例えば、通知部124は、推定部123により、「ユーザID:001が、通知ID:952を開封する確率は72%」と推定された結果を受けて、通知の開封率が70%以上であるとして、ユーザID:001に対して、通知ID:952を通知する。
【0034】
一方、推定部123によって推定された開封率が所定値以上でない場合(ステップS14“否定”)、通知部124は、ターゲットとなるユーザに対して通知を行わない。例えば、通知部124は、推定部123により、「ユーザID:001が、通知ID:952を開封する確率は35%」と推定された結果を受けて、通知の開封率が70%以上でないとして、ユーザID:001に対して、通知ID:952の通知を行わない。
【0035】
〔効果〕
このように、実施形態に係る推定装置100は、取得部121と、抽出部122と、推定部123と、通知部124とを有する。取得部121は、通知の開封に関する情報を取得する。抽出部122は、取得部121により取得された通知の開封に関する情報から、特徴量を抽出する。推定部123は、抽出部122により抽出された特徴量に基づいて、通知の開封率を推定する。通知部124は、推定部123により推定された開封率が所定値以上である場合に通知する。
【0036】
これにより、実施形態に係る推定装置100は、通知を行った場合に開封される可能性の高いユーザを推定し、当該ユーザに対して通知を行うことができる。つまり、推定装置100は、開封率が高いと推定されたユーザをターゲットとすることで、通知を希望するユーザに対して通知を行うことができる。
【0037】
また、実施形態に係る推定装置100において、抽出部122は、抽出する特徴量として、他の通知の開封数を抽出する。この構成により推定装置100は、開封率が高いと推定されたユーザをターゲットとすることで、通知を希望するユーザに対して通知を行うことができる。
【0038】
また、実施形態に係る推定装置100において、抽出部122は、抽出する特徴量として、他の通知の開封時刻を抽出する。この構成により推定装置100は、開封率が高いと推定されたユーザをターゲットとすることで、通知を希望するユーザに対して通知を行うことができる。
【0039】
また、実施形態に係る推定装置100において、抽出部122は、抽出する特徴量として、着信数を抽出する。この構成により推定装置100は、開封率が高いと推定されたユーザをターゲットとすることで、通知を希望するユーザに対して通知を行うことができる。
【0040】
また、実施形態に係る推定装置100において、抽出部122は、抽出する特徴量として、通知に関する情報に対するユーザの関心度を抽出する。この構成により推定装置100は、開封率が高いと推定されたユーザをターゲットとすることで、通知を希望するユーザに対して通知を行うことができる。
【0041】
また、実施形態に係る推定装置100において、推定部123は、木構造のモデルを用いて、抽出部122により抽出された特徴量に基づいて、通知の開封率を推定する。この構成により推定装置100は、木構造を用いて有力な切り口を複数階層で探すことができ、加えて、推定結果についての理解を容易にする。また、この構成により推定装置100は、開封率が高いと推定されたユーザをターゲットとすることで、通知を希望するユーザに対して通知を行うことができる。
【0042】
また、実施形態に係る推定装置100において、通知部124は、他の通知の開封数が所定値以下のユーザに対して通知する。この構成により推定装置100は、新規ユーザや他の通知の開封数が少ないユーザに対して通知を行うことができる。
【0043】
また、実施形態に係る推定装置100において、推定部123は、ユーザごとに複数の通知について推定し、通知部124は、推定部123により推定された通知の開封率が高い順に所定数通知する。この構成により推定装置100は、開封率が高いと推定された通知に関して、もれなくターゲットのユーザに対して通知を行うことができる。また、この構成により推定装置100は、新規ユーザに対する通知を可能とし、ユーザが興味関心を抱いている可能性のある分野について通知を行うことができる。
【0044】
〔プログラム〕
上述してきた実施形態に係る推定装置100は、例えば
図4に示すような構成のコンピュータ1000によって実現される。
図4は、推定装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD(Hard Disk Drive)1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
【0045】
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0046】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、ネットワークNを介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータをネットワークNを介して他の機器へ送信する。
【0047】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
【0048】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0049】
例えば、コンピュータ1000が実施形態に係る推定装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部120の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。
【0050】
〔その他〕
様々な実施形態を、図面を参照して、本明細書で詳細に説明したが、これらの複数の実施形態は例であり、本発明をこれらの複数の実施形態に限定することを意図するものではない。すなわち、本願発明は、入力として用いる特徴量を変更することによって、種々の多値分類モデルの学習、構築、更新を行い、目的とする確率を推定することが可能である。本明細書に記載された特徴は、当業者の知識に基づく様々な変形や改良を含む、様々な方法によって実現され得る。
【0051】
また、上述した「部(module、-er接尾辞、-or接尾辞)」は、ユニット、手段、回路などに読み替えることができる。例えば、通信部(communication module)、制御部(control module)および記憶部(storage module)は、それぞれ、通信ユニット、制御ユニットおよび記憶ユニットに読み替えることができる。
【符号の説明】
【0052】
100 推定装置
110 通信部
120 制御部
121 取得部
122 抽出部
123 推定部
124 通知部
130 記憶部