JP2022124240A - 診断パターン生成方法及び計算機 - Google Patents

診断パターン生成方法及び計算機 Download PDF

Info

Publication number
JP2022124240A
JP2022124240A JP2021021893A JP2021021893A JP2022124240A JP 2022124240 A JP2022124240 A JP 2022124240A JP 2021021893 A JP2021021893 A JP 2021021893A JP 2021021893 A JP2021021893 A JP 2021021893A JP 2022124240 A JP2022124240 A JP 2022124240A
Authority
JP
Japan
Prior art keywords
node
diagnostic
diagnostic pattern
processor
neural network
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
JP2021021893A
Other languages
English (en)
Inventor
巧 上薗
Takumi Uezono
忠信 鳥羽
Tadanobu Toba
健一 新保
Kenichi Shinpo
宏章 井辻
Hiroaki Itsuji
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2021021893A priority Critical patent/JP2022124240A/ja
Priority to DE102021130117.3A priority patent/DE102021130117A1/de
Priority to US17/535,779 priority patent/US20220261986A1/en
Publication of JP2022124240A publication Critical patent/JP2022124240A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0012Biomedical image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/261Functional testing by simulating additional hardware, e.g. fault simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Radiology & Medical Imaging (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

【課題】診断負荷の増大化を抑制することが可能になる。【解決手段】診断パターン生成部1は、学習済ニューラルネットワーク11に含まれる複数の中間ノードの部分集合による演算処理の処理結果の正誤を診断するための複数のデータセットを含む診断パターンを生成する。中間ノード演算コンポーネント特定部3は、中間ノードと、中間ノードによる演算処理を実行する演算コンポーネントとの対応関係であるノード・コア関係を特定する。診断パターン縮減部5は、ノード・コア関係に基づいて、複数のデータセットの数を縮減する。【選択図】図1

Description

本開示は、診断パターン生成方法及び計算機に関する。
自動運転システム及び産業インフラシステムなどのシステムでは、AI(Artificial Intelligence:人工知能)技術に代表される複雑系の活用がエッジ機器に対しても進んでいる。このため、GPU(Graphics Processing Unit)及びLSI(Large Scale Integration)のようなハードウェアをアクセラレータとして備えたエッジ機器が多くなっている。この種のエッジ機器では、環境及び経年変化などの影響でハードウェアに異常が生じることがあるため、システムの安全性の担保及び安定稼働の実現のためには、ハードウェアの診断が重要である。
ハードウェアを診断する診断方法としては、
(*)ハードウェアを多重化して各ハードウェアによる演算結果を比較する方法
(*)同一のハードウェアを用いて行った複数の演算処理の演算結果を比較する方法
(*)演算結果を逆演算して元のデータに戻るか否かを確認する方法
(*)診断対象回路に対して診断パターンを定期的に入力し、診断対象回路の出力値を期待値と比較する方法(LBIST:Logic Built-In Self-Test)
などが知られている。
また、特許文献1には、識別型ニューラルネットワークに対して、逆演算を行う復元型ニューラルネットワークを提供する診断方法が開示されている。この診断方法では、復元型ニューラルネットワークを用いて復元した入力データが予め学習した範囲内にあるか否かが判定され、その判定結果を用いて識別型ニューラルネットワークによる判定結果を評価することでハードウェアが診断される。
国際公開第2016/132468号
近年、診断対象となるハードウェアの規模増大及び複雑化などのために、従来の診断方法では、診断時間、消費電力及び診断用回路の回路面積のような診断負荷の増加が問題となっている。
例えば、ハードウェアを多重化する診断方法では、ハードウェアの規模が増大するため、消費電力及び回路面積が増加する。このため、低消費電力及び小形化などが求められるエッジ機器においては、所望のスペックが満たせなくなることがある。また、LBISTでは、診断対象回路が複雑化することにより、入力する診断パターン数が増加し、診断時間、消費電力及び使用メモリ容量などの診断負荷が増加する。
また、特許文献1に記載の技術では、復元型ニューラルネットワークの規模は、識別型ニューラルネットワークの規模に依存するため、識別型ニューラルネットワークの規模が増大することにより、診断時間、消費電力及び回路面積などが増加するという問題がある。
本開示の目的は、診断負荷を軽減することが可能な診断パターン生成方法及び計算機を提供することである。
本開示の一態様に従う診断パターン生成方法は、
ニューラルネットワークによる演算処理を複数の演算コンポーネントを用いて実行するプロセッサを診断するための診断パターンを生成する診断パターン生成方法であって、
(A)前記ニューラルネットワークに含まれる複数のノードの部分集合による演算処理の処理結果の正誤を診断するための複数のデータセットを含む前記診断パターンを生成し、
(B)前記ノードと、前記ノードによる演算処理を実行する前記演算コンポーネントとの対応関係であるノード・コア関係を特定し、
(C)前記ノード・コア関係に基づいて、前記データセットの数を縮減する。
本発明によれば、診断負荷を軽減することが可能になる。
本開示の実施例1の診断ポイント縮減システムの構成例を示す図である。 診断パターン縮減部の縮減処理の一例を説明するためのフローチャートである。 クラウドサーバのハードウェア構成の一例を示す図である。 エッジ装置のハードウェア構成を示す図である。 クライアント計算機のハードウェア構成を示す図である。 本開示の実施例2の診断ポイント縮減システムの構成例を示す図である。 診断除外ノード特定部の処理の一例を説明するためのフローチャートである。
以下、本開示の実施形態について図面を参照して説明する。
図1は、本開示の実施例1の診断ポイント縮減システムの構成例を示す図である。図1に示す診断ポイント縮減システム10は、診断パターン生成部1と、中間ノード診断パターン特定部2と、中間ノード演算コンポーネント特定部3と、中間ノード特定部4と、診断パターン縮減部5とを有する。
診断パターン生成部1は、学習済ニューラルネットワーク11に基づいて、診断対象プロセッサを診断するための診断パターン12を生成して出力する生成部である。
学習済ニューラルネットワーク11は、学習済みのニューラルネットワークであり、
(*)複数のノードと、
(*)複数のノード間に設定された複数の重みパラメータと、
(*)複数のノードのそれぞれに設定されたバイアスパラメータと、
を含む。なお、学習済ニューラルネットワークは、図1では、学習済NNと表記されている。
ノードは、具体的には、
(*)入力値が入力される入力ノードと、
(*)出力値を出力する出力ノードと、
(*)入力ノードと出力ノードとの間に設けられる中間ノードと、
を含む。また、少なくとも中間ノードは、複数ある。
診断対象プロセッサは、学習済ニューラルネットワーク11による演算処理を実行するプロセッサである。診断対象プロセッサは、本実施例では、GPU(Graphics Processing Unit)であり、より具体的には、演算処理を行う複数の演算コンポーネントを含むマルチコアGPUである。なお、演算コンポーネントは、コアとも呼ばれる。また、診断対象プロセッサは、GPUに限定されるものではなく、例えば、FPGA(Field-Programmable Gate Array)のような他のデバイスや汎用プロセッサでもよい。
診断パターン12は、本実施例では、LBIST向けの診断パターンである。LBIST向け診断パターンを生成する生成方式としては、LSI向けの診断パターンを生成する生成方式を適用することができる。例えば、診断パターン生成部1は、学習済ニューラルネットワーク11の各ノードをそのノードと同等な倫理回路で置き替えることで生成されるLSIに対する診断パターンを診断パターン12として生成する。この場合、診断パターン生成部1は、例えば、学習済ニューラルネットワーク11に含まれる重みパラメータ及びバイアスパラメータに基づいて、診断パターン12を生成することができる。
なお、LSI向け診断パターンの生成には、例えば、EDA(Electronic Design Automation)ツールのような既存のツール、又は、Dアルゴリズムのような既存のテストパターン生成アルゴリズムを使用することができる。
診断パターン12は、学習済ニューラルネットワーク11の各ノード(具体的には、各中間ノード)による演算処理の正誤を診断するための複数のデータセットを含む。なお、1つのデータセットで1つの中間ノードの演算処理の正誤を診断できるとは限らず、通常、1つのデータセットでは、複数の中間ノードの演算処理全体が診断される。このため、各データセットは、全ての中間ノードを含む集合の部分集合に含まれる1以上の中間ノードによる演算処理の正誤を診断するものといえる。
また、データセットは、
(*)学習済ニューラルネットワーク11に入力する診断用入力値と、
(*)診断用入力値を学習済ニューラルネットワーク11に入力した場合に学習済ニューラルネットワーク11から出力される出力値の期待値と、
を含む。
中間ノード診断パターン特定部2は、診断パターン12に含まれるデータセットと、データセットによって演算処理の正誤の診断が可能な中間ノードである診断可能ノードとの対応関係であるノード・データ関係を特定する。中間ノード診断パターン特定部2は、ノード・データ関係を示す中間ノード診断パターンデータセット13を生成して出力する。
診断可能ノードを判別する方法としては、例えば、エラーインジェクションシミュレーションを用いる方法などが挙げられる。
エラーインジェクションシミュレーションを用いる場合、中間ノード診断パターン特定部2は、データセットと中間ノードの組み合わせごとに、以下の処理(A)~処理(C)を行う。
(A)入力処理。入力処理は、対象の中間ノードに故障(例えば、縮退故障)が発生したと仮定して、対象のデータセットの診断用入力値を学習済ニューラルネットワーク11に入力する処理である。
(B)比較処理。比較処理は、学習済ニューラルネットワーク11からの出力値を対象の診断パターンの期待値と比較する処理である。
(C)特定処理。特定処理は、出力値と期待値とが一致していない場合、対象の中間ノードを診断可能ノードとして特定する処理である。
中間ノード演算コンポーネント特定部3は、演算シーケンスデータ14に基づいて、学習済ニューラルネットワーク11の中間ノードと、その中間ノードによる演算処理を実行する演算コンポーネントである実行コンポーネントとの対応関係であるノード・コア関係を特定する。
具体的には、中間ノード演算コンポーネント特定部3は、学習済ニューラルネットワーク11の中間ノードごとに、診断対象プロセッサの演算コンポーネントから、その中間ノードの演算処理を実行する演算コンポーネントである実行コンポーネントを特定する。中間ノード演算コンポーネント特定部3は、実行コンポーネントを中間ノードごとに示す実行コンポーネント情報15を生成して出力する。
演算シーケンスデータ14は、学習済ニューラルネットワーク11による演算処理の処理順番と、演算処理とその演算処理を実行する演算コンポーネントとの対応関係とを示す。なお、演算シーケンスデータは、例えば、学習済ニューラルネットワーク11による演算処理を実行するためのプログラムをコンパイルすることにより生成される。
中間ノード特定部4は、診断対象プロセッサの演算コンポーネントごとに、その演算コンポーネントが実行する演算処理に対応する中間ノードである演算ノードを特定する。そして、中間ノード特定部4は、演算ノードを演算コンポーネントごとに示す演算ノード情報16を生成して出力する。
なお、実行コンポーネント情報15が中間ノードをキーとし演算コンポーネントをバリューとするテーブルデータであるとすると、中間ノード特定部4が行う処理は、キーとバリューとを互いに入れ替えて、演算コンポーネントをキーとし中間ノードをバリューとするテーブルデータを生成する処理と同等である。
診断パターン縮減部5は、中間ノード診断パターンデータセット13、実行コンポーネント情報15及び演算ノード情報16に基づいて、診断パターン12に含まれるデータセットの数を縮減する。そして、診断パターン縮減部5は、データセットの数を縮減した診断パターンを縮減診断パターン17として生成して出力する。
なお、診断パターン縮減部5は、演算コンポーネントに対応する演算ノードのうち少なくとも1つの演算ノードの演算処理の正誤を診断することで、その演算コンポーネントに対応する全ての演算ノードの演算処理の正誤を診断したと見なせることを利用して、データセットの数を縮減する。これにより、診断の正確性の低下を抑制しながら、診断に係る診断負荷を低減することができる。
図2は、診断パターン縮減部5が行う縮減処理の一例を説明するためのフローチャートである。
縮減処理では、診断パターン縮減部5は、先ず、縮減診断パターンPを空集合に初期化(P={})する。さらに、診断パターン縮減部5は、処理対象コンポーネント集合Cの要素を診断対象プロセッサの全ての演算コンポーネントに初期化(C={全ての演算コンポーネント})する(ステップS101)。
診断パターン縮減部5は、処理対象コンポーネント集合Cの要素である演算コンポーネントのいずれか1つを演算コンポーネントcとして選択する(ステップS102)。
診断パターン縮減部5は、演算ノード情報16に基づいて、演算コンポーネントcに対応する演算ノードの集合Ncを取得する(ステップS103)。なお、演算コンポーネントcに対応する演算ノードは、具体的には、演算コンポーネントcが実行する演算処理に対応する中間ノードである。
診断パターン縮減部5は、演算ノードの集合Ncから要素である演算ノードのいずれか1つを演算ノードnとして選択する(ステップS104)。演算ノードnの選択方法は、特に限定されない。例えば、診断パターン縮減部5は、演算ノードの集合Ncからランダムに演算ノードnを選択することができる。
診断パターン縮減部5は、中間ノード診断パターンデータセット13に基づいて、演算ノードnの演算処理の正誤を診断可能なデータセットを診断データセットpとして取得し、その診断データセットpを縮減診断パターンPに加える(ステップS105)。
診断パターン縮減部5は、中間ノード診断パターンデータセット13に基づいて、診断パターンpで演算処理の正誤が診断可能な中間ノードである診断ノードの集合Npを取得する(ステップS106)。なお、診断ノードの集合Npには、上述の演算ノードnも含まれる。
診断パターン縮減部5は、実行コンポーネント情報15に基づいて、診断ノードの集合Npに含まれる各診断ノードの演算処理を実行する演算コンポーネントを特定し、その特定した演算コンポーネントを処理対象コンポーネント集合Cから削除する(ステップS107)。
診断パターン縮減部5は、処理対象コンポーネント集合Cが空集合か否かを判断する(ステップS108)。診断パターン縮減部5は、処理対象コンポーネント集合Cが空集合でない場合、ステップS102の処理に戻り、処理対象コンポーネント集合Cが空集合である場合、処理を終了する。
以上説明したように本実施例によれば、診断パターン生成部1は、学習済ニューラルネットワーク11に含まれる複数の中間ノードの部分集合による演算処理の処理結果の正誤を診断するための複数のデータセットを含む診断パターンを生成する。中間ノード演算コンポーネント特定部3は、中間ノードと、中間ノードによる演算処理を実行する演算コンポーネントとの対応関係であるノード・コア関係を特定する。診断パターン縮減部5は、ノード・コア関係に基づいて、複数のデータセットの数を縮減する。したがって、診断の正確性の低下を抑制しながら、診断に係る診断負荷を低減することができる。
また、本実施例では、演算コンポーネントごとに、その演算コンポーネントに対応する中間ノードのいずれかの中間ノードの演算処理の正誤を診断可能なデータセットが選択される。また、演算コンポーネントごとに、選択されたデータセット以外のデータセットが削除されることで、複数のデータセットの数が縮減される。このため、診断の正確性の低下を抑制しながら、診断負荷の増加を抑制することが可能になる。
また、本実施例では、データセットに含まれる診断用入力値及び期待値に基づいて、演算コンポーネントに対応する中間ノードのそれぞれの演算処理の正誤を診断可能なデータセットが特定される。このため、診断の正確性の低下をより適切に抑制することができる。
図3は、図1に示した診断ポイント縮減システム10を実現する計算機の一例であるクラウドサーバのハードウェア構成例を示す図である。
図3に示すクラウドサーバ20は、記録装置21、プロセッサ22、メインメモリ23、通信装置24、入力装置25及び表示装置26を有し、それらがバス27を介して互いに接続されている。
記録装置21は、書き込み及び読み出しが可能にデータを記録する装置であり、プロセッサ22の動作を規定するためのプログラム、及び、学習済ニューラルネットワーク11及び演算シーケンスデータ14などの種々のデータを記録する。プロセッサ22は、記録装置21に記録されたプログラムをメインメモリ23に読み出し、メインメモリ23を利用してプログラムに応じた処理を実行することで、図1に示した診断ポイント縮減システム10の各部1~5を実現する。プロセッサ22の一例としてはCPUやGPUが考えられるが、所定の処理を実行する主体であれば他の半導体デバイスでもよい。
通信装置24は、例えば、後述の図4及び図5に示すエッジ装置30及びクライアント計算機40のような外部装置と通信可能に接続し、外部装置との間で情報の送受信を行う。入力装置25は、クラウドサーバ20のユーザなどから種々の情報が入力される装置である。表示装置26は、種々の情報を表示する装置である。
上記構成により、プロセッサ22は、通信装置24を介して、診断ポイント縮減システム10で生成した縮減診断パターン17をエッジ装置30に配信することができる。このとき、プロセッサ22は、学習済ニューラルネットワーク11の演算処理をプロセッサに実行させるためのプログラムである学習済ニューラルネットワークプログラムと共に、縮減診断パターン17を配信してもよい。縮減診断パターン17を配信するタイミングは、例えば、学習済ニューラルネットワークプログラムが更新されたタイミングなどである。
なお、プロセッサ22の動作を規定するためのプログラムは、例えば、半導体メモリ、磁気ディスク、光ディスク、磁気テープ及び光磁気ディスクなどのような、非一時的にデータを記憶する記録媒体28に記録させることもできる。この場合、クラウドサーバ20は、記録媒体28に記録されたプログラムを読み込み、その読み込んだプログラムに応じた処理を実行することで、図1に示した診断ポイント縮減システム10の各部1~5を実現する。記録媒体28は、クラウドサーバ20内に備わっていてもよい。
図4は、診断ポイント縮減システム10にて生成された縮減診断パターン17による診断を行う計算機の一例であるエッジ装置のハードウェア構成例を示す図である。図4に示すエッジ装置30は、例えば、ECU(Electronic Control Unit:エレクトロニックコントロールユニット)などである。エッジ装置30は、例えば、自動車などの車両に搭載されてもよい。
図4に示すエッジ装置30は、記録装置31、第1のプロセッサ32、メインメモリ33、通信装置34、入力装置35、表示装置36及び第2のプロセッサ37を有し、それらがバス38を介して接続されている。
記録装置31は、書き込み及び読み出しが可能にデータを記録する装置であり、第1のプロセッサ32の動作を規定するためのプログラム、及び、第2のプロセッサ37の動作を規定するための学習済ニューラルネットワークプログラム及び縮減診断パターン17などの種々のデータを記録する。
学習済ニューラルネットワークプログラムは、図1に示した学習済ニューラルネットワーク11の演算処理を実行させるためのプログラムである。
第1のプロセッサ32は、記録装置21に記録されたプログラムをメインメモリ33に読み出し、メインメモリ33を利用してプログラムに応じた処理を実行する。第1のプロセッサ32の一例としてはCPUやGPUが考えられるが、所定の処理を実行する主体であれば他の半導体デバイスでもよい。
通信装置34は、図3に示したクラウドサーバ20のような外部装置と通信可能に接続し、外部装置との間で情報の送受信を行う。例えば、通信装置34は、クラウドサーバ20から学習済ニューラルネットワークプログラム及び縮減診断パターン17などを受信する。通信装置34が受信した学習済ニューラルネットワークプログラム及び縮減診断パターン17は、例えば、第1のプロセッサ32を介して記録装置31に記憶される。
入力装置35はエッジ装置30のユーザなどから種々の情報が入力される装置である。表示装置36は、種々の情報を表示する装置である。
第2のプロセッサ37は、所定の演算処理を実行するハードウェアアクセラレータである。より具体的には、第2のプロセッサ37は、学習済ニューラルネットワークプログラムに従って学習済ニューラルネットワーク11による演算処理を実行する対象プロセッサの一例である。
第2のプロセッサ37は、本実施例では、マルチコアGPUである。第2のプロセッサ35は、演算処理を行う複数の演算コンポーネントである複数のコア35Aを含む。図4の例では、コア35Aは4つ示されているが、コア35Aの数は、4に限らず、2以上であればよい。
第1のプロセッサ32は、以下の処理(1)及び(2)を実行する。
(1)実行処理。実行処理は、第2のプロセッサ37に対して、学習済ニューラルネットワークプログラムを読み込ませて、学習済ニューラルネットワーク11による演算処理を実行させる処理である。
(2)診断処理。診断処理は、所定のタイミングで縮減診断パターン17を第2のプロセッサ37にロードさせて、第2のプロセッサ37を診断する処理である。
実行処理(1)における学習済ニューラルネットワーク11による演算処理は、例えば、所定の機械を制御するための制御情報を生成する処理である。この場合、第1のプロセッサ32は、実行処理(1)と、学習済ニューラルネットワーク11による演算処理の処理結果である制御情報に基づいて、所定の機械を制御する機械制御処理とを交互に実行する。また、第1のプロセッサ32は、機械制御処理の実行中に診断処理(2)を実行する。
所定の機械は、例えば、エッジ装置30が搭載された車両である。機械制御処理は、例えば、車両の自動運転制御に係る処理などである。自動運転制御は、ブレーキ制御及びアクセル制御などである。
以上説明したように本実施例によれば、第1のプロセッサ32は、縮減診断パターン17に基づいて第2のプロセッサ37を診断する。このため、診断負荷の増加を抑制することが可能になる。
また、本実施例では、第1のプロセッサ32は、機械制御処理の実行中に第2のプロセッサ37を診断する。このため、学習済ニューラルネットワーク11による演算処理を停止させることなく、第2のプロセッサ37を診断することが可能となる。
図5は、クラウドサーバ20と通信可能なクライアント計算機のハードウェア構成の一例を示す図である。
図5に示すクライアント計算機40は、記録装置41、プロセッサ42、メインメモリ43、通信装置44、入力装置45及び表示装置46を有し、それらがバス47を介して接続されている。
記録装置41は、書き込み及び読み出しが可能にデータを記録する装置であり、プロセッサ42の動作を規定するためのプログラムなどの種々のデータを記録する。プロセッサ42は、記録装置41に記録されたプログラムをメインメモリ43に読み出し、メインメモリ43を利用してプログラムに応じた処理を実行する。プロセッサ42の一例としてはCPUやGPUが考えられるが、所定の処理を実行する主体であれば他の半導体デバイスでもよい。
通信装置44は、例えば、後述の図3に示したクラウドサーバ20のような外部装置と通信可能に接続し、外部装置との間で情報の送受信を行う。入力装置45は、クライアント計算機40のユーザなどから種々の情報が入力される装置である。表示装置26は、種々の情報を表示する装置である。
プロセッサ42は、例えば、入力装置45を介して受け付けたパターン作成指示に基づいて、縮減診断パターン17の生成を要求する生成要求処理を行う。例えば、プロセッサ42は、縮減診断パターン17の生成を要求する生成要求をクラウドサーバ20に送信する。なお、クラウドサーバ20は、例えば、生成要求を受信すると、図1~図3を用いて説明したように縮減診断パターン17を生成し、縮減診断パターン17の表示を要求する表示要求をクライアント計算機40に送信する。
プロセッサ42は、例えば、クラウドサーバ20から通信装置44を介して受信した表示指示に基づいて、縮減診断パターン17を表示する表示処理を行う。例えば、プロセッサ42は、縮減診断パターン17を示すWeb画面を表示装置26に表示する。
本実施例では、診断パターンの縮減が学習済ニューラルネットワークの演算結果に対する各中間ノードの出力値の影響度に基づいて行われる例を説明する。
図6は、本開示の実施例2の診断ポイント縮減システムの構成例を示す図である。図6に示す診断ポイント縮減システム50は、図1に示した実施例1の診断ポイント縮減システム10と比較して、中間ノード演算コンポーネント特定部3、中間ノード特定部4及び診断パターン縮減部5の代わりに、故障影響度解析部51、診断除外ノード特定部52及び診断パターン縮減部53を有する点で異なる。また、診断ポイント縮減システム50には、演算シーケンスデータ14の代わりに要求診断スペック54が入力される。
故障影響度解析部51は、学習済ニューラルネットワーク11に基づいて、学習済ニューラルネットワーク11の演算結果に対する各中間ノードの出力値の影響度である故障影響度を算出する。故障影響度解析部51は、故障影響度を中間ノードごとに示す影響度データ55を生成して出力する。
本実施例では、例えば、故障影響度解析部51は、エラーインジェクションシミュレーションを用いて、学習済ニューラルネットワーク11の中間ノードごとに、AVF(Architectural Vulnerability Factor)と呼ばれる指標を故障影響度として算出する。
AVFは、中間ノードで全故障モードが生じた際の、学習済ニューラルネットワーク11の演算結果の誤り率で定義される。全故障モードは、中間ノードの出力値の各ビットが全て誤りとなるモードである。演算結果の誤り率は、演算結果の全ビットに対する、誤りとなるビットが占めるの割合である。ビットの誤りとは、ビットの値が期待値とは異なることである。例えば、演算結果が64ビットであり、演算結果が期待値と一致するビットが50ビット、演算結果が期待値と異なるビットが14ビットであるとすると、AVFは、14/64となる。
診断除外ノード特定部52は、要求診断スペック54及び影響度データ55に基づいて、中間ノードのうち診断を行う診断ノード以外の診断除外ノードを特定する。そして、診断除外ノードの集合を診断除外ノード集合56として生成して出力する。診断除外ノード特定部52の処理は、図7を用いて後述する。
要求診断スペック54は、ユーザから要求される診断の正確性に関する制約条件を示す。本実施例では、要求診断スペック54は、後述する診断カバー率Cに対する閾値である。
診断パターン縮減部53は、中間ノード診断パターンデータセット13及び診断除外ノード集合56に基づいて、縮減診断パターン17を生成して出力する。
具体的には、診断パターン縮減部53は、以下の処理(a)~(c)を行う。
(a)特定処理。特定処理は、中間ノード診断パターンデータセット13に基づいて、診断除外ノード集合56に含まれる診断除外ノードの演算処理の正誤だけを診断可能なデータデータセットを除外データセットとして特定する処理である。
(b)減縮処理。減縮処理は、診断パターン12から除外データセットを除外することで、診断パターン12に含まれるデータセットの数を縮減する処理である。
(c)生成処理。生成処理は、データセットの数を縮減した診断パターンを縮減診断パターン17として生成して出力する処理である。
図7は、診断除外ノード特定部52の処理の一例を説明するためのフローチャートである。
先ず、診断除外ノード特定部52は、影響度データ55に基づいて、全ての中間ノードのAVFを合算した合算値AVFallを算出する。また、診断除外ノード特定部52は、診断対象ノード集合Nを全ての中間ノードに初期化(N={全ての演算ノード})する(ステップS201)。
診断除外ノード特定部52は、診断対象ノード集合Nから、AVFが最小の中間ノードを中間ノードnとして選択する(ステップS202)。
診断除外ノード特定部52は、中間ノードnのAVFであるAVFに基づいて、診断対象ノード集合Nによる診断カバー率Cを算出し、その診断カバー率Cが要求診断スペック54よりも大きいか否かを判断する(ステップS203)。
診断カバー率Cは、以下の式(1)で表される。
Figure 2022124240000002
ここで、aは診断対象ノード集合Nの要素としての中間ノード、AVFは中間ノードaのAVF、AVFは選択した中間ノードnのAVFである。
診断カバー率Cが要求診断スペック54よりも大きい場合、診断除外ノード特定部52は、診断対象ノード集合Nから中間ノードnを削除し(ステップS204)、ステップS202の処理に戻る。
診断カバー率Cが要求診断スペック54以下の場合、診断除外ノード特定部52は、診断対象ノード集合Nの補集合を診断除外ノード集合56として生成して出力し(ステップS205)、処理を終了する。
なお、クラウドサーバ20、エッジ装置30及びクライアント計算機40のハードウェア構成は、実施例1と同様である。
以上説明したように本実施例によれば、学習済ニューラルネットワーク11の演算結果に対する各中間ノードの出力値の影響度である故障影響度に基づいて、診断パターンに含まれるデータセットの数が縮減される。このため、診断の正確性の低下を抑制しながら、診断に係る診断負荷を低減することができる。
また、本実施例によれば、故障影響度はAVFであるため、学習済ニューラルネットワーク11の演算結果に対する各中間ノードの出力値の影響を適切に反映することができる。
また、本実施例によれば、診断カバー率Cが閾値以下となった場合、診断除外ノード集合56の補集合に含まれる中間ノードの演算処理の正誤だけを診断可能なデータセットが削除される。このため、診断の正確性の低下を抑制しながら、診断に係る診断負荷を低減することができる。
上述した本開示の実施例は、本開示の説明のための例示であり、本開示の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本開示の範囲を逸脱することなしに、他の様々な態様で本開示を実施することができる。
1:診断パターン生成部 2:中間ノード診断パターン特定部 3:中間ノード演算コンポーネント特定部 4:中間ノード特定部 5:診断パターン縮減部 10、50:診断ポイント縮減システム 20:クラウドサーバ 30:エッジ装置 40:クライアント計算機 51:故障影響度解析部 52:診断除外ノード特定部 53:診断パターン縮減部


Claims (8)

  1. ニューラルネットワークによる演算処理を複数の演算コンポーネントを用いて実行するプロセッサを診断するための診断パターンを生成する診断パターン生成方法であって、
    (A)前記ニューラルネットワークに含まれる複数のノードの部分集合による演算処理の処理結果の正誤を診断するための複数のデータセットを含む前記診断パターンを生成し、
    (B)前記ノードと、前記ノードによる演算処理を実行する前記演算コンポーネントとの対応関係であるノード・コア関係を特定し、
    (C)前記ノード・コア関係に基づいて、前記データセットの数を縮減する、
    診断パターン生成方法。
  2. 請求項1に記載の診断パターン生成方法において、
    前記(C)では、
    (C1)前記ノード・コア関係に基づいて、前記演算コンポーネントごとに、当該演算コンポーネントに対応する前記ノードの集合を特定し、
    (C2)前記演算コンポーネントごとに、前記集合に含まれるノードのいずれかの演算処理の正誤を診断可能な前記データセットを選択し、
    (C3)前記演算コンポーネントごとに、前記取得したデータセット以外の前記データセットを削除することで、前記データセットの数を縮減する、
    診断パターン生成方法。
  3. 請求項2に記載の診断パターン生成方法において
    前記データセットは、
    (X1)前記ニューラルネットワークに入力する診断用入力値と、
    (X2)前記診断用入力値を前記ニューラルネットワークに入力した場合に前記ニューラルネットワークから出力される出力値の期待値と、
    を含み、
    前記(C2)では、
    (C21)前記診断用入力値及び前記期待値に基づいて、前記データセットと、当該データセットで演算処理の正誤の診断が可能な前記ノードとの対応関係であるノード・データ関係を特定し、
    (C22)前記ノード・データ関係に基づいて、前記データセットのいずれかを選択する、
    診断パターン生成方法。
  4. ニューラルネットワークによる演算処理を複数の演算コンポーネントを用いて実行するプロセッサを診断するための診断パターンを生成する診断パターン生成方法であって、
    (A)前記ニューラルネットワークに含まれる複数のノードの部分集合による演算処理の処理結果の正誤を診断するための複数のデータセットを含む前記診断パターンを生成し、
    (B)前記ニューラルネットワークの演算結果に対する各ノードの出力値の影響度を算出し、
    (C)前記影響度に基づいて、前記データセットの数を縮減する、
    診断パターン生成方法。
  5. 請求項4に記載の診断パターン生成方法において、
    前記影響度は、前記ノードの出力値の各ビットの全てが誤りの場合に、前記演算結果の全ビットに対する誤りとなるビットが占める割合であるAVF(Architectural Vulnerability Factor)である、
    診断パターン生成方法。
  6. 請求項5に記載の診断パターン生成方法において、
    前記(C)では、
    (C1)各ノードを含む集合から、前記ノードを前記AVFが小さい方から順に選択し、当該集合による診断カバー率が閾値よりも大きい場合、当該選択したノードを前記集合から削除し、
    (C2)前記診断カバー率が前記閾値以下となった場合、前記集合の補集合に含まれるノードの演算処理の正誤だけを診断可能なデータセットを削除することで、前記データセットの数を縮減し、
    前記診断カバー率は、以下の式(1)で表され、
    Figure 2022124240000003
    ここで、AVFallは全てのノードの影響度の合算値、Nは集合、aは前記集合の要素としてのノード、AVFはノードaのAVF、AVFは選択したノードnのAVFである、
    診断パターン生成方法。
  7. 第1のプロセッサと、演算処理を行う複数の演算コンポーネントを含む第2のプロセッサと、記憶部と、を有する計算機であって、
    前記記憶部は、
    (A)前記第2のプロセッサに前記ニューラルネットワークの演算処理を実行させるためのニューラルネットワークプログラムと、
    (B)請求項1に記載の診断パターン生成方法にて前記データセットの数が縮減された前記診断パターンと、
    を記憶し、
    前記第1のプロセッサは、
    (1)前記第2のプロセッサに対して、前記ニューラルネットワークプログラムを読み込ませて前記演算処理を実行させ、
    (2)所定のタイミングで前記診断パターンを前記第2のプロセッサにロードさせて、前記第1のプロセッサを診断する、
    計算機。
  8. 請求項7に記載の計算機において、
    前記第1のプロセッサは、
    前記(1)では、前記第2のプロセッサに対して前記演算処理を実行させる処理と、前記演算処理の処理結果に基づいて、所定の機械を制御する機械制御処理とを交互に実行し、
    前記(2)では、前記機械制御処理の実行中に、前記第2のプロセッサを診断する、
    計算機。

JP2021021893A 2021-02-15 2021-02-15 診断パターン生成方法及び計算機 Pending JP2022124240A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021021893A JP2022124240A (ja) 2021-02-15 2021-02-15 診断パターン生成方法及び計算機
DE102021130117.3A DE102021130117A1 (de) 2021-02-15 2021-11-18 Diagnosemuster-erzeugungsverfahren und computer
US17/535,779 US20220261986A1 (en) 2021-02-15 2021-11-26 Diagnosis pattern generation method and computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021021893A JP2022124240A (ja) 2021-02-15 2021-02-15 診断パターン生成方法及び計算機

Publications (1)

Publication Number Publication Date
JP2022124240A true JP2022124240A (ja) 2022-08-25

Family

ID=82610620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021021893A Pending JP2022124240A (ja) 2021-02-15 2021-02-15 診断パターン生成方法及び計算機

Country Status (3)

Country Link
US (1) US20220261986A1 (ja)
JP (1) JP2022124240A (ja)
DE (1) DE102021130117A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10454803B2 (en) * 2017-10-02 2019-10-22 Salesforce.Com, Inc. Inspecting network performance at diagnosis points

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016132468A1 (ja) 2015-02-18 2016-08-25 株式会社日立製作所 データ評価方法および装置、故障診断方法および装置

Also Published As

Publication number Publication date
DE102021130117A1 (de) 2022-08-18
US20220261986A1 (en) 2022-08-18

Similar Documents

Publication Publication Date Title
Cousineau et al. TLA+ proofs
US8997065B2 (en) Automatic modularization of source code
US7500149B2 (en) Generating finite state machines for software systems with asynchronous callbacks
JP2001318804A (ja) 確率的な診断システム
US10275548B1 (en) Interactive diagnostic modeling evaluator
US20210318379A1 (en) System and method for optimizing fault coverage based on optimized test point insertion determinations for logical circuits
US20160335555A1 (en) Making a prediction regarding development of a software product
CN110245085B (zh) 利用在线模型检验的嵌入式实时操作系统验证方法及系统
US8868381B2 (en) Control system design simulation using switched linearization
US6339837B1 (en) Hybrid method for design verification
CN111367786A (zh) 一种符号执行方法、电子设备以及存储介质
US20220261986A1 (en) Diagnosis pattern generation method and computer
US9404972B2 (en) Diagnosis and debug with truncated simulation
CN116663491B (zh) 基于bdd求解功能覆盖组条件约束语句的方法、设备和介质
JP2000235507A (ja) システムの信頼性設計装置及び方法並びにシステムの信頼性設計用ソフトウェアを記録した記録媒体
US6845440B2 (en) System for preventing memory usage conflicts when generating and merging computer architecture test cases
US10747601B2 (en) Failure estimation in circuits
JP2016085152A (ja) 診断装置、診断プログラム及び診断方法
Zamani et al. Online missing/repeated gate faults detection in reversible circuits
CN114529001B (zh) 量子算法的指标评估方法、装置、终端及存储介质
CN113722143A (zh) 一种程序流监控方法、装置、电子设备以及存储介质
Biswas et al. A formal approach to on-line monitoring of digital VLSI circuits: theory, design and implementation
US10523186B1 (en) Vulnerability determination in circuits
Gupta et al. Probabilistic error propagation modeling in logic circuits
JP7274063B2 (ja) テストケース生成装置、テストケース生成方法及びテストケース生成プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230529

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240515

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240611