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

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

Info

Publication number
JP2023085594A
JP2023085594A JP2021199708A JP2021199708A JP2023085594A JP 2023085594 A JP2023085594 A JP 2023085594A JP 2021199708 A JP2021199708 A JP 2021199708A JP 2021199708 A JP2021199708 A JP 2021199708A JP 2023085594 A JP2023085594 A JP 2023085594A
Authority
JP
Japan
Prior art keywords
user
ratio
information
recommended
book
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.)
Pending
Application number
JP2021199708A
Other languages
English (en)
Inventor
純子 磯邉
Junko Isobe
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2021199708A priority Critical patent/JP2023085594A/ja
Publication of JP2023085594A publication Critical patent/JP2023085594A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】ユーザに適した物品を特定する情報処理プログラム、情報処理方法及び情報処理装置を提供する。【解決手段】情報処理装置10において、複数の物品それぞれの属性を示す属性情報11aとユーザによる物品の利用履歴を示す利用履歴情報11bを記憶する記憶部11と、属性情報11aと利用履歴情報11bとに基づいて、所定の時間範囲ごとにユーザが利用した物品の属性の割合を集計し、利用履歴情報11bに関する時点である基準時点からの経過時間と時間範囲ごとの割合の推移とに基づいて、複数の物品の情報のうちユーザに推薦する物品の情報を特定する処理部12と、を備える。【選択図】図1

Description

