Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

ディープ ネットワーク デザイナーを使用したネットワークの構築

ディープ ネットワーク デザイナー アプリを使用して、深層学習ネットワークを対話形式で構築および編集します。このアプリを使って次のことを実行できます。

  • ネットワークをインポートして編集する。

  • 新しいネットワークをゼロから構築する。

  • 新しい層を追加し、新しい結合を作成する。

  • 層のプロパティを表示および編集する。

  • ネットワークを組み合わせる。

  • カスタム層をインポートする。

  • MATLAB® コードを生成してネットワーク アーキテクチャを作成する。

ヒント

通常は、事前学習済みのネットワークを基にして転移学習によって微調整する方が、新しいネットワークにゼロから学習させるよりもはるかに簡単で時間がかかりません。事前学習済みのネットワークを使用して転移学習を実行する方法を示す例については、ディープ ネットワーク デザイナーを使用した転移学習を参照してください。

アプリの起動とネットワークのインポート

ディープ ネットワーク デザイナーを開くには、[アプリ] タブの [機械学習および深層学習] でアプリのアイコンをクリックします。あるいは、コマンド ラインからアプリを開くこともできます。

deepNetworkDesigner

既存の事前学習済みのネットワークを変更またはコピーする場合は、ディープ ネットワーク デザイナーのスタート ページから選択します。スタート ページからは、未学習のシーケンス ネットワークを選択すること、ワークスペースからネットワークを読み込むこと、またはゼロからネットワークを構築することも可能です。

ネットワークの選択後、ディープ ネットワーク デザイナーは、ネットワークを開いて縮小表示します。

ディープ ネットワーク デザイナーの [デザイナー] ペインでは、ネットワークの構築、編集、解析が行えます。アプリでは、いずれかの組み込みの層を使用してネットワークを構築できます。カスタム層を使用することもできます。その場合、コマンド ラインでカスタム層を作成して、それをアプリにインポートします。カスタム出力層を使用して、ディープ ネットワーク デザイナーでネットワークを構築する例については、ディープ ネットワーク デザイナーへのカスタム層のインポートを参照してください。使用可能な層の一覧、およびカスタム層の例については、深層学習層の一覧を参照してください。

[新規] をクリックして [デザイナー] タブからスタート ページに戻ります。

ネットワークの作成と編集

[層のライブラリ] からブロックをドラッグして結合することによって、ネットワークを組み立てます。

You can also add layers from the workspace to the network in the Designer pane.

  1. Click New.

  2. Pause on From Workspace and click Import.

  3. Choose the layers or network to import and click OK.

  4. Click Add to add the layers or network to the Designer pane.

  5. Connect the new layers.

You can also combine pretrained networks by clicking New and selecting them from the start page.

層のプロパティを表示して編集するには、層を選択します。層のプロパティに関する情報については、層の名前の横にあるヘルプ アイコンをクリックしてください。

すべての層のプロパティについては、深層学習層の一覧の表の層の名前をクリックしてください。適切なネットワーク アーキテクチャの選択に関するヒントは、深層学習のヒントとコツを参照してください。

層のブロックは一度に操作できます。複数の層を選択して、コピー、貼り付け、または削除します。たとえば、層のブロックを使用して、畳み込み層、バッチ正規化層、および ReLU 層のグループの複数のコピーを作成できます。事前学習済みのネットワークの最後に層を追加して、より深いネットワークにすることができます。あるいは、事前学習済みのネットワークを編集して単純化できます。たとえば、GoogLeNet ネットワークからインセプション モジュールなどの層のユニットを削除することによって、よりシンプルなネットワークを作成できます。

学習済みネットワークの場合は、層をコピーすると、重みとバイアスもコピーされます。

ネットワークの確認

ネットワークを確認して層の詳細を調べるには、[デザイナー] タブの [解析] をクリックします。問題を調査して層のプロパティを調べ、ネットワークでのサイズの不一致を解決します。ディープ ネットワーク デザイナーに戻って層を編集し、[解析] を再度クリックして結果を確認します。深層学習ネットワーク アナライザーによってエラー 0 が報告されている場合、編集したネットワークの学習の準備が整っています。

ネットワークの学習

ディープ ネットワーク デザイナーを使用して、データのインポートやネットワークの学習を行うことができます。[データ] タブで、ネットワークに学習させるデータを選択します。[データのインポート][イメージ データのインポート] を選択して、ワークスペースから ImageDatastore オブジェクトをインポートするか、イメージのサブフォルダーをクラス別に含むフォルダーをインポートします。[データのインポート][データストアのインポート] を選択して、ワークスペースから組み込みまたはカスタムのデータストアをインポートします。詳細については、ディープ ネットワーク デザイナーへのデータのインポートを参照してください。

データをインポートした後で、[学習] タブを選択して [学習] をクリックし、ネットワークの学習を行います。ディープ ネットワーク デザイナーによって、[デザイナー] ペインで構築したネットワークがコピーされ、インポートしたデータを使用してネットワークの学習が行われます。学習をさらに細かく制御するには、[学習オプション] をクリックして学習オプションを変更します。ディープ ネットワーク デザイナーで構築されたネットワークにデータをインポートして学習させる方法の詳細については、ディープ ネットワーク デザイナーを使用した転移学習を参照してください。

ヒント

ディープ ネットワーク デザイナーでは、イメージ データまたはデータストア オブジェクトについてネットワークに学習させることができます。シーケンス分類問題のためにネットワークをエクスポートして学習させる方法を示す例については、ディープ ネットワーク デザイナーを使用したシンプルなシーケンス分類ネットワークの作成を参照してください。

ネットワークのエクスポート

未学習のネットワークをワークスペースにエクスポートして学習させるには、[デザイナー] タブの [エクスポート] をクリックします。ディープ ネットワーク デザイナーは、編集したネットワーク層を含む新しい変数にネットワークをエクスポートします。

学習オプションを設定し、学習済みネットワークの精度を評価する方法を示すコマンド ラインの例については、分類用のシンプルな深層学習ネットワークの作成およびイメージ分類用の残差ネットワークの学習を参照してください。

学習済みのネットワークをワークスペースにエクスポートするには、[学習] タブの [エクスポート] をクリックします。エクスポートされたネットワークには、ディープ ネットワーク デザイナーで学習した重み付きの層が含まれています。

MATLAB コードの生成

ディープ ネットワーク デザイナーを使用すると、アプリ内で実行したネットワークの構築と学習を再作成する MATLAB コードを生成することが可能です。

ネットワーク アーキテクチャを再作成する MATLAB コードを生成する方法を示す例については、ネットワーク層を再作成する MATLAB コードの生成を参照してください。

ネットワーク アーキテクチャとネットワーク学習を再作成する MATLAB コードを生成する方法の例については、ネットワークに学習させる MATLAB コードの生成を参照してください。

参考

関連するトピック