(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-09-26
(54)【発明の名称】データを処理するためのコンピュータ実装またはハードウエア実装方法、コンピュータプログラム製品、データ処理システム、およびそのための第1の制御ユニット
(51)【国際特許分類】
G06N 3/08 20230101AFI20240918BHJP
【FI】
G06N3/08
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024514072
(86)(22)【出願日】2022-08-26
(85)【翻訳文提出日】2024-04-25
(86)【国際出願番号】 SE2022050767
(87)【国際公開番号】W WO2023033697
(87)【国際公開日】2023-03-09
(32)【優先日】2021-09-03
(33)【優先権主張国・地域又は機関】SE
(81)【指定国・地域】
(71)【出願人】
【識別番号】524078398
【氏名又は名称】イントゥイセル アクチエボラグ
【氏名又は名称原語表記】INTUICELL AB
(74)【代理人】
【識別番号】100109380
【氏名又は名称】小西 恵
(74)【代理人】
【識別番号】100109036
【氏名又は名称】永岡 重幸
(72)【発明者】
【氏名】ジョンテル、ヘンリック
(72)【発明者】
【氏名】マルテンソン、ライナス
(57)【要約】
本開示は、データを処理するための、コンピュータ実装またはハードウエア実装方法(200)に関し、以下を含む:好ましくは第1の制御モジュール(110)によって、集団を備える処理ユニット(130)の集団活動を測定する(210)し、処理ユニット(130)は、処理ユニット入力(156)を受信し処理ユニット出力(158)を生成し、好ましくは第1の制御モジュール(110)によって、第1の制御信号(160)を提供し(220)、第1の制御信号(160)は、処理ユニット出力(158)に基づき、かつ処理ユニット(130)の測定された集団活動に基づき、好ましくは第2の制御モジュール(120)によって、処理されるべきデータからなるシステム入力(152)を受信し(230)、好ましくは第2の制御モジュール(120)によって、第1の制御信号(160)に基づいてシステム入力(152)をスケーリングし(240)、それにより次の時間ステップにおいて、スケーリングされた入力を処理ユニット(130)に提供し;処理ユニット出力(158)をシステム出力(162)として利用する(250)。本開示はさらに、コンピュータプログラム製品、データ処理システム、および第1の制御モジュールに関する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
第1の制御モジュール(110)、第2の制御モジュール(120)、処理ユニット(130)、および抑制器、を備える人工ニューラルネットワーク(ANN)(100)によってデータを処理するための、コンピュータ実装またはハードウエア実装方法(200)であって、前記方法(200)は、以下のステップを含む:
前記第1の制御モジュール(110)によって、集団を備える前記処理ユニット(130)の集団活動を測定し(210)、ここで、前記処理ユニット(130)は、処理ユニット入力(156)を受信し、処理ユニット出力(158)を生成し;
前記第1の制御モジュール(110)によって、第1の制御信号(160)を提供し(220)、ここで、前記第1の制御信号(160)は、前記処理ユニット出力(158)に基づき、かつ前記処理ユニット(130)の測定された集団活動に基づく;
前記第2の制御モジュール(120)によって、処理されるべきデータを含むシステム入力(152)を受信し(230);
前記第2の制御モジュール(120)によって、前記第1の制御信号(160)に基づいて、前記システム入力(152)をスケーリングし(240)、それによって、次の時間ステップにおいて、スケーリングされた入力を前記処理ユニット(130)に提供し;
前記処理ユニット出力(158)をシステム出力(162)として利用し(250);
前記処理ユニット(130)の測定された集団活動が目標集団活動よりも大きいか否かをチェックし(252);および、
前記処理ユニット(130)の測定された集団活動が目標集団活動よりも大きい場合、前記抑制器によって、前記処理ユニット(130)の測定された集団活動と目標集団活動との間の差に基づいて、前記処理ユニット入力(156)を抑制し(254)、それによって、前記ANN(100)の過負荷を防止する。
【請求項2】
前記抑制すること(254)が漸進的である、請求項1に記載の方法。
【請求項3】
前記目標集団活動が適応的である、請求項1または2に記載の方法。
【請求項4】
以下のステップをさらに含む、請求項1から3のいずれか1項に記載の方法:
前記処理ユニット(130)の集団活動が、第1の時間ステップの量の間、第2の閾値を超えるか否かをチェックし(256);および、
前記処理ユニット(130)の前記集団活動が、前記第1の時間ステップの量の間、前記第2の閾値を超えている場合、前記処理ユニット(130)をリセット(258)し、入力シーケンスを最初から再開するなど、入力を再始動(259)する。
【請求項5】
前記第2の閾値が適応的である、請求項4に記載の方法。
【請求項6】
以下のステップをさらに含む、請求項1から5のいずれか1項に記載の方法:
前記処理ユニット出力(158)を調整モジュール(140)に提供し(260);
前記調整モジュール(140)によって、前記処理ユニット出力(158)に基づいて前記システム入力(152)を調整し(270);および、
ここで、前記受信すること(230)は、前記調整モジュール(140)によって、前記システム入力(152)を受信することを含む。
【請求項7】
前記システム入力(152)が、1つまたは複数のカメラ、1つまたは複数のタッチセンサ、音声信号の周波数帯域に関連する1つまたは複数のセンサ、または1つまたは複数のマイクロフォンなどのスピーカに関連する1つまたは複数のセンサなどの1つまたは複数のセンサによって生成された時間連続データである、請求項1から6のいずれか1項に記載の方法。
【請求項8】
以下のステップをさらに含む、請求項1から7のいずれか1項に記載の方法:
第1の変換モジュール(124)によって、前記システム入力(152)を第1の利得(A)に変換し(212)、ここで、前記第1の利得(A)は正であり;および、
任意選択で、第2の変換モジュール(134)によって、前記処理ユニット出力(158)を第2の利得(B)に変換し(214)、ここで、前記第2の利得(B)は負であり;および、
ここで、前記第1の制御信号(160)は、さらに、前記第1の利得および任意選択で前記第2の利得に基づいている。
【請求項9】
以下のステップをさらに含む、請求項1から8のいずれか1項に記載の方法:
前記測定すること(210)、提供すること(220)、受信すること(230)、スケーリング(240)、利用すること(250)、チェックすること(252)、抑制すること(254)、および、任意で、前記変換(212)、変換(214)、チェック(256)、リセット(258)、再起動(259)、提供(260)、および調整(270)のうちの1つ以上を、前記システム(100)が完全にトレーニングされるまで繰り返す。
【請求項10】
前記測定された集団活動が集団活動閾値を下回ったとき、前記システム(100)が完全にトレーニングされる、請求項9に記載の方法。
【請求項11】
非一過性のコンピュータ可読媒体(1000)であって、プログラム命令を含むコンピュータプログラムをその上に記憶している、非一過性のコンピュータ可読媒体(1000)を含むコンピュータプログラム製品であって、前記コンピュータプログラムは、データ処理ユニット(1020)にロード可能であり、前記コンピュータプログラムが前記データ処理ユニット(1020)によって実行されるときに、請求項1から10のいずれか1項に記載の方法の実行を引き起こすように構成されている、コンピュータプログラム製品。
【請求項12】
人工ニューラルネットワーク(ANN)(100)であって、処理すべきデータを含むシステム入力(152)を受信し、システム出力(162)を生成するように構成され、前記ANNは以下を備える:
集団を備え、処理ユニット入力(156)を受信し、処理ユニット出力(158)を生成するように構成された処理ユニット(130)であって、前記処理ユニット出力(158)は前記システム出力(162)として利用される、処理ユニット(130);
前記処理ユニット(130)の集団活動を測定し、第1の制御信号(160)を提供するように構成された第1の制御モジュール(110)であって、前記第1の制御信号(160)は、前記処理ユニット出力(158)および前記処理ユニット(130)の測定された集団活動に基づく、第1の制御モジュール(110);
第2の制御モジュール(120)であって、前記システム入力(152)を受信し、前記第1の制御信号(160)に基づいて前記システム入力(152)をスケーリングするように構成され、前記スケーリングされたシステム入力を次の時間ステップにおいて前記処理ユニット入力(156)として提供するよう構成される、第2の制御モジュール(120);および、
前記処理ユニット(130)の測定された集団活動と目標集団活動との間の差に基づいて、前記処理ユニット入力(156)を抑制するように構成された抑制器であって、それによって、前記ANN(100)の過小負荷および/または過負荷を防止する、抑制器。
【請求項13】
前記抑制器は、前記処理ユニット入力(156)を漸進的に抑制するように構成される、請求項12に記載のANN。
【請求項14】
前記処理ユニット(130)、前記第1の制御モジュール(110)および前記第2の制御モジュール(120)のうちの1つ以上が、集団および学習機能を備え、
前記システム入力(152)、前記処理ユニット(130)、前記第1の制御モジュール(110)および前記第2の制御モジュール(120)が、多次元であり、アレイまたはマトリクスとして実装される、請求項12または13に記載のANN。
【請求項15】
第2の制御モジュール(120)およびかつ処理ユニット(130)に接続可能な第1の制御モジュール(110)であって、
前記第1の制御モジュール(110)は、前記処理ユニット(130)の集団活動を測定するように構成可能であり、
第1の制御信号(160)を前記第2の制御モジュール(120)に提供するように構成可能であり、それによって入力信号(152)のスケーリングを可能し、前記第1の制御信号(160)は、処理ユニット出力(158)と、前記処理ユニット(130)の測定された集団活動とに基づいており、
前記第1の制御モジュール(110)は、前記処理ユニット(130)の測定された集団活動と目標集団活動との間の差に基づいて、前記処理ユニット入力(156)を抑制するように構成可能であり、それによって、前記処理ユニット(130)の過小負荷および/または過負荷を防止する。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、データを処理するためのコンピュータ実装またはハードウエア実装方法、ならびにコンピュータプログラム製品、データ処理システム、および第1の制御ユニットに関する。より具体的には、本開示は、独立請求項の導入部分で定義されるような、データ処理システムおよび第1の制御ユニットのためのコンピュータ実装またはハードウエア実装方法に関する。
【背景技術】
【0002】
データ処理は先行技術により公知である。データ処理に利用される技術の1つに、Long short-term memory(LSTM)がある。LSTMは、ディープラーニングの分野で利用されている人工リカレントニューラルネットワーク(RNN)アーキテクチャである。標準的なフィードフォワード型ニューラルネットワークとは異なり、LSTMはフィードバック接続を有する。単一のデータポイント(画像など)だけでなく、データのシーケンス全体(音声や動画など)も処理できる。例えば、LSTMは、セグメント化されていない、連結された手書き文字認識、音声認識、ネットワークトラフィックの異常検知やIDS(侵入検知システム)などのタスクに適用できる。さらに、バックプロパゲーションを備えたLSTMネットワークは、例えば、フィードフォワードの人工ニューラルネットワークの出力が所望の解に収束できない場合に、所望の解に収束する可能性を高めるパラメータ変更を特定することができる。このパラメータ変更は、ネットワーク内でデータ処理を実行するために使用される記憶されるデータの時間的範囲を変更することであってもよい。しかし、パラメータを変更するプロセスには、任意の代替パラメータ設定の影響を繰り返しテストするための膨大な計算能力が必要な場合があり、それでもなお、与えられた状況における問題の最も効率的な解が見つかる保証はない。実際のところ、このアプローチでは問題を解決できない可能性さえある。さらに、ネットワークがフィードフォワードでない場合、および/またはネットワークに定義された出力層がない場合、既存の解決策は機能しない可能性がある。
【0003】
US 2015/178617 A1は、(監視された活動に基づいて)検出された状態に基づいて例外イベントを実行することを含むニューラルネットワークの活動を監視することを含むニューラルネットワークを監視する方法を開示する。しかしながら、US 2015/178617 A1に開示された方法は、人工ニューラルネットワーク(ANN)の過負荷を防止するものではなく、代わりに、単一のニューラルノードにおける不均衡状態を検出するものである。さらに、US 2015/178617 A1には、処理ユニットへの(システム)入力の調整はない。
【0004】
US 2015/206049 A1は、第1のニューラルネットワークを第2のニューラルネットワークで監視することを含むイベントを生成する方法を開示している。したがって、US 2015/206049 A1は、単一のニューラルネットワークの内部制御を開示していない。さらに、US 2015/206049 A1に開示された方法は、ANNの過負荷を防止しない。さらに、US 2015/206049 A1には、処理ユニットへの(システム)入力の調整はない。
【0005】
したがって、ネットワークや人工ニューラルネットワークのようなプロセッサが所望の解に収束しない場合を特定する代替アプローチが必要とされている。さらに、時系列のどの時点で(またはデータの系列のどこで)データの説明が失敗するか(非収束に至るか)を識別するアプローチが必要とされている。好ましくは、そのようなアプローチは、改善された性能、より高い信頼性、増加した効率性、より速いトレーニング、より少ないコンピュータ処理能力の使用、より少ないトレーニングデータの使用、より少ないストレージスペースの使用、より少ない複雑さ、および/またはより少ないエネルギーの使用のうちの1つ以上を提供または可能にする。
【発明の開示】
【発明が解決しようとする課題】
【0006】
本開示の目的は、従来技術における上記で特定された欠陥および欠点の1つ以上を軽減、緩和または除去し、少なくとも上記問題を解決することである。さらに、いくつかの実施形態において、目的は、情報内容がシステムの入力の情報内容に可能な限り忠実に従う出力を提供することであり、場合によっては、予測コンポーネントを伴う。さらに、いくつかの実施形態において、目的は、システムへの入力がシステムに過負荷および/または過小負荷を与えないこと、すなわち、システムの容量が常に十分であることを保証することである。
【0007】
第1の態様によれば、データを処理するためのコンピュータ実装またはハードウエア実装の方法が提供される。この方法は、好ましくは第1の制御モジュールによって、集団(population)を備える処理ユニットの集団活動(population activity)(ポピュレーションアクティビティ)を測定することを含み、処理ユニットは、処理ユニット入力を受信し、処理ユニット出力を生成する。さらに、本方法は、好ましくは第1の制御モジュールによって、第1の制御信号を提供することを含み、第1の制御信号は、処理ユニット出力に基づき、かつ処理ユニットの測定された集団活動に基づく。さらに、本方法は、好ましくは第2の制御モジュールによって、処理されるべきデータを含むシステム入力を受信することを含む。本方法は、好ましくは第2の制御モジュールによって、第1の制御信号に基づいて、システム入力をスケーリングし、それによって次の時間ステップにおいて処理ユニットにスケーリングされた入力を提供することを含む。さらに、本方法は、処理ユニットの出力をシステム出力として利用することを含む。
【0008】
いくつかの実施形態によれば、本方法は、処理ユニットの測定された集団活動が第1の閾値/目標集団活動よりも大きいかどうかをチェックすることと、処理ユニットの測定された集団活動が第1の閾値/目標集団活動よりも大きい場合、処理ユニットの測定された集団活動に基づいて処理ユニットの入力を抑制することとを含む。
【0009】
いくつかの実施形態によれば、本方法は、処理ユニットの集団活動が第1の時間ステップの量の間、第2の閾値を超えているかどうかをチェックすることと、処理ユニットの集団活動が第1の時間ステップの量の間、第2の閾値を超えている場合、処理ユニットをリセットし、入力シーケンスを最初からやり直すなど、入力をリスタートすることとを含む。
【0010】
いくつかの実施形態によれば、本方法は、処理ユニット出力を調整モジュールに提供することと、調整モジュールによって、処理ユニット出力に基づいてシステム入力を調整することと、前記受信することは、調整モジュールによって、システム入力を受信することを含む。
【0011】
いくつかの実施形態によれば、システム入力は、1つまたは複数のカメラ、1つまたは複数のタッチセンサ、音声信号の周波数帯域に関連する1つまたは複数のセンサ、または1つまたは複数のマイクなどのスピーカに関連する1つまたは複数のセンサなどの、1つまたは複数のセンサによって生成された時間連続データである。
【0012】
いくつかの実施形態によれば、本方法は、第1の変換モジュールによって、システム入力を第1の重みに変換することを含み、第1の重みは好ましくは正であり、任意に、第2の変換モジュールによって、処理ユニット出力を第2の重みに変換することを含み、第2の重みは好ましくは負である。第1の制御信号は、さらに、第1の重みと任意に第2の重みに基づいている。
【0013】
第2の態様によれば、プログラム命令を含むコンピュータプログラムをその上に有する、非一過性のコンピュータ可読媒体を含むコンピュータプログラム製品が提供され、コンピュータプログラムは、データ処理ユニットにロード可能であり、コンピュータプログラムがデータ処理ユニットによって実行されるときに、第1の態様の方法または上述の実施形態のいずれかの実行を引き起こすように構成される。
【0014】
第3の態様によれば、処理すべきデータからなるシステム入力とシステム出力とを備えるように構成されたデータ処理システムが提供される。このシステムは、処理ユニット入力を受信し、処理ユニット出力を生成するように構成された処理ユニットを備える。処理ユニット出力は、システム出力として利用される。さらに、システムは、集団を備える処理ユニットの集団活動を測定するように構成され、第1の制御信号を提供するように構成された第1の制御モジュールを備える。第1の制御信号は、処理ユニットの出力と、処理ユニットの測定された集団活動とに基づいている。さらに、システムは第2の制御モジュールを備える。第2の制御モジュールは、システム入力を受信するように構成され、第1の制御信号に基づいてシステム入力をスケーリングするように構成され、スケーリングされたシステム入力を次の時間ステップにおける処理ユニット入力として提供するように構成される。処理ユニットへの入力をスケーリングする(例えば、ゲインを低減する)ことにより、収束が促進され、および/または活動の飽和が回避され、それにより、特に学習/トレーニング段階において、データ/情報のより効率的な処理が提供される。さらに、システム容量によっては、無限に長いデータ系列を識別することができる。
【0015】
いくつかの実施形態によれば、データ処理システムは人工ニューラルネットワークであり、処理ユニット、第1の制御モジュール、および第2の制御モジュールの1つ以上は、ノードグループと学習関数から構成され、処理ユニット、第1の制御モジュール、および第2の制御モジュールのシステム入力は多次元であり、アレイまたはマトリクスとして実装される。
【0016】
第4の態様によれば、第1の制御モジュールが提供される。第1の制御モジュールは、第2の制御モジュールに接続可能であり、処理ユニットに接続可能である。第1の制御モジュールは、処理ユニットの集団活動を測定するように構成可能であり、第1の制御信号を第2の制御モジュールに提供するように構成可能であり、それによって入力信号のスケーリングを可能にする。第1の制御信号は、処理ユニットの出力と、処理ユニットの測定された集団活動とに基づいている。
【0017】
第2、第3および第4の態様の効果および特徴は、第1の態様に関連して上述したものと大部分類似しており、またその逆も同様である。第1の態様に関連して述べた実施形態は、第2の態様、第3の態様および第4の態様にほぼ適合し、その逆も同様である。
【0018】
いくつかの実施形態の利点は、収束が促進されること、および/または活動が飽和することが回避されることであり、それにより、特に学習/トレーニング段階において、データ/情報のより効率的な処理が提供される。
【0019】
いくつかの実施形態の他の利点は、無限に長いデータ系列を識別できることである。
【0020】
いくつかの実施形態のさらに他の利点は、データをより効率的に利用できることである。
【0021】
いくつかの実施形態のさらなる利点は、最適解ではなく準最適解を見つけるリスクが減少することである。
【0022】
さらに、いくつかの実施形態のさらなる利点は、プロセッサが、例えば、客観的尺度を用いて、いつ完全にトレーニング/学習されたかを判断できることであり、したがって、トレーニング/学習を事前に停止することができ、より効率的/より短時間/より速いトレーニング/学習につながる。
【0023】
いくつかの実施形態のもう1つの利点は、ネットワークが、より良いまたは維持された効率で、より少ないノードを含む/で構成することができ、したがって、より複雑さの少ないネットワークを提供することである。
【0024】
いくつかの実施形態のさらなる利点は、プロセッサに入力されるデータの適切な/最適な長さが決定され、それにより、より速いトレーニング/学習が容易に/可能になることである。
【0025】
いくつかの実施形態のさらなる利点は、異なるブロック間の接続がどのようになっているか分からない入出力システム、例えばブラックボックスシステムを利用できる、すなわちシステムの内部構造を知る必要がないことである。
【0026】
いくつかの実施形態の他の利点は、性能の向上、より高い信頼性、効率の向上、より速い/より短いトレーニング/学習、より少ないコンピュータ処理能力の使用、より少ないトレーニングデータの使用、より少ない記憶領域の使用、より少ない複雑さ、および/またはより少ないエネルギーの使用である。
【0027】
本開示は、以下に示す詳細な説明から明らかになるであろう。詳細な説明および具体例は、例示のためにのみ本開示の好ましい実施形態を開示する。当業者は、詳細な説明の手引きから、本開示の範囲内で変更および修正がなされ得ることを理解する。
【0028】
したがって、本明細書に開示される開示は、そのような装置および方法が変化し得るので、記載される装置の特定の構成部分または記載される方法のステップに限定されないことを理解されたい。また、本明細書で使用される用語は、特定の実施形態を説明するためだけのものであり、限定することを意図するものではないことを理解されたい。本明細書および添付の特許請求の範囲で使用される場合、冠詞「a」、「an」、「the」、および「said」は、文脈が明確に指示しない限り、1つまたは複数の要素が存在することを意味することが意図されることに留意されたい。したがって、例えば、「ユニット」または「ユニット」への言及は、複数の装置などを含む場合がある。さらに、「comprising」、「including」、「containing」などの語句は、他の要素やステップを除外するものではない。
【0029】
上記の目的、ならびに本開示の追加の目的、特徴、および利点は、添付の図面と併せて考慮される場合、本開示の例示的な実施形態の以下の例示的かつ非限定的な詳細な説明を参照することによって、より十分に理解されるであろう。
【図面の簡単な説明】
【0030】
【
図1】
図1は、いくつかの実施形態に係るデータ処理システムを示す概略ブロック図である。
【
図2】
図2は、いくつかの実施形態に係る方法ステップを示すフローチャートである。
【
図3】
図3は、いくつかの実施形態に係るデータを処理するための装置によって実行される例示的なステップを示すフローチャートである。
【
図4】
図4は、いくつかの実施形態に係る例示的なコンピュータ可読媒体を示す概略図である。
【発明を実施するための形態】
【0031】
次に、本開示の好ましい例示的な実施形態が示されている添付図面を参照して、本開示を説明する。しかしながら、本開示は、他の形態で具体化されてもよく、ここに開示された実施形態に限定して解釈されるべきではない。開示された実施形態は、当業者に本開示の範囲を十分に伝えるために提供される。
【0032】
用語解説
「ノード」、「セル」、または「ニューラルセル」という用語は、人工ニューラルネットワークのニューロンなどのニューロン、処理要素のネットワークのプロセッサなどの別の処理要素、またはそれらの組み合わせを示し得る。
【0033】
以下、「時間ステップ」という用語は、時間の漸進的な変化を表すために使用される。例えば、1つの時間ステップは、直前の時間インスタンス(または時点)と現在の時間インスタンスとの間の期間、または現在の時間インスタンスと直後の/次の時間インスタンスとの間の期間として定義される。
【0034】
「集団(population)」という用語は、ノード、セル、ニューラルセルのグループまたは集合として解釈される。
【0035】
「信号」という用語は、情報を伝達する機能として解釈される。「活動(activities)」および「アクティビティ(activity)」という用語は、「信号」と等価に解釈される。ただし、以下で使用される「活動レベル」および「集団活動」という用語は、ノードまたはノードグループの利用レベルを示すものとして解釈される。集団活動(population activity)は、ノードの合計活動として、ノードグループの活動レベルの平均値(mean)または平均値(average)として、またはグループ内の1つまたは複数のノードの活動値を選択するようにノードグループの活動値をサブサンプリングすることによって、測定することができる。
【0036】
「時間連続データ」または「時間連続信号」という用語は、アナログ信号のような連続した振幅と時間の信号として解釈される。
【0037】
以下では、実施形態について説明する。
図1は、いくつかの実施形態によるデータ処理システム100を示す概略ブロック図である。いくつかの実施形態では、データ処理システムはネットワークである。ネットワークは、ニューラルセルおよび/または他の処理要素から構成されてもよい。あるいは、データ処理システムは、ディープニューラルネットワーク、ディープビリーフネットワーク、ディープ強化学習システム、リカレントニューラルネットワーク、または畳み込みニューラルネットワークである。データ処理システム100は、システム入力152を有するか、またはシステム入力152を有するまたは受信するように構成される。システム入力152は、処理されるデータを備える。データは多次元であってもよい。例えば、複数の信号が並列に提供される。いくつかの実施形態では、システム入力152は、時間連続データまたは連続時間データ、例えばアナログ信号からなる、または構成される。さらに、処理システム100は、システム出力162を有するか、またはシステム出力162を有するまたは生成するように構成される。データ処理システム100は、処理ユニット130を備える。処理ユニット130は、集団(population)を備える。集団は、ノードの集合(またはノードの1つ以上のサブセット)である。処理ユニット130は、処理ユニット入力156を受信するように構成される。さらに、処理ユニットは、処理ユニット出力158を生成するように構成される。いくつかの実施形態では、処理ユニット出力158は、処理ユニット130に構成される複数のノード、例えば、全てのノードのサブセット、の各々の活動レベルを備える。処理ユニット出力158は、システム出力162として利用される。データ処理システム100は、第1の制御モジュール110をさらに備える。第1の制御モジュール110は、処理ユニット130の集団活動を測定するように構成される。いくつかの実施形態において、例えば、データ処理システム100がノードのネットワークから構成され、処理ユニット130がノードのサブセットから構成される場合、処理ユニット130の集団活動は、処理ユニット130の全てのノードの活動レベルの平均(mean)または平均(average)として計算される。あるいは、集団活動は、ノード活動の合計として計算されるか、サブサンプリングによって求められる。いくつかの実施形態では、データ処理システム100(またはその第1の制御モジュール110)は、処理ユニット130の集団活動を測定するための集団活動ノードを備える。集団活動ノードは、処理ユニット130の各ノードの活動レベルに関する情報を受信し、処理ユニット130の各ノードの活動レベルの平均値として集団活動を計算する。さらに、第1の制御モジュール110は、第1の制御信号160を提供するように構成される。第1の制御信号160は、処理ユニット出力158および処理ユニット130の測定された集団活動に基づいている。いくつかの実施形態において、第1の制御モジュール110は、処理ユニット出力158および処理ユニット130の測定された集団活動に基づいて、第1の制御信号160を計算する。いくつかの実施形態において、制御信号160は、処理ユニット130の測定された集団活動と目標集団活動との間の差に基づく。いくつかの実施形態において、第1の制御信号160は、閾値と比較され、第1の制御信号160が閾値を下回る場合、0に等しい信号が生成され、第1の制御信号160が閾値を上回る場合、1に等しい信号が生成される。したがって、これらの実施形態において、処理ユニット130へのスケーリングされた入力は、(第1の制御信号160が閾値より上である場合)ゼロ信号、または(第1の制御信号160が閾値より下である場合)フルシステム入力152のいずれかである。
【0038】
いくつかの実施形態では、データ処理システム100は、第1の変換モジュール124を備える。第1の変換モジュール124は、システム入力152または処理ユニット入力156を第1の利得Aに変換するように構成される。第1の変換モジュール124は、システム入力152および/または処理ユニット入力156を選択するためのスイッチ123に接続される。さらに、第1の利得への変換は、処理ユニット出力158に基づく。好ましくは、第1の利得Aは正である。第1の変換モジュール124は、第1の利得Aを第1の制御モジュール110に送信または他の方法で通信するように構成される。さらに、いくつかの実施形態において、データ処理システム100は、第2の変換モジュール134を備える。第2の変換モジュール134は、処理ユニット出力158を受信し、処理ユニット出力158を第2の利得Bに変換し、第2の利得Bを第1の制御モジュール110に送信または他の方法で通信するように構成される。好ましくは、第2の利得Bは負である。これらの実施形態において、第1の制御信号160は、処理ユニット出力158に直接基づく代わりに、第2の利得Bに基づく。第2の利得Bを利用することによって、処理ユニット出力158は、(第1の制御信号を介して)制御のために利用される前にバランスされ得る。いくつかの実施形態において、データ処理システム100は、第2の制御モジュール120を備える。第2の制御モジュール120は、システム入力152を受信するように構成される。さらに、第2の制御モジュール120は、システム入力152をスケーリングするように構成される。スケーリングは、第1の制御信号160に基づく。制御信号160が、処理ユニット130の測定された集団活動と目標集団活動との間の差に基づく場合、その差が大きいほど、システム入力152(またはその利得)が、例えば低減されるようにスケーリングされるように、スケーリングは、漸進的であってもよい。処理ユニット130への入力をスケーリングする、例えば、ゲインを低減する、またはデータ量を低減することによって、収束が促進され、および/または活動が飽和することが回避され、それによって、特に学習段階において、データ/情報のより効率的な処理が提供される。さらに、システム容量によっては、無限に長いデータ系列を識別することができる。さらに、第1および第2の制御モジュール110、120は、入力データを明確化することができ、したがって、処理ユニット130が、入力データのまだ説明されていない大きさ(次元)などの、まだ説明されていない入力データの解釈にリソースを集中させることを可能にする。第2の制御モジュール120は、次の時間ステップにおいて、スケーリングされたシステム入力を処理ユニット入力156として提供するように構成される。いくつかの実施形態では、データ処理システム100または好ましくは第2の制御モジュール120は、調整モジュール140を備える。調整モジュール140は、処理ユニット出力158(
図1では164として示されている)を受信するように構成されている。さらに、調整モジュール140は、処理ユニット出力158に基づいてシステム入力152を調整するように構成される。いくつかの実施形態において、調整モジュール140は、総和器、合計ユニット、減算器、結合器、または結合ユニットである。これらの実施形態において、処理ユニット出力158は、調整されたシステム入力、例えば、処理ユニット出力158とシステム入力152との間の差を形成するために、システム入力152に加算され、システム入力152から減算され、またはシステム入力152と比較され、調整されたシステム入力は、次いで、処理ユニット入力156(第2の制御モジュール120によってスケーリングされた)として利用される。いくつかの実施形態において、第1および第2の制御モジュール110、120は、処理ユニット130に対する次のシステム入力152を予測するように構成され、調整モジュール140は、予測された次のシステム入力152と実際の/リアルの次のシステム入力152との間の差に等しい調整/オフセットでシステム入力152を調整するように構成される。いくつかの実施形態において、第1の制御モジュール110は、第2の制御モジュール120を備える(または、組み合わされた第1および第2の制御モジュールとして機能する)。いくつかの実施形態では、データ処理システム100および/または処理ユニット130は、学習モード/フェーズにある。そして、(処理ユニット130の)特定のノード/ニューラルセルの活動レベルが閾値を下回る場合、これを利用して、特定のノードについて学習モード/フェーズを制限または停止できることをシグナリングすることができる。(処理ユニット130の)特定のノード/ニューラルセルの活動レベルが再び閾値を上回れば、学習モードを再び適用することができる。さらに、学習モード/フェーズにおいて、
図1のブロック/モジュール110、120、124、130、134、140の1つ以上は、それ自身の学習機能を持つことができる。したがって、
図1中の異なるブロック110、120、124、130、134、140は、1つずつ学習モードになってもよいし、すべて同時に学習モードになってもよいし、1つずつ互いに順次学習モードになってもよいし、ブロック110、120、124、130、134、140のうちの1つだけが学習モードになってもよい。一例として、第1の制御モジュール110のみが学習モードにある必要があるかもしれない。別の例として、第1の制御モジュール110と第2の制御モジュール120だけが学習モードにある必要があるかもしれない。さらに別の例として、第1の制御モジュール110、第1の変換モジュール124、第2の変換モジュール134、および調整モジュール140のみが、学習モードにある必要があるかもしれない。いくつかの実施形態では、データ処理システム100は、常に学習モードにある、すなわち、システム100が動作モードにあるときでも、学習は必要なときに実行される。あるいは、一旦完全に学習されると、システム100は動作モードに切り替わってもよい。システム100は、例えば、集団活動が集団活動閾値未満である場合に、完全にトレーニングされたと見做されてよい。したがって、システム100は、例えば、集団活動が集団活動閾値と等しいか、または集団活動閾値を上回っている場合、まだ完全にトレーニングされていないと見做されてよい。
【0039】
一態様では、第1の制御モジュール110は、第2の制御モジュール120に接続可能または接続されている。さらに、第1の制御モジュール110は、処理ユニット130に接続可能または接続されている。第1の制御モジュール110は、処理ユニット130の集団活動を測定するように構成可能または構成される。さらに、第1の制御モジュール110は、第1の制御信号160を第2の制御モジュール120に提供するように構成可能または構成され、それによって入力信号152のスケーリングを可能にする。いくつかの実施形態において、第1の制御信号160を提供するために、第1の制御モジュール110は制御信号160を計算する。第1の制御信号160は、処理ユニット出力158および処理ユニット130の測定された集団活動に基づく。データ処理システム100は、第1および第2の制御モジュール110、120を備えるので、データ処理システム100は、内部制御メカニズムを構成し、したがって、自律制御または自己制御を行うことができる。
【0040】
いくつかの実施形態では、データ処理システム100は人工ニューラルネットワークである。第1の制御モジュール110、第2の制御モジュール120および処理ユニット130のうちの1つ以上は、1つ以上のノードグループから構成される。さらに、第1の制御モジュール110、第2の制御モジュール120および処理ユニット130のうちの1つ以上は、学習機能を備える。さらに、システム入力152、システム出力162、第1の制御モジュール110、第2の制御モジュール120、処理ユニット130、および任意選択で第1の変換モジュール124、第2の変換モジュール134、および調整モジュール140は、多次元であり(多次元入力および/または多次元出力を有する)、したがって、アレイまたはマトリクスとして実装されてもよい。各モジュールを多次元アレイとして実装する利点は、処理ユニット130が、入力データのまだ説明されていない次元(大きさ)にその能力を自動的に集中させることができ、それによって(例えば、これらの次元を説明/推定する際の)精度を高めることができることである。いくつかの実施形態では、ネットワークの特定のノードをグループ化して、サブグループ、アレイ、またはマトリクスのカラムを形成することができる。サブグループ、アレイ、および/またはマトリクスは、さらに、状態に関する情報、すなわち、動的システムの数学的状態を記述する状態変数を含んでいてもよい。次に、グループ内のノードの1つの活動値を選択するように、ノードの各グループの活動レベルをサブサンプリングすることによって、集団活動を求めることができる。あるいは、ノードの各グループのノードの活動レベルの平均を計算することによって、集団活動を求めることもできる。このように、集団活動は多次元的であってもよい。さらに、これらの実施形態では、処理ユニット出力158は、処理ユニット130のノードのすべての活動レベルを備える。いくつかの実施形態では、第1の制御モジュール110、第2の制御モジュール120、処理ユニット130、第1の変換モジュール124、第2の変換モジュール134、および調整モジュール140のうちの1つまたは複数が、ニューラルネットワークを備える。したがって、ブロック110、120、124、130、134、140のうちの1つ以上は、入力信号を受信するための入力ユニットと、入力信号のそれぞれをそれぞれの重みでスケーリングするためのスケーリングユニットと、任意選択で、スケーリングされた入力信号の合計を計算するように構成された合計ユニットとを備えることができる。重みのいくつか、例えば、第2の変換モジュール134の重みは、いくつかの実施形態では0であり、したがって、疎な入力が提供される。さらに、ブロック110、120、124、130、134、140のそれぞれは、学習関数を構成してもよい。さらに、多次元モジュール(110、120、12、130、134および/または140)を利用することによって、データ処理システム/人工ニューラルネットワーク100は、(現在の)システム入力、例えば、センサデータ、をノードの1つまたは複数のサブグループ(複数可)またはグループ(複数可)に分配するようにトレーニングされ、(現在の)システム入力(例えば、センサデータ)がどの程度良好に処理/説明されるか、すなわち、測定された集団活動が(例えば、目標集団活動に関連して)どの程度大きいか、に依存して、システム入力(センサデータ)の、例えば、ノードのいくつかまたはすべてのサブグループまたはグループへの抑制(inhibition)が増加または減少する(
図2に関連して以下でさらに後述する)。
【0041】
図2は、いくつかの実施形態による例示的な方法ステップを示すフローチャートである。
図2は、データを処理するためのコンピュータ実装またはハードウエア実装方法200を示す。この方法は、アナログハードウエア/電子回路、デジタル回路、例えばゲートやフリップフロップ、ミックスドシグナル回路、ソフトウエア、およびそれらの任意の組み合わせで実装することができる。本方法は、(現在の時間ステップにおいて)処理ユニット130の集団活動を測定すること210を含む。処理ユニット130は集団を備える。さらに、処理ユニット130は、処理ユニット入力156を受信し、処理ユニット出力158を生成する。好ましくは、測定すること210は、第1の制御モジュール110によって実行される。さらに、本方法は、(現在の時間ステップにおいて)第1の制御信号160を提供すること220を含む。第1の制御信号は、処理ユニット出力158に基づき、かつ処理ユニット130の測定された集団活動に基づく。好ましくは、提供すること220は、第1の制御モジュール110によって実行される。いくつかの実施形態において、本方法は、(現在の時間ステップにおいて)第1の変換モジュール124によって、システム入力152または処理ユニット入力156を第1の利得Aに変換すること212を含む。第1の利得Aは好ましくは正である。任意選択で、本方法は、(現在の時間ステップにおいて)第2の変換モジュール134によって、処理ユニット出力158を第2の利得Bに変換すること214を含む。第2の利得Bは好ましくは負である。これらの実施形態において、第1の制御信号160は、第1の利得Aおよび任意選択で第2の利得Bに基づいている。第2の利得Bが第1の制御信号160に利用される場合、処理ユニット出力158が大きいほど、システム入力152の利得は、処理ユニット130に到達する前に(好ましくは以下に説明されるような第2の制御モジュールによって)低減される。さらに、本方法は、(現在の時間ステップにおいて)処理されるべきデータを備えるシステム入力152を受信すること230を含む。好ましくは、受信すること230は、第2の制御モジュール120によって実行される。本方法は、(現在の時間ステップにおいて)システム入力152をスケーリングすること240を含む。好ましくは、スケーリングすること240は、第2の制御モジュール120によって実行される。あるいは、スケーリングすること240は、例えば、第1の制御モジュールが第2の制御モジュール120を備える場合、第1の制御モジュール110によって実行される。スケーリングすること240は、第1の制御信号160に基づいて行われる。スケーリングされた入力は、次の時間ステップにおいて処理ユニット130に提供される。さらに、本方法は、(現在及び/又は次の時間ステップにおいて)処理ユニット出力158をシステム出力162として利用すること250を備える。いくつかの実施形態では、すべてのステップ210、220、230、240、250、および任意選択でステップ212、214、252、254、255、256、258、259、260、および270が、例えば次の時間ステップにおいて、1回または複数回繰り返される。いくつかの実施形態では、方法200は、処理されるべきすべてのデータが処理されるまで継続されるか、または繰り返される。
【0042】
あるいは、方法200は、システム100が完全にトレーニングされるまで継続または反復される。さらに別の代替形態として、方法200は、システムがオフになるまで継続または反復される。いくつかの実施形態では、第1の制御信号160は、第1の時間ステップ/インスタンスにおいて、0または1などの初期値を有する。いくつかの実施形態において、本方法は、(現在の時間ステップにおいて)、処理ユニット130の測定された集団活動が第1の閾値よりも大きいかどうかをチェックすること252を含む。処理ユニット130の測定された集団活動が、第1の閾値、例えば、目標集団活動よりも大きい場合、処理ユニット130の活動飽和が差し迫っていると考えられる。第1の閾値は適応的であってもよく、すなわち、第1の閾値は時間とともに変化してもよい。処理ユニット130の測定された集団活動が第1の閾値よりも大きい場合、本方法は、処理ユニット130の測定された集団活動に基づいて、処理ユニット入力156を抑制すること254をさらに含む。いくつかの実施形態において、抑制すること254は、処理ユニット130の測定された集団活動と目標集団活動との間の差に基づく。抑制すること254は、処理ユニット130の測定された集団活動が大きいほど(または差が大きいほど)、処理ユニット入力156がより抑制され、したがって処理ユニット130が処理するために利用可能なデータがより少なくなるように、漸進的であってもよい。従って、抑制すること254は、処理ユニット入力156のデータレートを低減することを含む。いくつかの実施形態では、(処理ユニット入力156のデータレートを低減するために)抑制すること254は、処理ユニット入力156を第1の時間期間、抑制し(または中断/停止し)、その後、処理ユニット入力156を(例えば、第2の時間期間、それによって第1および第2の時間期間が繰り返されてもよい)再開することを含む。あるいは、抑制すること254は、処理ユニット入力156のデータレートが、処理ユニット130の測定された集団活動と目標集団活動との間の差に基づいて連続的に調節/制御されるように、漸進的である。データレートの調節/制御は、処理ユニット130の測定された集団活動と目標集団活動との間の差を入力として有する非線形、例えば指数、または線形方程式に基づく制御戦略を利用するコントローラ、例えばPIDコントローラによって実行されてもよい。いくつかの実施形態(抑制すること254が漸進的である場合)において、処理ユニット入力156のデータレートは、処理ユニット130の測定された集団活動と目標集団活動との間の差がゼロ(0)より高い場合にのみ、連続的に調節/制御される。差が0より高くない場合、データレートは制御されない。しかしながら、他の実施形態(抑制すること254が漸進的である場合)において、処理ユニット入力156のデータレートは、処理ユニット130の測定された集団活動と目標集団活動との間の差が0と等しいかまたは0より低くても、連続的に調節/制御される。一例として、処理ユニット130の測定された集団活動と目標集団活動との間の差が0より低い場合、データレートは増加され、処理ユニット130の測定された集団活動と目標集団活動との間の差が0より高い場合、データレートは減少される。処理ユニット入力156のデータレート/スループットを連続的に制御することにより、ANN100は自己安定化し、データレート/スループットは改善または最適化される。さらに、いくつかの実施形態において、スケーリングすること240は、抑制すること254を含む。処理ユニット130の活動を抑制することによって、飽和が回避され、および/またはデータの説明/解釈が促進され、したがって学習が促進され得る。いくつかの実施形態において、本方法は、(現在の時間ステップにおいて)処理ユニット130の集団活動が第1の時間ステップの量の間、第2の閾値を超えるか否かをチェックすること256を含む。処理ユニット130の集団活動が、第1の時間ステップの量の間、第2の閾値を超える場合、収束は決して起こらないであろうと考えられる。処理ユニット130の集団活動が第1の時間ステップの量の間、第2の閾値以上である場合、本方法は、処理ユニット130をリセットすること258、およびその後、入力を再始動すること259をさらに含む。入力シーケンスは、最初から再始動されてもよい。これらの実施形態では、収束が促進される。したがって、(例えば、トレーニング/学習モードにある場合)より高速なトレーニング/学習が可能になる。いくつかの実施形態において、第2の閾値は適応的である、すなわち、第2の閾値は時間とともに変化してもよい。さらに、いくつかの実施形態では、リセットすること258および再始動すること259は、リセットおよび再始動モジュールによって実行される。あるいは、リセットすること258はリセットモジュールによって実行され、再始動すること259は再始動モジュールによって実行される。いくつかの実施形態において、本方法は、処理ユニット出力158を調整モジュール140に提供すること260を含む。第2の制御モジュール120は、調整モジュール140を含んでもよい。調整モジュール140は、システム入力152を受信し、処理ユニット出力158に基づいてシステム入力152を調整する270。これらの実施形態において、受信するステップ230は、調整モジュール140によって、システム入力152を受信することを含む。
【0043】
図3は、データを処理するための装置300に実装される例示的な方法ステップを示すフローチャートである。装置300は、制御回路を備える。制御回路は、1つまたは複数のプロセッサおよび/またはネットワークであってもよい。制御回路は、処理ユニット130の集団活動の測定310を行わせるように構成され、処理ユニット130は、処理ユニット入力156を受信し、処理ユニット出力158を生成する。この目的のために、制御回路は、測定ユニット(例えば、測定回路または測定器)に関連付けられ得る(例えば、動作可能に接続され得る、または接続される)。好ましくは、第1の制御モジュール110が測定ユニットを備える。さらに、制御回路は、第1の制御信号160の提供320を引き起こすように構成され、第1の制御信号160は、処理ユニット出力158に基づき、処理ユニット130の測定された集団活動に基づく。この目的のために、制御回路は、第1の提供ユニット(例えば、第1の提供回路または第1のプロバイダ)に関連付けられ得る(例えば、動作可能に接続され得る、または接続される)。好ましくは、第1の制御モジュール110は、提供ユニットを備える。いくつかの実施形態において、制御回路は、システム入力152または処理ユニット入力156の第1の利得Aへの変換312を引き起こすように構成される。この目的のために、制御回路は、第1の変換モジュール124(例えば、第1の変換回路または第1の変換器)に関連付けられ得る(例えば、動作可能に接続され得る、または接続される)。第1の利得Aは、好ましくは正である。制御回路は、処理ユニット出力158を第2の利得Bへの変換を引き起こすように構成される。この目的のために、制御回路は、第2の変換モジュール134(例えば、第2の変換回路または第2の変換器)に関連付けられる(例えば、動作可能に接続される、または接続される)。第2の利得Bは、好ましくは負である。これらの実施形態において、第1の制御信号160は、第1の利得Aおよび任意選択で第2の利得Bに基づく。さらに、本方法は、(現在の時間ステップにおいて)第1の制御信号160を提供すること320を含む。第1の制御信号は、処理ユニット出力158に基づき、処理ユニット130の測定された集団活動に基づく。好ましくは、提供すること320は、第1の制御モジュール110によって実行される。さらに、制御回路は、処理されるべきデータを有するシステム入力152を受信すること330を引き起こすように構成される。この目的のために、制御回路は、受信ユニット(例えば、受信回路または受信器)に関連付けられてよい(例えば、動作可能に接続される、または、接続される)。好ましくは、第2の制御モジュール120は受信ユニットを備える。あるいは、第1の制御モジュール110が受信ユニットを備える。制御回路は、次の時間ステップにおいて処理ユニット130に入力を提供するために、システム入力152のスケーリング340を引き起こすように構成される。スケーリング340は、第1の制御信号160に基づく。この目的のために、制御回路は、スケーリングユニット(例えば、スケーリング回路またはスケーラー)に関連付けられてよい(例えば、動作可能に接続される、または接続される)。好ましくは、第2の制御モジュール120は、スケーリングユニットを備える。あるいは、例えば第1の制御モジュールが第2の制御モジュール120を備える場合、第1の制御モジュール110がスケーリングユニットを備える。さらに、制御回路は、処理ユニット出力158をシステム出力162として利用350させるように構成される。この目的のために、制御回路は、利用ユニット(例えば、利用回路または利用器)に関連付けられてよい(例えば、動作可能に接続される、または接続される)。
【0044】
いくつかの実施形態において、制御回路は、処理ユニット130の測定された集団活動が第1の閾値より大きい場合に、チェックすること352を引き起こすように構成される。この目的のために、制御回路は、第1のチェックユニット(例えば、第1のチェック回路または第1のチェッカー)に関連付けられてよい(例えば、動作可能に接続され得る、または接続される)。これらの実施形態において、制御回路は、処理ユニット130の測定された集団活動が第1の閾値より大きい場合、第1の時間期間、処理ユニット130を抑制すること354、およびその後のデータの処理を再開すること355を引き起こすように構成される。この目的のために、制御回路は、抑制および再開ユニット(例えば、抑制および再開回路または抑制器/再開器)に関連付けられてよい(例えば、動作可能に接続され得る、または接続される)。いくつかの実施形態において、抑制器は、第1の制御モジュール110内に構成される、すなわち、第1の制御モジュール110は、抑制器(図示せず)を備える。さらに、いくつかの実施形態において、抑制器は、比例積分微分(PID)コントローラなどの制御ユニットまたはコントローラを備える。いくつかの実施形態において、制御回路は、処理ユニット130の集団活動が第1の時間ステップの量の間、第2の閾値を超える場合に、チェックすること356を引き起こすように構成される。この目的のために、制御回路は、第2のチェックユニット(例えば、第2のチェック回路または第2のチェッカー)に関連付けられてよい(例えば、動作可能に接続され得る、または接続される)。これらの実施形態において、制御回路は、処理ユニット130の集団活動が第1の時間ステップの量の間、第2の閾値を超える場合、処理ユニット130をリセットすること358、およびその後、処理ユニット130への入力を再始動すること359を引き起こすように構成される。この目的のために、制御回路は、リセットユニットおよび再始動ユニット(例えば、リセット/再始動回路またはリセット器/再始動器)に関連付けられてよい(例えば、動作可能に接続され得る、または接続される)。入力シーケンスは、最初から再始動されてよい。いくつかの実施形態において、制御回路は、処理ユニット出力158を調整モジュール140へ提供すること360を引き起こすように構成される。この目的のために、制御回路は、第2の提供ユニット(例えば、第2の提供回路または第2のプロバイダ)に関連付けられてよい(例えば、動作可能に接続される、または接続される)。第2の制御モジュール120は、調整モジュール140を備えてよい。これらの実施形態において、制御回路は、処理ユニット出力158に基づいてシステム入力152を調整するように構成される。この目的のために、制御回路は、調整モジュールに関連付けられてよい(例えば、動作可能に接続される、または接続される)。さらに、これらの実施形態において、受信すること330は、調整モジュール140におけるシステム入力152を受信することを含む。
【0045】
いくつかの実施形態によれば、コンピュータプログラム製品は、例えばユニバーサルシリアルバス(USB)メモリ、プラグインカード、組み込みドライブ、デジタル多用途ディスク(DVD)または読み出し専用メモリ(ROM)などの非一過性のコンピュータ可読媒体400から構成される。
図4は、コンパクトディスク(CD)ROM400の形態のコンピュータ可読媒体の例を示している。このコンピュータ可読媒体には、プログラム命令からなるコンピュータプログラムが格納されている。コンピュータプログラムは、例えば、コンピュータまたはコンピューティングデバイス410で構成されるデータ処理装置(PROC)420にロード可能である。データ処理装置にロードされるとき、コンピュータプログラムは、データ処理装置と関連付けられるか、またはデータ処理装置に構成されるメモリ(MEM)430に格納されてもよい。いくつかの実施形態によれば、コンピュータプログラムは、データ処理ユニットにロードされ、データ処理ユニットによって実行されると、例えば、本明細書で説明される
図2に示される方法に従って、方法ステップの実行を引き起こし得る。
【0046】
いくつかの実施形態では、データ処理システム100は1つ以上のセルからなり、各セルは入力ゲート、忘却ゲート、出力ゲートからなる。各セルは任意の時間間隔にわたって値を記憶し、ゲートはセルへの情報の入出力を調節する。さらに、いくつかの実施形態では、データ処理システム100は、フィードバック接続を備える。データ処理システム100は、人工リカレントニューラルネットワーク(RNN)であってもよい。ある実施形態では、データ処理システム100は、上述のように変更されたLSTMである。あるいは、データ処理システム100は、アトラクターネットワークなどのノードのネットワークである。さらに、いくつかの実施形態では、データ処理システム100は、フィードフォワード(ニューラル/ニューロン)ネットワークに取り付け可能な、または取り付けられた、モジュールである。これらの実施形態では、データ処理システムは、例えば、トレーニング/学習モード中に、1つまたは複数の個々のノードにおける活動の飽和を防止することができ、したがって、トレーニング/学習フェーズを短縮する、またはより効率的にするなど、トレーニング/学習フェーズを改善することができる。
【0047】
いくつかの実施形態では、システム入力152は、1つまたは複数のセンサによって生成された時間連続データである。センサは、デジタルカメラなどの1つまたは複数のカメラであってもよい。あるいは、センサは、1つまたは複数のタッチセンサ、音声信号の周波数帯域に関連する1つまたは複数のセンサ、または1つまたは複数のマイクなどのスピーカに関連する1つまたは複数のセンサであってもよい。いくつかの実施形態では、1つまたは複数のセンサはデジタルカメラであり、システム入力152は、(時間的に連続する一連の画像の)画像の各画素についての時間的に連続する画素値を有する時間的に連続する多次元入力である。画素値は強度および/または色を表し、すなわち、画素値のすべてまたは一部が強度を表し、および/または画素値のすべてまたは一部が色を表す。画像は、デジタルカメラなどのカメラによって撮像されてもよい。さらに、データ処理システム100は、ノードまたはニューラルセルのネットワークであってもよく、処理ユニット130は、複数のノードを備えてもよく、処理ユニット130に構成されるノードの各々は、特定の画素に関連付けられてもよい。したがって、プロセッサに備えられる各特定のノードは、それが関連付けられている特定の画素の(時間的に連続する一連の画像における)時間的に連続する画素値を処理することができる。
【0048】
いくつかの実施形態では、1つまたは複数のセンサはタッチセンサであり、システム入力152は、力依存値、例えば0から1までの値を有する時間連続タッチイベント信号からなる時間連続多次元入力である。いくつかの実施形態では、力依存値は、バイナリ値、例えば0または1を作成するために閾値と比較される。さらに、データ処理システム100は、ノードまたはニューラルセルのネットワークであってもよく、処理ユニット130は、複数のノードを備えてもよく、処理ユニット130に備えられるノードの各々は、特定のタッチセンサに関連付けられてもよい。従って、プロセッサに構成される各特定のノードは、それが関連付けられる特定のタッチセンサの時間連続タッチイベント信号を処理することができる。
【0049】
いくつかの実施形態では、1つまたは複数のセンサの各センサは、オーディオ信号の異なる周波数帯域に関連付けられ、システム入力152は、異なる周波数帯域の時間連続オーディオ信号からなる時間連続多次元入力である。各センサは、関連する周波数帯域に存在するエネルギーをレポートする。さらに、データ処理システム100は、ノードまたはニューラルセルのネットワークであってもよく、処理ユニット130は、複数のノードを備えてもよく、処理ユニット130に備えられるノードの各々は、特定の周波数帯域/センサに関連付けられてもよい。したがって、プロセッサに備えられる各特定のノードは、それが関連付けられる特定の周波数帯域/センサの時間連続オーディオ信号を処理することができる。
【0050】
例示的リスト
1.コンピュータ実装またはハードウエア実装方法(200)であって、前記方法(200)は、以下のステップを含む:
好ましくは第1の制御モジュール(110)によって、集団を備える処理ユニット(130)の集団活動を測定し(210)、ここで、前記処理ユニット(130)は、処理ユニット入力(156)を受信し、処理ユニット出力(158)を生成し;
好ましくは前記第1の制御モジュール(110)によって、第1の制御信号(160)を提供し(220)、ここで、前記第1の制御信号(160)は、前記処理ユニット出力(158)に基づき、かつ前記処理ユニット(130)の測定された集団活動に基づく;
好ましくは第2の制御モジュール(120)によって、処理されるべきデータを含むシステム入力(152)を受信し(230);
好ましくは前記第2の制御モジュール(120)によって、前記第1の制御信号(160)に基づいて、前記システム入力(152)をスケーリングし(240)、それによって、次の時間ステップにおいて、スケーリングされた入力を前記処理ユニット(130)に提供し;および、
前記処理ユニット出力(158)をシステム出力(162)として利用する(250)。
2.上記例1の方法であってさらに以下のステップを含む:
前記処理ユニット(130)の測定された集団活動が第1の閾値よりも大きいか否かをチェックし(252);および、
前記処理ユニット(130)の測定された集団活動が前記第1の閾値よりも大きい場合、前記処理ユニット(130)の測定された集団活動に基づいて、前記処理ユニット入力(156)を抑制する(254)。
3.上記例1または2の方法であってさらに以下のステップを含む:
前記処理ユニット(130)の集団活動が、第1の時間ステップの量の間、第2の閾値を超えるか否かをチェックし(256);および、
前記処理ユニット(130)の前記集団活動が、前記第1の時間ステップの量の間、前記第2の閾値を超えている場合、前記処理ユニット(130)をリセット(258)し、入力シーケンスを最初から再開するなど、入力を再始動(259)する。
4.上記例1から3のいずれかの方法であってさらに以下のステップを含む:
前記処理ユニット出力(158)を調整モジュール(140)に提供し(260);
前記調整モジュール(140)によって、前記処理ユニット出力(158)に基づいて前記システム入力(152)を調整し(270);および、
ここで、前記受信すること(230)は、前記調整モジュール(140)によって、前記システム入力(152)を受信することを含む。
5.前記システム入力(152)が、1つまたは複数のカメラ、1つまたは複数のタッチセンサ、音声信号の周波数帯域に関連する1つまたは複数のセンサ、または1つまたは複数のマイクロフォンなどのスピーカに関連する1つまたは複数のセンサなどの1つまたは複数のセンサによって生成された時間連続データである、上記例1から4のいずれかの方法。
6.上記例1から5のいずれかの方法であって、さらに以下のステップを含む:
第1の変換モジュール(124)によって、前記システム入力(152)を第1の利得(A)に変換し(212)、ここで、前記第1の利得(A)は正であり;および、
任意選択で、第2の変換モジュール(134)によって、前記処理ユニット出力(158)を第2の利得(B)に変換し(214)、ここで、前記第2の利得(B)は負であり;および、
ここで、前記第1の制御信号(160)は、さらに、前記第1の利得および任意選択で前記第2の利得に基づいている。
7.非一過性のコンピュータ可読媒体(1000)であって、プログラム命令を含むコンピュータプログラムをその上に記憶している、非一過性のコンピュータ可読媒体(1000)を含むコンピュータプログラム製品であって、前記コンピュータプログラムは、データ処理ユニット(1020)にロード可能であり、前記コンピュータプログラムが前記データ処理ユニット(1020)によって実行されるときに、上記例1から6のいずれかの方法の実行を引き起こすように構成されている、コンピュータプログラム製品。
8.データ処理システム(100)であって、処理すべきデータを含むシステム入力(152)を受信し、システム出力(162)を生成するように構成され、以下を備える:
集団を備え、処理ユニット入力(156)を受信し、処理ユニット出力(158)を生成するように構成された処理ユニット(130)であって、前記処理ユニット出力(158)は前記システム出力(162)として利用される、処理ユニット(130);
前記処理ユニット(130)の集団活動を測定し、第1の制御信号(160)を提供するように構成された第1の制御モジュール(110)であって、前記第1の制御信号(160)は、前記処理ユニット出力(158)および前記処理ユニット(130)の測定された集団活動に基づく、第1の制御モジュール(110);
第2の制御モジュール(120)であって、前記システム入力(152)を受信し、前記第1の制御信号(160)に基づいて前記システム入力(152)をスケーリングするように構成され、前記スケーリングされたシステム入力を次の時間ステップにおいて前記処理ユニット入力(156)として提供するよう構成される、第2の制御モジュール(120)。
9.上記例8のデータ処理システムであって、前記データ処理システムは、人工ニューラルネットワークであり、前記処理ユニット(130)、前記第1の制御モジュール(110)および前記第2の制御モジュール(120)のうちの1つ以上が、集団および学習機能を備え、
前記システム入力(152)、前記処理ユニット(130)、前記第1の制御モジュール(110)および前記第2の制御モジュール(120)が、多次元であり、アレイまたはマトリクスとして実装される。
10.第2の制御モジュール(120)およびかつ処理ユニット(130)に接続可能な第1の制御モジュール(110)であって、
前記第1の制御モジュール(110)は、前記処理ユニット(130)の集団活動を測定するように構成可能であり、
第1の制御信号(160)を前記第2の制御モジュール(120)に提供するように構成可能であり、それによって入力信号(152)のスケーリングを可能し、前記第1の制御信号(160)は、処理ユニット出力(158)と、前記処理ユニット(130)の測定された集団活動とに基づいている。
【0051】
当業者は、本開示が上述の好ましい実施形態に限定されないことを理解する。当業者はさらに、添付の特許請求の範囲の範囲内で修正および変形が可能であることを理解する。例えば、香りセンサや風味センサなどの他のセンサからの信号をデータ処理システムで処理してもよい。さらに、説明したデータ処理システムは、セグメント化されていない、接続された手書き認識、音声認識、話者認識、ネットワークトラフィックまたは侵入検知システム(IDS)における異常検知同様に利用することができる。さらに、開示された実施形態に対する変形は、請求された開示を実施する当業者によって、図面、本開示、および添付の特許請求の範囲の研究から理解され、効果を発揮することができる。
【国際調査報告】