主要内容

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

ディープネットワークデザイナー

深層学習ネットワークの設計,可視化,および学習

説明

ディープディープネットワークデザイナーは,深层学习ネットワークの构筑,可调,编集,および学习。このアプリを使っ次ののこと実行。

  • 每个图像显示0到9的数字,旋转一定的角度ネットワークネットワークを,インポート,编集,およびおよび合。

  • 事前学習済みのネットワークを読み込み,転移学習用に編集する。

  • 層のプロパティを表示および編集し,新しい層と結合を追加する。

  • ネットワークを解析してネットワークアーキテクチャの定義が正しいことを確認し,学習の前に問題を検出する。

  • 学習および検証のためのデータストアおよびイメージデータをインポート,可視化する。

  • イメージ分類学習データへ拡張を適用し,クラスラベルの分布を可視化する。

  • ネットワークに学習させ,精度,損失,検証メトリクスのプロットを使用した学習を監視する。

  • ネットワークの构筑と学习习行うmatlab®コードを生成する。

ディープネットワークデザイナーアプリを開く

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

  • matlabコマンドコマンド:deepNetworkDesignerと入力します。

すべて展开する

ディープネットワークデザイナーでシンプルな事前学習済みのイメージ分類ネットワークを確認します。

アプリを開き,事前学習済みのネットワークを選択します。[デザイナー]タブを選択し,[新闻]をクリックして事前学習済みのネットワークを読み込むこともできます。ネットワークをダウンロードする必要がある場合は,[インストール]をクリックしてアドオンエクスプローラーを開きます。

ヒント

はじめに,SqueezeNetやGoogLeNetなど,高速なネットワークのいずれかを選択してみてください。どの設定が適切に機能するかを理解したら,Inception-v3やResNetなどのより正確なネットワークを試し,結果が改善されるか確認します。事前学習済みのネットワークの選択の詳細については,事前学习済みの深层深层ネットワークネットワークを参照してください。

[デザイナー]ペインでは,ネットワークを可视化し确认确认ます。使使の事前习ネットワークの一覧,およびネットワークををする方法についてについて,事前学习済みの深层深层ネットワークネットワークを参照してください。

ディープディープネットワークデザイナーによるによるネットワーク构筑の详细について,ディープネットワークデザイナーを使使用ししネットワークの构筑を参照してください。

ディープネットワークデザイナーで転移学习ののネットワークを编集て,设备します。

転移学習は,事前学習済みの深層学習ネットワークを利用して,新しいタスクを学習するように微調整するプロセスです。少ない数の学習イメージを使用して,新しいタスクに学習済みの特徴を高速に転移できます。そのため,多くの場合,転移学習を使用する方が,ネットワークにゼロから学習させるよりもはるかに簡単で時間がかかりません。転移学習に事前学習済みネットワークを使用するには,新しいデータセットに一致するようにクラス数を変更しなければなりません。

挤压ででネットワークデザイナーを开放ます。

DeepNetWorkDesigner(挤压)

転移学習用のネットワークを準備するために,最後の学習可能な層と最終分類層を置き換えます。SqueezeNetの最後の学習可能な層は,“conv10”という名前の2次元畳み込み層です。

  • 新闻Convolution2Dlayer.をキャンバスにドラッグします。过滤プロパティを1,1に,numfilters.プロパティを新闻クラス数に设定します。

  • WeightLearnRateFactorおよびBiasLearnRateFactorををて学习ををし,新しい层での学习习を転移层より速くします。

  • 最後のConvolution2Dlayer.を削除し,代わりに新しい層を結合します。

ヒント

大半の事前学習済みネットワーク(GoogLeNetなど)では,最後の学習可能な層は全結合層です。転移学習用にネットワークを準備するには,全結合層を新しい全結合層に置き換え,OutputSizeプロパティを新闻クラス数にします。例については,ディープネットワークデザイナー入门を参照してください。

次に,分類出力層を削除します。次に,新しいclassificationLayerををにドラッグしてににしし出出层ががの设定设定の合书,ネットワークネットワーク学校中にを习习习习するます。

[デザイナー]タブの[解析]をクリックして,ネットワークを確認してください。深層学習ネットワークアナライザーによってエラー0が報告されていれば,ネットワークの学習の準備は整っています。新しいイメージを分類するためにネットワークに学習させる方法を示す例については,ディープネットワークデザイナーを使用した転移学習を参照してください。

。

[デザイナー]ペインで层をし,プロパティプロパティを表示して编集しし情情情情ははははははプロパティ前前前情にあるヘルプアイコン前前のてにヘルプアイコンアイコンを前クリックしてにあるヘルプアイコンアイコン前前前ててて

层层のプロパティのの详细について,深層学習層の一覧を参照してください。

ディープネットワークデザイナーデザイナーでワークワークからネットワークに层层を追ししし

ディープネットワークデザイナーでは,组み込みの层を[层のライブラリ]から[デザイナー]ペインにドラッグして結合することでネットワークを構築できます。[デザイナー]ペインで,ワークスペースからネットワークにカスタム層を追加することもできます。変数myCustomLayerにカスタム層が格納されているとします。

  1. [デザイナー]タブの[新闻]をクリックします。

  2. [ワークスペースから],[インポート]をクリックします。

  3. myCustomLayerを選択し,[好的]をクリックします。

  4. [追加]をクリックします。

アプリによって[デザイナー]ペインペイン上部にカスタムが层加されます。新しい层を表示するは,マウスを使用してズームインするか[ズームイン]をクリックします。

[デザイナー]ペインでmyCustomLayerをネットワークに結合します。ディープネットワークデザイナーでカスタム層を使ってネットワークを構築する方法を示す例については,ディープネットワークデザイナーへのカスタム層のインポートを参照してください。

