(57)【特許請求の範囲】
【請求項１】
移動体の外界環境を検出し、この外界環境に含まれるリスクを学習的に認識するオンラインリスク学習システムであって、
上記リスクの事前学習結果を保持するベースユニットと、上記リスクのオンラインでの学習結果を保持する学習ユニットとを備え、
上記ベースユニットによるリスクレベルと上記学習ユニットによるリスクレベルとを所定の融合率で融合し、オンラインでの唯一のリスクレベルとして出力し、
上記学習ユニットの学習回数が設定値に達するまでは上記融合率を増加させ、上記融合率が上記設定値に達した後は上記融合率を一定値とすることにより、上記学習ユニットの偏学習が生じる特定の走行環境に偏った運転から異なる走行環境に遭遇した場合であっても上記ベースユニットの事前学習結果の忘却を回避するよう構成することを特徴とするオンラインリスク学習システム。
【請求項２】
上記融合率を、上記ベースユニットの学習パラメータと上記学習ユニットの学習パラメータとの類似度に応じて制御することを特徴とする請求項１記載のオンラインリスク学習システム。
【請求項３】
上記融合率を、上記学習ユニットの学習回数と、上記ベースユニットの学習パラメータと上記学習ユニットの学習パラメータとの類似度とを組み合わせて制御することを特徴とする請求項１記載のオンラインリスク学習システム。
【請求項４】
上記ベースユニットの事前学習結果と上記学習ユニットのオンライン学習結果とを融合して保持する融合ユニットを設け、該融合ユニットから上記唯一のリスクレベルを出力することを特徴とする請求項１〜３の何れか一に記載のオンラインリスク学習システム。
【請求項５】
上記ベースユニットと上記学習ユニットとを並列動作させ、各ユニットから出力されるリスクレベルを上記融合率で融合して上記唯一のリスクレベルとして出力することを特徴とする請求項１〜３の何れか一に記載のオンラインリスク学習システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動車等の移動体の外部環境に含まれるリスクを適応的に学習して認識するオンラインリスク学習システムに関する。
【背景技術】
【０００２】
近年、自動車等の移動体における予防安全技術として、カメラを搭載して外界環境を撮像し、撮像した画像を処理して外界環境に含まれる危険度（リスク）の情報を認識し、ドライバに警告する、又は運転をアシストするといった技術が開発されている。
【０００３】
このような危険情報の認識技術は、例えば、特許文献１に開示されている。特許文献１の技術は、車両周囲の環境の対象物に対して、その種類や属性毎に危険度パラメータを設定し、この危険度パラメータに基づいて危険度を演算するものである。
【０００４】
特許文献１に開示されているような従来の技術では、歩行者、対向車、障害物、白線等といった危険に結びつく要因を設定し、それらに基づいてリスクの認識を行っており、実際のシステムとしては、開発者が想定したリスク要因や認識を予めシステム内に組み込んでおくという形で実現されている。
【０００５】
しかしながら、自動車の走行環境のような実際の環境は、天候の変化、歩行者、車、路上の構造物等の存在といったように多様であり、更には、運転する人間も多様であるため、従来の予め設定した一つの認識モデルでは限界があり、危険に結びつく要因についての認識が高精度で行われなければ、全体としてのリスクを認識できないばかりでなく、予め想定していた以外の危険な場面では認識できないという問題がある。
【０００６】
このため、本出願人は、特許文献２において、実際の環境下での経験をシステムが自律的に学習し、多様な外界環境に対応して危険度の認識を可能とすることのできるオンライン学習システムを提案している。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００３−８１０３９号公報
【特許文献２】特開２００８−２３８８３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献２の技術は、実際の環境下での経験をシステムが自律的に学習するため、ユーザの使用環境に合わせてシステムを特化させることが可能である反面、ユーザが特定の環境に偏った運転を行うと、偏学習が生じ、製品出荷段階で設定されていた事前学習結果が失われる（忘却される）虞がある。このため、ユーザの普段の使用環境と異なる環境に遭遇した場合、必ずしも十分な認識性能を得られない可能性がある。
【０００９】
本発明は上記事情に鑑みてなされたもので、偏学習によるオンラインリスク認識の性能低下を防止することのできるオンラインリスク学習システムを提供することを目的としている。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明によるオンラインリスク学習システムは、移動体の外界環境を検出し、この外界環境に含まれるリスクを学習的に認識するオンラインリスク学習システムであって、上記リスクの事前学習結果を保持するベースユニットと、上記リスクのオンラインでの学習結果を保持する学習ユニットとを備え、上記ベースユニットによるリスクレベルと上記学習ユニットによるリスクレベルとを所定の融合率で融合し、オンラインでの唯一のリスクレベルとして出力し、上記学習ユニットの学習回数が設定値に達するまでは上記融合率を増加させ、上記融合率が上記設定値に達した後は上記融合率を一定値とすることにより、上記学習ユニットの偏学習が生じる特定の走行環境に偏った運転から異なる走行環境に遭遇した場合であっても上記ベースユニットの事前学習結果の忘却を回避するよう構成することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、偏学習が生じた場合であってもオンラインリスク認識性能の低下を防止することができ、ユーザの使用環境に合わせて特化しつつ基本性能を維持することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の第１形態に係り、オンラインリスク学習システムの構成図
【図２】同上、特徴量抽出の画像領域を示す説明図
【図３】同上、状態認識の概念図
【図４】同上、１次元自己組織化マップによる学習の概念図
【図５】同上、自己組織化マップの学習後の分布を示す説明図
【図６】同上、リスクレベルとリスク確率との関係を示す説明図
【図７】同上、リスク伝播の説明図
【図８】同上、情報伝播の説明図
【図９】同上、リスク情報の拡張を示す説明図
【図１０】同上、融合率及び融合パラメータ計算処理のフローチャート
【図１１】同上、各ニューロンの学習回数を示すヒストグラム
【図１２】同上、融合率テーブルの説明図
【図１３】同上、認識結果の出力例を示す説明図
【図１４】本発明の実施の第２形態に係り、オンラインリスク学習システムの構成図
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明の実施の形態を説明する。  
本発明のオンラインリスク学習システムは、自動車等の移動体に搭載され、外界環境の検出結果からその環境内に含まれる危険度（リスク）に係る情報を適応的に認識するシステムであり、事前には想定していなかった環境に対しても、適応的にリスク認識が行えるようにオンラインで成長していく。
【００１４】
外界環境のセンシングは、システムの入力系として備える各種センサデバイス、例えば、外界を単眼視やステレオ視で撮像するカメラ、レーザやミリ波等のレーダ装置からのセンシング情報を用いることが可能である。つまり、本システムは、基本的に外界環境を検出するセンサデバイスに依存するものではなく、広義にはセンサデバイスより得られる外界環境情報とリスク情報との相関関係を学習する学習システムである。
【００１５】
本形態においては、オンラインリスク学習システムを自動車等の車両に適用し、車載カメラによって外界を撮像した画像情報と、ドライバの運転操作や車両の運転状態等の車両情報とを用いてリスク情報を抽出する例について説明する。すなわち、本形態のオンラインリスク学習システムは、画像から得られた情報から直接リスクとの関連付けを行うことでリスクを認識すると共に、その関連付けを実際の走行で遭遇した環境から学習し、適応的にリスク認識を行う。
【００１６】
具体的には、ドライバを認識器の学習においての教師とし、ドライバの運転操作からリスク情報を抽出し、その運転操作に基づくリスク情報と、カメラから得られる画像情報との関連を人工知能技術を用いて学習させる。例えば、ドライバが歩行者を回避するような操作行動を行ったとき、本システムは、その状況が危険であると判断し、そのときに得られた画像は危険であるということを教える。
【００１７】
これにより、次の機会に同じような状況（画像）がシステムに入ってきた場合に危険であるという出力を行い、ドライバに警告を与えることができる。また、本システムでは、リスクを確率的に取り扱っている。このことにより、似たような状況でもリスクが異なる場合や、得られている画像情報だけでは判断が出来ない本質的に確率的なリスクも取り扱うことが可能になる。
【００１８】
以下、図１を参照して本形態のオンラインリスク学習システムについて説明する。本形態におけるオンラインリスク学習システム１は、単一のコンピュータシステム或いはネットワーク等を介して接続された複数のコンピュータシステムで構成されている。車両１００の外界環境を検出するセンサとしては、ＣＣＤやＣＭＯＳ等の撮像素子を有するカメラ２を用いている。
【００１９】
このオンラインリスク学習システム１は、オフラインでの事前学習によるリスク認識機能を保持するベースユニット３、オンラインで学習したリスク認識機能を保持する学習ユニット４、ベースユニット３のリスク認識機能と学習ユニット４のリスク認識機能とを融合し、融合した認識機能でリスク認識を行う融合ユニット５を主要構成として備えている。ベースユニット３及び学習ユニット４は、それぞれのユニットの機能としてリスクレベルを算出するリスクレベル算出部３３，４３が備えられている。
【００２０】
また、オンラインリスク学習システム１は、各ユニット３，４，５に対するデータ計算用として、車両１００の操作量からリスク学習における教師情報を作成し、学習ユニット４に送出する教師作成部６、車載カメラ２で撮像した画像の特徴量を抽出する画像特徴量抽出部７、画像特徴量を状態量に変換し、この状態量からリスク学習情報を融合ユニット５の認識結果に基づいて計算し、ベースユニット３及び学習ユニット４に送出する融合ユニット計算部８、画像特徴量からリスク学習の学習量を計算し、学習ユニット４に送出する学習量計算部９、ベースユニット３と学習ユニット４とを融合させるための融合計算を行う融合計算部１０を備えている。
【００２１】
ベースユニット３と学習ユニット４は、基本的に同じ枠組みのリスク認識機能を有している。詳細は後述するが、本システムは、車載カメラ２で撮像した外界画像を主として抽出した特徴量を状態という量に変換してクラスタリングを行い、車両操作情報を教師として各状態に対するリスクの確率密度分布を学習したリスク分布テーブルを用いてリスクを認識する。本実施の形態においては、階層型ニューラルネットワークの一種である自己組織化マップ（SOM;Self-Organization Maps）を用いて、ＳＯＭの各ニューロンを状態として認識する。
【００２２】
すなわち、ベースユニット３及び学習ユニット４は、製品出荷時の初期状態では、それぞれ、事前学習で形成したＳＯＭとリスク分布テーブルとを保有しており、一般的なユーザを想定した同じ認識性能、或いは個人の運転傾向に合わせる等して意図的に異なる認識性能を有するように設定されている。以下では、適宜、ベースユニット３が保有するＳＯＭ及びリスク分布テーブルをベースＳＯＭ３１及びベースリスク分布テーブル３２と記載し、学習ユニット４が保有するＳＯＭ及びリスク分布テーブルを学習ＳＯＭ４１及び学習リスク分布テーブル４２と記載する。
【００２３】
市場におけるオンライン動作では、車両走行に伴うシステム稼働時間の経過と共に、学習ユニット４のみが学習を行い、学習ＳＯＭ４１及び学習リスク分布テーブル４２がユーザの使用環境に合わせて適応的に更新される。一方、ベースユニット３は、一般的に想定される様々な状況に対して、所定の認識性能を確保するように事前学習されており、市場におけるオンライン動作に対して、あくまで事前学習で得た知識（ベースＳＯＭ３１及びベースリスク分布テーブル３２）を保持する。
【００２４】
この場合、ユーザが市街地走行に偏った運転をする、郊外での交通量の少ない環境での走行を主とする運転をするといったように、特定の走行環境に偏った運転を行うと、学習ユニット４で偏学習が生じる虞がある。この偏学習が生じると、ユーザの普段の使用環境と異なる走行環境に遭遇した場合、十分な認識性能を得られない可能性がある。
【００２５】
従って、本システムでは、事前知識を保持するベースユニット３の機能と、ユーザの使用環境に応じた学習の進行によって認識性能が変化する学習ユニット４の機能とを融合ユニット５で融合し、最終的に融合ユニット５でリスク認識を行うようにしている。すなわち、融合ユニット５に、ベースＳＯＭ３１と学習ＳＯＭ４１とを融合した融合ＳＯＭ５１を持たせ、この融合ＳＯＭ５１の各ニューロンに対応するリスクレベルとの関係を保持する融合リスクレベルテーブル５２から唯一のリスクレベルを算出する。
【００２６】
これにより、学習ユニット４で偏学習が生じた場合であっても、製品出荷時の初期の性能を維持するベースユニット３の認識性能をシステムに反映してリスク認識性能の低下を排除することができ、ユーザの使用環境に合わせて特化しつつ基本性能を維持することが可能となる。
【００２７】
以下、オンラインリスク学習システム１における各処理の詳細について、（Ａ）車両操作情報から教師情報を生成する教師情報作成処理、（Ｂ）画像から特徴量を抽出する画像特徴量抽出処理、（Ｃ）画像特徴量を状態量に変換し、ＳＯＭの勝者ニューロンを決定する融合ユニット計算処理、（Ｄ）画像特徴量からＳＯＭの学習量を計算するＳＯＭ学習量計算処理、（Ｅ）ベースユニット３のリスクレベル及び学習ユニット４のリスクレベルを計算するリスクレベル計算処理、（Ｆ）ベースユニット３と学習ユニット４とを融合させてリスクを認識する融合リスク認識処理の項目に分けて説明する。
【００２８】
（Ａ）教師情報作成処理
教師作成部６は、学習ユニット４の学習リスク分布テーブルに対する教師情報を、車両操作情報に基づいて作成する。本形態では、車両操作情報からのリスク抽出に際しては学習を行わず、教師作成部６は、予め設定したルールを用いてドライバの操作情報からリスク情報を抽出するようにしている。このルールに従ったリスク情報の抽出処理においては、リスク情報をレベル付きの１次元データとして扱う。
【００２９】
具体的には、リスクのレベルを、例えば０〜１０（整数値）の１１段階とし、値が大きいほどリスクが高いことを表現する。但し、ここでのリスク情報は、３０Ｈｚの各フレーム毎といったように、一定時間毎にリスクを認識しようとするものではない。これは、実際のドライバの操作は、リスクだけにより行われているわけではなく、リスクに伴う操作を行う割合は、全走行中の例えば１０%にも満たない一部であろうと考えられるからである。
【００３０】
すなわち、ドライバ操作データからのリスク情報の認識は、ドライバの操作行動に影響を与えるような、ある程度大きなリスクがあったときにのみ、それがわかることを第一の目標とする。そのため、リスク０に関しては、出力はリスクがないということだけでなく、教師情報がないということも表している。
【００３１】
また、リスク認識のルールは、できるだけ現実に合うように任意に設定するという立場を取り、以下の（１）〜（５）に示すルールを並列化して各条件の中で最も大きな値のリスクを教師リスクとする。
【００３２】
（１）急ブレーキを踏んだか
フレーム間のブレーキ圧力の差分に応じてリスクレベルを設定する。例えば、ブレーキ圧力の差分が１×１０2ｋＰａ以上ならリスク有り、１×１０2ｋＰａでリスク５、１×１０3ｋＰａでリスク１０とし、リスク５とリスク１０との間は、ブレーキ圧力の差分に応じて線形に設定する。
【００３３】
（２）ブレーキを強く踏んだか
所定の車速以上で、ブレーキ圧力に応じてリスクレベルを設定する。例えば、車速１０ｋｍ／ｈ以上で、ブレーキ圧力が２０×１０2ｋＰａ以上の場合はリスク１０、ブレーキ圧力が１０×１０2ｋＰａ以上の場合はリスク６、ブレーキ圧力が５×１０2ｋＰａ以上の場合はリスク２とする。
【００３４】
（３）急ハンドルを切ったか
ウインカーが出ていない状態で、フレーム間のハンドル角の差分の絶対値が設定値（例えば１０ｄｅｇ）以上の場合、リスク５とする。
【００３５】
（４）アクセルを急に離したか
所定の車速以上で、フレーム間のアクセル開度の差分に応じてリスクレベルを設定する。例えば、車速５ｋｍ／ｈ以上でアクセル開度の差分が−１％以下の場合、リスク４とする。
【００３６】
（５）アクセルを踏んでいるか
加速中のアクセル開度に応じてリスクレベルを設定する。加速中であるか否かは、車速の微分値で判断し、車速の微分値０以上（加速中）でアクセル開度１％以下の場合、リスク２とする。
【００３７】
以上のルールは、当然ながら、追加・削除が可能であり、より現実に合うように調整することができる。また、以上のルールを自動生成するアルゴリズム、以上のルールに更にファジィ要素を取り入れる等して、「ドライバデータからのリスク認識の学習的獲得」を行うことも可能である。
【００３８】
（Ｂ）特徴量抽出処理
画像特徴量抽出部７は、車載カメラ２からの撮像画像を入力し、ノイズ除去、ゲイン調整、γ補正等のビデオプロセス処理を経て所定の階調のデジタル画像に変換し、この画像の特徴量を抽出する。すなわち、得られた画像から、エッジ情報、動き情報、色情報等の特徴量を抽出し、それらの情報をＮ次元ベクトルとして保持する。
【００３９】
尚、このＮ次元ベクトルには、画像特徴量以外の車両情報、例えば、車速やヨー角の変化といった情報も含めるようにしても良い。また、本形態で扱う画像データは、単眼のカラーカメラで撮像した画像とするが、赤外カメラから得られる画像やステレオカメラから得られる距離画像であっても良い。また、前述したように、レーザやミリ波等からの情報を用いることも可能であり、その場合、画像特徴量は、より一般的には、外界環境特徴量とも呼ぶべきものである。
【００４０】
この画像特徴量の抽出は、以降のリスク認識のためのデータ抽出であるが、一般に、リスク認識に相関がないデータは認識に悪影響を与える。つまり、この特徴量抽出処理においては、むやみに特徴量を増やすということは得策でなく、逆に、必要な特徴量を用いないことも精度を悪化させる。
【００４１】
そのため、どの特徴量を用いるべきかという特徴量選択が課題として発生するが、前述したように、特徴量選択については、それを学習的に得る場合は、以下に説明するリスク認識の上位の学習が必要になり、計算量・メモリ容量的にオンラインでの学習には不利である。
【００４２】
従って、本形態では、ここでの特徴量抽出部分は固定として扱う例について説明する。学習する場合には、システムの認識率を基準として評価し、各特徴量の組み合わせを最適化すれば良く、これには、組み合わせの全探索、遺伝的アルゴリズム（GA;Genetic Algorithm）等の発見的な探索法等、既存の最適化手法を用いることができる。
【００４３】
本形態においては、画像特徴量抽出部７で予め設定した種類の特徴量を抽出している。ここでは、処理を３つの要素に分け、各要素毎に設定した特徴量を抽出する。３つの要素は、前処理、特徴量計算、領域設定である。具体的には、以下に示すように、前処理で６種類、特徴量計算で１０種類、領域設定で４種類のデータを抽出し、それらの組み合わせで計２４０（６×１０×４）次元のデータを抽出する。
【００４４】
＜前処理＞
入力画像に対して、ソベル、縦方向ソベル、横方向ソベル、フレーム間差分、輝度、彩度の６種類のフィルタ処理を行い、６次元の特徴量データを抽出する。
【００４５】
＜特徴量＞
フィルタ処理された画像の画素値に対して、平均、分散、最大値、最小値、横方向重心、縦方向重心、コントラスト、均一性、エントロピー、フラクタル次元の１０種類の計算処理を行い、１０次元の特徴量データを抽出する。
【００４６】
＜領域＞
図２に示すように、画像内に領域Ａ０を設定し、この設定領域Ａ０の全体、設定領域Ａ０内の左側の領域Ａ１、右側の領域Ａ２、中央の領域Ａ３の４種類の領域について、４次元の特徴量データを抽出する。
【００４７】
尚、以上の２４０次元の特徴量は、オンラインシステムの演算性能に応じて、使用する次元を絞るようにしても良い。例えば、画像以外にも車両データも用いて、画面全体のソベルの平均、分散、画面全体のフレーム間差分の平均、分散、車速、ハンドル角の６次元の特徴量を抽出するようにしても良い。
【００４８】
また、以上の特徴量抽出処理においては、各特徴量は正規化しているが、理論上の範囲は非効率であるため、事前に各特徴量の分布を評価しておき、その評価結果を元に最大値及び最小値を設定し、０〜１の数値に正規化している。その場合、最大値・最小値を動的に変化させるようしても良く、例えば、最大値を超える値もしくは最小値を下回る値が入力された場合には、それぞれ範囲を拡大するように最大値・最小値を変更する。逆に、しばらく最小値、最大値付近のデータが入ってこなかった場合は、範囲を狭めるように変更する。
【００４９】
また、ここでは基本的な特徴量を用いたが、過去のフレーム情報を用いて動き情報を算出する等、特徴量の時系列的な変動を計算し、その情報を特徴量として用いることもできる。更に、全体としてのリスク認識の精度向上のためには、この特徴量抽出処理に高精度の画像処理を入れることもでき、例えば、歩行者認識結果、道路の白線認識結果、障害物認識結果等を含めて、ここでの抽出データに組み込むようにしても良い。このような意味では、本システムは、個々の外界認識結果を統合し、リスクを認識するシステムと捉えることもできる。
【００５０】
（Ｃ）融合ユニット計算処理
融合ユニット計算部８は、得られたＮ次元の特徴量ベクトルを１次元の状態という量に変換する。状態とは、入力された画像を走行している場所や、天候、走行状態などによりシーン分けしているイメージになる。実際には、オンライン学習時、今はどのシーンであるかを明示的に教師することはできないため、入力データを状態数Ｍのクラスにクラスタリングしている。つまり、状態の認識は、入力された画像特徴量データから状態という量を出力する識別器の機能によって処理される（但し、この識別器の出力は、１状態を確定せずに確率的に扱うこともできる）。
【００５１】
本処理における学習は、この識別器の内部構造を入力データ、教師データを用いて実環境に適応させることになるが、ここでの学習における教師は、この入力データがどの状態であるかを直接教えるのではなく、出力された状態から認識されるリスクを、できるだけ効率的に、且つ精度良く認識できるようにするものである。
【００５２】
識別器としての認識処理は、入力データに対してプロトタイプ型の識別処理を行う。ここで、状態番号をＳとすると、各状態は代表値を持ち、これをｐｒｏｔs(i)とする。状態代表値ｐｒｏｔs(i)は、Ｎ次元のベクトルであり、ｉ＝０，１，…，Ｎ−１となる。
【００５３】
入力データ（特徴量ベクトル）をＩｎ(i)とすると、入力ベクトルは、以下の（１）式に示すように、状態代表値ｐｒｏｔs(i)との距離Ｌ(s)により求められ、どの状態に属するかが認識される。  
Ｌ(s)＝(Σi(ｐｒｏｔs(i)−Ｉｎ(i))2)1/2  …（１）
【００５４】
入力データの属する状態（状態番号）Ｋは、以下の（２）式に示すように、距離Ｌ(s)の最小値で求められ、入力ベクトルが一番近い状態代表値の状態であると認識される。  
Ｋ＝ｍｉｎs(Ｌ(s))  …（２）
【００５５】
図３は、Ｎ次元中の３次元に注目した場合を示しており、入力データは、状態Ｓ６より状態Ｓ１に近いため、Ｓ１の状態であると認識される。以上が基本的な状態認識となるが、これは入力データがどの状態であるかを確定させていることになる。
【００５６】
この場合、図３では、状態Ｓ１と状態Ｓ６とでは、距離はそれほど違いはないが、若干、状態Ｓ１との距離が近いことで、入力データは状態Ｓ１であると認識される。つまり、状態Ｓ１と状態Ｓ６との距離がほぼ同じ領域においては、認識が不安定になる可能性がある。
【００５７】
従って、更に拡張し、状態が確率的であるとして扱うことで、認識の不安定さを解消することができる。すなわち、入力データが状態ｓである確率をＰ(s)とすると、状態の確率は、距離Ｌ(s)を用いて、以下の（３），（４）式で求める。ここで、σはパラメータであり、小さくするほど状態を確定的にする効果がある。  
Ｐ(s)＝(ｅｘｐ(−Ｌ(s)／σ))／ｚ  …（３）
ｚ＝Σsｅｘｐ(−Ｌ(s)／σ)  …（４）
【００５８】
このように、状態を入力データとの距離に応じた尺度で確率的に決定した場合、以後の計算で全ての状態について計算する必要がある。従って、計算量を削減するため、一定値以下の確率は０とし、計算として扱わないようにしても良い。
【００５９】
尚、Ｐ(s)の定義において、ｓ＝Ｋのときだけ１、それ以外を０とすれば、状態を確定したときと同じになる。
【００６０】
各状態は、ＳＯＭの学習をベースとして代表値が更新され、学習ユニット４の学習ＳＯＭ４１が更新される。ＳＯＭは、Ｍ次元（通常は２次元）に並べられたニューロンが、それぞれベクトル値（通常入力との結線の重みと呼ばれる）を持ち、入力に対して勝者ニューロンがベクトルの距離を基準として決定され、ベースユニット３及び学習ユニット４に出力される。本実施の形態においては、融合ユニット５の融合ＳＯＭ５１を基準として勝者ニューロンが決定される。
【００６１】
（Ｄ）ＳＯＭ学習量計算処理
学習量計算部９は、学習ユニット４が保持する学習ＳＯＭ４１に対して、融合ＳＯＭ５１の勝者ニューロンと同じ番号の勝者ニューロン及びその周辺のニューロンの参照ベクトル値が入力ベクトルに近づくよう、更新量を計算する。この計算を繰り返して、学習ＳＯＭ４１が入力データの分布を最適に表現できるように教師無しで学習してゆく。１次元ＳＯＭによる学習のイメージを、図４に示す。
【００６２】
本システムにおいては、ＳＯＭによる学習は、以下のようになる。但し、本システムにおいては、ニューロン（状態）は１次元につながっているものとする。勝者ニューロンの状態番号をＫとすると、代表ベクトルｐｒｏｔsは、以下の（５）式に従って更新（学習）される。  
ｐｒｏｔs(i)→ｐｒｏｔs(i)＋α(Ｉｎ(i)−ｐｒｏｔs(i)  …（５）
【００６３】
ここで、（５）式におけるαは、更新の重みを示す学習率係数であり、以下の（６）式で表される。  
α＝ａ・ｂ(t)・ｃ(Ｄ(s,K),ｔ)・ｅ(t)  …（６）
但し、ａ    ：学習係数
ｂ    ：時間減衰係数
ｃ    ：領域減衰係数
Ｄ(s,K)：更新対象のニューロンと勝者ベクトル間のつながりにおける距離
ｅ    ：教師情報係数
【００６４】
（６）式における各パラメータａ，ｂ，ｃは、通常のＳＯＭでも用いられるパラメータであり、時間減衰係数ｂは、学習経過時間ｔ（通常何回目の更新かを表す）の関数であり、一般には時間ｔの増加につれ減衰する。また、距離Ｄ(s,K)は、特徴量空間上での距離ではなく、例えば、図４においては、勝者ニューロンの隣のニューロンは距離１、その隣は距離２となる。
【００６５】
一方、領域減衰係数ｃは、その距離Ｄ(s,K)の関数であり、距離Ｄ(s,K)が大きくなる程、値が小さく、ある一定以上の距離Ｄ(s,k）については更新されないように設定される。また、領域減衰係数ｃは、時間ｔの関数でもあり、時間ｔが大きくなる程、値が小さくなる。更に、本システムでは、教師情報を示す教師情報係数ｅ(t)を導入するが、これについては後述する。
【００６６】
このように、ＳＯＭの学習アルゴリズムでは、学習初期は、広範囲のニューロンが入力データに近づくように更新され、学習が進むにつれ、更新されるニューロン数、更新量とも少なくなり、最終的には、学習率係数α（更新の重み）が０になり、学習が終了する。尚、初期状態では、通常、ニューロンはベクトル空間上の中心付近にランダムに配置される。
【００６７】
図５に、学習後のＳＯＭの分布例を示す。実際の特徴量空間は２４０次元であるが、図５では、そのうちの３次元のみを表しており、グラフの各点が入力データを示している。実際には、各点は色つきの点として表現され、色によってリスクの大きさを表している。黒い点が各状態の代表ベクトルで、それらを結ぶ黒線がＳＯＭのつながりである。
【００６８】
以上では、入力データの分布を最適に表現できる学習法について述べてきたが、実際に求められるのは、リスクを認識する上で入力データの分布を最適に表現できることである。ＳＯＭは、本来、教師なしの学習法（入ってきたデータを均等に扱い学習していく）であるが、本システムにおいては、リスクを認識する上での効率的な学習として、前述の教師情報係数ｅ(t)によるリスク情報を与えた学習を行う。
【００６９】
詳細は後述するが、リスクは、認識した状態のリスク確率という形で認識される。これは、その状態が、リスクをどの程度の確率で持つかということを表したものである。具体的な学習法としては、時刻ｔでの入力データがドライバ情報から得られたリスクレベルＲという教師情報を持つ場合、認識された状態が持つリスク確率においてリスクレベルＲの確率が高ければ教師情報係数ｅ(t)を大きくし、小さければ、教師情報係数ｅ(t)を小さくする。また、教師情報が得られない場合には、教師情報係数ｅ(t)を小さくするという処理にする。
【００７０】
これにより、学習を進めるうちに、認識された状態は、そのときのリスクを高確率で持つようになり、つまりはリスクの認識精度が上がっているということになる。具体的な教師情報係数ｅ(t)の設定は、次のリスク認識処理において説明する。
【００７１】
また、状態を確率的に求めた場合の学習については、勝者ニューロンを確率に応じた重みで表現し、その重みに応じた更新量により更新を行う。但し、計算量が増大するという問題があるので、本システムでは、学習時については、勝者ニューロンを入力データに一番近い状態に確定させて学習を行っており、一定値以下の確率の状態については、自身を勝者とする更新は行わない。
【００７２】
（Ｅ）リスクレベル計算処理
ベースユニット３及び学習ユニット４は、各リスクレベル算出部３３，４３において、状態量に応じたリスクレベルを、それぞれのリスク分布テーブル３２，４２を参照して計算する。前述したように、各状態はそれぞれリスク確率分布を持つため、状態ｓでのリスクの確率分布をｐ(Ｒ│ｓ)と表すことにする。尚、ここでのリスクは、教師作成部６でのリスクと対応しており、１１段階のレベルに分けているので、リスクレベルＲとリスク確率（分布）ｐ(Ｒ│ｓ)とは、例えば図６に示すような関係で表される。
【００７３】
リスク出力は、基本的にこのリスク確率ｐ(Ｒ│ｓ)を出力することになるが、出力結果を例えば警報や表示などに使う場合には、確率分布のままでは使いにくいため、リスクレベルとしては、以下の（７）式で示される期待値Ｅを計算する。  
Ｅ＝ΣRＲ・ｐ(Ｒ│ｓ)  …（７）
【００７４】
また、状態を確率的に取り扱った場合、期待値Ｅは、以下の（８）式のようになる。  
Ｅ＝ΣsΣRＰ(s)・Ｒ・ｐ(Ｒ│ｓ)  …（８）
【００７５】
リスク確率は、学習ユニット４にて学習され、逐次更新される。基本的には、リスク確率は過去に経験したリスクレベルの頻度分布を用いて算出するが、本システムは、オンライン学習なので無限遠過去のデータまで持つことは難しく、また遠い過去の経験に現在と同じ重要度を持たせることは好ましくないと考えられる。従って、ここでは、以下の方法でリスク確率を更新する。
【００７６】
時刻ｔでの状態ｓtのリスク確率をｐt(Ｒ│ｓt)としたとき、以下の（９）式に従って、リスク確率を更新する。  
ｐt+1(Ｒ│ｓt)＝ｐt(Ｒ│ｓt)＋β…（９）
【００７７】
更に、リスク確率ｐt+1(Ｒ│ｓt)は、以下の（１０）式に従って正規化する。  
ｐt+1(Ｒ│ｓt)←ｐt+1(Ｒ│ｓt)／ΣRｐt+1(Ｒ│ｓt)  …（１０）
【００７８】
尚、状態の更新は、その時刻の状態のみである。また、状態を確率的に扱う場合は、各状態においてβをｐ(ｓt)・βとして計算する。ここで、βは定数であり、この値が大きいほどより現在の情報を重要視することになる。
【００７９】
ここで、与えられる教師リスクについては、教師作成部６の説明で述べたように、各フレーム毎に得られるとは限らない。リスクレベルが高い場合には、ドライバデータからリスク情報が得られる場合が多いが、リスクレベルが低い場合には、特に教師情報が得られる可能性が小さくなってしまうという問題がある。
【００８０】
この問題に対して、本システムでは、教師リスク情報を時間軸方向で伝播させることで対処するようにしている。これは、ある時刻に教師リスク情報が得られた場合は、その前の時刻もその時刻と同じではないまでも危険であるという因果関係に基づくものであり、この因果関係を用いて教師リスク情報を伝播させる。
【００８１】
この場合、過去に情報を伝播させるには、伝播させる分のすべての過去の状態遷移を記憶している必要があるが、リアルタイムでの学習を前提としたとき、記憶容量と計算量がネックとなる。そこで、本システムでは、強化学習の際に用いられるＴＤ(Temporal Difference)誤差を考慮した伝播により、リスク確率を更新している。
【００８２】
強化学習は、その時々の状態に対しての明示的な行動の指示ではなく、行った行動に対しての報酬によって学習を行い、この先得られるであろう報酬の総和が最大となる行動をその時々で選択する学習法であり、時刻ｔにおける実際の報酬と報酬の予測値の差をＴＤ誤差(TD-ERROR)と呼び、これを０とするように学習が行われる。本システムのリスク情報は、この強化学習の報酬に相当し、図７に示すように、或るシーンでの状態遷移を考えると、状態Ｓ１に至る状態Ｓ２，Ｓ７，…にもリスクがあるはずであると考えられ、リスク情報の伝播を行う。
【００８３】
この場合、伝播は、現在の状態から一つ前のフレームへ伝播させるだけで良く（つまり計算も記憶も１フレーム前との関係だけ扱えば良い）、一回の経験では、リスク情報は充分な過去まで伝播しないものの、同じような経験を繰り返すことで、徐々にリスク情報が伝播し、その因果関係を学習することができる。また、リスク情報の伝播は、図８に示すように、同じリスクレベルの時刻ｔの状態Ｓtから時刻ｔ−１の状態Ｓt-1への伝播のみではなく、異なるリスクレベルの状態間においても伝播させるようにする。但し、リスクレベル０は、リスクがないという他に、リスク情報がないという場合も含むため、伝播はさせない。
【００８４】
伝播によるリスク確率ｐ(ｒ│ｓt-1)の更新は、以下の（１１）式によって行われる。  
ｐ(ｒ│ｓt-1)＝ｐ(ｒ│ｓt-1)＋η・(ＲＩ(ｒ)＋γ・ｐ(ｒ│ｓt)−ｐ(ｒ│ｓt-1))
＋ｈ・η・(γ・ｐ(ｒ−１│ｓt)−ｐ(ｒ−１│ｓt-1))
＋ｈ・η・(γ・ｐ(ｒ＋１│ｓt)−ｐ(ｒ＋１│ｓt-1))  …（１１）
但し、ｈ：リスクレベル方向の伝播の大きさを表すパラメータ
γ：時系列の伝播の大きさを表すパラメータ
η：一回の学習での更新の大きさを表すパラメータ
【００８５】
ここで、時刻ｔで得たリスク情報を、リスクレベルｒを用いてＲＩ(ｒ)と表している。前述したように、教師作成部６で扱うリスク情報は、０〜１０の１１段階の中の或る一つのリスクレベルに対して得られるものとしている。すなわち、時刻ｔで得られたリスク情報がリスクレベルＱとすると、（１２），（１３）式のように表される。  
ＲＩ(ｒ)＝１  （ｒ＝Ｑ）  …（１２）
ＲＩ(ｒ)＝０  （ｒ≠Ｑ）  …（１３）
【００８６】
一方、このリスク学習におけるリスク情報ＲＩ(ｒ)は、図９に示すように、実際はそのリスクレベル付近のリスクも存在すると考えて拡張を行っている。この拡張は、具体的には、隣のリスクレベルをパラメータｇ（ｇ＜１）を用いてｇ倍、そのまた隣のリスクレベルをｇ＊ｇ倍するという操作を行っており、この操作には、限られた教師データをさらに有効に使えるという効果がある。また、リスクレベル方向の伝播の大きさを表すｈは通常、リスク情報の拡張に用いたｇと同じ値としている。
【００８７】
リスク確率の更新後は、融合ユニット計算部８における学習処理で用いた教師情報係数係数ｅ(t)を設定する。この教師情報係数ｅ(t)は、以下の（１４），（１５）式に従って設定される。時刻ｔで教師作成部６から得られるリスク情報をＲを用いて、
Ｒ≠０のとき、
ｅ(t)＝１０・Ｒ・ｐ(Ｒ│ｓt)  …（１４）
Ｒ＝０のとき、
ｅ(t)＝ｃｏｎｓｔ  …（１５）
【００８８】
Ｒ＝０のときは、教師情報が入らなかったときに相当するが、その場合は、教師情報係数ｅ(t)は、定数ｃｏｎｓｔすなわち固定値のゲインになる。この値は、教師リスクが得られる確率により決定され、教師ありの学習データ数と教師なしの学習データ数との比率に基づいて設定される。本システムにおいては、経験則として、教師ありの学習データ数＝教師なしの学習データ数となるように定数ｃｏｎｓｔを設定し、ｃｏｎｓｔ＝０．０１としている。
【００８９】
教師情報が入った場合は、その確率が高い程、またリスクレベルが大きい程、強く学習される。これにより、実際に起こった事象に対して、認識する確率が小さい場合は、その状態の認識が間違っている可能性が高いことを示し、学習が弱くされる。その状態の代表ベクトルは、同じ状態を認識し、リスクの確率が高かったデータに近づくような学習が行われる。そして、そのような学習が続くことで、その入力データは他の状態と認識されやすくなり、間違っている可能性の高い状態を認識しにくくなる。このようにして全体としての状態認識、リスク認識が最適化される。
【００９０】
（Ｆ）融合リスク認識処理
ベースユニット３によるリスクレベル（以下、「ベースリスクレベル」と記載）と学習ユニット４によるリスクレベル（以下、「学習リスクレベル」と記載）は、融合計算部１０において所定の比率（融合率）αｆで融合され、融合ユニット５に送出される。具体的には、融合ユニット５へ出力されるリスクレベルは、ベースリスクレベルと学習リスクレベルとを融合率αｆで加重平均する等して算出される。
【００９１】
また、融合計算部１０は、学習ユニット４の学習ＳＯＭ４１が更新される毎に、ベースユニット３のベースＳＯＭ３１と学習ユニット４の学習ＳＯＭ４１との２つのＳＯＭを融合し、融合ユニット５の融合ＳＯＭ５１を更新する。この２つのＳＯＭの融合は、ベースＳＯＭ３１と学習ＳＯＭ４１との対応する勝者ニューロンを融合率αｆで融合させ、この融合された勝者ニューロンに従って各ニューロンを更新することで行われる。
【００９２】
その際の融合率αｆは、学習ＳＯＭ４１の勝者ニューロンの学習回数、ベースＳＯＭ３１のパラメータと学習ＳＯＭ４１のパラメータとの類似度、更には、学習回数と類似度との組み合わせに応じて制御される。以下では、図１０に示す融合率及び融合パラメータ計算処理のフローチャートを用いて、学習回数に応じて融合率を算出し、その融合率に基づいてＳＯＭの融合パラメータを算出する例について説明する。
【００９３】
この処理では、先ず、ステップＳ１において、学習ＳＯＭ４１の勝者ニューロン番号を入力し、図１１に示すように、ｎ個のニューロンの学習回数のヒストグラムを更新する。次に、ステップＳ２へ進み、更新したヒストグラムを用いて、勝者ニューロンの学習回数に応じて各ニューロン毎の融合率αｆi（ｉ＝１，２，…，ｎ：０≦αｆi≦１）を算出する。
【００９４】
例えば、図１２に示すように、融合率αｆは、学習回数と融合率αｆとの関係を示すテーブルを予め作成しておき、このテーブルを参照して算出する。図１２のテーブルでは、徐々に融合率を高めることでオンライン学習を安定的に動作させるよう、学習回数が所定の設定回数ＮＬに達するまで融合率αｆを直線的に大きくし、学習回数が設定回数ＮＬに達した後は、融合率αｆを一定値αｆL（例えば、αｆL＝０．５）とする特性に設定されている。
【００９５】
ステップＳ２で融合率αｆを算出した後はステップＳ３へ進み、融合ＳＯＭ５１のパラメータＣｉを計算する。この融合ＳＯＭ５１のパラメータＣiは、以下の（１６）式に示すように、ベースＳＯＭ３１が持つニューロンのパラメータＢiと学習ＳＯＭ４１が持つニューロンのパラメータＬiとを、融合率αｆiで重み付けして算出する。  
Ｃi＝(１−αｆi)・Ｂi＋αｆi・Ｌi  …（１６）
【００９６】
これにより、融合ユニット５内では、事前学習結果を維持するベースＳＯＭ３１とオンラインの学習結果を反映した学習ＳＯＭ４１とが融合され、この融合ＳＯＭ５１と融合リスクレベルとの関係に基づいて唯一のリスクレベルが決定され、車両１の表示装置等に出力される。
【００９７】
以上の処理によるリスク認識結果の出力例を図１３に示す。図１３（ａ）〜（ｄ）は、車載カメラから得られた画像に、認識結果を表示したシステムの出力画像であり、認識したリスクの大きさを、各画面の下部のバーグラフＢ１〜Ｂ４で表している。このバーグラフＢ１〜Ｂ４で表される認識リスクは、前述したリスク確率の期待値を示しており、その上に表示される数字は、認識した状態番号である。
【００９８】
図１３（ａ），（ｂ）に示す２枚の画像は、歩行者や対向車等が近くにおらず、リスクが低いと思われるシーンであり、また、図１３（ｃ），（ｄ）に示す２枚の画像は、それぞれ、道幅の狭い片側一車線道路で対向車が存在し、道幅が更に小さくなっているシーン、交差点での左折シーンであり、リスクとしては、図１３（ａ），（ｂ）のシーンよりリスクが高いと思われるシーンである。
【００９９】
ここで、「リスクが低い（高い）と思われる」と記載したのは、それぞれの画像がいくつのリスク値であるという絶対的な値は存在しないためである。本システムの認識結果を見ると、図１３（ａ），（ｂ）のシーンよりも、図１３（ｃ），（ｄ）のシーンの方がリスクが高いと認識できていることがわかる。
【０１００】
このように本実施の形態においては、ベースユニット３で保持される事前学習結果と、学習ユニット４で保持されるオンライン学習結果とを融合し、融合結果を融合ユニット５で保持して最終的なリスク認識を行う。これにより、事前知識の忘却を回避して偏学習による認識性能劣化を防止することができ、オンライン学習を安定的に動作させてリスク認識処理の信頼性と性能を向上させることができるばかりでなく、ユーザの使用環境に合わせて特化しつつ基本性能を確保することができる。
【０１０１】
しかも、リスク認識における学習を、融合ユニット５にて決定されたＳＯＭのニューロンと同じ番号の学習ユニット４内のニューロンについて行ない、勝者ニューロンの決定を学習ユニット４にて並列に行なわないため、計算コストを削減することができる。また、勝者ニューロンの番号に食い違いが生じることがなく、偏学習による認識性能劣化を回避することができる。
【０１０２】
次に、本発明の実施の第２形態について説明する。第２形態は、第１形態の融合ユニット５を省略し、ベースユニット３’と学習ユニット４’を並列動作させるものである。
【０１０３】
すなわち、図１４に示すように、第２形態においては、ベースユニット３’は、第１形態と同様のベースＳＯＭ３１とベースリスク分布テーブル３２とリスクレベル算出部３３とを備え、更に、ベースリスクレベルテーブル３４を備えている。また、学習ユニット４’は、第１形態と同様の学習ＳＯＭ４１と学習リスク分布テーブル４２とリスクレベル算出部４３とを備え、更に、学習リスクレベルテーブル４４を備えている。
【０１０４】
また、第２形態では、第１形態の融合ユニット計算部８を、ベースユニット３’と学習ユニット４’のそれぞれに対する専用のデータ計算用として、ベースユニット計算部１１と学習ユニット計算部１２とに分離し、更に、ベースユニット３から出力されるベースリスクレベルと学習ユニット４’から出力される学習リスクレベルとを融合する融合計算部１３を備えている。その他、教師作成部６、画像特徴量抽出部７、学習量計算部９は、第１形態と同様である。
【０１０５】
第２形態においては、ベースユニット３’と学習ユニット４’とが並列に動作し、それぞれから、ベースリスクレベル、学習リスクレベルが出力される。各ユニットの動作は、第１形態と同様であるが、学習処理は、学習ユニット４’にて決定された勝者ニューロンを用いて行なうこととなる。各ユニット３’，４’から出力されるベースリスクレベルと学習リスクレベルは、第１形態と同様、融合率αｆで融合され、唯一のリスクレベルとして出力される。
【０１０６】
第２形態においても、第１形態と同様、事前知識の忘却を回避して偏学習による認識性能劣化を防止することができる。更に、第２形態では、ベースユニット３’と学習ユニット４’とが並列に計算を行うため、第１形態に比較して計算が冗長になる傾向があるものの、システム構成を単純化することができる。
【符号の説明】
【０１０７】
１  オンラインリスク学習システム
３  ベースユニット
４  学習ユニット
５  融合ユニット
８  融合ユニット計算部
１０  融合計算部
αｆ  融合率
【図１】
0005547913.tif 000002
【図２】
0005547913.tif 000003
【図３】
0005547913.tif 000004
【図４】
0005547913.tif 000005
【図６】
0005547913.tif 000006
【図７】
0005547913.tif 000007
【図８】
0005547913.tif 000008
【図９】
0005547913.tif 000009
【図１０】
0005547913.tif 000010
【図１１】
0005547913.tif 000011
【図１２】
0005547913.tif 000012
【図１３】
0005547913.tif 000013
【図１４】
0005547913.tif 000014
【図５】
0005547913.tif 000015