(57)【特許請求の範囲】
【請求項１】
サービス情報をユーザーに入力させるための画面を表す入力画面情報を用いて前記サービス情報の入力を受け付ける複数の第１装置と、前記入力画面情報を提供する第２装置とを備え、
前記複数の第１装置の各々は、
前記入力画面情報に対する前記サービス情報の入力を受付ける受付手段と、
前記受付手段で受付けられた前記サービス情報を、当該サービス情報を入力したユーザーを識別する識別情報と共に前記第２装置に送信する第１送信手段と、
前記第１送信手段で送信した前記サービス情報に含まれる前記ユーザーが摂取した食事に関する摂取情報に対応する摂取エネルギー情報を前記第２装置から受信する第１受信手段と、
前記第１受信手段で受信された前記摂取エネルギー情報を用いて、前記ユーザーの血糖値の時系列変化を予測した予測血糖値曲線を算出する算出手段と、
前記算出手段で算出された前記予測血糖値曲線を出力する出力手段とを有し、
前記第２装置は、
前記サービス情報と前記識別情報を前記複数の第１装置のうちの一の第１装置から受信する第２受信手段と、
前記第２受信手段によって受信された前記サービス情報を前記識別情報と共に蓄積する蓄積手段と、
前記蓄積手段に蓄積されている前記サービス情報であって、前記第２受信手段により受信された前記識別情報とは異なる他の前記識別情報に対応する前記サービス情報に基づいて、前記摂取エネルギー情報を特定する特定手段と、
前記特定手段によって特定された前記摂取エネルギー情報を前記一の第１装置へ送信する第２送信手段とを有する
ことを特徴とする血糖値予測システム。
【請求項２】
前記摂取情報は、前記ユーザーが摂取した食事内容を含み、
前記蓄積手段は、前記ユーザー毎の属性を示す属性情報をさらに蓄積し、
前記特定手段は、前記蓄積手段に蓄積されたデータ群から前記摂取情報を送信したユーザーの属性情報と対応するデータ群を抽出し、抽出したデータ群に基づいて前記摂取情報の前記食事内容に対する摂取エネルギー情報を特定する
ことを特徴とする請求項１に記載の血糖値予測システム。
【請求項３】
前記摂取情報は、前記ユーザーが食事を摂取したときの環境を示す環境情報と食事内容とを含み、
前記特定手段は、前記蓄積手段に蓄積されたデータ群から前記摂取情報の前記環境情報と前記食事内容とに対応するデータ群を抽出し、抽出したデータ群に基づいて前記摂取情報の前記食事内容に対応する摂取エネルギー情報を特定する
ことを特徴とする請求項１又は２に記載の血糖値予測システム。
【請求項４】
ユーザーのサービス情報を受付ける受付手段と、
前記受付手段で受付けられた前記サービス情報を前記ユーザーを識別する識別情報と共に送信する送信手段と、
前記送信手段で送信した前記サービス情報に含まれる前記ユーザーが摂取した食事に関する摂取情報に対応する摂取エネルギー情報であって、前記送信手段により送信された前記識別情報とは異なる他の前記識別情報に対応する前記サービス情報に基づいて特定された摂取エネルギー情報を受信する受信手段と、
前記受信手段で受信された前記摂取エネルギー情報を用いて、前記ユーザーの血糖値の時系列変化を予測した予測血糖値曲線を算出する算出手段と、
前記算出手段で算出された前記予測血糖値曲線を出力する出力手段と
を有することを特徴とする血糖値予測装置。
【請求項５】
ユーザーが摂取した食事に対応する第１摂取エネルギー情報を受付手段から受付ける第１モードと、前記ユーザーが入力したサービス情報を前記ユーザーを識別する識別情報と共に送信手段が送信する第２モードと、のいずれかを選択する選択手段と、
前記ユーザーが前記第２モードを選択した場合に、前記送信手段で送信した前記サービス情報に対応する第２摂取エネルギー情報であって、前記送信手段により送信された前記識別情報とは異なる他の前記識別情報に対応する前記サービス情報に基づいて特定された第２摂取エネルギー情報を受信する受信手段と、
前記第１摂取エネルギー情報または前記第２摂取エネルギー情報を用いて、前記ユーザーの血糖値の時系列変化を予測した予測血糖値曲線を算出する算出手段と、
前記算出手段で算出された前記予測血糖値曲線を出力する出力手段と
を有することを特徴とする血糖値予測装置。
【請求項６】
前記第２摂取エネルギー情報を用いて前記ユーザーの血糖値の時系列変化を予測した予測血糖値曲線を算出したのちに、前記第１モードで前記第１摂取エネルギー情報を取得した場合には、前記第１摂取エネルギー情報を用いて前記予測血糖値曲線を算出する
ことを特徴とする請求項４または５に記載の血糖値予測装置。
【請求項７】
前記摂取エネルギー情報は、少なくとも食事タイミング情報と食事内容を表す情報とを含む
ことを特徴とする請求項４〜６のいずれか一項に記載の血糖値予測装置。
【請求項８】
ユーザーが入力したサービス情報を前記ユーザーを識別する識別情報と共に受信する受信手段と、
前記サービス情報を前記識別情報と共に蓄積する蓄積手段と、
前記サービス情報に含まれる前記ユーザーが摂取した食事に関する摂取情報に対応する摂取エネルギー情報を、前記蓄積手段に蓄積されている前記サービス情報であって、前記受信手段により受信された前記識別情報とは異なる他の前記識別情報に対応する前記サービス情報に基づいて特定する特定手段と、
前記特定手段によって特定された前記摂取エネルギー情報を送信する送信手段と
を有することを特徴とするサービス情報処理装置。
【請求項９】
前記摂取情報は、前記ユーザーが摂取した食事内容を含み、
前記蓄積手段は、前記ユーザー毎の属性を示す属性情報をさらに蓄積する
ことを特徴とする請求項８に記載のサービス情報処理装置。
【請求項１０】
前記特定手段は、前記蓄積手段に蓄積されたデータ群から前記摂取情報を送信したユーザーの属性情報と対応するデータ群を抽出し、抽出したデータ群に基づいて前記摂取情報の前記食事内容に対する摂取エネルギー情報を特定する
ことを特徴とする請求項８または９に記載のサービス情報処理装置。
【請求項１１】
前記摂取情報は、前記ユーザーが食事を摂取したときの環境を示す環境情報と食事内容とを含み、
前記特定手段は、前記蓄積手段に蓄積されたデータ群から前記摂取情報の前記環境情報と前記食事内容とに対応するデータ群を抽出し、抽出したデータ群に基づいて前記摂取情報の前記食事内容に対応する摂取エネルギー情報を特定する
ことを特徴とする請求項８〜１０のいずれか一項に記載のサービス情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、血糖値予測装置に関する。
【背景技術】
【０００２】
特許文献１には、ユーザーの摂取カロリーの履歴データおよびユーザーの消費カロリーの履歴データに基づいて、ユーザーの血糖値を予測する予測モデルを予め作成しておき、当該予測モデルを用いて、ユーザーの摂取カロリーおよびユーザーの消費カロリーから、ユーザーの血糖値を予測する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−３２８９２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、最近ではＳＮＳ（Social Networking Service）等のサービスを利用して、自分が食べた料理等を日記にして同じサービスを利用する他の利用者に対して公開し、他の利用者とコミュニケーションを図る人が増えており、自分が食べた料理や食品のカロリー値などを詳細に入力している利用者も多い。このようなＳＮＳ等のサービスを利用する人の中には血糖値の変動に注意が必要な人もいる。血糖値の変化は、摂取した食事等によって変動するため、上記した従来技術を用いて血糖値を予測する場合、ユーザー自身が摂取した食事内容を入力するなどして摂取カロリーを取得しなければならない。
本発明は、ＳＮＳ等のサービスを利用するユーザーが摂取したカロリーに関する情報を簡便に取得して血糖値の予測を行う技術を提供する。
【課題を解決するための手段】
【０００５】
上記課題を解決するため、本発明の請求項１に係る血糖値予測システムは、予め定められたサービス情報をユーザーに入力させるための画面を表す入力画面情報を提供する第１装置と、前記入力画面情報を用いて前記サービス情報を入力する前記ユーザー毎の第２装置とを備え、前記第１装置は、前記サービス情報を前記第２装置から受信する第１受信手段と、前記第１受信手段によって受信された前記サービス情報を前記ユーザー毎に当該ユーザーを識別する識別情報と共に蓄積する蓄積手段と、前記第１受信手段で受信された前記サービス情報に含まれる前記ユーザーが摂取した食事に関する摂取情報と対応する摂取エネルギーを前記蓄積手段に蓄積されている前記サービス情報に基づいて特定する特定手段と、
前記特定手段によって特定された前記摂取エネルギーを示す情報を前記第２装置へ送信する第１送信手段とを有し、前記第２装置は、前記入力画面情報に対する前記サービス情報の入力を受付ける受付手段と、前記受付手段で受付けられた前記サービス情報を前記識別情報と共に前記第１装置に送信する第２送信手段と、前記第２送信手段で送信した前記サービス情報に対応する前記摂取エネルギーの情報を前記第１装置から受信する第２受信手段と、前記第２受信手段で受信された前記摂取エネルギーを用いて、前記ユーザーの血糖値の時系列変化を予測した予測血糖値曲線を算出する算出手段と、前記算出手段で算出された前記予測血糖値曲線を出力する出力手段とを有することを特徴とする。この構成によれば、ユーザーがサービスを利用した際に入力画面に入力したデータから簡単に摂取エネルギーを取得して血糖値の予測を行うことができる。
【０００６】
請求項２に係る血糖値予測システムは、上記血糖値予測システムにおいて、前記摂取情報は、前記ユーザーが摂取した食事内容を含み、前記蓄積手段は、前記ユーザー毎の属性を示す属性情報をさらに蓄積し、前記特定手段は、前記蓄積手段に蓄積されたデータ群から前記摂取情報を送信したユーザーの属性情報と対応するデータ群を抽出し、抽出したデータ群に基づいて前記摂取情報の前記食事内容に対する摂取エネルギーを特定することを特徴とする。この構成によれば、ユーザーの属性に対応する他のユーザーのデータを用いて得られた摂取エネルギーを用いて血糖値を予測することができるので、血糖値の予測精度を向上させることができる。
【０００７】
請求項３に係る血糖値予測システムは、上記血糖値予測システムにおいて、前記摂取情報は、前記ユーザーが食事を摂取したときの環境を示す環境情報と食事内容とを含み、前記特定手段は、前記蓄積手段に蓄積されたデータ群から前記摂取情報の前記環境情報と前記食事内容とに対応するデータ群を抽出し、抽出したデータ群に基づいて前記摂取情報の前記食事内容に対する摂取エネルギーを特定することを特徴とする。この構成によれば、ユーザーが食事を摂取したときの環境と食事内容とに対応する他のユーザーのデータを用いて得られた摂取エネルギーを用いて血糖値を予測することができるので、血糖値の予測精度をより向上させることができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態に係る血糖値予測システムの全体構成を示す図である。
【図２】実施形態に係る血糖値予測装置とサーバーの構成を示す図である。
【図３】（ａ）及び（ｂ）は、実施形態に係るユーザー情報の例を示す図である。
【図４】（ａ）〜（ｃ）は、実施形態に係る入力マスタ情報の例を示す図である。
【図５】実施形態に係る血糖値予測装置の機能構成例を示す図である。
【図６】（ａ）は、実施形態に係る第１予測曲線を説明する図である。（ｂ）は、実施形態に係る第２予測曲線を説明する図である。
【図７】実施形態に係るサーバーの機能構成を示す図である。
【図８】（ａ）及び（ｂ）は、実施形態に係る蓄積情報の例を示す図である。
【図９】実施形態に係る血糖値予測装置の全体動作を示す動作フロー図である。
【図１０】実施形態におけるサーバーモードの場合の第１予測曲線算出処理を示す動作フローである。
【図１１】（ａ）及び（ｂ）は、実施形態におけるＳＮＳサービスの画面例である。
【図１２】実施形態における解析サービスの処理の動作フローである。
【図１３】実施形態における利用者入力情報の例を示す図である。実施形態に係る第１予測曲線算出処理の動作フロー図である。
【図１４】（ａ）〜（ｃ）は、実施形態に係る第１予測曲線の変形処理を説明する図である。
【図１５】実施形態に係る第２予測曲線算出処理の動作フロー図である。
【図１６】（ａ）〜（ｃ）は、実施形態に係る第２予測曲線の変形処理を説明する図である。
【発明を実施するための形態】
【０００９】
（概要）
本実施形態に係る血糖値予測システム１は、図１に示すように、各ユーザーによって使用される血糖値予測装置１０（１０ａ，１０ｂ…１０ｎ）（第１装置）と、インターネット等の通信回線２０を介して各血糖値予測装置１０と接続された、ＳＮＳ等のサービスを提供するサーバー３０（第２装置）とで構成されている。
血糖値予測システム１の血糖値予測装置１０は、ユーザーが１日１回実測する血糖値と、ユーザーが摂取した食事に応じた摂取エネルギーとユーザーが運動を行った際の消費エネルギーとに基づいてユーザーの血糖値を予測し、予測した血糖値（以下、予測血糖値と言う）の変化を時系列に表した血糖値曲線を出力するものである。
本実施形態では、血糖値予測装置１０において、ユーザーが摂取した食事に関する摂取エネルギーを取得するモードとして入力モードとサーバーモードとが用意されている。
入力モードは、ユーザーが血糖値予測装置１０に入力した食事内容に応じた摂取カロリーが血糖値予測装置１０において算出されるモードである。また、サーバーモードは、サーバー３０が提供するＳＮＳのサービス（以下、ＳＮＳサービスと称する）をユーザーが血糖値予測装置１０を用いて利用した際、ユーザーが入力したデータをサーバー３０に送信し、サーバー３０が送信データに基づいて摂取エネルギー（摂取カロリー）を解析した結果が血糖値予測装置１０に送信されるモードである。つまり、サーバーモードの場合には、血糖値予測装置１０は、サーバー３０から摂取カロリーを取得する。
血糖値予測装置１０は、入力モードの場合には、ユーザーによって食事内容が入力される毎に当該食事内容に応じた摂取カロリーを用いて血糖値の予測を行い、サーバーモードの場合には、サーバー３０から取得した摂取カロリーを用いて血糖値の予測を行う。
サーバー３０は、予め登録されているユーザーに対し、ＳＮＳサービスを提供すると共に、血糖値予測装置１０からの送信データを解析して摂取カロリーを送信するサービス（以下、解析サービスと称する）を提供する。なお、本実施形態におけるＳＮＳサービスの一例としては、ユーザー毎に、日記（サービス情報）を入力するための入力画面を提供し、入力画面を用いてユーザーが入力した日記の情報を蓄積し、他のユーザーに対して日記の情報を公開したり、他のユーザーの日記の情報に対するコメントの入力を受付けて公開する等である。
【００１０】
（全体構成）
図２は、実施形態に係る血糖値予測装置において血糖値の予測を行うための構成を示す図である。血糖値予測装置１０は、制御部１１０、活動量測定部１２０、操作部１３０、記憶部１４０、表示部１５０、計時部１６０、及び通信部１７０を備える。
【００１１】
制御部１１０は、ＣＰＵ（Central Processing Unit）とＲＯＭ（Read Only Memory）及びＲＡＭ（Random Access Memory）のメモリーを含み、ＲＡＭをワーキングエリアとしてＲＯＭに予め記憶されている制御プログラムを実行することにより、摂取エネルギーの取得モードに応じた摂取カロリーを用いて血糖値の予測を行う血糖値予測処理機能を実行し、制御部１１０と接続されている各部を制御する。血糖値予測処理機能は、ユーザーが実測した血糖値、取得モードに応じて取得された摂取カロリー（摂取エネルギー）及びユーザーが行った運動に対する消費カロリー（消費エネルギー）を用いて血糖値を予測する処理である。
【００１２】
活動量測定部１２０は、ユーザーが消費した消費カロリーを求め、求めた消費カロリーを消費エネルギー情報として制御部１１０へ送出する。活動量測定部１２０は、例えば、ユーザーの運動状態を検出するための加速度センサーや速度センサー等のセンサーを有し、ユーザーの運動などの動作によって検出されたセンサーからの出力信号を予め定義された演算式を用いて消費カロリーに変換する。
また、消費カロリーを精度よく求めるため、脈波ＲＲ間隔・体温・血圧・睡眠などの生体データを、光学検出、電気信号検出、圧力検出などを用いて検出してもよい
【００１３】
操作部１３０は、例えば、数字や文字等の入力キーを有する操作ボタン群を有し、ユーザーによって操作された入力キーに対応する操作信号を制御部１１０へ送出する。本実施形態では、特に、操作部１３０は、測定されたユーザーの血糖値データを入力する操作、取得モードを選択する操作、入力モードにおける食事内容の入力操作やユーザーが行った運動内容を示す運動情報の入力操作、ＳＮＳサービスを利用するための操作等の各種操作を受付ける。
【００１４】
記憶部１４０は、不揮発性の記憶媒体で構成され、ユーザーの過去の血糖値に関する情報を含むユーザー情報２００や入力マスタ情報３００等のデータを記憶する。
ここで、ユーザー情報２００及び入力マスタ情報３００について説明する。ユーザー情報２００には、図３（ａ）に示す血糖値情報２００ａと、図３（ｂ）に示す行動情報２００ｂとが含まれている。
【００１５】
血糖値情報２００ａには、例えば、ユーザーが過去に糖尿病に関する教育入院を行ったとき等の、教育入院期間において測定された毎日の血糖値と行動履歴（食事と運動）とが記憶されている。図３（ａ）には、その一例として、２０１０年２月１日と２月２日のユーザーの血糖値情報２００ａを示している。この図の波形４１は、ユーザーの血糖値の時系列変化を表している。また、時間軸における「朝食」、「散歩」「昼食」・・・等は、ユーザーが摂った食事や運動のタイミング等の行動履歴を示している。
【００１６】
図３（ｂ）は、図３（ａ）の各行動履歴に対応する行動情報２００ｂを示しており、各行動履歴に対応する行動（食事情報、運動情報）に関する情報が記憶されている。例えば、図３（ａ）の２０１０年２月１日の朝食に対応する食事情報には、食事内容として「和食Ａ」が記憶され、摂取カロリーとして「５００ｋｃａｌ」が記憶されている。また、図３（ａ）の２０１０年２月１日の午前に行った「散歩」に対応する運動情報には、当該散歩に対する消費カロリーとして「５０ｋｃａｌ」が記憶されている。
【００１７】
次に、入力マスタ情報３００について説明する。入力マスタ情報３００には、図４（ａ）に示すカロリー情報３１００、図４（ｂ）に示す運動種別情報３２００、図４（ｃ）に示す食事タイミング情報３３００が含まれている。
【００１８】
図４（ａ）に例示するカロリー情報３１００には、予め設定された食事メニューに対する摂取カロリーが記憶されており、図４（ｂ）に例示する運動種別情報３２００には、運動種別と運動内容とが記憶されている。また、図４（ｃ）に例示する食事タイミング情報３３００には、各コードに対応する食事タイミングが記憶されている。カロリー情報３１００、食事タイミング情報３３００は、入力モードにおいてユーザーが食事情報を入力する際に参照される。また、運動種別情報３２００は、ユーザーが運動情報を入力する際に参照される。
【００１９】
図２に戻り、構成の説明を続ける。表示部１５０は、液晶ディスプレイ等の表示装置で構成され、制御部１１０の制御の下、ＳＮＳサービスのＷＥＢページ画面、食事情報や運動情報の入力画面、血糖値の予測曲線等の各種画像を表示する。計時部１６０は、所定のクロックをカウントして時刻を計時する。通信部１７０は、インターネット等の通信回線２０と接続され、制御部１１０の制御の下、サーバー３０が提供するＳＮＳサービスのＷＥＢサイトに接続し、サーバー３０との間でデータを送受信する。
【００２０】
（制御部１１０の機能構成）
図５は、上述した制御部１１０の機能を中心とする機能構成図である。制御部１１０は、摂取エネルギー取得部１１１、消費エネルギー取得部１１２、算出部１１３、解析部１１４、及び生成部１１５を含む。
摂取エネルギー取得部１１１は、ユーザーが摂取した食事に対する摂取カロリーを取得する。即ち、摂取エネルギー取得部１１１は、入力モードの場合には、ユーザーが操作部１３０から入力した食事情報に対する摂取カロリーをカロリー情報３１００から取得し、サーバーモードの場合には、サーバー３０で解析された摂取カロリーを通信部１７０を介して取得する。消費エネルギー取得部１１２は、ユーザーの消費エネルギー情報として消費カロリーを活動量測定部１２０から一定時間毎に取得する。
【００２１】
算出部１１３は、ユーザーが入力した血糖値データを操作部１３０から取得し、摂取エネルギー取得部１１１で取得された摂取カロリーと予め定められた第１の予測アルゴリズムに基づいて、摂取カロリーに対する血糖値の変化を予測した予測曲線（以下、第１予測曲線と称する）を求める。また、算出部１１３は、消費エネルギー取得部１１２で取得された消費カロリーと予め定められた第２の予測アルゴリズムに基づいて、消費カロリーに対する血糖値の変化を予測した予測曲線（以下、第２予測曲線と称する）を求める。
【００２２】
ここで、第１予測曲線と第２予測曲線の算出について説明する。図６（ａ）は、本実施形態における第１予測曲線の一例を示す図である。第１予測曲線は、摂取カロリーと第１の予測アルゴリズムとに基づいて求められる。第１予測曲線は、遅延期間ｄ１、上昇期間ｄ２、平衡期間ｄ３、および下降期間ｄ４を有する。以下、各期間における血糖値曲線を求める第１の予測アルゴリズムの一例を説明する。
【００２３】
遅延期間ｄ１は、食事を開始してから、食事開始時における血糖値（基準値）Ｃ０を超えるまでの期間を示している。遅延期間ｄ１には、食事の開始時点から予め定められた時間（例えば、１５分）が設定されおり、食事開始時の血糖値Ｃ０を維持する。なお、食事開始時の血糖値Ｃ０は、当該時刻においてユーザーが測定した血糖値を用いるが、測定できなかった場合には、例えば、予め設定されたユーザーの血糖値の標準値等を用いるようにしてもよい。
【００２４】
上昇期間ｄ２は、遅延期間ｄ１の終期から始まり、血糖値が上昇を開始して血糖値がピークとなる値（ピーク値）に到達するまでの期間を示している。ピーク値は、傾きｓ１で血糖値が上昇し、食事開始時の血糖値Ｃ０に血糖値の上昇量ｈ１１を合算した値である。
血糖値の上昇量ｈ１１は、例えば、ｈ１１＝（摂取カロリー）×（インスリン分泌量）×（係数α）で求められる。本実施形態では、インスリン分泌量と係数α（＞０）は、ユーザーに応じて予め設定された固定値である。なお、インスリン分泌量及び係数は、予め設定された固定値だけなく、ユーザーの属性（年齢、性別、身長、体重）に応じて定められた値や可変値であってもよい。
【００２５】
平衡期間ｄ３は、上昇期間ｄ２の終期から血糖値のピーク値を維持する期間であり、本実施形態では、予め定義された固定値が設定されている。なお、例えば、摂取カロリーとユーザーに固有の係数とを乗算した値を、前回の摂取カロリーとの差に応じた係数で除算する等、摂取カロリーと予め定められた演算式とを用いて平衡期間ｄ３を求めるようにしてもよい。
【００２６】
下降期間ｄ４は、平衡期間ｄ３の終期から血糖値が傾きｓ２で下降を開始して基準値に到達するまでの期間を示している。つまり、下降期間ｄ４は、血糖値がピーク値から基準値（食事開始時の血糖値Ｃ０）に戻るまでの期間である。傾きｓ２は、例えば、ｓ２＝（摂取カロリー）×（係数β）で求められる。本実施形態では、係数βは、ユーザーに応じて予め定められた固定値（＜０）であるが、ユーザーの属性（年齢、性別、身長、体重）に応じて予め定められた値や可変値であってもよい。
【００２７】
次に、第２予測曲線について説明する。図６（ｂ）は、本実施形態における第２予測曲線の一例を示す図である。第２予測曲線は、消費カロリーと第２の予測アルゴリズムとに基づいて求められる。第２予測曲線は、遅延期間ｅ１と下降期間ｅ２を含んで構成されている。以下、各期間における血糖値曲線を求める第２の予測アルゴリズムの一例を説明する。
【００２８】
遅延期間ｅ１は、運動を開始してから血糖値が下降し始めるまでの期間を示し、運動開始時の血糖値が維持される期間である。本実施形態では、遅延期間ｅ１には、予め定められた期間（例えば、２分）が設定されている。下降期間ｅ２は、遅延期間ｅ１の終期から傾きｓ３（単位時間当たりの血糖値の低下量Δｃ）で血糖値が下降する期間である。
【００２９】
低下量Δｃは、例えば、Δｃ＝（消費カロリー）×（インスリン分泌量）×（係数γ）で求められる。消費カロリーは、活動量測定部１２０において計測されたユーザーの消費カロリーであり、本実施形態では、ユーザーが運動を意識していない通常の動作時においても活動量測定部１２０によりユーザーの消費カロリーが算出されて逐次入力される。インスリン分泌量はユーザーに応じて予め設定された固定値であり、係数γ（＜０）は、血糖値に応じた可変値であってもよいし、ユーザーの属性に応じて定められた固定値であってもよい。
【００３０】
図５に戻り、説明を続ける。解析部１１４は、操作部１３０から入力された食事情報と対応するユーザー情報２００を抽出する抽出条件を用いてユーザー情報２００を抽出し、抽出したユーザー情報２００を用いて当該食事情報に対するユーザーの血糖値変化を解析する。具体的には、例えば、入力された食事情報が和食Ａの場合、和食Ａを摂取したときの血糖値の変化を表す波形として、和食Ａを摂取した時点から次の行動（食事又は運動）が行われるまでの期間の波形データが抽出される。図３（ａ）に示す血糖値情報２００ａの例では、２０１０年２月１日の朝食を摂取した時点から次の行動、つまりウォーキングが行われるまでの期間の波形データが抽出される。なお、ウォーキングが行われなければ、朝食を摂取した時点から昼食を摂取するまでの期間の波形データが抽出される。このようにして、同じ食事内容を摂取したときの血糖値の変化を表す波形を第１モデル波形として抽出する。なお、複数の波形が抽出された場合には、解析部１１４は、抽出した複数の波形を平均化する等の処理を行い、当該食事情報に対する血糖値の変化傾向を示す第１モデル波形を生成する。
【００３１】
また、解析部１１４は、操作部１３０から入力された運動情報と対応するユーザー情報２００を抽出する抽出条件を用いてユーザー情報２００を抽出し、抽出したユーザー情報２００を用いて当該運動情報に対するユーザーの血糖値の変化傾向を解析する。本実施形態では、活動量測定部１２０によりユーザーの消費カロリーが逐次算出されるように構成されているが、算出された消費カロリーがどのような動作を行ったときのものであるかを区別するために、通常の動作以外の運動については、ユーザーが運動を行う前に運動種別を入力する。
【００３２】
具体的には、例えば、入力された運動情報がウォーキングである場合には、ウォーキングを行ったときの血糖値の変化を表す波形として、図３（ａ）に示す血糖値情報２００ａにおける２０１０年２月１日のウォーキング開始時から次の行動、つまり軽食を摂取するまでの波形データが抽出される。このようにして、同じ運動を行ったときの血糖値の変化を表す波形を第２モデル波形として抽出する。なお、複数の波形が抽出された場合には、解析部１１４は、抽出された複数の波形を平均化する等の処理を行い、当該運動情報に対する血糖値の変化傾向を示す第２モデル波形を生成する。
【００３３】
生成部１１５は、算出部１１３において算出された第１予測曲線及び第２予測曲線を、解析部１１４の解析結果に基づいて変形し、変形した第１予測曲線と第２予測曲線を統合して予測血糖値曲線を生成する。具体的には、生成部１１５は、第１予測曲線の上昇期間ｄ２における血糖値のピーク値までの上昇量ｈ１１と、第１モデル波形のピーク値までの上昇量とを比較し、上昇量の差分が予め定めた閾値以上である場合には、第１予測曲線の上昇量ｈ１１が第１モデル波形の上昇量となるように係数αを調整する。また、生成部１１５は、第１予測曲線の平衡期間ｄ３と、第１モデル波形において血糖値のピーク値が継続する継続期間とを比較し、平衡期間ｄ３と継続期間との差分が予め定めた閾値以上である場合には、第１予測曲線の平衡期間ｄ３を継続期間と一致させるように平衡期間ｄ３を設定する。なお、第１モデル波形において、血糖値のピーク値が予め定められた閾値Δｃｔｈの範囲内で下降している期間はピーク値が継続しているものとし、閾値Δｃｔｈの範囲を下回った時点を継続期間の終期と判断する。
【００３４】
また、生成部１１５は、第１予測曲線の下降期間ｄ４においてピーク値から血糖値が低下した低下量（ｈ１１）と、第１モデル波形のピーク値から血糖値が低下した低下量とを比較し、低下量の差分が予め定めた閾値以上である場合には、第１予測曲線の下降期間ｄ４における低下量（ｈ１１）が第１モデル波形における低下量となるように、傾きｓ２の係数βを調整する。
【００３５】
生成部１１５は、第２予測曲線についても第１予測曲線と同様に変形する。具体的には、生成部１１５は、第２予測曲線の下降期間ｅ２における血糖値の単位時間当たりの低下量Δｃと、第２モデル波形における血糖値の単位時間当たりの低下量とを比較し、低下量の差分が予め定めた閾値以上である場合には、第２予測曲線の低下量Δｃを第２モデル波形における低下量となるように係数γを調整する。生成部１１５は、上記のようにして第１予測曲線と第２予測曲線を各々変形し、変形した第１予測曲線と第２予測曲線とを統合した予測血糖値曲線を生成し、生成した予測血糖値曲線を表示部１５０へ出力する。
【００３６】
なお、本実施形態において、解析結果に基づいて予測曲線を変形する処理とは、解析結果に基づく波形（モデル波形）からユーザーの血糖値変化の特徴量を示すパラメータを抽出し、予測曲線（第１予測曲線、第２予測曲線）においてこの特徴量に対応するパラメータを抽出し、予測曲線のパラメータを解析結果のパラメータとなるように近づける処理である。
【００３７】
本実施形態における制御部１１０の機能構成は以上の通りである。図２に戻り、本実施形態に係るサーバー３０について説明する。
（サーバー３０）
図２に示すように、サーバー３０は、制御部３１０、通信部３２０、及び記憶部３３０を備える。制御部３１０は、ＣＰＵとＲＯＭ及びＲＡＭのメモリーを含み、ＲＡＭをワーキングエリアとしてＲＯＭに予め記憶されている制御プログラムを実行することにより、ＳＮＳサービスに関する処理を行う機能と解析サービスに関する処理を行う機能を実行し、制御部３１０と接続されている各部を制御する。ＳＮＳサービスに関する処理は、予め登録されているユーザーからの要求に応じて、ＳＮＳサービスに関わるＷＥＢページ、つまり、日記を入力する入力画面を構成するＷＥＢページ（入力画面情報）等を送信する処理や、日記の入力画面等に入力されたデータを受付けてサーバー３０内に蓄積する処理等が含まれている。また、解析サービスに関する処理は、ＳＮＳサービスを利用するユーザーの血糖値予測装置１０から送信されたデータに基づいて、当該ユーザーが摂取したと推定される食事に対する摂取カロリーを特定し、特定した摂取カロリーの情報を当該ユーザーの血糖値予測装置１０に対して送信する処理である。なお、解析サービスに関する処理の詳細は後述する。
【００３８】
通信部３２０は、通信回線２０と接続されており、制御部３１０の制御の下、ＳＮＳサービスを利用するユーザーの血糖値予測装置１０と通信してデータの送受信を行う。記憶部３３０は、ハードディスク等の記憶媒体で構成され、蓄積情報３３１等のデータベースを記憶する。なお、蓄積情報３３１の詳細は後述する。
【００３９】
次に、サーバー３０の制御部３１０の機能構成について説明する。図７は、制御部３１０を中心とする機能構成図を示している。制御部３１０は、受信データ解析部３１１、データ抽出部３１２、及びカロリー特定部３１３を含む。
【００４０】
受信データ解析部３１１は、通信部３２０が受信した、解析サービスを利用するユーザ
ーの日記の入力画面（以下、日記入力画面と称する）に対するデータ（以下、日記データと称する）について形態素解析、構造解析や意味解析等の解析処理を行い、予め抽出対象となる文字列として定義された食品名、料理名、献立等の文字列（以下、抽出対象文字列と称する）と一致する文字列が含まれている場合に、その文字列をユーザーが摂取した食事に関する情報（以下、摂取情報と称する）として抽出する。
【００４１】
なお、抽出対象文字列は、食品の分類を示すグループ単位に記憶部３３０内の食品データベース（図示略）に予め記憶されている。例えば、「カレーライス」のグループとしては、「ビーフカレー」、「チキンカレー」、「野菜カレー」等が記憶され、「ラーメン」のグループとしては、「しょうゆラーメン」、「みそラーメン」、「塩ラーメン」等が記憶されている。また、本実施形態では、抽出対象文字列と対応する標準的なカロリーが合わせて食品データベースに記憶されている。また、日記データには、日記データを送信したユーザーを識別するユーザーＩＤと、時間情報、及び日記の内容が含まれている。
【００４２】
データ抽出部３１２は、受信データ解析部３１１で抽出された摂取情報に対応するカロリーに関する情報（以下、カロリー情報と称する）を蓄積情報３３１から抽出し、カロリー特定部３１３に送出する。ここで、蓄積情報３３１について説明する。蓄積情報３３１は、図８（ａ）に示すサービス利用者情報３３１ａと図８（ｂ）に示す利用者入力情報３３１ｂとを含む。
【００４３】
サービス利用者情報３３１ａには、ＳＮＳサービスを利用するユーザーに対して一意に付与されたユーザーＩＤ、当該ユーザーのユーザー名、当該ユーザーが解析サービスの利用対象者か否かを示す解析対象（１：解析対象者、０：非解析対象者）、当該利用者の属性情報（性別、年齢、身長、体重、趣味・・・）が関連付けて記憶されている。サービス利用者情報３３１ａの各レコードは、ユーザーがＳＮＳサービスの利用を開始するときに登録される。また、利用者入力情報３３１ｂには、ユーザー毎のユーザーＩＤ、当該ユーザーが日記入力画面に対して入力を行った日付（時間）と、日記の内容を示す内容データが関連付けて記憶されている。この例では、内容データにはユーザーが食べた食事に関するものを主に挙げているが食事以外の内容のデータも含まれている。
【００４４】
例えば、データ抽出部３１２は、解析対象ユーザーの日記データから摂取情報として「ラーメン」を抽出した場合、「ラーメン」に対応するカロリーを利用者入力情報３３１ｂの内容データから抽出する。この例では、ユーザーＩＤ１０２のレコード３３１０と、ユーザーＩＤ１２１のレコード３３１１において「ラーメン」の文字列が含まれている。「ラーメン」に対応するカロリーとして、レコード３３１１には「７００ｋｃａｌ」の文字列が含まれているが、レコード３３１０にはカロリーを示す文字列が含まれていない。従って、この場合には、摂取情報「ラーメン」に対するカロリーとして、ユーザーＩＤ１２１の「７００ｋｃａｌ」が抽出される。
【００４５】
なお、上記は摂取情報が「ラーメン」の例であるため、「しょうゆラーメン」に対応するカロリーが抽出されたが、例えば、摂取情報が「みそラーメン」の場合、データ抽出部３１２は、利用者入力情報３３１ｂにおいて、摂取情報の文字列と完全一致する文字列があればその文字列に対するカロリーを抽出する。また、完全一致する文字列がなければ、記憶部３３０内の食品データベース（図示略）において「みそラーメン」が属する「ラーメン」グループ内の抽出対象文字列と一致する文字列に対するカロリーを利用者入力情報３３１ｂから抽出する。
【００４６】
データ抽出部３１２は、受信データ解析部３１１の解析処理の結果、摂取情報の文字列が含まれる文において、当該文字列の位置と、数字と「ｋｃａｌ」の文字列からなるカロリーを示す文字列（以下、カロリーデータと称する）の位置との位置関係が予め定められた関係（例えば、摂取情報の末尾の文字列から数ビット内にカロリーが位置する等）を満たしている場合に、当該カロリーデータが含まれている内容データと対応づけられているユーザーＩＤと当該カロリーデータとをカロリー情報として抽出する。
【００４７】
図７に戻り、説明を続ける。カロリー特定部３１３は、データ抽出部３１２で抽出されたカロリー情報に基づいて、日記データにおける摂取情報と対応するカロリーを特定し、特定したカロリーを日記データに対する摂取カロリー情報として通信部３４０へ送出する。
例えば、上述の例において、カロリー情報として、ユーザーＩＤ１２１の「７００ｋｃａｌ」が抽出された場合には、ユーザーＩＤ１０２のユーザーの属性情報が、解析対象ユーザーの属性情報と一定の条件下で一致する場合に、ユーザーＩＤ１２１のカロリー情報を用いてカロリーを特定する。属性情報が一致する条件としては、例えば、解析対象ユーザーの属性情報の性別と一致するカロリー情報を用いることを条件としてもよいし、当該ユーザーの年齢との差が予め定められた閾値内であるカロリー情報を用いることを条件としてもよい。また、身長と体重とを用いて算出される解析対象ユーザーのＢＭＩ値との差が予め定められた閾値内であるカロリー情報を用いることを条件としてもよいし、複数の条件を組合わせてもよい。
【００４８】
カロリー特定部３１３は、解析対象ユーザーの属性情報と一致するカロリー情報が複数ある場合には、そのカロリー情報のカロリーデータの平均、中間値、最頻値等を摂取情報に対するカロリーとして特定する。また、カロリー特定部３１３は、属性情報が一致するカロリー情報が無い場合には、抽出されたカロリー情報のカロリーデータの平均値、中間値、最頻値等を受信データの摂取情報に対するカロリーとして特定する。また、カロリー特定部３１３は、カロリー情報が抽出されなければ、食品データベース（図示略）から摂取情報に対するカロリーを特定する。
このように、本実施形態では、日記の内容データから解析対象ユーザーの摂取情報に対するカロリーデータを抽出し、解析対象ユーザーの属性情報と近い内容の属性情報を有する他のユーザーのカロリーデータを用いて解析対象ユーザーの摂取情報に対するカロリーを特定する。
【００４９】
本実施形態に係るサーバー３０の制御部３１０の機能構成は以上の通りである。次に、血糖値予測システム１の動作について説明する。
（動作）
図９は、本実施形態における血糖値予測装置１０の全体動作を示す動作フローを示している。なお、以下の動作説明において、図８（ａ）のサービス利用者情報３３１ａにおけるユーザーＢがＳＮＳサービスを利用して摂取カロリー情報をサーバー３０から取得する例を説明する。また、血糖値予測装置１０における摂取エネルギーの取得モードとして、サーバーモードが予め記憶部１４０内に設定されているものとする。
【００５０】
制御部１１０は、操作部１３０を介して、ユーザーＢが取得モードをサーバーモードに切替える操作を行った場合には（ステップＳ１００：ＹＥＳ）、記憶部１４０内に記憶されている入力モードをサーバーモードに置き換える（ステップＳ２００）。また、ユーザーＢがサーバーモードに切替える操作を行わなければ（ステップＳ１００：ＮＯ）、制御部１１０は、ステップＳ３００の処理を行う。
ユーザーＢは、一日１回、血糖値を実測したデータを血糖値予測装置１０の操作部１３０を介して入力する。制御部１１０は、操作部１３０を介して入力された血糖値データと入力時間と受付けると、入力された血糖値データを基準値Ｃ０として設定し、血糖値予測処理を開始する（ステップＳ３００）。
制御部１１０は、ステップＳ３００において入力された基準値Ｃ０と、記憶部１４０内に設定されているサーバーモードで取得した摂取エネルギー情報とを用いて第１予測曲線を算出する処理を行う（ステップＳ４００）。
【００５１】
ここで、サーバーモードで摂取エネルギーを取得する処理について、血糖値予測装置１０及びサーバー３０の動作フローを用いて説明する。図１０は、サーバーモードである場合の、血糖値予測装置１０における摂取エネルギー取得処理を示す動作フローである。上述したように、サーバーモードの場合には、ユーザーＢが、ＳＮＳサービスを利用した際に入力した日記データを用いてサーバー３０から摂取エネルギー情報を取得する。ユーザーＢは、血糖値予測装置１０を用いてサーバー３０のＳＮＳサービスのＷＥＢサイトにアクセスし、日記入力画面において自分が食べた食事内容を入力する。
【００５２】
制御部１１０は、操作部１３０を介してサーバー３０が提供するＳＮＳサービスのＷＥＢサイトのＵＲＬが入力されると、通信部１７０によりＳＮＳサービスのＷＥＢサイトにアクセスする（ステップＳ１１１）。
制御部１１０は、ユーザーＢが、ＳＮＳサービスのＷＥＢサイト上で操作部１３０を介してユーザーＩＤ「１０２」を入力する操作を行うと、入力されたユーザーＩＤ「１０２」を通信部１７０を介してサーバー３０に送信し、ＷＥＢサイトへのログインを許可するサーバー３０からの応答を受信してＷＥＢサイトにログインする（ステップＳ１１２）。
ユーザーＢは、ＳＮＳサービスにおいて予め設定されている自分の日記入力画面を示すＷＥＢページを操作部１３０を介して指定すると、制御部１１０は、通信部１７０を介して指定されたＷＥＢページをサーバー３０から受信して表示部１５０に表示させる（ステップＳ１１３）。図１１（ａ）は、表示部１５０に表示された日記入力画面の例を示している。この例では、日記入力画面において、入力日付１５１、日記の内容データを入力するための入力欄１５２、日記データをサーバー３０に送信することを指示するＯＫボタン１５３、入力データを送信せずに消去することを指示するキャンセルボタン１５４が表示される。
ユーザーＢは、図１１（ｂ）に示すように、入力欄１５２において、自分が食べた食事に関するデータやその他のデータを操作部１３０を介して入力し、ＯＫボタン１５３を押下する操作を行う。制御部１１０は、日記入力画面で入力された日記データを通信部１７０を介してサーバー３０に送信する（ステップＳ１１４）。そして、制御部１１０は、ステップＳ１１４において送信した日記データに対する摂取カロリー情報を、ＳＮＳサービスへのアクセス中にサーバー３０から受信する（ステップＳ１１５）。なお、制御部１１０は、摂取カロリー情報をＳＮＳサービスのアクセス中にサーバー３０から受信できなければ、次にＳＮＳサービスにアクセスしたときに、サーバー３０から摂取カロリー情報を受信するようにしてもよい。
【００５３】
ここで、サーバー３０における、血糖値予測装置１０から送信された日記データに対する摂取カロリーの解析サービスの動作について説明する。図１２は、サーバー３０の解析サービスの処理を示す動作フローを示す図である。
制御部３１０は、ユーザーＢの血糖値予測装置１０から送信された日記データを通信部３２０を介して受信すると（ステップＳ３１１：ＹＥＳ）、図１３に示すように、記憶部３３０の利用者入力情報３３１ｂにおいて、ユーザーＩＤ「１０２」に対応するレコード３３２０として、受信時間と内容データとを蓄積すると共に、サービス利用者情報３３１ａの解析対象を参照し、ユーザーＢが解析対象者であるか否かを判断する（ステップＳ３１２）。
制御部３１０は、利用者入力情報３３１ｂにおけるユーザーＢの解析対象に「１」が記憶されているため、ユーザーＢが解析対象者であると判断し（ステップＳ３１２：ＹＥＳ）、受信した日記データについて解析処理を行い、記憶部３３０内の食品データベースに定義されている抽出対象文字列と一致する摂取情報が日記データに含まれているか否か判断する（ステップＳ３１３）。制御部３１０は、日記データに抽出対象文字列と一致する「カレー」の文字列が含まれていると判断し（ステップＳ３１３：ＹＥＳ）、摂取情報として「カレー」の文字列を抽出する（ステップＳ３１４）。
制御部３１０は、記憶部３３０内の利用者入力情報３３１ｂにおいて、ステップＳ３１４で抽出した摂取情報「カレー」の文字列を含むデータが含まれているか否か判断する（ステップＳ３１５）。制御部３１０は、図１３に示す利用者入力情報３３１ｂにおいて、ユーザーＩＤ１０１に対応するレコード３３２１、ユーザーＩＤ１２０に対応するレコード３３２２及びレコード３３２３の各内容データに「カレー」の文字列が含まれていると判断すると（ステップＳ３１５：ＹＥＳ）、これらの内容データに「カレー」に対応するカロリーデータが含まれているか否か判断する（ステップＳ３１６）。
制御部３１０は、レコード３３２１とレコード３３２２の内容データにおいて、「カレー」の文字列の後ろにカロリーデータ「７５０ｋｃａｌ」と「６００ｋｃａｌ」が各々含まれていると判断し（ステップＳ３１６：ＹＥＳ）、レコード３３２１とレコード３３２２の各内容データに含まれるカロリーデータと、当該内容データと対応づけられているユーザーＩＤとをカロリー情報として抽出する（ステップＳ３１７）。
制御部３１０は、ステップＳ３１７で抽出したカロリー情報のうち、ユーザーＢの属性情報と一致する属性情報を有するユーザーのカロリー情報を用いて、ユーザーＢの摂取情報「カレー」に対するカロリーを特定する（ステップＳ３１８）。
【００５４】
本実施形態では、ユーザーＢの属性情報の性別と一致し、ユーザーＢの年齢との差が５歳未満であるユーザーのカロリー情報を用いる。この例では、ユーザーＢの性別は「男性」、年齢は「３８」である。また、ステップＳ３１７で抽出されたカロリー情報のうち、ユーザーＩＤ１０１に対応するユーザーＡの性別は「男性」、年齢は「３５」であり、ユーザーＩＤ１２０に対応するユーザーＣの性別は「女性」、年齢は「３４」である。従って、この場合には、ユーザーＢの性別及び年齢と一致するユーザーＡのカロリー情報のカロリーデータ「７５０ｋｃａｌ」が、ユーザーＢの摂取情報に対するカロリーとして特定される。なお、この例では、ユーザーＢの属性情報と一致するカロリー情報が１件だけの例であるが、複数のカロリー情報がある場合には、複数のカロリー情報に含まれるカロリーデータの平均値等をユーザーＢの摂取情報に対するカロリーとして特定する。
【００５５】
また、制御部３１０は、ステップＳ３１１で受信したユーザーＢの日記データにおいて、摂取情報「カレー」を摂取した時間を推定する （ステップＳ３１９）。例えば、摂取情報を示す文字列を含む文において食事の摂取タイミングを示す予め定めた文字列（朝食、昼食、夕食等）が含まれている場合には、日記データの受信日付とその文字列を摂取時間として推定し、摂取タイミングを示す文字列が含まれていない場合には、日記データを受信した時間を摂取時間として推定する。
【００５６】
この例では、図１３のレコード３３２０に示すように、摂取情報「カレー」の文字列を含む文において、「カレー」の文字列の前に「昼食」の文字列が含まれているため、制御部３１０は、摂取時間情報「昼食」と、摂取情報「カレー」と、ステップＳ３１８で特定された摂取情報に対するカロリー「７５０ｋｃａｌ」とを対応づけた摂取カロリー情報を生成し、通信部３２０を介してユーザーＢの血糖値予測装置１０に摂取カロリー情報を送信する（ステップＳ３２０）。
【００５７】
なお、ステップＳ３１１において、制御部３１０は、通信部３２０を介してユーザーから日記データを受信しなかった場合（ステップＳ３１１：ＮＯ）、又は、ステップＳ３１２において、日記データの送信元のユーザーが解析対象者でない場合（ステップＳ３１２：ＮＯ）、又は、ステップＳ３１３において、日記データに摂取情報が含まれていない場合には（ステップＳ３１３：ＮＯ）、処理を終了する。
また、ステップＳ３１５において、利用者入力情報３３１ｂに摂取情報の文字列を含むデータが蓄積されていない場合 （ステップＳ３１５：ＮＯ）、又は、ステップＳ３１６において、カロリーデータが含まれていないと判断した場合には（ステップＳ３１６：ＮＯ）、制御部１１０は、記憶部３３０内の食品データベースから摂取情報に対応するカロリーを抽出し、摂取情報に対応するカロリーとして特定する（ステップＳ３２１）。なお、摂取情報が食品のグループを表す文字列である場合には、当該グループに含まれている食品のカロリーが抽出される。この場合は、グループ内のカロリーの平均値等を摂取情報に対応するカロリーとして特定する。
【００５８】
サーバー３０の解析サービスの処理は以上の通りである。図１０に戻り、血糖値予測装置１０の動作の説明を続ける。制御部１１０は、ステップＳ１１５においてサーバー３０から受信した摂取カロリー情報に基づいて、第１予測曲線を算出する（ステップＳ１１６）。つまり、制御部１１０は、摂取カロリー情報に含まれる日付と摂取タイミング「昼食」に対応する時間において、摂取カロリー情報に含まれる摂取情報「カレー」とカロリー「７５０ｋｃａｌ」に基づく第１予測曲線を算出する。なお、摂取時間情報に摂取タイミング「昼食」が含まれている場合には、昼食に対応する時間として予め設定された昼食時間（例えば午後１２時等）を適用し、「朝食」が含まれている場合には、朝食に対応する時間として予め設定された朝食時間（例えば午前８時等）を適用し、「夕食」が含まれている場合には、夕食に対応する時間として予め設定された夕食時間（例えば午後８時等）を適用する。
【００５９】
制御部１１０は、昼食時間における血糖値について、摂取カロリー情報に含まれるカロリーに基づく第１予測曲線を第１の予測アルゴリズムを用いて算出し、例えば、図１４（ａ）に示す第１予測曲線を生成する。また、制御部１１０は、ステップＳ１１５において受信した摂取カロリー情報に含まれる摂取情報「カレー」に対応するユーザー情報２００を抽出し、摂取情報に対する過去の血糖値変化を解析して第１モデル波形を生成する（ステップＳ１１７）。具体的には、制御部１１０は、血糖値情報２００ａの波形において、「カレー」を摂取したときの次の行動までの波形データを抽出し、抽出した波形データを平均化することで、例えば、図１４（ｂ）に示す第１モデル波形を生成する。なお、摂取情報と同じ食事内容を摂取したときの波形が血糖値情報２００ａに含まれていない場合には、第１モデル波形の生成処理を行わずに処理を終了する。
【００６０】
制御部１１０は、ステップＳ１１７の解析結果として生成された第１モデル波形に基づいてステップＳ１１６で生成した第１予測曲線を変形する（ステップＳ１１８）。具体的には、制御部１１０は、図１４（ａ）に示す第１予測曲線の上昇期間ｄ２における血糖値の上昇量ｈ１１と、図１４（ｂ）に示す第１モデル波形の血糖値の上昇量ｈ２１（Ｃ４−Ｃ１）とを比較し、上昇量の差分が閾値以上である場合には、第１予測曲線における上昇量ｈ１１がｈ２１（Ｃ４−Ｃ１）となるように、第１の予測アルゴリズムにおける係数αを調整する。また、制御部１１０は、第１モデル波形の血糖値がピークとなるｔ２以降において、血糖値がピーク値から閾値Δｃｔｈ範囲内のｔ３までの継続期間ｄ３１（ｔ３−ｔ２）と、第１予測曲線における平衡期間ｄ３とを比較する。制御部１１０は、継続期間ｄ３１と平衡期間ｄ３との差分が閾値以上である場合には、平衡期間ｄ３として継続期間ｄ３１を設定する。また、制御部１１０は、第１予測曲線の下降期間ｄ４における血糖値の低下量（ｈ１２）と、第１モデル波形の血糖値の低下量ｈ２２（Ｃ４−Ｃ２）とを比較し、低下量の差分が閾値以上である場合には、低下量ｈ１２を第１モデル波形における低下量ｈ２２となるように、第１の予測アルゴリズムにおける係数βを調整する。このようにして、第１モデル波形に基づいて第１予測曲線を変形した結果を図１４（ｃ）に示す。
【００６１】
本実施形態における第１予測曲線の算出処理は以上の通りである。図９に戻り、説明を続ける。制御部１１０は、活動量測定部１２０において測定された消費エネルギーとユーザーＢによって入力された運動情報に基づいて第２予測曲線を算出する処理を行う（ステップＳ５００）。
【００６２】
ここで、第２予測曲線算出処理の詳細を図１５の動作フローに従って説明する。制御部１１０は、消費エネルギー情報として、活動量測定部１２０において一定時間毎に計測されるユーザーの消費カロリーを活動量測定部１２０から受付け（ステップＳ１３１）、受付けた消費カロリーに対する第２予測曲線を第２の予測アルゴリズムを用いて算出し、図１６（ａ）に例示する第２予測曲線を生成する（ステップＳ１３２）。
【００６３】
ユーザーが操作部１３０を介して運動情報入力画面（図示略）を表示させる操作を行うと、制御部１１０は、運動種別情報３２００を表示部１５０に表示し、ユーザーからの入力を受付ける（ステップＳ１３３）。制御部１１０は、運動情報として操作部１３０を介して運動種別がユーザーにより入力されると（ステップＳ１３３：ＹＥＳ）、入力された運動情報をユーザー情報２００に記憶すると共に、入力された運動情報に対応するユーザー情報２００を抽出し、運動情報に対する過去の血糖値変化を解析して第２モデル波形を生成する（ステップＳ１３４）。
【００６４】
例えば、入力された運動情報が運動種別「３」、運動内容「ウォーキング」である場合、図３（ａ）の血糖値情報２００ａの例では、「ウォーキング」が行われた２０１０年２月１日のウォーキング開始時点から次の行動である「軽食」が摂取されるまでの期間の波形データが抽出される。このようにして、制御部１１０は、「ウォーキング」が行われたときの波形データを血糖値情報２００ａから抽出して平均化し、図１６（ｂ）に示す第２モデル波形を生成する。なお、運動情報と同じ運動を行ったときの波形が血糖値情報２００ａに含まれていない場合には第２モデル波形を生成せずに処理を終了する。
【００６５】
制御部１１０は、ステップＳ１３４の解析結果として生成された第２モデル波形に基づいてステップＳ１３２で生成した第２予測曲線を変形する（ステップＳ１３５）。具体的には、制御部１１０は、図１６（ａ）に示す第２予測曲線の下降期間ｅ２における血糖値の低下量Δｃと、図１６（ｂ）に示す第２モデル波形の血糖値の低下量Δｃ１とを比較する。第２モデル波形の低下量Δｃ１は、時間ｔ１〜ｔ２の間に運動開始時の血糖値からｈ３１だけ血糖値が低下したときの単位時間Ｔ０当たりの低下量である。単位時間Ｔ０当たりの低下量の差分が閾値以上である場合には、制御部１１０は、第２予測曲線におけるΔｃがΔｃ１となるように、第２の予測アルゴリズムにおける係数γを調整する。このようにして、第２モデル波形に基づいて第２予測曲線を変形した結果を図１６（ｃ）に示す。
【００６６】
本実施形態における第２予測曲線の算出処理は以上の通りである。図９に戻り、説明を続ける。制御部１１０は、ステップＳ４００で生成した第１予測曲線とステップＳ５００で生成した第２予測曲線とを同一時間軸に沿って統合させた予測血糖値曲線を生成し、生成した予測血糖値曲線を示す画像を表示部１５０に表示する（ステップＳ６００）。
【００６７】
なお、摂取エネルギーの取得モードが入力モードである場合には、血糖値予測装置１０において、制御部１１０は、食事タイミング、食事内容を入力する入力画面（図示略）を表示部１５０に表示し、操作部１３０を介してこれらの項目に対するデータの入力を受付ける。ユーザーが食事タイミングの入力操作を行ったときは、制御部１１０は、記憶部１４０内の食事タイミング情報３３００における食事タイミングのデータを読み出して表示部１５０に表示し、ユーザーからの食事タイミングの選択操作を受付ける。また、ユーザーが食事内容の入力操作を行ったときには、制御部１１０は、記憶部１４０内のカロリー情報３１００における食事メニューのデータを読み出して表示部１５０に表示し、ユーザーからの食事メニューの選択操作を受付ける。
制御部１１０は、入力モードで入力された食事内容に対する摂取カロリーをカロリー情報３１００から特定し、特定した摂取カロリーと入力された摂取タイミング及び食事内容を含む食事情報をユーザー情報２００に記憶すると共に、食事情報を用いて、上述した図１０のステップＳ１１６〜ステップＳ１１８と同様の処理を行い、摂取エネルギーに基づく第１予測曲線を算出する。
【００６８】
本実施形態では、ユーザーは、ＳＮＳサービスを利用した際に、自分が摂取した食事に関する摂取情報を日記入力画面に入力することにより、ＳＮＳサービスを提供するサーバー３０に蓄積されている他のユーザーが書き込んだ日記データの中から、当該摂取情報に対応するカロリーが特定される。そのため、ユーザーは、血糖値予測装置１０で摂取した食事内容を入力しなかったとしても、ＳＮＳサービスで提供されている日記入力画面に摂取情報を書き込むことで血糖値の予測に必要な摂取カロリー情報を得ることができ、血糖値の予測に必要な摂取カロリーのデータが無い場合と比べて血糖値の予測精度を向上させることができる。
【００６９】
また、サーバー３０において特定されるカロリーは、解析対象のユーザーの属性情報と一定の条件下で一致するユーザーが摂取したカロリーに基づいて特定される。例えば、同じメニューを男性と女性で摂取した場合であっても、男性と女性でそのメニューの摂取量（大盛りなど）が異なる場合がある。そのため、属性情報がある程度一致しているユーザーが書き込んだデータは、解析対象のユーザーの食に関する傾向が反映されている可能性が高く、ユーザーに適した血糖値の予測を行うことができる。
【００７０】
なお、本実施形態の例では、利用者入力情報３３１ｂにおいて、血糖値の予測対象となるユーザーが過去に入力した日記データにはカロリーデータが含まれていない例であったが、当該ユーザーの過去の日記データに摂取情報とカロリーデータが含まれている場合には、当該ユーザーのカロリーデータを優先して抽出するようにしてもよいし、当該ユーザーのカロリーデータと他のユーザーの入力データに含まれるカロリーデータとを抽出するようにしてもよい。
【００７１】
＜変形例＞
本発明は、上述した実施形態に限定されるものではなく、以下のように変形させて実施してもよい。また、以下の変形例を組み合わせてもよい。
【００７２】
（１）上述した実施形態では、解析対象のユーザーがサーバー３０に対して送信したデータに摂取情報が含まれている場合に、当該摂取情報に対するカロリーデータを含み、当該ユーザーの属性情報と一致するユーザーのカロリー情報を用いて当該摂取情報に対するカロリーを特定する例であったが、ユーザーの属性情報だけでなく、ユーザーが食事を摂取した環境に関する情報（以下、環境情報と称する）が一致するユーザーのカロリー情報を用いてカロリーを特定するようにしてもよい。環境情報は、解析対象のユーザーが食事を摂取した場所を表す情報（例えば、店名、住所、電話番号等）、解析対象のユーザーが一緒に食事を摂った他のユーザーを表す情報（ユーザー名等）などである。なお、他のユーザーを表す環境情報の場合には、解析対象のユーザーが利用するＳＮＳサービスと同じサービスを利用しているユーザーであることが条件となり、蓄積情報３３１において、ユーザー毎に当該ユーザーと関係を有する他のユーザーを示す関係情報が記憶されている。
【００７３】
解析対象のユーザーがサーバー３０に送信した日記データに、例えば、「夕食にＹ店で○○ハンバーグを食べた・・・」の文が含まれている場合、サーバー３０の制御部３１０は、日記データを解析し、摂取情報として「○○ハンバーグ」、場所を表す環境情報として「Ｙ店」を抽出する。そして、制御部３１０は、利用者入力情報３３１ｂにおいて、摂取情報「○○ハンバーグ」が含まれる入力データを抽出し、その抽出データの中から環境情報「Ｙ店」が含まれる入力データを抽出する。制御部３１０は、抽出した入力データから「○○ハンバーグ」に対するカロリー情報を抽出し、抽出したカロリー情報のうち、解析対象のユーザーの属性情報と一致するユーザーのカロリー情報を抽出し、そのカロリー情報を用いて「○○ハンバーグ」に対するカロリーを特定する。なお、環境情報が含まれる内容データがなければ、実施形態と同様、摂取情報とユーザーの属性情報とに基づいてカロリーを特定する。
【００７４】
また、解析対象のユーザーがサーバー３０に送信した日記データに、例えば、「今日は、ユーザーＡと一緒にチキンカレーを食べた。」の文が含まれている場合には、サーバー３０の制御部３１０は、日記データを解析し、摂取情報として「チキンカレー」、他のユーザーを表す環境情報「ユーザーＡ」を抽出する。そして、制御部３１０は、利用者入力情報３３１ｂにおいて、摂取情報「チキンカレー」が含まれる入力データを抽出する。また、制御部３１０は、解析対象のユーザーの関係情報を参照して「ユーザーＡ」が含まれているか否か判断する。「ユーザーＡ」が関係情報に含まれている場合には、その抽出データの中から「ユーザーＡ」の日記データを抽出し、解析対象ユーザーの日記データの受信日付と対応するユーザーＡの日記データにおいて、摂取情報に対するカロリーデータが含まれている場合には、そのカロリーデータを「チキンカレー」に対するカロリーとして特定する。なお、制御部３１０は、解析対象ユーザーの日記データの受信日付と対応するユーザーＡの日記データが無い場合や、カロリーデータが含まれていない場合には、実施形態と同様、摂取情報とユーザーの属性情報とに基づいてカロリーを特定する。
【００７５】
このように、本変形例では、摂取情報とユーザーの属性情報だけでなく、ユーザーが食事を摂取したときの環境に対応する日記データに含まれているカロリーデータを用いて、摂取情報に対するカロリーを特定することができるので、ユーザーが摂取した食事に対するカロリーとしてより適切なカロリーが特定され、血糖値の予測精度を向上させることができる。
【００７６】
（２）上述した実施形態では、血糖値予測装置１０からサーバー３０に対して送信された日記データに含まれる摂取情報に対応するカロリーを特定する例であったが、血糖値予測装置１０において摂取情報を特定し、サーバー３０において当該摂取情報に対するカロリーを特定するようにしてもよい。例えば、スケジュール等を入力するスケジュール機能が血糖値予測装置１０に設けられている場合、血糖値予測装置１０において、スケジュール機能を用いてユーザーが入力したスケジュールデータの中から摂取情報を抽出し、抽出した摂取情報をサーバー３０に送信し、その摂取情報に対応するカロリーをサーバー３０で特定するようにしてもよい。この場合には、血糖値予測装置１０の制御部１１０は、スケジュール機能を用いて入力されたスケジュール内容とスケジュールの時間情報とを合わせたスケジュールデータを記憶部１４０の所定領域に蓄積する。制御部１１０は、スケジュールデータが入力される毎に、スケジュールデータに摂取情報が含まれているか否かを判断する。制御部１１０は、摂取情報が含まれている場合には、例えば、ユーザーがＳＮＳサービスを利用した際、又は、摂取情報をスケジュールデータが入力される毎にサーバー３０にアクセスして、その摂取情報に対するカロリーを特定する要求をサーバー３０に対して送信する。
【００７７】
サーバー３０は、血糖値予測装置１０から送信された要求に応じて、実施形態と同様の方法で摂取情報に対するカロリーを特定し、特定したカロリーを示すカロリー情報を血糖値予測装置１０に送信する。血糖値予測装置１０は、サーバー３０から送信されたカロリー情報と当該摂取情報を含むスケジュールデータの時間情報と当該摂取情報とに基づいて第１予測曲線を算出して血糖値の予測を行う。なお、血糖値予測装置１０において、スケジュールデータに摂取情報が含まれているか否かを判断する際には、記憶部１４０において予め定められた食品名や料理名等の抽出対象文字列を記憶するように構成する。
【００７８】
（３）また、上述した実施形態において、サーバーモードで摂取カロリーが入力された後に、ユーザーが入力モードを用いて食事内容を入力しなおした場合には、入力された食事内容と当該食事内容に応じた摂取カロリーとを用いて予測血糖値曲線を再計算するようにしてもよい。この場合には、例えば、入力モードの画面において、過去の日付と食事タイミングを入力できるように構成し、入力された過去の日付と食事タイミングに対応する食事情報を行動情報２００ｂから抽出して表示させるように構成する。そして、実施形態と同様に、ユーザーが食事内容を選択する操作を行った場合には、その食事内容に対応する摂取カロリーを特定し、入力された食事内容及び摂取カロリーを行動情報２００ｂに記憶すると共に、当該摂取カロリーに基づいて予測血糖値曲線を再計算するように構成する。
【００７９】
（４）また、上述した実施形態では、サーバー３０の記憶部３３０内において、摂取情報の抽出対象文字列と標準的なカロリーとを対応づけた食品データベースを記憶し、利用者入力情報３３１ｂから摂取情報に対応するカロリー情報を抽出できなかった場合には、食品データベース内のカロリーを用いてカロリーを特定する例であったが、例えば、インターネット上の他のサーバー装置等から摂取情報に対応するカロリーを取得するようにしてもよい。
【００８０】
（５）また、上述した実施形態では、活動量測定部１２０によってユーザーの消費カロリーを逐次測定する例であったが、脈拍を測定する測定手段を備える場合には、消費エネルギー取得部１１２は、脈拍を消費カロリーに変換する予め定義された演算式を用いて測定された脈拍を消費カロリーに変換するようにしてもよい。
【００８１】
（６）また、上述した実施形態では、予め定義された血糖値の予測アルゴリズムを用いて血糖値の予測曲線を生成する例であったが、非線形回帰分析や時系列解析等の手法を用い、これらの手法により推定されたモデルにユーザーによって入力された食事情報や運動情報等のデータを当てはめて血糖値を予測するように構成してもよい。
【００８２】
（７）また、上述した実施形態では、ユーザー情報２００として、ユーザーの過去の教育入院期間において測定された血糖値と行動履歴が記憶される例であったが、ユーザーの血糖値に関する時系列データであればこれ以外のデータであってもよい。例えば、自宅で測定されたユーザーの血糖値と行動履歴の時系列データでもよいし、ユーザーと同様の特性（病状や体質等）を有する他の糖尿病患者の血糖値と行動履歴の時系列データであってもよい。
【００８３】
（８）また、上述した実施形態では、活動量測定部１２０によってユーザーの消費カロリーを逐次測定する例であったが、脈拍を測定する手段を備える場合には、消費エネルギー取得部１１２は、脈拍データを消費カロリーに変換する予め定義された演算式を用いて脈拍を測定する手段において測定された測定結果を消費カロリーに変換するようにしてもよい。
【００８４】
（９）また、上述した実施形態では、摂取カロリーを用いた第１の予測アルゴリズムの例を説明したが、食事内容に含まれる糖質量、ＧＩ値、脂質量等を用いた予測アルゴリズムを適用してもよい。この場合には、食事内容に対応する糖質量、ＧＩ値、脂質量等の成分を予め定義したテーブルを記憶部１４０に記憶するように構成してもよいし、ユーザーによって食事情報が入力された際に、摂取エネルギー取得部１１１において、当該食事情報に対応する成分データを有線又は無線通信により外部から取得するように構成してもよい。
【００８５】
（１０）また、上述した実施形態では、ＳＮＳのサービスを例に挙げて説明したが、掲示板、チャット、ブログ、Ｔｗｉｔｔｅｒ（登録商標）等のサービスでもよく、サーバー３０は、ユーザーに対して提供するこれらのサービスに関するデータ（サービス情報）の入力を行わせるための入力画面を血糖値予測装置１０に対して提供すると共に、当該入力画面を用いて入力されたデータに含まれる摂取情報に対応するカロリーを、これらのサービスを利用するユーザーの蓄積されたデータを用いて特定するように構成されていればよい。
【００８６】
（１１）また、上述した実施形態では、運動種別を患者が操作部１３０を介して入力する例を用いたが、例えば、活動量測定部単独、もしくは加速度センサーを用いることで、血糖値予測装置が運動種別を判定してもよい。
【符号の説明】
【００８７】
１…血糖値予測システム、１０…血糖値予測装置、３０…サーバー、１１０，３１０…制御部、１１１…摂取エネルギー取得部、１１２…消費エネルギー取得部、１１３…算出部、１１４…解析部、１１５…生成部、１２０…活動量測定部、１３０…操作部、１４０，３３０…記憶部、１５０…表示部、１６０…計時部、１７０，３２０…通信部、３１１…受信データ解析部、３１２…データ抽出部、３１３…カロリー特定部
【図１】
0005589652.tif 000002
【図２】
0005589652.tif 000003
【図３】
0005589652.tif 000004
【図４】
0005589652.tif 000005
【図５】
0005589652.tif 000006
【図６】
0005589652.tif 000007
【図７】
0005589652.tif 000008
【図８】
0005589652.tif 000009
【図９】
0005589652.tif 000010
【図１０】
0005589652.tif 000011
【図１１】
0005589652.tif 000012
【図１２】
0005589652.tif 000013
【図１３】
0005589652.tif 000014
【図１４】
0005589652.tif 000015
【図１５】
0005589652.tif 000016
【図１６】
0005589652.tif 000017