JP2021157792A - 事前トレーニングされた分類器に基づく深層ニューラル・ネットワーク(dnn)予測の検証 - Google Patents

事前トレーニングされた分類器に基づく深層ニューラル・ネットワーク(dnn)予測の検証 Download PDF

Info

Publication number
JP2021157792A
JP2021157792A JP2021044818A JP2021044818A JP2021157792A JP 2021157792 A JP2021157792 A JP 2021157792A JP 2021044818 A JP2021044818 A JP 2021044818A JP 2021044818 A JP2021044818 A JP 2021044818A JP 2021157792 A JP2021157792 A JP 2021157792A
Authority
JP
Japan
Prior art keywords
features
dnn
class
classifier
predicted
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.)
Pending
Application number
JP2021044818A
Other languages
English (en)
Inventor
ケイ サハ・リポン
K Saha Ripon
ケイ サハ・リポン
アール プラサド・ムクル
R Prasad Mukul
アール プラサド・ムクル
サハ・シーマンタ
Saha Seemanta
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2021157792A publication Critical patent/JP2021157792A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/55Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • 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

Landscapes

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

Abstract

【課題】深層ニューラル・ネットワーク(DNN)予測を検証する方法及びシステムを提供する。【解決手段】方法は、リアルタイム・アプリケーションに関連する第1のデータ・ポイントを受領し、リアルタイム・アプリケーションの分類タスクのために事前トレーニングされたDNNによって、受領された第1のデータ・ポイントに関連する第1のクラスを予測し、DNNから、予測された第1のクラスのための特徴の第1の集合と、対応する重みの第1の集合とを抽出し、予測された第1のクラスに関連する事前トレーニングされた分類器によって、予測された第1のクラスについての信頼スコアを決定し、決定した信頼スコアに基づいて、第1のクラスの予測の正しさを示す出力情報を生成する。【選択図】図3

Description

