JP7474446B2 - マルチラベル予測に適したニューラルネットワークの射影層 - Google Patents

マルチラベル予測に適したニューラルネットワークの射影層 Download PDF

Info

Publication number
JP7474446B2
JP7474446B2 JP2021568620A JP2021568620A JP7474446B2 JP 7474446 B2 JP7474446 B2 JP 7474446B2 JP 2021568620 A JP2021568620 A JP 2021568620A JP 2021568620 A JP2021568620 A JP 2021568620A JP 7474446 B2 JP7474446 B2 JP 7474446B2
Authority
JP
Japan
Prior art keywords
layer
neural network
projection
training
series
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021568620A
Other languages
English (en)
Other versions
JP2022532781A (ja
Inventor
デビッド アモス、ブランドン
コルタン、ブラドレン
ジーグ コルター、ジェレミー
リュディガー シュミット、フランク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of JP2022532781A publication Critical patent/JP2022532781A/ja
Application granted granted Critical
Publication of JP7474446B2 publication Critical patent/JP7474446B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)

Description

特許法第30条第2項適用 掲載年月日:2019年5月3日、掲載アドレス:https://github.com/bamos/thesis/blob/master/bamos_thesis.pdf
本開示の主題は、ニューラルネットワークを訓練するためのニューラルネットワーク訓練装置、訓練されたニューラルネットワークを適用するためのニューラルネットワーク適用装置、ニューラルネットワーク装置を含む自律装置コントローラ、ニューラルネットワークを訓練するためのニューラルネットワーク訓練方法、訓練されたニューラルネットワークを適用するためのニューラルネットワーク方法、一時的または非一時的なコンピュータ読み取り可能媒体に関する。
一部の分類タスクでは、画像などの特定の入力を複数のラベルに分類することが望まれる。マルチラベル分類は、例えば画像分類やグラフ生成タスクのように、真にマルチラベルであるタスクから発生する可能性がある。例えば、複数のラベルが画像に適切である場合があり、例えば、オブジェクト分類において、画像が複数のオブジェクトを示し、その結果、画像が複数のオブジェクトを説明する複数のラベルで分類され得る場合がある。
マルチラベル分類は、単一ラベル予測タスクが、トップkのラベルのセットを予測するマルチラベル予測タスクに変換された場合にも発生する可能性がある。例えば、トップkのエラーを判別するために、トップkのラベリングが必要な場合がある。トップkのエラーは、機械学習とコンピュータービジョンのパフォーマンスの一般的な尺度である。
トップkの分類の場合、k個の最も可能性の高いラベルを予測するためにニューラルネットワークが必要になる場合がある。ここで、kは通常、ラベルの総数と比較して非常に小さい。次に、k個のラベルのすべてまたはほとんどがグラウンドトゥルースと異なる場合、予測は正しくないと見なされ、そうでない場合は正しいと見なされる。これは一般にトップkのエラーと呼ばれる。通常、分類器にはディープニューラルネットワークが含まれる。ディープニューラルネットワークは、クロスエントロピー損失を伴うトップkの分類のために訓練できる。kの典型的な例の値は5に等しく、より大きな値とより小さな値も可能である。
既知のトップkの分類器は、Leonard Berrada他による「Smooth Loss Functions for Deep Top-k Classification」に記載されており、参照により本明細書に含まれ、「Smooth SVM」または「Berrada」と呼ばれる。この論文では、クロスエントロピー損失を伴う訓練の不利な点が言及されている。例えば、クロスエントロピーは特定のkに合わせて調整されておらず、特にトップ5のエラー最小化に合わせて調整されていない。さらに、利用できるデータの量が限られている場合、クロスエントロピーを使用して大規模なニューラルネットワークを学習すると、不完全なラベルやノイズの多いラベルに過剰適合しやすくなる。
Berradaで説明されている既知のトップkの分類器は、ニューラルネットワークの出力がトップkのエラーに従って評価されることを考慮した損失関数を使用して、ディープニューラルネットワークを訓練することでこれらの問題に対処する。ただし、不利な点は残っている。さらに、Smooth SVMの訓練パフォーマンスを向上させることができる。さらに、Smooth SVMは遅くなる可能性があり、さらに計算時間はkとともに増加する。
改良されたニューラルネットワークを持つことは有利であろう。現在開示されている主題は、独立請求項によって定義される。従属請求項は、有利な実施形態を定義する。
ニューラルネットワークの一実施形態は、一連のニューラルネットワーク層を含む。一連のニューラルネットワーク層の少なくとも1つの層は射影層である。射影層は、射影層の層入力ベクトルを層出力ベクトルに射影するように構成される。射影には、層出力ベクトルに適用される層損失関数の最適化が含まれる。最適化は、射影層の出力ベクトルの合計が合計パラメータになるという条件に従う。
通常、ニューラルネットワーク層は、ニューラルネットワーク層の入力ベクトルをニューラルネットワーク層の出力ベクトルにマッピングする関数を適用する。興味深いことに、所定の入力ベクトルに対して射影層の出力ベクトルを取得することには、最適化問題を解くことも含まれる。
損失関数は、少なくとも一部の部分、つまり調整項と射影項を含むことができる。
これらの2つの項は、射影を制御するために使用できる。例えば、調整項を使用して、最適化をスパースベクトルなどの望ましくないベクトルから遠ざけることができる。一方、射影項を使用して、射影層の出力ベクトルが入力と定義された関係を持っていること、例えば入力ベクトルに似ていることを保証できる。
ヒルクライミングからシミュレーテッドアニーリングまで、射影層の最適化を解決するために使用できる最適化アルゴリズムは多数ある。しかしながら、このタイプの層を適用するための特に効率的なアルゴリズムが開発されており、本明細書に記載されている。
例えば、射影層は、一連のニューラルネットワーク層の最終層であり得る。初期の層は、従来のニューラルネットワーク層、例えば、畳み込み層、ReLu層、高密度層、ソフトマックス層、プーリング層などであり得る。例えば、射影層を分類ネットワークに追加することができる。例えば、分類ネットワークは、その最終層において、複数のオブジェクト分類の可能性を示すベクトルを生成するように構成され得る。射影層を追加することにより、既知のネットワークを複数の分類またはトップkの予測用に最適化できる。
トップkの予測のために既知の分類ネットワークを変更することが可能である。例えば、k個の高い予測をトップk個の予測として単純に取ることができる。ただし、これは最適ではない。これは、ネットワークがトップkの予測について評価されたフィードバックを受信しない可能性があるためである。
射影層は、特に、複数のラベルが予測されるが、訓練データが不完全であることがわかっている状況で適用される場合がある。例えば、一部のラベルはセンサデータ、たとえば画像に使用できるが、すべてまたはほとんどの適用可能なラベルがリストされているわけではない。この現象が特に顕著である状況は、シーングラフ予測タスクのエッジの予測関係にある。通常、訓練センサデータは、適用可能なすべてのラベルまたは最も可能性の高いラベルでアノテートされていない。
最適化層は、特に、自律装置コントローラで使用するためのニューラルネットワークの状況で適用することができる。この場合、ニューラルネットワークを使用して、自律装置の近くにあるオブジェクトを分類することができる。射影層を使用すると、分類のロバスト性が向上する。
例えば、コントローラは、ニューラルネットワークを使用して、センサデータ内のオブジェクトを分類し、分類を使用して自律装置を制御するための制御信号を生成することができる。コントローラは、自律装置の一部である場合がある。自律装置は、ニューラルネットワークの入力に使用できるセンサデータを生成するように構成されたセンサを含み得る。
ニューラルネットワーク訓練装置およびニューラルネットワーク適用装置は電子装置である。ニューラルネットワーク適用装置は、物理装置、例えば、その動きを制御するための技術システムなどの別の物理装置に含まれ得る。
現在開示されている主題の一態様は、ニューラルネットワークを訓練するためのニューラルネットワーク訓練方法である。現在開示されている主題の一態様は、訓練されたニューラルネットワークを適用するためのニューラルネットワーク法である。
方法の一実施形態は、コンピュータ実装方法としてコンピュータ上に、または専用ハードウェアで、あるいは両方の組み合わせで、実装され得る。この方法の一実施形態の実行可能コードは、コンピュータプログラム製品に記憶することができる。コンピュータプログラム製品の例には、メモリデバイス、光ストレージデバイス、集積回路、サーバ、オンラインソフトウェアなどが含まれる。好ましくは、コンピュータプログラム製品は、プログラム製品がコンピュータ上で実行されるときに方法の実施形態を実行するために、コンピュータ読み取り可能媒体に記憶された非一時的なプログラムコードを含み得る。
一実施形態では、コンピュータプログラムは、コンピュータプログラムがコンピュータ上で実行されるときに、方法の実施形態のステップの全部または一部を実行するように適合されたコンピュータプログラムコードを含む。好ましくは、コンピュータプログラムは、コンピュータ読み取り可能媒体上に具体化され得る。
現在開示されている主題の別の態様は、コンピュータプログラムをダウンロード可能にする方法を提供する。この態様は、コンピュータプログラムがアップルのアップルストア、グーグルのプレイストア、マイクロソフトのウインドウズストアなどにアップロードされている場合、およびコンピュータプログラムがそのようなストアからダウンロードできる場合に使用される。
本開示の主題のさらなる詳細、態様、および実施形態は、例として、図面を参照して説明される。図中の要素は、簡潔さと明確さのために示されているものであり、必ずしも一定の縮尺で描かれているわけではない。図において、既に説明した要素に対応する要素は、同じ参照番号を有し得る。
図1aは、訓練されたニューラルネットワークを訓練するためのニューラルネットワーク訓練装置の実施形態の例を概略的に示す。 図1bは、訓練されたニューラルネットワークを適用するためのニューラルネットワーク適用装置の実施形態の例を概略的に示す。 図1cは、LMLポリトープの実施形態の例を概略的に示す。 図2aは、二重変数を最適化する一実施形態の例を概略的に示す。 図2bは、関数g(v)に寄与する個々のロジスティック関数の分解の例を概略的に示す。 図3aは、一実施形態の例におけるフォワード時間のタイミング性能結果を概略的に示す。 図3bは、一実施形態の例におけるバックワード時間のタイミング性能結果を概略的に示す。 図3cは、視覚的ゲノム上でのシーングラフ生成の実施形態のための訓練再現率の例を概略的に示す。 図4は、ニューラルネットワークを訓練するためのニューラルネットワーク方法の一実施形態の例を概略的に示す。 図5は、訓練されたニューラルネットワークを適用するためのニューラルネットワーク方法の実施形態の例を概略的に示す。 図6aは、一実施形態による、コンピュータプログラムを含む書き込み可能な部分を有するコンピュータ読み取り可能媒体を概略的に示す。 図6bは、一実施形態によるプロセッサシステムの表現を概略的に示す。
この現在開示されている主題は、多くの異なる形態の実施形態の影響を受けやすいが、本開示は、現在開示されている主題の原理の例示と見なされるべきであり、本開示の主題を開示されている特定の実施形態に限定することを意図するものではないことを理解した上で、図面に示され、本明細書では1つまたは複数の特定の実施形態を詳細に説明する。
以下では、理解のために、実施形態の要素が動作中に説明されている。しかしながら、それぞれの要素が、それらによって実行されるように説明されている機能を実行するように配置されていることは明らかであろう。
さらに、本開示の主題は、実施形態に限定されず、本開示の主題は、本明細書に記載されているか、または相互に異なる従属請求項に記載されているすべての新規の特徴または特徴の組み合わせにある。
マルチラベル予測タスクは、コンピュータービジョンに頻繁に現れる。マルチラベル予測は、例えばグラフ生成タスクのように、真にマルチラベルであるタスクから、または例えば単一ラベル予測タスクをトップkのラベルのセットを予測するマルチラベル予測タスクに変換することによって発生する可能性がある。シーングラフの生成などの高次元のケースでは、マルチラベルデータをアノテートすることは困難であり、多くの場合、不完全なラベリングを持つデータセットになる。このような場合、ニューラルネットワークは通常、k個のラベルの予測に限定され、ネットワークの予測セットに存在する既知のラベルの割合である再現率で評価される。ソフトマックス関数やシグモイド関数を使用するなどの標準的なアプローチは、ニューラルネットワークが観測されていないラベルをキャプチャできるようにする方法がないため、ここでは理想的ではない。
自動運転車などの自律装置コントロールは、信頼できる分類に基づく意思決定に依存する。実際の分類問題では、通常、クラスの数は非常に多くなる。これは、脆弱な分類器につながる。したがって、結果として生じる装置の制御は信頼性が低く、自律装置コントロールには特に望ましくない。
装置コントロールのロバスト性を高めるために、ラベルの数を予め定義された数kに固定することができる。これにより、装置コントロール用の分類器のロバスト性が向上する。予め定義された数のラベルを予測するニューラルネットワークは、一実施形態のように射影層から利益を得る。
例えば、一実施形態では、ニューラルネットワークは、K個のクラスを正確に分類できない場合があるが、k≪Kのトップ(k)クラスの分類は、一実施形態による射影層を使用して実行する方が簡単である。いずれの場合も、いくつかのデータポイントは複数のクラスを含んでおり、マルチラベルクラスの方が理にかなっている。シーンを理解するために、例えば、シーングラフ生成を実行するときなど、オブジェクトは、予め定義された数の他のオブジェクトに関連して分類され得る。
例えば、エンドツーエンドの学習システムのために、ニューラルネットワークにおける新しい基本演算として使用され得る新しい射影層が提供される。射影層は、本明細書では限定マルチラベル(LML)層と呼ばれる。LML層は、正確にk個のラベルを持つことに限定されたマルチラベル予測をモデル化する確率的な方法を提供する。
図1aは、ニューラルネットワークを訓練するためのニューラルネットワーク訓練装置100の実施形態の例を概略的に示している。ニューラルネットワークは、一連のニューラルネットワーク層120を含む。ニューラルネットワーク層は、層入力ベクトルを層出力ベクトルに射影するように構成されている。層間には接続がある。例えば、ニューラルネットワーク訓練装置100は、一連のニューラルネットワーク層の複数の層のパラメータを記憶するように構成されたニューラルネットワークストレージ134を備えることができる。例えば、パラメータは、層のニューロンのパラメータ、または層内部または層120間の接続の重みであり得る。ネットワークはまた、一連であることが120として破線で概略的に示されている。図1aは、一連のニューラルネットワーク層120の層121および122を示している。
ネットワークは、フォワードパスおよびバックワードパス用に構成され得る。例えば、装置100は、例えば、ニューラルネットワークを所定の入力に適用するために、フォワードパスを実行するように構成されたアプリケーションユニット140を備え得る。例えば、ユニット140は、一連のニューラルネットワーク層を入力データに適用するように構成され得る。アプリケーションユニット140は、以下でさらに説明される射影層ユニット142を含み得る。
訓練装置100は、ニューラルネットワーク120を訓練するための訓練データを記憶するように構成された訓練ストレージ132を備えることができる。例えば、アプリケーションユニット140は、訓練データストレージ132内の訓練データに適用され得る。
訓練装置100は、ネットワークを訓練するために記憶されたパラメータを調整、例えば、訓練入力に対するネットワークの出力が訓練出力により厳密に従うようにパラメータを調整するように構成されたバックプロパゲーションユニット130をさらに含む。バックプロパゲーションユニット130は、射影層146のためのバックプロパゲーションユニットを含み得る。
ネットワークが訓練されると、訓練されたニューラルネットワークを適用するための適用装置で全体的または部分的に使用できる。図1bは、訓練されたニューラルネットワークを適用するためのニューラルネットワーク適用装置150の実施形態の例を概略的に示している。ネットワーク適用装置150は、入力データを受信するための通信インターフェース126を含む。アプリケーションユニット140および射影層ユニット142は、図1aと同じであり得る。
例えば、図1aの訓練データと図1bの入力は、1つまたは複数のラベルでアノテートされたセンサデータを含む場合がある。ニューラルネットワークは、訓練データに従ってセンサデータが与えられると、いくつかのラベルを生成するように訓練され得る。ラベルの数は予め決定することができる。例えば、ニューラルネットワークの最終出力は、0~1のエントリを持つベクトルであり、各エントリはラベルに対応し、対応するラベルを持つオブジェクトが入力で認識された可能性を示す値を持ち得る。例えば、出力ベクトルの最初のエントリは車に対応し、2番目のエントリはサイクリストに対応する場合がある。興味深いことに、予測されるラベルの数は予め決定されている可能性がある。例えば、5ラベル以上または以下、または正確に1または10以上、または100以上などを予測するように制約される場合がある。
訓練データは、ビデオ、レーダ、LiDAR、超音波、モーションなどの1つ以上を含む任意のセンサデータを含むことができる。LML層は、CNN(フレームベースまたはビデオベース)などのフィードフォワードネットワークやRNNアーキテクチャ(フレームベースまたはビデオベース)で使用できる。結果として得られるニューラルネットワークは、物理システムを制御するための制御信号を計算するために使用できる。例えば、制御信号は、ロボット、車両、家庭用電化製品、電動工具、製造機械、パーソナルアシスタントまたはアクセス制御システムなどのようなコンピュータ制御された機械のためのものであり得る。例えば、分類結果に基づいて決定を下すことができる。LML射影層は、よりロバストな方法で分類を実行するのに役立つ。
LML射影層を含む分類のために訓練されたニューラルネットワークは、監視システムまたは画像化システム、例えば、医用画像化システムなどの情報を伝達するためのシステムに含まれ得る。例えば、ニューラルネットワークは、例えば、顔認識によって、例えば、システムへのアクセスを許可するために、センサデータを分類するように構成され得る。興味深いことに、ニューラルネットワークでは、ロバスト分類により、観測データのあいまいさが許容される。例えば、ニューラルネットワークの出力がグラウンドトゥルースに近づく一方で、ニューラルネットワークは不完全な分類訓練データで訓練される可能性があることがわかった。
システム100および/または150は、コンピュータネットワークを介して、互いに、または外部ストレージまたは入力装置または出力装置と通信することができる。コンピュータネットワークは、インターネット、イントラネット、LAN、WLANなどである可能性がある。コンピュータネットワークはインターネットかもしれない。システムは、必要に応じてシステム内またはシステム外で通信するように配置された接続インターフェースを備えている。例えば、接続インターフェースは、コネクタ、例えば、有線コネクタ、例えば、イーサネットコネクタ、光コネクタなど、または無線コネクタ、例えば、アンテナ、例えば、Wi-Fi、4Gまたは5Gアンテナなどを含み得る。
システム100および150の実行は、プロセッサシステム、例えば、1つまたは複数のプロセッサ回路に実装され、その例が本明細書に示されている。図1aおよび1bは、プロセッサシステムの機能ユニットである可能性のある機能ユニットを示している。例えば、図1aおよび1bは、プロセッサシステムの可能な機能構成の青写真として使用され得る。プロセッサ回路は、これらの図のユニットとは別個に示されていない。例えば、図1aおよび1bに示されている機能ユニットは、例えば、システム100および150の電子メモリでシステム100および150に記憶され、システム100および150のマイクロプロセッサによって実行可能であるコンピュータ命令に全体的または部分的に実装され得る。ハイブリッドの実施形態では、機能ユニットは、部分的にハードウェア、例えば、コプロセッサ、例えば、ニューラルネットワークコプロセッサとして実装され、そして部分的に、システム100および150に記憶および実行されるソフトウェアに実装される。ネットワークおよび/または訓練データのパラメータは、システム100および150にローカルに記憶され得るか、またはクラウドストレージに記憶され得る。
射影層は、図1aおよび1bに層144として示されている。アプリケーション層144は、射影層を適用するように構成された射影層142を含む。図1aおよび1bにおいて、この場合は最後の層として単一の射影層が示される。ただし、これは必須ではなく、フォワードパスおよびバックワードパスの両方を、複数の射影層および/または最終層ではない射影層に適用できる。例えば、射影層の出力、例えば、入力センサデータ内のオブジェクトを識別する信号は、データをさらに処理するさらなるネットワーク層への入力として使用され得る。
射影は訓練可能なパラメータを含まない場合がある。特に、予測されるラベルの数kは固定され得る。しかしながら、一実施形態では、数kを含むいくつかのパラメータ、しかしおそらく温度またはレギュレータのパラメータまたは射影項などの損失関数のパラメータは、メタ訓練パスで訓練され得る。オプションのメタ訓練パス中に、訓練装置は、例えば再現率などのパフォーマンス目標に従ってハイパーパラメータを選択および/または変更するように構成される。
射影層、例えば、射影層144は、合計パラメータkに対して構成され得る。合計パラメータは、ネットワークが訓練されるラベルの数を示す。例えば、5つのラベルを予測するようにネットワークを訓練するには、5つの合計パラメータが使用され得る。合計パラメータは、通常、正の整数、例えば、1、2、またはそれ以上、たとえば、5以上などである。合計パラメータは、一方では実行される射影のタイプを示す。それにもかかわらず、システムは非整数に対して訓練および適用されるが、正のkも同様に、射影の場合、合計パラメータは整数である必要はない。それでも、合計パラメータは正の整数であると想定した。
一実施形態では、訓練データは、1つまたは複数のラベルでアノテートされたセンサデータを含む。ニューラルネットワークは、入力としての訓練データに従ってセンサデータに与えられた数のラベルを生成するように訓練され、ラベルの数は合計パラメータkに等しい。訓練中、または訓練が完了したときでさえ、ニューラルネットワークの出力、例えば、射影層144の出力は、k個を超える非ゼロエントリを含み得ることに留意されたい。実際、これは可能性が高い。ただし、エントリの合計はkに等しいか、少なくともそれに近い。例えば、それはあるしきい値内にある可能性がある。kラベルのリストを選択するには、k個の最大のエントリを選択できる。
射影層、例えば、層144は、例えば、射影層ユニット142に実装されるように、射影層の層入力ベクトルxを層出力ベクトルyに射影するように構成され得る。層出力ベクトルに適用される層損失関数の最適化を含む射影は、射影層の出力ベクトルyが合計パラメータkに加算されるという条件に従う。通常、射影層の出力ベクトルyのエントリも、0から1までの数値であるという条件が適用される。
例えば、グラウンドトゥルースが多数のk個のラベルをエンコードする場合、これらは、ラベルにk1、選択されていないラベルに(n-k)0を持つ0-1ベクトルとしてエンコードできる(これは、合計n個の可能なラベル)。例えば、訓練データがk未満のラベルをエンコードする場合や、1つのラベルのみをエンコードする場合でも、合計パラメータを使用して、トップk個の出力が必要であることを定義することもできる。したがって、射影層は、不完全な訓練データが存在する場合に複数のラベルを予測するのに特に適している。
層損失関数は、調整項と射影項を含み得る。射影項は、例えば、入力と同じ方向ある入力に似た出力yに射影をプッシュする。例えば、射影項は-〈x,y〉である可能性がある。調整項は、出力をスパースベクトルから遠ざけるために使用できる。例えば、調整項は、二値エントロピー、例えば、-H(y)を含み得る。射影項と調整項のバランスを互いに対してとるハイパーパラメータが存在する可能性がある。
射影層144を計算するために、入力ベクトルを出力ベクトルにマッピングする数学関数を単に計算するだけでは十分ではない。むしろ、射影層144はそれ自体が最適化問題である。例えば、訓練されたネットワークの場合でも、射影層を適用するには、最適化問題の計算が必要になる場合がある。この最適化は、反復アルゴリズムを使用して実行できる。図1aでは、これはユニット142に示され、ユニット142を指す矢印が付いている。この特定の最適化を実行するために、非常に効率的な最適化アルゴリズムが開発された。このような効率的なアルゴリズムを使用すると、射影層は他のタイプのネットワーク層と同様の効率になる。
例えば、一実施形態では、ネットワークは、Kクラス、例えば、ラベルに対して設計され得る。例えば、ネットワークの出力は、対応するクラスがセンサデータ入力に適用される可能性を示すKエントリを持つベクトルである場合がある。ただし、射影層の損失関数により、ネットワークはトップ(k)のパフォーマンスに関心を持つ。例えば、最終的な射影層のない一連の層120-121などのニューラルネットワークは、既知の分類ネットワークであり得る。例えば、既知の分類ネットワークは、例えば、いわゆるロジットの長さkのベクトルを生成することができる。最終層144は、ロジットをkのLMLポリトープに射影することができる。訓練またはテスト中に、ネットワーク損失関数を層144の出力に適用することができ、例えば、層144によって提供されるようなk個のラベルと、アノテートされたデータによって提供される1つまたは複数のラベルとの間の距離を測定することができる。
合計パラメータkは、画像に描かれる可能性が高いクラスkの最大数、例えば、オブジェクト、ラベルなどの数についての知識に基づいた推測を行うことによって選択することができる。既知のシステムとは対照的に、射影層の実施形態では損失関数を手作りする必要がない場合があるが、トップkの知識がネットワークの訓練に挿入される。射影層は、ネットワークにk個の予測を強制する。これにより、k個の予測の選択を最適化する訓練信号が作成される。
図1cは、LMLポリトープの実施形態の例を概略的に示している。図1cは、合計してkになる座標を持つ単位n-ハイパーキューブ内の点のセットであるLMLポリトープLn,kを示している。Ln,1は、(n-1)次元単体である。L3,1およびL3,2ポリトープ(三角形)は左側にある。L4,2ポリトープ(八面体)は右側にある。
層損失関数の調整項は、出力ベクトルyの係数に適用される関数の合計である可能性がある。そのような関数は、好ましくは凸で連続的であり得、0から1の間、例えば、1/2での入力に対して最小値を有する。これらの条件により、射影層によって定義された最適化問題の解がスパース解から離れることが保証される。例えば、関数はマイナスのバイナリエントロピー関数-H(y)、または基準化されたものであり得る。
層損失関数の射影項は、層入力ベクトルと同じ方向のベクトルの場合、単位長のベクトルに対して線形で最小である可能性がある。これらの条件は、射影層の出力が入力に似ていることを保証するが、いくつかの条件、例えば、合計パラメータkなどへの合計に従って最適化される場合は除かれる。例えば、射影項は、層入力ベクトルと層出力ベクトルの負の内積-〈x,y〉、または基準化されたものであり得る。
二値エントロピーおよび/または内積とは異なる関数を使用しても、例えば図1cに示すように、LMLポリトープへの射影が定義される。
最適化は、任意の適切なベクトル最適化アルゴリズム、例えば、ニュートン降下、シミュレーテッドアニーリングなどを使用して実行することができる。並列化にも適した特定の効率的な最適化方法を本明細書に提示する。
したがって、制限付きマルチラベル射影層は、合計が正確にkになる座標を使用して単位n-ハイパーキューブ内の点のセットに射影する方法を提供する。この空間はポリトープとして表すことができ、(n,k)-制限付きマルチラベルポリトープとして定義できる。
k=1の場合、LMLポリトープは(n-1)次元単体である。一実施形態では、k≧1。一実施形態では、k>1。表記上、nが文脈によって暗示されている場合、それは省略され、Lと書くことができる。図1cは、このポリトープの3つの低次元の例を示している。
LMLポリトープの内部への射影は、以下に定義される。
ここで、H(y)=-Σlogy+(1-y)Log(1-y)は二値エントロピー関数である。関数
は、π(x)と書くこともできる。
目的のエントロピーベースのレギュラライザは、この射影の勾配のスパース性を防ぐのに役立ち、これは学習に役立つ。他の射影は、レギュラライザを変更するか、温度パラメータを使用してエントロピー項をスケーリングすることによって行うことができる。ニューラルネットワークの出力などのベクトルxのLML射影、例えば、射影
がxの座標の大きさに基づく次数を保持する層120~121を数学的に示すことができる。この層は、Lの内部へのソフトプロジェクションと見なすことができる。
入力xのπ(x)を計算するために最小化ベクトルyを見つけることは、次の問題と同等であることを示すことができる。:g(v)=kかつ
の場合、または同等の代替手段において
以外のg(v)=0の場合、y =σ(x+v)を計算する。この関数は、ロジスティックシグモイド関数
として選択できる。
例えば、一実施形態では、層損失関数を最適化することは、スカラーvを最適化することを含み、層出力ベクトルは、関数を層入力ベクトルおよび最適化されたスカラーy =σ(x+v)に適用することによって計算される。
一実施形態では、層損失関数を最適化することは、スカラーvを最適化することを含み、層出力ベクトルは、関数を層入力ベクトルおよび最適化されたスカラーに適用することによって計算される。例えば、関数は、入力ベクトルの変換に適用され得る、例えば、最適化されたスカラーを各エントリに追加することによって変換され得るシグモイド関数であり得る。シグモイド関数は、出力を0~1の値にマップするが、最適化されたスカラーを使用して制限、例えば、出力ベクトルの合計が合計パラメータkであるという制限を課すことができる。
上記のように損失関数を選択すると、損失関数を最適化することは、関数としてロジスティックシグモイド関数を用いてスカラーを最適化することと同等であることがわかる。ただし、他の関数、特にシグモイド関数を使用することもできる。
最適なv∈Rを見つけるために、スカラー最適化手法を実行できる。二分法は並列化に適している。例えば、ブラケット法を使用して、g(v)=0を見つけることができる(同等のバリアント定義を使用)。
上記のアルゴリズムはさまざまな方法で変更できる。例えば、ステップ3のサンプリングは、線形である必要はなく、例えば、それはランダムであり得る。ステップ5は省略できる。ステップ9は、平均値などではなく、vまたはvを返す場合がある。
g(v)=0は、単調に増加する微分可能、連続、非凸関数のスカラー値の求根問題であるが、並列化に適しているため、解vの周囲に下限と上限の間隔を維持する上記のようなブラケット法でg(v)=0を解くのに有利である。ニュートン法は、微分情報を有利に使用することができるが、並列化にはそれほど従順ではない。一実施形態では、最適化方法は、単一の点の代わりに反復vのd値についてg(v)をサンプリングすることによって二等分ブラケット法を一般化する。例えば、一実施形態では、サンプルサイズは、各反復について並列に、例えばGPU上に、d=100ポイントであり得る。後者は通常、10回未満の反復でマシンイプシロンに到達する。CPUでは、より小さなサンプルサイズ、例えばd=10ポイント、を使用できる。
根の最初の下限vと上限vは、σ(x+v)が0または1またはその近くになるように、十分に低くおよび/または高く選択できる。一実施形態では、スカラーvの上限および/または下限は、層入力ベクトルxをソートし、成分を選択し、値を加算および/または減算することによって得られる。例えば、選択された成分は、ラベルの数kに等しいインデックス、またはラベルの数kに最大の要素から数えて1を加えたものを有することができる。
例えば、σ(x+v)として
のエントリによってオフセットされたロジスティック関数の合計がg(v)であることを観察することにより、ルートの初期の下限vと上限のvを選択することで改善が得られる。高い確率で、ロジスティック関数の飽和領域を使用して初期境界を構築できる。
π(x)≧π(x)≧…≧π(x)
およびΔがシグモイドユニットを飽和させるのに十分な大きさのオフセットであるようにπ(x)が
を降順でソートする。一実施形態では、Δ=7をとることができる。
例えば、一実施形態では、初期の下限にv=-π(x)-Δを使用する。これにより、
がx∈π(x)k,...,nに、0<σ(x+v)<1がx∈π(x)1,...,k-1になり、したがってg(v)≦-1≦0になり、最初の上限にv=-π(x)k+1+Δが使用される。これにより、
がすべてのx∈π(x)1,...,k+1になり、したがってg(v)≧1≧0になる。
射影層を最適化する射影ユニットを使用すると、ニューラルネットワークの任意の場所でフォワードパスで射影層を使用できる。例えば、デュアル変数を使用した最適化が使用されている場合、フォワードパスに次のアルゴリズムを使用できる。
一実施形態では、層損失関数を最適化することは、層出力ベクトルyを得るために反復近似アルゴリズムを適用することを含む。反復近似アルゴリズムは、二重変数vを最適化する場合もあれば、層損失関数を直接最適化する場合もある。二重変数vが使用される場合、スカラー二重変数vを最適化することによって層損失関数を最適化することができる。その場合、層出力ベクトルは、層入力ベクトルと最適化されたスカラー、例えばy =σ(x+v)に関数を適用することによって計算できる。
一実施形態では、以下のフォワードパスアルゴリズムを以下のように実装することができる:
上記のようなフォワードパスアルゴリズムは、さまざまな方法で変更できる。例えば、線形サンプリングの代わりに、他のサンプリングを使用することができる。ステップ7で補間する代わりに、境界の1つを用いる等できる。
図2aは、二重変数を最適化する一実施形態の例を概略的に示す。図2aは、関数gをvの関数として示す。
図2bは、関数g(v)に寄与する個々のロジスティック関数の分解の例を概略的に示す。
図2aおよび2bに示す例では、図2aに示す求根問題g(v)=0を解くことにより、
およびk=2の最適な二重変数vを見つける。右は、g(v)に寄与する個々のロジスティック関数の分解を示す。上記の初期の下限と上限を示す。スカラーvを明らかに最適化することは、多次元ベクトルxを最適化するよりもはるかに効率的である。
エラーは射影層全体に逆伝播する可能性があるため、射影層は逆伝播層に簡単に収まる。たとえば、次のアルゴリズムを使用できる。
上記のアルゴリズムを使用すると、エラーベクトルδをベクトルηに逆伝播させることができる。後者は、例えば、さらなるバックプロパゲーションを使用して、射影層の前に層を訓練するために使用され得る。
射影層が最後の層である場合、逆伝播誤差δ∈Rは、フォワードパス中の出力yと訓練データの真の答えとの差と見なすことができる。真の答えはグラウンドトゥルースであることが望ましいが、グラウンドトゥルースと比較して真の答えは不完全である可能性がある。例えば、ネットワークの出力においてk個のラベルが必要な場合でも、訓練データは常にk個のラベルを使用できるとは限らないが、それより少ない場合がある。
例えば、一実施形態では、射影層は最後の層であり、出力ベクトルy、例えば、最適化の解y=σ(x+v)を有する。ネットワークのエラーを示す損失関数は定義される。例えば、
、ここで、tはグラウンドトゥルース、または少なくとも訓練データによる真の出力である。例えば、係数tを持つベクトルtは、どのラベル、例えばどの分類が適用されるかを示す0-1ベクトルである可能性がある。この特定の損失関数の場合、
、例えばyに関する損失関数の勾配を導き出すことができる。後者のベクトルは、フォワードパス出力とグラウンドトゥルースから計算できる。例えば、
は、上記のアルゴリズムのベクトルδと見なすことができる。
新しい射影層は、フォワードネットワークやリカレントネットワークを含む任意のニューラルネットワークアーキテクチャに含めることができる。例えば、バックワードパスは以下のように説明することもでき、これはさまざまな損失関数lに適用できる。
ここで、lは層損失関数を表す。LML層を介したバックプロパゲーションは、次のように導き出される。
をLMLレイヤーの出力とする。このレイヤーを勾配ベースのエンドツーエンド学習システムに統合するには、導関数
を計算する必要がある場合がある。
ここで、lは損失関数である。LML射影
には明示的な閉形式の解がないため、自動微分フレームワークを使用して勾配
を計算することはできない。解はy=σ(x+v)として表すことができるが、vはxの関数でもあるため、この形式を微分することは依然として困難であることに注意する。代わりに、KKT条件は暗黙的に微分される。次の線形システムを解くことができる:
ここで、
は、H=diag(h)かつ
によって定義される。
システムは、以下で解析的に解くことができる。
ここで、○は要素ごとの積であり、h-1は要素ごとの逆数である。最後に、∇l=-dである。
図3aおよび3bは、タイミングパフォーマンスの結果を示す。図3aは、一実施形態の一例におけるフォワード時間のタイミング性能結果を概略的に示している。図3bは、一実施形態の一例におけるバックワード時間のタイミング性能結果を概略的に示している。
図3aおよび3bに示されているのは、1000クラス311および10000クラス312の結果である。縦軸には時間(秒)313が示されている。Smooth SVM、特にSA315、DC316、およびEntrtr318とLML319のタイミング結果が表示される。図3bは、Smooth SVMのバックワードタイミング結果317を示す。LML319の結果は一実施形態のものである。
LML射影層のタイミング性能は、参照により本明細書に含まれる、Berrada他による「Smooth loss function for deep top-k classification」からのSmooth SVM損失と比較される。Smooth SVM損失の合計アルゴリズム(SA)および分割統治(DC)アルゴリズムについては、Berradaで詳しく説明されている。また、タイミング性能は参照により本明細書に含まれる、Lapin,M他による「Top-k multiclass svm」からの切り捨てられたトップkエントロピーEntrtrと比較される。パフォーマンスを測定するために、256のミニバッチサイズと各データポイントに対して50回の試行50が用いられた。すべてまたはほとんどの実験は、アンロードされたNVIDIA GeForce GTX 1080 Ti GPUで実行された。
図3aおよび3bは、ミニバッチサイズが256の場合の問題のパフォーマンス結果を示し、LML層の最小オーバーヘッドを強調している。ほとんどすべての場合、LML層はSmooth SVMのフォワードおよびバックワードパスよりも優れている。特に、LMLバックワードパスは、すべてまたはほとんどの場合に大幅に高速である。Smooth SVMのフォワードパスは、LML層のパフォーマンスが一定のままで、kが大きくなるにつれて、計算コストが高くなる。トップ-kエントロピー損失は、ソート操作によってボトルネックになり、Smooth SVM層とLML層の両方を大幅に上回る。
ほとんどすべての場合、LML層はSmooth SVMのフォワードおよびバックワードパスよりも優れている。特に、LMLバックワードパスは、すべてまたはほとんどの場合に大幅に高速である。Smooth SVMのフォワードパスは、LML層のパフォーマンスを一定のままで、kが大きくなるにつれて、計算コストが高くなる。
射影層の一実施形態は、ニューラルネットワーク、特に入力を分類するために訓練されたネットワークの様々な用途において使用され得る。入力が複数のラベルを自然に許容する状況、またはトップ-k予測が行われる状況のいずれかで、入力から複数のラベルを導出する場合、射影層は特に優れたパフォーマンスを発揮する。射影層がないと、ネットワークは所望の出力の性質、つまり、所望の出力がk個のラベルを有すること、に関する情報を吸収しない。
ラベルの数は固定されていることが好ましい。例えば、合計パラメータは、所望のラベルの数の上限を選択することによって、ラベルの数について知識に基づいた推測をすることによって固定され得る。パラメータは、別の関数、例えば、入力内の関心領域を選択するように構成された関数によって選択することができる。必要に応じて、kの複数の値に対して複数のネットワークを訓練し、使用する他の関数で選択することができる。または、ネットワークをより大きなkに使用し、その結果を切り捨てることができる。
さらに、射影層は、複数のラベルが予測されるが、グラウンドトゥルース情報が利用できない状況で特にうまく機能する。例えば、センサデータの場合、例えば画像の場合、潜在的に多くのラベルが画像に適用される可能性がある。すべてまたはほとんどの存在しうるラベルが正しく適用されている、画像などの大量の訓練データを取得することは困難である。ただし、適用可能なラベルのサブセットを使用して訓練されている場合、射影層は十分に学習する。例えば、k個の出力、例えば10個の出力用に訓練されるネットワークは、10個未満の正しいラベルがわかっている画像などのセンサデータで訓練される。それでも、ネットワークは収束して、センサデータに対して適用可能な10個のラベルを出力する。
例えば、一実施形態では、訓練データは、1つまたは複数のラベルでアノテートされたセンサデータを含み得る。ニューラルネットワークは、訓練データに従ってセンサデータに与えられた複数のラベルを生成するように訓練されることができ、ラベルの数は合計パラメータkに等しい。
一実施形態では、ニューラルネットワークは、訓練データが真のラベルの不完全なサブセットを有し、正確にk個のラベルのセットを予測することによってタスクをモデル化することが望ましいマルチラベル分類のために構成される。例えば、訓練データは、不完全なラベル情報、例えば、訓練に使用できるラベルがk個未満の訓練データ内のセンサデータの少なくとも一部でアノテートされることができる。この設定は、実際には、画像分類で上位k個のラベルを予測したり、シーングラフの生成などのためにグラフ内のk個の関係のセットを予測したりするために実用される。
シーングラフの生成は、入力画像からオブジェクトのセットとそれらの間の関係を生成するタスクであり、最近広く研究されている。背景と表記法については、Zellers他による「Neural motifs:Scene graph parsing with global context」を参照する。これは、参照により本明細書に含まれ、Zellersおよびそのモデルをニューラルモチーフと呼ぶ。シーングラフは、オブジェクトレベルおよびエッジレベルのコンテキストを作成することによって生成される。
特に、Zellersの関係予測部分は、射影層を使用することによって、例えば、起こりうる関係のすべてまたはほとんどを完全に列挙する方法を使用することによって改善されることができる。図3cは、これによりニューラルモチーフの表現能力が向上することを経験的に示す。
図3cは、視覚的ゲノム上でのシーングラフ生成の実施形態に対する訓練再現率の例を概略的に示す。図3cは、従来のニューラルモチーフモデルと、EntrtrおよびLMLバージョンを比較した訓練の進捗状況を示す。
縦軸332は再現率を示し、横軸331はエポックの数を示す。Zellers他333、Entrtr334およびLML335の実施形態の結果が示される。図3cは、グラフが各エッジに最大で1つの関係が存在するように制約される、いわゆる制約付きグラフ生成問題の評価を示す。図3cは、LMLアプローチが、制約付きグラフ生成のための重要な表現能力を追加することを示す。
シーングラフ生成方法は、センサデータ(例えば、画像)を入力として受け取り、画像内のオブジェクトのグラフ(例えば、グラフのノード)、およびそれらの間の関係(例えば、グラフのエッジ)を出力する。
シーングラフ生成タスクは、以下のように分解できる。
P(G|I)=P(B|I)P(O|B,I)P(R|B,O,I)
ここで、Gはシーングラフ、Iは入力画像、Bは領域プロポーザルのセット、Oはオブジェクトプロポーザルのセットである。関係生成プロセスP(R│B,O,I)は、各エッジにzijとして存在する潜在変数zが与えられた場合、各エッジの関係が独立しているという独立性の仮定を立てることができる。
すなわち、
P([Xi→jij|z,B,O,I)=Πi,jP(Xi→j|zij,B,O,I)
ここで、すべてまたはほとんどのノード間の関係のセットは、R=[Xi→jijである。
ニューラルモチーフは、これらの確率を次のようにモデル化する。
ここで、nはタスクの関係の数です。エッジに関係が存在しないことを示すために追加のクラスが追加されるため、予測は(n-1)次元単体ではなくn次元単体で行われる。推論のために、グラフは、すべてまたはほとんどのpijを連結してトップkを選択することにより最も確率の高い関係を選択することによって生成される。kの一般的な値は、20、50、および100である。次に、シーングラフのトップk再現率で方法が評価される。つまり、ニューラルネットワークのトップkの関係予測に含まれるグラウンドトゥルース関係の数である。
kの関係を持つグラフを生成する評価メトリックは、各エッジを観察された関係の可能性を最大化する分類問題として扱うため、ニューラルモチーフの訓練手順の一部ではない。
LML層を使用して、関係確率のすべてまたはほとんどを共同で予測すると、これらの欠点が克服される。同時確率は
としてモデル化できる。
ここで、catは連結関数である。これは現在、観察された関係の可能性を最大化することによって訓練できるトップkの再現率問題である。
kノードを予測する知識を訓練手順に導入すると、図3cに示すように、訓練再現率が向上する。一実施形態では、訓練データは、オブジェクトおよびオブジェクト間の関係でアノテートされたセンサデータを含む。ネットワークは、シーングラフのエッジの関係のセットを生成するように構成することができ、そのセットは、合計パラメータに等しい数の要素を有する。
訓練されたニューラルネットワーク装置は、自律装置コントローラに適用することができる。例えば、ニューラルネットワークの入力データは、自律装置のセンサデータを含み得る。自律装置は、ユーザが修正を指定することなく、例えば、装置の環境に応じて動きを修正するなど、少なくとも部分的に自律的に動きを実行することができる。例えば、装置は、自動車、ロボット、車両、家庭用電化製品、電動工具、製造機械などのようなコンピュータ制御の機械であり得る。例えば、ニューラルネットワークは、センサデータのオブジェクトを分類するように構成され得る。自律装置は、分類に応じて意思決定用に構成することができる。例えば、ネットワークが装置の周囲にあるオブジェクトを分類し、装置の動きを停止、減速、操縦、または変更する可能性がある場合、例えば、人、サイクリスト、車などの他のトラフィックが装置の近くに分類されている場合である。
システム100および150の様々な実施形態では、通信インターフェースは、様々な選択肢から選択され得る。例えば、インターフェースは、ローカルまたはワイドエリアネットワークへのネットワークインターフェース、例えば、インターネット、内部または外部データストレージへのストレージインターフェース、キーボード、アプリケーションインターフェース(API)などであり得る。
システム100および150は、1つまたは複数のボタン、キーボード、ディスプレイ、タッチスクリーンなどのよく知られた要素を含み得るユーザインタフェースを有し得る。ユーザインタフェースは、ジェネレータおよびディスクリミネータネットワークを構成、訓練セットでネットワークを訓練、またはジェネレーターネットワークを新しいセンサデータに適用するためのユーザインタラクションを収容するために配置することができる。
ストレージは、フラッシュメモリなどの電子メモリ、またはハードディスクなどの磁気メモリとして実装することができる。ストレージは、ストレージ110を構成する複数の個別のメモリを一緒に含むことができる。ストレージは、RAMなどの一時メモリで構成されている場合がある。ストレージはクラウドストレージの場合がある。
システム100は、単一の装置に実装され得る。システム150は、単一の装置に実装され得る。典型的には、システム100および150はそれぞれ、システムに記憶された適切なソフトウェアを実行するマイクロプロセッサを備える。例えば、そのソフトウェアは、対応するメモリ、例えば、RAMなどの揮発性メモリまたはフラッシュなどの不揮発性メモリにダウンロードおよび/または記憶されている可能性がある。あるいは、システムは、全体的または部分的に、例えば、フィールドプログラマブルゲートアレイ(FPGA)として、プログラマブルロジックで実装され得る。システムは、全体的または部分的に、いわゆる特定用途向け集積回路(ASIC)、例えば、それらの特定の用途のためにカスタマイズされた集積回路(IC)として実装され得る。例えば、回路は、例えば、Verilog、VHDLなどのハードウェア記述言語を使用して、CMOSで実装され得る。特に、システム100および150は、ニューラルネットワークの評価のための回路を含み得る。
プロセッサ回路は、例えば、複数のサブプロセッサ回路として、分散方式で実装することができる。ストレージは、複数の分散サブストレージに分散される場合がある。メモリの一部または全部は、電子メモリ、磁気メモリなどであり得る。例えば、ストレージには揮発性部分と不揮発性部分がある場合がある。ストレージの一部は読み取り専用である可能性がある。
図4は、ニューラルネットワークを訓練するためのニューラルネットワーク方法400の実施形態の例を概略的に示している。方法400は、訓練データにアクセスすること(410)、一連のニューラルネットワーク層の複数の層のパラメータを記憶すること(420)、訓練データのデータに一連のニューラルネットワーク層を適用すること(430)、ネットワーク損失関数を低減するように記憶されたパラメータを調整すること(450)を含む。ここで、一連のニューラルネットワーク層の少なくとも1つの層は射影層であり、射影層を適用する合計パラメータkのために構成された射影層は、射影層の層入力ベクトルxを層出力ベクトルyに射影すること(440)を含み、射影は、射影層出力ベクトルyが合計して合計パラメータkになるという条件の下で、層出力ベクトルに適用される層損失関数を最適化すること(445)を含み、ここで、層損失関数は、調整項-H(y)と射影項-〈x,y〉を含む。
図5は、訓練されたニューラルネットワークを適用するためのニューラルネットワーク方法500の実施形態の例を概略的に示している。方法500は、入力データを受信すること(510)、一連のニューラルネットワーク層の複数の層について訓練されたパラメータを記憶すること(520)、一連のニューラルネットワーク層を入力データに適用すること(530)を含み、ここで一連のニューラルネットワーク層の少なくとも1つの層は射影層であり、射影層は合計パラメータkのために構成され、射影層を適用することは、射影層の層入力ベクトルxを層出力ベクトルyに射影すること(54)を含み、射影は、射影層出力ベクトルyが合計して合計パラメータkになるという条件の下で、層出力ベクトルに適用される層損失関数を最適化すること(545)を含む。ここで、層損失関数は、調整項-H(y)と射影項-〈x,y〉を含む。
例えば、ニューラルネットワークを訓練するためのニューラルネットワーク訓練方法、および訓練されたニューラルネットワークを適用するためのニューラルネットワーク方法は、コンピュータ実装方法であり得る。例えば、訓練データへのアクセス、および/または入力データの受信は、通信インターフェース、例えば、電子インターフェース、ネットワークインターフェース、メモリインターフェースなどを使用して行うことができる。例えば、パラメータの保存または検索は、電子ストレージ、例えば、メモリ、ハードドライブなどから行うことができる。例えば、一連のニューラルネットワーク層を訓練データのデータに適用すること、および/またはネットワークを訓練するために記憶されたパラメータを調整することは、電子コンピューティング装置、例えばコンピュータを使用して行うことができる。
訓練中および/または適用中のニューラルネットワークは、複数の層を有し得、これは、1つ以上の射影層、および1つ以上の非射影層、例えば、畳み込み層などを含み得る。例えば、ニューラルネットワークは、少なくとも2、5、10、15、20または40、またはそれ以上の隠れ層を有し得る。ニューラルネットワーク内のニューロンの数は、例えば、少なくとも10、100、1000、10000、100000、1000000、またはそれ以上であり得る。
当業者には明らかであるように、方法を実行する多くの異なる方法が可能である。例えば、ステップの順序は、示された順序で実行することができるが、ステップの順序を変えることができるか、またはいくつかのステップを並行して実行することができる。さらに、ステップの間に他の方法ステップを挿入することができる。挿入されたステップは、本明細書に記載されているような方法の改良を表し得るか、または方法とは無関係であり得る。例えば、いくつかのステップは、少なくとも部分的に、並行して実行され得る。さらに、特定のステップは、次のステップが開始される前に完全に終了していない可能性がある。
この方法の実施形態は、プロセッサシステムに方法400および/または500を実行させるための命令を含むソフトウェアを使用して実行することができる。ソフトウェアは、システムの特定のサブエンティティによって用いられるそれらのステップのみを含むことができる。ソフトウェアは、ハードディスク、フロッピー、メモリ、光ディスクなどの適切な記憶媒体に保存することができる。ソフトウェアは、有線、無線、またはインターネットなどのデータネットワークを使用して信号として送信できる。ソフトウェアは、ダウンロードおよび/またはサーバ上でのリモート使用のために利用可能になる場合がある。方法の実施形態は、方法を実行するために、プログラマブルロジック、例えば、フィールドプログラマブルゲートアレイ(FPGA)を構成するように用意されたビットストリームを使用して実行され得る。
本開示の主題は、コンピュータプログラム、特に、本開示の主題を実施するように適合された、キャリア上またはキャリア内のコンピュータプログラムにも及ぶことが理解されよう。プログラムは、ソースコード、オブジェクトコード、コード中間ソース、および部分的にコンパイルされた形式などのオブジェクトコードの形式、または方法の実施形態の実施に使用するのに適した他の任意の形式であり得る。コンピュータプログラム製品に関する一実施形態は、記載された方法のうちの少なくとも1つの処理ステップのそれぞれに対応するコンピュータ実行可能命令を含む。これらの命令は、サブルーチンに細分され、および/または静的または動的にリンクされた1つ以上のファイルに保存されたりする場合がある。コンピュータプログラム製品に関する別の実施形態は、記載されたシステムおよび/または製品の少なくとも1つの手段のそれぞれに対応するコンピュータ実行可能命令を含む。
図6aは、一実施形態による、コンピュータプログラム1020を含む書き込み可能部分1010を有するコンピュータ読み取り可能媒体1000、プロセッサシステムにニューロネットワークを訓練および/または適用する方法を実行させるための命令を含むコンピュータプログラム1020を示す。コンピュータプログラム1020は、物理的マークとして、またはコンピュータ読み取り可能媒体1000の磁化によって、コンピュータ読み取り可能媒体1000上に具体化され得る。しかしながら、他の適切な実施形態も考えられる。さらに、コンピュータ読み取り可能媒体1000は、本明細書では光ディスクとして示されているが、コンピュータ読み取り可能媒体1000は、ハードディスク、ソリッドステートメモリ、フラッシュメモリなどの任意の適切なコンピュータ読み取り可能媒体であり得、かつ記録不可能または記録可能であることが理解されよう。コンピュータプログラム1020は、プロセッサシステムにニューラルネットワークを訓練および/または適用する方法を実行させるための命令を含む。
図6bは、ニューラルネットワークのための訓練および/またはアプリケーション装置の実施形態によるプロセッサシステム1140の概略図を示している。プロセッサシステムは、1つまたは複数の集積回路1110を含む。1つまたは複数の集積回路1110のアーキテクチャは、図6bに概略的に示されている。回路1110は、一実施形態による方法を実行するため、および/またはそのモジュールまたはユニットを実装するためにコンピュータプログラムコンポーネントを実行するための処理ユニット1120、例えば、CPUを含む。回路1110は、プログラミングコード、データなどを記憶するためのメモリ1122を含む。メモリ1122の一部は、読み取り専用であり得る。回路1110は、通信要素1126、例えば、アンテナ、コネクタ、またはその両方を含み得る。回路1110は、方法で定義された処理の一部または全部を実行するための専用の集積回路1124を含み得る。プロセッサ1120、メモリ1122、専用IC1124、および通信要素1126は、相互接続1130、例えばバスを介して互いに接続され得る。プロセッサシステム1110は、それぞれアンテナおよび/またはコネクタを使用して、接触および/または非接触通信用に構成され得る。
例えば、一実施形態では、プロセッサシステム1140、例えば、訓練および/またはアプリケーション装置は、プロセッサ回路およびメモリ回路を備え得、プロセッサは、メモリ回路に記憶されたソフトウェアを実行するように構成されている。例えば、プロセッサ回路はIntel Core i7プロセッサ、ARM Cortex-R8等である。一実施形態では、プロセッサ回路は、ARM Cortex M0であり得る。メモリ回路は、ROM回路、または不揮発性メモリ、例えばフラッシュメモリであり得る。メモリ回路は、揮発性メモリ、例えば、SRAMメモリであり得る。後者の場合、装置は、ソフトウェアを提供するために配置された、不揮発性ソフトウェアインターフェース、例えば、ハードドライブ、ネットワークインターフェースなどを含み得る。
上記の実施形態は、本開示の主題を限定するのではなく例示し、当業者は多くの代替の実施形態を設計することができることに留意されたい。
クレームでは、括弧の間に配置された参照記号は、クレームを制限するものと解釈されないものとする。動詞「含む」とその活用の使用は、クレームに記載されているもの以外の要素またはステップの存在を排除するものではない。要素の前にある冠詞「a」または「an」は、そのような要素が複数存在することを排除するものではない。要素のリストの前にある「少なくとも1つ」などの表現は、リストからの要素のすべてまたは任意のサブセットの選択を表す。例えば、「A、B、およびCの少なくとも1つ」という表現は、Aのみ、Bのみ、Cのみ、AとBの両方、AとCの両方、BとCの両方、またはA、B、およびCのすべてを含むと理解する必要がある。本開示の主題は、いくつかの別個の要素を含むハードウェアによって、および適切にプログラムされたコンピュータによって実装され得る。いくつかの手段を列挙する装置クレームでは、これらの手段のいくつかは、1つの同じハードウェアアイテムによって具体化され得る。特定の措置が相互に異なる従属請求項に記載されているという単なる事実は、これらの措置の組み合わせを有利に使用できないことを示すものではない。
クレームにおいて、括弧内の参照は、例示的な実施形態の図面中の参照記号または実施形態の式を参照し、したがって、クレームの理解を高める。これらの参照は、クレームを制限するものとして解釈されるべきではない。
(付記)
(付記1)
ニューラルネットワークを訓練するためのニューラルネットワーク訓練装置であって、前記ニューラルネットワークは一連のニューラルネットワーク層を含み、前記装置は、
訓練データにアクセスするための通信インターフェースと、
前記一連のニューラルネットワーク層の複数の層についてのパラメータを記憶するように構成されたニューラルネットワークストレージと、
前記一連のニューラルネットワーク層を前記訓練データのデータに適用し、前記記憶されたパラメータを調整して前記ネットワークを訓練するように構成されたプロセッサシステムと、
を含み、
前記一連のニューラルネットワーク層の少なくとも1つの層は射影層であり、前記射影層は合計パラメータ(k)のために構成され、前記射影層の層入力ベクトル(x)を層出力ベクトル(y)に射影するように構成され、前記射影することは、前記射影層出力ベクトル(y)の合計が前記合計パラメータ(k)になるという条件の下、前記層出力ベクトルに適用される層損失関数を最適化することを含み、前記層損失関数は調整項(-H(y))と射影項(-〈x,y〉)を含む、
装置。
(付記2)
前記調整項は、前記出力ベクトル(y)の係数に適用される関数の合計であり、前記関数は凸で連続であり、0と1の間の入力の最小値を有し、および/または、
前記射影項は、前記層入力ベクトルと同じ方向のベクトルの場合、単位長のベクトルに渡って線形かつ最小である、
付記1に記載の訓練装置。
(付記3)
前記射影層は、前記一連のニューラルネットワーク層の最終層である、
付記1に記載の訓練装置。
(付記4)
前記訓練データは、1つまたは複数のラベルでアノテートされたセンサデータを含み、前記ニューラルネットワークは、前記訓練データに従って、センサデータに与えられた数のラベルを生成するように訓練され、前記ラベルの数は、前記合計パラメータ(k)に等しい、
付記1に記載の訓練装置。
(付記5)
前記訓練データは、不完全なラベル情報でアノテートされる、
付記4に記載の訓練装置。
(付記6)
シーングラフ生成タスクにおいて使用される訓練装置であって、
前記訓練データは、オブジェクトおよび前記オブジェクト間の関係でアノテートされたセンサデータを含み、
前記ネットワークは、前記シーングラフに対するエッジの関係のセットを生成するように構成され、
前記セットは、前記合計パラメータに等しい要素数を持つ、
付記1に記載の訓練装置。
(付記7)
前記層損失関数を最適化することは、前記層出力ベクトル(y)を得るために反復近似アルゴリズムを適用することを含む、
付記1に記載の訓練装置。
(付記8)
前記層損失関数を最適化することは、スカラー(v)を最適化することを含み、
前記層出力ベクトルは、関数を前記層入力ベクトルおよび最適化された前記スカラー(y =σ(x+v))に適用することによって計算される、
付記1に記載の訓練装置。
(付記9)
前記スカラー(v)の上限および/または下限は、前記層入力ベクトル(x)をソートし、成分を選択し、値を加算および/または減算することによって得られる、
付記8に記載の訓練装置。
(付記10)
前記最適化することは二分法である、
付記8に記載の訓練装置。
(付記11)
訓練されたニューラルネットワークを適用するためのニューラルネットワーク適用装置であって、前記ニューラルネットワークは一連のニューラルネットワーク層を含み、前記装置は、
入力データを受信するための通信インターフェースと、
前記一連のニューラルネットワーク層の複数の層の訓練されたパラメータを記憶するように構成されたニューラルネットワークストレージと、
前記一連のニューラルネットワーク層を前記入力データに適用するように構成されたプロセッサシステムと、
を含み、
前記一連のニューラルネットワーク層の少なくとも1つの層は射影層であり、射影層は合計パラメータ(k)のために構成され、前記射影層の層入力ベクトル(x)を層出力ベクトル(y)に射影するように構成され、前記射影することは、前記射影層出力ベクトル(y)の合計が前記合計パラメータ(k)になるという条件の下、前記層出力ベクトルに適用される層損失関数を最適化することを含み、ここで、前記層損失関数は調整項(-H(y))と射影項(-〈x,y〉)を含む、
装置。
(付記12)
付記11に記載のニューラルネットワーク装置を有する自律装置コントローラであって、
前記入力データが自律装置のセンサデータに適用され、前記ニューラルネットワークがセンサデータ内のオブジェクトを分類するように構成され、自律装置コントロールが前記分類に応じた意思決定のために構成される、
自律装置コントローラ。
(付記13)
ニューラルネットワークを訓練するためのニューラルネットワーク訓練方法であって、前記ニューラルネットワークは一連のニューラルネットワーク層を含み、前記方法は、
訓練データにアクセスすることと、
前記一連のニューラルネットワーク層の複数の層のパラメータを記憶することと、
前記一連のニューラルネットワーク層を前記訓練データのデータに適用し、記憶された前記パラメータを調整して前記ネットワークを訓練することと、
を含み、
前記一連のニューラルネットワーク層の少なくとも1つの層は射影層であり、前記射影層は合計パラメータ(k)のために構成され、前記射影層を適用することは、前記射影層の層入力ベクトル(x)を層出力ベクトル(y)に射影することを含み、前記射影することは、前記射影層出力ベクトル(y)の合計が前記合計パラメータ(k)になるという条件の下、前記層出力ベクトルに適用される層損失関数を最適化することを含み、前記層損失関数は調整項(-H(y))と射影項(-〈x,y〉)を含む、
方法。
(付記14)
訓練されたニューラルネットワークを適用するためのニューラルネットワーク方法であって、前記ニューラルネットワークは一連のニューラルネットワーク層を含み、前記方法は、
入力データを受信することと、
前記一連のニューラルネットワーク層の複数の層に対して訓練されたパラメータを記憶することと、
前記一連のニューラルネットワーク層を前記入力データに適用することと、
を含み、
前記一連のニューラルネットワーク層の少なくとも1つの層は射影層であり、前記射影層は合計パラメータ(k)のために構成され、前記射影層を適用することは、前記射影層の層入力ベクトル(x)を層出力ベクトル(y)に射影することを含み、前記射影することは、前記射影層出力ベクトル(y)の合計が前記合計パラメータ(k)になるという条件の下、前記層出力ベクトルに適用される層損失関数を最適化することを含み、前記層損失関数は調整項(-H(y))と射影項(-〈x,y〉)を含む、
方法。
(付記15)
プロセッサシステムによって実行されると、前記プロセッサシステムに付記13に記載の方法を実行させる、命令を表すデータを有する、
一時的または非一時的なコンピュータ読み取り可能媒体。
(付記16)
前記訓練データは、1つまたは複数のラベルでアノテーションされたセンサデータを含み、前記ニューラルネットワークは、前記訓練データに従って、センサデータに与えられた数のラベルを生成するように訓練され、前記ラベルの数は、合計パラメータ(k)に等しい、
付記2に記載の訓練装置。
(付記17)
前記調整項の前記関数は、マイナスの2値エントロピー関数(-H(y))を含み、および/または、
前記射影項は、前記層入力ベクトルと前記層出力ベクトルのマイナスの内積(-〈x,y〉)を含む、
付記2に記載の訓練装置。
(付記18)
前記最適化することは二分法である、
付記9に記載の訓練装置。
(付記19)
プロセッサシステムによって実行されると、前記プロセッサシステムに付記14に記載の方法を実行させる、命令を表すデータを有する、
一時的または非一時的なコンピュータ読み取り可能媒体。
参照数字のリスト:
100 ニューラルネットワーク訓練装置
120 一連のニューラルネットワーク層
130 バックプロパゲーションユニット
121,122 ニューラルネットワーク層
144 射影層
125,126 通信インタフェース
132 訓練ストレージ
134 ニューラルネットワークストレージ
140 アプリケーションユニット
142 射影層ユニット
146 射影層のバックプロパゲーション
311 1000クラス
312 10000クラス
313 時間
315 SA
316 DC
317 バックワード
318 Entrtr
319 LML
331 エポック
332 再現率
333 Zellers他
334 Entrtr
335 LML
1000 コンピュータ読み取り可能媒体
1010 書き換え可能部分
1020 コンピュータプログラム
1110 集積回路
1120 処理ユニット
1122 メモリ
1124 専用集積回路
1126 通信素子
1130 相互接続
1140 プロセッサシステム

Claims (19)

  1. ニューラルネットワークを訓練するためのニューラルネットワーク訓練装置であって、前記ニューラルネットワークは一連のニューラルネットワーク層を含み、前記装置は、
    訓練データにアクセスするための通信インターフェースと、
    前記一連のニューラルネットワーク層の複数の層についてのパラメータを記憶するように構成されたニューラルネットワークストレージと、
    前記一連のニューラルネットワーク層を前記訓練データのデータに適用し、前記記憶されたパラメータを調整して前記ネットワークを訓練するように構成されたプロセッサシステムと、
    を含み、
    前記一連のニューラルネットワーク層の少なくとも1つの層は射影層であり、前記射影層は合計パラメータ(k)のために構成され、前記射影層の層入力ベクトル(x)を層出力ベクトル(y)に射影するように構成され、前記射影することは、前記射影層出力ベクトル(y)の合計が前記合計パラメータ(k)になるという条件の下、前記層出力ベクトルに適用される層損失関数を最適化することを含み、前記層損失関数は調整項(-H(y))と射影項(-〈x,y〉)を含む、
    装置。
  2. 前記調整項は、前記出力ベクトル(y)の係数に適用される関数の合計であり、前記関数は凸で連続であり、0と1の間の入力の最小値を有し、および/または、
    前記射影項は、前記層入力ベクトルと同じ方向のベクトルの場合、単位長のベクトルに渡って線形かつ最小である、
    請求項1に記載の訓練装置。
  3. 前記射影層は、前記一連のニューラルネットワーク層の最終層である、
    請求項1に記載の訓練装置。
  4. 前記訓練データは、1つまたは複数のラベルでアノテートされたセンサデータを含み、前記ニューラルネットワークは、前記訓練データに従って、センサデータに与えられた数のラベルを生成するように訓練され、前記ラベルの数は、前記合計パラメータ(k)に等しい、
    請求項1に記載の訓練装置。
  5. 前記訓練データは、不完全なラベル情報でアノテートされる、
    請求項4に記載の訓練装置。
  6. シーングラフ生成タスクにおいて使用される訓練装置であって、
    前記訓練データは、オブジェクトおよび前記オブジェクト間の関係でアノテートされたセンサデータを含み、
    前記ネットワークは、前記シーングラフに対するエッジの関係のセットを生成するように構成され、
    前記セットは、前記合計パラメータに等しい要素数を持つ、
    請求項1に記載の訓練装置。
  7. 前記層損失関数を最適化することは、前記層出力ベクトル(y)を得るために反復近似アルゴリズムを適用することを含む、
    請求項1に記載の訓練装置。
  8. 前記層損失関数を最適化することは、スカラー(v)を最適化することを含み、
    前記層出力ベクトルは、関数を前記層入力ベクトルおよび最適化された前記スカラー(y =σ(x+v))に適用することによって計算される、
    請求項1に記載の訓練装置。
  9. 前記スカラー(v)の上限および/または下限は、前記層入力ベクトル(x)をソートし、成分を選択し、値を加算および/または減算することによって得られる、
    請求項8に記載の訓練装置。
  10. 前記最適化することは二分法である、
    請求項8に記載の訓練装置。
  11. 訓練されたニューラルネットワークを適用するためのニューラルネットワーク適用装置であって、前記ニューラルネットワークは一連のニューラルネットワーク層を含み、前記装置は、
    入力データを受信するための通信インターフェースと、
    前記一連のニューラルネットワーク層の複数の層の訓練されたパラメータを記憶するように構成されたニューラルネットワークストレージと、
    前記一連のニューラルネットワーク層を前記入力データに適用するように構成されたプロセッサシステムと、
    を含み、
    前記一連のニューラルネットワーク層の少なくとも1つの層は射影層であり、射影層は合計パラメータ(k)のために構成され、前記射影層の層入力ベクトル(x)を層出力ベクトル(y)に射影するように構成され、前記射影することは、前記射影層出力ベクトル(y)の合計が前記合計パラメータ(k)になるという条件の下、前記層出力ベクトルに適用される層損失関数を最適化することを含み、ここで、前記層損失関数は調整項(-H(y))と射影項(-〈x,y〉)を含む、
    装置。
  12. 請求項11に記載のニューラルネットワーク装置を有する自律装置コントローラであって、
    前記入力データが自律装置のセンサデータに適用され、前記ニューラルネットワークがセンサデータ内のオブジェクトを分類するように構成され、自律装置コントロールが前記分類に応じた意思決定のために構成される、
    自律装置コントローラ。
  13. ニューラルネットワークを訓練するためのニューラルネットワーク訓練方法であって、前記ニューラルネットワークは一連のニューラルネットワーク層を含み、前記方法は、
    訓練データにアクセスすることと、
    前記一連のニューラルネットワーク層の複数の層のパラメータを記憶することと、
    前記一連のニューラルネットワーク層を前記訓練データのデータに適用し、記憶された前記パラメータを調整して前記ネットワークを訓練することと、
    を含み、
    前記一連のニューラルネットワーク層の少なくとも1つの層は射影層であり、前記射影層は合計パラメータ(k)のために構成され、前記射影層を適用することは、前記射影層の層入力ベクトル(x)を層出力ベクトル(y)に射影することを含み、前記射影することは、前記射影層出力ベクトル(y)の合計が前記合計パラメータ(k)になるという条件の下、前記層出力ベクトルに適用される層損失関数を最適化することを含み、前記層損失関数は調整項(-H(y))と射影項(-〈x,y〉)を含む、
    方法。
  14. 訓練されたニューラルネットワークを適用するためのニューラルネットワーク方法であって、前記ニューラルネットワークは一連のニューラルネットワーク層を含み、前記方法は、
    入力データを受信することと、
    前記一連のニューラルネットワーク層の複数の層に対して訓練されたパラメータを記憶することと、
    前記一連のニューラルネットワーク層を前記入力データに適用することと、
    を含み、
    前記一連のニューラルネットワーク層の少なくとも1つの層は射影層であり、前記射影層は合計パラメータ(k)のために構成され、前記射影層を適用することは、前記射影層の層入力ベクトル(x)を層出力ベクトル(y)に射影することを含み、前記射影することは、前記射影層出力ベクトル(y)の合計が前記合計パラメータ(k)になるという条件の下、前記層出力ベクトルに適用される層損失関数を最適化することを含み、前記層損失関数は調整項(-H(y))と射影項(-〈x,y〉)を含む、
    方法。
  15. プロセッサシステムによって実行されると、前記プロセッサシステムに請求項13に記載の方法を実行させる、命令を表すデータを有する、
    一時的または非一時的なコンピュータ読み取り可能媒体。
  16. 前記訓練データは、1つまたは複数のラベルでアノテーションされたセンサデータを含み、前記ニューラルネットワークは、前記訓練データに従って、センサデータに与えられた数のラベルを生成するように訓練され、前記ラベルの数は、合計パラメータ(k)に等しい、
    請求項2に記載の訓練装置。
  17. 前記調整項の前記関数は、マイナスの2値エントロピー関数(-H(y))を含み、および/または、
    前記射影項は、前記層入力ベクトルと前記層出力ベクトルのマイナスの内積(-〈x,y〉)を含む、
    請求項2に記載の訓練装置。
  18. 前記最適化することは二分法である、
    請求項9に記載の訓練装置。
  19. プロセッサシステムによって実行されると、前記プロセッサシステムに請求項14に記載の方法を実行させる、命令を表すデータを有する、
    一時的または非一時的なコンピュータ読み取り可能媒体。
JP2021568620A 2019-05-17 2020-04-28 マルチラベル予測に適したニューラルネットワークの射影層 Active JP7474446B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/415,500 US11875252B2 (en) 2019-05-17 2019-05-17 Neural network including a neural network projection layer configured for a summing parameter
US16/415,500 2019-05-17
PCT/EP2020/061739 WO2020233952A1 (en) 2019-05-17 2020-04-28 Projection layer for a neural network suitable for multi-label prediction

Publications (2)

Publication Number Publication Date
JP2022532781A JP2022532781A (ja) 2022-07-19
JP7474446B2 true JP7474446B2 (ja) 2024-04-25

Family

ID=70480259

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021568620A Active JP7474446B2 (ja) 2019-05-17 2020-04-28 マルチラベル予測に適したニューラルネットワークの射影層

Country Status (4)

Country Link
US (1) US11875252B2 (ja)
JP (1) JP7474446B2 (ja)
KR (1) KR20220003093A (ja)
WO (1) WO2020233952A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210125064A1 (en) * 2019-10-24 2021-04-29 Preferred Networks, Inc. Method and apparatus for training neural network
EP3885848A1 (en) * 2020-03-24 2021-09-29 Robert Bosch GmbH Controller with neural network and improved stability
US20220084677A1 (en) * 2020-09-14 2022-03-17 Novocura Tech Health Services Private Limited System and method for generating differential diagnosis in a healthcare environment
CN115601513A (zh) * 2021-06-28 2023-01-13 华为技术有限公司(Cn) 一种模型超参数的选择方法及相关装置
US11907500B2 (en) 2022-04-26 2024-02-20 Truist Bank Automated processing and dynamic filtering of content for display

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000200103A (ja) 1998-08-06 2000-07-18 Yamaha Motor Co Ltd 疑似感情及び疑似性格を用いた制御対象の制御方法、使用者に適合して動作する自律装置、及び使用者の特徴に装置の行動を適合させる方法
JP2017091525A (ja) 2015-11-03 2017-05-25 バイドゥ・ユーエスエイ・リミテッド・ライアビリティ・カンパニーBaidu USA LLC 視覚質問応答用の注目に基づく設定可能な畳み込みニューラルネットワーク(abc−cnn)のシステム及び方法
WO2018140335A1 (en) 2017-01-30 2018-08-02 Microsoft Technology Licensing, Llc Continuous learning for intrusion detection

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5367702A (en) * 1993-01-04 1994-11-22 Texas Instruments Incorporated System and method for approximating nonlinear functions
US20120030020A1 (en) * 2010-08-02 2012-02-02 International Business Machines Corporation Collaborative filtering on spare datasets with matrix factorizations
GB2554633B (en) 2016-06-24 2020-01-22 Imperial College Sci Tech & Medicine Detecting objects in video data
US10229092B2 (en) * 2017-08-14 2019-03-12 City University Of Hong Kong Systems and methods for robust low-rank matrix approximation
US10452923B2 (en) * 2017-11-28 2019-10-22 Visual Semantics, Inc. Method and apparatus for integration of detected object identifiers and semantic scene graph networks for captured visual scene behavior estimation
US11003862B2 (en) * 2019-03-20 2021-05-11 Adobe Inc. Classifying structural features of a digital document by feature type using machine learning

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000200103A (ja) 1998-08-06 2000-07-18 Yamaha Motor Co Ltd 疑似感情及び疑似性格を用いた制御対象の制御方法、使用者に適合して動作する自律装置、及び使用者の特徴に装置の行動を適合させる方法
JP2017091525A (ja) 2015-11-03 2017-05-25 バイドゥ・ユーエスエイ・リミテッド・ライアビリティ・カンパニーBaidu USA LLC 視覚質問応答用の注目に基づく設定可能な畳み込みニューラルネットワーク(abc−cnn)のシステム及び方法
WO2018140335A1 (en) 2017-01-30 2018-08-02 Microsoft Technology Licensing, Llc Continuous learning for intrusion detection

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
LAPIN, M et al.,"Top-k Multiclass SVM",arXiv.org [online],2015年,pp. 1-14,[retrieved on 2024.03.04], Retrieved from the Internet: <URL: https://arxiv.org/abs/1511.06683v1>,<DOI: 10.48550/arXiv.1511.06683>
堀 貴博 ほか,"グラフ構造表現による一般物体認識",電子情報通信学会技術研究報告,社団法人 電子情報通信学会,2011年,第111巻, 第353号,pp. 19-24,ISSN 0913-5685
立間 淳司 ほか,"正準相関分析を用いた三次元物体のアノテーション",情報処理学会 研究報告 グラフィクスとCAD(CG),情報処理学会,2013年,第2013-CG-152巻, 第8号,pp. 1-8

Also Published As

Publication number Publication date
US11875252B2 (en) 2024-01-16
WO2020233952A1 (en) 2020-11-26
JP2022532781A (ja) 2022-07-19
US20200364553A1 (en) 2020-11-19
KR20220003093A (ko) 2022-01-07

Similar Documents

Publication Publication Date Title
JP7474446B2 (ja) マルチラベル予測に適したニューラルネットワークの射影層
LeCun A path towards autonomous machine intelligence version 0.9. 2, 2022-06-27
Arora et al. A survey of inverse reinforcement learning: Challenges, methods and progress
Kollmannsberger et al. Deep learning in computational mechanics
Sugiyama Statistical reinforcement learning: modern machine learning approaches
Fenjiro et al. Deep reinforcement learning overview of the state of the art
CN112084836A (zh) 机器学习系统
JP2022549859A (ja) 後知恵モデリングを用いた行動選択ニューラルネットワークの訓練
US20210394784A1 (en) Making time-series predictions using a trained decoder model
CN112633463B (zh) 用于建模序列数据中长期依赖性的双重递归神经网络架构
JP7540632B2 (ja) 半定値計画問題を解く層を有するニューラルネットワーク
Kimmel et al. Belief-space planning using learned models with application to underactuated hands
EP3764284B1 (en) Adapting a base classifier to novel classes
EP3627403A1 (en) Training of a one-shot learning classifier
Lou et al. Offline reinforcement learning with representations for actions
US20220253698A1 (en) Neural network-based memory system with variable recirculation of queries using memory content
US20240133694A1 (en) Method and device with path distribution estimation
Faulkner et al. Dyna planning using a feature based generative model
US20220269980A1 (en) Random classification model head for improved generalization
Kolb et al. Learning to Request Guidance in Emergent Communication
Akila Agnes et al. Analyzing the effect of optimization strategies in deep convolutional neural network
CN113487027A (zh) 基于时序对齐预测的序列距离度量方法、存储介质及芯片
Koh et al. Artificial Intelligence (AI) Fundamentals for the Display Industry: A Review
Vogt An overview of deep learning and its applications
Bouteiller Managing the World Complexity: From Linear Regression to Deep Learning

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20220125

Free format text: JAPANESE INTERMEDIATE CODE: A801

Effective date: 20211116

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230330

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240312

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240313

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240405

R150 Certificate of patent or registration of utility model

Ref document number: 7474446

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150