本発明は情報処理プログラム、情報処理方法および情報処理装置に関する。
図書館などにおける蔵書の検索にOPAC(Online Public Access Catalog)と呼ばれる検索システムが利用されることがある。
例えば、複数の図書館から貸し出し記録を収集し、各図書館から収集された貸し出し記録に基づくレコメンド情報を提供する図書館蔵書検索システムの提案がある。提案の図書館蔵書検索システムは、貸し出し記録を収集するに際し、プライバシーの侵害にあたり得る情報は削除し、ユーザの所属属性情報(例えば学部や学年の情報)を利用する。当該図書館蔵書検索システムは、「この本を借りた人はこんな本も借りています」といったレコメンド情報を提供する。
また、ユーザが本当に興味を持っている情報を示すインサイトワードが、重みを持って順位付けられているインサイトデータに基づいて書籍を推薦する書籍推薦サーバの提案もある。提案の書籍推薦サーバは、端末から受け付ける選択書籍で機械可読目録データを検索し、選択書籍に対応付けられている件名を取得し、当該件名でインサイトデータのテーブルを検索し、重みが大きいインサイトワードを取得する。そして、書籍推薦サーバは、取得したインサイトワードで機械可読目録データを検索し、インサイトワードと同一の単語が含まれている件名が対応付けられている書籍、またはインサイトワードを含む書籍名の書籍を、推薦書籍として端末に提供する。
更に、画面上に表示される本棚ユーザインターフェースを構造化ファイルによって定義し、構造化ファイルを構成する各モジュールで独立してそれぞれの情報を収集する電子書籍の情報管理システムの提案もある。
特開2012-103759号公報 特開2013-210787号公報 国際公開第2013/089083号
ユーザが利用する、図書や動画コンテンツなどの物品の傾向は、時間の経過とともに変わり得る。例えば、ユーザが読む本の内容の傾向は、時間の経過とともに変わり得る。このため、情報処理装置によりユーザに適した物品を特定するのが難しいことがある。例えば、ユーザに対する最新の貸し出し記録の情報に従って推薦する図書を特定する方法では、該当のユーザに対して直近の貸し出し記録の情報がない場合、情報処理装置は当該ユーザの現在の読書傾向を得られず、ユーザに適した図書を特定できないことがある。
1つの側面では、本発明は、ユーザに適した物品を特定することができる情報処理プログラム、情報処理方法および情報処理装置を提供することを目的とする。
1つの態様では、情報処理プログラムが提供される。この情報処理プログラムは、コンピュータに、複数の物品それぞれの属性を示す属性情報とユーザによる物品の利用履歴を示す利用履歴情報とに基づいて、所定の時間範囲ごとにユーザが利用した物品の属性の割合を集計し、利用履歴情報に関する時点である基準時点からの経過時間と時間範囲ごとの割合の推移とに基づいて、複数の物品の情報のうちユーザに推薦する物品の情報を特定する、処理を実行させる。
また、1つの態様では、情報処理方法が提供される。
また、1つの態様では、情報処理装置が提供される。
1つの側面では、ユーザに適した物品を特定することができる。
第1の実施の形態の情報処理装置を説明する図である。 第2の実施の形態の情報処理システムを示す図である。 サーバ装置のハードウェア例を示す図である。 サーバ装置の機能例を示す図である。 ユーザテーブルの例を示す図である。 図書テーブルの例を示す図である。 貸し出し履歴テーブルの例を示す図である。 貸し出し履歴集計テーブルの第1の例を示す図である。 貸し出し履歴集計テーブルの第2の例を示す図である。 パラメタファイルの例を示す図である。 パラメタファイル取得処理の例を示すフローチャートである。 集計処理の例を示すフローチャートである。 図書抽出処理の例を示すフローチャートである。 推奨対象年齢予測処理の例を示すフローチャートである。 平均成長率の計算例を示す図である。 推奨ジャンル構成決定処理の例を示すフローチャートである。 図書抽出処理の第1の具体例を示す図である。 図書抽出処理の第2の具体例を示す図である。 バーチャル書棚画面の例を示す図である。
以下、本実施の形態について図面を参照して説明する。
[第1の実施の形態]
第1の実施の形態を説明する。
図1は、第1の実施の形態の情報処理装置を説明する図である。
情報処理装置10は、ユーザに提供される物品の目録を管理する。第1の実施の形態では、物品の一例として図書を挙げる。この場合、情報処理装置10は、図書館や書店などの施設における図書の目録を管理する。情報処理装置10は、ユーザによる図書の目録の確認を支援する。図書は、図書館や書店などに所蔵されている書籍でもよいし、電子書籍でもよい。すなわち、情報処理装置10は、図書館や書店などの施設に蔵書として保管されている図書の目録を管理してもよいし、電子書籍の目録を管理してもよい。
情報処理装置10は、記憶部11および処理部12を有する。記憶部11は、RAM(Random Access Memory)などの揮発性記憶装置でもよいし、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性記憶装置でもよい。処理部12は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを含み得る。処理部12はプログラムを実行するプロセッサでもよい。「プロセッサ」は、複数のプロセッサの集合(マルチプロセッサ)を含み得る。
記憶部11は、属性情報11aおよび利用履歴情報11bを記憶する。属性情報11aは、複数の物品それぞれの属性を示す情報である。属性には、例えば、物品の対象年齢に関する属性や物品のジャンルに関する属性などがある。例えば、属性情報11aは、物品ID(IDentifier)「a」、属性「α」のレコードを含む。物品IDは、物品の識別情報である。前述のように、第1の実施の形態では、物品として図書が例示される。下記の説明における「図書」は、「物品」に読み替えらえれてもよい。物品ID「a」の図書は、図書aと表記される。属性「α」は単に属性αと表記される。当該レコードは、図書aが属性αであることを示す。属性情報11aは、図書b,c,d,…のレコードも含む。例えば、図書bの属性は「α」である。図書cの属性は「β」である。図書dの属性は「γ」である。図書の対象年齢に関する属性の場合、例えばαは対象年齢「1歳以上」、βは対象年齢「2歳以上」のように、読者として対象とされる年齢を示す。図書のジャンルに関する属性の場合、例えばαは「推理・ミステリ」、βは「恐竜・化石」などのように図書が分類されるジャンルの名称を示す。また、ジャンルには、著者名や出版社名が含まれてもよい。
利用履歴情報11bは、ユーザによる図書の利用履歴を示す情報である。図書の利用は、例えばユーザが図書を借りることである。図書の利用は、ユーザが図書を部分的に(例えば所定ページ数だけ)閲覧することでもよいし、ユーザが図書を読了することでもよい。この場合、例えば、情報処理装置10は、ユーザによる電子書籍の閲覧状況や読了状況を利用履歴として管理してもよい。また、図書の利用は、ユーザが「お気に入り」である旨を示す識別情報を図書に付与することでもよい。あるいは、図書の利用は、ユーザが図書を購入することでもよい。
利用履歴情報11bは、ユーザID「u1」、利用日「t1」、物品ID「a」のレコードを含む。ユーザIDは、ユーザの識別情報である。利用日は、図書の利用が行われた日付である。ユーザID「u1」のユーザはユーザu1と表記される。当該レコードは、ユーザu1により、利用日「t1」に、図書aが利用されたことを示す。利用履歴情報11bは、他の利用履歴のレコードも含む。図書の利用が行われた時点は、日付以外の情報で表されてもよい。例えば、図書の利用が行われた時点は、基準時から経過した時間で表されてもよい。
処理部12は、属性情報11aと利用履歴情報11bとに基づいて、所定の時間範囲ごとにユーザが利用した図書の属性の割合を集計する。所定の時間範囲は、記憶部11に予め設定される。時間範囲は、例えば、1年を6か月や4か月などの期間で区切った範囲である。例えば1年を6か月で区切る場合、1つ目の時間範囲を第1年目の4月~9月とし、2つ目の時間範囲を第1年目の10月~3月とし、3つ目の時間範囲を第2年目の4月~9月とするというように各時間範囲が定められる。
例えば、処理部12は、ユーザID「u1」に対して、利用履歴情報11bからユーザID「u1」のレコードを抽出し、当該レコードから利用日と物品IDとを取得する。処理部12は、利用日を時間範囲に対応付ける。ある利用日に対応する時間範囲は、当該利用日が属する時間範囲である。処理部12は、時間範囲ごとに、ユーザu1が利用した図書の属性の割合を求める。処理部12は、求めた割合を集計情報11cに記録する。処理部12は、集計情報11cを記憶部11に格納する。
集計情報11cは、ユーザIDおよび時間範囲の組ごとの、当該ユーザIDのユーザが利用した図書の属性の割合の集計結果である。利用した図書の属性の割合は、利用割合と表記される。例えば、集計情報11cは、ユーザID「u1」、時間範囲「y1」、属性「α」、利用割合「r1」のレコードを含む。当該レコードは、ユーザu1の時間範囲「y1」における属性αの利用割合、すなわち、属性αに分類される図書の利用割合が「r1」であることを示す。一例では、ユーザu1に対する時間範囲「y1」における属性αの利用割合は、ユーザu1が時間範囲「y1」において利用した属性αの図書の数を、当該ユーザu1が時間範囲「y1」において利用した図書の総数で割った値となる。集計情報11cは、ユーザIDおよび時間範囲の他の組のレコードも含む。
処理部12は、ユーザの年齢と時間範囲ごとの割合の推移とに基づいて、蔵書の情報のうち、当該ユーザに推薦する図書を決定する。蔵書の情報は、図書館や店舗などの施設に所蔵されている図書の目録を示す。蔵書の情報は、複数の物品の情報の一例である。蔵書は電子書籍でもよい。蔵書の情報は、記憶部11に記憶されてもよいし、情報処理装置10の外部の記憶装置に記憶されてもよい。例えば、図書の対象年齢やジャンルなどの情報は、蔵書の情報に含まれてもよい。
例えば、グラフ11dは、集計情報11cに基づくユーザu1の各属性の利用割合の推移を示す。グラフ11dの横軸は時間である。グラフ11dの縦軸は利用割合である。グラフ11dは、例えば、属性αの利用割合の推移を表す系列、および、属性βの利用割合の推移を表す系列を含む。
例えば、処理部12は、ユーザID「u1」の入力を受け付けると、グラフ11dで示される各属性の利用割合の推移およびユーザu1の現在の年齢から、ユーザu1の図書の属性に対する現在の読書傾向を推定する。具体的には、処理部12は、グラフ11dに基づいて、属性αの利用割合の平均変化量Δr1、および、属性βの利用割合の平均変化量Δr2を求める。そして、処理部12は、基準時点の属性αの利用割合に、平均変化量Δr1と当該基準時点から現時点までの時間を乗じた値を加算することで、ユーザu1による属性αの現在の利用割合を推定する。同様に、処理部12は、基準時点の属性βの利用割合に、平均変化量Δr2と当該基準時点から現時点までの時間を乗じた値を加算することで、ユーザu1による属性βの現在の利用割合を推定する。基準時点は、該当のユーザの過去の所定の年齢でもよい。現時点は該当のユーザの現在の年齢でもよい。基準時点は、該当のユーザに対して最後に図書の利用記録がある時点や当該時点におけるユーザの年齢でもよい。基準時点から現時点までの時間は、ユーザの過去の所定の年齢と現在の年齢との差でもよい。例えば、経過時間は、基準時点のユーザの年齢(あるいは月齢)と現時点のユーザの年齢(あるいは月齢)との差でもよい。また、基準時点から読書傾向を推定したい時期までの時間を経過時間としてもよい。
属性α,βそれぞれの現在の利用割合の推定値は、ユーザu1による図書の属性に対する現在の読書傾向を表す指標となる。例えば、処理部12は、現在の利用割合の推定値が大きいほど、ユーザu1の該当の属性に対する興味が大きいと判断する。属性α,βそれぞれの現在の利用割合の推定値は、属性α,βそれぞれのユーザu1に対する推奨割合と表記されてもよい。推奨割合は、ユーザに推薦する図書に対して推奨される該当の属性の割合である。
更に、属性として図書の対象年齢を用いる場合、処理部12は、グラフ11dの各系列を、図書の対象年齢(例えば、対象年齢の下限)とユーザu1の各時間範囲における年齢との差に対して求め、当該各系列の推移によりユーザu1の現在の読書傾向を推定してもよい。この場合、当該各系列は、ユーザu1による実年齢、実年齢よりも下の年齢、あるいは、実年齢よりも上の年齢を対象年齢とする図書の利用割合の推移となる。例えば、ユーザu1が比較的低い年齢の場合、当該推移はユーザu1の成長度を表す指標となる。
このように、処理部12は、図書の対象年齢と図書の利用時の実年齢との差に対する利用割合の推移を求め、当該推移とユーザu1の現在の年齢とから、図書の対象年齢に対するユーザu1の現在の利用割合(推奨割合)を推定してもよい。この場合、図書の対象年齢とユーザの実年齢との差は、図書の対象年齢に関する属性の一例である。例えば、処理部12は、図書の対象年齢とユーザの実年齢との差「0」を属性α、図書の対象年齢とユーザの実年齢との差「+1」を属性βのようにしてもよい。こうして、処理部12は、ユーザの現在の年齢X歳に対して、例えば、対象年齢「X+0歳」の図書の利用割合や、対象年齢「X+1歳」の図書の利用割合などを推定してもよい。あるいは、対象年齢が年齢範囲で示される場合、処理部12は、ユーザの現在の年齢X歳に対して、例えば、対象年齢に「X+0歳」を含む図書の利用割合や、対象年齢に「X+1歳」を含む図書の利用割合などを推定してもよい。
処理部12は、ユーザu1に対して推定した現在の各属性の利用割合に基づいて、複数の図書から推薦物品11eを決定する。推薦物品11eは、処理部12がユーザu1に推薦する物品である。本例では、推薦物品11eは、処理部12がユーザu1に推薦する図書であり、推薦図書と言われてもよい。例えば、処理部12は、推定した利用割合となるように、蔵書の情報の中から所定の順序で所定の上限数に達するまで各属性の図書を抽出し、抽出した図書を推薦物品11eとする。所定の順序は、例えば、出版日付の新しい図書を優先する順序である。あるいは、所定の順序は、出版日付の古い図書を優先する順序でもよい。こうして、処理部12は、推薦物品11eを含む複数の推薦図書を決定する。例えば、処理部12は、複数の推薦図書のうち、推定した利用割合が最も大きい属性をもち、かつ、各出版日付などから最も優先度の高い推薦図書を推薦物品11eとしてもよい。
処理部12は、推薦物品11eの情報を出力する。例えば、処理部12は、決定した複数の推薦図書の情報を蔵書の情報から取得する。処理部12は、情報処理装置10に接続された表示装置に推薦物品11eの情報を表示させてもよいし、ネットワークを介して情報処理装置10と通信する他の情報処理装置に推薦物品11eの情報を送信してもよい。
情報処理装置10によれば、複数の物品それぞれの属性を示す属性情報11aとユーザによる物品の利用履歴を示す利用履歴情報11bとに基づいて、所定の時間範囲ごとにユーザが利用した物品の属性の割合が集計される。利用履歴情報に関する時点である基準時点からの経過時間と時間範囲ごとの当該割合の推移とに基づいて、複数の物品の情報のうちユーザに推薦する物品の情報が特定される。
これにより、ユーザに適した物品を特定することができる。
例えば、ユーザが読む本の内容の傾向、すなわち、読書傾向は、時間の経過とともに変わり得る。例えば、ユーザの関心事は時間の経過とともに変わり、それに応じて当該ユーザの読書傾向が変わる。また、比較的低年齢のユーザでは、当該ユーザの成長に応じて当該ユーザが自身で読める本の内容が変わるため、それに応じて当該ユーザの読書傾向が変わる。このため、情報処理装置によりユーザに適した図書を特定するのが難しいことがある。例えば、ユーザに対する最新の貸し出し記録の情報に従って推薦する図書を特定する方法では、該当のユーザに対して直近の貸し出し記録の情報がない場合、情報処理装置は当該ユーザの現在の読書傾向を得られず、ユーザに適した図書を特定できないことがある。
そこで、情報処理装置10は、利用履歴情報に関する時点である基準時点からの経過時間とユーザが過去に利用した図書の属性の割合の推移とに基づいて推薦図書を決定することで、当該ユーザに対する直近の利用履歴がなくても、当該ユーザの現在の読書傾向に合った図書を、推薦図書として決定できる。例えば、処理部12は、過去6か月などにおける直近の利用履歴がある場合には最新の利用割合に基づいて推薦図書を決定し、当該直近の利用履歴がない場合には、それよりも前の利用履歴から把握される利用割合の推移に基づいて推薦図書を決定してもよい。物品として図書を例示したが、物品は、動画や音声などのコンテンツ、あるいは、当該コンテンツを記録した記録媒体などでもよい。
以下では、より具体的な例を示して、情報処理装置10の機能を更に詳細に説明する。
[第2の実施の形態]
次に、第2の実施の形態を説明する。
図2は、第2の実施の形態の情報処理システムを示す図である。
第2の実施の形態の情報処理システムは、サーバ装置100およびクライアント装置200を含む。サーバ装置100およびクライアント装置200は、ネットワーク50を介して接続される。ネットワーク50は、LAN(Local Area Network)でもよいし、WAN(Wide Area Network)やインターネットでもよい。
サーバ装置100は、OPACを提供するサーバコンピュータである。一例として、サーバ装置100は、図書館におけるOPACを提供する。例えば、サーバ装置100は、Webサーバとして機能し、図書の検索に用いられるGUI(Graphical User Interface)をWebページとしてクライアント装置200に提供する。サーバ装置100は、書店における図書の検索や電子書籍の検索に用いられてもよい。サーバ装置100は、第1の実施の形態の情報処理装置10の一例である。また、図書は、書籍、本、資料、動画、書物、文献などと呼ばれてもよい。
クライアント装置200は、ユーザにより操作されるクライアントコンピュータである。例えば、クライアント装置200は、Webブラウザとして機能し、サーバ装置100により提供されるWebページをユーザに提示する。
図3は、サーバ装置のハードウェア例を示す図である。
サーバ装置100は、CPU101、RAM102、HDD103、GPU(Graphics Processing Unit)104、入力インタフェース105、媒体リーダ106およびNIC(Network Interface Card)107を有する。なお、CPU101は、第1の実施の形態の処理部12の一例である。RAM102またはHDD103は、第1の実施の形態の記憶部11の一例である。
CPU101は、プログラムの命令を実行するプロセッサである。CPU101は、HDD103に記憶されたプログラムやデータの少なくとも一部をRAM102にロードし、プログラムを実行する。なお、CPU101は複数のプロセッサコアを含んでもよい。また、サーバ装置100は複数のプロセッサを有してもよい。以下で説明する処理は複数のプロセッサまたはプロセッサコアを用いて並列に実行されてもよい。また、複数のプロセッサの集合を「マルチプロセッサ」または単に「プロセッサ」と言うことがある。
RAM102は、CPU101が実行するプログラムやCPU101が演算に用いるデータを一時的に記憶する揮発性の半導体メモリである。なお、サーバ装置100は、RAM以外の種類のメモリを備えてもよく、複数個のメモリを備えてもよい。
HDD103は、OS(Operating System)やミドルウェアやアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性の記憶装置である。なお、サーバ装置100は、フラッシュメモリやSSD(Solid State Drive)などの他の種類の記憶装置を備えてもよく、複数の不揮発性の記憶装置を備えてもよい。
GPU104は、CPU101からの命令に従って、サーバ装置100に接続されたディスプレイ51に画像を出力する。ディスプレイ51としては、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ(LCD:Liquid Crystal Display)、プラズマディスプレイ、有機EL(OEL:Organic Electro-Luminescence)ディスプレイなど、任意の種類のディスプレイを用いることができる。
入力インタフェース105は、サーバ装置100に接続された入力デバイス52から入力信号を取得し、CPU101に出力する。入力デバイス52としては、マウス、タッチパネル、タッチパッド、トラックボールなどのポインティングデバイス、キーボード、リモートコントローラ、ボタンスイッチなどを用いることができる。また、サーバ装置100に、複数の種類の入力デバイスが接続されていてもよい。
媒体リーダ106は、記録媒体53に記録されたプログラムやデータを読み取る読み取り装置である。記録媒体53として、例えば、磁気ディスク、光ディスク、光磁気ディスク(MO:Magneto-Optical disk)、半導体メモリなどを使用できる。磁気ディスクには、フレキシブルディスク(FD:Flexible Disk)やHDDが含まれる。光ディスクには、CD(Compact Disc)やDVD(Digital Versatile Disc)が含まれる。
媒体リーダ106は、例えば、記録媒体53から読み取ったプログラムやデータを、RAM102やHDD103などの他の記録媒体にコピーする。読み取られたプログラムは、例えば、CPU101によって実行される。なお、記録媒体53は可搬型記録媒体であってもよく、プログラムやデータの配布に用いられることがある。また、記録媒体53やHDD103を、コンピュータ読み取り可能な記録媒体と言うことがある。
NIC107は、ネットワーク50に接続され、ネットワーク50を介して他のコンピュータと通信を行うインタフェースである。NIC107は、例えば、スイッチやルータなどの通信装置とケーブルで接続される。NIC107は、無線通信インタフェースでもよい。
クライアント装置200はサーバ装置100と同様のハードウェアにより実現される。
図4は、サーバ装置の機能例を示す図である。
サーバ装置100は、記憶部110、集計部120、図書抽出部130および出力処理部140を有する。記憶部110は、RAM102やHDD103の記憶領域により実現される。集計部120、図書抽出部130および出力処理部140は、CPU101によりRAM102に記憶されたプログラムが実行されることで実現される。
記憶部110は、ユーザテーブル、図書テーブル、貸し出し履歴テーブル、貸し出し履歴集計テーブルおよびパラメタファイルを記憶する。
ユーザテーブルは、ユーザIDに対応付けてユーザの氏名や生年月日を保持するテーブルである。図書テーブルは、図書館に所蔵される図書の情報を保持するテーブルである。図書テーブルは、図書の属性の情報を含む。図書の第1の属性は、ジャンルに関する属性である。図書の第2の属性は、対象年齢に関する属性である。
貸し出し履歴テーブルは、ユーザに対する図書の貸し出しの履歴を保持するテーブルである。貸し出し履歴集計テーブルは、貸し出し期間と属性との組に対して、ユーザごとの貸し出し履歴を集計した結果を保持するテーブルである。貸し出し履歴の集計単位は、貸し出し期間とジャンルと対象年齢との組となる。
パラメタファイルは、集計部120や図書抽出部130の処理に用いられる各種のパラメタを保持する。例えば、パラメタファイルは、集計部120による集計処理の実行タイミングを示す情報や図書抽出部130による図書抽出処理において抽出する図書の優先度を示す情報などを含む。
集計部120は、所定のタイミングで、図書テーブルおよび貸し出し履歴テーブルに基づいて、当該ユーザIDに対応する貸し出し履歴の集計を行う。集計部120は、貸し出し履歴集計テーブルに集計結果を記録する。
図書抽出部130は、クライアント装置200からユーザIDの入力を受け付けると、貸し出し履歴集計テーブルに基づいて、当該ユーザIDのユーザに推薦する図書、すなわち、推薦図書を、図書テーブルから抽出する。
出力処理部140は、図書抽出部130により抽出された推薦図書の情報を出力する。例えば、出力処理部140は、推薦図書の情報を含むWebページを、クライアント装置200に送信する。出力処理部140は、図書が収納された書棚の画像を含むバーチャル書棚と呼ばれるGUIをクライアント装置200に提供してもよい。バーチャル書棚は、図書館に居なくても、図書館内に居るかのように図書を探す環境をユーザに提供する。バーチャル書棚は、例えば、推薦図書の背表紙が書棚に陳列された背表紙陳列棚形式の画像を含んでもよいし、推薦図書の表紙が並べて展示された展示棚形式の画像を含んでもよい。
図5は、ユーザテーブルの例を示す図である。
ユーザテーブル111は、記憶部110に記憶される。ユーザテーブル111は、ユーザID、氏名および生年月日の項目を含む。ユーザIDの項目には、ユーザを識別するユーザIDが登録される。氏名の項目には、ユーザの氏名が登録される。生年月日の項目には、ユーザの生年月日が登録される。
例えば、ユーザテーブル111は、ユーザID「u1」、氏名「富士太郎」、生年月日「2012.8.1」のレコードを含む。当該レコードは、ユーザID「u1」で識別されるユーザの氏名が「富士太郎」であり、生年月日が2012年8月1日であることを示す。ユーザテーブル111には、ユーザID「u2」やユーザID「u3」を含む、他のユーザIDのユーザのレコードも登録される。
集計部120および図書抽出部130は、ユーザの生年月日をユーザの年齢の特定に用いる。集計部120および図書抽出部130は、例えば1年を4月~3月に区切り、ある年におけるユーザの年齢を、当該年と、生年月日の年との年数差とする。
図6は、図書テーブルの例を示す図である。
図書テーブル112は、記憶部110に記憶される。図書テーブル112は、図書ID、図書名、ジャンルおよび対象年齢の項目を含む。図書IDの項目には、図書を識別する図書IDが登録される。図書名の項目には、図書の名称が登録される。ジャンルの項目には、図書のジャンルが登録される。ジャンルは、図書の内容に応じた分類である。対象年齢の項目には、図書の対象年齢が登録される。
例えば、図書テーブル112は、図書ID「a」、図書名「名探偵と怪人」、ジャンル「推理・ミステリ」、対象年齢「10~12」のレコードを含む。当該レコードは、図書ID「a」で識別される図書の名称が「名探偵と怪人」であり、当該図書のジャンルが「推理・ミステリ」であり、対象年齢が10~12歳であることを示す。
図書テーブル112には、他の図書のレコードも登録される。また、図書テーブル112の各レコードは、該当の図書が出版された出版年月や図書の背表紙の画像や表紙の画像、著者名、出版社名などの他の情報を含んでもよい。
図7は、貸し出し履歴テーブルの例を示す図である。
貸し出し履歴テーブル113は、記憶部110に記憶される。貸し出し履歴テーブル113は、ユーザID、貸し出し図書IDおよび貸し出し日の項目を含む。ユーザIDの項目には、ユーザIDが登録される。貸し出し図書IDの項目には、ユーザIDで識別されるユーザに貸し出された図書の図書IDが登録される。貸し出し日の項目には、当該図書が貸し出された日付が登録される。
例えば、貸し出し履歴テーブル113は、ユーザID「u3」、貸し出し図書ID「c」、貸し出し日「2017/6/10」のレコードを含む。当該レコードは、ユーザID「u3」で識別されるユーザに、図書ID「c」で識別される図書が、2017年6月10日に貸し出されたことを示す。貸し出し履歴テーブル113は、他の貸し出しのレコードも登録される。
図8は、貸し出し履歴集計テーブルの第1の例を示す図である。
貸し出し履歴集計テーブル114a、記憶部110に記憶される。貸し出し履歴集計テーブル114aは、ユーザID、実年齢、貸し出し期間、ジャンル、対象年齢、貸し出し冊数、ジャンル割合詳細およびジャンル割合の項目を含む。
ユーザIDの項目には、ユーザIDが登録される。実年齢の項目には、貸し出し時におけるユーザIDで識別されるユーザの実年齢が登録される。貸し出し期間の項目には、貸し出し日が属する期間が登録される。ジャンルの項目には、貸し出された図書のジャンルが登録される。対象年齢の項目には、貸し出された図書の対象年齢が登録される。貸し出し冊数の項目には、該当のユーザに対して、該当の期間に貸し出された、該当のジャンルおよび対象年齢に対応する図書の数、すなわち、貸し出し冊数が登録される。ジャンル割合詳細の項目には、ジャンル割合詳細が登録される。ジャンル割合詳細は、後述されるジャンル割合を図書の対象年齢別に詳細化した割合である。ジャンル割合の項目には、ジャンル割合が登録される。ジャンル割合は、該当のユーザに対して、該当の期間に貸し出された図書の総数のうち該当のジャンルの図書の数の割合である。
例えば、貸し出し履歴集計テーブル114aは、ユーザID「u2」、実年齢「3」、貸し出し期間「2019/10~3」、ジャンル「交通・のりもの」、対象年齢「3~4」、貸し出し冊数「5」、ジャンル割合詳細「63%」、ジャンル割合「63%」のレコードを含む。当該レコードは、ユーザID「u2」で識別されるユーザに対して、2019年10月~2020年3月の期間において、ジャンル「交通・のりもの」かつ対象年齢3歳~4歳の図書が、5冊貸し出されており、ジャンル「交通・のりもの」のジャンル割合が63%、ジャンル割合詳細が63%であることを示す。なお、当該ユーザに対し当該期間において、ジャンル「交通・のりもの」について対象年齢が3歳~4歳である図書のみが貸し出されているので、ジャンル割合とジャンル割合詳細とが同じ値となる。ここで、ジャンル割合は、該当期間における該当ジャンルの図書の貸し出し冊数の割合である。よって、当該レコードについてジャンル割合は{5/(5+3)}×100=63%と計算される。なお、ジャンル割合は、小数点以下を丸めた値で表記されている。
また、貸し出し履歴集計テーブル114aは、ユーザID「u2」、実年齢「3」、貸し出し期間「2019/10~3」、ジャンル「自然・いきもの」、対象年齢「3~4」、貸し出し冊数「3」、ジャンル割合詳細「38%」、ジャンル割合「38%」のレコードを含む。
また、貸し出し履歴集計テーブル114aは、ユーザID「u2」、実年齢「4」、貸し出し期間「2020/4~9」、ジャンル「交通・のりもの」、対象年齢「3~4」、貸し出し冊数「3」、ジャンル割合詳細「27%」、ジャンル割合「27%」のレコードを含む。
また、貸し出し履歴集計テーブル114aは、ユーザID「u2」、実年齢「4」、貸し出し期間「2020/4~9」、ジャンル「自然・いきもの」、対象年齢「3~4」、貸し出し冊数「3」、ジャンル割合詳細「28%」、ジャンル割合「73%」のレコードを含む。ここで、ジャンル割合詳細は、該当期間における該当ジャンルかつ該当対象年齢の図書の貸し出し冊数の割合である。よって、当該レコードについてジャンル割合詳細は73%*3/(3+5)=28%と計算される。なお、ジャンル割合詳細は、小数点以下を丸めた値で表記されている。
更に、貸し出し履歴集計テーブル114aは、ユーザID「u2」、実年齢「4」、貸し出し期間「2020/4~9」、ジャンル「自然・いきもの」、対象年齢「5~6」、貸し出し冊数「5」、ジャンル割合詳細「45%」、ジャンル割合「-」のレコードを含む。ハイフン記号(-)は、設定なしを示す。ジャンル割合が設定なしである理由は、当該レコードのジャンル「自然・いきもの」に対するジャンル割合は、同一ユーザの同一期間の同一ジャンルに対する他のレコードに登録されているためである。
貸し出し履歴集計テーブル114aは、他の貸し出し履歴の集計結果のレコードも登録される。
図9は、貸し出し履歴集計テーブルの第2の例を示す図である。
図9の貸し出し履歴集計テーブル114bは、ユーザID「u3」に対する貸し出し履歴の集計結果を主に示す。
図10は、パラメタファイルの例を示す図である。
パラメタファイル115は、記憶部110に記憶される。パラメタファイル115は、集計部120による集計処理および図書抽出部130の図書抽出処理の前に記憶部110に格納される。パラメタファイル115は、項目と当該項目の設定の内容とを含む。
例えば、パラメタファイル115は、項目「集計期間」に対する設定「6か月」を含む。集計期間は、集計処理で集計対象とする期間である。集計期間を6か月とする場合、例えば、集計部120は、1年を4~9月までの期間と、10月~3月までの期間とに区分して、集計を行う。集計期間は、4月~3月までの1年など、他の長さの期間でもよい。
パラメタファイル115は、項目「実年齢推奨パラメタ」に対する設定「30%」を含む。実年齢推奨パラメタは、図書抽出処理における推薦図書の抽出に用いられる。
パラメタファイル115は、項目「履歴無し時の年齢ごとの推奨構成」に対する設定内容を含む。図10では当該設定内容の図示は省略されている。履歴無し時の年齢ごとの推奨構成は、貸し出し履歴テーブル113に該当のユーザに対応するレコードが存在しない場合に推薦図書の抽出に用いられる、年齢ごとのジャンル割合詳細のデフォルト値である。
パラメタファイル115は、項目「検索結果表示優先度」に対する設定「出版年月降順」を含む。検索結果表示優先度は、推薦図書を表示させる際の優先順である。出版年月降順は、出版年月が新しい図書ほど、優先度を高くすることを示す。
パラメタファイル115は、項目「検索結果表示条件」に対する設定「既貸し出し図書非表示」を含む。検索結果表示条件は、推薦図書を表示させる際の条件である。既貸し出し図書非表示は、該当のユーザに対して貸し出し済の図書については、推薦図書として表示させないことを示す。
次に、サーバ装置100の処理手順を説明する。
図11は、パラメタファイル取得処理の例を示すフローチャートである。
(S10)集計部120は、パラメタファイル115の入力を受け付ける。前述のように、パラメタファイル115は、集計期間、実年齢推奨パラメタなどのパラメタを含む。
(S11)集計部120は、パラメタファイル115を記憶部110に保存する。そして、集計部120は、パラメタファイル取得処理を終了する。
図12は、集計処理の例を示すフローチャートである。
集計処理は、所定のタイミングで実行される。所定のタイミングは、例えば、集計期間に応じたタイミングである。例えば、集計部120は、集計期間が6か月の場合、集計処理を6か月に1回の頻度で行ってもよい。
(S20)集計部120は、パラメタファイル115から集計期間を取得する。
(S21)集計部120は、貸し出し履歴テーブル113のユーザごとの貸し出し履歴を、集計期間ごとに、ジャンル別かつ対象年齢別に集計する。集計部120は、図書テーブル112に基づいて、貸し出された図書のジャンルおよび対象年齢を特定する。
(S22)集計部120は、ユーザごとの集計結果を、貸し出し履歴集計テーブル(例えば、貸し出し履歴集計テーブル114aまたは貸し出し履歴集計テーブル114b)に記録する。そして、集計部120は、集計処理を終了する。
図13は、図書抽出処理の例を示すフローチャートである。
図書抽出処理は、クライアント装置200からサーバ装置100へのユーザIDの入力に応じて実行される。図書抽出処理は、クライアント装置200からサーバ装置100へのユーザIDの入力と、バーチャル書棚の表示要求の入力とに応じて実行されてもよい。ユーザIDに対応するユーザが比較的低年齢の場合、当該ユーザの保護者が、当該ユーザに代わって、クライアント装置200を操作して、当該ユーザのユーザIDをサーバ装置100に入力してもよい。
(S30)図書抽出部130は、該当のユーザ、すなわち、入力されたユーザIDに対応するユーザに対して、貸し出し履歴集計情報があるか否かを判定する。該当のユーザに対して、貸し出し履歴集計情報がない場合、図書抽出部130は、ステップS31に処理を進める。該当のユーザに対して、貸し出し履歴集計情報がある場合、図書抽出部130は、ステップS32に処理を進める。図書抽出部130は、貸し出し履歴集計テーブル(例えば、貸し出し履歴集計テーブル114aまたは貸し出し履歴集計テーブル114b)に該当のユーザのレコード(貸し出し履歴集計情報)がない場合に、該当のユーザに対して貸し出し履歴集計情報がないと判定する。図書抽出部130は、貸し出し履歴集計テーブル(例えば、貸し出し履歴集計テーブル114aまたは貸し出し履歴集計テーブル114b)に該当のユーザのレコードがある場合に、該当のユーザに対して貸し出し履歴集計情報があると判定する。
(S31)図書抽出部130は、パラメタファイル115の設定に基づいて、推奨ジャンル構成を決定する。具体的には、図書抽出部130は、ユーザテーブル111から該当のユーザの生年月日を取得し、当該ユーザの現在の年齢を算出する。そして、図書抽出部130は、パラメタファイル115に含まれる「履歴無し時の年齢ごとの推奨構成」に基づいて、当該ユーザの現在の年齢に対応する推奨ジャンル構成を取得する。「履歴無し時の年齢ごとの推奨構成」における該当の年齢の推奨ジャンル構成は、該当の年齢に対するジャンル割合詳細のデフォルト値である。そして、図書抽出部130は、ステップS37に処理を進める。
(S32)図書抽出部130は、該当のユーザの貸し出し履歴集計情報から貸し出し期間ごとのジャンル割合を抽出する。
(S33)図書抽出部130は、貸し出し履歴テーブル113に基づいて、該当のユーザに対して直近の所定期間内の貸し出し履歴情報があるか否かを判定する。該当のユーザに対して直近の所定期間内の貸し出し履歴情報がある場合、図書抽出部130は、ステップS34に処理を進める。該当のユーザに対して直近の所定期間内の貸し出し履歴情報がない場合、図書抽出部130は、ステップS35に処理を進める。ここで、直近の所定期間内は、例えば、現時点から過去6か月または1年などの期間内である。図書抽出部130は、貸し出し履歴テーブル113における該当のユーザのレコード(貸し出し履歴情報)のうち、貸し出し日が直近の所定期間に含まれる貸し出し履歴情報がある場合に、直近の所定期間内の貸し出し履歴情報があると判定する。図書抽出部130は、貸し出し日が直近の所定期間に含まれる貸し出し履歴情報がない場合に、直近の所定期間内の貸し出し履歴情報がないと判定する。
(S34)図書抽出部130は、直近の貸し出し履歴集計情報に基づいて、推奨ジャンル構成を決定する。図書抽出部130は、該当のユーザに対する最新の貸し出し履歴集計情報におけるジャンル割合詳細を、そのまま推奨ジャンル構成として採用する。そして、図書抽出部130は、ステップS37に処理を進める。
(S35)図書抽出部130は、推奨対象年齢予測処理を行う。推奨対象年齢予測処理の詳細は、後述される。
(S36)図書抽出部130は、推奨ジャンル構成決定処理を行う。推奨ジャンル構成決定処理の詳細は、後述される。
(S37)図書抽出部130は、決定した推奨ジャンル構成で、該当のユーザに対する推薦図書を図書テーブル112から抽出する。このとき、図書抽出部130は、パラメタファイル115の「検索結果表示優先度」および「検索結果表示条件」に基づいて、推薦図書の抽出を行う。例えば、図書抽出部130は、検索結果表示優先度の設定に基づいて、発行年月が新しい図書を優先する。また、図書抽出部130は、検索結果表示条件の設定および貸し出し履歴テーブル113に基づいて、該当のユーザに貸し出し済の図書を抽出しない。また、図書抽出部130による推薦図書の抽出数の上限は予め定められる。出力処理部140は、図書抽出部130により抽出された推薦図書の情報を、出力する。例えば、出力処理部140は、推薦図書の情報を含むバーチャル書棚を示すWebページなどの画面情報を、クライアント装置200に送信する。
なお、図書抽出部130は、ステップS33の判定を、貸し出し履歴集計テーブル(例えば、貸し出し履歴集計テーブル114aまたは貸し出し履歴集計テーブル114b)における該当のユーザのレコード(貸し出し履歴集計情報)に基づいて行ってもよい。具体的には、図書抽出部130は、該当のユーザに対して直近の所定期間内の貸し出し履歴集計情報があるか否かを判定してもよい。図書抽出部130は、該当のユーザ対して直近の所定期間内の貸し出し履歴集計情報がある場合に、ステップS34に処理を進める。一方、図書抽出部130は、該当のユーザ対して直近の所定期間内の貸し出し履歴集計情報がない場合に、ステップS35に処理を進める。
図14は、推奨対象年齢予測処理の例を示すフローチャートである。
推奨対象年齢予測処理は、ステップS35に相当する。
(S40)図書抽出部130は、貸し出し履歴集計テーブル(例えば、貸し出し履歴集計テーブル114aまたは貸し出し履歴集計テーブル114b)に基づいて、該当のユーザに関して、貸し出し期間ごとの貸し出し図書のジャンル構成と対象年齢構成とを取得する。
(S41)図書抽出部130は、貸し出し時の実年齢と図書の対象年齢とから貸し出し期間ごとのジャンルごとの成長度を算出する。成長度は、図書の対象年齢からユーザの実年齢を引いた値の分布である。例えば、あるジャンルについて、対象年齢-実年齢=-1である貸し出し図書の冊数が3であり、対象年齢-実年齢=0である貸し出し図書の冊数が5であり、対象年齢-実年齢=+1である貸し出し図書の冊数が4である場合を考える。すなわち、対象年齢-実年齢=-1である貸し出し図書の冊数の割合が25%であり、対象年齢-実年齢=0である貸し出し図書の冊数の割合が42%であり、対象年齢-実年齢=+1である貸し出し図書の冊数の割合が34%である。この場合、例えば、x軸を(対象年齢-実年齢)とし、y軸を貸し出し図書の冊数の割合としたヒストグラムを考えることができる。上記の例の場合、(x,y)=(-1,25%),(0,42%),(+1,34%)のヒストグラムで表される分布は、該当のユーザの該当のジャンルに対する成長度を表す。なお、対象年齢が3~4歳のように範囲で表される場合、図書抽出部130は、当該範囲に属する下限の年齢および上限の年齢それぞれと実年齢との差をとり、絶対値が最小となる方を、対象年齢-実年齢の計算結果として採用する。
(S42)図書抽出部130は、ジャンルごとの貸し出し期間の成長度に対する平均成長率を算出する。平均成長率は、上記成長度の変化の平均値である。例えば、図書抽出部130は、該当のユーザの該当のジャンルについて、対象年齢-実年齢=-1に対し、貸し出し期間に応じた貸し出し冊数の割合の変化の平均値を算出する。例えば、対象年齢-実年齢=-1に対し、(貸し出し期間、貸し出し冊数の割合)=(期間1,25%),(期間2,30%),(期間3,35%)が得られている場合を考える。この場合、図書抽出部130は、単位期間(本例では6か月)当たりの貸し出し冊数の割合の変化の平均値を{(30%-25%)+(35%-30%)}/2=+5%と計算する。例えば、図書抽出部130は、対象年齢-実年齢=0,1などの他の場合についても、同様に、貸し出し期間に応じた貸し出し冊数の割合の変化の平均値を算出する。
(S43)図書抽出部130は、平均成長率から現在の推奨対象年齢を予測する。具体的には、図書抽出部130は、該当のユーザに対する最新の貸し出し履歴集計情報におけるジャンル割合詳細から、該当のジャンルの(対象年齢-当時の実年齢)の貸し出し冊数の割合を、(対象年齢-当時の実年齢)ごとに求める。そして、図書抽出部130は、求めた割合に対して、(対象年齢-当時の実年齢)に対応する割合の変化の平均値と当該最新の貸し出し履歴集計情報から現在までの時間範囲に含まれる貸し出し期間数との積を加算する。こうして、図書抽出部130は、該当のジャンルについて(対象年齢-実年齢)ごとに、該当のユーザが現在の実年齢において借りると推定される図書の冊数の割合、すなわち、推奨割合を得る。そして、図書抽出部130は、推奨対象年齢予測処理を終了する。
図15は、平均成長率の計算例を示す図である。
例えば、図書抽出部130は、あるユーザについてジャンル「日本の物語」に対する平均成長率を次のように計算する。平均成長率情報116は、図書抽出部130により生成される、平均成長率の計算結果の一例である。平均成長率情報116は、記憶部110に格納される。
図書抽出部130は、該当のユーザの貸し出し履歴集計情報から、期間1~4それぞれについて、対象年齢区分として+0歳相当と、+1歳相当との貸し出し冊数の割合を得る。対象年齢区分は、図書の対象年齢-ユーザの実年齢による図書の分類である。対象年齢区分は、該当のユーザに対する図書の属性の一例である。期間1~4それぞれは、貸し出し期間で区分される時間範囲でもよいし、ユーザの年齢に対応する期間で区分される時間範囲でもよい。
例えば、+0歳相当では、各期間の割合は次の通りである。期間1における割合は0.5である。期間2における割合は0.5である。期間2の前の期間1との割合の差は0.0である。期間3における割合は0.5である。期間3の前の期間2との割合の差は0.0である。期間4における割合は0.6である。期間4の前の期間3との割合の差は0.1である。よって、図書抽出部130は、該当のユーザのジャンル「日本の物語」における+0歳相当の割合の変化の平均値、すなわち、平均成長率を(0.0+0.0+0.1)/3=0.03と計算する。
また、+1歳相当では、各期間の割合は次の通りである。期間1における割合は0.5である。期間2における割合は0.6である。期間2の前の期間1との割合の差は0.1である。期間3における割合は0.5である。期間3の前の期間2との割合の差は-0.1である。期間4における割合は0.4である。期間4の前の期間3との割合の差は-0.1である。よって、図書抽出部130は、該当のユーザのジャンル「日本の物語」における+1歳相当の割合の変化の平均値、すなわち、平均成長率を(0.1-0.1-0.1)/3=-0.03と計算する。なお、ある期間における割合の値の合計は、各値の切り上げや切り捨てなどの丸めの関係上、「1」にならないことがある。
図16は、推奨ジャンル構成決定処理の例を示すフローチャートである。
推奨ジャンル構成決定処理は、ステップS36に相当する。
(S50)図書抽出部130は、該当のユーザの最新のジャンル構成を貸し出し履歴集計テーブル(例えば、貸し出し履歴集計テーブル114aまたは貸し出し履歴集計テーブル114b)から取得する。ジャンル構成は、ジャンル割合およびジャンル割合詳細を含む。また、図書抽出部130は、パラメタファイル115から実年齢推奨パラメタを取得する。
(S51)図書抽出部130は、該当のユーザの現在の実年齢と実年齢推奨パラメタとを基に、該当のユーザに対して抽出する図書のジャンル構成を決定する。具体的には、図書抽出部130は、最新のジャンル構成におけるジャンル割合を、現在のジャンル割合として採用する。そして、図書抽出部130は、1つのジャンルにおける各対象年齢の割合を、実年齢推奨パラメタおよびステップS43で各対象年齢に対して求めた、該当のユーザが現在の実年齢において借りると推定される冊数の割合を基に決定する。こうして、図書抽出部130は、該当のユーザに対する現在のジャンル割合およびジャンル割合詳細、すなわち、推奨ジャンル構成を決定する。そして、図書抽出部130は、推奨ジャンル構成決定処理を終了する。
図17は、図書抽出処理の第1の具体例を示す図である。
例えば、図書抽出部130は、図8で例示されるユーザID「u2」のユーザに対して、次のように図書抽出処理を行う。図書抽出部130は、ユーザID「u2」に対して、図13の図書抽出処理のステップS34を実行するものとする。
まず、図書抽出部130は、貸し出し履歴集計テーブル114aに基づいて、直近の貸し出し履歴(貸し出し期間「2020/4~9」)からジャンルおよび対象年齢を算出する。当該貸し出し履歴の時点におけるユーザの年齢は現在年齢に一致しており、4歳である。
図書抽出部130は、ジャンル「交通・のりもの」のジャンル割合として27%を取得する。また、図書抽出部130は、ジャンル「交通・のりもの」について、対象年齢区分「+0歳」の割合として100%を取得する。この場合、ジャンル「交通・のりもの」では、対象年齢区分「+0歳」の全体に対する割合、すなわち、全体割合は27%*1=27%である。
また、図書抽出部130は、ジャンル「自然・いきもの」のジャンル割合として73%を取得する。図書抽出部130は、ジャンル「自然・いきもの」について、対象年齢区分「+0歳」の割合として38%を取得する。この場合、ジャンル「自然・いきもの」では、対象年齢区分「+0歳」の全体割合は73%*0.38=28%である。図書抽出部130は、ジャンル「自然・いきもの」について、対象年齢区分「+1歳」の割合として62%を取得する。この場合、ジャンル「自然・いきもの」では、対象年齢区分「+1歳」の全体割合は73%*0.62=45%である。
例えば、図書抽出部130は、ジャンル「交通・のりもの」かつ対象年齢3~4歳の図書の割合27%、ジャンル「自然・いきもの」かつ対象年齢3~4歳の図書の割合28%、同ジャンルかつ対象年齢5~6歳の図書の割合45%を、推奨ジャンル構成とする。
出力処理部140は、算出された推奨ジャンル構成に従い推薦図書の検索結果を優先順位に応じてクライアント装置200により表示させる。例えば、30冊を表示、すなわち、抽出上限を30とする場合、出力処理部140が出力する推薦図書の冊数は次のようになる。ジャンル「交通・のりもの」かつ対象年齢3~4歳の図書の冊数は、30*27%≒8冊である。ジャンル「自然・いきもの」かつ対象年齢3~4歳の図書の冊数は、30*28%≒8冊である。ジャンル「自然・いきもの」かつ対象年齢5~6歳の図書の冊数は、30*45%≒14冊である。なお、表示優先度は、パラメタファイル115に設定される。例えば、出版年月の降順、すなわち、出版年月の新しい図書が優先される。また、推薦図書の検索結果の表示条件もパラメタファイル115に設定される。例えば、該当のユーザに対して既に貸し出した図書については非表示とされる。
なお、図書抽出部130は、貸し出し履歴集計テーブル114aに基づいて、ジャンル「交通・のりもの」かつ対象年齢3~4歳の図書の割合27%、ジャンル「自然・いきもの」かつ対象年齢3~4歳の図書の割合27%、同ジャンルかつ対象年齢5~6歳の図書の割合46%を、推奨ジャンル構成としてもよい。この場合も、出力処理部140が出力する推薦図書の冊数は上記の説明と同様となる。
図18は、図書抽出処理の第2の具体例を示す図である。
例えば、図書抽出部130は、あるユーザIDのユーザに対して、次のように図書抽出処理を行う。当該ユーザは、ユーザID「u3」のユーザとは異なるユーザでもよい。図書抽出部130は、当該ユーザに対して、図13の図書抽出処理のステップS35,S36を実行するものとする。
まず、図書抽出部130は、図9の貸し出し履歴集計テーブル114bに基づいて、該当のユーザの過去の貸し出し履歴からジャンルおよび対象年齢の割合を取得する。
該当のユーザの4歳時のジャンルおよび対象年齢の割合は次の通りである。
図書抽出部130は、ジャンル「自然・いきもの」のジャンル割合として16%を取得する。また、図書抽出部130は、ジャンル「自然・いきもの」について、対象年齢区分「+0歳」の割合として100%を取得する。この場合、ジャンル「自然・いきもの」では、対象年齢区分「+0歳」の全体に対する割合、すなわち、全体割合は16%*1=16%である。
また、図書抽出部130は、ジャンル「冒険・探検」のジャンル割合として48%を取得する。図書抽出部130は、ジャンル「冒険・探検」について、対象年齢区分「+0歳」の割合として100%を取得する。この場合、ジャンル「冒険・探検」では、対象年齢区分「+0歳」の全体割合は48%*1=48%である。
また、図書抽出部130は、ジャンル「日本の物語」のジャンル割合として36%を取得する。図書抽出部130は、ジャンル「日本の物語」について、対象年齢区分「+0歳」の割合として56%を取得する。この場合、ジャンル「日本の物語」では、対象年齢区分「+0歳」の全体割合は36%*0.56=20%である。図書抽出部130は、ジャンル「日本の物語」について、対象年齢区分「+1歳」の割合として44%を取得する。この場合、ジャンル「日本の物語」では、対象年齢区分「+1歳」の全体割合は36%*0.44=16%である。
該当のユーザの5歳時のジャンルおよび対象年齢の割合は次の通りである。
図書抽出部130は、ジャンル「自然・いきもの」のジャンル割合として11%を取得する。また、図書抽出部130は、ジャンル「自然・いきもの」について、対象年齢区分「+0歳」の割合として100%を取得する。この場合、ジャンル「自然・いきもの」では、対象年齢区分「+0歳」の全体に対する割合、すなわち、全体割合は11%*1=11%である。
また、図書抽出部130は、ジャンル「冒険・探検」のジャンル割合として21%を取得する。図書抽出部130は、ジャンル「冒険・探検」について、対象年齢区分「+0歳」の割合として100%を取得する。この場合、ジャンル「冒険・探検」では、対象年齢区分「+0歳」の全体割合は21%*1=21%である。
また、図書抽出部130は、ジャンル「日本の物語」のジャンル割合として68%を取得する。図書抽出部130は、ジャンル「日本の物語」について、対象年齢区分「+0歳」の割合として62%を取得する。この場合、ジャンル「日本の物語」では、対象年齢区分「+0歳」の全体割合は68%*0.62=42%である。図書抽出部130は、ジャンル「日本の物語」について、対象年齢区分「+1歳」の割合として38%を取得する。この場合、ジャンル「日本の物語」では、対象年齢区分「+1歳」の全体割合は68%*0.38=26%である。
次に、図書抽出部130は、ジャンルごとの所定期間の平均成長率を算出する。所定期間は、上記の割合の計算に用いられた貸し出し履歴情報における貸し出し期間の範囲である。例えば、図書抽出部130は、4歳時と5歳時との間におけるジャンルごとの平均成長率を算出する。
具体的には、図書抽出部130は、ジャンル「自然・いきもの」について、平均成長率を0%とする。ジャンル「自然・いきもの」については、4歳時と5歳時とで、対象年齢区分が+0歳で100%のまま変化がないからである。同様に、図書抽出部130は、ジャンル「冒険・探検」についても、平均成長率を0%とする。
一方、図書抽出部130は、ジャンル「日本の物語」について、対象年齢区分「+0歳」の平均成長率を62%-56%=6%とし、対象年齢区分「+1歳」の平均成長率を38%-44%=-6%とする。
したがって、図書抽出部130は、例えば、該当のユーザの8歳時点(5歳時点から3年後)のジャンル「日本の物語」に対する対象年齢の割合(推奨対象年齢)を次のように予測する。図書抽出部130は、対象年齢区分「+0歳」について、5歳時の割合を基準に、62%+6%*3=62%+18%=80%と予測する。図書抽出部130は、対象年齢区分「+1歳」について、5歳時の割合を基準に、38%+(-6%)*3=38%-18%=20%と予測する。
そして、図書抽出部130は、パラメタファイル115の実年齢推奨パラメタと、該当のユーザの最新ジャンル構成とから8歳時の対象年齢およびジャンルの割合、すなわち、推奨ジャンル構成を決定する。例えば、実年齢推奨パラメタは30%である。また、最新ジャンル構成は、本例では、5歳時のジャンル構成である。例えば、図書抽出部130は、8歳時のジャンル割合として、5歳時のジャンル割合を採用する。
そして、図書抽出部130は、ジャンル「自然・いきもの」かつ対象年齢区分「+0歳」の図書の全体割合を11%とする。図書抽出部130は、ジャンル「冒険・探検」かつ対象年齢区分「+0歳」の図書の全体割合を21%とする。ジャンル「自然・いきもの」および「冒険・探検」は、平均成長率が0だからである。
図書抽出部130は、ジャンル「日本の物語」かつ対象年齢区分「+0歳」の図書の全体割合を58%とする。より具体的には、図書抽出部130は、実年齢推奨パラメタに基づいて、当該全体割合を、68%*{30%+80%*(100%-30%)}=68%*86%=58%と計算する。
また、図書抽出部130は、ジャンル「日本の物語」かつ対象年齢区分「+1歳」の図書の全体割合を10%とする。より具体的には、図書抽出部130は、実年齢推奨パラメタに基づいて、当該全体割合を、68%*{(100%-30%)*20%}=68%*14%=10%と計算する。
例えば、図書抽出部130は、ジャンル「自然・いきもの」かつ対象年齢7~8歳の図書の割合11%、ジャンル「冒険・探検」かつ対象年齢7~8歳の図書の割合21%、ジャンル「日本の物語」かつ対象年齢7~8歳の図書の割合58%、同ジャンルかつ対象年齢9~10歳の図書の割合10%を、推奨ジャンル構成とする。
なお、該当のユーザの8歳時点に対して決定されたジャンル「自然・いきもの」の全体割合11%、ジャンル「冒険・探検」の全体割合21%、ジャンル「日本の物語」の全体割合68%はそれぞれ、各ジャンルの第1推奨割合である。また、ジャンル「日本の物語」の対象年齢区分「+0歳」に対して決定された割合86%、および、ジャンル「日本の物語」の対象年齢区分「+1歳」に対して決定された割合14%は、各対象年齢区分に対して決定された第2推奨割合である。図書抽出部130は、対象年齢区分をユーザの現在の年齢を基準とした図書の対象年齢に換算する。すなわち、図書抽出部130は、ジャンル「日本の物語」の対象年齢区分「+0歳」および対象年齢区分「+1歳」それぞれに対応する対象年齢ごとに、第2推奨割合を決定する。
そして、図書抽出部130は、ジャンル割合(第1推奨割合)およびジャンルに対する対象年齢の内訳の割合(第2推奨割合)に基づいて、各ジャンルの対象年齢ごとの全体割合を算出する。
なお、図書抽出部130は、実年齢推奨パラメタを用いずに第2推奨割合を決定してもよい。その場合、図書抽出部130は、ジャンル「日本の物語」の対象年齢区分「+0歳」に対して割合80%、および、ジャンル「日本の物語」の対象年齢区分「+1歳」に対して割合20%を、各対象年齢区分に対する第2推奨割合とする。
出力処理部140は、算出された推奨ジャンル構成に従い、図17の場合と同様に、推薦図書の検索結果を優先順位に応じてクライアント装置200により表示させる。
なお、上記の例では、ジャンルごとの所定期間の平均成長率に基づいて、推奨する図書のジャンル及び対象年齢の割合を決定していたが、ジャンル構成の割合から推薦する図書のジャンルの割合を決定してもよい。具体的な例を以下で説明する。該当のユーザの4歳時における貸し出し履歴に記録された図書のジャンルの割合が、ジャンル「自然・いきもの」が16%、ジャンル「冒険・探検」が48%、ジャンル「日本の物語」が36%とする。また、該当のユーザの5歳時における貸し出し履歴に記録された図書のジャンルの割合が、ジャンル「自然・いきもの」が18%、ジャンル「冒険・探検」が42%、ジャンル「日本の物語」が40%とする。図書抽出部130は、ジャンルごとの所定期間の平均ジャンル推移率を算出する。図書抽出部130は、ジャンル「自然・いきもの」について、平均ジャンル推移率を18%-16%=2%とする。ジャンル「冒険・探検」の平均ジャンル推移率は、42%-48%=-6%と算出される。また、図書抽出部130は、ジャンル「日本の物語」の平均ジャンル推移率を40%-36%=4%と算出する。したがって、図書抽出部130は、例えば、該当のユーザの8歳時点(5歳時点から3年後)のそれぞれのジャンルの割合を次のように予測する。図書抽出部130は、ジャンル「自然・いきもの」について、5歳時の割合を基準に、18%+2%*3=24%と予測する。同様に、図書抽出部130は、ジャンル「冒険・探検」について、42%+(-6%)*3=24%、ジャンル「日本の物語」について、40%+4%*3=52%と予測する。したがって、図書抽出部130は、ジャンル「自然・いきもの」の図書の割合24%、ジャンル「冒険・探検」の図書の割合24%、ジャンル「日本の物語」の図書の割合52%を推奨ジャンル構成とする。出力処理部140は、算出された推奨ジャンル構成に従い、推薦図書の検索結果をクライアント装置200により表示させる。
図19は、バーチャル書棚画面の例を示す図である。
出力処理部140は、バーチャル書棚画面300の画面情報を、クライアント装置200に送信する。当該画面情報は、図書抽出部130により抽出された推薦図書の情報を含む。クライアント装置200は、クライアント装置200に接続されたディスプレイによりバーチャル書棚画面300を表示する。ユーザは、クライアント装置200に接続された入力デバイスを用いて、バーチャル書棚画面300を操作する。
例えば、バーチャル書棚画面300は、ボタン301,302および書棚画像310を含む。ボタン301は、書棚画像310を前の書棚画像に切り替えるためのユーザの入力を受け付ける。ボタン302は、書棚画像310を次の書棚画像に切り替えるためのユーザの入力を受け付ける。例えば、ユーザは、入力デバイスを用いてポインタ340を操作することで、バーチャル書棚画面300に含まれるボタンに対する入力を行える。
書棚画像310は、ユーザに対して抽出された推薦図書を、背表紙陳列棚形式で表す画像である。書棚画像310は、第1棚画像320および第2棚画像330を含む。第1棚画像320および第2棚画像330それぞれは、各推薦図書の背表紙の画像を含む。
例えば、第1棚画像320に含まれる背表紙画像321は、推薦図書として抽出された「昆虫図鑑」の背表紙の画像である。また、第1棚画像320は、表紙画像322およびボタン323,324を含む。表紙画像322は、ポインタ340を用いて選択された背表紙画像に対応する図書の表紙の画像である。ボタン323は、表紙画像322で表される図書の詳細情報を表示するためのユーザの入力を受け付ける。ボタン324は、表紙画像322で表される図書の蔵書確認を行うためのユーザの入力を受け付ける。蔵書確認は、例えば、図書館が所蔵する当該図書が現在貸し出し中であるか否かの確認である。第2棚画像330も第1棚画像320と同様の画像要素を含む。
なお、書棚画像310は、各推薦図書の表紙画像を並べて配置した展示棚形式の画像でもよい。
このように、出力処理部140は、バーチャル書棚画面300をクライアント装置200に提供することで、ユーザが実際に図書館に居なくても、図書館内に居るかのように図書を探す環境をユーザに提供することができる。
ここで、ユーザが読む本の内容の傾向は、時間の経過とともに変わり得る。このため、情報処理装置によりユーザに適した図書を特定するのが難しいことがある。例えば、ユーザに対する最新の貸し出し記録の情報に従って推薦する図書を特定する方法では、該当のユーザに対して直近の貸し出し記録の情報がない場合、情報処理装置は当該ユーザの現在の読書傾向を得られず、ユーザに適した図書を特定できないことがある。
そこで、サーバ装置100は、ユーザが利用した図書の属性の割合の推移に基づいて、推薦図書を決定することで、当該ユーザに対する直近の利用履歴がなくても、当該ユーザの現在の読書傾向に合った図書を、推薦図書として決定できる。こうして、サーバ装置100によれば、ユーザに適した図書を特定することができる。
例えば、サーバ装置100は、次の処理を実行する。
集計部120は、複数の物品それぞれの属性を示す属性情報とユーザによる物品の利用履歴を示す利用履歴情報とに基づいて、所定の時間範囲ごとに当該ユーザが利用した物品の属性の割合を集計する。図書抽出部130は、利用履歴情報に関する時点である基準時点からの経過時間と時間範囲ごとの当該割合の推移とに基づいて、複数の物品の情報のうちユーザに推薦する物品の情報を特定する。出力処理部140は、図書抽出部130により抽出された物品の情報を出力する。
これにより、サーバ装置100は、ユーザに適した物品を特定することができる。例えば、物品が図書の場合、サーバ装置100は、ユーザの年齢の変化に応じた読書傾向の変化を、ユーザに推薦する図書の出力に反映させることで、現時点のユーザの読書傾向に合った図書をユーザに提示できる。こうして、サーバ装置100は、ユーザ自身が興味を惹かれる物品を容易に見つけ出せるように、ユーザによる物品の探索を支援できる。また、ユーザは、自身が興味を惹かれる物品を容易に見つけ出すことができる。なお、図書抽出部130は、「物品抽出部」と言われてもよい。
なお、図書テーブル112に含まれる図書のジャンルや対象年齢の情報は、属性情報の一例である。また、図書テーブル112における図書の対象年齢からユーザが当該図書を利用した時の年齢を引いた対象年齢区分の情報は、属性情報の一例である。貸し出し履歴テーブル113は、利用履歴情報の一例である。対象年齢区分の情報(属性情報)や貸し出し履歴情報は、図書だけでなく、動画や音声などのコンテンツに対しても存在し得る。
例えば、図書抽出部130は、ユーザが利用した物品の対象年齢とユーザが物品を利用したときの当該ユーザの年齢との差を、物品の属性として取得する。
これにより、サーバ装置100は、ユーザの年齢の変化に対して、ユーザが自身の年齢と対象年齢が同等の物品を好む傾向や、自身の年齢と対象年齢が異なる物品を好むという傾向を、ユーザに推薦する物品の出力に反映させることができる。このため、サーバ装置100は、例えば現時点のユーザの読書傾向により適合した図書をユーザに提示できる。なお、図書などの物品の対象年齢が年齢範囲を表す場合、図書抽出部130は、対象年齢の下限とユーザの年齢との差を求めてもよい。あるいは、第2の実施の形態で例示したように、図書抽出部130は、物品の対象年齢の年齢範囲に属する下限の年齢および上限の年齢それぞれとユーザの年齢との差をとり、絶対値が最小となる方を、物品の対象年齢とユーザの年齢との差として採用してもよい。また、上記の対象年齢区分は、ユーザが利用した物品の対象年齢とユーザが物品を利用したときの年齢との差の一例である。
また、図書抽出部130は、利用履歴情報に関する時点である基準時点からの経過時間とユーザが利用した物品の属性の推移とに基づいて、当該ユーザに推薦する物品の属性ごとの推奨割合を決定してもよい。図書抽出部130は、決定した属性ごとの推奨割合に従って当該ユーザに推薦する物品を決定してもよい。
これにより、サーバ装置100は、現時点のユーザの物品の利用傾向に合った属性の割合で、推薦する物品をユーザに提示できる。このため、例えば、サーバ装置100は、現時点のユーザの物品の利用傾向(例えば、読書傾向)に、より適合した物品(例えば、図書)をユーザに提示できる。
例えば、図書抽出部130は、ユーザが利用した物品の属性の割合の推移に基づいて当該割合の変化量の平均である平均変化量を属性ごとに算出する。図書抽出部130は、算出した属性ごとの平均変化量と過去の所定の年齢においてユーザが利用した物品の属性ごとの割合とユーザの現在の年齢とに基づいて、ユーザに推薦する物品の属性ごとの推奨割合を決定する。
これにより、サーバ装置100は、ユーザが利用した物品の属性の割合の推移から、ユーザの現在の年齢における物品の利用傾向を高精度で予測できる。前述の対象年齢区分に対する平均成長率は、上記の平均変化量の一例である。また、過去の所定の年齢は、例えば、利用履歴情報に含まれる、該当のユーザの最も新しい利用履歴の時点における当該ユーザの年齢である。
また、図書抽出部130は、過去の所定の年齢においてユーザが利用した物品のジャンルに基づいて、ユーザに推薦する物品のジャンルごとの第1推奨割合を決定してもよい。図書抽出部130は、当該ジャンルに属する物品においてユーザが利用した物品の対象年齢とユーザが物品を利用したときの年齢との差に対する割合の推移に基づいて、当該ジャンルに関してユーザに推薦する物品の対象年齢ごとの第2推奨割合を決定してもよい。図書抽出部130は、決定した第1推奨割合および第2推奨割合に基づいてユーザに推薦する物品を決定してもよい。
これにより、サーバ装置100は、ユーザに対し推薦する物品を、ジャンルおよび対象年齢の組ごとに、詳細に決定できる。このため、例えば、サーバ装置100は、ユーザの現時点における読書傾向を高精度で予測できる。
図書抽出部130は、第2推奨割合の決定では、ユーザの現在の年齢に対応する対象年齢である物品の選択割合の下限値に基づいて、第2推奨割合を決定してもよい。
これにより、サーバ装置100は、ユーザの現在の年齢に合う最低限の物品を、ユーザに提示することができる。パラメタファイル115における実年齢推奨パラメタの設定値は、上記の選択割合の下限値の一例である。
図書抽出部130は、利用履歴情報に基づいて、ユーザに対し、過去の所定時点から現在までの第1期間に属する利用履歴があるか否かを判定してもよい。そして、図書抽出部130は、第1期間に属する利用履歴がある場合、第1期間に属する利用履歴における当該ユーザが利用した物品の属性の割合を、当該ユーザに推薦する物品の属性の推奨割合と決定する。また、図書抽出部130は、第1期間に属する利用履歴がない場合、第1期間よりも前の利用履歴に基づいて、所定の時間範囲ごとにユーザが利用した物品の属性の割合を集計する。そして、図書抽出部130は、利用履歴情報に関する時点である基準時点からの経過時間と時間範囲ごとの当該割合の推移とに基づいて、ユーザに推薦する物品の属性の推奨割合を決定する。
こうして、サーバ装置100は、直近の利用履歴を流用して、ユーザに推薦する物品の属性の割合を決定することで、当該割合の決定を高速化できるとともに、当該割合の決定に係る負荷を軽減できる。また、サーバ装置100は、該当のユーザに対して直近の利用履歴がなかった場合でも、当該直近の期間よりも過去の利用履歴に基づいて、ユーザに合った物品を適切に特定できる。
更に、物品が図書の場合、例えばユーザが読む本の内容の傾向は年齢の変化とともに変わり得る。このため、サーバ装置100は、ある程度古い利用履歴をそのまま流用しないようにすることで、現在のユーザにとって興味の薄い図書が推薦されることを抑制できる。第1期間の長さは、例えば、6か月や1年などである。第1期間の長さは、パラメタファイル115の集計期間の長さと同じでもよいし、異なってもよい。
また、物品が図書の場合、図書抽出部130は、例えば蔵書の出版時期に応じた優先度に基づいてユーザに推薦する図書を決定してもよい。
これにより、サーバ装置100は、例えば、新しく出版された図書など、ユーザに推薦する図書を、出版時期に応じて制御可能となる。このため、例えば、サーバ装置100は、ユーザに新刊をお薦めしたい、または、ユーザに古い書籍をお薦めしたいといった図書館や書店のお薦めの方針に対応可能となる。また、例えば、サーバ装置100は、新刊をお薦めしてほしい、または、古い書籍をお薦めしてほしいといったユーザの要求を受け付けて、当該優先度を決定してもよい。パラメタファイル115における検索結果表示優先度の設定値は、上記の優先度の設定内容の一例である。
なお、上記実施形態は図書館のバーチャル書棚のサービスにおいて説明した。しかしながら、これに限られるものでなく、例えば、動画や書籍などの配信サービス、ショッピングサイトでの物品の購入においても応用可能である。
例えば、物品が図書の場合、出力処理部140は、ユーザに推薦する図書が収納された書棚の画像を含む画面を表示装置に表示させてもよい。出力処理部140は、当該画面を示す画面情報を、クライアント装置200などの情報処理装置に送信してもよい。
これにより、サーバ装置100は、図書館や書店などの施設に居なくても、当該施設に居るかのように、ユーザが図書の探索を行う環境を提供できる。バーチャル書棚画面300は、ユーザに推薦する図書が収納された書棚の画像を含む画面の一例である。
なお、第1の実施の形態の情報処理は、処理部12にプログラムを実行させることで実現できる。また、第2の実施の形態の情報処理は、CPU101にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体53に記録できる。
例えば、プログラムを記録した記録媒体53を配布することで、プログラムを流通させることができる。また、プログラムを他のコンピュータに格納しておき、ネットワーク経由でプログラムを配布してもよい。コンピュータは、例えば、記録媒体53に記録されたプログラムまたは他のコンピュータから受信したプログラムを、RAM102やHDD103などの記憶装置に格納し(インストールし)、当該記憶装置からプログラムを読み込んで実行してもよい。
10 情報処理装置
11 記憶部
11a 属性情報
11b 利用履歴情報
11c 集計情報
11d グラフ
11e 推薦物品
12 処理部