本開示において論じられる実施形態は、事前トレーニングされた分類器に基づく深層ニューラル・ネットワーク(DNN)予測の検証に関する。
ニューラル・ネットワークの分野における最近の進歩は、さまざまなリアルタイム・アプリケーションに関連しうるデータの分類のためのさまざまな技術の開発をもたらした。たとえば、トレーニングされた深層ニューラル・ネットワークは、さまざまな分類タスク、たとえば種々のデータ・ポイント(すなわち、画像)の分類または検出のために、種々の応用において利用されうる。DNNは、さまざまな分類タスクにおいて良好な分類正確さを達成しているが、自律運転や医学的診断のようなある種の応用においては、正しくない検出または誤分類は(たとえ事例の一部においてであっても)金銭的または物理的損失につながる可能性がある。
典型的には、DNNに関連するネイティブな信頼スコアが、データ・ポイントを予測または分類することができる。しかしながら、特定の状況では、DNNに関連するネイティブな信頼スコアは、正確な予測量ではない可能性があり、そのことはさらに、データ・ポイントの誤った分類または予測につながる可能性がある。さまざまな古典的機械学習モデルの予測または出力の信頼性を検証することができるある種の従来のシステムがある。しかしながら、そのような従来のシステムは、DNNにおいて使用されるデータの高次元性のために、DNNの信頼性を効果的に決定するのに十分に好適でない可能性がある。
本開示において請求される主題は、何らかの欠点を解決する、または上記のような環境においてのみ動作する実施形態に限定されない。むしろ、この背景は、本開示に記載されるいくつかの実施形態が実施されうる1つの例示的な技術分野を示すためにのみ提供される。
ある実施形態のある側面によれば、動作は、リアルタイム・アプリケーションに関連する第1のデータ・ポイントを受領することを含んでいてもよい。動作はさらに、リアルタイム・アプリケーションの分類タスクのために事前トレーニングされた深層ニューラル・ネットワーク(DNN)によって、受領された第1のデータ・ポイントに関連する第1のクラスを予測することを含んでいてもよい。動作はさらに、DNNから、第1のデータ・ポイントの予測された第1のクラスについて、特徴の第1の集合と、特徴の第1の集合に対応する重みの第1の集合とを抽出することを含んでいてもよい。抽出された特徴の第1の集合は、DNNの畳み込み層に関連付けられてもよい。動作はさらに、抽出された特徴の第1の集合および対応する重みの第1の集合に基づいて、第1のデータ・ポイントについての予測された第1のクラスについての信頼スコアを、予測された第1のクラスに関連する事前トレーニングされた分類器によって、決定することを含んでいてもよい。動作はさらに、決定された信頼スコアに基づいて、第1のデータ・ポイントについての第1のクラスの予測の正しさ(correctness)を示す出力情報を生成することを含んでいてもよい。
実施形態の目的および利点は、少なくとも、特許請求の範囲において具体的に指摘される要素、特徴、および組み合わせによって実現され、達成されるであろう。
上記の一般的記述および下記の詳細な説明はいずれも例として与えられており、説明するものであって、特許請求の範囲に記載される発明を制約するものではない。
例示的実施形態は、添付の図面を使用することにより、追加の具体性および詳細さを伴って記述され、説明される。
事前トレーニングされた分類器に基づく深層ニューラル・ネットワーク(DNN)の予測結果の検証に関連する例示的環境を表わす図である。
事前トレーニングされた分類器に基づく深層ニューラル・ネットワーク(DNN)の予測結果の検証のための例示的システムのブロック図である。
事前トレーニングされた分類器に基づく深層ニューラル・ネットワーク(DNN)の予測結果の検証のための例示的方法のフローチャートである。
深層ニューラル・ネットワーク(DNN)の畳み込み層に関連する特徴の第1の集合の選択のための例示的な方法のフローチャートである。
深層ニューラル・ネットワーク(DNN)からの特徴の集合および特徴の集合に対応する重みの集合の抽出を示す例示的なシナリオを示す。
深層ニューラル・ネットワーク(DNN)の予測結果の検証のための分類器のトレーニングのための例示的な方法のフローチャートである。
深層ニューラル・ネットワーク(DNN)の予測結果の検証のための例示的な決定木分類器を示す。
みな、本開示に記載される少なくとも1つの実施形態に基づく。
本開示に記載されるいくつかの実施形態は、深層ニューラル・ネットワーク(DNN)の予測結果の効果的な検証のための方法およびシステムに関する。本開示において、DNNに関連するクラスの集合に対応する、事前トレーニングされた分類器の集合が、DNNの予測結果を検証するために使用されてもよい。事前トレーニングされた分類器の集合は、前記集合のクラスのデータ・ポイントを予測または分類するようにトレーニングされうるDNNに対して直交または独立であってもよい。DNNの予測結果の検証は、DNNの予測に対する信用または信頼性を提供する可能性があり、特定のクラスの予測(すなわち、正しいまたは正しくない)の原因でありうるまたは該予測のために使用されることがありうる、DNNの関連性のある(relevant)特徴の集合(正しいまたは間違っていることがありうる)の分析に基づいていてもよい。
本開示の一つまたは複数の実施形態によれば、DNNによる分類の技術分野は、計算システムがDNNの予測結果の正確さまたは信頼性を効果的に判別することができるように計算システムを構成することによって改善されうる。計算システムは、古典的な機械学習モデルの予測結果を検証することができる他の従来のシステムと比較して、予測の正確さをさらに改善するために、DNNの予測結果を検証することができる(すなわち、DNNに関連するあるクラスで事前トレーニングされた)少なくとも1つの分類器を含んでいてもよい。
システムは、リアルタイム・アプリケーションに関連するデータ・ポイントを受領するように構成されてもよい。データ・ポイントの例は、画像データ、発話データ、オーディオ・データ、テキスト・データ、または他の形のデジタル信号を含みうるが、これらに限定されない。システムは、リアルタイム・アプリケーションに関連する分類タスクのために事前トレーニングされたDNNによって、受領されたデータ・ポイントに関連するクラスを予測するようにさらに構成されてもよい。たとえば、分類タスクは画像分類タスクであってもよく、データ・ポイントは動物(たとえば、猫)の入力画像を含んでいてもよい。システムは、受領されたデータ入力(たとえば、猫の入力画像)に基づいてクラス(たとえば、猫のラベル)を予測するようにDNNを制御するように構成されてもよい。
システムはさらに、入力データ・ポイントの予測されたクラスについて、DNNから、特徴の集合および該特徴の集合に対応する重みの集合を抽出するように構成されてもよい。特徴の集合は、DNNの畳み込み層と関連付けられてもよい。たとえば、畳み込み層は、DNNの出力層に先行していてもよい。抽出された特徴の集合は、DNNの予測の正しさを判別するために抽出および/または選択されうる。たとえば、システムは、前記特徴の上位N個を選択してもよく、さらに、選択された特徴および対応する重みを使用して、DNNの予測の正しさまたは信用スコアを決定してもよい。
システムはさらに、予測されるクラスのための事前トレーニングされた分類器を制御して、データ・ポイントについてDNNによって予測されたクラスについての信頼スコア(または信用スコア)を決定するように構成されてもよい。信頼スコアの決定は、抽出された特徴の集合および対応する重みの集合に基づいてもよい。信頼スコアは、データ・ポイントについてのクラスの、DNNによる予測の正しさまたは信頼性を示してもよい。事前トレーニングされた分類器によって提供される指示的正しさまたは信用スコアは、DNNの予測結果をさらに検証してもよい。システムは、信頼スコアに基づいて出力情報を生成するようにさらに構成されてもよい。
DNNの畳み込み層から抽出され選択された特徴の集合は、たとえば、データ・ポイントの予測されるクラスと相関しうる高レベル特徴を表わしていてもよい。たとえば、画像分類タスクのためのDNNの利用の場合、データ・ポイントは、動物のタイプ(たとえば、猫)のようなクラスに分類される画像であってもよく、抽出された特徴の集合は、動物の頭、眼、鼻、尾、脚、および他の関連性のある身体部分のような、動物の高レベル特徴に対応してもよい。システムは、入力画像についてDNNによって予測されるクラスの効果的な検証を提供するために、画像のそのような高レベルのまたは関連性のある特徴および対応する重みを使用する(またはそれに基づいてトレーニングを受ける)よう、予測されたクラス(たとえば猫)について、事前トレーニングされた分類器を制御してもよい。さらに、事前トレーニングされた分類器(すなわち、DNNに対して独立)による、抽出された特徴の集合から選択された、限られた数の高レベル特徴(たとえば、上位N個の特徴)の利用は、さらに、DNNに関連するデータの次元性の最小化につながりうる。
本開示の実施形態は、添付の図面を参照して説明される。
図1は、本開示に記載される少なくとも1つの実施形態に従って構成された、事前トレーニングされた分類器に基づく深層ニューラル・ネットワーク(DNN)の予測結果の検証に関連する例示的な環境を表わす図である。図1を参照して、環境100が示されている。環境100は、電子装置102を含んでいてもよい。電子装置は、深層ニューラル・ネットワーク(DNN)104をさらに含んでいてもよい。電子装置102は、さらに、第1の分類器106A、第2の分類器106B、…、および第Nの分類器106Nを含みうる分類器106の集合を含んでいてもよい。環境100は、さらに、データベース108、ユーザー端装置110、および通信ネットワーク112を含んでいてもよい。電子装置102、データベース108、およびユーザー端装置110は、通信ネットワーク112を介して互いに通信的に結合されてもよい。
電子装置102の例は、モバイル装置、デスクトップコンピュータ、ラップトップ、コンピュータワークステーション、トレーニング装置、計算装置、メインフレームマシン、クラウドサーバーなどのサーバー、およびサーバー群を含みうるが、これらに限定されない。一つまたは複数の実施形態において、電子装置102は、ユーザー端の端末装置と、ユーザー端の端末装置と通信上結合されたサーバーとを含んでいてもよい。ユーザー端の端末装置の例は、モバイル装置、デスクトップコンピュータ、ラップトップ、およびコンピュータワークステーションを含みうるが、これらに限定されない。
電子装置102は、事前トレーニングされた分類器に基づいて深層ニューラル・ネットワーク(DNN)の予測結果の検証のための一つまたは複数の動作を実行するように構成されうる、好適な論理、回路、インターフェース、および/またはコードを含んでいてもよい。電子装置102は、プロセッサ、マイクロプロセッサ(一つまたは複数の動作を実行するまたはその実行を制御するため)、フィールドプログラマブルゲートアレイ(FPGA)、または特定用途向け集積回路(ASIC)を含むハードウェアを使用して実装されうる。いくつかの他の例では、電子装置102は、ハードウェアとソフトウェアの組み合わせを用いて実装されてもよい。
一つまたは複数の実施形態において、電子装置102は、通信ネットワーク112を介して、データセットにおける(すなわち、データベース108に記憶された)複数のデータ・ポイントから第1のデータ・ポイントを受領するように構成されてもよい。いくつかの実施形態では、電子装置102は、電子装置102のメモリ(図1には示されていない)に第1のデータ・ポイントを格納するように構成されてもよい。第1のデータ・ポイントは、画像データ、オーディオ・データ、発話データ、またはテキスト・データに対応してもよいが、これらに限定されない。データセットは、特定の分類タスクを実行しうるリアルタイム・アプリケーションに対応してもよい。リアルタイム・アプリケーションの例は、画像認識または分類アプリケーション、発話認識アプリケーション、テキスト認識アプリケーション、マルウェア検出アプリケーション、自律ビークル〔車両〕アプリケーション、異常検出アプリケーション、機械翻訳アプリケーション、電気生体信号、動きデータ、および奥行きデータなどだがこれらに限定されない種々のデジタル信号からのパターン認識を含みうるが、これらに限定されない。
電子装置102は、受領された第1のデータ・ポイント104に関連する第1のクラス(たとえば、ラベル)を予測するよう、事前トレーニングされた深層ニューラル・ネットワーク104を制御するように構成されてもよい。たとえば、DNN 104が画像分類タスクのために事前トレーニングされ、第1のデータ・ポイントが画像である場合、DNN 104は、動物(たとえば、猫)のような画像内のオブジェクトを第1のクラスとして予測するように制御されうる。いくつかの実施形態では、電子装置102は、受領されたデータ・ポイントに関連する第1のクラスについての予測を示すことができる第1の信頼スコア(すなわち、確率値としてのネイティブな信頼スコア)を生成するようにDNN 104を制御することができる。
電子装置102は、事前トレーニングされたDNN 104から、予測された第1のクラスについての特徴の第1の集合を抽出するようにさらに構成されてもよい。特徴の第1の集合は、事前トレーニングされたDNN 104の畳み込み層と関連していてもよい。畳み込み層は、事前トレーニングされたDNN 104の出力層に先行する事前トレーニングされたDNN 104の層に対応してもよいが、それに限定されない。電子装置102は、事前トレーニングされたDNN 104から、特徴の第1の集合に対応する重みの第1の集合を抽出するようにさらに構成されてもよい。勾配ベースのクラス活性化マッピング(Class Activation Mapping、CAM)技術を使用して、特徴の第1の集合および対応する重みの第1の集合を、事前トレーニングされたDNN 104から抽出してもよい。
電子装置102は、DNN 104106によって第1のデータ・ポイントについて予測された第1のクラスについての第2の信頼スコアを決定するよう、第1のクラスに関連する分類器(たとえば、第1の分類器106A)を制御するようにさらに構成されてもよい。分類器によって決定される第2の信頼スコアは、事前トレーニングされたDNN 104によって生成される第1の信頼スコアとは異なることがある。いくつかの実施形態では、電子装置102は、特徴の第1の集合および特徴の第1の集合に対応する重みの第1の集合に基づいて第2の信頼スコアを決定してもよい。電子装置102は、第1のデータ・ポイントについてのDNN 104による第1のクラスの予測に基づいて、分類器106の集合から分類器(たとえば、第1の分類器106A)を選択するように構成されてもよい。分類器の選択の詳細は、たとえば、図3において記述される。
電子装置102は、(第1の分類器106Aなどの)分類器によって決定された第2の信頼スコアに基づいて、第1のデータ・ポイントについての第1のクラスの予測の正しさを示すことができる出力情報を生成するようにさらに構成されてもよい。予測の指示された正しさは、事前トレーニングされたDNN 104によって実行された第1のクラスの予測(すなわち、あるいはデータ・ポイントの、第1のクラスへの分類)をさらに検証することができる。いくつかの実施形態において、出力情報は、DNN 104によって実行された予測の正しさの確率を提供しうる。特徴の第1の集合、分類器、およびDNN 104の予測結果の検証の詳細は、たとえば、図3、図4、図5において詳細に記載される。図1では、分類器106の集合および事前トレーニングされたDNN 104は、電子装置102の一部として示されているが、いくつかの実施形態では、分類器106の集合および事前トレーニングされたDNN 104は、本開示の範囲から逸脱することなく、単一の装置として統合されてもよい。代替的に、分類器106の集合および事前トレーニングされたDNN 104のそれぞれは、本開示の範囲から逸脱することなく、別個の装置内に実装されてもよい。
深層ニューラル・ネットワーク104は、特定のリアルタイム・アプリケーションについての出力結果を生成するために入力データ・ポイントを分類または認識するように構成されうる好適な論理、回路、インターフェース、および/またはコードを含んでいてもよい。たとえば、事前トレーニングされたDNN 104は、入力画像内の種々のオブジェクトを認識してもよく、入力画像内の各オブジェクトについて固有のラベルを提供してもよい。固有のラベルは、異なる生命体(人間、動物、植物など)または非生命体(車両、建物、コンピュータ、書籍などだが、これらに限定されない)に対応しうる。別の例では、発話認識の適用に関連する事前トレーニングされたDNN 104は、種々の入力オーディオ・サンプルを認識して、オーディオ・サンプルの源(たとえば、人間の話者)を識別することができる。ある実施形態では、出力の固有のラベルは、入力データ・ポイントについてのDNN 104の予測結果に対応してもよい。DNN 104は、DNN 104の出力予測結果の確率(0〜1)を示しうる第1の信頼スコアを(ネイティブな信頼スコアとして)出力するように構成されてもよい。たとえば、動物(猫のような)としての入力データ・ポイントについて、トレーニングされたDNN 104は、動物(たとえば、猫)としての固有のラベルをもって該入力データ・ポイントを予測するために、より高い第1の信頼スコア(たとえば、1.0に近い0.95)を生成してもよい。DNN 104は、プロセッサ、マイクロプロセッサ(たとえば一つまたは複数の動作を実行するまたはその実行を制御するため)、フィールドプログラマブルゲートアレイ(FPGA)、または特定用途向け集積回路(ASIC)を含むハードウェアを使用して実装されてもよい。いくつかの他の例では、DNN 104は、コード、プログラム、または一組のソフトウェア命令であってもよい。DNN 104は、ハードウェアおよびソフトウェアの組み合わせを使用して実装されてもよい。
いくつかの実施形態では、DNN 104は、入力データ・ポイントの認識のための複数の認識層(図示せず)に対応してもよく、一連の各層は、前の層の出力を入力として使用してもよい。たとえば、多重認識層は、入力層、一つまたは複数の隠れ層、および出力層を含んでいてもよい。各認識層は、複数のニューロンに関連付けられてもよく、各ニューロンは、複数の重みにさらに関連付けられてもよい。DNN 104のトレーニングの間、各層内の多重認識層および複数のニューロンは、DNN 104のハイパーパラメータから決定されうる。そのようなハイパーパラメータは、トレーニング・データセット(たとえば、特定のクラスの種々の画像)上でDNN 104をトレーニングする前またはトレーニング中に設定されてもよい。DNN 104は、入力データ・ポイントおよびDNN 104の出力結果(すなわち、確固とした事実)に基づいて、種々の層において前記複数の重みを調整するようにトレーニングされてもよい。
DNN 104の各ニューロンまたはノードは、DNN 104の入力としての第1のデータ・ポイント(たとえば、画像データ)と、DNN 104の出力としての予測結果またはクラスとの間の関係についてDNN 104をトレーニングするようにチューニング可能なパラメータの集合を有する数学的関数(たとえば、S字関数または整流線形ユニット)に対応しうる。パラメータの集合は、たとえば、重みパラメータ、正規化パラメータ等を含むことができる。各ニューロンは、前記数学的関数を使用して、DNN 104の他の層(単数または複数)(たとえば、前の層(単数または複数))におけるニューロンからの一つまたは複数の入力に基づいて出力を計算することができる。DNN 104のニューロンの全部または一部は、同じまたは異なる数学的関数に対応しうる。
DNN 104のトレーニングにおいて、DNN 104の各ニューロンの一つまたは複数のパラメータ(重みなど)は、(トレーニング・データセットからの)所与の入力についての最終層の出力が、DNNについての損失関数に基づいて正しい結果と一致するかどうかに基づいて、更新されうる。この更新プロセスは、損失関数の最小が達成でき、トレーニング誤差が最小化できるまで、同じまたは異なる入力について繰り返されてもよい。DNNをトレーニングするためのいくつかの方法、たとえば、勾配降下、確率的勾配降下、バッチ勾配降下、勾配ブースト、メタヒューリスティックス等が当技術分野において公知である。DNN 104は、一つまたは複数のデータ入力(すなわちたとえば、画像データ)の、一つまたは複数の出力(すなわち、クラス・ラベル)への分類のための一つまたは複数の動作を、電子装置などの計算装置が実行できるようにするように構成されたコードおよびルーチンを含んでいてもよい。
DNN 104の例は、回帰型ニューラル・ネットワーク(RNN)、人工ニューラル・ネットワーク(ANN)、畳み込みニューラル・ネットワーク(CNN)、CNN回帰型ニューラル・ネットワーク(CNN-RNN)、R-CNN、Fast R-CNN、Faster R-CNN、長短期メモリ(LSTM)ネットワーク・ベースのRNN、CNN+ANN、LSTM+ANN、ゲート回帰型ユニット(GRU)ベースのRNN、全結合ニューラル・ネットワーク、コネクショニスト時間的分類(Connectionist Temporal Classification、CTC)ベースのRNN、深層ベイジアン・ニューラル・ネットワーク、敵対的生成ネットワーク(GAN)、および/またはそのようなネットワークの組み合わせを含みうるが、これらに限定されない。
分類器106の集合の各分類器は、入力データ・ポイントを、DNN 104に関連するクラスの集合のうちの1つに分類するように構成されうる好適な論理、回路、インターフェース、および/またはコードを含んでいてもよい。各分類器は、入力データ・ポイントの分類のために、DNN 104に関連するあるクラスのために事前トレーニングされてもよい。たとえば、第1の分類器106Aは、入力画像を、該入力画像に関連する動物などのクラスに分類するよう事前トレーニングされてもよい。分類器106の集合の各分類器は、データベース108に記憶された試験データセットに基づいてトレーニングされてもよい。あるクラス(たとえば、動物)に関連する分類器は、DNN 104の予測結果を検証するために使用されてもよく、ここで、予測結果は、分類器がトレーニングされうるのと同じクラスに対応してもよい。たとえば、特定のクラス(たとえば、動物)のために事前トレーニングされた分類器が、同じクラス(すなわち、動物)に分類された入力画像についてのDNN 104の予測または分類結果の正確さ(accuracy)または正しさ(correctness)を決定するために使用されてもよい。ある実施形態では、事前トレーニングされた分類器(たとえば、第1の分類器106A)は、予測結果(すなわち、入力データ・ポイントについてDNN 104によって予測されたクラス)の正確さまたは正しさを、予測された結果(または予測されたクラス)に関連する第2の信頼スコアとして決定するように構成されてもよい。第1の分類器106Aは、DNN 104から抽出された、特徴の第1の集合および対応する重みの第1の集合に基づいて、予測されたクラスについて第2の信頼スコアを(直交信頼スコアとして)決定してもよい。事前トレーニングされたDNN 104の予測結果の検証のための分類器106の集合を使用することは、たとえば、図3において詳細に説明される。分類器106の集合からの分類器(たとえば、第1の分類器106A)のトレーニングは、たとえば、図6において詳細に説明される。分類器106の集合の例は、決定木分類器、サポートベクトルマシン(SVM)分類器、ナイーブベイズ分類器、ロジスティック回帰分類器、またはk近傍分類器、またはそれらの組み合わせを含んでいてもよいが、これらに限定されない。
データベース108は、リアルタイム・アプリケーションに関連する複数のデータ・ポイントを含むデータセットを記憶するように構成されうる好適な論理、インターフェース、および/またはコードを含んでいてもよい。電子装置102は、データベース108から複数のデータ・ポイントのうちの第1のデータ・ポイントを受領してもよい。さらに、複数のデータ・ポイントは、DNN 104をトレーニングするために使用されうるトレーニング・データ・ポイントの集合(またはトレーニング・データセット)を含んでいてもよい。複数のデータ・ポイントは、さらに、DNN 104を試験するために、またはDNN 104によって予測されるクラスについて分類器106の集合の各分類器をトレーニングするために使用されうる試験データ・ポイントの集合(または試験データセット)を含んでいてもよい。データベース108は、トレーニング・データセットまたは試験データセットを含むリレーショナルデータベースまたは非リレーショナルデータベースでありうる。また、場合によっては、データベース108は、クラウドサーバーのようなサーバー上に記憶されてもよく、または、電子装置102上でキャッシュされ、記憶されてもよい。データベース108のサーバーは、通信ネットワーク112を介して、電子装置102から、試験データセットを提供する要求を受信するように構成されてもよい。応答して、データベース108のサーバーは、通信ネットワーク112を介して、受信された要求に基づいて試験データセットまたは特定のデータ・ポイントを取り出して、電子装置102に提供するように構成されてもよい。いくつかの実施形態では、データベース108は、事前トレーニングされたDNN 104のクラスの集合からの対応するクラスに関連付けられたトレーニングされた分類器106の集合を記憶するように構成されてもよい。いくつかの実施形態では、データベース108は、特定の諸リアルタイム・アプリケーションのために、事前トレーニングされたDNN 104を記憶するように構成されてもよい。いくつかの実施形態では、データベース108は、分類器106の集合によって生成された出力情報(すなわち、DNN 104の予測の正しさを示す)を記憶するように構成されてもよい。いくつかの実施形態では、データベース108は、抽出された特徴の集合を記憶してもよく、それに基づいて、分類器106の集合は、出力情報を生成するようにトレーニングされうる。追加的または代替的に、データベース108は、プロセッサ、マイクロプロセッサ(たとえば、一つまたは複数の動作を実行するまたはその実行を制御するため)、フィールドプログラマブルゲートアレイ(FPGA)、または特定用途向け集積回路(ASIC)を含むハードウェアを使用して実装されてもよい。いくつかの他の例では、データベース108は、ハードウェアおよびソフトウェアの組み合わせを用いて実装されてもよい。
ユーザー端装置110は、特定の分類タスク(すなわち、そのタスクのためにDNN 104および分類器106の集合がトレーニングされる)が実行されうるリアルタイム・アプリケーションを記憶するように構成されうる好適な論理、回路、インターフェース、および/またはコードを含みうる。いくつかの実施形態では、ユーザー端装置110は、事前トレーニングされたDNN 104と、配備された事前トレーニングされたDNN 104の予測結果を検証するための分類器106の集合とを配備してもよい。ユーザー端装置110は、配備されたDNN 104を利用して、リアルタイム・アプリケーションの分類または検出タスクを実行し、配備された分類器106の集合を利用して、配備されたDNN 104によって生成された予測または分類結果を検証してもよい。たとえば、ユーザー端装置110は、組み込みカメラまたはサーバーから入力画像を受領してもよく、ユーザー端装置110上に配備されたトレーニングされたDNN 104に基づいて、入力画像に対して画像分類または認識を実行してもよい電子装置であってもよい。ユーザー端装置110は、さらに、予測された画像クラスに関連する配備された事前トレーニングされた分類器(たとえば、分類器106の集合の1つ)を使用して、DNN 104(すなわち、ユーザー端装置110上に配備されたもの)によって実行された、予測された画像クラスへの画像の分類の正確さ(accuracy)または信頼性(reliability)を決定してもよい。別の例では、ユーザー端装置110は、周囲からリアルタイム画像を受領し、組み込まれたトレーニングされたDNN 104を通じてそれらの画像において捕捉された種々のオブジェクトを検出することができる自律的なビークル/車両であってもよい。そのようなシナリオでは、ユーザー端装置110は、分類器106の集合からのある事前トレーニングされた分類器を使用して、DNN 104の予測出力を検証し、自律ビークルのDNN 104によって実行された潜在的な誤判断または正しくない検出を、自律ビークルに関連するユーザーに対して示す、または警告することができる。いくつかの実施形態では、ユーザー端装置110は、自律ビークルに配備されたDNN 104によって実行された正しくない検出または誤判断に基づいて、適切なアクション(たとえば、自律ビークルのブレーキを適用するまたはステアリングを制御すること)を行なってもよい。
別の例では、ユーザー端装置110は、種々の発話データ・サンプル上でトレーニングされたDNN 104によって実行された発話認識に基づいてユーザー認証を実行することができるオーディオ・セキュリティ・システムであってもよい。同様に、ユーザー端装置110は、認証の正確さを高めるために、分類器106の集合からのある適切な事前トレーニングされた分類器を使用することによって、DNN 104によって実行されたユーザーの認証を検証してもよい。上記の諸例は、本開示を限定すると解釈されるものではなく、DNN 104は、簡潔のために言及されていない多くの可能な用途で使用されうることを注意しておくべきである。ユーザー端装置110の例は、モバイル装置、デスクトップコンピュータ、ラップトップ、コンピュータワークステーション、計算装置、メインフレームマシン、クラウドサーバーなどのサーバー、およびサーバー群を含みうるが、これらに限定されない。
通信ネットワーク112は、それを通じて電子装置102がデータベース108を記憶しうるサーバーおよびユーザー端装置110と通信することができる通信媒体を含んでいてもよい。通信ネットワーク112の例は、インターネット、クラウドネットワーク、ワイヤレスフィデリティ(Wi-Fi)ネットワーク、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、および/またはメトロポリタン・エリア・ネットワーク(MAN)を含みうるが、これらに限定されない。環境100内のさまざまな装置は、さまざまな有線および無線通信プロトコルに従って、通信ネットワーク112に接続するように構成されてもよい。そのような有線および無線通信プロトコルの例は、伝送制御プロトコルおよびインターネットプロトコル(TCP/IP)、ユーザーデータグラムプロトコル(UDP)、ハイパーテキスト転送プロトコル(HTTP)、ファイル転送プロトコル(FTP)、ZigBee、EDGE、IEEE802.11、ライトフィデリティ(Li-Fi)、802.16、IEEE802.11s、IEEE802.11g、マルチホップ通信、無線アクセスポイント(AP)、デバイス間通信、セルラー通信プロトコル、および/またはBluetooth(BT)通信プロトコル、またはそれらの組み合わせのうちの少なくとも1つを含みうるが、これらに限定されない。
本開示の範囲から逸脱することなく、図1に対して修正、追加、または省略がされてもよい。たとえば、環境100は、本開示において図示されかつ記述されたものよりも多くの、または少ない要素を含んでいてもよい。たとえば、いくつかの実施形態では、環境100は、電子装置102を含んでいるが、データベース108およびユーザー端装置110を含んでいないのでもよい。さらに、いくつかの実施形態では、データベース108およびユーザー端装置110のそれぞれの機能は、本開示の範囲から逸脱することなく、電子装置102に組み込まれてもよい。
図2は、本開示において記載される少なくとも1つの実施形態に従って構成された、事前トレーニングされた分類器に基づく、深層ニューラル・ネットワーク(DNN)の予測結果の検証のための例示的システムのブロック図である。図2は、図1からの要素と関連して説明される。図2を参照すると、例示的システム202のブロック図 200が示されている。例示的システム202は、電子装置102、DNN 104、および分類器106の集合を含んでいてもよい。電子装置102は、プロセッサ204、メモリ206、永続データ記憶208、入出力(I/O)装置210、およびネットワーク・インターフェース212を含んでいてもよい。
プロセッサ204は、電子装置102によって実行されるべき種々の動作に関連するプログラム命令を実行するように構成されうる好適な論理、回路、および/またはインターフェースを含みうる。たとえば、動作のいくつかは、第1のデータ・ポイントの受領、受領された第1のデータ・ポイントに関連する第1のクラスの予測のためのDNN 104の制御、特徴の第1の集合および重みの第1の集合の抽出、特徴の第1の集合の選択、第2の信頼スコアの決定のための分類器106の集合のうちの1つ分類器の制御、および出力情報の生成を含んでいてもよい。プロセッサ204は、さまざまなコンピュータハードウェアまたはソフトウェアモジュールを含む、任意の好適な特殊目的または汎用コンピュータ、計算エンティティ、または処理装置を含んでいてもよく、任意の適用可能なコンピュータ読み取り可能記憶媒体に記憶された命令を実行するように構成されてもよい。たとえば、プロセッサ204は、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラム命令をインタープリットおよび/または実行するおよび/またはデータを処理するように構成された任意の他のデジタルまたはアナログ回路を含んでいてもよい。図2では単一のプロセッサとして示されているが、プロセッサ204は、本開示に記載されているような、電子装置102の任意の数の動作を個別にまたは集合的に実行するまたはその実行を指揮するように構成された任意の数のプロセッサを含んでいてもよい。さらに、前記プロセッサの一つまたは複数が、一つまたは複数の異なる電子装置、たとえば、異なるサーバー上に存在してもよい。
いくつかの実施形態では、プロセッサ204は、メモリ206および/または永続データ記憶208に記憶されたプログラム命令をインタープリットおよび/または実行するおよび/またはデータを処理するように構成されてもよい。いくつかの実施形態では、プロセッサ204は、永続データ記憶208からプログラム命令を取り出し、該プログラム命令をメモリ206にロードしてもよい。プログラム命令がメモリ206にロードされた後、プロセッサ204は、プログラム命令を実行してもよい。プロセッサ204の例のいくつかは、GPU、CPU、RISCプロセッサ、ASICプロセッサ、CISCプロセッサ、コプロセッサ、および/またはそれらの組み合わせであってもよい。
メモリ206は、プロセッサ204によって実行可能なプログラム命令を記憶するように構成されうる好適な論理、回路、インターフェース、および/またはコードを含んでいてもよい。ある種の実施形態では、メモリ206は、オペレーティングシステムおよび関連するアプリケーション固有の情報を記憶するように構成されてもよい。メモリ206は、コンピュータ実行可能な命令またはデータ構造を担持するまたは記憶するためのコンピュータ読み取り可能な記憶媒体を含んでいてもよい。そのようなコンピュータ読み取り可能記憶媒体は、プロセッサ204のような汎用または専用コンピュータによってアクセスされうる任意の利用可能な媒体を含んでいてもよい。たとえば、限定するものではないが、そのようなコンピュータ読み取り可能記憶媒体は、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、電気的に消去可能なプログラマブル読み出し専用メモリ(EEPROM)、コンパクトディスク読み出し専用メモリ(CD-ROM)、または他の光ディスク記憶、磁気ディスク記憶、または他の磁気記憶デバイス、フラッシュメモリデバイス(たとえば、固体メモリデバイス)、またはコンピュータ実行可能命令またはデータ構造の形で具体的なプログラム・コードを搬送または記憶するために使用され、汎用または特殊目的のコンピュータによってアクセスされうる任意の他の記憶媒体を含む、有形または非一時的なコンピュータ読み取り可能記憶媒体を含んでいてもよい。上記の組み合わせもまた、コンピュータ読み取り可能な記憶媒体の範囲内に含まれうる。コンピュータ実行可能命令は、たとえば、プロセッサ204に電子装置102に関連するある種の動作または動作群を実行させるように構成された命令およびデータを含んでいてもよい。
永続データ記憶208は、プロセッサ204、オペレーティングシステムによって実行可能なプログラム命令および/またはログおよびアプリケーション固有のデータベースなどのアプリケーション固有の情報を記憶するように構成されうる好適な論理、回路、および/またはインターフェースを含んでいてもよい。永続データ記憶208は、コンピュータ実行可能な命令またはデータ構造を担持または記憶するためのコンピュータ読み取り可能な記憶媒体を含んでいてもよい。そのようなコンピュータ読み取り可能記憶媒体は、プロセッサ204のような汎用または専用コンピュータによってアクセスされうる任意の利用可能な媒体を含んでいてもよい。
例として、限定されるものではないが、そのようなコンピュータ読み取り可能な記憶媒体は、コンパクトディスク読み出し専用メモリ(CD-ROM)または他の光ディスク記憶、磁気ディスク記憶または他の磁気記憶装置(たとえば、ハードディスクドライブ(HDD))、フラッシュメモリデバイス(たとえば、固体ドライブ(SSD)、セキュアデジタル(SD)・カード、他の固体メモリデバイス)、またはコンピュータ実行可能命令またはデータ構造の形で具体的なプログラム・コードを担持または記憶するために使用されてもよく、汎用または特殊目的のコンピュータによってアクセスされうる任意の他の記憶媒体を含む、有形または非一時的なコンピュータ読み取り可能な記憶媒体を含んでいてもよい。上記の組み合わせもまた、コンピュータ読み取り可能な記憶媒体の範囲内に含まれうる。コンピュータ実行可能命令は、たとえば、プロセッサ204に電子装置102に関連するある種の動作または動作群を実行させるように構成された命令およびデータを含んでいてもよい。
いくつかの実施形態では、メモリ206、永続データ記憶208、または組み合わせのいずれかが、分類器106の集合およびDNN 104をソフトウェア命令として記憶することができる。プロセッサ204は、開示された電子装置102の種々の動作を実行するために、分類器106の集合およびDNN 104に関連するソフトウェア命令を取ってくることができる。いくつかの実施形態では、メモリ206、永続データ記憶208、または組み合わせのいずれかが、第1のデータ・ポイントおよび/またはトレーニング/試験データセット、第1の複数の特徴、および対応する第1の複数の重みを記憶することができる。
入出力装置210は、ユーザー入力を受領するように構成されうる好適な論理、回路、インターフェース、および/またはコードを含んでいてもよい。入出力装置210は、さらに、ユーザー入力に応答して出力を提供するように構成されてもよい。たとえば、入出力装置210は、ユーザー入力としてコマンドまたは手書きテキストをユーザーから受領してもよく、受領されたユーザー入力は、DNN 104のトレーニング、分類器106の集合からのある分類器のトレーニング、またはトレーニングされたDNN 104の予測結果の検証のために使用されうる。入出力装置210は、プロセッサ204およびネットワーク・インターフェース212などの他の構成要素と通信するように構成されうるさまざまな入力および出力装置を含みうる。入出力装置210は、入力装置または出力装置を含みうる。入力装置の例は、タッチスクリーン、キーボード、マウス、ジョイスティック、および/またはマイクロフォンを含みうるが、これらに限定されない。出力装置の例は、ディスプレイおよびスピーカーを含みうるが、これらに限定されない。
ネットワーク・インターフェース212は、通信ネットワーク112を介して、電子装置102、データベース108、およびユーザー端装置110の間の通信を確立するように構成されうる好適な論理、回路、インターフェース、および/またはコードを含んでいてもよい。ネットワーク・インターフェース212は、通信ネットワーク112を介して電子装置102の有線または無線通信をサポートするために、さまざまな既知の技術を使用することによって実装されうる。ネットワーク・インターフェース212は、アンテナ、無線周波数(RF)トランシーバ、一つまたは複数の増幅器、チューナー、一つまたは複数の発振器、デジタル信号プロセッサ、符号化器‐復号器(コーデック)チップセット、加入者識別モジュール(SIM)カード、および/またはローカルバッファを含んでいてもよいが、これらに限定されない。
ネットワーク・インターフェース212は、インターネット、イントラネット、および/または無線ネットワーク、たとえばセルラー電話ネットワーク、無線ローカル・エリア・ネットワーク(LAN)、および/またはメトロポリタン・エリア・ネットワーク(MAN)といったネットワークと無線通信を介して通信することができる。無線通信は、グローバル移動通信システム(GSM)、エンハンストデータGSM環境(EDGE)、広帯域符号分割多重アクセス(W-CDMA)、ロングタームエボリューション(LTE)、符号分割多重アクセス(CDMA)、時分割多重アクセス(TDMA)、Bluetooth、ウェイやレスフィデリティ(Wi-Fi)(たとえば、IEEE802.11a、IEEEE802.11b、IEEEE802.11gおよび/またはIEEE802.11nなど)、ボイスオーバーインターネットプロトコル(VoIP)、ライトフィデリティ(Li-Fi)、またはWi-MAXなどの複数の通信規格、プロトコルおよび技術のいずれかを使用することができる。
本開示の範囲から逸脱することなく、例示的システム202に修正、追加、または省略がされてもよい。たとえば、いくつかの実施形態では、例示的なシステム202は、簡潔のために明示的に図示または説明されないことがありうる任意の数の他の構成要素を含んでいてもよい。
図3は、本開示において記載される少なくとも1つの実施形態による、事前トレーニングされた分類器に基づく、深層ニューラル・ネットワーク(DNN)の予測結果の検証のための例示的方法のフローチャートである。図3は、図1および図2の要素との関連で説明される。図3を参照すると、フローチャート300が示されている。フローチャート300に示される方法は、302から始まってもよく、図1の例示的な電子装置102または図2の例示的なシステム202のような、任意の好適なシステム、装置またはデバイスによって実行されてもよい。たとえば、電子装置102、事前トレーニングされたDNN 104、または分類器106の集合からの分類器のうちの一つまたは複数が、方法300に関連する動作のうちの一つまたは複数を実行してもよい。離散的なブロックで示されているが、方法300の一つまたは複数のブロックに関連するステップおよび動作は、具体的な実装に依存して、追加のブロックに分割されてもよく、より少ないブロックに組み合わされてもよく、またはなくされてもよい。
ブロック302では、第1のデータ・ポイントが受領されてもよい。第1のデータ・ポイントは、リアルタイム・アプリケーションと関連していてもよい。たとえば、第1のデータ・ポイントは、画像、オーディオ/発話サンプル、テキストキャラクタ、ソフトウェア命令、または、他の形のデジタル信号、たとえば限定されるものではないが、電気生体信号、動きデータ、または奥行きデータを含んでいてもよいが、これらに限定されない。リアルタイム・アプリケーションの例は、画像認識アプリケーション、画像分類アプリケーション、発話認識アプリケーション、テキスト認識アプリケーション、マルウェア検出アプリケーション、自律ビークル・アプリケーション、異常検出アプリケーション、機械翻訳アプリケーション、またはデジタル信号/データからのパターン認識アプリケーションを含みうるが、これらに限定されない。
いくつかの実施形態では、プロセッサ204は、メモリ206、永続データ記憶208、またはデータベース108のいずれかまたは組み合わせに記憶されうるデータセット内の複数のデータ・ポイントから第1のデータ・ポイント(たとえば、画像)を受領するように構成されてもよい。第1のデータ・ポイント(たとえば、画像)は、特定のクラス・ラベルへの分類または予測のために受領されてもよく、ここで、該分類または予測は、事前トレーニングされたDNN 104によって実行されてもよい。
ブロック304では、受領された第1のデータ・ポイントに関連する第1のクラスが予測されてもよい。事前トレーニングされたDNN 104は、受領された第1のデータ・ポイントに関連する第1のクラスを予測するように制御されてもよい。一つまたは複数の実施形態では、プロセッサ204は、受領された第1のデータ・ポイントについての第1のクラスを予測するようDNN 104を制御するように構成されてもよい。たとえば、DNN 104が画像分類タスクのために事前トレーニングされ、第1のデータ・ポイントが画像である場合、事前トレーニングされたDNN 104は、第1のクラスを、その画像について、生命体(たとえば、動物、植物または人間)または非生命体(たとえば、建物、車両、道路、記号、または他の任意のオブジェクト)として予測することができる。DNN 104に入力された画像が犬の動物のものである場合、DNN 104は、犬ラベルへの画像の分類を示しうる一意的なクラス・ラベルを出力することができる。出力クラス・ラベルは、DNN 104の予測結果として考慮されうる。
DNN 104は、ネイティブ信頼スコアとしての、DNN 104の第1の信頼スコアを生成するように構成されてもよい。第1の信頼スコアは、DNN 104の予測結果を示す確率値(たとえば、0から1までの間)を示してもよい。換言すれば、DNN 104によって生成される第1の信頼スコアは、受領された入力画像(またはデータ・ポイント)についての第1のクラス(すなわち、クラス・ラベル)の予測を示しうる。
ブロック306では、特徴の第1の集合および特徴の第1の集合に対応する重みの第1の集合が、第1のデータ・ポイントの予測される第1のクラスについて抽出されてもよい。一つまたは複数の実施形態では、プロセッサ204は、事前トレーニングされたDNN 104から、特徴の第1の集合および特徴の第1の集合に対応する重みの第1の集合を抽出するように構成されてもよい。プロセッサ204は、DNN 104の畳み込み層から、特徴の第1の集合および対応する重みの第1の集合を抽出してもよい。ある実施形態では、特徴が抽出される畳み込み層は、DNN 104の出力層に先行してもよいDNN 104の層であってもよい。そのような場合、畳み込み層は、DNN 104の最後の畳み込み層であってもよい。いくつかの実施形態では、プロセッサ204は、クラス活性化マッピング(CAM)のプロセスを使用して、DNN 104の畳み込み層から、特徴の第1の集合および対応する重みの第1の集合を抽出するように構成されてもよい。クラス活性化マッピング(CAM)のプロセスならびに特徴(または特徴値の集合)および対応する重みがそこから抽出されうるDNN 104の畳み込み層は、たとえば図5に詳細に記載される。
ある例に関して、第1のデータ・ポイントは、DNN 104によって分類される画像であってもよい。特徴の第1の集合は、画像のオブジェクトの特徴または特性を含んでいてもよく、ここで、オブジェクトは、DNN 104の畳み込み層において識別または分類されうる。特徴の第1の集合に関連する畳み込み層は、DNN 104の出力層に先行する層であってもよい(または最後の畳み込み層であってもよい)ので、特徴の第1の集合は、第1のデータ・ポイントに関連する高レベル特徴であってもよい。一例では、オブジェクトが画像内の動物である場合、畳み込み層の高レベルの特徴は、動物のさまざまな特性または身体部分、たとえば、動物の頭、眼、尾、および脚に対応しうる。そのような高レベルの特徴は、入力データ・ポイントについての第1のクラス(画像内の動物など)として予測結果を潜在的に生成するようにDNN 104がトレーニングされうるもとになる関連性のある特徴でありうる。換言すれば、トレーニングされたDNN 104は、第1のデータ入力についての第1のクラスの予測または分類(正しいか誤りかを問わず)のために、そのような高レベルの特徴を使用してもよい。さらに、重みの第1の集合は、そのような高レベルの特徴(または特徴の第1の集合)に関連付けられうる畳み込み層の乗数に対応してもよい。特徴の乗数は、DNN 104の出力層における畳み込み層の出力を決定するために、他の特徴に比してのその特徴の重みまたは重要性を与えうる。DNN 104からの特徴の第1の集合および重みの第1の集合の抽出は、たとえば図5において詳細に説明される。
いくつかの実施形態では、プロセッサ204は、DNN 104の畳み込み層から、特徴の第2の集合および特徴の第2の集合に対応する重みの第2の集合を抽出するように構成されてもよい。特徴の第2の集合は、特徴の第1の集合を含んでいてもよい。言い換えると、第1の集合の特徴の数は、第2の集合の特徴の数より少なくても等しくてもよく、特徴の第1の集合は、特徴の第2の集合の部分集合であってもよい。さらに、プロセッサ204は、重みの第2の集合に基づいて、抽出された特徴の第2の集合から特徴の第1の集合を選択するように構成されてもよい。そのようなシナリオでは、特徴の第1の集合の抽出は、特徴の第2の集合からの特徴の第1の集合の選択に対応してもよい。特徴の第2の集合の抽出および特徴の第2の集合からの特徴の第1の集合の選択は、たとえば図4において詳細に説明される。
ブロック308において、第1のデータ・ポイントの予測された第1のクラスについて、信頼スコアが決定されてもよい。一つまたは複数の実施形態では、プロセッサ204は、さらに、第1のデータ・ポイントについてDNN 104によって予測された第1のクラスについての信頼スコア(または第2の信頼スコア)を決定するために、分類器(たとえば、第1の分類器106A)を制御するように構成されてもよい。分類器(たとえば、第1の分類器106A)は、第1のデータ・ポイントの予測された第1のクラスに関連付けられてもよい。分類器(たとえば、第1の分類器106A)は、DNN 104から独立しているため、第1の分類器106Aによって生成される第2の信頼スコアは、事前トレーニングされたDNN 104によって生成される第1の信頼スコア(すなわち、ネイティブな信頼スコア)とは異なることがありうる直交信頼スコアと称されてもよい。
いくつかの実施形態では、第1の分類器106Aは、特徴の抽出されたまたは選択された第1の集合および該特徴の第1の集合に対応する重みの第1の集合に基づいて、予測されたクラスについての第2の信頼スコアを決定してもよい。第1の分類器106A(または分類器106の集合の他のもの)の例は、これに限定されるものではないが、決定木分類器、サポートベクトルマシン(SVM)分類器、単純ベイズ分類器、ロジスティック回帰分類器、またはk近傍分類器を含んでいてもよい。
ある実施形態では、特徴の第1の集合は、予測された第1のクラスに関連してもよい畳み込み層の一つまたは複数の第1特徴を含んでいてもよく、さらに、予測された第1のクラスに関連しなくてもよい(または、より少なく関連してもよい)畳み込み層の一つまたは複数の第2特徴を含んでいてもよい。たとえば、ある画像に関連する動物「猫」の予測された第1のクラスについて、第1のクラスの正しい予測に関係するかまたは正しい予測のために重要な前記一つまたは複数の第1特徴は、これに限定されるものではないが、特徴的な頭、眼、または耳を含んでいてもよい。さらに、重要さがより少なくてもよい、または第1のクラスの正しくない予測につながりうる前記一つまたは複数の第2特徴は、これに限定されるものではないが、身体色、尾、または毛を含んでいてもよい。これらは他の動物にも同様に共通でありうる。ある実施形態では、プロセッサ204は、前記一つまたは複数の第1特徴と第1のクラスの正しい予測との相関に基づいて、かつ前記一つまたは複数の第2特徴と第1のクラスの正しくない予測との別の相関に基づいて、第2の信頼スコアを決定するために、第1の分類器106Aを制御または使用してもよい。前記一つまたは複数の第1特徴および前記一つまたは複数の第2特徴からの各特徴は、特徴値の集合を含んでいてもよい。前記一つまたは複数の第1特徴と正しい予測との相関、または前記一つまたは複数の第2特徴と第1のクラスの正しくない予測との相関は、特徴値の集合および各特徴に対応する重みに基づいてもよい。このことは、たとえば図5および図7に記載される。
一例では、予測される第1のクラスのための第1の分類器106Aは、内部ノードの集合およびリーフノードの集合を含みうる、事前トレーニングされた決定木分類器であってもよい。決定木分類器の内部ノードの集合の各内部ノードは、特徴の第1の集合の特徴およびその特徴の対応する重みに関連する条件を表わすことができる。該条件は、特徴の第1の集合の各特徴の特徴値の集合、および各特徴に対応する重みに関してであってもよい。さらに、リーフノードの集合の各リーフノードは、第1のデータ・ポイントについての予測された第1のクラスに関連する第2の信頼スコアを含んでいてもよい、決定木分類器の予測出力を表わしてもよい。各特徴の特徴値の集合に基づいて、決定木分類器の内部ノードの集合において設定された条件、および第1のデータ・ポイントの予測された第1のクラスについての第2の信頼スコアの決定は、たとえば図7において詳細に説明される。
いくつかの実施形態において、プロセッサ204は、(たとえば、図3のステップ304において)DNN 104によって予測された第1のクラスについて、分類器106の集合から分類器(たとえば、第1の分類器106A)を選択するように構成されてもよい。たとえば、分類器106の集合は、DNN 104が特定の分類タスク(たとえば、画像分類)のために事前トレーニングされうるさまざまなクラスに対応しうる。そのようなクラスの例は、生物(動物、鳥、植物、および人間など)および非生物(建物、車両、道路、電子機器、または他の任意のオブジェクトなどがだが、これらに限定されない)を含む。予測された第1のクラスが猫(すなわち、動物)である場合、プロセッサ204は、分類器106の集合から、動物または特に猫に関連する分類器(たとえば、第1の分類器106A)を選択して、予測された第1のクラス(すなわち、猫)についての第2の信頼スコアをさらに決定してもよい。ある実施形態では、選択された分類器(たとえば、第1の分類器106A)は、DNN 104によって予測された(すなわち、ステップ304において予測された)第1のクラス(すなわち、猫)のために事前トレーニングされていてもよい。特定のクラスのための分類器106の集合のある分類器(たとえば、第1の分類器106A)のトレーニングは、たとえば、図6において詳細に説明される。
ブロック310では、出力情報が生成されてもよい。一つまたは複数の実施形態において、プロセッサ204は、選択された、または事前トレーニングされた分類器(たとえば、第1の分類器106A)によって決定された第2の信頼スコアに基づいて、出力情報を生成するようにさらに構成されてもよい。生成された出力情報は、DNN 104による、第1のデータ・ポイントについての第1のクラスの予測の正しさを示すことができる。換言すれば、生成された出力情報は、(受領された第1のデータ・ポイントを第1のクラスに分類するステップ304において)DNN 104によって実行された予測の正しさを示すことができる。いくつかの実施形態では、第2の信頼スコアは、0から1までの間の確率値に対応してもよく、よって、「1」により近い確率値は、DNN 104による第1のデータ・ポイントについての第1のクラスの正しい予測を示すことができ、「0」により近い確率値は、受領された第1のデータ・ポイントについて、第1のクラスとしてDNN 104によってなされた正しくない予測を示すことができる。換言すれば、分類器(たとえば、DNN 104に直交する第1の分類器106A)によって決定される第2の信頼スコアは、DNN 104によって実行された予測に関する信用もしくは信頼性スコアを示してもよく、または、DNN 104によって実行された(たとえば、ステップ304において実行された)予測の正しさを検証してもよい。換言すれば、第2の信頼スコアは、リアルタイム動作中にDNN 104によって正しい予測が実行される確率を示しうる。
ある実施形態では、プロセッサ204は、決定された第2の信頼スコアをあらかじめ定義されたスコア閾値と比較するようにさらに構成されてもよい。プロセッサ204は、比較に基づいて第1のクラスの予測の正しさを示す出力情報を生成してもよい。たとえば、第2の信頼スコアが0から1までの間の確率値に対応する場合、あらかじめ定義されたスコア閾値は0.5であってもよい。そのような場合にプロセッサ204によって生成される出力情報は、決定された信頼スコアが0.5より大きい場合には、第1のクラスの正しい予測を示してもよく、第2の信頼スコアが0.5(すなわち、あらかじめ定義されたスコア閾値)より小さい場合には、DNN 104の予測が正しくないことを示してもよい。
ある実施形態では、出力情報は、入出力装置210上の第2の信頼スコアの表示、ログ・ファイルへの第2の信頼スコアの格納、または第2の信頼スコアに基づく通知/警告のうちの少なくとも1つに対応しうるが、これらに限定されない。たとえば、ユーザー端装置110(または電子装置102)は、DNN 104によって予測された第1のクラスの正しさの度合い(degree of correctness)を示すために、表示装置上で、予測された第1のクラスとともに、ユーザーに対して第2の信頼スコアを表示することができる。別の例では、ユーザー端装置110(または電子装置102)は、決定された第2の信頼スコアをメモリ(メモリ206など)内のログ・ファイルに格納することができる。たとえば、ログ・ファイルは、(たとえば、自律ビークルにおける)リアルタイム動作におけるDNN 104の正確さを決定するために、DNN 104が何回正しく予測したか、またはしなかったかを示してもよい。ある種のシナリオでは、第2の信頼スコアは、第2の信頼スコアとあらかじめ定義されたスコア閾値との比較に基づいて、予測された第1のクラスとともにログ・ファイルに格納されてもよい。たとえば、第2の信頼スコアがあらかじめ定義されたスコア閾値より大きい(または小さい)場合に、第2の信頼スコアをログ・ファイルに格納してもよい。別の例では、出力情報は、選択された分類器(たとえば、第1の分類器106A)によって決定された第2の信頼スコアに基づいて、ユーザー端装置110(または電子装置102)のユーザーに対する通知(たとえば、アラートまたは警告)として示されてもよい。たとえば、ユーザー端装置110が自律ビークルであり、第2の信頼スコアがあらかじめ定義されたスコア閾値(たとえば、0.5)を下回る場合に、ユーザー端装置110(すなわち、自律ビークル)は、ユーザー(たとえば、自律ビークルの乗客)に通知してもよい。通知は、ユーザー端装置110内に配備されているDNN 104によって実行された第1のクラスの潜在的な誤った予測(たとえば、障害となりうるオブジェクトの誤った分類または誤識別)に起因して、ユーザーが自律ビークルを制御するための警告またはアラートを含んでいてもよい。いくつかの実施形態では、電子装置102によって生成される出力情報は、たとえば、分類器(たとえば、第1の分類器106A)によって検出されるDNN 104の誤った予測の場合に取られるある種の自動アクションに対応してもよい。たとえば、自律ビークルにおける受領された第1のデータ・ポイントについてDNN 104によって実行された誤分類または誤った予測の検出の場合、ユーザー端装置110または電子装置102は、自動的にブレーキを適用する、ステアリングを制御する、または自律ビークルの速度を有意に低下させるために前記出力情報を生成してもよい。
よって、DNN 104と直交する、またはDNN 104と独立した分類器を含みうる開示された電子装置102は、DNN 104の予測の正しさを決定するために、第2の信頼スコア(または信用スコア)を決定することができる。これは、誤分類または正しくない予測を適切に検出し、(出力情報としての)ある種のアクションを行なうことによって、DNN 104の予測または分類の正確さをさらに高め、誤予測に起因する経済的または物理的損失を回避することができる。制御は終了に進んでもよい。
フローチャート300は、302、304、306、308、および310のような離散的な動作として示されているが、ある種の実施形態では、開示された実施形態の本質を損なうことなく、具体的な実装に依存して、かかる離散的な動作がさらに追加の動作に分割されたり、より少ない動作に組み合わされたり、またはなくされたりしてもよい。
図4は、本開示に記載される少なくとも1つの実施形態による、深層ニューラル・ネットワーク(DNN)の畳み込み層に関連する特徴の第1の集合の選択のための例示的な方法のフローチャートである。図4は、図1、図2および図3の要素との関連で説明される。図4を参照すると、フローチャート400が示されている。フローチャート400に示される方法は、402から始まってもよく、図1の電子装置102または図2の例示的なシステム202など、任意の好適なシステム、装置またはデバイスによって実行されてもよい。たとえば、電子装置102または分類器106の集合のうちの一つまたは複数が、方法400に関連する動作のうちの一つまたは複数を実行してもよい。離散的なブロックで示されているが、方法400の一つまたは複数のブロックに関連するステップおよび動作は、具体的な実装に依存して、追加のブロックに分割されてもよく、より少ないブロックに組み合わされてもよく、またはなくされてもよい。
ブロック402では、特徴の第2の集合および該特徴の第2の集合に対応する重みの第2の集合は、事前トレーニングされたDNN 104から抽出されてもよい。一つまたは複数の実施形態では、プロセッサ204は、事前トレーニングされたDNN 104の畳み込み層から、特徴の第2の集合および該特徴の第2の集合に対応する重みの第2の集合を抽出するように構成されてもよい。たとえば、畳み込み層は、たとえば図3のステップ306において記載されたように、事前トレーニングされたDNN 104の出力層に先行しうる層に対応してもよい。たとえば、事前トレーニングされたDNN 104に入力された第1のデータ・ポイントは、DNN 104によって分類されるべき画像であってもよい。特徴の第2の集合は、画像内のオブジェクトの特徴または特性を含んでいてもよく、ここで、オブジェクトは、DNN 104の畳み込み層において識別または分類されてもよい。特徴の第2の集合に関連する畳み込み層は、DNN 104の出力層に先行する層であってもよいので、特徴の第2の集合は、第1のデータ・ポイント(たとえば、動物の画像)に関連する高レベル特徴(たとえば、第1のクラスが動物に対応する場合、頭、眼、尾、または脚)であってもよい。重みの第2の集合は、特徴の第2の集合の各対応する特徴に割り当てられた相対的な重要度またはスコアに対応してもよい。換言すれば、特徴の重みは、たとえば図3および図5において記載されるように、出力層におけるDNN 104によって実行された予測結果または分類の決定における、その特徴の相対的寄与であってもよい。いくつかの実施形態では、プロセッサ204は、たとえば図5に詳細に記載されるように、DNN 104の畳み込み層から、特徴の第2の集合および対応する重みの第2の集合を抽出するために、クラス活性化マッピング(CAM)のプロセスを使用するように構成されてもよい。
ブロック404において、特徴の第1の集合が、特徴の第2の集合から選択されてもよい。一つまたは複数の実施形態において、プロセッサ204は、特徴の第2の集合に対応する重みの第2の集合に基づいて、特徴の第2の集合から特徴の第1の集合を選択するように構成されてもよい。選択されるべき特徴の第1の集合は、DNN 104の畳み込み層から抽出された特徴の第2の集合の部分集合でありうる。いくつかの実施形態において、プロセッサ204は、重みの第2の集合のそれぞれの重みをあらかじめ定義された重み閾値と比較するように構成されてもよい。プロセッサ204は、重みの第2の集合とあらかじめ定義された重み閾値との比較に基づいて、特徴の第2の集合から特徴の第1の集合を選択することができる。たとえば、重みの第2の集合のそれぞれの重みの値は、0から1までの間にあってもよく、あらかじめ定義された重み閾値は0.6であってもよい。そのようなシナリオでは、プロセッサ204は、重みの第2の集合の各重みを0.6と比較し、特徴の第2の集合から、対応する重みが0.6より大きい特徴を(特徴の第1の集合として)選択することができる。(あらかじめ定義された重み閾値よりも大きい対応する重みを有する)そのような選択された特徴は、重要であるか、または第1のクラスの予測に、より関係している可能性がある。ある実施形態では、あらかじめ定義された重み閾値は、特定の予測されたクラスについてメモリ206に記憶されていてもよい。いくつかの実施形態では、電子装置102は、事前トレーニングされたDNN 104によって予測または分類された異なるクラス(たとえば、自動車、鳥、動物、飛行体)について、異なる重み閾値(すなわち、特徴の第1の集合の選択のためのもの)を定義してもよい。
他の実施形態では、プロセッサ204は、特徴の第2の集合に対応する重みの第2の集合に対する、あらかじめ定義されたソート基準の適用に基づいて、特徴の第2の集合をソートするように構成されてもよい。たとえば、プロセッサ204は、特徴の第2の集合に対応する重みの第2の集合の降順(あらかじめ定義されたソート基準)に、特徴の第2の集合をソートすることができる。言い換えると、ソートされた特徴の第2の集合においては、より大きな重みを有する(すなわち、重要度または関連性がより大きい)特徴が、より低い重みを有する特徴よりも前にソートされ、配置されうる。ある実施形態では、プロセッサ204は、ソートされた特徴の第2の集合から特徴の第1の集合を選択するように構成されてもよい。たとえば、プロセッサ204は、抽出された特徴の第2の集合から、上位N個の重みに対応する特徴(たとえば、上位10個の重みをもつ特徴、すなわち、重みによる上位10個の特徴)を、特徴の第1の集合として選択することができる。選択された特徴の第1の集合は、さらに、分類器(たとえば、分類器106の集合から選択された第1の分類器106A)によって、トレーニングされ、さらに、たとえば図3のステップ308および310において説明されたように、第2の信頼スコアおよびDNNによって実行された予測の正しさを示す出力情報を決定するために使用されてもよい。
特徴の第2の集合からの特徴の第1の集合(たとえば、上位10個の高レベル特徴)の選択は、DNN 104の、より多数の特徴集合に関連する高次元性を低減しうる。DNN 104内の巨大なデータセットおよび特徴の次元のこの低減は、第1のデータ・ポイントの予測された第1のクラスの検証のために使用されうる分類器の効率をさらに改善しうる。さらに、ある重み閾値を超える重みを有する特徴(すなわち、特徴の第1の集合)の選択、または特徴の第2の集合からの上位の重みをもつ特徴の選択は、選択された特徴の第1の集合が、第1のデータ・ポイントのDNN 104によって予測された第1のクラスの正確な検証のために関連性があり、かつ重要でありうることを保証しうる。いくつかの場合には、正しくない予測または誤分類の原因でありうる少数の特徴も、分類器106の集合をトレーニングし、リアルタイム動作におけるDNN 104の予測結果をさらに検証するための重要な特徴でありうる。分類器のトレーニングは、たとえば、図6および図7において、さらに詳細に説明される。
フローチャート400は、402および404のような離散的な動作として示されているが、ある種の実施形態では、開示された実施形態の本質を損なうことなく、具体的な実装に依存して、かかる離散的な動作がさらに追加の動作に分割されたり、より少ない動作に組み合わされたり、またはなくされたりしてもよい。
図4は、特徴の第2の集合および重みの第2の集合の抽出、および特徴の第1の集合の選択に関して説明されているが、本開示の範囲はそれに限定されない。図4の説明は、本開示の範囲から逸脱することなく、たとえば図6に記載されるような、第2の複数の特徴および第2の複数の重みの抽出ならびに第1の複数の特徴の選択を含みうる、分類器のトレーニング・プロセスに同様に適用可能でありうる。
図5は、本開示に記載された少なくとも1つの実施形態に従って構成された、深層ニューラル・ネットワーク(DNN)からの特徴の集合の抽出と、該特徴の集合に対応する重みの集合を示す例示的なシナリオを示している。図5は、図1、図2、図3、および図4からの要素との関連で説明される。図5を参照すると、試験データセット502が示されている。試験データセット502は、メモリ206、永続データ記憶208、またはデータベース108のいずれかまたは組み合わせに記憶されうる。試験データセット502は、第1のデータ・ポイント504を含んでいてもよい。図5において、画像データ(すなわち、猫画像)としての第1のデータ・ポイント504は、単に一例である。ただし、本開示の範囲から逸脱することなく、試験データセット502は、第1のデータ・ポイント504を含む複数のデータ・ポイントを含んでいてもよく、オーディオ・データ、テキスト・データ、または他のデジタル信号のような他のタイプのデータ・ポイントを含んでいてもよい。
図5には、DNN 104も示されている。図3および図4に記載されるように、プロセッサ204は、特徴の第1の集合および該特徴の第1の集合に対応する重みの第1の集合を抽出するためにDNN 104を制御するように構成されてもよい。いくつかの実施形態では、プロセッサ204は、たとえば図4で説明したように、特徴の第2の集合および対応する重みの第2の集合をDNN 104から抽出し、特徴の第2の集合から特徴の第1の集合を選択してもよい。簡潔のため、図5は、特徴の第1の集合および重みの第1の集合に関して説明されるが、本開示の範囲はそれに限定されない。図5の説明は、本開示の範囲から逸脱することなく、特徴の第2の集合および重みの第2の集合の抽出に同様に適用可能でありうる。
図5に示されるように、DNN 104は、第1の畳み込み層506A、第2の畳み込み層506B、…および第Nの畳み込み層506Nを含む複数の畳み込み層を含んでいてもよい。DNN 104は、DNN 104による分類のための第1の畳み込み層504Aへのデータ入力として、第1のデータ・ポイント504を受領するように構成されてもよい。DNN 104は、さらに、それぞれDNN 104内の第Nの畳み込み層506N(または活性化層)に続きうる、フラット化層508および出力層510(または全結合層または高密度層)を含んでいてもよい。
ある実施形態では、第Nの畳み込み層506Nは、DNN 104に入力されるデータ入力(第1のデータ・ポイント504など)のさまざまな特徴に関連する複数の活性化マップを含んでいてもよい。たとえば、活性化層(すなわち、第Nの畳み込み層506N)は、それぞれが寸法2×2を有する512の活性化マップを含んでいてもよく、各特徴は、それら512個の活性化マップのうちの特定の活性化マップに関連付けられてもよい。よって、寸法2×2を有する512の活性化マップのそれぞれは、4つの実数(すなわち、図3、図6、および図7で説明される特徴値の集合)を含んでいてもよい。その場合、fkが第kの活性化マップを表わすとすると、k∈{1,2,…,512}である。
DNN 104は、さらに、第Nの畳み込み層506Nとフラット化層508との間に平均プーリング層(図5には示さず)を含んでいてもよい。平均プーリング層は、第Nの畳み込み層506Nの出力に対してグローバル平均プーリング(Global Average Pooling、GAP)演算を実行するように構成されてもよい。GAP演算に基づいて、平均プーリング層は、各特徴の活性化マップを平均することによって、第Nの畳み込み層506Nからの出力のサイズを低減するように構成されてもよい。上記の例の場合、平均プーリング層は、特徴の活性化マップのサイズを「2,2,512」という次元から「1,1,512」に縮小してもよい。フラット化層508は、フラット化層508に入力される情報の変化なしに、フラット化層508への入力をフラット化するように構成されてもよい。一例では、フラット化層508は、図5に示されるように、「1,1,512」のような縮小次元ベクトル(すなわち、平均プーリング層からフラット化層508への入力)を、出力層510におけるノード数と同じサイズの特徴の一次元ベクトルに変換してもよい。たとえば、フラット化層508は、出力層510における512のノード数について512個の一次元値を提供してもよい。フラット化層508は、第Nの畳み込み層506Nにおける特徴(たとえば、f1、f2、…、fn)に対応しうる重みの集合(たとえば、W1、W2、…、Wn)を含んでいてもよい。
出力層510は、DNN 104に関連付けられた出力クラスについてそれぞれ1つのノードを含んでいてもよい。出力層510は、フラット化層508から、特徴の一次元ベクトルと、特徴に対応する重みの集合との入力を受け取ることができる。一例では、出力層510は、各特徴の一次元ベクトルおよびその特徴に対応する重みにSoftMax関数を適用し、入力された第1のデータ・ポイント504がDNN 104のあるクラスに関連する確率を決定することができる。SoftMax関数は、下記の式1で表わされる。
Figure 2021157792
ここで、
Pr():確率関数;
Yi:i番目のデータ・ポイントについてのクラス出力;
Xi:特徴の一次元ベクトルXの値;
βK:特徴に関連付けられた重み;
K:クラスに関連付けられたインデックス。
たとえば、DNN 104は、入力画像(たとえば、第1のデータ・ポイント504)から種々の生物を分類するために事前トレーニングされてもよい。DNN 104は、DNN 104が予測するように構成されうる生物の各クラス(たとえば、全部でn個のクラス)について、出力層510においてノードの集合(たとえば、C1、C2、…、Cn)を含んでいてもよい。DNN 104は、第1のデータ・ポイント504についての第1のクラス(たとえば猫)を、出力層510の対応するノードにおける第1のクラスについての確率に基づいて、予測することができる。たとえば、DNN 104は、猫ラベルのような第1のクラスに対応しうる出力層510のノードC2において、0.85の確率値(すなわち、第1の信頼スコア)を得てもよい。
図5では、第1のデータ・ポイント504(すなわち、猫画像)の予測される第1のクラス(たとえば、猫ラベル)についてのクラス活性化マッピング(CAM)のプロセスを示すブロック512も示されている。ある実施形態では、第1のデータ・ポイント504の予測された第1のクラスに基づいて、プロセッサ204は、第1のデータ・ポイント504の諸特徴に関連する(特徴の第1の集合としての)諸活性化マップを、第Nの畳み込み層506Nから抽出するように構成されてもよい。ある実施形態では、活性化マップのそれぞれについての特徴値の集合(すなわち、2×2次元)の抽出は、たとえば図3のステップ306で説明されたような、事前トレーニングされたDNN 104からの特徴の第1の集合の抽出に対応しうる。活性化マップのそれぞれについての特徴値の集合(すなわち、2×2次元)のそのような抽出は、クラス活性化マッピング(CAM)プロセスに対応しうる。CAMプロセスは、第1のデータ・ポイント504の第1のクラス(たとえば、猫クラス)への分類の原因(すなわち、正しくても正しくなくても、DNNの予測の原因となった特徴)を決定しうるので、CAMプロセスは、DNN 104についての解釈可能性分析(interpretability analysis)技法と称されることがある。CAMプロセスは、第1のデータ・ポイント504の第1のクラス(たとえば、猫クラス)への分類につながりうる、第1のデータ・ポイント504におけるピクセルの領域を示してもよい。CAMプロセスはまた、DNN 104による第1のデータ・ポイント504についての第1のクラスの予測に寄与しうる特徴およびこれらの特徴の重みをも決定してもよい。
たとえば、特徴の第1の集合は、第1特徴(f1)、第2特徴(f2)、…、および第Nの特徴(fn)を含んでいてもよく、各特徴は、入力された猫画像の予測された第1のクラス(たとえば、猫)に関連付けられてもよい。各特徴は、関連する活性化マップ(以下、2×2次元の特徴値の集合を有する特徴マップと称される)を有してもよい。特徴マップは、入力猫画像(すなわち、第1のデータ・ポイント504)内の対応する特徴に関連付けられうる、入力猫画像内の領域またはピクセルを示しうるヒートマップであってもよい。ブロック512は、たとえば猫画像内の猫の頭部分516Aに関連付けられてもよい第1特徴(f1)に関係した第1特徴マップ514Aを示している。ブロック512は、さらに、猫画像内の猫の尾部分516Bに関連付けられてもよい第2特徴(f2)に関係した第2特徴マップ514Bを示している。同様に、ブロック512は、たとえば猫画像内の猫の目、鼻、および/または口(まとめて顔部分516Nと称される)に関連付けられてもよい第Nの特徴(fn)に関係した第Nの特徴マップ514Nを示している。
図5において、ブロック512は、さらに、第1の重み(W1)、第2の重み(W2)、…、および第Nの重み(Wn)のような重みの第1の集合を示している。プロセッサ204は、フラット化層508から重みの第1の集合を抽出するように構成されてもよい。重みの第1の集合は、抽出された特徴の第1の集合(すなわち、活性化マップ)に対応してもよい。換言すれば、各重み(たとえば、i番目の重みwi)は、第Nの畳み込み層506N(すなわち、DNNのフラット化層508および/または出力層510に先行しうる層)内の特徴(たとえば、i番目の特徴fi)に対応してもよい。ブロック512に示されるように、プロセッサ204は、特徴の第1の集合の特徴値の抽出された集合と(第1の集合の特徴に対応する)重みの第1の集合の重み付けされた総和を実行して、第1のデータ・ポイント504の予測された第1のクラスについてクラス活性化マップ518を得るように構成されてもよい。クラス活性化マップ518は、猫画像内の猫のさまざまな高レベル特徴(および関連付けられた部分)に対応しうる猫画像内の領域を示しうるヒートマップであってもよい。換言すれば、クラス活性化マップ518は、猫画像内の猫の位置を識別し、位置特定することができる。よって、プロセッサ204は、高レベル特徴の第1の集合として、第1特徴(f1)、第2特徴(f2)、…、および第Nの特徴(fn)のそれぞれの特徴値の集合(2×2次元)を抽出し、DNN 104から、対応する、重み値の第1の集合を抽出するように構成されてもよい。よって、開示された電子装置102は、クラス活性化マッピング(CAM)プロセス(または解釈可能性分析と呼ばれる)をDNN 104上で実行して、第1のデータ・ポイント504についてDNN 104によって実行された予測のために使用された、各高レベル特徴(すなわち、特徴の第1の集合の各特徴)についての特徴値の集合および対応する重みの集合を抽出することができる。クラス活性化マッピング(CAM)プロセス(または解釈可能性分析と呼ばれる)は、DNN 104において正しい予測(すなわち、第1のクラス)または正しくない予測(すなわち、他のクラス)のいずれかについての原因となったすべての特徴(すなわち、上位の諸特徴)をDNN 104から抽出することができる。そのような抽出された特徴(たとえば、特徴値および対応する重み)、および正しい/正しくない予測とのそれらの相関に基づく分類器(すなわち、DNN 104に直交する)のトレーニングは、トレーニングされた分類器が、リアルタイム動作(たとえば、自律ビークルにおける自動オブジェクト検出)中に、DNN 104の予測の正しさを検証する、またはDNN 104の潜在的な誤予測にフラグを付けることを許容しうる。抽出された特徴および重みに基づく、特定のクラスのための分類器のトレーニングは、たとえば図6および図7においてさらに記述される。
プロセッサ204は、たとえば図3および図7に詳細に説明されるように、DNN 104の第1のクラスの予測の正しさを検証するまたは示すために、抽出された特徴の第1の集合(または各特徴の特徴値の集合)および重みの第1の集合を使用して、第2の信頼スコアを決定し、出力情報を決定するようにさらに構成されてもよい。
図6は、本開示に記載される少なくとも1つの実施形態による、深層ニューラル・ネットワーク(DNN)の予測結果の検証のための分類器のトレーニングのための例示的方法のフローチャートである。図6は、図1、図2、図3、図4、および図5の要素との関連で説明される。図6を参照すると、フローチャート600が示されている。フローチャート600に示される方法は、602から始まってもよく、図1の例示的な電子装置102または図2の例示的なシステム202など、任意の好適なシステム、装置またはデバイスによって実行されてもよい。たとえば、電子装置102または分類器106の集合からの分類器(たとえば、第1の分類器106A)のうちの一つまたは複数が、方法600に関連する動作の一つまたは複数を実行してもよい。離散的なブロックで示されているが、方法600の一つまたは複数のブロックに関連するステップおよび動作は、具体的な実装に依存して、追加のブロックに分割されてもよく、より少ないブロックに組み合わされてもよく、またはなくされてもよい。
ブロック602において、試験データ・ポイントが選択されてもよい。一つまたは複数の実施形態において、プロセッサ204は、リアルタイム・アプリケーションに関連する複数の試験データ・ポイントを含む試験データセットから試験データ・ポイントを選択するように構成されてもよい。試験データ・ポイント(たとえば、猫画像)は、DNN 104が事前トレーニングされうる第一のクラス(すなわち、猫)に関連付けられてもよい。試験データセットは、メモリ206、永続データ記憶208、またはデータベース108のいずれかまたは組み合わせに記憶されてもよい。プロセッサ204は、メモリ206、永続データ記憶208、またはデータベース108のうちの1つから試験データ・ポイントを受領してもよい。
たとえば、試験データ・ポイントは、画像、オーディオ/発話サンプル、テキストキャラクタ、ソフトウェア命令、または電気生体信号、動きデータ、または奥行きデータなどだがそれに限られない他の形のデジタル信号を含みうるが、これらに限定されない。リアルタイム・アプリケーションの例は、画像認識アプリケーション、画像分類アプリケーション、発話認識アプリケーション、テキスト認識アプリケーション、マルウェア検出アプリケーション、自律車両アプリケーション、異常検出アプリケーション、機械翻訳アプリケーション、またはデジタル信号/データからのパターン認識アプリケーションを含みうるが、これらに限定されない。
ある実施形態では、試験データセットは、第1のクラスに関連付けられた試験データ・ポイントの第1の集合と、第1のクラス以外の一つまたは複数のクラスに関連付けられた試験データ・ポイントの第2の集合とを含んでいてもよい。試験データセット内の各試験データ・ポイントは、関連付けられている既知の事前割り当てされているクラス(試験データ・ポイントに関連する確固とした事実)を有してもよい。プロセッサ204は、分類器106の集合からの分類器(たとえば、第1のクラスに関連付けられた第1の分類器106A)をトレーニングするために、第1のクラス(たとえば、猫)に関連付けられた試験データ・ポイントの第1の集合から試験データ・ポイント(たとえば、猫画像)を選択してもよい。ある実施形態では、プロセッサ204は、DNN 104に関連する各クラスについてトレーニングされるよう、分類器106の集合を制御することができる。
ブロック604において、第1の複数の特徴および該第1の複数の特徴に対応する第1の複数の重みが、試験データ・ポイントの第1のクラスについて抽出されてもよい。一つまたは複数の実施形態において、プロセッサ204は、事前トレーニングされたDNN 104から、試験データ・ポイントの第1のクラスについて、第1の複数の特徴および該第1の複数の特徴に対応する第1の複数の重みを抽出するようにDNN 104を制御するように構成されてもよい。プロセッサ204は、たとえば図3および図5において特徴の第1の集合および重みの第1の集合に関して説明したように、第1の複数の特徴および第1の複数の重みを、たとえばDNN 104の出力層の前にあってもよいDNN 104の畳み込み層から抽出することができる。さらに、第1の複数の特徴の抽出に基づいて、プロセッサ204は、たとえば図5に記載されるように、第1の複数の特徴の各特徴について特徴値の集合を取得し、その特徴に対応する重みを第1の複数の重みから取得することができる。たとえば、猫画像としての試験データ・ポイントについて、プロセッサ204は、前記複数の高レベル特徴を、猫の頭、猫の尾、または猫の顔として抽出することができる。各特徴について、プロセッサ204は、4つの実数値(特徴値の集合として)の2×2特徴行列(または活性化マップ)と、別の実数としての対応する重みとを得ることができる。DNN 104からの第1の複数の特徴および第1の複数の重みの抽出は、たとえば特徴の第1の集合に関して図5において詳細に説明されている(すなわち、たとえば、図3において説明されるように、DNN 104の予測の正しさを決定するためにさらに使用される)。
いくつかの実施形態では、プロセッサ204は、DNN 104の畳み込み層から、第2の複数の特徴および該第2の複数の特徴に対応する第2の複数の重みを抽出するように構成されてもよい。さらに、プロセッサ204は、第2の複数の重みに対するあらかじめ定義された選択基準の適用に基づいて、抽出された特徴の第2の集合から第1の複数の特徴を選択するように構成されてもよい。そのようなシナリオでは、第1の複数の特徴の抽出は、第2の複数の特徴からの第1の複数の特徴の選択に対応しうる。あらかじめ定義された選択基準は、たとえば図4のステップ404において説明したように、上位N個の特徴を選択すること、または、あらかじめ定義された重み閾値よりも大きな対応する重みを有するすべての特徴を選択することであってもよい。
ブロック606では、分類器(たとえば、第1の分類器106A)は、第1のクラス(たとえば、猫)についてトレーニングされてもよい。一つまたは複数の実施形態において、プロセッサ204は、たとえば図3および図5のステップ306において説明されたように、DNN 104から抽出された第1の複数の特徴、および、該第1の複数の特徴に対応する第1の複数の重みに基づいて、第1のクラス(たとえば、猫)について第1の分類器106Aをトレーニングするように構成されてもよい。一例では、第1の分類器106Aは、決定木分類器、サポートベクトルマシン(SVM)分類器、単純ベイズ分類器、ロジスティック回帰分類器、またはk近傍分類器のうちの1つであってもよい。ある実施形態では、分類器106の集合の各分類器は、1つのタイプの分類器、たとえば、決定木分類器を含んでいてもよい。別の実施形態では、分類器106の集合のそれぞれは、異なるタイプの分類器を含んでいてもよい。
ある実施形態では、第1の分類器106Aをトレーニングするために、プロセッサ204は、第1の複数の特徴からの一つまたは複数の第1特徴を、選択された試験データ・ポイントについての正しい予測と相関させるように構成されてもよい。さらに、プロセッサ204は、第1の複数の特徴からの一つまたは複数の第2特徴を、選択された試験データ・ポイントについての正しくない予測と相関させるようにさらに構成されてもよい。換言すれば、第1の分類器106Aをトレーニングするために、プロセッサ204は、第1の分類器106Aが、一つまたは複数の第1特徴と選択された試験データ・ポイント(たとえば、猫画像)についての正しい予測(たとえば、猫クラス・ラベル)との相関を確立しうるように、第1の分類器106A内の条件を設定してもよい。さらに、第1の分類器106Aは、選択された試験データ・ポイント(たとえば、猫画像)について、一つまたは複数の第2特徴と正しくない予測(たとえば、犬クラス・ラベル)との別の相関を確立または学習してもよい。第1の分類器106Aのトレーニングについて、猫画像の2つの例示的な試験データ・ポイントについて2つの例示的な特徴(すなわち、一つまたは複数の第1特徴および一つまたは複数の第2特徴)に対応する特徴値および重みの集合の例が、以下のように表1に示されている。
Figure 2021157792
表1で与えられているデータは、単に実験的データとみなすことができ、本開示を限定するものと解釈されないことに注意しておくべきである。
表1に示されるように、第1の試験データ・ポイントは、クラス「猫」の画像1に対応してもよく、第2の試験データ・ポイントは、同じクラス「猫」の画像2に対応してもよい。たとえば、第1のクラス(すなわち、表1の列2のような「猫」)についての第1の分類器106Aのトレーニングのために、DNN 104は、正しい分類結果を「猫」(すなわち、表1の列5に示される予測された第1のクラス)として出力または予測してもよく、また、画像2については正しくない分類結果、たとえば犬(すなわち、表1の列5に示される予測された第1のクラス)として出力または予測してもよい。抽出された特徴の第1の集合は、第1特徴、第2特徴、…、および第Nの特徴を含んでいてもよい。表1の列3〜4に示されるように、第1特徴(たとえば、猫の頭部分)の特徴値の集合は、0.1、0.03、1.2、および2.3のような実数と、対応する重み0.6とを含んでいてもよい。重みの比較的高い値(すなわち、0.6)、第1特徴についてのそれらの特徴値の1つ(たとえば、2.3)、およびDNN 104の予測されたクラス(すなわち、表1の列5)に基づいて、プロセッサ204は、第1特徴(および対応する特徴値および重み)を、そのクラス(たとえば、猫)についての第1の分類器106Aのトレーニングのための正しい予測結果と相関させてもよい。換言すれば、「猫」の試験データ・ポイントについて、抽出された第1特徴(たとえば、頭部分)は、DNN 104によって、「猫」として正しいクラスを予測するために使用されうる。よって、第1の分類器106Aをトレーニングするために、プロセッサ204は、第1特徴(および、対応する特徴値および重みの集合)を正しい予測と相関させてもよい。これは、第1の分類器106Aが、(「猫」としての)その試験データ・ポイントについて、抽出された第1特徴(すなわち、頭部分)が、DNN 104がその試験データ・ポイントを「猫」として正しく予測するのを助けうることを知ることができることを示しうる。よって、第1特徴(または一つまたは複数の他の第1特徴)は、分類器によって学習されるべきDNN 104の正しい特徴パターンでありうる。そのような正しい特徴パターンを使用してDNN 104が正しく予測するからである。よって、第1特徴と試験データ・ポイントについての正しい予測との間の相関の学習またはトレーニングに基づいて、トレーニングされた分類器(すなわち、第1の分類器106A)は、図3のステップ308および310に記載されるように、予測の正しさを決定して、DNN 104を検証することができる。
同様に、表1の列4に示されるように、第2特徴(たとえば、猫の尾)についての特徴値の集合は、0.3、0.07、1.5、および3.6のような実数と、重み0.7とを含んでいてもよい。重みの比較的高い値(すなわち、0.7)、第2特徴の特徴値のうちの1つ(たとえば、3.6)、およびDNN 104の予測されたクラス(すなわち、表1の列5)に基づいて、プロセッサ204は、第2特徴(および、対応する特徴値および重み)を、そのクラス(すなわち、猫)についての第1の分類器106Aのトレーニングについての正しくない予測結果と相関させてもよい。換言すれば、「猫」の試験データ・ポイントについて、抽出された第2特徴(たとえば、尾部分)は、DNN 104によって使用されると、「犬」として、正しくないクラスを予測しうる(表1の列5に示されるように)。よって、第1の分類器106Aをトレーニングするために、プロセッサ204は、第2特徴(および、特徴値および重みの対応する集合)を正しくない予測と相関させることができる。これは、第1分類器106Aが、(「猫」としての)試験データ・ポイントについて、抽出された第2特徴(すなわち、尾部分)が、正しくないまたは誤った特徴でありえ、そのためDNN 104は、(「猫」としての)その試験データ・ポイントを「犬」として、正しくないクラスに誤って予測する可能性があることを学習しうることを示してもよい。よって、第2特徴と試験データ・ポイントについての正しくない予測との間の正しくない相関の学習またはトレーニングに基づいて、トレーニングされた分類器(すなわち、第1の分類器106A)は、図3のステップ308および310に記載されるように、予測の正しさを決定し、DNN 104を検証することができる。正しくない予測およびDNN 104の正しくない予測の原因となる特徴のそのような学習またはトレーニングは、分類器(たとえば、第1の分類器106A)によるDNN 104の学習誤りパターンに対応しうる。よって、分類器は、より高い正確さでDNN 104の予測の正しさを効果的に決定するよう、DNN 104の正しい予測(すなわち、正しいパターン)につながる高レベル特徴の相関、およびDNN 104の正しくない予測につながる高レベル特徴の相関に基づいてトレーニングされうる。
いくつかの実施形態では、第1の分類器106Aは、たとえば、内部ノードの集合およびリーフノードの集合を含みうる決定木分類器に対応してもよい。内部ノードの集合の各ノードは、第1の複数の特徴のうちのある特徴およびその特徴の対応する重みに関連する条件を表わしうる。リーフノードの集合の各ノードは、決定木分類器の予測出力を表わしうる。決定木分類器のトレーニングの完了後は、決定木分類器の予測出力は、DNN 104の入力データ・ポイントの予測されたクラスに関連する第2の信頼スコアに対応しうる。プロセッサ204は、たとえば、図7に記載されるように、決定木分類器を生成し、トレーニングするために、決定木分類器の内部ノードの集合について、第1の複数の特徴の各特徴の特徴値の集合および第1の複数の重みに関連する条件を決定することができる。決定木分類器をトレーニングするためにプロセッサ204によって使用されうる技術の例は、逐次反復式二分器3(Iterative Dichotomiser 3、ID3)アルゴリズム、C4.5アルゴリズム、分類および回帰木(classification and regression tree、CART)アルゴリズム、カイ二乗自動相互作用検出(Chi-square automatic interaction detection、CHAID)アルゴリズム、多変量適応回帰スプライン(Multi-variate adaptive regressive splines、MARS)アルゴリズム、または条件付推論木(Conditional inference tree)アルゴリズムを含みうる、これらに限定されない。決定木分類器の例および決定木分類器のトレーニングのために設定される条件は、たとえば図7において詳細に説明される。
ブロック608では、第1の分類器106Aのトレーニングのあらかじめ定義された数のエポックが完了しているかどうかを判定するチェックが実行される。一つまたは複数の実施形態では、プロセッサ204がこのチェックを実行ように構成されてもよい。一例では、エポックのあらかじめ定義された数は、30または50の一方であってもよい。トレーニングのあらかじめ定義された数のエポックが完了している場合、制御はブロック612に進んでもよい。そうでない場合、制御はブロック610に進んでもよい。
ブロック610では、次のデータ・ポイントが、選択された試験データ・ポイントとして、試験データセットから再選択されうる。一つまたは複数の実施形態では、第1のクラスについての試験データセット内のすべての試験データ・ポイントを用いて分類器(たとえば、第1の分類器106A)をさらにトレーニングするために、プロセッサ204が、次のデータ・ポイントを、新たに選択された試験データ・ポイントとして、試験データセットから再選択してもよい。制御は、ブロック604に進んで、新たに選択された試験データ・ポイントに基づいて、図6のステップ604および606を再度繰り返すことができる。
ブロック612では、トレーニングされた分類器(たとえば、第1の分類器106A)が、事前トレーニングされたDNN 104に関連付けられた第1のクラスについて得られてもよい。一つまたは複数の実施形態において、プロセッサ204は、あらかじめ定義された数のエポックについての第1の分類器106Aのトレーニングに基づいて、第1のクラス(たとえば、猫)について、トレーニングされた第1の分類器106Aを得るように構成されてもよい。制御は終了に進んでもよい。
フローチャート600は、602、604、606、608、610、および612などの離散的な動作として示されているが。ある種の実施形態では、開示された実施形態の本質を損なうことなく、具体的な実装に依存して、かかる離散的な動作がさらに追加の動作に分割されたり、より少ない動作に組み合わされたり、またはなくされたりしてもよい。
いくつかの実施形態では、開示された電子装置102は、フローチャート600に記載された前述の動作に基づいて、試験データセットを使用して、DNN 104に関連する対応するクラスについて分類器106の集合をトレーニングすることができる。ひとたびトレーニングされると、分類器106の集合は、DNN 104の予測結果または予測の正しさを検証するために使用されうる。たとえば、プロセッサ204は、DNN 104の第1のクラス(たとえば、「猫」)の予測された結果を検証するために、第1のクラス(たとえば、「猫」)についてトレーニングされた第1の分類器106Aを使用してもよい。さらに、プロセッサ204は、DNN 104の第2のクラス(たとえば、「飛行機」)の予測された結果を検証するために、第2のクラス(たとえば、「飛行機」)についてトレーニングされた第2の分類器106Bを使用してもよい。対応する分類器(すなわち、DNN 104のリアルタイム動作中に分類器106の集合から選択されたもの)によるDNN 104の予測結果の検証は、DNN 104および/またはそのパラメータに依存しなくてもよい直交する検証技法であってもよく、それにより、DNN 104に対して外的であってもよい。そのような直交検証技法は、ある種の従来の解決策と比較して、向上した検証正確さを提供しうる。
図7は、本開示に記載される少なくとも1つの実施形態に従って構成された、深層ニューラル・ネットワーク(DNN)の予測結果の検証のための例示的な決定木分類器を示す。図7は、図1、図2、図3、図4、図5、および図6の要素との関連で説明される。図7を参照すると、決定木分類器700が示されている。決定木分類器700は、メモリ206、永続データ記憶208、またはデータベース108のいずれかまたは組み合わせに記憶されてもよい。決定木分類器700は、ルートノード702、第1の内部ノード704A、第2の内部ノード704B、および第3の内部ノード704Cを含む、内部ノードの集合を含んでいてもよい。決定木分類器700は、第1のリーフノード706A、第2のリーフノード706B、第3のリーフノード706C、および第4のリーフノード706Dを含むリーフノードの集合をさらに含んでいてもよい。さらに、図7には、第1の画像708A、第2の画像708B、第3の画像708C、および第4の画像708Dを含む画像の例示的な集合が示されている。
一例では、プロセッサ204は、入力画像または入力データ・ポイントについて、事前トレーニングされたDNN 104によって予測されたクラスを検証するために、トレーニングされた決定木分類器700を(たとえば、第1の分類器106Aとして)使用してもよい。たとえば、決定木分類器700は、DNN 104への入力画像に関連するクラス「猫」を検証するために事前トレーニングされてもよい。言い換えると、プロセッサ204は、DNN 104の予測結果がクラス「猫」である場合、DNN 104の予測結果を検証または信用するために、決定木分類器700を使用するように構成されてもよい。図7に示されるように、画像708A〜708Dの集合は、リーフノード706A〜706Dの集合からのそれぞれのリーフノードに関連付けられてもよい。画像708A〜708Dの集合は、予測されたクラスについてのDNN 104の入力画像の例であってもよい。たとえば、第1の画像708Aは、決定木分類器700によって「正しい」分類として示されうる猫画像であってもよい。
ある実施形態では、ルートノード702および残りのノード(すなわち、ノード704A〜704C)を含む内部ノードの集合の各ノードは、第1のデータ・ポイント(たとえば、DNN 104の入力画像)に関連する判断を決定するための条件を表わしてもよい。ある実施形態では、条件は、第1の複数の特徴の各特徴の特徴値の集合(たとえば、4つの値)からのある特徴値、または、たとえば図5および図6に記載されるような、第1の複数の特徴に対応する第1の複数の重みからのある重みに関連付けられてもよい。第1の複数の特徴(高レベル特徴として)および対応する特徴の第1の集合は、たとえば図5および図6に記載されるように、DNN 104から、クラス活性化マッピング(CAM)プロセス(または解釈可能性分析と称される)に基づいて抽出されてもよい。いくつかの実施形態では、特徴および対応する重みは、勾配ベースのCAMプロセス(すなわち、grad-CAM)に基づいて抽出されてもよい。
たとえば、ルートノード702は、208番目の特徴に対応する重みについての条件、たとえば「W208>0.894」(すなわち、208番目の特徴の重みの値が0.894より大きい)を表わしてもよい。ルートノード702は、最も重要な特徴(たとえば、DNN 104から抽出された上位の諸特徴からの208番目の特徴)についての条件を設定されうる最も重要なノードであってもよい。さらに、第1の内部ノード704Aは、305番目の特徴の4つの値(すなわち、特徴値の集合)のうちの第1の値についての条件、たとえば「V305_1<0.35」表わしてもよく、第2の内部ノード704Bは、409番目の特徴の4つの値(すなわち、特徴値の集合)の第3の値についての条件、たとえば「V409_3≦−0.44」を表わしてもよい、などとなる。ルートノード702、第1の内部ノード704A、および第2の内部ノード704Bと同様に、DNN 104の正しさをさらに検証するために、トレーニングされた決定木分類器700によってチェックされる複数の条件を有するN個の内部ノードが存在してもよい(たとえば、図7では少なくとも第3の内部ノード704Cによって示される)。
決定木分類器700のトレーニング(図6参照)の間、プロセッサ204は、リーフノード706A〜706Dの集合の各ノードに確率値を割り当てることができる。決定木分類器700のあるリーフノードによって表わされる確率値は、第1のデータ・ポイント(たとえば、入力画像)について事前トレーニングされたDNN 104によって予測されたクラスに関連付けられた第2の信頼スコアであってもよい。換言すれば、あるリーフノードにおける確率値または第2の信頼スコアは、たとえば図3のステップ308で説明されたように、DNN 104の予測されたクラスを検証するために使用されてもよい。ある実施形態では、確率値は、決定木分類器700の直交信頼スコアであってもよい。いくつかの実施形態では、第2の信頼スコアは、確率値と閾値(たとえば、0.5)との比較に基づいて、0(「正しくない」予測を示す)または1(「正しい」予測を示す)のいずれかの離散値であってもよい。たとえば、0.5未満の確率値についての第2の信頼スコアは「0」として決定され、0.5を超える確率についての第2の信頼スコアは「1」として決定されてもよい。他の実施形態では、第2の信頼スコアは、リーフノードの確率値と同じであってもよい。
たとえば、図7に示されるように、決定木分類器700(猫としてのクラスのためにトレーニングされた)について、第1のリーフノード706Aは、猫の第1の画像708Aによって明らかなように、「猫」の画像クラスに関連付けられた「正しい」予測(たとえば、第2の信頼スコアについての「1」の値)を表わしてもよい。一方、第2のリーフノード706Bは、CAMプロセス(すなわち、解釈可能性分析)に基づいてDNN 104から抽出される特徴の409番目の特徴についての第2の内部ノード704B内の設定された条件に基づいて、「猫」の画像クラスについての「正しくない」予測(たとえば、第2の信頼スコアについての「0」の値)を表わしてもよい。正しくない予測は、犬の第2の画像708Bによって明らかでありうる。図7はさらに、「猫」の画像クラスについて、第3の内部ノード704Bにおける設定された条件に基づき、第3のリーフノード706Cが「正しい」予測を表わしてもよく、第4のリーフノード706Dが「正しくない」予測を表わしてもよいことを示している。これは、図7に示されるように、猫の第3の画像708Cおよび鳥の第4の画像708Dによって明らかでありうる。
図7に示される決定木分類器700は、分類器106の集合の例示的な事前トレーニングされた分類器であってもよいが、本開示の範囲は、それに限定されなくてもよい。分類器106の集合は、サポートベクトルマシン(SVM)分類器、単純ベイズ分類器、ロジスティック回帰分類器、またはk近傍分類器を含むがこれらに限定されない他の分類器を含んでいてもよい。よって、決定木分類器700(すなわち、分類器106の集合のうちの1つ)は、特徴(すなわち、特徴値の集合)および対応する重み(すなわち、CAMプロセスに基づいてDNN 104から抽出される)と、正しいまたは正しくない予測(すなわち、リーフノード706A〜706Dの集合によって示される)との間に確立された相関に基づいて(ルートノード702および内部ノード704A〜704Cの集合のそれぞれにおける)判断条件に関して、開示される電子装置102によってトレーニングされてもよい。そのようなトレーニングされた分類器(たとえば、DNN 104に直交する決定木分類器700)は、DNN 104の正しさをさらに検証し、さまざまなリアルタイム・アプリケーションにおいてDNN 104の予測正確さをさらに高めるために、DNN 104のすべての正しい予測および関連する正しい特徴(すなわち、成功パターン)および/または正しくない予測および関連する間違った特徴(すなわち、誤りパターン)を記憶または学習することができる。
本開示のための例示的なデータセットおよび実験的なセットアップは、以下のように表2において提示される。
Figure 2021157792
表2で与えられているデータは、単に実験的データとみなすことができ、本開示を限定するものと解釈されないことに注意しておくべきである。
事前トレーニングされた分類器によるDNNの予測結果の検証の例示的な実験データが、以下のように表3に示される。
Figure 2021157792
表3から、「犬」クラスの55個の試験画像の第1の集合の全体のうち、51個の画像が、トレーニングされた分類器(すなわち、「犬」クラスのためにトレーニングされたもの)によって、「犬」クラスに属するものとして正しく検証されることができ、残りの4個の画像が「犬」クラスに属さないものとして誤って検証されうることがわかる。よって、表2〜表3においてトレーニングされた分類器について表現されている実験データの精度(precision)は93%でありうる。さらに、他のクラスの55個の試験画像の第2の集合のそれぞれについて、同じ分類器(すなわち、犬クラスでトレーニングされたもの)が、画像が「犬」クラスに誤って分類されうることを決定しうる。言い換えると、分類器は、第2の集合の試験画像のいずれもが「犬」クラスに属するものではないと判断しうる。よって、再現率(recall)は100%でありうる。
本開示のさまざまな実施形態は、実行されることに応答して、システム(例示的システム202など)に動作を実行させる命令を記憶するように構成された一つまたは複数の非一時的なコンピュータ読み取り可能記憶媒体を提供することができる。動作は、リアルタイム・アプリケーションに関連する第1のデータ・ポイントを受領することを含みうる。動作はさらに、リアルタイム・アプリケーションの分類タスクのために事前トレーニングされた深層ニューラル・ネットワーク(DNN)によって、受領された第1のデータ・ポイントに関連する第1のクラスを予測することを含んでいてもよい。動作は、DNNから、第1のデータ・ポイントの予測された第1のクラスについて、特徴の第1の集合と、該特徴の第1の集合に対応する重みの第1の集合とを抽出することをさらに含んでいてもよい。抽出された特徴の第1の集合は、DNNの畳み込み層に関連しうる。動作は、さらに、予測された第1のクラスに関連する事前トレーニングされた分類器によって、抽出された特徴の第1の集合および対応する重みの第1の集合に基づいて、第1のデータ・ポイントについての予測された第1のクラスについての信頼スコアを決定することを含んでいてもよい。動作は、さらに、決定された信頼スコアに基づいて、第1のデータ・ポイントについての第1のクラスの予測の正しさを示す出力情報を生成することを含んでいてもよい。
本開示において使用されるところでは、用語「モジュール」または「コンポーネント」は、該モジュールまたはコンポーネントのアクションを実行するように構成された特定のハードウェア実装、および/または計算システムの汎用ハードウェア(たとえば、コンピュータ読み取り可能媒体、処理装置など)に記憶および/または実行されうるソフトウェアオブジェクトまたはソフトウェアルーチンを指しうる。いくつかの実装では、本開示に記載される種々のコンポーネント、モジュール、エンジン、およびサービスは、計算システム上で(たとえば、別個のスレッドとして)実行されるオブジェクトまたはプロセスとして実装されてもよい。本開示に記載されるシステムおよび方法のいくつかは、一般に、(汎用ハードウェアに記憶および/または実行される)ソフトウェアで実装されるものとして記載されるが、特定のハードウェア実施形態またはソフトウェアと特定のハードウェア実施形態との組み合わせも可能であり、考えられている。この説明において、「計算エンティティ」は、本開示において前に定義された任意の計算システム、または計算システム上で動作する任意のモジュールまたは小モジュールの組み合わせであってもよい。
本開示において、特に添付の特許請求の範囲(たとえば、添付の特許請求の範囲の本文)において使用される用語は、一般に「オープン」な用語として意図されている(たとえば、「含む」という用語は、「…を含むが、それに限定されない」と解釈されるべきであり、「有する」という用語は、「少なくとも…を有する」と解釈されるべきであり、「包含する」という用語は、「…を包含するが、それに限定されない」と解釈されるべきである、など)。
さらに、導入されるクレーム記載の特定の数が意図されている場合、そのような意図はクレームに明示的に記載され、そのような記載がない場合、そのような意図は存在しない。たとえば、理解の助けとして、以下の添付の特許請求の範囲は、クレーム記載を導入するために「少なくとも1つの」および「一つまたは複数の」という導入句の使用を含むことがあるが、そのような句の使用は、不定冠詞「a」または「an」によるクレーム記載の導入が、そのように導入されたクレーム記載を含む特定のクレームを、そのような記載を一つのみ含む実施形態に限定することを含意していると解釈されるべきではない。たとえ同じクレームが導入句「一つまたは複数の」または「少なくとも1つの」および「a」または「an」のような不定冠詞を含む場合でもそうである(たとえば、「a」および/または「an」は、「少なくとも1つの」または「一つまたは複数の」を意味すると解釈されるべきである)。同じことは、クレーム記載を導入するために使用される定冠詞の使用についてもいえる。
さらに、導入されたクレーム記載の特定の数が明示的に記載されている場合であっても、当業者は、そのような記載が、少なくともその記載された数を意味するものと解釈されるべきであることを認識するであろう(たとえば、他の修飾語を伴わない「2つの記載」というだけの記載は、少なくとも2つの記載または2つ以上の記載を意味する)。さらに、「A、B、C等の少なくとも一つ」または「A、B、C等の一つまたは複数」と類似の慣用表現が用いられている場合、一般に、そのような構文は、Aのみ、Bのみ、Cのみ、AとB、AとC、BとC、またはAとBとC等を含むことが意図される。
さらに、明細書、特許請求の範囲、または図面のいずれかを問わず、2つ以上の代替的な用語を提示する離接的な語句は、それらの用語のうちの一つ、それらの用語のいずれか、または両方の用語を含む可能性を考えていると理解されるべきである。たとえば、句「AまたはB」は、「A」または「B」または「AおよびB」の可能性を含むと理解されるべきである。
本開示に記載されたすべての例および条件付き言辞は、本開示および当該技術分野を進歩させるために発明者によって寄与される概念を理解する際に読者を助けるための教育的目的のために意図されており、そのように具体的に記載された例および条件に限定されることなく解釈されるべきである。本開示の実施形態を詳細に説明したが、本開示の精神および範囲から逸脱することなく、それにさまざまな変化、置換、および変更を行なうことができる。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
リアルタイム・アプリケーションに関連する第1のデータ・ポイントを受領する段階と;
前記リアルタイム・アプリケーションの分類タスクのために事前トレーニングされた深層ニューラル・ネットワーク(DNN)によって、受領した第1のデータ・ポイントに関連する第1のクラスを予測する段階と;
前記DNNから、前記第1のデータ・ポイントの予測された第1のクラスについて、特徴の第1の集合および該特徴の第1の集合に対応する重みの第1の集合を抽出する段階であって、抽出された前記第1の集合の特徴は、前記DNNの畳み込み層に関連する、段階と;
予測された第1のクラスに関連する事前トレーニングされた分類器によって、抽出された特徴の第1の集合および対応する重みの第1の集合に基づいて、第1のデータ・ポイントについての予測された第1のクラスについての信頼スコアを決定する段階と;
決定された信頼スコアに基づいて、第1のデータ・ポイントについての第1のクラスの予測の正しさを示す出力情報を生成する段階とを含む、
方法。
(付記2)
前記特徴の第1の集合の抽出は、さらに:
前記DNNから、特徴の第2の集合および該特徴の第2の集合に対応する重みの第2の集合を抽出する段階であって、抽出された特徴の第2の集合は、前記DNNの前記畳み込み層に関連する、段階と;
前記特徴の第2の集合から、前記重みの第2の集合に基づいて、前記特徴の第1の集合を選択する段階とを含む、
付記1に記載の方法。
(付記3)
前記特徴の第2の集合からの前記特徴の第1の集合の選択は、さらに:
前記特徴の第2の集合に対応する前記重みの第2の集合のそれぞれの重みを、所定の重み閾値を比較する段階と;
前記比較に基づいて前記特徴の第2の集合から前記特徴の第1の集合を選択する段階とを含む、
付記2に記載の方法。
(付記4)
前記特徴の第2の集合からの前記特徴の第1の集合の選択は、さらに:
前記特徴の第2の集合に対応する前記重みの第2の集合に対する所定のソート基準の適用に基づいて、前記第2の集合の特徴をソートする段階と;
ソートされた前記特徴の第2の集合から前記特徴の第1の集合を選択する段階とを含む、
付記2に記載の方法。
(付記5)
前記畳み込み層は、前記DNNの出力層に先行する層に対応する、付記1に記載の方法。
(付記6)
決定された信頼スコアを所定のスコア閾値と比較する段階と;
前記比較に基づいて、前記第1のクラスの予測の正しさを示す前記出力情報を生成する段階とをさらに含む、
付記1に記載の方法。
(付記7)
前記出力情報は、前記信頼スコアの表示、前記信頼スコアのログ・ファイルへの格納、または前記信頼スコアに基づく通知のうちの少なくとも1つに対応する、付記1に記載の方法。
(付記8)
前記事前トレーニングされたDNNの対応するクラスにそれぞれ関連する事前トレーニングされた分類器の集合から、前記予測された第1のクラスのために前記事前トレーニングされた分類器を選択する段階と;
選択された事前トレーニングされた分類器によって、前記第1のデータ・ポイントについての予測された第1のクラスの前記信頼スコアを決定する段階とをさらに含む、
付記1に記載の方法。
(付記9)
前記DNNの前記畳み込み層の一つまたは複数の第1特徴と正しい予測との相関、および、前記DNNの前記畳み込み層の一つまたは複数の第2特徴と正しくない予測との相関に基づいて、前記第1のデータ・ポイントについての前記予測された第1のクラスについての前記信頼スコアを決定する段階をさらに含み、
前記特徴の第1の集合は、前記一つまたは複数の第1特徴および前記一つまたは複数の第2特徴を含む、
付記1に記載の方法。
(付記10)
前記一つまたは複数の第1特徴および前記一つまたは複数の第2特徴からの各特徴は、特徴値の集合を含み、前記第1のクラスの前記正しい予測または前記正しくない予測との前記相関は、各特徴に対応する前記特徴値の集合および重みに基づく、付記9に記載の方法。
(付記11)
前記第1のクラスのための前記分類器のトレーニングは:
前記リアルタイム・アプリケーションに関連する複数の試験データ・ポイントの試験データセットから前記第1のクラスの試験データ・ポイントを選択する段階であって、前記試験データセットは、前記第1のクラスに関連する試験データ・ポイントの第1の集合と、前記第1のクラス以外の一つまたは複数のクラスに関連する試験データ・ポイントの第2の集合とを含む、段階と;
前記第1のクラスについての前記分類器のトレーニングのための動作の第1の集合を実行する段階であって、前記動作の第1の集合は:
前記事前トレーニングされたDNNから、選択された試験データ・ポイントの前記第1のクラスの第1の複数の特徴および前記第1の複数の特徴および第1の複数の重みを抽出することであって、前記抽出された第1の複数の特徴は、前記DNNの前記畳み込み層に関連する、こと、
抽出された第1の複数の特徴および対応する第1の複数の重みに基づいて、前記第1のクラスのための前記分類器をトレーニングすること、および
前記試験データセットから、次の試験データ・ポイントを、前記選択された試験データ・ポイントとして再選択することを含む、段階と;
前記選択された試験データ・ポイントに基づいて前記試験データセットについて前記動作の第1の集合を逐次反復的に実行することによって、前記第1のクラスのための前記事前トレーニングされた分類器を得る段階とを含む、
付記1に記載の方法。
(付記12)
前記第1の複数の特徴の抽出は、さらに:
前記DNNから、第2の複数の特徴および該第2の複数の特徴に対応する第2の複数の重みを抽出する段階であって、抽出された第2の複数の特徴は、前記DNNの前記畳み込み層に関連する、段階と;
前記第2の複数の特徴から、前記第2の複数の重みに基づいて、前記第1の複数の特徴を選択する段階とを含む、
付記11に記載の方法。
(付記13)
前記第1のクラスのための前記分類器の前記トレーニングは、さらに:
前記第1の複数の特徴からの一つまたは複数の第1特徴を、前記選択された試験データ・ポイントについての正しい予測と相関させること、および
前記第1の複数の特徴からの一つまたは複数の第2特徴を、前記選択された試験データ・ポイントについての正しくない予測と相関させることを含む、
付記11に記載の方法。
(付記14)
前記事前トレーニングされた分類器は、決定木分類器、サポートベクトルマシン(SVM)分類器、単純ベイズ分類器、ロジスティック回帰分類器、またはk近傍分類器のうちの1つに対応する、付記1に記載の方法。
(付記15)
前記事前トレーニングされた分類器は:
それぞれが前記特徴の第1の集合のある特徴およびその特徴の対応する重みに関連する条件を表わす内部ノードの集合と;
それぞれが前記第1のデータ・ポイントについての前記予測された第1のクラスに関連する前記信頼スコアを含む予測出力を表わすリーフノードの集合とを含む、
付記1に記載の方法。
(付記16)
前記第1のデータ・ポイントは、画像データ、音声データ、またはテキスト・データのうちの1つに対応する、付記1に記載の方法。
(付記17)
前記リアルタイム・アプリケーションは、画像分類、発話認識、またはテキスト認識のうちの一つを含む、付記1に記載の方法。
(付記18)
実行されることに応答してシステムに動作を実行させる命令を記憶するように構成された一つまたは複数の非一時的なコンピュータ読み取り可能記憶媒体であって、前記動作は:
リアルタイム・アプリケーションに関連する第1のデータ・ポイントを受領する段階と;
前記リアルタイム・アプリケーションの分類タスクのために事前トレーニングされた深層ニューラル・ネットワーク(DNN)によって、受領した第1のデータ・ポイントに関連する第1のクラスを予測する段階と;
前記DNNから、前記第1のデータ・ポイントの予測された第1のクラスについて、特徴の第1の集合および該特徴の第1の集合に対応する重みの第1の集合を抽出する段階であって、抽出された前記第1の集合の特徴は、前記DNNの畳み込み層に関連する、段階と;
予測された第1のクラスに関連する事前トレーニングされた分類器によって、抽出された特徴の第1の集合および対応する重みの第1の集合に基づいて、第1のデータ・ポイントについての予測された第1のクラスについての信頼スコアを決定する段階と;
決定された信頼スコアに基づいて、第1のデータ・ポイントについての第1のクラスの予測の正しさを示す出力情報を生成する段階とを含む、
媒体。
(付記19)
リアルタイム・アプリケーションの分類タスクのために事前トレーニングされた深層ニューラル・ネットワーク(DNN)と;
前記DNNと結合されたプロセッサとを有するシステムであって、前記プロセッサは:
前記リアルタイム・アプリケーションに関連する第1のデータ・ポイントを受領する段階と;
前記事前トレーニングされたDNNによって、受領された第1のデータ・ポイントに関連する第1のクラスを予測する段階と;
前記事前トレーニングされたDNNから、前記第1のデータ・ポイントの予測された第1のクラスについて、特徴の第1の集合および該特徴の第1の集合に対応する重みの第1の集合を抽出する段階であって、抽出された前記第1の集合の特徴は、前記DNNの畳み込み層に関連する、段階と;
予測された第1のクラスに関連する事前トレーニングされた分類器によって、抽出された特徴の第1の集合および対応する重みの第1の集合に基づいて、第1のデータ・ポイントについての予測された第1のクラスについての信頼スコアを決定する段階と;
決定された信頼スコアに基づいて、第1のデータ・ポイントについての第1のクラスの予測の正しさを示す出力情報を生成する段階とを実行するように構成されている、
システム。
(付記20)
前記出力情報が、前記信頼スコアの表示、前記信頼スコアのログ・ファイルへの格納、または前記信頼スコアに基づく通知のうちの少なくとも1つに対応する、付記19に記載のシステム。
102 電子装置
104 深層ニューラル・ネットワーク(DNN)
106 分類器の集合
108 データベース
110 ユーザー端装置
112 通信ネットワーク
160A 第1の分類器
160B 第2の分類器
160N 第Nの分類器
202 システム
204 プロセッサ
206 メモリ
208 永続データ記憶
210 I/O装置
212 ネットワーク・インターフェース

