工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Equipment >> 産業用ロボット

ニューラルネットワークを使用した信号処理:ニューラルネットワーク設計での検証

この記事では、ニューラルネットワークを使用してデータを処理するときに検証が特に重要である理由について説明します。

ニューラルネットワーク開発に関するAACのシリーズは、ニューラルネットワークでの検証と、信号処理でNNがどのように機能するかを見ていきます。

  1. ニューラルネットワークを使用して分類を実行する方法:パーセプトロンとは何ですか?
  2. 単純なパーセプトロンニューラルネットワークの例を使用してデータを分類する方法
  3. 基本的なパーセプトロンニューラルネットワークをトレーニングする方法
  4. 単純なニューラルネットワークトレーニングを理解する
  5. ニューラルネットワークのトレーニング理論の概要
  6. ニューラルネットワークの学習率を理解する
  7. 多層パーセプトロンを使用した高度な機械学習
  8. シグモイド活性化関数:多層パーセプトロンニューラルネットワークでの活性化
  9. 多層パーセプトロンニューラルネットワークをトレーニングする方法
  10. 多層パーセプトロンのトレーニング式とバックプロパゲーションを理解する
  11. Python実装のためのニューラルネットワークアーキテクチャ
  12. Pythonで多層パーセプトロンニューラルネットワークを作成する方法
  13. ニューラルネットワークを使用した信号処理:ニューラルネットワーク設計での検証
  14. ニューラルネットワークのデータセットのトレーニング:Pythonニューラルネットワークをトレーニングおよび検証する方法

ニューラルネットワーク信号処理の性質

ニューラルネットワークは、他の信号処理システムとは根本的に異なります。ある種の信号処理の目的を達成するための「通常の」方法は、アルゴリズムを適用することです。

このモデルでは、研究者は何らかの方法で信号を分析または変更するための数学的方法を作成します。オーディオからノイズを除去する方法、画像のエッジを見つける方法、サーミスタの抵抗から温度を計算する方法、RF波形の周波数成分を決定する方法などがあります。次に、設計者は、その方法をプロセッサで実行でき、特定のアプリケーションのニーズに適合できるアルゴリズムに変換することにより、研究者の作業に基づいて構築します。

FIRフィルターは、正確な数学的方法で評価および理解できる信号処理システムの例です。

一方、訓練されたニューラルネットワークは経験的 システム。

ネットワークで発生する数学的プロセスは、手書き文字の分類、竜巻の形成の予測、または極端な航空操作の制御手順の開発を目的とした特定のアルゴリズムを構成するものではありません。むしろ、ニューラルネットワークの数学はフレームワーク これにより、ネットワークはトレーニングデータに基づいてカスタマイズされた計算モデルを作成できます。

ニューラルネットワークが必要な機能を学習して達成できるようにする数学的フレームワークは理解していますが、実際の信号処理アルゴリズムは、トレーニングデータ、学習率、初期の重み値、およびその他の要因に固有です。

ニューラルネットワークは、FIRフィルターとは異なり、さまざまな要因に依存しています。

それは、子供として言語を学ぶことと大人として言語を学ぶことの違いのようなものです。

「文法」という言葉を聞いたことがない子供は、対話する高齢者から受け取る膨大な量の言語入力データに含まれるパターンを脳が自然に認識して保持しているため、正しい動詞の形を繰り返し生成できます。

ただし、大人は通常、このすべての入力にアクセスできず、同じようにパターンを吸収できない可能性があります。そのため、動詞を正しく活用して時制を選択できるようにする言語の「アルゴリズム」を記憶して実装します。

検証の重要性

ニューラルネットワークは、豊富な入力が与えられると、子供が言語パターンを見つける方法と同様の数学的パターンを「自然に」見つけるため、非常に複雑な問題を解決できます。しかし、信号処理へのこのアプローチは決して間違いありません。

「行った」の代わりに「行った」または「保持された」の代わりに「保持された」と言う英語を話す子供を考えてみてください。これらは、過剰正規化エラーと呼ばれます。彼らは過去形の-edパターンを採用しましたが、何らかの理由で(おそらくデータが不十分であるか、認知の特異性があります)、過去形で不規則な動詞を説明するために言語モデルをまだ改良していません。