ディープネットワークデザイナーでネットワークを結合することもできます。たとえば,事前学習済みのネットワークと復号化器のサブネットワークを組み合わせて,セマンティックセグメンテーションネットワークを作成できます。

学习用词のをディープデザイナーデザイナーにインポートしします。

ディープネットワークデザイナーの[データ]タブを使用して,学習データおよび検証データをインポートできます。ディープネットワークデザイナーは、イメージ データおよびデータストア オブジェクトのインポートをサポートしています。タスクのタイプに基づいてインポート方法を選択します。

タスク データ型 データのインポート方法 可視化の例
イメージ分享

ImageDatastoreオブジェクト,または各クラスのが格式さされたサブフォルダーあるあるあるあるはははははははははははある。

[データのインポート][イメージデータのインポート]を選択します。

[イメージデータのインポート]ダイアログボックスで,拡張オプションを選択し,検証データを指定できます。詳細については,ディープディープネットワークデザイナーへへのののを参照してください。

その他の拡張ワークフロー(数値特徴入力,メモリ外のデータ,イメージ処理,オーディオ処理および音声処理など)

データストア。

そのその他の拡ワークワークフローではははははたとえばててててててたとえばたとえばてててててててててててててててててAugmentedImageDatastoreCombinedDatastorepixelLabelImageDatastore(计算机视觉工具箱),またはカスタムデータストアです。

関数Trainnetwork.で機能する任意のデータストアオブジェクトをインポートして学習させることができます。深層学習アプリケーション用のデータストアオブジェクトの構築と使用の詳細については,深层学习用词のストアを参照してください。

[データのインポート][データストアのインポート]を選択します。

[データデータストアの]ダイアログボックスで検证データをできますます。ディープディープネットワークデザイナーへへのののを参照してください。

ディープネットワークデザイナーにインポートしたデータでネットワークに学習させるには,[学学]タブの[学学]をクリックします。学習をさらに細かく制御するには,(学習オプション]をクリックして学習の設定を選択します。学習オプションを選択する方法の詳細については,培训选项ををしてください。イメージ分类ネットワークの学习方法を示す例については,ディープネットワークデザイナーを使用した転移学習を参照してください。

ディープネットワークデザイナー作物作物さたネットワークネットワークををしてスペースにエクスポートしし。

  • 初期の重みを含むネットワークアーキテクチャをエクスポートするには,[デザイナー]タブの[エクスポート]をクリックします。ネットワークネットワークアーキテクチャに応じ,ディープディープネットワークデザイナーはネットワークLayerGraphLGROPHまたは.オブジェクト层としてエクスポートします。

  • 学習した重みを含むネットワークアーキテクチャをエクスポートするには,[学学]タブの[エクスポート]をクリックします。ディープネットワークデザイナーは,学習済みのネットワークアーキテクチャをDAGNetworkオブジェクトtrainedNetworkとしてエクスポートします。ディープネットワークデザイナーは、学習や検証精度などの学習の結果も構造体配列 trainInfoStruct としてエクスポートします。

ディープネットワークデザイナーで構築および学習させるネットワークを再作成するには,MATLABコードを生成します。

ネットワーク層を再作成するには,[デザイナー]タブの[エクスポート][コード生成)を選択します。または,[エクスポート][初初パラメーターを使った生成]を選択して,学習可能なパラメーターを含むネットワークを再作成できます。スクリプトを生成した後,次のタスクを実行できます。

  • [

  • ネットワークに学习させるため,スクリプトを実行,层を关联Trainnetwork.に指定する。

  • コードを調べて,プログラムで層を作成および結合する方法を確認する。

  • コードを编集し,层に変更を加。スクリプトを実行から,ネットワークをアプリにししてするすることできます直し编集することもでき。

ネットワーク,データデータインポート,および学习を再作用成するは,[学学]タブの[エクスポート](学習用コードの生成)スクリプト选択生成し后,次次タスクを実でき。

  • スクリプトスクリプトを行し,アプリで実行する层层习习を作物

  • コードを調べて,プログラムによってデータをインポートする方法を確認し,ネットワークを構築して学習させる。

  • コードを変更して,さまざまなネットワークアーキテクチャと学習オプションを試し,結果にどのように影響するか確認する。

詳細については,ディープネットワークデザイナーからのMATLABコードの生成を参照してください。

生成したスクリプトは,ハイパーパラメーター値の範囲のスイープ,またはベイズ最適化の使用による最適な学習オプションの検出を行う深層学習実験を作成するための開始点としても使用できます。ディープネットワークデザイナーで学習させたネットワークのハイパーパラメーターを調整するために実験マネージャーを使用する方法を示す例については,在实验管理器中使用深度网络设计器生成的代码を参照してください。

関連する例

プログラムによる使用

すべて展开する

deepNetworkDesignerは,ディープネットワークデザイナーアプリを开放ます。ディープネットワークデザイナーが既に开口てている合,deepNetworkDesignerはアプリにフォーカスを移動します。

deepNetworkDesigner (は,ディープネットワークデザイナーアプリを開き,指定されたネットワークをアプリに読み込みます。系列ネットワーク,DAGネットワーク,層グラフ,または層の配列をネットワークにできます。

たとえば,事前学習済みのSqueezeNetネットワークでディープネットワークデザイナーを開きます。

网= squeezenet;deepNetworkDesigner(净);

ディープネットワークデザイナーが既に开口てて场合,DeepNetWorkDesigner(网)はアプリにフォーカスをを,既存のネットワークに追するか置き换えるか求めます。

ヒント

复ののに习さて结果ををするにはは,実験マネージャーを实用しください。

R2018Bで导入