Claims (11)

  1. 複数の物品それぞれの属性を示す属性情報とユーザによる物品の利用履歴を示す利用履歴情報とに基づいて、所定の時間範囲ごとに前記ユーザが利用した前記物品の前記属性の割合を集計し、
    前記利用履歴情報に関する時点である基準時点からの経過時間と前記時間範囲ごとの前記割合の推移とに基づいて、前記複数の物品の情報のうち前記ユーザに推薦する前記物品の情報を特定する、
    処理をコンピュータに実行させる情報処理プログラム。
  2. 特定した前記物品の情報を出力する、処理を前記コンピュータに実行させることを特徴とする請求項1に記載の情報処理プログラム。
  3. 前記ユーザが利用した前記物品の対象年齢と前記ユーザが前記物品を利用したときの前記ユーザの年齢との差を、前記物品の前記属性として取得する、
    処理を前記コンピュータに実行させる請求項1または2記載の情報処理プログラム。
  4. 前記経過時間と前記推移とに基づいて、前記ユーザに推薦する前記物品の前記属性ごとの推奨割合を決定し、決定した前記属性ごとの前記推奨割合に従って前記ユーザに推薦する前記物品を決定する、
    処理を前記コンピュータに実行させる請求項1~3の何れか1項に記載の情報処理プログラム。
  5. 前記推移に基づいて前記割合の変化量の平均である平均変化量を前記属性ごとに算出し、算出した前記属性ごとの前記平均変化量と過去の所定の年齢において前記ユーザが利用した前記物品の前記属性ごとの前記割合と前記ユーザの現在の年齢とに基づいて、前記ユーザに推薦する前記物品の前記属性ごとの前記推奨割合を決定する、
    処理を前記コンピュータに実行させる請求項4記載の情報処理プログラム。
  6. 過去の所定の年齢において前記ユーザが利用した前記物品のジャンルに基づいて、前記ユーザに推薦する前記物品の前記ジャンルごとの第1推奨割合を決定し、
    前記ジャンルに属する前記物品において前記ユーザが利用した前記物品の対象年齢と前記ユーザが前記物品を利用したときの年齢との前記差に対する前記割合の前記推移に基づいて、前記ジャンルに関して前記ユーザに推薦する前記物品の対象年齢ごとの第2推奨割合を決定し、
    決定した前記第1推奨割合および前記第2推奨割合に基づいて前記ユーザに推薦する前記物品を決定する、
    処理を前記コンピュータに実行させる請求項3記載の情報処理プログラム。
  7. 前記第2推奨割合の決定では、前記ユーザの現在の年齢に対応する対象年齢である前記物品の選択割合の下限値に基づいて、前記第2推奨割合を決定する、
    処理を前記コンピュータに実行させる請求項6記載の情報処理プログラム。
  8. 前記利用履歴情報に基づいて、前記ユーザに対し、過去の所定時点から現在までの第1期間に属する前記利用履歴があるか否かを判定し、
    前記第1期間に属する前記利用履歴がある場合、前記第1期間に属する前記利用履歴における前記ユーザが利用した前記物品の前記属性の前記割合を、前記推奨割合と決定し、
    前記第1期間に属する前記利用履歴がない場合、前記第1期間よりも前の前記利用履歴に基づいて、前記時間範囲ごとに前記ユーザが利用した前記物品の前記属性の前記割合を集計し、前記経過時間と前記時間範囲ごとの前記割合の前記推移とに基づいて、前記推奨割合を決定する、
    処理を前記コンピュータに実行させる請求項4記載の情報処理プログラム。
  9. 前記物品は図書であり、
    前記ユーザに推薦する前記図書が収納された書棚の画像を含む画面を表示装置に表示させる、または、前記画面を示す画面情報を情報処理装置に送信する、
    処理を前記コンピュータに実行させる請求項1記載の情報処理プログラム。
  10. コンピュータが、
    複数の物品それぞれの属性を示す属性情報とユーザによる物品の利用履歴を示す利用履歴情報とに基づいて、所定の時間範囲ごとに前記ユーザが利用した前記物品の前記属性の割合を集計し、
    前記利用履歴情報に関する時点である基準時点からの経過時間と前記時間範囲ごとの前記割合の推移とに基づいて、前記複数の物品の情報のうち前記ユーザに推薦する前記物品の情報を特定する、
    情報処理方法。
  11. 複数の物品それぞれの属性を示す属性情報とユーザによる物品の利用履歴を示す利用履歴情報とを記憶する記憶部と、
    前記属性情報と前記利用履歴情報とに基づいて、所定の時間範囲ごとに前記ユーザが利用した前記物品の前記属性の割合を集計し、前記利用履歴情報に関する時点である基準時点からの経過時間と前記時間範囲ごとの前記割合の推移とに基づいて、前記複数の物品の情報のうち前記ユーザに推薦する前記物品の情報を特定する処理部と、
    を有する情報処理装置。
