Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

ニューラル ネット時系列

動的ニューラル ネットワークを使用した非線形時系列問題の求解

説明

ニューラル ネット時系列アプリでは、3 種類の非線形時系列問題を解くために、動的なニューラル ネットワークの作成、可視化、学習ができます。

このアプリを使って次のことを実行できます。

  • 次の 3 種類のニューラル ネットワークを作成する。NARX ネットワーク、NAR ネットワーク、および非線形入出力ネットワーク。

  • ファイルまたは MATLAB® ワークスペースからデータをインポートするか、サンプル データ セットの 1 つを使用する。

  • 学習セット、検証セット、およびテスト セットへのデータの分割。

  • ニューラル ネットワークの定義と学習。

  • 平均二乗誤差と回帰分析を使用したネットワーク性能の評価。

  • 自己相関プロットや誤差のヒストグラムなどの可視化プロットの使用による結果の解析。

  • 結果を再現したり、学習プロセスをカスタマイズしたりするための MATLAB スクリプトの生成。

  • MATLAB Compiler™ および MATLAB Coder™ ツールによる展開に適した関数の生成、および Simulink® Coder での使用に向けた Simulink へのエクスポート。

メモ

深層学習ニューラル ネットワークの構築、可視化、および学習を対話的に行うには、ディープ ネットワーク デザイナー アプリを使用します。詳細については、ディープ ネットワーク デザイナー入門を参照してください。

Neural Net Time Series app

ニューラル ネット時系列 アプリを開く

  • MATLAB ツールストリップ: [アプリ] タブの [機械学習および深層学習] にあるアプリ アイコンをクリックします。

  • MATLAB コマンド プロンプト: ntstool と入力します。

アルゴリズム

ニューラル ネット時系列アプリには、ニューラル ネットワークに学習させるために使用できる組み込みの学習アルゴリズムが用意されています。

学習アルゴリズム説明
レーベンバーグ・マルカート法

レーベンバーグ・マルカート法の最適化に従って重みとバイアスの値を更新します。レーベンバーグ・マルカート学習は、他の手法よりも多くのメモリを必要としますが、多くの場合、最も高速な学習アルゴリズムです。

このアルゴリズムを実装するために、ニューラル ネット時系列アプリでは関数 trainlm を使用しています。

ベイズ正則化

ベイズ正則化は、レーベンバーグ・マルカート法の最適化に従って重みとバイアスの値を更新します。その後、誤差と重みの二乗の結合を最小化して、正しい結合を判定し、適切に汎化を行うネットワークを生成します。このアルゴリズムは通常、時間がかかりますが、ノイズを含むデータ セットや小さなデータ セットに汎化するのに適しています。

このアルゴリズムを実装するために、ニューラル ネット時系列アプリでは関数 trainbr を使用しています。

スケーリング共役勾配法逆伝播

スケーリング共役勾配法逆伝播は、スケーリング共役勾配法に従って重みとバイアスの値を更新します。大規模な問題では、スケーリング共役勾配法を使用することを推奨します。この方法では、レーベンバーグ・マルカートまたはベイズ正則化で使用されるヤコビアン計算よりもメモリ効率の高い勾配計算が使用されるためです。

このアルゴリズムを実装するために、ニューラル ネット時系列アプリでは関数 trainscg を使用しています。