302 第1のデータ・ポイントを受領
304 事前トレーニングされた深層ニューラルネットワーク(DNN)によって、受領された第1のデータ・ポイントに関連する第1のクラスを予測
306 DNNから、第1のデータ・ポイントの予測された第1のクラスのための特徴の第1の集合および特徴の第1の集合に対応する重みの第1の集合を抽出
308 予測された第1のクラスに関連する事前トレーニングされた分類器によって、第1のデータ・ポイントについての予測された第1のクラスについての信頼スコアを、特徴の第1の集合および対応する重みの第1の集合に基づいて決定
310 決定された信頼スコアに基づいて、第1のデータ・ポイントについての第1のクラスの予測の正しさを示す出力情報を生成

402 DNNから、第1のデータ・ポイントの予測された第1のクラスのための特徴の第2の集合および特徴の第2の集合に対応する重みの第2の集合を抽出
404 抽出された特徴の第2の集合から、特徴の第2の集合に対応する重みの第2の集合に基づいて、特徴の第1の集合を選択

602 リアルタイム・アプリケーションに関連する複数の試験データ・ポイントを含む試験データセットから、第1のクラスに関連する試験データ・ポイントを選択
604 事前トレーニングされたDNNから、選択された試験データ・ポイントについての第1のクラスのための、第1の複数の特徴および第1の複数の特徴に対応する第1の複数の重みを抽出
606 第1の複数の特徴および対応する第1の複数の重みに基づいて、第1のクラスのために分類器をトレーニング
608 分類器をトレーニングするエポックの所定数が完了?
610 試験データセットから、次のデータ・ポイントを、選択された試験データ・ポイントとして再選択
612 第1のクラスのためのトレーニングされた分類器を取得

Claims (20)

  1. リアルタイム・アプリケーションに関連する第1のデータ・ポイントを受領する段階と;
    前記リアルタイム・アプリケーションの分類タスクのために事前トレーニングされた深層ニューラル・ネットワーク(DNN)によって、受領した第1のデータ・ポイントに関連する第1のクラスを予測する段階と;
    前記DNNから、前記第1のデータ・ポイントの予測された第1のクラスについて、特徴の第1の集合および該特徴の第1の集合に対応する重みの第1の集合を抽出する段階であって、抽出された前記第1の集合の特徴は、前記DNNの畳み込み層に関連する、段階と;
    予測された第1のクラスに関連する事前トレーニングされた分類器によって、抽出された特徴の第1の集合および対応する重みの第1の集合に基づいて、第1のデータ・ポイントについての予測された第1のクラスについての信頼スコアを決定する段階と;
    決定された信頼スコアに基づいて、第1のデータ・ポイントについての第1のクラスの予測の正しさを示す出力情報を生成する段階とを含む、
    方法。
  2. 前記特徴の第1の集合の抽出は、さらに:
    前記DNNから、特徴の第2の集合および該特徴の第2の集合に対応する重みの第2の集合を抽出する段階であって、抽出された特徴の第2の集合は、前記DNNの前記畳み込み層に関連する、段階と;
    前記特徴の第2の集合から、前記重みの第2の集合に基づいて、前記特徴の第1の集合を選択する段階とを含む、
    請求項1に記載の方法。
  3. 前記特徴の第2の集合からの前記特徴の第1の集合の選択は、さらに:
    前記特徴の第2の集合に対応する前記重みの第2の集合のそれぞれの重みを、所定の重み閾値を比較する段階と;
    前記比較に基づいて前記特徴の第2の集合から前記特徴の第1の集合を選択する段階とを含む、
    請求項2に記載の方法。
  4. 前記特徴の第2の集合からの前記特徴の第1の集合の選択は、さらに:
    前記特徴の第2の集合に対応する前記重みの第2の集合に対する所定のソート基準の適用に基づいて、前記第2の集合の特徴をソートする段階と;
    ソートされた前記特徴の第2の集合から前記特徴の第1の集合を選択する段階とを含む、
    請求項2に記載の方法。
  5. 前記畳み込み層は、前記DNNの出力層に先行する層に対応する、請求項1に記載の方法。
  6. 決定された信頼スコアを所定のスコア閾値と比較する段階と;
    前記比較に基づいて、前記第1のクラスの予測の正しさを示す前記出力情報を生成する段階とをさらに含む、
    請求項1に記載の方法。
  7. 前記出力情報は、前記信頼スコアの表示、前記信頼スコアのログ・ファイルへの格納、または前記信頼スコアに基づく通知のうちの少なくとも1つに対応する、請求項1に記載の方法。
  8. 前記事前トレーニングされたDNNの対応するクラスにそれぞれ関連する事前トレーニングされた分類器の集合から、前記予測された第1のクラスのために前記事前トレーニングされた分類器を選択する段階と;
    選択された事前トレーニングされた分類器によって、前記第1のデータ・ポイントについての予測された第1のクラスの前記信頼スコアを決定する段階とをさらに含む、
    請求項1に記載の方法。
  9. 前記DNNの前記畳み込み層の一つまたは複数の第1特徴と正しい予測との相関、および、前記DNNの前記畳み込み層の一つまたは複数の第2特徴と正しくない予測との相関に基づいて、前記第1のデータ・ポイントについての前記予測された第1のクラスについての前記信頼スコアを決定する段階をさらに含み、
    前記特徴の第1の集合は、前記一つまたは複数の第1特徴および前記一つまたは複数の第2特徴を含む、
    請求項1に記載の方法。
  10. 前記一つまたは複数の第1特徴および前記一つまたは複数の第2特徴からの各特徴は、特徴値の集合を含み、前記第1のクラスの前記正しい予測または前記正しくない予測との前記相関は、各特徴に対応する前記特徴値の集合および重みに基づく、請求項9に記載の方法。
  11. 前記第1のクラスのための前記分類器のトレーニングは:
    前記リアルタイム・アプリケーションに関連する複数の試験データ・ポイントの試験データセットから前記第1のクラスの試験データ・ポイントを選択する段階であって、前記試験データセットは、前記第1のクラスに関連する試験データ・ポイントの第1の集合と、前記第1のクラス以外の一つまたは複数のクラスに関連する試験データ・ポイントの第2の集合とを含む、段階と;
    前記第1のクラスについての前記分類器のトレーニングのための動作の第1の集合を実行する段階であって、前記動作の第1の集合は:
    前記事前トレーニングされたDNNから、選択された試験データ・ポイントの前記第1のクラスの第1の複数の特徴および前記第1の複数の特徴および第1の複数の重みを抽出することであって、前記抽出された第1の複数の特徴は、前記DNNの前記畳み込み層に関連する、こと、
    抽出された第1の複数の特徴および対応する第1の複数の重みに基づいて、前記第1のクラスのための前記分類器をトレーニングすること、および
    前記試験データセットから、次の試験データ・ポイントを、前記選択された試験データ・ポイントとして再選択することを含む、段階と;
    前記選択された試験データ・ポイントに基づいて前記試験データセットについて前記動作の第1の集合を逐次反復的に実行することによって、前記第1のクラスのための前記事前トレーニングされた分類器を得る段階とを含む、
    請求項1に記載の方法。
  12. 前記第1の複数の特徴の抽出は、さらに:
    前記DNNから、第2の複数の特徴および該第2の複数の特徴に対応する第2の複数の重みを抽出する段階であって、抽出された第2の複数の特徴は、前記DNNの前記畳み込み層に関連する、段階と;
    前記第2の複数の特徴から、前記第2の複数の重みに基づいて、前記第1の複数の特徴を選択する段階とを含む、
    請求項11に記載の方法。
  13. 前記第1のクラスのための前記分類器の前記トレーニングは、さらに:
    前記第1の複数の特徴からの一つまたは複数の第1特徴を、前記選択された試験データ・ポイントについての正しい予測と相関させること、および
    前記第1の複数の特徴からの一つまたは複数の第2特徴を、前記選択された試験データ・ポイントについての正しくない予測と相関させることを含む、
    請求項11に記載の方法。
  14. 前記事前トレーニングされた分類器は、決定木分類器、サポートベクトルマシン(SVM)分類器、単純ベイズ分類器、ロジスティック回帰分類器、またはk近傍分類器のうちの1つに対応する、請求項1に記載の方法。
  15. 前記事前トレーニングされた分類器は:
    それぞれが前記特徴の第1の集合のある特徴およびその特徴の対応する重みに関連する条件を表わす内部ノードの集合と;
    それぞれが前記第1のデータ・ポイントについての前記予測された第1のクラスに関連する前記信頼スコアを含む予測出力を表わすリーフノードの集合とを含む、
    請求項1に記載の方法。
  16. 前記第1のデータ・ポイントは、画像データ、音声データ、またはテキスト・データのうちの1つに対応する、請求項1に記載の方法。
  17. 前記リアルタイム・アプリケーションは、画像分類、発話認識、またはテキスト認識のうちの一つを含む、請求項1に記載の方法。
  18. 実行されることに応答してシステムに動作を実行させる命令を記憶するように構成された一つまたは複数の非一時的なコンピュータ読み取り可能記憶媒体であって、前記動作は:
    リアルタイム・アプリケーションに関連する第1のデータ・ポイントを受領する段階と;
    前記リアルタイム・アプリケーションの分類タスクのために事前トレーニングされた深層ニューラル・ネットワーク(DNN)によって、受領した第1のデータ・ポイントに関連する第1のクラスを予測する段階と;
    前記DNNから、前記第1のデータ・ポイントの予測された第1のクラスについて、特徴の第1の集合および該特徴の第1の集合に対応する重みの第1の集合を抽出する段階であって、抽出された前記第1の集合の特徴は、前記DNNの畳み込み層に関連する、段階と;
    予測された第1のクラスに関連する事前トレーニングされた分類器によって、抽出された特徴の第1の集合および対応する重みの第1の集合に基づいて、第1のデータ・ポイントについての予測された第1のクラスについての信頼スコアを決定する段階と;
    決定された信頼スコアに基づいて、第1のデータ・ポイントについての第1のクラスの予測の正しさを示す出力情報を生成する段階とを含む、
    媒体。
  19. リアルタイム・アプリケーションの分類タスクのために事前トレーニングされた深層ニューラル・ネットワーク(DNN)と;
    前記DNNと結合されたプロセッサとを有するシステムであって、前記プロセッサは:
    前記リアルタイム・アプリケーションに関連する第1のデータ・ポイントを受領する段階と;
    前記事前トレーニングされたDNNによって、受領された第1のデータ・ポイントに関連する第1のクラスを予測する段階と;
    前記事前トレーニングされたDNNから、前記第1のデータ・ポイントの予測された第1のクラスについて、特徴の第1の集合および該特徴の第1の集合に対応する重みの第1の集合を抽出する段階であって、抽出された前記第1の集合の特徴は、前記DNNの畳み込み層に関連する、段階と;
    予測された第1のクラスに関連する事前トレーニングされた分類器によって、抽出された特徴の第1の集合および対応する重みの第1の集合に基づいて、第1のデータ・ポイントについての予測された第1のクラスについての信頼スコアを決定する段階と;
    決定された信頼スコアに基づいて、第1のデータ・ポイントについての第1のクラスの予測の正しさを示す出力情報を生成する段階とを実行するように構成されている、
    システム。
  20. 前記出力情報が、前記信頼スコアの表示、前記信頼スコアのログ・ファイルへの格納、または前記信頼スコアに基づく通知のうちの少なくとも1つに対応する、請求項19に記載のシステム。