JP2021199708A 2021-12-09 2021-12-09 情報処理プログラム、情報処理方法および情報処理装置 Pending JP2023085594A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021199708A JP2023085594A (ja) 2021-12-09 2021-12-09 情報処理プログラム、情報処理方法および情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021199708A JP2023085594A (ja) 2021-12-09 2021-12-09 情報処理プログラム、情報処理方法および情報処理装置

Publications (1)

Publication Number Publication Date
JP2023085594A true JP2023085594A (ja) 2023-06-21

Family

ID=86775888

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021199708A Pending JP2023085594A (ja) 2021-12-09 2021-12-09 情報処理プログラム、情報処理方法および情報処理装置

Country Status (1)

Country Link
JP (1) JP2023085594A (ja)

Similar Documents

Publication Publication Date Title
US9703877B2 (en) Computer-based evaluation tool for selecting personalized content for users
US8548996B2 (en) Ranking content items related to an event
US8893011B2 (en) Chronology display and feature for online presentations and webpages
US8244751B2 (en) Information processing apparatus and presenting method of related items
US20120005044A1 (en) System And Method To Provide A Table Of Products Based On Ranked User Specified Product Attributes
US20090300547A1 (en) Recommender system for on-line articles and documents
US20100169928A1 (en) Information processing apparatus, information processing method, program, and recording medium
WO2008097917A2 (en) Collective ranking of digital content
EP2156294A1 (en) Probabilistic recommendation system
US9798760B2 (en) Application retention metrics
JP2013120555A (ja) コンテンツ情報配信装置及びコンテンツ情報配信方法
CN111310032B (zh) 资源推荐方法、装置、计算机设备及可读存储介质
US8943012B2 (en) Information processing device, information processing method, and program
US20180307744A1 (en) Named entity-based category tagging of documents
US8346799B1 (en) Recent content rank adjustment with inverted decay
Ndumbaro Understanding user-system interactions: An analysis of OPAC users’ digital footprints
CN113034241A (zh) 一种产品信息推荐方法及计算机设备
CN117235586A (zh) 酒店客户画像构建方法、系统、电子设备及存储介质
JP5386660B1 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
US8903817B1 (en) Determining search relevance from user feedback
CN103593382A (zh) 信息处理设备、信息处理方法和程序
KR20110053185A (ko) 사용자의 배경정보에 따른 컨텐츠의 트렌드 분석/검색 시스템 및 방법
JP2023085594A (ja) 情報処理プログラム、情報処理方法および情報処理装置
JP3967230B2 (ja) 画像情報表示システム
JP6604608B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム