"ドライバの状態を推定する状態推定装置であって、前記ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第1グループと第2グループのうち、前記ドライバの状態が属する前記グループを識別する第1の識別手段と、前記ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第3グループと第4グループのうち、前記ドライバの状態が属する前記グループを識別する第2の識別手段と、前記第1の識別手段の識別結果、及び前記第2の識別手段の識別結果に基づいて、前記ドライバの状態が属するクラスを推定する推定手段と、前記推定手段の推定結果を検証する検証手段と、前記検証手段の検証結果に応じた推定結果を出力する出力手段と、を備える状態推定装置。前記検証手段は、前記第1の識別手段の識別結果の絶対値をA、前記第2の識別手段の識別結果の絶対値をB、定数をkとして、次式に示される演算を行って検証値CLを算出し、前記出力手段は、前記検証値CLに応じた推定結果を出力する請求項1に記載の状態推定装置。前記第1の識別手段の出力結果は、前記第1の識別手段の出力値の平均値であり、前記第2の識別手段の出力結果は、前記第2の識別手段の出力値の平均値である請求項1又は2に記載の状態推定装置。前記第1の識別手段の出力結果、及び前記第2の識別手段の出力結果は、45秒間に出力された出力値の平均値である請求項3に記載の状態推定装置。前記出力手段は、第1の推定結果が意味する前記クラスと、前記第1の推定結果の前に出力された第2の推定結果が意味するクラスとが、連続していない場合には、前記第2の推定結果を出力する請求項1乃至4のいずれか一項に記載の状態推定装置。前記第1の識別手段及び前記第2の識別手段は、AdaBoostによる学習済みの識別器である請求項1乃至5のいずれか一項に記載の状態推定装置。ドライバの状態を推定する状態推定方法であって、前記ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第1グループと第2グループのうち、前記ドライバの状態が属する前記グループを識別する第1の識別工程と、前記ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第3グループと第4グループのうち、前記ドライバの状態が属する前記グループを識別する第2の識別工程と、前記第1の識別工程での識別の結果、及び前記第2の識別工程での識別の結果に基づいて、前記ドライバの状態が属するクラスを推定する工程と、前記推定の結果を検証する工程と、前記検証の結果に応じた推定結果を出力する工程と、を含む状態推定方法。コンピュータに、ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第1グループと第2グループのうち、前記ドライバの状態が属する前記グループを識別する第1の識別手順と、前記ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第3グループと第4グループのうち、前記ドライバの状態が属する前記グループを識別する第2の識別手順と、前記第1の識別手順での識別の結果、及び前記第2の識別手順での識別の結果に基づいて、前記ドライバの状態が属するクラスを推定する手順と、前記推定の結果を検証する手順と、前記検証の結果に応じた推定結果を出力する手順と、を実行させるためのプログラム。特許文献1に記載された装置では、ドライバの状態の推定が、識別器からの出力に基づいて行われる。このため、ドライバが漫然状態にあるか否かを判断するに留まり、ドライバの状態を多段階に推定することが困難である。特許文献2に記載された推定装置は、ドライバの状態を多段階に推定することができる。しかしながら、ドライバの状態は概ね連続的に移行し、覚醒度が高い状態から、短時間に極端に覚醒度が低下した状態に移行したり、覚醒度が極端に低下した状態から、短時間に覚醒した状態に移行することは稀である。そのため、ドライバの状態を正確に推定するためには、状態の推移の連続性を考慮する必要がある。本発明は、上述の事情の下になされたもので、ドライバの状態の推移が連続的に推移することを考慮して、当該ドライバの状態を正確に推定することを目的とする。上記目的を達成するため、本発明の第1の観点に係る状態推定装置は、ドライバの状態を推定する状態推定装置であって、前記ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第1グループと第2グループのうち、前記ドライバの状態が属する前記グループを識別する第1の識別手段と、前記ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第3グループと第4グループのうち、前記ドライバの状態が属する前記グループを識別する第2の識別手段と、前記第1の識別手段の識別結果、及び前記第2の識別手段の識別結果に基づいて、前記ドライバの状態が属するクラスを推定する推定手段と、前記推定手段の推定結果を検証する検証手段と、前記検証手段の検証結果に応じた推定結果を出力する出力手段と、を備える。上記目的を達成するため、本発明の第2の観点に係る状態推定方法は、ドライバの状態を推定する状態推定方法であって、前記ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第1グループと第2グループのうち、前記ドライバの状態が属する前記グループを識別する第1の識別工程と、前記ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第3グループと第4グループのうち、前記ドライバの状態が属する前記グループを識別する第2の識別工程と、前記第1の識別工程での識別の結果、及び前記第2の識別工程での識別の結果に基づいて、前記ドライバの状態が属するクラスを推定する工程と、前記推定の結果を検証する工程と、前記検証の結果に応じた推定結果を出力する工程と、を含む。上記目的を達成するため、本発明の第3の観点に係るプログラムは、コンピュータに、ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第1グループと第2グループのうち、前記ドライバの状態が属する前記グループを識別する第1の識別手順と、前記ドライバに関する特徴量を入力値とし、前記ドライバの活性度合いを指標として定められた複数のクラスが分類される第3グループと第4グループのうち、前記ドライバの状態が属する前記グループを識別する第2の識別手順と、前記第1の識別手順での識別の結果、及び前記第2の識別手順での識別の結果に基づいて、前記ドライバの状態が属するクラスを推定する手順と、前記推定の結果を検証する手順と、前記検証の結果に応じた推定結果を出力する手順と、を実行させる。本発明によれば、識別結果に基づいて推定された推定結果が検証される。したがって、検証を行う際に、例えばドライバの状態の推移の連続性を検証することで、当該ドライバの状態を正確に推定することが可能となる。《第1の実施形態》以下、本発明の第1の実施形態を、図面を参照しつつ説明する。図1は本実施形態に係る状態推定システム10の概略的な構成を示すブロック図である。状態推定システム10は、例えば自動車を運転するドライバの生体情報に基づいてドライバの状態を推定する。この状態の推定は、眠気や疲労によりドライバが交通事故を誘発する状態にあるか否かを推定するものである。本実施形態では、ドライバの状態を、新エネルギー産業技術総合開発機構NEDOの定義にしたがって、全く眠くなさそうな状態をクラス1、やや眠そうな状態をクラス2、眠そうな状態をクラス3、かなり眠そうな状態をクラス4、非常に眠そうな状態をクラス5と規定し、ドライバ60の状態がどのクラスに属するかを推定する。図1に示されるように、状態推定システム10は、撮影装置20及び推定装置30を有している。撮影装置20は、シート61に着座するドライバ60の顔を撮影する。そして、撮影により得た画像を、電気信号に変換して推定装置30へ出力する。撮影装置20は、図2に示されるように、例えばハンドルコラムに設置されている。そして、視野中心にドライバ60の顔が位置するように、視野角及び姿勢が調整されている。推定装置30は、図1に示されるように、特徴量出力部31、識別部32a,32b、推定値算出部33、状態推定部34、検証部35及び推定結果出力部36を有している。特徴量出力部31は、例えば10秒ごとに、撮影装置20から出力される画像情報から、ドライバ60の生体情報を特徴量として抽出する。そして、抽出した特徴量を、識別部32a,32bへ出力する。具体的には、特徴量出力部31は、画像情報に基づいて、ドライバ60の瞼の開度a1、単位時間あたりの瞬き回数a2、瞬きの開始から終了までの所要時間a3、視線の方向a4、顔の向きa5等の生体情報を抽出する。そして、抽出した生体情報a1~a5を、特徴量xNa1,a2,a3,a4,a5として順次出力する。これにより、特徴量x1a1,a2,a3,a4,a5,x2a1,a2,a3,a4,a5,,xNa1,a2,a3,a4,a5が、ほぼ10秒ごとに算出され、識別部32a,32bそれぞれに出力される。以下、説明の便宜上、特徴量xNa1,a2,a3,a4,a5を、xNと表示する。なお、Nは1以上の整数を示す。図3のテーブルに示されるように、本実施形態では、クラス1、クラス2及びクラス3から構成される第1グループと、クラス4及びクラス5から構成される第2グループと、クラス1、クラス2、クラス3及びクラス4から構成される第3グループと、クラス5から構成さえる4グループとを定義する。ドライバ60の状態の推定は、以下に説明する識別部32a,32bが、ドライバ60の状態が属するグループを識別することにより得られた結果に基づいて行われる。識別部32aは、ドライバ60の状態が、クラス1、クラス2及びクラス3からなる第1グループに属するか、或いはクラス4及びクラス5からなる第2グループに属するかを識別する。この識別部32aは、特徴量xNが入力された場合に、識別結果αNxを、推定値算出部33へ出力する。識別部32aとしては、例えばAdaBoostによる学習済みの弱識別器を用いることができる。識別結果αNxは、αNxの符合が、ドライバの状態が属するグループを示している。例えば、αNxの符合が-である場合には、ドライバの状態が第1グループに属することを意味し、αNxの符合がである場合には、ドライバの状態が第2グループに属することを意味する。また、識別結果αNxは、αNxの絶対値|αNx|の大きさが、識別結果の信頼度を示している。例えば、αNxの符合が-である場合には、絶対値|αNx|が大きいほど、ドライバの状態が第1グループに属するとの判断の信頼度が高いことを意味する。そして、αNxの符合がである場合には、絶対値|αNx|が大きいほど、ドライバの状態が第2グループに属するとの判断の信頼度が高いことを意味する。識別部32bは、ドライバの状態が、クラス1、クラス2、クラス3及びクラス4からなる第3グループに属するか、或いはクラス5からななる第4グループに属するかを識別する。この識別部32bは、特徴量xが入力された場合に、識別結果βNxを、推定値算出部33へ出力する。同様に、識別部32bとしては、例えばAdaBoostによる学習済みの弱識別器を用いることができる。識別結果βNxは、βNxの符合が、ドライバの状態が属するグループを示している。例えば、βNxの符合が-である場合には、ドライバの状態が第3グループに属することを意味し、βNx符合がである場合には、ドライバの状態が第4グループに属することを意味する。また、識別結果βNxは、βNxの絶対値|βNx|の大きさが、識別結果の信頼度を示している。例えば、βNxの符合が-である場合には、絶対値|βNx|が大きいほど、ドライバの状態が第3グループに属するとの判断の信頼度が高いことを意味する。そして、βNxの符合がである場合には、絶対値|βNx|が大きいほど、ドライバの状態が第4グループに属するとの判断の信頼度が高いことを意味する。推定値算出部33は、識別部32aから出力される識別結果αNxを順次取得する。そして、最新の識別結果αNxを含む4つの識別結果αNx,αN-1x,αN-2x,αN-3xを用いて次式1で示される演算を実行する。これにより、識別部32aから出力される4つの識別結果αNx,αN-1x,αN-2x,αN-3xの平均値AVGαNが算出される。なお、nは4である。同様に、推定値算出部33は、識別部32bから出力される識別結果βNxを順次取得する。そして、最新の識別結果βNxを含む4つの識別結果βNx,βN-1x,βN-2x,βN-3xを用いて次式2で示される演算を実行する。これにより、識別部32bから出力される4つの識別結果βNx,βN-1x,βN-2x,βN-3xの平均値AVGβNが算出される。次に、推定値算出部33は、以下の式3及び式4に示される演算を行うことで、推定値D34N,D45Nを算出する。上記式3及び式4に含まれるsignX関数は、Xの符合がである場合は1を出力し、AVGαNの符合が-である場合には-1を出力する。また、Xが零の場合は零を出力する。上記式1で示される推定結果D34N,D45Nの値は、1,-1,0のうちのいずれかになるが、本実施形態では、上記1式のsign関数の変数が零になるのは稀である。したがって、推定結果D34N,D45Nの値は、1か-1のいずれかになると考えて差し支えない。状態推定部34は、推定値D34N,D45N、及び平均値AVGαN,AVGβNに基づいて、ドライバ60の状態を推定する。上述したように、識別結果αNxは、その符合が-である場合には、ドライバ60の状態が第1グループに属することを意味し、符合がである場合には、ドライバ60の状態が第2グループに属することを意味する。したがって、識別結果αNxの平均値AVGαNの符合によって決定される推定値D34Nは、符合が-である場合には、ドライバ60の状態が、第1グループに属することを示し、符合がである場合には、ドライバ60の状態が、第2グループに属することを示す。同様に、識別結果βNxは、その符合が-である場合には、ドライバ60の状態が第3グループに属することを意味し、符合がである場合には、ドライバ60の状態が第4グループに属することを意味する。したがって、識別結果βNxの平均値AVGβNの符合によって決定される推定値D45Nは、符合が-である場合には、ドライバ60の状態が、第3グループに属することを示し、符合がである場合には、ドライバ60の状態が、第4グループに属することを示す。したがって、推定値D34Nが-1であり、推定値D45Nが-1であるときには、ドライバ60の状態が、第1グループ及び第3グループに属すると判断することができる。図3を参照するとわかるように、第1グループは、クラス1~3から構成され、第3グループは、クラス1~4から構成されている。そこで、状態推定部34は、推定値D34Nが-1であり、推定値D45Nが-1である場合には、第1グループ及び第3グループに共通するクラス1~3に、ドライバ60の状態が属していると推定する。また、推定値D34Nが-1であり、推定値D45Nが1であるときには、ドライバ60の状態が、第1グループ及び第4グループに属すると判断することができる。しかしながら、図3を参照するとわかるように、第1グループと第4グループには共通する部分がない。この場合には、状態推定部34は、平均値AVGαNの絶対値|AVGαN|と、平均値AVGβNの絶対値|AVGβN|を比較する。そして、絶対値が大きい方の平均値AVGαN,AVGβNの符合によって規定される推定値D34N,D45Nに基づいて、ドライバ60の状態が属するグループを推定する。例えば、平均値AVGαNの絶対値|AVGαN|の方が、平均値AVGβNの絶対値|AVGβN|よりも大きい場合は、状態推定部34は、第1グループを構成するクラス1~3に、ドライバ60の状態が属していると推定する。一方、絶対値|AVGβN|の方が、絶対値|AVGαN|よりも大きい場合は、状態推定部34は、第4グループを構成するクラス5に、ドライバ60の状態が属していると推定する。また、推定値D34Nが1であり、推定値D45Nが-1であるときには、ドライバ60の状態が、第2グループ及び第3グループに属すると判断することができる。図3を参照するとわかるように、第2グループは、クラス4,5から構成され、第3グループは、クラス1~4から構成されている。そこで、状態推定部34は、推定値D34Nが1であり、推定値D45Nが-1である場合には、第2グループ及び第3グループに共通するクラス4に、ドライバ60の状態が属していると推定する。また、推定値D34Nが1であり、推定値D45Nが1であるときには、ドライバ60の状態が、第2グループ及び第4グループに属すると判断することができる。図3を参照するとわかるように、第2グループは、クラス4,5から構成され、第4グループは、クラス5から構成されている。そこで、状態推定部34は、推定値D34Nが1であり、推定値D45Nが1である場合には、第2グループ及び第4グループに共通するクラス5に、ドライバ60の状態が属していると推定する。状態推定部34は、上述の推定を行い、推定結果RSTNを、検証部35へ出力する。検証部35は、状態推定部34の推定結果RSTNの検証を行う。具体的には、検証部35は、まず、次式5に示される演算を行うことにより、検証値CLNを算出し出力する。推定結果出力部36は、検証部35から出力された検証値CLNの値が-1である場合には、状態推定部34によって推定された推定結果RSTNの信頼性が低いと判断し、当該推定結果RSTNが推定される前に推定された推定結果RSTN-1を外部装置等へ出力する。一方、推定結果出力部36は、検証値CLNの値が1である場合には、状態推定部34によって推定された推定結果RSTNと、当該推定結果RSTNが推定される前に推定された推定結果RSTN-1とを比較する。そして、ドライバ60が属するクラスが連続的に推移したと判断した場合に、推定結果RSTNを外部装置等へ出力する。また、推定結果出力部36は、推定結果RSTNと推定結果RSTN-1とを比較した結果、ドライバ60が属するクラスが連続的に推移したと判断できなかった場合に、以前の推定結果RSTN-1を外部装置等へ出力する。具体的には、本実施形態では、ドライバ60の状態が、クラス1~3に属すると推定されるケース、クラス4,5に属すると推定されるケース、クラス4に属すると推定されるケース、クラス5に属すると推定されるケースが考えられる。そこで、推定結果出力部36は、例えば推定結果RSTN-1が、ドライバ60の状態がクラス1~3に属するとの推定結果であり、次の推定結果RSTNが、ドライバ60の状態がクラス4に属するとの推定結果である場合、或いはドライバ60の状態がクラス1~3に属するとの推定結果である場合には、ドライバ60が属するクラスが連続的に推移したと判断し、推定結果RSTNを外部装置等へ出力する。一方、推定結果出力部36は、例えば推定結果RSTN-1が、ドライバ60の状態がクラス1~3に属するとの推定結果であり、次の推定結果RSTNが、ドライバ60の状態がクラス5に属するとの推定結果である場合には、ドライバ60の状態が属するクラスが連続的に推移したと判断できないとして、推定結果RSTN-1を外部装置等へ出力する。これにより、外部装置等は、例えば推定結果に基づいて、ドライバ60に対して、居眠りを防止するための警報の出力や、休憩を促すアナウンスの出力を行うことが可能となる。以上説明したように、本実施形態では、複数の識別結果αx及び識別結果βxの平均値に基づいて、推定値D34,D45が算出される。そして、推定値D34,D45に基づいて、ドライバ60が属するクラスが推定される。このため、識別結果αx,βxが順次算出される際に、万が一誤差が多い識別結果が出力されたとしても、正確にドライバ60が属するクラスを推定することができる。本実施形態では、上記式5に示される演算が実行されることにより検証値CLが算出される。そして、当該検証値CLに基づいて、推定結果RSTが補正される。具体的には、検証値CLに基づいて、推定結果RSTNの信頼性が低いと判断された場合には、前回推定された推定結果RSTN-1が、推定結果RSTとして出力される。これにより、信頼性が高い推定結果を出力することが可能となる。本実施形態では、推定結果RSTNと推定結果RSTN-1とが比較され、ドライバ60が属するクラスが連続的に推移したと判断された場合に、推定結果RSTNが出力される。また、推定結果RSTNと推定結果RSTN-1とが比較され、ドライバ60が属するクラスが連続的に推移したと判断されなかった場合に、以前の推定結果RSTN-1が出力される。このため、信頼性が高い推定結果を出力することが可能となる。具体的には、ドライバの状態が急峻に変化することは稀であり、ドライバの状態が、あるクラスへ移行してから、次のクラスへ移行するまでに、最低45秒は必要であると考えられている。そのため、本実施形態のように、40秒間にサンプリングされた4つの識別結果αNx,αN-1x,αN-2x,αN-3xと、4つの識別結果βNx,βN-1x,βN-2x,βN-3xに基づいて、ドライバの状態が属するクラスが順次推定される場合には、ドライバの状態が属すると推定されるクラスは連続的に推移するはずである。例えば、推定結果RSTN-1が、ドライバ60の状態がクラス1~3に属するとの推定結果である場合には、次の推定結果RSTNは、ドライバ60の状態がクラス4に属するとの推定結果であるか、或いはドライバ60の状態がクラス1~3に属するとの推定結果であると考えられる。一方、推定結果RSTN-1が、ドライバ60の状態がクラス1~3に属するとの推定結果である場合には、次の推定結果RSTNが、ドライバ60の状態がクラス5に属するとの推定結果であることは考えにくい。そのため、直近の推定結果に対して連続性をもつ推定結果のみを出力することで、信頼性が高い推定結果を出力することが可能となる。《第2の実施形態》次に、本発明の第2の実施形態を、図面を参照しつつ説明する。なお、第1の実施形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。本実施形態に係る状態推定システム10は、推定装置30が、一般的なコンピュータ、又はマイクロコンピュータ等によって実現されている点で、第1の実施形態に係る状態推定システム10と相違している。図4は、状態推定システム10の物理的な構成を示すブロック図である。図4に示されるように、状態推定システム10は、撮影装置20と、コンピュータからなる推定装置30とから構成されている。推定装置30は、CPUCentralProcessingUnit30a、主記憶部30b、補助記憶部30c、表示部30d、入力部30e、インターフェイス部30f、及び上記各部を相互に接続するシステムバス30gを有している。CPU30aは、補助記憶部30cに記憶されているプログラムに従って、後述する処理を実行する。主記憶部30bは、RAMRandomAccessMemory等を含んで構成され、CPU30aの作業領域として用いられる。補助記憶部30cは、ROMReadOnlyMemory、磁気ディスク、半導体メモリ等の不揮発性メモリを含んで構成されている。この補助記憶部30cは、CPU30aが実行するプログラム、及び各種パラメータなどを記憶している。また、撮影装置20から出力される画像情報、及びCPU30aによる処理結果などを含む情報を順次記憶する。表示部30dは、例えばLCDLiquidCrystalDisplayを有している。そして、CPU30aの処理結果を表示する。入力部30eは、入力キーやポインティングデバイスを有している。オペレータの指示は、この入力部30eを介して入力され、システムバス30gを経由してCPU30aに出力される。インターフェイス部30fは、シリアルインターフェイスまたはLANLocalAreaNetworkインターフェイス等を含んで構成されている。撮影装置20は、インターフェイス部30fを介してシステムバス30gに接続される。図5のフローチャートは、CPU30aによって実行されるプログラムの一連の処理アルゴリズムに対応している。以下、図5を参照しつつ、推定装置30が実行する処理について説明する。なお、この処理は、CPU30aが、撮影装置20から画像情報が出力された後に実行される。ステップS101では、CPU30aは、例えば10秒ごとに、撮影装置20から出力される画像情報から、ドライバ60の生体情報を特徴量xNとして抽出する。次のステップS102では、CPU30aは、特徴量xNに基づいて、ドライバ60の状態が、クラス1、クラス2及びクラス3からなる第1グループに属するか、或いはクラス4及びクラス5からなる第2グループに属するかを識別する。そして、識別結果αNx算出する。同様に、CPU30aは、特徴量xNに基づいて、ドライバの状態が、クラス1、クラス2、クラス3及びクラス4からなる第3グループに属するか、或いはクラス5からななる第4グループに属するかを識別する。そして、識別結果βNxを算出する。次のステップS103では、CPU30aは、最新の識別結果αNxを含む4つの識別結果αNx,αN-1x,αN-2x,αN-3xを用いて上記式1で示される演算を実行し、平均値AVGαNを算出する。また、最新の識別結果βNxを含む4つの識別結果βNx,βN-1x,βN-2x,βN-3xを用いて上記式2で示される演算を実行し、平均値AVGαNを算出する。次のステップS104では、CPU30aは、上記式3及び式4に示される演算を行うことで、推定値D34N,D45Nを算出する。次のステップS105では、CPU30aは、推定結果RSTを算出するために、図6のフローチャートに示される処理を実行する。最初のステップS201では、CPU30aは、推定値D34Nが-1か否かを判断する。推定値D34Nが-1である場合にはステップS201:Yes、CPU30aは、ステップS202へ移行する。ステップS202では、CPU30aは、推定値D45Nが-1か否かを判断する。推定値D45Nが-1である場合にはステップS202:Yes、CPU30aは、ステップS203へ移行し、ドライバ60の状態が、クラス1~3のいずれかに属すると推定する。また、ステップS202で、推定値D45Nが1である場合にはステップS202:No、CPU30aは、ステップS204へ移行する。次のステップS204では、CPU30aは、平均値AVGαNの絶対値|AVGαN|と平均値AVGβNの絶対値|AVGβN|とを比較する。そして、絶対値|AVGαN|の方が大きいと判断した場合にはステップS204:Yes、CPU30aは、ステップS205へ移行し、ドライバ60の状態が、クラス1~3のいずれかに属すると推定する。一方、CPU30aは、絶対値|AVGαN|の方が小さいと判断した場合にはステップS204:No、ステップS206へ移行し、ドライバ60の状態が、クラス4,5のいずれかに属すると推定する。また、ステップS201で、推定値D34Nが1である場合にはステップS201:No、CPU30aは、ステップS207へ移行する。ステップS207では、CPU30aは、推定値D45Nが-1か否かを判断する。推定値D45Nが-1である場合にはステップS207:Yes、CPU30aは、ステップS208へ移行し、ドライバ60の状態が、クラス4に属すると推定する。一方、推定値D45Nが1である場合にはステップS207:No、CPU30aは、ステップS209へ移行し、ドライバ60の状態が、クラス5に属すると推定する。ステップS203,205,206,208,209での処理が終了すると、CPU30aは、ステップS106へ移行する。次のステップS106では、CPU30aは、推定結果RSTの検証を行う。具体的には、CPU30aは、次式5に示される演算を行い、検証値CLNを算出する。次のステップS107では、CPU30aは、検証値CLNの値が-1である場合には、推定結果RSTNの信頼性が低いと判断し、当該推定結果RSTNが推定される前に推定された推定結果RSTN-1を外部装置等へ出力する。一方、CPU30aは、検証値CLNの値が1である場合には、推定結果RSTNと、当該推定結果RSTNが推定される前に推定された推定結果RSTN-1とを比較する。そして、CPU30aは、ドライバ60が属するクラスが連続的に推移したと判断した場合に、推定結果RSTNを外部装置等へ出力する。また、CPU30aは、推定結果RSTNと推定結果RSTN-1とを比較した結果、ドライバ60が属するクラスが連続的に推移したと判断できなかった場合に、以前の推定結果RSTN-1を外部装置等へ出力する。以上説明したように、本実施形態では、複数の識別結果αx及び識別結果βxの平均値に基づいて、推定値D34,D45が算出される。そして、推定値D34,D45に基づいて、ドライバ60が属するクラスが推定される。このため、識別結果αx,βxが順次算出される際に、万が一誤差が多い識別結果が出力されたとしても、正確にドライバ60が属するクラスを推定することができる。本実施形態では、上記式5に示される演算が実行されることにより検証値CLが算出される。そして、当該検証値CLに基づいて、推定結果RSTが補正される。具体的には、検証値CLに基づいて、推定結果RSTNの信頼性が低いと判断された場合には、前回推定された推定結果RSTN-1が、推定結果RSTとして出力される。これにより、信頼性が高い推定結果を出力することが可能となる。本実施形態では、推定結果RSTNと推定結果RSTN-1とが比較され、ドライバ60が属するクラスが連続的に推移したと判断された場合に、推定結果RSTNが外部装置等へ出力される。そして、推定結果RSTNと推定結果RSTN-1とが比較され、ドライバ60が属するクラスが連続的に推移したと判断されなかった場合に、以前の推定結果RSTN-1が外部装置等へ出力される。このため、信頼性が高い推定結果を出力することが可能となる。以上、本発明の実施形態について説明したが、本発明は上記実施形態によって限定されるものではない。例えば、上記実施形態では、10秒ごとに特徴量xNが出力される場合について説明した。これに限らず、10秒未満の間隔で、特徴量xNを出力することとしてもよい。上記実施形態では、特徴量をドライバ60の顔の画像から抽出する場合について説明した。これに限らず、特徴量として、ドライバの脈拍、呼吸間隔等の生体情報を用いてもよい。また、特徴量として、車両の進行方向に直交する方向の加速度等を用いてもよい。上記実施形態では、検証値CLを式5に基づいて算出した。この式5は一例であり、検証値CLを算出するための一般式は、例えば次式6で示される。なお、kは定数である。上記実施形態では、推定装置30が2つの識別部32a,32bを有している場合について説明した。これに限らず、推定装置30は、3つ以上の識別部を備えていてもよい。上記各実施形態に係る推定装置30の機能は、専用のハードウェアによっても、また、通常のコンピュータシステムによっても実現することができる。第2の実施形態において推定装置30の補助記憶部30cに記憶されているプログラムは、フレキシブルディスク、CD-ROMCompactDiskReadOnlyMemory、DVDDigitalVersatileDisk、MOMagnetoOpticaldisk等のコンピュータで読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータにインストールすることにより、上述の処理を実行する装置を構成することとしてもよい。また、プログラムをインターネット等の通信ネットワーク上の所定のサーバ装置が有するディスク装置等に格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するようにしても良い。また、プログラムは、通信ネットワークを介して転送しながら起動実行することとしてもよい。また、プログラムは、全部又は一部をサーバ装置上で実行させ、その処理に関する情報を通信ネットワークを介して送受信しながら、上述の画像処理を実行することとしてもよい。上述の機能を、OSOperatingSystemが分担して実現する場合又はOSとアプリケーションとの協働により実現する場合等には、OS以外の部分のみを媒体に格納して配布してもよく、また、コンピュータにダウンロード等しても良い。本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。"