JP2021044818A 2020-03-26 2021-03-18 事前トレーニングされた分類器に基づく深層ニューラル・ネットワーク(dnn)予測の検証 Pending JP2021157792A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/830,563 US11461650B2 (en) 2020-03-26 2020-03-26 Validation of deep neural network (DNN) prediction based on pre-trained classifier
US16/830563 2020-03-26

Publications (1)

Publication Number Publication Date
JP2021157792A true JP2021157792A (ja) 2021-10-07

Family

ID=77854851

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021044818A Pending JP2021157792A (ja) 2020-03-26 2021-03-18 事前トレーニングされた分類器に基づく深層ニューラル・ネットワーク(dnn)予測の検証

Country Status (2)

Country Link
US (1) US11461650B2 (ja)
JP (1) JP2021157792A (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11568049B2 (en) * 2019-09-27 2023-01-31 Mcafee, Llc Methods and apparatus to defend against adversarial machine learning
US11397591B2 (en) * 2019-11-07 2022-07-26 Kyndryl, Inc. Determining disorder in technological system architectures for computer systems
JP7486349B2 (ja) * 2020-05-28 2024-05-17 キヤノン株式会社 ニューラルネットワーク、ニューラルネットワークの学習方法、プログラム、画像処理装置
CN113243018A (zh) * 2020-08-01 2021-08-10 商汤国际私人有限公司 目标对象的识别方法和装置
US11533252B2 (en) * 2021-02-22 2022-12-20 Cisco Technology, Inc. Replacing static routing metrics with probabilistic models
US20220318602A1 (en) * 2021-03-31 2022-10-06 Fujitsu Limited Provision of semantic feedback on deep neural network (dnn) prediction for decision making
US20230237503A1 (en) * 2022-01-21 2023-07-27 Dell Products L.P. System and method for determining commodity classifications for products
CN115713099B (zh) * 2023-01-03 2023-05-09 税友信息技术有限公司 一种模型设计方法、装置、设备及存储介质

Also Published As

Publication number Publication date
US20210303986A1 (en) 2021-09-30
US11461650B2 (en) 2022-10-04

Similar Documents

Publication Publication Date Title
JP2021157792A (ja) 事前トレーニングされた分類器に基づく深層ニューラル・ネットワーク(dnn)予測の検証
US11361225B2 (en) Neural network architecture for attention based efficient model adaptation
CN108027899B (zh) 用于提高经训练的机器学习模型的性能的方法
US10275719B2 (en) Hyper-parameter selection for deep convolutional networks
US11585918B2 (en) Generative adversarial network-based target identification
US11107250B2 (en) Computer architecture for artificial image generation using auto-encoder
WO2019232772A1 (en) Systems and methods for content identification
US11068747B2 (en) Computer architecture for object detection using point-wise labels
US11468266B2 (en) Target identification in large image data
US20220083739A1 (en) Machine learning for joint recognition and assertion regression of elements in text
US11763551B2 (en) Systems and methods for fine tuning image classification neural networks
Nguyen et al. Constrained design of deep iris networks
US20220156577A1 (en) Training neural network model based on data point selection
CN112232395B (zh) 一种基于联合训练生成对抗网络的半监督图像分类方法
US20220383157A1 (en) Interpretable machine learning for data at scale
JP7439607B2 (ja) 遺伝モデルに基づきディープニューラルネットワーク(dnn)を訓練することにおけるデータ拡張
US11482039B2 (en) Anti-spoofing method and apparatus for biometric recognition
US11195053B2 (en) Computer architecture for artificial image generation
US11003909B2 (en) Neural network trained by homographic augmentation
KR102505303B1 (ko) 이미지 분류 방법 및 장치
EP3862926A1 (en) Method of identifying filters in a neural network, system and storage medium of the same
KR102321650B1 (ko) 크라우드소싱 기반 프로젝트의 특성에 따른 머신러닝 모델의 학습 성능 개선 방법 및 장치
US20210149986A1 (en) Computer architecture for multi-domain probability assessment capability for course of action analysis
US20220318602A1 (en) Provision of semantic feedback on deep neural network (dnn) prediction for decision making
KR20190078710A (ko) 이미지 분류 시스템 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231207