(57)【要約】      （修正有）【課題】人感センサを備えたＭＦＰにおいて復帰判定に機械学習モデルを適用する際に、必要最低限の学習処理のみを行うように制御する情報処理装置、システム、その制御方法及びプログラムを提供する。【解決手段】人感センサのセンス値を入力値、操作部の操作の有無を正解フラグとした学習データを生成し、現状の復帰判定モデルの判定結果と操作の有無の情報から現状の復帰判定モデルの判定結果に関する正否フラグを生成し、学習データに付与する。学習データに付与された正否フラグに応じて学習処理の実行を制御することにより、効率的に学習を行う。【選択図】図４
2020039070.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置であって、
周辺に存在する物体を検知するセンサと、
前記センサから得られるセンス値に基づいて前記情報処理装置の電力制御状態を変更するか否か機械学習モデルを用いて判定する判定手段と、
操作部の操作情報を取得する取得手段と、
前記判定手段が出力した判定結果と前記取得手段が取得した操作情報から判定結果の正否情報を生成して学習データに付与する生成手段と、
少なくとも前記センス値と前記操作情報と前記正否情報から構成される学習データを保存する記憶手段と、
前記正否情報が付与された学習データが所定の条件を満たしたときに、前記学習データによる機械学習モデルの学習の実行を決定する決定手段と、を備える
ことを特徴とする情報処理装置。
【請求項２】
前記決定手段は、前記保存された学習データの中に失敗を示す正否情報が付与された学習データが所定数以上の場合に学習の実行を決定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記所定数は、情報処理装置を設置してからの経過時間にともなって変更する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記電力制御状態は、第１の電力制御状態又は第１の電力制御状態よりも消費電力が小さい第２電力制御状態であり、
前記操作情報は操作部の操作の有無に関する情報である
ことを特徴とする請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
前記生成手段は、前記判定手段の判定結果と前記操作情報との組み合わせが、所定の組み合わせと同一であった場合には成功とし、前記所定の組み合わせと異なる場合には、失敗とした正否情報を生成する
ことを特徴とする請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項６】
学習後の前記判定手段を使用して前記学習データの正否情報の更新を行う
ことを特徴とする請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項７】
前記判定手段の機械学習モデルは、リカレントニューラルネットワークである
ことを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記情報処理装置は、画像処理装置である
ことを特徴とする請求項１〜７のいずれか１項に記載の情報処理装置。
【請求項９】
前記学習データによる前記機械学習モデルの学習を実行する学習処理手段と、
前記機械学習モデルを更新する更新手段を備える
ことを特徴とする請求項１〜８のいずれか１項に記載の情報処理装置。
【請求項１０】
ネットワークで接続された情報処理装置及びサーバからなる情報処理システムであって、
前記情報処理装置は、
周辺に存在する物体を検知するセンサと、
前記センサから得られるセンス値に基づいて前記情報処理装置の電力制御状態を変更するか否か機械学習モデルを用いて判定する判定手段と、
操作部の操作情報を取得する取得手段と、
前記判定手段が出力した判定結果と前記取得手段が取得した操作情報から判定結果の正否情報を生成して学習データに付与する生成手段と、
少なくとも前記センス値と前記操作情報と前記正否情報から構成される学習データを保存する記憶手段と、
前記正否情報が付与された学習データが所定の条件を満たしたときに、前記学習データによる機械学習モデルの学習の実行を決定する決定手段と、
前記学習データを前記サーバに送信し、前記サーバで該学習データで学習した機械学習モデルを受信して前記判定手段において用いる機械学習モデルを更新する更新手段を備え、
前記サーバは、前記判定手段と同じものを有し、前記学習データを前記情報処理装置から受信するとともに、学習を実行し、学習後の前記判定手段を前記情報処理装置に送信することを特徴とする情報処理システム。
【請求項１１】
周辺に存在する物体を検知するセンサと記憶手段を備える情報処理装置の制御方法であって、
前記センサから得られるセンス値に基づいて前記情報処理装置の電力制御状態を変更するか否か機械学習モデルを用いて判定する判定ステップと、
操作部の操作情報を取得する取得ステップと、
前記判定手段が出力した判定結果と前記取得手段が取得した操作情報から判定結果の正否情報を生成して学習データに付与する生成ステップと、
少なくとも前記センス値と前記操作情報と前記正否情報から構成される学習データを前記記憶手段に保存する記憶ステップと、
前記正否情報が付与された学習データが所定の条件を満たしたときに、前記学習データによる機械学習モデルの学習の実行を決定する決定ステップを備える
ことを特徴とする情報処理装置の制御方法。
【請求項１２】
請求項１１に記載の情報処理装置の制御方法をコンピュータにより実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、超音波センサ等の人感センサを備えた情報処理装置、特に画像処理装置において、省電力状態にある装置の復帰制御に関する技術である。
【背景技術】
【０００２】
プリント(印刷)、スキャン、コピー、ファック等の複数の機能を有する多機能な画像処理装置（Multi Ｆunction Peripheral:以下「ＭＦＰ」という。）が知られている。ＭＦＰ等の情報処理装置において接近する人（ユーザ）を検出するための人感センサを備え、人の接近を検出して省電力状態（スリープモード）からスタンバイモードや通常状態に復帰する機能を備えたものがある。例えば、人感センサのセンス値をＭＦＰと接近する人との距離と関連づけた特徴量として判定する判断手段を用いて、センス値が所定の値以上となったら人がＭＦＰに接近したと判断してＭＦＰを通常状態に復帰させることができる。
ここで人感センサの検知履歴とＭＦＰ操作部の操作履歴に基づいて、スリープ状態のＭＦＰを復帰するか否かを決定する人感センサの感度（閾値）を自動で調整するＭＦＰが知られている（特許文献１）。
【０００３】
しかしながらＭＦＰ設置環境によっては復帰判定に係る誤判定が避けられない場合がある。例えば、通路脇に設置したＭＦＰではＭＦＰ使用者と通り過ぎる人とではどちらもＭＦＰに十分接近してしまうため、単に距離の特徴量だけではいかに人感センサの感度を調整しても正しくユーザを判定することが困難である。
このような場合、予め設計した特徴量を用いた判定手法ではなく、それぞれの環境で得られたデータに基づき、得られたデータの相互の関連や規則性を見出して判定処理を行う機械学習モデルを用いるのが有効である。すなわち、人感センサを備えたＭＦＰにおいては、それぞれのＭＦＰ設置環境で得られた人感センサのセンス値を用いて、予めＭＦＰが備える復帰判定モデルに対して機械学習させることで、復帰判定モデルの判定成功率を向上させることができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2010-147725号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、一般に学習処理は膨大なＣＰＵ、ＧＰＵ及びメモリのリソース量を要求するものである。これは、同一システム上で動作する他の処理の性能の低下を引き起こし、またシステム全体の消費電力が増加するといった問題を引き起こしてしまう。そこで本発明は、人感センサを備えたＭＦＰにおいて復帰判定に機械学習モデルを適用する際に、必要最低限の学習処理のみを行うように制御する情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、情報処理装置であって、周辺に存在する物体を検知するセンサと、前記センサから得られるセンス値に基づいて前記情報処理装置の電力制御状態を変更するか否か機械学習モデルを用いて判定する判定手段と、操作部の操作情報を取得する取得手段と、前記判定手段が出力した判定結果と前記取得手段が取得した操作情報から判定結果の正否情報を生成して学習データに付与する生成手段と、少なくとも前記センス値と前記操作情報と前記正否情報から構成される学習データを記憶手段に保存し、前記正否情報が付与された学習データが所定の条件を満たしたときに、前記学習データにより機械学習モデルの学習を実行するよう決定する決定手段と、を備えることを特徴とする。
【発明の効果】
【０００７】
本発明の情報処理装置によれば、不要な学習処理を抑制し、必要最低限の学習処理のみを行うように制御することが可能となる。これにより、ＣＰＵ、ＧＰＵ及びメモリのリソースの使用を抑えることができ、同一システムで動作している他の処理の性能劣化の抑制、消費電力の抑制が可能となる。
【図面の簡単な説明】
【０００８】
【図１】ＭＦＰの正面図・側面図・上面図
【図２】ＭＦＰの構成図
【図３】操作部ＣＰＵ215の全体処理フローチャート
【図４】学習データの生成処理のフローチャート
【図５】学習データの形式に関する模式図
【図６】再帰型機械学習モデルの構成図
【図７】電源制御処理のフローチャート
【図８】学習データ管理テーブルを示す図
【図９】学習処理のフローチャート
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための形態について図面を用いて説明する。なお、特に断らない限り、本発明の機能が実行されるのであれば、単体の機器であっても、ネットワークを介して通信可能な複数の機器からなるシステムの形態をとるものも本発明の範囲に含まれる。
【実施例１】
【００１０】
■ ＭＦＰ101の外観
図１は、ＭＦＰ101の外観を示す正面図、側面図及び上面図である。
ＭＦＰ101はプリント機能、スキャナ機能、コピー機能、ＦＡＸ機能などの複数の機能を有している。ＭＦＰ101は周辺に存在する物体を検知するためのセンサとして、人感センサ102をＭＦＰ101本体の正面上部に備えている。人感センサ102は、たとえば超音波センサなどであり、その検知エリアは、人感センサを中心とし、正面方向に広がる扇形をしており、人感センサ102から出力された信号は操作部203内のＣＰＵ215で処理される。人感センサ102はＭＦＰ101の電源がオフになっていない限り、検知エリアの状態を取得しつづけることが可能である。
【００１１】
■ ＭＦＰ101の構成
図２はＭＦＰ101の構成を表す図であり、ＣＰＵ201は、ＭＦＰ101全体の制御を統括する。
ＤＲＡＭ202は、ＣＰＵ201で実行されるプログラムを格納するとともに、一時的なデータのワークエリアとして機能する。
操作部203は、ＬＣＤ、タッチパネル、ハードウェアキー、ＬＥＤ等のユーザのための入力Ｉ/Ｆ及び出力（表示）Ｉ/Ｆ（図示せず）と、操作部ＣＰＵ215を備える。
操作部ＣＰＵ215は、操作部203内のＲＡＭ217、ＲＯＭ216及びシリアルＩ/Ｆ213を介してシステムバス209と接続される。また、操作部ＣＰＵ215は、人感センサ102とも接続されている。さらに操作部203は、ＮＦＣリーダライタ、Bluetooth(登録商標)モジュール等の、ユーザが保持する携帯端末と通信するための通信Ｉ/Ｆを備えていてもよい。操作部ＣＰＵ215はワンチップマイコンであり、内部にタイマ（図示せず）を備えている。なお、タイマは、操作部ＣＰＵ215がプログラムを実行することにより実現されるソフトウェアタイマであってもよい。また、操作部ＣＰＵ215は、ユーザによる操作をシリアルＩ/Ｆ213を介してＣＰＵ201に通知する。
【００１２】
ネットワークＩ/Ｆ204はＬＡＮ214と接続され、ＭＦＰ101はこれを介して外部機器と通信を行う。
プリンタ部205は、画像データを紙面上に印字する。
スキャナ部206は、紙面上の画像を光学的に読み取り、電気信号に変換してスキャン画像を生成する。
ＦＡＸ207は、公衆回線210と接続して外部機器とファクシミリ通信を行う。
ＨＤＤ（Hard Disk Drive）208は、ＣＰＵ201で実行されるプログラムを格納すると共にプリントジョブやスキャンジョブ等のスプール領域としても利用される。
【００１３】
システムバス209は、各モジュールを相互に接続して通信を行う。
画像処理部211は、ネットワークＩ/Ｆ204で受信したプリントジョブをプリンタ部205で印刷するのに適した画像への画像変換処理、又はスキャナ部206で読み取ったスキャン画像に対する画像処理等を実行する。詳細には、画像変換処理では、ＬＡＮ214からネットワークＩ/Ｆ204を経由して外部装置から受信した画像データ（ＰＤＬコード）をビットマップデータに展開する。また、スキャン画像に対する画像処理は、プリンタ部205で画像データを印字するための前処理としての画像処理を行う。
FLASHＲＯＭ212は、ＣＰＵ201で実行されるプログラムを格納すると共にＭＦＰ101のデフォルト設定値、ユーザごとのデフォルト設定値、一時的なカスタム設定値（以下まとめて「デフォルト設定値」という。）等を記憶する。
シリアルＩ/Ｆ213は、操作部203とシステムバス209を相互接続する。ＬＡＮ214は、外部機器と相互に接続して通信を可能にする。
【００１４】
操作部ＣＰＵ215は、操作部203の制御や人感センサ102の制御、ＲＯＭ216、ＲＡＭ217の読み書き等の制御を担う。なお、人感センサ102の制御は必ずしも操作部ＣＰＵ215が担う必要はなく、別のＣＰＵが人感センサ102の制御を担ってもよい。
ＲＯＭ216は、操作部203に内蔵されており、操作部ＣＰＵ215で実行されるプログラムを格納する。ＲＡＭ217は、操作部203に内蔵されており、人感センサ102や操作部203から取得されたデータを格納する。
電源制御部218は、ＣＰＵ201、操作部ＣＰＵ215及びユーザによる操作部203に対する操作（例えば、節電ボタンの操作）によりＭＦＰ101の電源を制御する。
【００１５】
■  ＭＦＰ101の動作モード
次に、ＭＦＰ101の省電力の待機状態の２つの動作モードについて、簡単に説明する。
ＭＦＰ101は、動作モードとして、スタンバイモード（Standby）及びより消費電力の小さいスリープモード（Sleep）の電力制御状態を有する。スタンバイモードはスキャン動作やプリント動作を実行可能な状態で待機する動作モードで、スリープモードはスタンバイモードよりも省電力状態で待機する動作モードである。
ＭＦＰ101がスタンバイモードのまま所定時間使用されていない状態が継続した場合には、ＣＰＵ201は、スタンバイモードからスリープモードに移行させる。例えば操作部203がユーザによって操作されず、かつジョブを受信しない状態で所定時間継続した場合には、ＣＰＵ201がＭＦＰ101の動作モードをスタンバイモードからスリープモードに移行させる。
【００１６】
■  操作部ＣＰＵ215の処理
次に、図３のフローチャートを用いて、操作部ＣＰＵ215の処理フローについて説明する。
図３に示した操作部ＣＰＵ215の処理は、操作部ＣＰＵ215がＲＯＭ216に格納された制御プログラムを読み出して実行するものとする。また、このフローチャートの処理は、ＭＦＰ101が電源ＯＮされた際に開始される。
S301において、操作部ＣＰＵ215はシリアルＩ/Ｆ213を介してメインＣＰＵ201とのネゴシエーションを行い、通信を確立する。
続くS302において、操作部ＣＰＵ215は内部に備えるタイマ（図示せず）のカウント値を参照し、操作部203の入力Ｉ/Ｆの状態を取得する操作部処理を実行すべき時刻か否かを判断し、操作部処理を実行すべき時刻となるまで待機する。
操作部処理を実行すべき時刻となった場合（S302 Yes）は、S303で操作部ＣＰＵ215は操作部203に備えるタッチパネル、ハードウェアキーの状態を取得することで、ユーザのＭＦＰ101に対する操作情報を取得する。また、操作部ＣＰＵ215は取得した操作情報を図５に示すデータ管理テーブル（後述）に保存する。
【００１７】
S304において、操作部ＣＰＵ215は人感センサ102のセンス値を取得し、該センス値を図５のデータ管理テーブルに保存する。本実施例では、操作部ＣＰＵ215は人感センサ102を制御してＭＦＰ101の前方に超音波を出力すると共に、出力した超音波の反射波を受信するまでの時間を計測することでＭＦＰ101とその前方に存在する物体との距離を得ることができる。
S305において、操作部ＣＰＵ215は復帰判定処理を実行する。本実施例では、予め学習されている再帰型機械学習モデルであるリカレントニューラルネットワーク(Recurrent Neural Network 以下「ＲＮＮ」という。)で構成された復帰判定モデルで行うものとする。この復帰判定モデルに対し、S304で取得したセンス値を入力することで復帰判定を行う。また、操作部ＣＰＵ215は復帰判定結果を図５で後述するデータ管理テーブルの復帰判定結果の項目に保存するとともに、シリアルＩ/Ｆ213を介して電源制御部218に通知する。
S306において、図５で後述するデータ管理テーブルから学習データを生成し、ＲＡＭ217に保存する。学習データ生成の詳細については後述する。そして、S302に戻り、S302〜S306の処理を繰り返す。
【００１８】
■  学習データの生成処理
図４を用いて、図３のS306における操作部ＣＰＵ215による学習データの生成処理の詳細を説明する。なお、図４では処理する際の時刻をt=T(N+1)とし、ＲＮＮの時刻数は５として説明するものとする。
S401において操作部ＣＰＵ215は現在の時刻T(N+1)よりも前の時刻の5時刻分のデータがデータ管理テーブルに存在するかを判定する。ここでデータ管理テーブルについて図５の例を用いて説明する。データ管理テーブルには、各時刻で、センス値、操作有無、復帰判定結果及び正否フラグが格納される。上述したように、センス値は図３のS304で取得してデータ管理テーブルに格納される。同様に、操作有無は図３のS303、復帰判定結果は図３のS305で取得され、データ管理テーブルに格納される。正否フラグは後述するS406で生成されるものである。
【００１９】
ここで、一例として、現在の時刻をＴ(5)と仮定して説明する。データ管理テーブルには、時刻T(5)の前の時刻T(0)からT(4)までの５時刻分のデータが存在している。従って、現在の時刻をT(5)とした場合、S401では現在の時刻よりも前の時刻の5時刻分のデータがデータ管理テーブルに存在すると判定され、S402に進む。一方で、現在の時刻をT(4)と仮定した場合には、時刻T(4)の前の時刻T(0)からT(3)までの４時刻分のデータしか存在していない。従って、現在の時刻をT(4)とした場合、S401では現在の時刻よりも前の時刻の5時刻分のデータがデータ管理テーブルに存在しないと判定され、S401で待機する。
なお、本実施例では、5時刻分のデータの有無を確認しているが、これは、復帰判定モデルで使用するＲＮＮモデルの構成に依存するものである。ＲＮＮについての詳細は後述するが、ＲＮＮでは時間軸方向に時刻数分のニューラルネットワークによって構成されるとみなすことができ、時刻数については可変である。本実施例では適用するＲＮＮモデルの時刻数を５としたため、5時刻分のデータの有無を確認している。しかし、これに限定するものではなく、ＲＮＮモデルの構成に合わせて変わるものである。
【００２０】
S402において操作部ＣＰＵ215はデータ管理テーブルから現在の時刻T(N+1)の操作有無の情報を取得する。図５のデータ管理テーブルでは、操作部ＣＰＵ215は「無」の情報を取得する。
S403において操作部ＣＰＵ215はデータ管理テーブルから時刻T(N)からT(N-4)までのセンス値を取得する。図５のデータ管理テーブルでは、操作部ＣＰＵ215は時刻T(N-4)から順に、「90,100,90,100,80」のセンス値を取得する。
S404において操作部ＣＰＵ215は取得した操作有無の情報と5時刻分のセンス値を学習データとして保存する。現在の時刻をＴ(N+1)とした場合に生成される学習データは図５の学習データ(N-4)である。センス値と操作有無の情報はS402,S403で取得した値である。このようなセットを学習データとして保存していく。
S405において操作部ＣＰＵ215は現在の時刻T(N+1)の復帰判定結果をデータ管理テーブルから取得する。図５のデータ管理テーブルでは、操作部ＣＰＵ215は「復帰する」の復帰判定結果を取得する。
S406において操作部ＣＰＵ215は取得した操作有無の情報と復帰判定結果から正否情報である正否フラグを生成する。操作部ＣＰＵ215は復帰判定結果と操作有無の情報が、「操作有と復帰する」または「操作無と復帰しない」のいずれかの組み合わせになっている場合は、「成功」フラグを生成し、そうでない場合は、「失敗」フラグを生成する。時刻Ｔ(N+1)では、「操作無と復帰する」の情報となり、これは上記した組み合わせに含まれないため、失敗フラグが生成されることになる。
S407において操作部ＣＰＵ215は生成した正否フラグをS404で保存した学習データのフラグとして付与する。本フラグを付与することにより、生成した学習データが現状の復帰判定モデルが正解を導けるデータパターンであるかを瞬時に把握することができるようになる。なお、ＲＡＭ217は容量が有限であるため、保存するための容量が不足した場合は、学習データの古い順に削除されるものとする。
また、ここでデータ管理テーブルの正否フラグの項目にデータを格納する。
【００２１】
■  再帰型機械学習モデルの説明
図６を用いて、上述した復帰判定処理を行う機械学習モデルを説明する。
上述のとおり、S304で取得した人感センサ102のセンス値は、S302で説明した所定の時間間隔で取得して得られた時系列データとなる。時系列データに機械学習を適用する場合、再帰型の機械学習モデルが適していることが一般に知られている。そこで本発明では、機械学習モデルとしてＲＮＮを用いる。ここでは、ＲＮＮとして単純再帰型のネットワークを例示して構成や処理を説明する。
【００２２】
●  再帰型機械学習モデル
図６(a)にＲＮＮの模式図を示す。ＲＮＮは、他の機械学習モデルのネットワークと同様、人の神経細胞におけるニューロンと、ニューロン間の接続であるシナプス、および、シナプスの結合強度入力、をモデル化した構成をとる。具体的には、ニューロンのモデルとして、入力層601、中間層602、および、出力層603を備える。各層はシグモイドのような予め備えた不図示の関数演算式を備え、前段のニューロンからの出力を入力として演算を行い、演算結果である出力値を後段につながる層へ伝搬する。このとき出力値に対して、各シナプスに備えた重み係数(W)605の乗算、および、バイアス係数(B)606の加算を行うことでニューロン間の結合強度を表現する。さらに、ＲＮＮでは中間層602の過去の出力を自身の現在の入力とするためのニューロン607を備える。これにより中間層602は、過去となる時刻tの入力に基づく中間層の出力と、その１時刻先となる時刻t+1の入力とを用いて演算処理を行うことができる。この演算処理を、時刻t=1,2,3と積み重ねて行うことで過去の入力データに基づいた出力が得られる。
【００２３】
●  推論処理
図６(b)を用いて、ＲＮＮに時系列データを入力して出力を得る推論処理を説明する。同図は、図６(a)で示したＲＮＮを時間軸方向に展開した模式図である。
このようにＲＮＮは時間軸方向に展開すると展開時刻分の深さを持つ多層のニューラルネットとみなすことができる。ＲＮＮに対して時刻t=1で入力を与えると、時刻t=1における出力層610の出力、及び中間層からの出力611が得られる。次に、時刻t=2において中間層は時刻t=2の入力と時刻t=1の中間層からの出力611とに基づき時刻t=2における出力層612の出力及び中間層からの出力613を決定する。同様な処理を時系列に行うことでＲＮＮは過去に入力したデータに基づき出力結果を推論できる。出力結果を得るために用いる過去の入力データ数は、ＲＮＮの入力データ長として予め定める。例えば、入力データ長を5、すなわち、時系列データの過去５つの入力に基づき出力を決定するには、時刻t=1〜5でデータを入力して、時刻t=6で得られる出力層614での出力を結果として用いればよい。
【００２４】
●  学習方法
図６(c)を用いて、ＲＮＮの学習方法を説明する。同図は図６(b)同様にＲＮＮを時間軸方向に展開した模式図である。これを多層のニューラルネットとみなすことで他のニューラルネットと同様に誤差逆伝搬法を適用した学習ができる。これによりネットワークが備える重み係数(W)やバイアス係数(B)を好適に変更して期待する結果を出力するネットワークを得ることができる。
ここで、誤差逆伝搬法とは、ネットワークに対してある入力値を与えて得られた出力値と、入力値に対する正解とを比較し、出力値と正解との誤差が減るように前段の出力値の係数（重み係数(W)、バイアス係数(B)）を変更する学習手法である。特にＲＮＮでは時間方向軸に展開したネットワークに対する誤差逆伝搬法（Back Propagation Through Time：以下、ＢＰＴＴ）を用いて学習を行う。ＢＰＴＴでは、ある時刻t=Tにおける出力値と正解との誤差621に加え、それより先の時刻t=T+1の中間層から伝搬する誤差622を用いて時間軸方向で誤差逆伝搬法を適用した学習を行う。また、ＢＰＴＴを用いた学習では学習の打ち切り数を設定することで、学習で用いる時系列データ長を指定できる。例えば、学習打ち切り数を５と設定した場合、連続する５時刻分の入力データと、それに対する正解を教師データとした学習データを用いてＲＮＮを学習することができる。学習データの詳細は後述する。
【００２５】
本発明で用いるＲＮＮは、上述した単純再帰型のネットワークでもよく、それを拡張した不図示の長短期記憶（Long Short Term Memory：以下「ＬＳＴＭ」という。）型のネットワークを使用してもよい。ＬＳＴＭは各層間のデータ伝搬を制御するゲートを備えており、時間軸方向のデータ依存度を詳細に制御することで高精度な学習を行い、より精度の高い判定処理ができる。
いずれのネットワークであっても、本発明で用いる復帰判定処理を行う機械学習モデルでは、入力データは時系列で取得した人感センサ102のセンス値とし、出力データは「復帰する」、「復帰しない」を示す２値とすることで、上述した推論や学習ができる。
【００２６】
■  ＣＰＵ201の電源制御処理
ＣＰＵ201での電源制御処理について図７を用いて説明する。図７に示したＣＰＵ201の処理は、ＣＰＵ201がFLASHＲＯＭ212に格納された制御プログラムを読み出して実行するものとする。
S701において、ＣＰＵ201は、スリープモードからスタンバイモードへ移行するためのウェイクアップ処理を行う。ウェイクアップ処理では、ＣＰＵ201の起動処理やシリアルＩ/Ｆ213のイニシャライズ設定を実施する。これにより、ＣＰＵ201は操作部ＣＰＵ215との通信が可能になる。
S702において、ＣＰＵ201は学習データの取得を行う。学習データは、S306で操作部ＣＰＵ215により生成され、ＲＡＭ217に保存されているものである。ＣＰＵ201はシリアルＩ/Ｆ213を介して操作部ＣＰＵ215と通信を行い、学習データの有無の情報を取得する。ＲＡＭ217に学習データが有る場合、ＣＰＵ201は、該学習データを取得し、ＨＤＤ208へ転送、保存する。学習データが無い場合、ＣＰＵ201は学習データの取得を行わない。
保存された学習データは、学習データ管理テーブルに登録される。学習データ管理テーブルを図８に示す。学習データ管理テーブルには、学習データを取得した順を示す「No」の要素、学習データに付与される「正否フラグ」、学習データを構成する「センス値」と「操作有無」の要素を持つ。取得した学習データに付与される「正否フラグ」、「センス値」と「操作有無」をそのまま学習データ管理テーブルに保存するものである。また、「センス値」は学習データの入力データになり、「操作有無」は正解ラベルとなる。学習データ管理テーブルはＨＤＤ208へ保存される。学習データが無い場合、ＣＰＵ201は学習データの取得を行わない。なお、ＣＰＵ201が取得した学習データはＲＡＭ217から削除されるものとする。
【００２７】
S703において、ＣＰＵ201は学習処理を行う。学習処理に用いる学習データは、ＨＤＤ208に保存された学習データである。学習を行うモデルは、S305の復帰判定処理で説明した復帰判定モデルと同一のモデルである。この復帰判定モデルは既に一度以上学習が行われているものであり、本実施例では追加学習を実施する。再帰型機械学習モデルの学習処理の詳細は後述する。また、本実施例ではＭＦＰ101の内部で学習処理を行うものとしているが、外部サーバ等（不図示）で学習処理を実行してもよい。ＣＰＵ201は、学習が完了した復帰判定モデルを操作部ＣＰＵ215へ転送する。以降、操作部ＣＰＵ215は、転送した復帰判定モデルを使用して復帰判定処理を行う。
【００２８】
S704において、ＣＰＵ201はスリープモード移行要求があるかを判定する。スリープモード移行は操作部ＣＰＵ215によって要求されるものである。操作部ＣＰＵ215はスリープモード移行要求を電源制御部218に対して通知する。電源制御部218は通知を受けると、割り込みをＣＰＵ201に対して発行する。従って、ＣＰＵ201は電源制御部218からの割り込みを確認することにより、スリープモード移行要求の有無を判定することができる。ＣＰＵ201はスリープモード移行要求が有ると判定した場合、S705へ進む。ＣＰＵ201はスリープモード移行要求が無いと判定した場合、S702へ戻る。
S705において、ＣＰＵ201はスリープモード移行処理を行う。スリープモード移行処理は、ＣＰＵ201で処理している各種処理を中断し、中断が完了するまで待機する。
S706において、ＣＰＵ201は電源制御部218にスリープモードへの移行を通知する。電源制御部218はスリープモードへの移行の通知を受けると、操作部ＣＰＵ215以外の処理ブロックに対する電源を遮断する。ＣＰＵ201は本処理によって電源ＯＦＦ状態となり、ＭＦＰ101のスリープモード移行を完了する。なお、スリープモードからスタンバイモードへ移行する際、ＣＰＵ201は再度S701からの処理を行うものとする。
【００２９】
■  学習処理
S703の学習処理について、図９を用いて説明する。
以下の動作は断りがない限りＣＰＵ201がFLASHＲＯＭ212に格納されたプログラムに沿って実行されるものとする。
S901においてＣＰＵ201は学習データ管理テーブルを取得する。学習データ管理テーブルは図７のS702で生成されており、ＨＤＤ208へ格納されている。
S902においてＣＰＵ201は学習データ管理テーブルに「失敗」の正否フラグが付与されている学習データが所定数以上あるという条件を成立するかを判定する。学習データ管理テーブルに「失敗」の正否フラグが付与された学習データが所定数の閾値以上あると判定した場合、その後の学習処理を実行するためS903へ進み、所定数の閾値未満であると判定した場合は、フローを終了する。また、学習処理を実行するかどうかの判断の基準となる所定数の閾値については、ＭＦＰ101を設置してからの経過時間に応じて変更するように制御してもよい。経過時間が小さい時は、設定環境への対応のため、閾値を小さい値に設定し、経過時間が大きくなるにつれて、閾値を大きくするように制御してもよい。また、閾値を１、すなわち「失敗」の正否フラグが付与された学習データの有無を学習の条件としてもよい。
【００３０】
S903においてＣＰＵ201はＨＤＤ208に保存されている学習データをＤＲＡＭ202に読み出しを行う。学習データ管理テーブルで管理されている全てのデータに対して学習処理を行うものである。ただし、これに限定するものではない。例えば、正否フラグが「失敗」を表す学習データのみを学習対象として読み出すように制御してもよい。
S904においてＣＰＵ201はS903で読み出した学習データを用いて学習を実行する。所定時間分のセンス値を入力、ユーザの「操作情報」を正解ラベルとして、先に述べた方法で学習を行う。なお、各層の係数(W,B)は開発段階で与えられた学習データによって決定されたものが初期状態として組み込まれているものとする。この各層の係数をＭＦＰ設置環境で適宜更新していくことになる。S903で読み出してきたすべての学習データで学習を行ったら、S905に進む。
S905においてＣＰＵ201は復帰判定モデルを更新する。具体的には、ＣＰＵ201はS904で学習により更新された各層の係数を操作部ＣＰＵ215に対して転送する。操作部ＣＰＵ215は受信した係数を復帰判定モデルに適用することにより復帰判定モデルの更新が完了する。
【００３１】
S906においてＣＰＵ201は学習後の復帰判定モデルを使用して学習データ管理テーブルの正否フラグの情報を更新する。学習処理はＣＰＵ201により行われるため、当然ＣＰＵ201もS905で更新した復帰判定モデルをＨＤＤ208等に備えている。ＣＰＵ201はS905で更新した復帰判定モデルと同一のモデルを使用して、学習データ管理テーブルに管理されている学習データの各々センス値を用いて各々の学習データに対する復帰判定結果を算出する。ＣＰＵ201は得られた復帰判定結果と操作有無から上述した方法により、正否フラグを生成し、学習データ管理テーブルへ書き込み、更新処理を完了させる。この処理によって、正否フラグは操作部ＣＰＵ215で動作している現在の復帰判定モデルの結果と常に一致するように管理することが可能となる。
【００３２】
以上の学習処理は、情報処理装置であるＭＦＰ101内のＣＰＵ201で学習処理を行っていた。しかし、学習処理はＣＰＵなどリソースを要求する処理であるので、S903、S904の処理をネットワークで接続された外部のサーバに、学習データを送信し、サーバが学習処理を実行するようにしてもよい。この場合は、サーバから学習により係数などが更新されたモデルを受信して、適用する。
以上、説明したように、本実施例では、人感センサを備えたＭＦＰにおいて、機械学習手法を用いた復帰判定処理の適用に関して述べた。特に、学習データを自動で生成し、自動的に必要に応じて学習するように制御した。また、現状の復帰判定モデルが正解値を出せるか否かを正否フラグとして付与するようにしたため、復帰判定モデルが正解値を推論できないデータパターンを取得できた時のみに学習を行うように制御が可能となる。言い換えると、既に正解値を推論できるデータパターンのみで構成される学習データセットの場合、学習を行わないといった制御が可能となる。以上から、本実施例で説明した手法によって、学習データを自動で生成しながら、必要最低限の学習を行うように制御が可能となり、不要な学習を抑制できる。
【００３３】
また、実施例では、情報処理装置として、ＭＦＰ等の画像処理装置を例に説明を行ってきた。しかし、装置の周辺に存在する物体を検知するセンサを備えた装置であって、そのセンサのセンス値から機械学習モデルを用いて判定し、装置の電力制御状態等の状態を変更可能である装置であれば本発明の学習処理制御方法は適用可能である。
【００３４】
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ＡＳＩＣ)によっても実現可能である。
具体的には、複数の機器から構成される情報処理システムに適用しても良いし、また、一つの機器からなる装置に適用してもよい。また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００３５】
102  人感センサ
201  ＣＰＵ
215  操作部ＣＰＵ
【図１】
2020039070.tif 000003
【図２】
2020039070.tif 000004
【図３】
2020039070.tif 000005
【図４】
2020039070.tif 000006
【図５】
2020039070.tif 000007
【図６】
2020039070.tif 000008
【図７】
2020039070.tif 000009
【図８】
2020039070.tif 000010
【図９】
2020039070.tif 000011