(58)【調査した分野】(Int.Cl.,DB名)
前記献立タグ生成部は、前記献立情報を構成する前記料理情報の前記料理タグにタグ付けされた栄養価に対して所定の演算を行い、前記献立情報に紐づけされる前記献立タグを生成する、請求項4に記載の情報提供装置。
前記レコメンド部は、前記ユーザ情報に基づいて前記献立情報のフィルタリングを行い、フィルタリング後の前記献立情報に係る前記献立タグを検索し、検索結果の前記献立情報を前記ユーザにレコメンドする、請求項1から請求項9のいずれか1項に記載の情報提供装置。
前記レコメンド部は、前記献立タグの重み付けを行い、検索結果の前記献立タグに係る前記献立情報を、前記献立タグの重み付けに基づく優先順位が高い順番に前記ユーザにレコメンドする、請求項1から請求項10のいずれか1項に記載の情報提供装置。
【発明を実施するための形態】
【0014】
以下、本開示の実施形態について図面を参照して説明する。なお、以下に説明する実施形態は、特許請求の範囲に記載された本開示の内容を不当に限定するものではない。また、実施形態に示される構成要素のすべてが、本開示の必須の構成要素であるとは限らない。
【0015】
<構成>
図1は、本開示の実施形態に係る情報提供システム1を示す機能ブロック構成図である。この情報提供システム1は、限定ではなく例として、ユーザの食事に関する制限事項や特定の背景に応じて、食事の献立をレコメンドするシステムである。このとき、情報提供システム1は、食事の献立だけではなく、献立を構成する料理のレシピ情報をレコメンドしてもよい。また、情報提供システム1のユーザは、情報提供システム1に個人情報や属性情報を登録することで会員登録した者でもよく、特に認証されていないユーザであってもよく、情報提供システム1を運営する者も含めてもよい。
【0016】
ここで、献立とは、1または複数の料理を組み合わせて構成する、1回の食事において実際に喫食される料理の組み合わせであり、「カレーライス」のように1の料理で構成されることもあり、「ごはん、味噌汁、生姜焼き、サラダ」のように複数の料理で構成されることもある概念である。一般に、食事において所定の栄養素を摂取するためには、単品の料理の栄養素も重要であるが、複数の料理、例えば主菜、主食、副菜等を組み合わせた献立全体で栄養バランスの良い食事をすることが重要であるといわれている。そのため、情報提供システム1は、ユーザの食事に関する制限事項や特定の背景に対応させつつ、複数の料理を組み合わせた献立をレコメンドすることを可能にしている。
【0017】
また、情報提供システム1がレコメンドする献立は、ユーザが情報提供システム1に記憶されている1または複数の料理情報を組み合わせて構成したものでもよく、情報提供システム1が自動的に生成したものでもよい。情報提供システム1に記憶されている料理情報には、この料理情報の特徴を示す料理タグが付与されており、情報提供システム1は、料理情報が組み合わされて献立が構成されると、この献立の特徴を示す献立タグを付与する。この献立タグは、ユーザの食事に関する制限事項や、アレルギー等の特定の背景に対応するようになっている。また、情報提供システム1は、ユーザの特徴を示すユーザ情報に基づき、この献立タグを検索することで、検索結果の献立タグに係る献立情報をユーザにレコメンドする。
【0018】
情報提供システム1は、情報提供装置100と、ユーザ端末200と、ネットワークNWとを有している。情報提供装置100と、ユーザ端末200とは、ネットワークNWを介して相互に接続される。ネットワークNWは、通信を行うための通信網であり、限定ではなく例として、インターネット、イントラネット、LAN(Local Area Network)、WAN(Wide Area Network)、ワイヤレスLAN(Wireless LAN:WLAN)、ワイヤレスWAN(Wireless WAN:WWAN)、仮想プライベートネットワーク(Virtual Private Network:VPN)等を含む通信網により構成されている。
【0019】
情報提供装置100は、料理情報を組み合わせて献立を構成し、料理情報に紐づけて付与されている料理タグを取得し、この料理タグに基づいて献立の特徴を示す献立タグを生成する装置である。また、情報提供装置100は、献立情報の提供を希望するユーザに対して、ユーザ情報に基づいて献立タグを検索して検索結果に係る献立情報をユーザにレコメンドする装置である。この情報提供装置100は、限定ではなく例として、各種Webサービスを提供するコンピュータ(デスクトップ、ラップトップ、タブレットなど)や、サーバ装置を含む装置等により構成されている。なお、サーバ装置は単体で動作するサーバ装置に限られず、ネットワークNWを介して通信を行うことで協調動作する分散型サーバシステムや、クラウドサーバでもよい。
【0020】
ユーザ端末200は、ユーザ情報の入力を受け付けて情報提供装置100を送信し、献立タグの検索結果に係る献立情報を表示することでユーザにレコメンドする装置であり、限定ではなく例として、スマートフォンや、携帯端末、コンピュータ(デスクトップ、ラップトップ、タブレットなど)等により構成されている。このユーザ端末200には、例えば、情報提供システム1のサービスの提供を受けるためのアプリがインストールされ、または情報提供装置100にアクセスするためのURL等が設定され、それらをタップまたはダブルクリック等して起動することにより、サービスが開始される。
【0021】
情報提供装置100は、その機能構成として、通信部110と、記憶部120と、制御部130とを備える。
【0022】
通信部110は、ネットワークNWを介してユーザ端末200と有線または無線で通信を行うための通信インタフェースであり、互いの通信が実行出来るのであればどのような通信プロトコルを用いてもよい。この通信部110は、限定ではなく例として、TCP/IP(Transmission Control Protocol/Internet Protocol)等の通信プロトコルにより通信が行われる。
【0023】
記憶部120は、各種制御処理や制御部130内の各機能を実行するためのプログラムや入力データ等を記憶するものであり、限定ではなく例として、RAM(Random Access Memory)、ROM(Read Only Memory)等を含むメモリや、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等を含むストレージから構成される。また、記憶部120は、料理レシピDB121と、ユーザDB122と、献立DB123とを記憶する。さらに、記憶部120は、ユーザ端末200との間で通信を行った際のデータや、後述する各処理にて生成されたデータを一時的に記憶する。
【0024】
料理レシピDB121には、献立を構成する際の基になる、個々の料理情報が格納されている。料理情報とは、具体的には例えば、料理の名称、料理に使用される食材や調味料及びその分量の情報、当該料理に含まれる栄養価(エネルギー(カロリー値)、たんぱく質、脂質、塩分等)の情報が含まれる。
【0025】
また、料理レシピDB121には、当該料理を調理するためのレシピ情報が含まれてもよい。レシピ情報とは、料理を調理するための工程を示す情報であり、食材の加工手段、加熱手段や加熱時間が調理手順の順番に記録された情報である。また、レシピ情報には、このような情報がテキスト情報として記録されたものや、音声情報として記録されたもの、動画情報として記録されたものも含まれる。
【0026】
さらに、料理レシピDB121には、料理情報の特徴を示す料理タグが、当該料理情報に紐づけされて格納されている。料理タグとして付与される料理情報の特徴は、例えば、当該料理情報に係る料理に含まれる栄養価や、当該料理を調理するための調理時間、当該料理の味付けの特徴(辛い、甘い、油っこい、さっぱり等)を定性的に表現したもの、当該料理の物性的な特徴(固い、やわらかい、温かい、冷たい等)を定性的に表現したものである。
【0027】
ユーザDB122には、ユーザを識別する情報に紐付いて、ユーザ自身の個人情報や属性情報(性別、年齢、職業等)が格納されている。また、ユーザDB122には、ユーザ情報として、ユーザの病態や症状のようなユーザの現在または過去の病気に関する情報、ユーザの要求を示す情報、具体的には、ユーザの食事に関する好みや制限事項(パクチーが苦手、嚥下障害により固いものは食べられない、等)、アレルギーや宗教的理由のようにユーザに関する特定の背景の情報が格納されている。
【0028】
献立DB123には、献立情報として、ユーザが構成した、または情報提供装置100が自動で構成した献立を構成する個々の料理情報が、献立ごとに格納されている。献立DB123に格納される料理情報は、料理レシピDB121に格納されている料理情報を識別するための情報である。なお、献立DB123に格納される料理情報は、料理レシピDB121に格納されている料理情報の分量が調整されたものであってもよく、例えば、「海藻サラダ1.5人分」のような情報でもよい。
【0029】
また、献立DB123には、献立情報の特徴を示す献立タグが、当該献立情報に紐づけされて格納されている。この献立タグは、料理レシピDB121に格納されている個々の料理の料理タグに基づいて付与されたものであり、個々の料理の料理タグの数値を所定の演算により算出したものや、個々の料理の料理タグの特徴を抽出したもの、個々の料理の料理タグの特徴から新たに生成したものが含まれる。献立情報の特徴は、具体的には、当該献立に含まれる栄養価や、調理時間、当該献立の味付けの特徴(辛い、甘い、油っこい、さっぱり等)を定性的に表現したもの、当該献立を食するのに適した時期の特徴(夏向け、冬向け等)を定性的に表現したものである。
【0030】
なお、料理レシピDB121、ユーザDB122、及び献立DB123にそれぞれ格納される各要素は、物理的に同一のデータベースに格納される必要はなく、料理情報、ユーザ情報、及び献立情報がそれぞれ識別情報によってされ、各要素がそれぞれ識別情報に紐づけて格納されていればよい。
【0031】
制御部130は、記憶部120に記憶されているプログラムを実行することにより、情報提供装置100の全体の動作を制御するものであり、限定ではなく例として、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、マイクロプロセッサ(Microprocessor)、プロセッサコア(Processor core)、マルチプロセッサ(Multiprocessor)、ASIC(Application-Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)を含む装置等から構成される。制御部130の機能として、献立情報生成部131と、料理タグ取得部132と、献立タグ生成部133と、ユーザ情報受付部134と、レコメンド部135とを備えている。この献立情報生成部131、料理タグ取得部132、献立タグ生成部133、ユーザ情報受付部134、及びレコメンド部135は、記憶部120に記憶されているプログラムにより起動されて情報提供装置100にて実行される。
【0032】
献立情報生成部131は、ユーザがユーザ端末200を操作することにより、または自動的に、料理レシピDB121に格納されている複数の料理情報を組み合わせて食事の献立を構成し、献立情報を生成する。例えば、料理レシピDB121に格納されている料理情報が主菜、主食、副菜、汁物等の料理の種類に分類され、献立情報生成部131では、料理の種類ごとに料理を選択することにより献立が構成されてもよい。また、料理情報が和食、中華といった料理のジャンルに分類され、献立情報生成部131では、料理のジャンルを統一して料理を選択することにより献立が構成してもよい。このとき、献立情報生成部131では、エネルギー、たんぱく質の質量、脂質の質量、塩分含有量が所定の範囲内になるように、または所定の値以上になるように、料理を選択することにより献立が構成してもよい。
【0033】
また、献立情報生成部131は、生成した献立情報の特徴を示す特徴ベクトルを定義してもよい。この特徴ベクトルは、献立の方向性の特徴を示す要素(熱い/冷たい、辛い/甘い、あっさり/こってり、等)を複数次元の空間で定義し、献立ごとにその複数次元の空間上のベクトルで表現したものである。この特徴ベクトルは、類似する献立を識別するために使用するもの(類似度)であり、ベクトルの始点を空間座標の原点とした際の終点の距離が近い献立が類似すると判定される。献立情報生成部131は、生成した献立情報を献立DB123に格納する。
【0034】
なお、献立情報生成部131による献立情報の生成を自動的に行う場合、共通する料理タグが付与されている料理情報を、料理レシピDB121から読み取って献立情報を構成してもよい。
【0035】
料理タグ取得部132は、献立情報生成部131で生成した献立情報を構成する、個々の料理情報に紐づけて付与されている料理タグを、料理レシピDB121から該当の料理情報を読み取って取得する。
【0036】
献立タグ生成部133は、献立情報を構成する個々の料理情報に紐づけられている、料理タグ取得部132で取得した料理タグに基づき、当該献立情報の特徴を示す献立タグを生成する。
【0037】
献立タグ生成部133による、料理タグに基づく献立タグの生成は、例えば、以下のように行われる。料理タグ取得部132で取得した料理タグが、料理情報に係る料理に含まれる栄養価である場合、献立タグ生成部133は、個々の料理の料理タグの数値に対して所定の演算、例えば各数値の加算を行い、算出した結果により当該献立の献立タグを生成する。具体的には、個々の料理の料理タグの栄養価を加算し、加算した値を当該献立の献立タグとする。また、加算結果に基づいて定性的な表現の献立タグを生成してもよい。
【0038】
料理タグ取得部132で取得した料理タグが、料理情報に係る料理を調理するための調理時間や、当該料理の味付けや物性の特徴を定性的に表現したものである場合、献立タグ生成部133は、個々の料理の料理タグの特徴を選択して抽出し、当該献立の献立タグとして生成する。具体的には、複数の料理の料理タグに示されている、同一の味付けや物性の特徴を、その献立の特徴として献立タグとして生成する。
【0039】
料理タグ取得部132で取得した料理タグが、料理情報に係る料理を調理するための調理時間や、当該料理の味付けや物性の特徴を定性的に表現したものである場合、献立タグ生成部133は、個々の料理の料理タグの特徴を選択して抽出し、その特徴から当該献立の新たな特徴を示す表現の献立タグを、新たな献立タグとして生成する。具体的には、複数の料理の料理タグに示されている味付けや物性の特徴から、献立全体の特徴を示す表現の文言を新たに生成し、その献立の特徴として献立タグとして生成する。
【0040】
また、献立タグ生成部133は、当該献立情報に類似する他の献立情報を献立DB123から読み取って抽出し、抽出した他の献立情報にタグ付けされている献立タグを選択して当該献立情報に係る献立の特徴とし、当該献立情報に紐づけされる献立タグとして生成する。類似する献立の特徴も類似すると考えられるからである。このとき、献立情報生成部131で定義した、献立情報の特徴を示す特徴ベクトルを使用し、特徴ベクトルの終点の距離(類似度)が近い献立を類似すると判定してもよい。
【0041】
さらに、献立タグ生成部133は、生成した献立タグを、当該献立情報に紐づけて献立DB123に格納する。
【0042】
ユーザ情報受付部134は、ユーザによるユーザ端末200の操作によりユーザの特徴を示すユーザ情報が入力され、情報提供装置100へ送信されるので、通信部110を介して受け付ける。ユーザ情報は、ユーザ自身の個人情報や属性情報、ユーザの病態や症状のようなユーザの現在または過去の病気に関する情報、ユーザの要求を示す情報、具体的には、ユーザの食事に関する好みや制限事項、アレルギーや宗教的理由のようにユーザに関する特定の背景の情報が含まれる。また、ユーザ情報受付部134は、受け付けたユーザ情報を、ユーザDB122に格納する。
【0043】
なお、ユーザ情報受付部134によるユーザ情報の受付は、ユーザが情報提供システム1に会員登録する際に行ってもよく、ユーザが献立情報のレコメンドを帰納するときに行ってもよい。また、ユーザがユーザ情報の登録を希望しない場合には、受け付けたユーザ情報をユーザDB122に格納しなくてもよい。
【0044】
レコメンド部135は、ユーザ情報受付部134で受け付けたユーザ情報に基づいて献立DB123に格納されている献立タグを検索する。このときのユーザ情報は、ユーザDB122に格納されている情報でもよく、格納されていないものでもよい。
【0045】
例えば、ユーザ情報のユーザ属性やユーザの病態等の情報が分析され、1回の食事について摂取するエネルギーを所定値以下にすべきと判定される場合、その所定のエネルギー以下の献立タグが検索結果として抽出される。また、1回の食事について所定の栄養価を所定値以上摂取すべきと判定される場合、その所定の栄養価を所定値以上含む献立タグが検索結果として抽出される。
【0046】
例えば、ユーザの病態の情報により、ユーザが高血圧であると判定される場合、献立の特徴が、塩分が少なめであることを示す献立タグが検索結果として抽出される。また、ユーザの症状やユーザの要求等の情報により、ユーザが嚥下障害を発症しているため固いものは食べられないと判定される場合、献立の特徴がやわらかいことを示す献立タグが検索結果として抽出される。
【0047】
また、レコメンド部135は、ユーザ情報に基づいて、献立情報のフィルタリングを行い、特定の献立タグが検索結果として抽出されないように検索してもよい。例えば、ユーザに禁忌情報がある場合、禁忌情報に該当する料理や献立が抽出されないようにするためである。
【0048】
さらに、レコメンド部135は、献立情報の提供を希望するユーザに対して、検索結果の献立タグに係る献立情報を、通信部110を介して当該ユーザのユーザ端末200へ送信することによりレコメンドする。このとき、検索結果の献立タグに対して所定の重み付けを行い、検索結果の献立情報を、献立タグの重み付けに基づく優先順位が高い順番にレコメンドしてもよい。献立タグの重要度はユーザの状況等によって異なるため、このような優先順位に基づいてレコメンドすることを可能にするためである。
【0049】
図2は、
図1のユーザ端末200を示す機能ブロック構成図である。ユーザ端末200は、その機能構成として、通信部210と、表示部220と、操作部230と、記憶部240と、制御部250とを備える。
【0050】
通信部210は、ネットワークNWを介して情報提供装置100と有線または無線で通信を行うための通信インタフェースであり、互いの通信が実行できるのであればどのような通信プロトコルを用いてもよい。この通信部210は、限定ではなく例として、TCP/IPやUSB規格等の通信プロトコルにより通信が行われる。
【0051】
表示部220は、ユーザから入力された操作内容や、情報提供装置100からの送信内容を表示するために用いられるユーザインタフェースであり、液晶ディスプレイ等から構成される。表示部220では、情報提供装置100のレコメンド部135から送信される献立情報を表示する。
【0052】
操作部230は、ユーザが操作指示を入力するために用いられるユーザインタフェースであり、キーボードやマウス、タッチパネル等から構成される。操作部230では、情報提供装置100のユーザ情報受付部134へ送信するユーザ情報や、その他ユーザ端末200の操作情報が入力される。
【0053】
記憶部240は、各種制御処理や制御部250内の各機能を実行するためのプログラム、入力データ等を記憶するものであり、限定ではなく例として、RAM、ROM等を含むメモリや、HDD、SSD、フラッシュメモリ等を含むストレージから構成される。また、記憶部240は、情報提供装置100と通信を行ったデータを一時的に記憶する。
【0054】
制御部250は、記憶部240に記憶されているプログラムを実行することにより、ユーザ端末200の全体の動作を制御するものであり、限定ではなく例として、CPU、MPU、GPU、マイクロプロセッサ、プロセッサコア、マルチプロセッサ、ASIC、FPGAを含む装置等から構成される。
【0055】
<処理の流れ>
図3を参照しながら、情報提供システム1が実行する、情報提供処理の流れの一例について説明する。
図3は、
図1の情報提供システム1の動作を示すフローチャートである。
【0056】
ステップS101の処理として、情報提供装置100の献立情報生成部131では、ユーザ端末200の操作により、または自動的に、料理レシピDB121に格納されている複数の料理情報が組み合わされて食事の献立が構成され、献立情報が生成される。
【0057】
図4は、
図2のユーザ端末200の操作により、
図1の献立情報生成部131が献立情報を生成する例を示す模式図である。ユーザ端末200の操作により、情報提供装置100が提供するサービスが起動し、献立情報生成部131に献立情報を生成させるためのサービスが起動すると、ユーザ端末200の表示部220には、
図4に示す献立情報生成画面が表示される。この献立情報生成画面は、レシピ表示欄P1と、栄養価表示欄P2と、選択済料理欄S1〜S4と、栄養価表示欄E1〜E4と、選択ボタンB1と、完成ボタンB2とが設けられている。
【0058】
レシピ表示欄P1は、料理レシピDB121に格納されている料理のレシピ情報が表示される欄であり、
図4に示す例では「ぶり大根」のレシピ情報が表示されている。栄養価表示欄P2は、料理レシピDB121に格納されている当該料理に含まれる栄養価が表示される欄であり、
図4に示す例では「ぶり大根」に含まれる栄養価の情報が表示されている。レシピ表示欄P1及び栄養価表示欄P2に表示される料理情報は、例えば、所定のキーワードにより料理レシピDB121が検索された結果の料理情報である。
【0059】
選択済料理欄S1〜S4は、既に選択されている、献立を構成する料理の画像がサムネイルとして表示される欄である。栄養価表示欄E1〜E4は、既に選択されている、献立を構成する料理の栄養価が、例えば横方向の棒グラフにて表示される欄である。
図4に示す例では、栄養価表示欄E1がエネルギー量を表示し、栄養価表示欄E2がたんぱく質の質量を表示し、栄養価表示欄E3が脂質の質量を表示し、栄養価表示欄E4が塩分の質量を表示する。選択ボタンB1は、レシピ表示欄P1及び栄養価表示欄P2に表示されている料理情報を献立として選択するためのボタンであり、完成ボタンB2は、献立が完成した場合に押下するボタンである。
【0060】
図4に示すように、所定のキーワードにより料理レシピDB121が検索され、レシピ表示欄P1及び栄養価表示欄P2に料理情報が表示される。この料理情報を献立として選択する場合、選択ボタンB1を押下すると選択され、その料理のサムネイル画像が選択済料理欄S1〜S4に表示される。選択した料理情報は、選択済料理欄S1〜S4に保持されるので、例えば、主菜、主食、副菜、汁物といった料理の種類ごとに料理が選択され、献立が構成される。献立が完成すると完成ボタンB2が押下され、これによりステップS101では、献立情報が生成される。
【0061】
ステップS102の処理として、料理タグ取得部132では、ステップS101で生成された献立情報を構成する、個々の料理情報に紐づけて付与されている料理タグが、料理レシピDB121から読み取られて取得される。
【0062】
図5は、
図1の料理レシピDB121の格納例を示す模式図である。この料理レシピDB121には、
図5に示す料理レシピDB121の列名に対応して、料理ID、料理名、料理レシピ、料理タグの情報が格納されている。
【0063】
料理IDは、料理情報を一意に特定するための識別情報である。料理名は、料理情報に係る料理の名称である。料理レシピは、料理情報に係る料理を調理するための工程を示す情報である。料理タグは、料理情報に係る料理の特徴を示す数値や文言が格納されているタグ情報である。
【0064】
図5に示すように、料理IDが「101」として特定される料理情報は、料理名が「ぶり大根」である。この料理情報に紐づく料理タグとして、エネルギーを示す「153kcal」の料理タグT11と、塩分を示す「2.8g」の料理タグT12と、料理の特徴を示す「やわらかい」の料理タグT13、及び「冷めてもおいしい」の料理タグT14とが格納されている。ステップS102では、ステップS101で生成された献立情報に、「ぶり大根」の料理情報が含まれる場合、料理レシピDB121から料理タグT11〜T14が取得される。
【0065】
ステップS103の処理として、献立タグ生成部133では、ステップS102で取得された料理タグに基づき、当該献立情報の特徴を示す献立タグが生成され、献立DB123に格納される。ステップS103で行われる、献立タグ生成部133による料理タグに基づく献立タグの生成の例について、以下に説明する。
【0066】
図6は、
図1の献立タグ生成部133による、料理タグから献立タグを生成する第1の例を示す模式図である。
図6(a)に示す料理タグT31〜T33のように、例えば献立を構成する複数の料理に含まれる栄養価(エネルギー)の値がタグ情報として格納されている場合、ステップS103では、「153kcal」の料理タグT31と、「326kcal」の料理タグT32と、「228kcal」の料理タグT33とが加算され、加算結果である「707kcal」の献立タグTA1が生成される。
【0067】
また、
図6(b)に示す料理タグT41〜T43のように、例えば献立を構成する複数の料理に含まれる栄養価(塩分)の値がタグ情報として格納されている場合、ステップS103では、「1.1g」の料理タグT41と、「0.2g」の料理タグT42と、「0.8g」の料理タグT43とから、それぞれの栄養価が加算され、その結果から献立全体として塩分が少なめであると判定され、定性的表現である「塩分少なめ」の献立タグTA2が生成される。
【0068】
図7は、
図1の献立タグ生成部133による、料理タグから献立タグを生成する第2の例を示す模式図である。
図7(a)に示す料理タグT51〜T54のように、例えば献立を構成する複数の料理に含まれるタグ情報として、当該料理の味付けや物性の特徴を定性的に表現したものである場合、例えば、「やわらかい」の料理タグT51がある料理と、「やわらかい」の料理タグT52がある料理と、「やわらかい」の料理タグT53がない料理と、「やわらかい」の料理タグT54がある料理とがある場合、ステップS103では、献立全体としてやわらかいものであると判定され、定性的表現である「やわらかい」の献立タグTA3が生成される。
【0069】
また、
図7(b)に示す料理タグT61〜T63のように、例えば献立を構成する複数の料理をそれぞれ調理するための調理時間の値がタグ情報として格納されている場合、ステップS103では、「40分」の料理タグT61と、「50分」の料理タグT62と、「60分」の料理タグT63とあるが、複数の料理は並行して調理可能である場合、献立全体としての調理時間は料理タグT63の「60分」であると判定され、「60分」の献立タグTA4が生成される。
【0070】
図8は、
図1の献立タグ生成部133による、料理タグから献立タグを生成する第3の例を示す模式図である。
図8(a)に示す料理タグT71〜T73のように、例えば献立を構成する複数の料理に含まれるタグ情報として、当該料理の味付けや物性の特徴を定性的に表現したものである場合、ステップS103では、「辛い」の料理タグT71と、「冷たい」の料理タグT72と、「薬味あり」の料理タグT73とから、献立全体として夏向けの献立であると判定され、定性的表現である「夏向け」の献立タグTA5が生成される。
【0071】
また、
図8(b)に示す料理タグT81〜T83のように、例えば献立を構成する複数の料理に含まれるタグ情報として、当該料理の味付けや物性の特徴を定性的に表現したものである場合、ステップS103では、「冷めてもおいしい」の料理タグT81と、「抗菌作用」の料理タグT82と、「手早く作れる」の料理タグT83とから、献立全体として弁当向けの献立であると判定され、定性的表現である「弁当向け」の献立タグTA6が生成される。
【0072】
以上のように、ステップS103では、多様な方法により献立を構成する料理情報の料理タグが統合され、献立タグが生成される。
【0073】
図9は、
図1の献立DB123の格納例を示す模式図である。この献立DB123には、
図9に示す献立DB123の列名に対応して、献立ID、料理ID、料理名、献立タグの情報が格納されている。
【0074】
献立IDは、献立情報を一意に特定するための識別情報である。料理IDは、当該献立を構成する料理情報を一意に特定するための識別情報であり、料理レシピDB121の同名項目に対応している。料理名は、当該献立を構成する料理情報に係る料理の名称であり、料理レシピDB121の同名項目に対応している。献立タグは、献立情報に係る献立の特徴を示す数値や文言が格納されているタグ情報である。
【0075】
図9に示すように、献立IDが「201」として特定される献立情報は、料理名が「ぶり大根」、「ごはん」、「ほうれん草おひたし」、「豆腐の味噌汁」の料理情報から構成されるものである。この献立情報に紐づく献立タグとして、ステップS103の処理の結果、エネルギーを示す「452kcal」の献立タグTA11と、塩分を示す「7.6g」の献立タグTA12と、料理の特徴を示す「やわらかい」の献立タグTA13、及び「塩分少なめ」の献立タグTA14とが格納される。
【0076】
ステップS104の処理として、ユーザ端末200の操作部230では、ユーザの操作によりユーザの特徴を示すユーザ情報が入力され、情報提供装置100へ送信される。情報提供装置100の情報受付部134では、送信されたユーザ情報が、通信部110を介して受け付けられる。受け付けられたユーザ情報は、ユーザDB122に格納される。
【0077】
図10は、
図1のユーザ情報受付部134によるユーザ情報の受付の例を示す模式図である。ユーザ端末200の操作により、ユーザ情報受付部134にユーザ情報を送信するためのサービスが起動すると、ユーザ端末200の表示部220には、
図10に示すユーザ情報受付画面が表示される。このユーザ情報受付画面は、ユーザID入力欄C1と、ユーザ情報入力欄C2と、検索ボタンB3とが設けられている。
【0078】
ユーザID入力欄C1は、ユーザ情報を受け付ける際にユーザを識別するためのユーザIDを入力する欄である。ユーザ情報入力欄C2は、ユーザ情報として、ユーザ自身の個人情報や属性情報、ユーザの病態や症状のようなユーザの現在または過去の病気に関する情報、またはユーザの要求を示す情報であるユーザの食事に関する好みや制限事項を入力する欄である。ユーザ情報入力欄C2には、
図4に示す例では「やわらかい」がユーザの食事に関する好みの情報として入力されている。検索ボタンB3は、ユーザ情報入力欄C2に入力したユーザ情報をキーワードとして、献立DB123の献立タグの検索が開始されるためのボタンである。これによりステップS104では、ユーザ情報が受け付けられる。
【0079】
ステップS105の処理として、レコメンド部135では、ステップS104で受け付けられたユーザ情報に基づいて献立DB123に格納されている献立タグが検索される。
【0080】
ステップS106の処理として、レコメンド部135では、献立タグの検索結果としてユーザにレコメンドする献立情報があるか否かを判定する。献立情報がある場合(「Y」の場合)、ステップS107へ進み、献立情報がない場合(「N」の場合)、処理を終了する。
【0081】
ステップS107の処理として、レコメンド部135では、ユーザに対して検索結果の献立タグに係る献立情報が、通信部110を介して当該ユーザのユーザ端末200へ送信される。送信された献立情報が、ユーザ端末200の表示部220に表示させることで献立情報がレコメンドされる。
【0082】
<効果>
以上のように、本実施形態に係る情報提供装置、情報提供システム及び情報提供方法では、複数の料理情報が組み合わされて献立情報が生成され、献立情報を構成する個々の料理情報の特徴を示す料理タグに基づき、献立情報の特徴を示す献立タグが生成される。この献立タグが検索され、検索結果の献立タグに係る献立情報がユーザにレコメンドされる。これにより、献立タグから、ユーザの食事に関する制限事項や特定の背景に応じた献立を検索することにより、そのような制限事項や特定の背景に適した献立をレコメンドすることが可能になる。
【0083】
また、献立情報を構成する料理情報の料理タグが統合され、献立情報の特徴を示す献立タグが生成される。これにより、多様な特徴を有する料理情報を含む献立情報について、ユーザに対して的確にレコメンドすることが可能になる。
【0084】
さらに、あるユーザが構成した献立情報について献立タグが付与され、他のユーザにより検索されてレコメンドされ、献立情報が参照される。これにより、共通する食事に関する制限事項や特定の背景を有するユーザの間で、献立情報を共有することが可能になる。
【0085】
(実施形態2)
図11は、本開示の実施形態2に係る情報提供システム1Aを示す機能ブロック構成図である。この情報提供システム1Aは、ユーザの食事に関する制限事項や特定の背景に応じて、食事の献立をレコメンドするシステムである点において、実施形態1に係る情報提供システム1と同様であるが、制御部130の機能としてレシピ情報受付部136と、料理タグ生成部137とを備えている点において、実施形態1に係る情報提供システム1と異なる。その他の構成及び処理の流れについては、実施形態1と同様である。
【0086】
レシピ情報受付部136は、ユーザによるユーザ端末200の操作により、料理情報として、料理のレシピ情報と、当該レシピ情報に係る料理の特徴を示す文言が入力され、情報提供装置100Aへ送信されるので、通信部110を介して受け付ける。実施形態2では、ユーザから、料理レシピDB121に格納されているレシピ情報の投稿を受け付け、料理タグを付与する機能を備えており、レシピ情報受付部136では、そのためのレシピ情報の入力を受け付ける。このとき、レシピ情報受付部136は、当該レシピ情報に係る料理の特徴を示す文言の入力も受け付ける。
【0087】
料理タグ生成部137は、レシピ情報受付部136で受け付けたレシピ情報について、料理情報の特徴を示す料理タグを生成し、料理情報に紐づけて付与する。このときの料理タグは、レシピ情報受付部136で受け付けた当該レシピ情報に係る料理の特徴を示す文言から生成してもよく、レシピ情報の文言を分析してキーワードを抽出し、料理タグとして生成してもよい。
【0088】
図12は、
図11のレシピ情報受付部136によるレシピ情報の受付の例を示す模式図である。ユーザ端末200の操作により、レシピ情報受付部136にレシピ情報を送信するためのサービスが起動すると、ユーザ端末200の表示部220には、
図12に示すレシピ情報受付画面が表示される。このレシピ情報受付画面は、ユーザID入力欄C3と、料理名入力欄C4と、料理レシピ入力欄C5と、料理特徴入力欄C6と、投稿ボタンB4とが設けられている。
【0089】
ユーザID入力欄C3は、レシピ情報を受け付ける際にユーザを識別するためのユーザIDを入力する欄である。料理名入力欄C4は、料理情報の料理名を入力する欄である。料理レシピ入力欄C5は、レシピ情報を入力する欄である。料理特徴入力欄C6は、当該料理情報の特徴を入力する欄である。
図4に示す例では、料理名が「ぶり大根」のレシピ情報が入力されている。投稿ボタンB4は、料理名入力欄C4、料理レシピ入力欄C5、及び料理特徴入力欄C6に入力された料理情報を投稿するためのボタンである。これにより、料理情報が受け付けられる。
【0090】
本実施形態によれば、上記実施形態1の効果に加え、ユーザから、料理情報としてレシピ情報の投稿を受け付け、受け付けた料理情報の特徴を示す料理タグを付与する。これにより、共通する食事に関する制限事項や特定の背景を有するユーザの間で、料理情報を共有することが可能になる。
【0091】
(実施形態3(プログラム))
図13は、コンピュータ(電子計算機)700の構成の例を示す機能ブロック構成図である。コンピュータ700は、CPU701、主記憶装置702、補助記憶装置703、インタフェース704を備える。
【0092】
ここで、実施形態1及び2に係る献立情報生成部131と、料理タグ取得部132と、献立タグ生成部133と、ユーザ情報受付部134と、レコメンド部135と、レシピ情報受付部136と、料理タグ生成部137とを構成する各機能を実現するための制御プログラム(情報提供プログラム)の詳細について説明する。これらの機能ブロックは、コンピュータ700に実装される。そして、これらの各構成要素の動作は、プログラムの形式で補助記憶装置703に記憶されている。CPU701は、プログラムを補助記憶装置703から読み出して主記憶装置702に展開し、当該プログラムに従って前述の処理を実行する。また、CPU701は、プログラムに従って、上述した記憶部に対応する記憶領域を主記憶装置702に確保する。
【0093】
当該プログラムは、具体的には、コンピュータ700において、記憶されている複数の料理情報を組み合わせて食事の献立を構成し、献立情報を生成する献立情報生成ステップと、料理情報の特徴を示し、料理情報に紐づけて付与されている料理タグを取得する料理タグ取得ステップと、献立情報を構成する料理情報の料理タグに基づき、献立情報の特徴を示す献立タグを生成し、献立情報に紐づけて付与する献立タグ生成ステップと、献立情報の提供を希望するユーザに対して、ユーザの特徴を示すユーザ情報に基づいて献立タグを検索し、検索結果の献立タグに係る献立情報をユーザにレコメンドするレコメンドステップと、をコンピュータによって実現する制御プログラムである。
【0094】
なお、補助記憶装置703は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、インタフェース704を介して接続される磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等が挙げられる。また、このプログラムがネットワークを介してコンピュータ700に配信される場合、配信を受けたコンピュータ700が当該プログラムを主記憶装置702に展開し、前述の処理を実行してもよい。
【0095】
また、当該プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、当該プログラムは、前述した機能を補助記憶装置703に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0096】
以上、開示に係る実施形態について説明したが、これらはその他の様々な形態で実施することが可能であり、種々の省略、置換および変更を行なって実施することが出来る。これらの実施形態および変形例ならびに省略、置換および変更を行なったものは、特許請求の範囲の技術的範囲とその均等の範囲に含まれる。
【0097】
<付記>
以上の各実施形態で説明した事項を、以下に付記する。
【0098】
(付記1)記憶されている複数の料理情報を組み合わせて食事の献立を構成し、献立情報を生成する献立情報生成部と、料理情報の特徴を示し、料理情報に紐づけて付与されている料理タグを取得する料理タグ取得部と、献立情報を構成する料理情報の料理タグに基づき、献立情報の特徴を示す献立タグを生成し、献立情報に紐づけて付与する献立タグ生成部と、献立情報の提供を希望するユーザに対して、ユーザの特徴を示すユーザ情報に基づいて献立タグを検索し、検索結果の献立タグに係る献立情報をユーザにレコメンドするレコメンド部と、を備える情報提供装置。
【0099】
(付記2)料理タグは、料理情報に係る料理に含まれる栄養価がタグ付けされた情報を含む、(付記1)に記載の情報提供装置。
【0100】
(付記3)献立タグ生成部は、献立情報を構成する料理情報の料理タグにタグ付けされた栄養価に対して所定の演算を行い、献立情報に紐づけされる献立タグを生成する、(付記2)に記載の情報提供装置。
【0101】
(付記4)献立タグ生成部は、献立情報を構成する1または複数の料理情報にタグ付けされた料理タグを選択し、献立情報に紐づけされる献立タグとする、(付記1)に記載の情報提供装置。
【0102】
(付記5)献立タグ生成部は、献立情報を構成する複数の料理情報にタグ付けされた料理タグを選択し、選択された料理タグに基づき、献立情報に紐づけされる新たな献立タグを生成する、(付記1)に記載の情報提供装置。
【0103】
(付記6)献立タグ生成部は、献立情報に類似する他の献立情報を抽出し、抽出した他の献立情報にタグ付けされている献立タグを選択し、献立情報に紐づけされる献立タグとする、(付記1)に記載の情報提供装置。
【0104】
(付記7)献立情報生成部は、生成した献立情報の特徴ベクトルを定義し、献立タグ生成部は、特徴ベクトルの類似度に基づいて類似する他の献立情報を抽出し、抽出した他の献立情報の献立タグを選択して献立情報に紐づけされる献立タグとする、(付記6)に記載の情報提供装置。
【0105】
(付記8)献立情報生成部は、ユーザが構成した料理情報の組み合わせを受け付けて献立情報を生成する、(付記1)から(付記7)のいずれかに記載の情報提供装置。
【0106】
(付記9)ユーザから、ユーザ情報を受け付けるユーザ情報受付部を備え、レコメンド部は、受け付けたユーザ情報に基づいて献立タグを検索し、検索結果の献立情報をユーザにレコメンドする、(付記1)から(付記8)のいずれかに記載の情報提供装置。
【0107】
(付記10)ユーザ情報受付部は、ユーザの病態、症状、要求を含む情報をユーザ情報として受け付け、レコメンド部は、受け付けたユーザ情報を分析し、ユーザ情報に適した献立タグを検索し、検索結果の献立情報をユーザにレコメンドする、(付記9)に記載の情報提供装置。
【0108】
(付記11)レコメンド部は、ユーザ情報に基づいて献立情報のフィルタリングを行い、フィルタリング後の献立情報に係る献立タグを検索し、検索結果の献立情報をユーザにレコメンドする、(付記1)から(付記10)のいずれかに記載の情報提供装置。
【0109】
(付記12)レコメンド部は、献立タグの重み付けを行い、検索結果の献立タグに係る献立情報を、献立タグの重み付けに基づく優先順位が高い順番にユーザにレコメンドする、(付記1)から(付記11)のいずれかに記載の情報提供装置。
【0110】
(付記13)記憶されている料理情報の特徴を示す料理タグを生成し、料理情報に紐づけて付与する料理タグ生成部を備える、(付記1)から(付記12)のいずれかに記載の情報提供装置。
【0111】
(付記14)料理情報は、料理を調理するためのレシピ情報を含み、料理タグ生成部は、レシピ情報に基づいて料理タグを生成する、(付記13)に記載の情報提供装置。
【0112】
(付記15)ユーザから、レシピ情報と、レシピ情報に係る料理の特徴を示す文言を受け付けるレシピ情報受付部を備え、料理タグ生成部は、受け付けた料理の特徴を示す文言に基づいて料理タグを生成する、(付記14)に記載の情報提供装置。
【0113】
(付記16)献立情報生成部が行う、記憶されている複数の料理情報を組み合わせて食事の献立を構成し、献立情報を生成する献立情報生成ステップと、料理タグ取得部が行う、料理情報の特徴を示し、料理情報に紐づけて付与されている料理タグを取得する料理タグ取得ステップと、献立タグ生成部が行う、献立情報を構成する料理情報の料理タグに基づき、献立情報の特徴を示す献立タグを生成し、献立情報に紐づけて付与する献立タグ生成ステップと、レコメンド部が行う、献立情報の提供を希望するユーザに対して、ユーザの特徴を示すユーザ情報に基づいて献立タグを検索し、検索結果の献立タグに係る献立情報をユーザにレコメンドするレコメンドステップと、を備える情報提供方法。
【0114】
(付記17)記憶されている複数の料理情報を組み合わせて食事の献立を構成し、献立情報を生成する献立情報生成ステップと、料理情報の特徴を示し、料理情報に紐づけて付与されている料理タグを取得する料理タグ取得ステップと、献立情報を構成する料理情報の料理タグに基づき、献立情報の特徴を示す献立タグを生成し、献立情報に紐づけて付与する献立タグ生成ステップと、献立情報の提供を希望するユーザに対して、ユーザの特徴を示すユーザ情報に基づいて献立タグを検索し、検索結果の献立タグに係る献立情報をユーザにレコメンドするレコメンドステップと、を電子計算機に実行させるための、情報提供プログラム。
【課題】複数の料理を組み合わせた献立の特徴から、ユーザの食事に関する制限事項や特定の背景に応じた献立をレコメンドする情報提供装置、方法及びプログラムを提供する。
【解決手段】情報提供システム1の情報提供装置100は、その機能として、複数の料理情報を組み合わせて食事の献立を構成し、献立情報を生成する献立情報生成部131と、生成した献立情報を構成する料理情報に紐づけて付与されている料理タグを取得する料理タグ取得部132と、献立情報を構成する料理情報に紐づけられている料理タグに基づき、当該献立情報の特徴を示す献立タグを生成する献立タグ生成部133と、ユーザの特徴を示すユーザ情報を受け付けるユーザ情報受付部134と、ユーザ情報に基づいて献立タグを検索し、ユーザに対して検索結果の献立タグに係る献立情報をレコメンドするレコメンド部135と、を備える。