もちろん、「私は公園に行った」と言って4歳の子供を非難する人は誰もいないでしょう。しかし、著名な政治家が重要な演説を行い、「行った」、「保持した」、「見つけた」、「知った」などと繰り返し言った場合、聴衆はひどく不快になり(または完全に当​​惑し)、話者の政治的キャリアは突然終わります。

これらの過剰正規化エラーは、トレーニングされたニューラルネットワークが目的の信号処理機能を実現する能力に予期しないギャップを持っている可能性があることを示す良い例です。少しのギャップは重要ではない、あるいは興味深いように思えるかもしれませんが、単に実験を行っているだけの場合、政治家の例は、実際のアプリケーションでは壊滅的である可能性があることを思い出させます。

ネットワークが実際のアプリケーションデータに直面した場合、アンダートレーニングとオーバートレーニングの両方が予期しない問題のある動作を引き起こす可能性があります。詳細については、パート4を参照してください。

そして今、検証がニューラルネットワーク開発の重要な側面である理由がわかります。トレーニングデータセットは本質的に制限されているため、トレーニングだけでは不十分です。したがって、このデータセットに対するネットワークの応答も制限されます。

さらに、トレーニングの結果、「ブラックボックス」計算システムが作成されます。これは、典型的な式やアルゴリズムであるかのように分析および評価することはできません。したがって、検証する必要があります 、これは、ネットワークが典型的な実際の入力データを正常に処理し、非典型的なデータが提示されたときに壮大な障害を発生させないようにするために、合理的にできるすべてのことを行うことと定義します。

用語の並べ替え

私が「検証」と特定した手順は、「検証」または単に「テスト」と呼ばれることもあります。

ソフトウェア開発の文脈では、最初の2つの用語は明確な意味を持っています。バリー・ベームを引用しているウィキペディアは、検証は製品が正しく構築されているかどうかを判断しようとし、検証は正しい製品が構築されているかどうかを判断しようとしていると述べています。これらの問題は両方とも不可欠であるため、「検証と妥当性確認」の略語「V&V」が表示されます。

私はソフトウェアエンジニアではないので、このパラダイムを採用する義務がないことを願っています。私は単に「検証」という用語を使用して、トレーニングされたニューラルネットワークがシステム要件を満たしていることを確認するために実行するテスト、分析、および観察を指します。

結論:検証とは正確には何ですか?

まあ、それは状況次第です。

たとえば、NASAは、「航空宇宙システム用のニューラルネットワークの検証と妥当性確認」というタイトルのかなり長い文書を公開しました。私がニューラルネットワークのV&Vに興味があるよりも興味がある場合は、このドキュメントから始めることをお勧めします。あなたが真のV&V熱狂者である場合は、人工ニューラルネットワークの検証と妥当性確認のための方法と手順という本を検討する必要があります。; 293ページの長さで、このトピックに関する私の知識を少なくとも3桁上回っています。

実験または教育目的で開発された単純なニューラルネットワークの私の世界では、検証とは主に、トレーニングされたネットワークを新しいデータで実行し、分類の精度を評価することを意味します。また、全体的なパフォーマンスを判断するのに役立つ微調整を含めることもできます。改善されました。

今後の記事で特定の検証手法について説明します。


産業用ロボット

  1. 電気信号の種類
  2. 組み込みシステムのネットワークとは何ですか? –さまざまな種類のネットワーク
  3. ワイヤレスネットワークのプロビジョニングにおけるクラッシュコース
  4. マルチコアプロセッサはニューラルプロセッシングユニットを統合します
  5. 低電力レーダーチップはスパイキングニューラルネットワークを使用します
  6. ニューラルネットワークトレーニングにおける極小値の理解
  7. ニューラルネットワークへのバイアスノードの組み込み
  8. 隠れ層ニューラルネットワークの精度を上げる方法
  9. より高速なX線イメージングのためのニューラルネットワークの使用
  10. PCB 高速信号回路設計の 3 つのルーティング テクニック
  11. 高速 PCB 設計の差動アイソメ処理とシミュレーション検証